@charset "UTF-8";
/**
 * Default Variables.
 *
 * Modify this file to provide default Bootstrap Framework variables. The
 * Bootstrap Framework will not override any variables defined here because it
 * uses the `!default` flag which will only set their default if not already
 * defined here.
 *
 * You can copy existing variables directly from the following file:
 * ./THEMENAME/bootstrap/assets/stylesheets/bootstrap/_variables.scss
 */
/*!
 * Bootstrap v3.3.7 (http://getbootstrap.com)
 * Copyright 2011-2016 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 */
@import url(../../fonts/font-awesome/css/font-awesome.min.css);
@import url("https://fonts.googleapis.com/css?family=Roboto");
@import url("https://fonts.googleapis.com/css?family=Muli:400,400i,700,700i");
@import url("https://fonts.googleapis.com/css?family=Lato:400,700,900|Montserrat:400,500,600,700");
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

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

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

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

[hidden],
template {
  display: none; }

a {
  background-color: transparent; }

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

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

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

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

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

small {
  font-size: 80%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

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

figure {
  margin: 1em 40px; }

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

pre {
  overflow: auto; }

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

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

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

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

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

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

input {
  line-height: normal; }

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

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

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

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

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

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

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

td,
th {
  padding: 0; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.glyphicon-ruble:before {
  content: "\20bd"; }

.glyphicon-rub:before {
  content: "\20bd"; }

.glyphicon-scale:before {
  content: "\e230"; }

.glyphicon-ice-lolly:before {
  content: "\e231"; }

.glyphicon-ice-lolly-tasted:before {
  content: "\e232"; }

.glyphicon-education:before {
  content: "\e233"; }

.glyphicon-option-horizontal:before {
  content: "\e234"; }

.glyphicon-option-vertical:before {
  content: "\e235"; }

.glyphicon-menu-hamburger:before {
  content: "\e236"; }

.glyphicon-modal-window:before {
  content: "\e237"; }

.glyphicon-oil:before {
  content: "\e238"; }

.glyphicon-grain:before {
  content: "\e239"; }

.glyphicon-sunglasses:before {
  content: "\e240"; }

.glyphicon-text-size:before {
  content: "\e241"; }

.glyphicon-text-color:before {
  content: "\e242"; }

.glyphicon-text-background:before {
  content: "\e243"; }

.glyphicon-object-align-top:before {
  content: "\e244"; }

.glyphicon-object-align-bottom:before {
  content: "\e245"; }

.glyphicon-object-align-horizontal:before {
  content: "\e246"; }

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

.glyphicon-object-align-vertical:before {
  content: "\e248"; }

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

.glyphicon-triangle-right:before {
  content: "\e250"; }

.glyphicon-triangle-left:before {
  content: "\e251"; }

.glyphicon-triangle-bottom:before {
  content: "\e252"; }

.glyphicon-triangle-top:before {
  content: "\e253"; }

.glyphicon-console:before {
  content: "\e254"; }

.glyphicon-superscript:before {
  content: "\e255"; }

.glyphicon-subscript:before {
  content: "\e256"; }

.glyphicon-menu-left:before {
  content: "\e257"; }

.glyphicon-menu-right:before {
  content: "\e258"; }

.glyphicon-menu-down:before {
  content: "\e259"; }

.glyphicon-menu-up:before {
  content: "\e260"; }

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

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

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

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

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

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

figure {
  margin: 0; }

img {
  vertical-align: middle; }

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

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

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

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

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

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

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

[role="button"] {
  cursor: pointer; }

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

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

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

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

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

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

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

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

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

p {
  margin: 0 0 10px; }

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

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

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

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

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

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

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

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

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

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

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

.text-muted {
  color: #777777; }

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

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

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

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

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

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

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

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

.text-danger {
  color: #a94442; }

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

.bg-primary {
  color: #fff; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

dt,
dd {
  line-height: 1.42857; }

dt {
  font-weight: bold; }

dd {
  margin-left: 0; }

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

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

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

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

.initialism {
  font-size: 90%; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

table {
  background-color: transparent; }

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

th {
  text-align: left; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

label, fieldset.panel legend.panel-heading span {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: bold; }

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

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

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

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

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

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

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

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

.form-control-static {
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
  min-height: 34px; }
  .form-control-static.input-lg, .input-group-lg > .form-control-static.form-control,
  .input-group-lg > .form-control-static.input-group-addon,
  .input-group-lg > .input-group-btn > .form-control-static.btn, .form-control-static.input-sm, .input-group-sm > .form-control-static.form-control,
  .input-group-sm > .form-control-static.input-group-addon,
  .input-group-sm > .input-group-btn > .form-control-static.btn {
    padding-left: 0;
    padding-right: 0; }

.input-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

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

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

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

.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px; }

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

.form-group-sm .form-control-static {
  height: 30px;
  min-height: 32px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5; }

.input-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

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

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

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

.form-group-lg select.form-control {
  height: 46px;
  line-height: 46px; }

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

.form-group-lg .form-control-static {
  height: 46px;
  min-height: 38px;
  padding: 11px 16px;
  font-size: 18px;
  line-height: 1.33333; }

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

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

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

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

.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.radio fieldset.panel legend.panel-heading span,
fieldset.panel legend.panel-heading .has-success.radio span,
.has-success.checkbox label,
.has-success.checkbox fieldset.panel legend.panel-heading span,
fieldset.panel legend.panel-heading .has-success.checkbox span,
.has-success.radio-inline label,
.has-success.radio-inline fieldset.panel legend.panel-heading span,
fieldset.panel legend.panel-heading .has-success.radio-inline span,
.has-success.checkbox-inline label,
.has-success.checkbox-inline fieldset.panel legend.panel-heading span,
fieldset.panel legend.panel-heading .has-success.checkbox-inline span {
  color: #3c763d; }

.has-success .form-control {
  border-color: #3c763d;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-success .form-control:focus {
    border-color: #2b542c;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; }

.has-success .input-group-addon {
  color: #3c763d;
  border-color: #3c763d;
  background-color: #dff0d8; }

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

.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.radio fieldset.panel legend.panel-heading span,
fieldset.panel legend.panel-heading .has-warning.radio span,
.has-warning.checkbox label,
.has-warning.checkbox fieldset.panel legend.panel-heading span,
fieldset.panel legend.panel-heading .has-warning.checkbox span,
.has-warning.radio-inline label,
.has-warning.radio-inline fieldset.panel legend.panel-heading span,
fieldset.panel legend.panel-heading .has-warning.radio-inline span,
.has-warning.checkbox-inline label,
.has-warning.checkbox-inline fieldset.panel legend.panel-heading span,
fieldset.panel legend.panel-heading .has-warning.checkbox-inline span {
  color: #8a6d3b; }

.has-warning .form-control {
  border-color: #8a6d3b;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-warning .form-control:focus {
    border-color: #66512c;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; }

.has-warning .input-group-addon {
  color: #8a6d3b;
  border-color: #8a6d3b;
  background-color: #fcf8e3; }

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

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.radio fieldset.panel legend.panel-heading span,
fieldset.panel legend.panel-heading .has-error.radio span,
.has-error.checkbox label,
.has-error.checkbox fieldset.panel legend.panel-heading span,
fieldset.panel legend.panel-heading .has-error.checkbox span,
.has-error.radio-inline label,
.has-error.radio-inline fieldset.panel legend.panel-heading span,
fieldset.panel legend.panel-heading .has-error.radio-inline span,
.has-error.checkbox-inline label,
.has-error.checkbox-inline fieldset.panel legend.panel-heading span,
fieldset.panel legend.panel-heading .has-error.checkbox-inline span {
  color: #a94442; }

.has-error .form-control {
  border-color: #a94442;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-error .form-control:focus {
    border-color: #843534;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; }

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

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

.has-feedback label ~ .form-control-feedback, .has-feedback fieldset.panel legend.panel-heading span ~ .form-control-feedback, fieldset.panel legend.panel-heading .has-feedback span ~ .form-control-feedback {
  top: 25px; }

.has-feedback label.sr-only ~ .form-control-feedback, .has-feedback fieldset.panel legend.panel-heading span.sr-only ~ .form-control-feedback, fieldset.panel legend.panel-heading .has-feedback span.sr-only ~ .form-control-feedback {
  top: 0; }

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

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

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

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

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

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

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

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

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

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

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

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

.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4; }
  .btn-primary:focus, .btn-primary.focus {
    color: #fff;
    background-color: #286090;
    border-color: #122b40; }
  .btn-primary:hover {
    color: #fff;
    background-color: #286090;
    border-color: #204d74; }
  .btn-primary:active, .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #286090;
    border-color: #204d74; }
    .btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus,
    .open > .btn-primary.dropdown-toggle:hover,
    .open > .btn-primary.dropdown-toggle:focus,
    .open > .btn-primary.dropdown-toggle.focus {
      color: #fff;
      background-color: #204d74;
      border-color: #122b40; }
  .btn-primary:active, .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    background-image: none; }
  .btn-primary.disabled: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: #337ab7;
    border-color: #2e6da4; }
  .btn-primary .badge {
    color: #337ab7;
    background-color: #fff; }

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

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

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

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

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

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

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

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

.btn-block {
  display: block;
  width: 100%; }

.btn-block + .btn-block {
  margin-top: 5px; }

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%; }

.fade {
  opacity: 0;
  -webkit-transition: opacity 0.15s linear;
  -o-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear; }
  .fade.in {
    opacity: 1; }

.collapse {
  display: none; }
  .collapse.in {
    display: block; }

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

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

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

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

.dropup,
.dropdown {
  position: relative; }

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

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

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

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

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

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

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

.open > a {
  outline: 0; }

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

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

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

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

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

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

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

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

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

.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px; }

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

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

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

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

.btn-group > .btn-group {
  float: left; }

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

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

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

.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0; }

.btn-group > .btn + .dropdown-toggle {
  padding-left: 8px;
  padding-right: 8px; }

.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle {
  padding-left: 12px;
  padding-right: 12px; }

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

.btn .caret {
  margin-left: 0; }

.btn-lg .caret, .btn-group-lg > .btn .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0; }

.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret {
  border-width: 0 5px 5px; }

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%; }

.btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after {
  content: " ";
  display: table; }

.btn-group-vertical > .btn-group:after {
  clear: both; }

.btn-group-vertical > .btn-group > .btn {
  float: none; }

.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0; }

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

.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
  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: 4px;
  border-bottom-left-radius: 4px; }

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

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

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

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

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

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

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

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

.input-group-addon {
  padding: 6px 12px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 4px; }
  .input-group-addon.input-sm,
  .input-group-sm > .input-group-addon,
  .input-group-sm > .input-group-btn > .input-group-addon.btn {
    padding: 5px 10px;
    font-size: 12px;
    border-radius: 3px; }
  .input-group-addon.input-lg,
  .input-group-lg > .input-group-addon,
  .input-group-lg > .input-group-btn > .input-group-addon.btn {
    padding: 10px 16px;
    font-size: 18px;
    border-radius: 6px; }
  .input-group-addon input[type="radio"],
  .input-group-addon input[type="checkbox"] {
    margin-top: 0; }

.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0; }

.input-group-addon:first-child {
  border-right: 0; }

.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0; }

.input-group-addon:last-child {
  border-left: 0; }

.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap; }
  .input-group-btn > .btn {
    position: relative; }
    .input-group-btn > .btn + .btn {
      margin-left: -1px; }
    .input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active {
      z-index: 2; }
  .input-group-btn:first-child > .btn,
  .input-group-btn:first-child > .btn-group {
    margin-right: -1px; }
  .input-group-btn:last-child > .btn,
  .input-group-btn:last-child > .btn-group {
    z-index: 2;
    margin-left: -1px; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 20px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 4px; }
  .breadcrumb > li {
    display: inline-block; }
    .breadcrumb > li + li:before {
      content: "/ ";
      padding: 0 5px;
      color: #ccc; }
  .breadcrumb > .active {
    color: #777777; }

.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 20px 0;
  border-radius: 4px; }
  .pagination > li {
    display: inline; }
    .pagination > li > a,
    .pagination > li > span {
      position: relative;
      float: left;
      padding: 6px 12px;
      line-height: 1.42857;
      text-decoration: none;
      color: #337ab7;
      background-color: #fff;
      border: 1px solid #ddd;
      margin-left: -1px; }
    .pagination > li:first-child > a,
    .pagination > li:first-child > span {
      margin-left: 0;
      border-bottom-left-radius: 4px;
      border-top-left-radius: 4px; }
    .pagination > li:last-child > a,
    .pagination > li:last-child > span {
      border-bottom-right-radius: 4px;
      border-top-right-radius: 4px; }
  .pagination > li > a:hover, .pagination > li > a:focus,
  .pagination > li > span:hover,
  .pagination > li > span:focus {
    z-index: 2;
    color: #23527c;
    background-color: #eeeeee;
    border-color: #ddd; }
  .pagination > .active > a, .pagination > .active > a:hover, .pagination > .active > a:focus,
  .pagination > .active > span,
  .pagination > .active > span:hover,
  .pagination > .active > span:focus {
    z-index: 3;
    color: #fff;
    background-color: #337ab7;
    border-color: #337ab7;
    cursor: default; }
  .pagination > .disabled > span,
  .pagination > .disabled > span:hover,
  .pagination > .disabled > span:focus,
  .pagination > .disabled > a,
  .pagination > .disabled > a:hover,
  .pagination > .disabled > a:focus {
    color: #777777;
    background-color: #fff;
    border-color: #ddd;
    cursor: not-allowed; }

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

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

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

.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5; }

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

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

.pager {
  padding-left: 0;
  margin: 20px 0;
  list-style: none;
  text-align: center; }
  .pager:before, .pager:after {
    content: " ";
    display: table; }
  .pager:after {
    clear: both; }
  .pager li {
    display: inline; }
    .pager li > a,
    .pager li > span {
      display: inline-block;
      padding: 5px 14px;
      background-color: #fff;
      border: 1px solid #ddd;
      border-radius: 15px; }
    .pager li > a:hover,
    .pager li > a:focus {
      text-decoration: none;
      background-color: #eeeeee; }
  .pager .next > a,
  .pager .next > span {
    float: right; }
  .pager .previous > a,
  .pager .previous > span {
    float: left; }
  .pager .disabled > a,
  .pager .disabled > a:hover,
  .pager .disabled > a:focus,
  .pager .disabled > span {
    color: #777777;
    background-color: #fff;
    cursor: not-allowed; }

.label {
  display: inline;
  padding: .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: #337ab7; }
  .label-primary[href]:hover, .label-primary[href]:focus {
    background-color: #286090; }

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

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

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

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

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

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

.jumbotron {
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eeeeee; }
  .jumbotron h1,
  .jumbotron .h1 {
    color: inherit; }
  .jumbotron p {
    margin-bottom: 15px;
    font-size: 21px;
    font-weight: 200; }
  .jumbotron > hr {
    border-top-color: #d5d5d5; }
  .container .jumbotron,
  .container-fluid .jumbotron {
    border-radius: 6px;
    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: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  -webkit-transition: border 0.2s ease-in-out;
  -o-transition: border 0.2s ease-in-out;
  transition: border 0.2s ease-in-out; }
  .thumbnail > img,
  .thumbnail a > img {
    display: block;
    max-width: 100%;
    height: auto;
    margin-left: auto;
    margin-right: auto; }
  .thumbnail .caption {
    padding: 9px;
    color: #333333; }

a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #337ab7; }

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

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

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

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

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

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

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

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

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

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

.progress-striped .progress-bar,
.progress-bar-striped {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 40px 40px; }

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

.progress-bar-success {
  background-color: #5cb85c; }
  .progress-striped .progress-bar-success {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-info {
  background-color: #5bc0de; }
  .progress-striped .progress-bar-info {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-warning {
  background-color: #f0ad4e; }
  .progress-striped .progress-bar-warning {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-danger {
  background-color: #d9534f; }
  .progress-striped .progress-bar-danger {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

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

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

.media-body {
  width: 10000px; }

.media-object {
  display: block; }
  .media-object.img-thumbnail {
    max-width: none; }

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

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

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

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

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

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

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

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

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

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

button.list-group-item {
  width: 100%;
  text-align: left; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.embed-responsive-16by9 {
  padding-bottom: 56.25%; }

.embed-responsive-4by3 {
  padding-bottom: 75%; }

.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); }
  .well blockquote {
    border-color: #ddd;
    border-color: rgba(0, 0, 0, 0.15); }

.well-lg {
  padding: 24px;
  border-radius: 6px; }

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

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

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

.modal-open {
  overflow: hidden; }

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

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

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

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

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

.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5; }
  .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 {
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); }
  .modal-sm {
    width: 300px; } }

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

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 12px;
  opacity: 0;
  filter: alpha(opacity=0); }
  .tooltip.in {
    opacity: 0.9;
    filter: alpha(opacity=90); }
  .tooltip.top {
    margin-top: -3px;
    padding: 5px 0; }
  .tooltip.right {
    margin-left: 3px;
    padding: 0 5px; }
  .tooltip.bottom {
    margin-top: 3px;
    padding: 5px 0; }
  .tooltip.left {
    margin-left: -3px;
    padding: 0 5px; }

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

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

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

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

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

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

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

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

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

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

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  max-width: 276px;
  padding: 1px;
  font-family: "Helvetica Neue", Helvetica, 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: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); }
  .popover.top {
    margin-top: -10px; }
  .popover.right {
    margin-left: 10px; }
  .popover.bottom {
    margin-top: 10px; }
  .popover.left {
    margin-left: -10px; }

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

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

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

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

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

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

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

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

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

.carousel {
  position: relative; }

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

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

.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  margin-left: -30%;
  padding-left: 0;
  list-style: none;
  text-align: center; }
  .carousel-indicators li {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 1px;
    text-indent: -999px;
    border: 1px solid #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; } }

/*
 Base defaults
**/
/*
 Spacing Defaults
**/
/* messages **/
/* Neutrals **/
@font-face {
  font-family: 'fontawesome';
  src: url("../../fonts/font-awesome/fontawesome-webfont.eot?v=3.0.1");
  src: url("../../fonts/font-awesome/fontawesome-webfont.eot?#iefix&v=3.0.1") format("embedded-opentype"), url("../../fonts/font-awesome/fontawesome-webfont.woff?v=3.0.1") format("woff"), url("../../fonts/font-awesome/fontawesome-webfont.ttf?v=3.0.1") format("truetype");
  font-weight: normal;
  font-style: normal; }

/** Font Families **/
/** Font Weights **/
/*buttons **/
/* Text Colors **/
/* Background **/
/* Headline */
/* Header specific colors */
/*
 * Functions
 **/
/**
 * Mixins should go here.
 * You can also break complex mixins into partials if you like
 * names mixins--NAME.scss
 **/
/*
 * Tooltip Triangles
 * Cause we have a border on a triangle...
 **/
body {
  background-color: #ffffff; }

.body_inner {
  overflow-x: hidden; }

.main-container {
  margin-bottom: 2rem; }

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

.captcha-admin-links {
  display: none; }

ol {
  margin-left: 5px; }

.breadcrumb {
  background-color: transparent;
  float: right;
  margin: 0 0 0;
  padding: 0 1.875rem 1.875rem 0;
  position: relative; }
  .breadcrumb:after {
    clear: both;
    content: '';
    display: block;
    position: relative; }
  .breadcrumb li a {
    color: #0080B4; }

.block-easy-breadcrumb {
  font-size: .875rem;
  margin-bottom: 2rem;
  margin-top: 3rem; }

.hide-breadcrumbs .block-easy-breadcrumb,
.field-name-field-hide-breadcrumbs- {
  display: none; }

.btn:not(.not-btn) {
  color: #ffffff;
  background-image: none;
  border: none;
  border-radius: 30px;
  box-shadow: none;
  font-family: #fff;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 25px;
  padding: 10px 70px 10px 20px;
  text-align: center;
  text-decoration: none;
  text-shadow: none;
  text-transform: uppercase;
  display: inline-block;
  position: relative;
  -webkit-transition: all, 250ms;
  -o-transition: all, 250ms;
  transition: all, 250ms;
  background-color: #80001A;
  color: #ffffff; }
  .btn:not(.not-btn) a {
    position: relative; }
  .btn:not(.not-btn) a, .btn:not(.not-btn) a:visited {
    color: #ffffff;
    text-decoration: none; }
  .btn:not(.not-btn):after {
    content: '\f105';
    font-family: "fontawesome";
    border: 2px solid #ffffff;
    border-radius: 100%;
    font-size: 30px;
    display: inline-block;
    width: 34px;
    height: 34px;
    text-align: center;
    line-height: 26px;
    padding-left: 2px;
    margin-left: 25px;
    position: absolute;
    top: 50%;
    right: 6px;
    margin-top: -17px; }
  .btn:not(.not-btn):hover, .btn:not(.not-btn):focus {
    border: none;
    outline: none;
    text-decoration: none; }
  .btn:not(.not-btn):hover, .btn:not(.not-btn):focus,
  .btn:not(.not-btn):hover a,
  .btn:not(.not-btn):focus a,
  .btn:not(.not-btn):hover a:visited,
  .btn:not(.not-btn):focus a:visited {
    background-color: #CC9933;
    color: #ffffff; }

.btn-secondary {
  color: #ffffff;
  background-image: none;
  border: none;
  border-radius: 30px;
  box-shadow: none;
  font-family: #fff;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 25px;
  padding: 10px 70px 10px 20px;
  text-align: center;
  text-decoration: none;
  text-shadow: none;
  text-transform: uppercase;
  display: inline-block;
  position: relative;
  -webkit-transition: all, 250ms;
  -o-transition: all, 250ms;
  transition: all, 250ms;
  background-color: #ffffff;
  color: #333333;
  padding-left: 0;
  padding-right: 60px; }
  .btn-secondary a {
    position: relative; }
  .btn-secondary a, .btn-secondary a:visited {
    color: #ffffff;
    text-decoration: none; }
  .btn-secondary:after {
    content: '\f105';
    font-family: "fontawesome";
    border: 2px solid #ffffff;
    border-radius: 100%;
    font-size: 30px;
    display: inline-block;
    width: 34px;
    height: 34px;
    text-align: center;
    line-height: 26px;
    padding-left: 2px;
    margin-left: 25px;
    position: absolute;
    top: 50%;
    right: 6px;
    margin-top: -17px; }
  .btn-secondary:hover, .btn-secondary:focus {
    border: none;
    outline: none;
    text-decoration: none; }
  .btn-secondary:visited {
    color: #ffffff; }
  .btn-secondary:after {
    border-color: #333333;
    right: 0; }
  .btn-secondary:hover, .btn-secondary:focus,
  .btn-secondary:hover a,
  .btn-secondary:focus a,
  .btn-secondary:hover a:visited,
  .btn-secondary:focus a:visited {
    background-color: #ffffff;
    color: #80001A; }
    .btn-secondary:hover:after, .btn-secondary:focus:after,
    .btn-secondary:hover a:after,
    .btn-secondary:focus a:after,
    .btn-secondary:hover a:visited:after,
    .btn-secondary:focus a:visited:after {
      border-color: #80001A; }
  .btn-secondary a, .btn-secondary a:visited {
    color: #333333;
    text-decoration: none; }

.btn-tertiary {
  color: #ffffff;
  background-image: none;
  border: none;
  border-radius: 30px;
  box-shadow: none;
  font-family: #fff;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 25px;
  padding: 10px 70px 10px 20px;
  text-align: center;
  text-decoration: none;
  text-shadow: none;
  text-transform: uppercase;
  display: inline-block;
  position: relative;
  -webkit-transition: all, 250ms;
  -o-transition: all, 250ms;
  transition: all, 250ms;
  background-color: #4D4D4D;
  border: 3px solid #4D4D4D;
  color: #ffffff; }
  .btn-tertiary a {
    position: relative; }
  .btn-tertiary a, .btn-tertiary a:visited {
    color: #ffffff;
    text-decoration: none; }
  .btn-tertiary:after {
    content: '\f105';
    font-family: "fontawesome";
    border: 2px solid #ffffff;
    border-radius: 100%;
    font-size: 30px;
    display: inline-block;
    width: 34px;
    height: 34px;
    text-align: center;
    line-height: 26px;
    padding-left: 2px;
    margin-left: 25px;
    position: absolute;
    top: 50%;
    right: 6px;
    margin-top: -17px; }
  .btn-tertiary:hover, .btn-tertiary:focus {
    border: none;
    outline: none;
    text-decoration: none; }
  .btn-tertiary:hover, .btn-tertiary:focus {
    background-color: #333333;
    border: 3px solid #333333;
    color: #ffffff; }

.footer {
  border-top: 6px solid #B3801A;
  font-size: 1rem;
  padding-top: 8px; }
  .footer .row {
    margin-left: 0;
    margin-right: 0; }
  .footer .subscription-form {
    background: #80001A;
    color: white;
    font-family: "Muli", Georgia;
    font-size: 1.5rem;
    padding: 10px 0;
    text-align: center; }
    .footer .subscription-form span {
      display: block;
      margin-right: 14px; }
      @media (min-width: 992px) {
        .footer .subscription-form span {
          display: inline-block;
          vertical-align: top;
          margin-top: 23px; } }
    .footer .subscription-form input[type="text"] {
      background: #ffffff;
      border: none;
      border-radius: 0;
      color: #4D4D4D;
      height: 42px;
      font-size: 1.25rem;
      line-height: 42px;
      margin: 0 7px;
      padding: 0 1.25rem;
      -webkit-appearance: none;
      margin: 0 auto;
      max-width: 100%;
      width: 325px; }
      .footer .subscription-form input[type="text"]::placeholder {
        color: #ababab;
        font-style: italic; }
      @media (min-width: 992px) {
        .footer .subscription-form input[type="text"] {
          margin: 0 7px; } }
    .footer .subscription-form select {
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      background: #ffffff;
      border: none;
      border-radius: 0;
      color: #4D4D4D;
      height: 42px;
      font-size: 1.25rem;
      line-height: 42px;
      margin: 0 7px;
      padding: 0 1.25rem;
      -webkit-appearance: none;
      width: 325px;
      margin-left: auto;
      margin-right: auto;
      max-width: 100%; }
      .footer .subscription-form select:focus, .footer .subscription-form select:hover {
        box-shadow: 0 0 15px rgba(0, 0, 0, 0.2); }
      .footer .subscription-form select:after {
        content: '▾';
        position: absolute;
        top: 0;
        right: 12px;
        z-index: 1;
        color: #bbbbbb;
        line-height: 40px;
        font-size: 14px; }
        .ie .footer .subscription-form select:after {
          display: none; }
      .footer .subscription-form select select {
        position: relative;
        background: transparent;
        background-image: none;
        display: block;
        width: 100%;
        outline: none;
        color: #4D4D4D;
        cursor: pointer;
        z-index: 2;
        border: none;
        padding: 10px 10px 10px 5px;
        text-overflow: '';
        text-indent: 5px; }
        .footer .subscription-form select select[multiple=multiple] {
          height: auto;
          border: 1px solid #4D4D4D;
          border-radius: 0px;
          box-shadow: 0; }
          .footer .subscription-form select select[multiple=multiple]:hover {
            border-color: #cccccc;
            box-shadow: 0 0 15px rgba(0, 0, 0, 0.2); }
        .footer .subscription-form select select option[disabled] {
          color: #eeeeee;
          text-shadow: none;
          border: none; }
      .footer .subscription-form select select:-moz-focusring {
        color: transparent;
        text-shadow: 0 0 0 #888888; }
      .footer .subscription-form select select::-ms-expand {
        display: none; }
      .footer .subscription-form select option:first-child {
        color: #333333; }
    .footer .subscription-form .form-item {
      margin: 20px 0;
      width: 95%;
      display: inline-block; }
      @media (min-width: 768px) {
        .footer .subscription-form .form-item {
          width: 30%;
          margin: 20px 5px; } }
      @media (min-width: 992px) {
        .footer .subscription-form .form-item {
          width: 325px; } }
    .footer .subscription-form button {
      background: none;
      border: solid 2px #ffffff;
      border-radius: 42px;
      color: #ffffff;
      font-family: "Muli", Georgia;
      font-weight: normal;
      height: 42px;
      line-height: 38px;
      margin-left: 14px;
      padding: 0;
      text-align: center;
      text-transform: uppercase;
      width: 42px; }
      @media (min-width: 992px) {
        .footer .subscription-form button {
          vertical-align: top;
          margin-top: 21px; } }
      .footer .subscription-form button:hover {
        background: #670015; }
  .footer .footer-news {
    background: #e7e7e7;
    padding: 40px 0;
    text-align: center; }
    .footer .footer-news h2 {
      color: #990033; }
    .footer .footer-news .col-sm-12 {
      margin-bottom: 30px; }
      @media (min-width: 768px) {
        .footer .footer-news .col-sm-12 {
          margin-bottom: 0; } }
      .footer .footer-news .col-sm-12:last-of-type {
        margin-bottom: 15px; }
      .footer .footer-news .col-sm-12 p {
        margin-bottom: 0; }
  .footer .footer-links {
    padding: 25px 0;
    font-size: 1rem; }
    .footer .footer-links .col-sm-12:first-of-type {
      padding-bottom: 15px; }
    @media (min-width: 768px) {
      .footer .footer-links .subfooter-nav {
        columns: 180px 4;
        padding-left: 3rem; } }
    .footer .footer-links .subfooter-nav li {
      padding-bottom: 10px; }
    .footer .footer-links .acronym {
      font-family: "Muli", Georgia;
      font-size: 4rem; }
    .footer .footer-links ul {
      list-style: none;
      margin-left: 0;
      padding-left: 0; }
      .footer .footer-links ul li {
        margin-left: 0;
        padding-left: 0; }
    .footer .footer-links .field-item {
      padding-bottom: 10px; }
    .footer .footer-links .container {
      border-bottom: 1px solid #ededed; }
  .footer .footer-bottom-nav {
    background: #80001A;
    border-top: 6px solid #B3801A;
    color: #ffffff;
    padding: 26px 0;
    text-align: center; }
    .footer .footer-bottom-nav .footer-nav {
      margin-bottom: 0; }
    .footer .footer-bottom-nav ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-around;
      text-align: center;
      list-style: none;
      padding: 0; }
      .footer .footer-bottom-nav ul li {
        flex: 0 0 100%;
        padding-bottom: 10px;
        padding-left: 0; }
      @media (min-width: 992px) {
        .footer .footer-bottom-nav ul li {
          flex: 0 0 50%; } }
      @media (min-width: 992px) {
        .footer .footer-bottom-nav ul li {
          flex: 0 0 25%; } }
    .footer .footer-bottom-nav a {
      color: #ffffff; }
  .footer .footer-bottom {
    padding: 0;
    text-align: center; }
    @media (min-width: 992px) {
      .footer .footer-bottom {
        text-align: left; } }
    .footer .footer-bottom h5 {
      color: #80001A;
      font-weight: bold;
      text-transform: uppercase; }
    .footer .footer-bottom p {
      margin-bottom: 0; }
    @media (min-width: 992px) {
      .footer .footer-bottom .footer-contact-and-social-container {
        display: flex; } }
    .footer .footer-bottom .field-name-field-footer-contact p {
      margin-bottom: 0; }
    .footer .footer-bottom .field-name-field-footer-logo .img-responsive {
      margin: 0 auto; }
    .footer .footer-bottom .social {
      display: flex;
      justify-content: center;
      margin-left: 1rem; }
      @media (min-width: 992px) {
        .footer .footer-bottom .social {
          justify-content: flex-start; } }
      .footer .footer-bottom .social a {
        background: url(../../images/icon-facebook-footer.svg);
        background-position: center center;
        background-repeat: no-repeat;
        border-radius: 45px;
        color: #ffffff;
        display: block;
        height: 45px;
        line-height: 45px;
        margin: 0 10px 10px 0;
        position: relative;
        text-align: center;
        width: 45px; }
        .footer .footer-bottom .social a img {
          display: none; }
        .footer .footer-bottom .social a:hover {
          background-color: #B3801A; }
        .footer .footer-bottom .social a.call:after {
          content: "\f098"; }
        .footer .footer-bottom .social a.map:after {
          content: "\f041"; }
        .footer .footer-bottom .social a.facebook {
          background-image: url(../../images/icon-facebook-footer.svg); }
        .footer .footer-bottom .social a.twitter {
          background-image: url(../../images/icon-twitter-footer.svg); }
        .footer .footer-bottom .social a.linkedin {
          background-image: url(../../images/icon-linkedin.png); }
        .footer .footer-bottom .social a.youtube {
          background-image: url(../../images/icon-youtube-footer.svg);
          background-size: 60%; }
        @media (min-width: 768px) {
          .footer .footer-bottom .social a.call {
            display: block; } }
        .footer .footer-bottom .social a.call[href*="tel:"] {
          display: block; }
          @media (min-width: 768px) {
            .footer .footer-bottom .social a.call[href*="tel:"] {
              display: none; } }
    .footer .footer-bottom .col-md-6 {
      margin-bottom: 50px;
      text-align: center; }
    .footer .footer-bottom .search-bar {
      margin: 25px 0;
      position: relative; }
      .footer .footer-bottom .search-bar input {
        background: #ffffff;
        border: none;
        border-radius: 0;
        color: #4D4D4D;
        height: 42px;
        font-size: 1.25rem;
        line-height: 42px;
        margin: 0 7px;
        padding: 0 1.25rem;
        -webkit-appearance: none;
        border: 1px solid #c4c4c4;
        margin: 0; }
        .footer .footer-bottom .search-bar input::placeholder {
          color: #ababab;
          font-style: italic; }
      .footer .footer-bottom .search-bar button {
        background: none;
        border: none;
        border-radius: none;
        padding: 0;
        position: absolute;
        right: 2px;
        top: -5px;
        -webkit-appearance: none;
        width: 40px; }
        .footer .footer-bottom .search-bar button:before {
          color: #990033;
          content: "\f002";
          font-family: "fontawesome";
          font-size: 24px;
          height: 24px;
          width: 24px; }
        .footer .footer-bottom .search-bar button .glyphicon {
          display: none; }
        .footer .footer-bottom .search-bar button:after {
          display: none; }
      .footer .footer-bottom .search-bar .captcha-admin-links {
        display: none; }

.block-neasc-footer-contact-address p {
  font-size: 1rem; }

.footer-copyright-and-legal-nav-container {
  text-align: center; }
  @media (min-width: 992px) {
    .footer-copyright-and-legal-nav-container {
      text-align: left;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; } }
  .footer-copyright-and-legal-nav-container a + a {
    margin-left: 1em; }

/*
 * form-select
 **/
span.control-label, label, fieldset.panel legend.panel-heading span, fieldset.panel legend.panel-heading span {
  color: #333333;
  font-size: 14px;
  font-weight: 900;
  margin-bottom: 0;
  text-transform: uppercase; }

.input-group {
  width: 100%; }

.form-item {
  position: relative; }
  .form-item.form-type-textarea {
    width: 100%; }
  @media (min-width: 768px) {
    .form-item {
      margin-right: 2%;
      max-width: 420px;
      width: 100%; }
      .form-item .form-item {
        margin-right: 0;
        width: 100%; }
      .form-item.form-type-textarea {
        width: 98%; } }

.form-control {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  height: inherit; }
  .form-control:focus {
    box-shadow: none; }

.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group {
  font-size: 24px;
  height: 50px;
  width: 70px; }

input[type="text"],
input[type="tel"],
input[type="password"],
input[type="email"],
input[type="phone"],
input[type="file"] {
  border: 1px solid #c4c4c4;
  border-radius: 0;
  box-shadow: none;
  color: #333333;
  font-size: 1.125rem;
  line-height: 45px;
  height: 45px;
  padding: 0 0.9375rem; }
  input[type="text"]:focus,
  input[type="tel"]:focus,
  input[type="password"]:focus,
  input[type="email"]:focus,
  input[type="phone"]:focus,
  input[type="file"]:focus {
    outline: none;
    border-color: #0080B4;
    box-shadow: none; }

input[type="file"] {
  padding: 0.9375rem; }

.resizable-textarea textarea,
textarea {
  border: 1px solid #c4c4c4;
  border-bottom: 0;
  border-radius: 0;
  box-shadow: none;
  color: #333333;
  font-size: 1.125rem;
  padding: 0.9375rem; }
  .resizable-textarea textarea:focus,
  textarea:focus {
    outline: none;
    border-color: #0080B4;
    box-shadow: none; }

.resizable-textarea .grippie {
  height: 1px;
  background: #4D4D4D;
  border: 1px solid #c4c4c4;
  border-top-width: 0;
  cursor: s-resize; }

textarea {
  border-bottom: 2px solid #4D4D4D; }

input[type="radio"],
input[type="checkbox"] {
  display: inline-block; }

.form-type-select,
.neasc-facet-group {
  position: relative; }
  .form-type-select select, .form-type-select select.form-select:not(#edit-interest),
  .neasc-facet-group select,
  .neasc-facet-group select.form-select:not(#edit-interest) {
    background: none;
    border: 1px solid #c4c4c4;
    border-radius: 0;
    color: #4D4D4D;
    font-size: 1.125rem;
    height: 47px;
    line-height: 1.2rem;
    padding-right: 50px;
    -webkit-appearance: none; }
    .form-type-select select:focus, .form-type-select select.form-select:not(#edit-interest):focus,
    .neasc-facet-group select:focus,
    .neasc-facet-group select.form-select:not(#edit-interest):focus {
      outline: none;
      border-color: #0080B4;
      box-shadow: none; }
  .form-type-select .select-wrapper:after,
  .neasc-facet-group .select-wrapper:after {
    color: #c4c4c4;
    content: "\f107";
    display: block;
    font-family: "fontawesome";
    font-size: 32px;
    line-height: 1.625;
    margin-top: 0;
    padding-right: 0;
    position: absolute;
    right: 13px;
    top: -1px;
    z-index: -1; }

.form-type-date .form-item.form-type-select {
  margin-right: 5px; }
  .form-type-date .form-item.form-type-select:last-child {
    margin-right: 0; }
  .form-type-date .form-item.form-type-select select {
    display: inline-block;
    padding-right: 50px;
    width: auto; }
  .form-type-date .form-item.form-type-select:after {
    right: 15px;
    top: -14px; }

.form-type-date input.webform-calendar {
  height: auto;
  width: 40px; }

.form-managed-file {
  position: relative; }
  @media (min-width: 768px) {
    .form-managed-file input[type="file"] {
      width: 95%; } }
  .form-managed-file input[type="file"] .input-group-btn:last-child > .btn,
  .form-managed-file input[type="file"] .input-group-btn:last-child > .btn-group {
    font-size: 1.2rem;
    padding: 12px 1rem;
    width: 170px; }
  .form-managed-file .btn {
    margin-top: 1rem;
    padding: 9px 20px 8px; }
    @media (min-width: 768px) {
      .form-managed-file .btn {
        margin-top: 0;
        position: absolute;
        right: 0;
        top: 0; } }
    .form-managed-file .btn:after {
      display: none; }

.form-required:after {
  color: #990033;
  font-size: 14px;
  font-weight: 900;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right; }

.form-actions .btn {
  padding: 10px 30px;
  text-align: left; }
  .form-actions .btn:only-child {
    max-width: 420px;
    width: 100%; }
  .form-actions .btn:first-child {
    max-width: calc(420px - 70px);
    width: calc(100% - 70px); }
  @media (min-width: 768px) {
    .form-actions .btn {
      width: 48%; } }

.form-item-password-confirm input[type="password"] {
  width: 100%; }

.has-error .form-control {
  border-color: #c4c4c4;
  border-bottom-color: #990033; }
  .has-error .form-control:focus {
    border-color: #c4c4c4;
    border-bottom-color: #990033;
    box-shadow: none; }

fieldset.panel {
  border-radius: 0;
  margin: 2rem 0;
  padding-top: 4rem;
  position: relative; }
  fieldset.panel legend.panel-heading {
    background: #dedede;
    position: absolute;
    top: 0; }
  fieldset.panel .panel-body {
    display: flex;
    flex-wrap: wrap;
    flex: 0 0 50%; }

.form-actions {
  margin: 2rem 0 4rem; }

@media (min-width: 768px) {
  .webform-client-form > div {
    display: flex;
    flex: 0 0 50%;
    flex-wrap: wrap; }
  .webform-client-form .form-item {
    max-width: none;
    width: 48%; }
  .webform-client-form .webform-component-textarea,
  .webform-client-form .webform-component-fieldset {
    margin-right: 2%;
    max-width: 98%;
    width: 100%; }
  .webform-client-form .form-actions {
    width: 100%; } }

#webform-component-payment-information--payment {
  display: none; }

.node-webform .webform-client-form .form-item, .node-type-page .webform-client-form .form-item {
  width: 100%; }

.node-webform .form-inline .form-control, .node-type-page .form-inline .form-control {
  width: 100%; }

.form-item-submitted-product-selection-shipping-options,
.form-item-submitted-product-selection-shipping {
  display: none; }

html.js input.js-hide, html.js button.js-hide {
  display: none; }

#page-uber {
  background: #FFF;
  line-height: 50px;
  max-width: 100vw;
  width: 100vw;
  display: inline-block;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  display: none; }
  #page-uber > .container {
    vertical-align: top; }
  #page-uber .nav ul.breadcrumb-links {
    display: inline-block;
    border-right: 1px solid #ababab;
    margin-bottom: 0;
    padding: 0 0 0 8px;
    position: relative;
    margin-right: 15px; }
    #page-uber .nav ul.breadcrumb-links:before {
      content: "\f053";
      font-family: "fontawesome";
      position: relative;
      float: left;
      line-height: 64px; }
    #page-uber .nav ul.breadcrumb-links li {
      display: inline;
      list-style: none;
      margin-right: 0; }
      #page-uber .nav ul.breadcrumb-links li a {
        border-right: 1px solid #ababab;
        padding: 0 15px; }
      #page-uber .nav ul.breadcrumb-links li.last {
        border: none; }
        #page-uber .nav ul.breadcrumb-links li.last a {
          border-right: medium none; }
  #page-uber .nav {
    float: none;
    display: inline-block;
    vertical-align: top; }
    #page-uber .nav span {
      float: left;
      font-weight: 900;
      margin-right: 25px; }
    #page-uber .nav ul {
      float: left;
      list-style: none;
      margin-bottom: 0;
      margin-left: 0;
      padding-left: 0; }
      #page-uber .nav ul.quick-links {
        padding-top: 0; }
      #page-uber .nav ul li {
        float: left;
        margin: 0 25px 0 0;
        padding-left: 0;
        line-height: 50px; }
        #page-uber .nav ul li a {
          text-decoration: none; }
          #page-uber .nav ul li a:hover {
            text-decoration: underline; }
        #page-uber .nav ul li a {
          color: #00417D;
          display: inline-block;
          text-decoration: none;
          font-weight: 400;
          font-size: 14px;
          line-height: 16px; }
  #page-uber a.button {
    color: #ffffff;
    background-image: none;
    border: none;
    border-radius: 30px;
    box-shadow: none;
    font-family: #fff;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 25px;
    padding: 10px 70px 10px 20px;
    text-align: center;
    text-decoration: none;
    text-shadow: none;
    text-transform: uppercase;
    display: inline-block;
    position: relative;
    -webkit-transition: all, 250ms;
    -o-transition: all, 250ms;
    transition: all, 250ms;
    background: #80001A;
    font-weight: 700;
    font-size: 14px;
    line-height: 16px;
    margin-top: 12px;
    padding: 0 20px;
    height: 50px;
    line-height: 50px;
    border-radius: 0;
    margin-top: 0;
    text-transform: initial; }
    #page-uber a.button a {
      position: relative; }
    #page-uber a.button a, #page-uber a.button a:visited {
      color: #ffffff;
      text-decoration: none; }
    #page-uber a.button:after {
      content: '\f105';
      font-family: "fontawesome";
      border: 2px solid #ffffff;
      border-radius: 100%;
      font-size: 30px;
      display: inline-block;
      width: 34px;
      height: 34px;
      text-align: center;
      line-height: 26px;
      padding-left: 2px;
      margin-left: 25px;
      position: absolute;
      top: 50%;
      right: 6px;
      margin-top: -17px; }
    #page-uber a.button:hover, #page-uber a.button:focus {
      border: none;
      outline: none;
      text-decoration: none; }
    #page-uber a.button:after {
      display: none; }
    #page-uber a.button:hover {
      background: #B3801A; }
    @media (min-width: 768px) {
      #page-uber a.button {
        float: right; } }
  @media (min-width: 768px) {
    #page-uber {
      display: block; } }

.navbar {
  background: transparent; }

#navbar .container {
  margin: 0 auto; }

.header--wrapper {
  background: #ffffff;
  /* Old browsers */ }
  .header--wrapper .header {
    align-items: center;
    display: flex;
    overflow: auto;
    padding-bottom: 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    width: 100%; }
    .header--wrapper .header--middle {
      width: 50%; }
      .header--wrapper .header--middle h2 {
        font-size: 1.5rem;
        font-weight: 700;
        text-align: center; }
      .header--wrapper .header--middle img {
        display: block;
        height: 65px;
        margin: 0 auto;
        width: 65px; }
      .header--wrapper .header--middle img.logo-desktop {
        display: none; }
      .header--wrapper .header--middle .lead {
        display: none;
        white-space: normal; }
        @media (min-width: 992px) {
          .header--wrapper .header--middle .lead {
            white-space: nowrap; } }
        @media (min-width: 768px) {
          .header--wrapper .header--middle .lead {
            display: block; } }
    .header--wrapper .header--left, .header--wrapper .header--right {
      width: 25%; }
    .header--wrapper .header--left .navbar-toggle {
      float: left;
      margin-left: 10px; }
      .header--wrapper .header--left .navbar-toggle .icon-bar {
        background: #333333; }
    @media (min-width: 768px) {
      .header--wrapper .header {
        padding-bottom: 10px; }
        .header--wrapper .header--left {
          display: none; }
        .header--wrapper .header--middle {
          width: 25%; }
          .header--wrapper .header--middle h2 {
            font-size: 2.25rem;
            margin-left: 0.9375rem;
            text-align: left;
            white-space: nowrap; }
          .header--wrapper .header--middle img.logo-mobile {
            display: none; }
          .header--wrapper .header--middle img.logo-desktop {
            display: block; }
        .header--wrapper .header--right {
          width: 75%; } }
    @media (min-width: 768px) and (min-width: 992px) {
      .header--wrapper .header--right {
        display: flex;
        justify-content: right; } }
    .header--wrapper .header--middle {
      flex-grow: 0;
      padding: 0; }
      .header--wrapper .header--middle img {
        max-width: 100%; }
      .header--wrapper .header--middle .name {
        display: none; }
    .header--wrapper .header--right {
      flex-grow: 1;
      padding: 10px 0;
      position: relative; }
      @media (min-width: 992px) {
        .header--wrapper .header--right {
          padding-bottom: 40px; } }
      .header--wrapper .header--right .navbar-brand {
        color: #80001A;
        font-family: "Muli", Georgia;
        font-size: 42px;
        line-height: 1.2;
        margin-bottom: 15px;
        margin-top: 0;
        display: block;
        width: 100%;
        padding: 0;
        color: #80001A;
        margin-bottom: 0; }
        @media (min-width: 768px) {
          .header--wrapper .header--right .navbar-brand {
            font-size: 36px; } }
        .header--wrapper .header--right .navbar-brand a, .header--wrapper .header--right .navbar-brand a:visited, .header--wrapper .header--right .navbar-brand a:focus, .header--wrapper .header--right .navbar-brand a:hover {
          color: #80001A;
          text-decoration: none; }
      .header--wrapper .header--right .name {
        display: none; }
      .header--wrapper .header--right--text {
        display: inline-block;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        top: 45%; }
      .header--wrapper .header--right ul.utility-nav {
        display: none;
        float: right;
        list-style: none;
        margin-left: 0;
        margin-right: 3%;
        padding-left: 0; }
        .header--wrapper .header--right ul.utility-nav li {
          display: inline-block;
          margin-right: 48px;
          margin-left: 0;
          padding-left: 0; }
          .header--wrapper .header--right ul.utility-nav li a {
            text-decoration: none; }
            .header--wrapper .header--right ul.utility-nav li a:hover {
              text-decoration: underline; }
          .header--wrapper .header--right ul.utility-nav li:last-of-type {
            margin-right: 0; }
          .header--wrapper .header--right ul.utility-nav li a {
            color: #005198; }
        @media (min-width: 768px) {
          .header--wrapper .header--right ul.utility-nav {
            display: flex;
            align-items: center;
            flex-wrap: wrap;
            margin-bottom: 0; } }
      .header--wrapper .header--right .search-toggle {
        display: block;
        height: 40px; }
        .header--wrapper .header--right .search-toggle:after {
          content: "\f002";
          display: block;
          float: right;
          font-family: "fontawesome";
          font-size: 24px;
          height: 24px;
          margin-right: 30px;
          width: 24px; }
          @media (min-width: 768px) {
            .header--wrapper .header--right .search-toggle:after {
              display: none; } }
      .header--wrapper .header--right .search-bar {
        clear: both;
        display: none;
        float: right;
        height: 42px;
        margin: 0 3% 0 0;
        position: relative; }
        .header--wrapper .header--right .search-bar input {
          background: #ffffff;
          border: none;
          border-radius: 0;
          color: #4D4D4D;
          height: 42px;
          font-size: 1.25rem;
          line-height: 42px;
          margin: 0 7px;
          padding: 0 1.25rem;
          -webkit-appearance: none;
          border-radius: 21px;
          border: 1px solid #c4c4c4;
          margin: 0;
          width: 300px; }
          .header--wrapper .header--right .search-bar input::placeholder {
            color: #ababab;
            font-style: italic; }
          .header--wrapper .header--right .search-bar input::placeholder {
            color: #1e1e1e;
            font-style: normal; }
        .header--wrapper .header--right .search-bar button.btn {
          background: none;
          border: none;
          border-radius: none;
          height: auto;
          position: absolute;
          right: -10px;
          top: 23px;
          -webkit-appearance: none;
          padding: 5px; }
          @media (min-width: 768px) {
            .header--wrapper .header--right .search-bar button.btn {
              padding: 0; } }
          .header--wrapper .header--right .search-bar button.btn .glyphicon {
            display: none; }
          .header--wrapper .header--right .search-bar button.btn::after {
            background-image: url(../../images/icon-search-thin.png);
            background-position: center center;
            background-repeat: no-repeat;
            border: none;
            content: "";
            height: 34px;
            right: 18px;
            top: 0;
            width: 34px; }
        @media (min-width: 768px) {
          .header--wrapper .header--right .search-bar {
            display: block; } }
        .header--wrapper .header--right .search-bar .captcha-admin-links {
          display: none; }
    .header--wrapper .header .logo {
      margin: 0 2%;
      max-width: 427px;
      position: relative;
      width: 427px;
      z-index: 1; }
      .header--wrapper .header .logo img.logo-desktop {
        height: auto;
        margin-left: 15px;
        max-width: 426px !important;
        width: calc(100% - 15px); }
  .header--wrapper .mobile-menu {
    display: none;
    color: #ffffff; }
    @media (min-width: 768px) {
      .header--wrapper .mobile-menu {
        display: none !important; } }
    .header--wrapper .mobile-menu a {
      color: #ffffff; }
    .header--wrapper .mobile-menu a {
      text-decoration: none; }
      .header--wrapper .mobile-menu a:hover {
        text-decoration: underline; }
    .header--wrapper .mobile-menu ul.menu.nav {
      border-right: 7px solid #CC9933; }
      .header--wrapper .mobile-menu ul.menu.nav li {
        background: #990033;
        border-bottom: 1px solid #80001A;
        line-height: 2.25rem;
        padding-bottom: 0;
        padding-left: 0; }
        .header--wrapper .mobile-menu ul.menu.nav li a {
          background: none;
          font-size: 1.25rem; }
          .header--wrapper .mobile-menu ul.menu.nav li a.active, .header--wrapper .mobile-menu ul.menu.nav li a:hover {
            color: #CC9933;
            font-weight: 900; }
            .header--wrapper .mobile-menu ul.menu.nav li a.active:after, .header--wrapper .mobile-menu ul.menu.nav li a:hover:after {
              content: "";
              width: 0;
              height: 0;
              border-top: 10px solid transparent;
              border-bottom: 10px solid transparent;
              border-right: 10px solid #CC9933;
              right: 0;
              position: absolute;
              top: 16px; }
    .header--wrapper .mobile-menu ul.utility-nav {
      background: #E7E7E7;
      list-style: none;
      overflow: hidden;
      margin: 0;
      padding: 15px 0 0; }
      .header--wrapper .mobile-menu ul.utility-nav li {
        display: inline-block;
        width: 49%; }
        .header--wrapper .mobile-menu ul.utility-nav li a {
          color: #990033;
          line-height: 1.75rem;
          display: inline-block;
          float: left;
          width: 50%; }
    @media (min-width: 768px) {
      .header--wrapper .mobile-menu {
        display: none !important; } }
  .header--wrapper .mobile-search {
    background: #E7E7E7;
    display: none;
    overflow: hidden;
    padding: 20px; }
    @media (min-width: 768px) {
      .header--wrapper .mobile-search {
        display: none !important; } }
    .header--wrapper .mobile-search .search-bar {
      clear: both;
      margin: 0 0 20px;
      position: relative; }
      .header--wrapper .mobile-search .search-bar .form-actions {
        margin: 0; }
      .header--wrapper .mobile-search .search-bar input {
        background: #ffffff;
        border: none;
        border-radius: 0;
        color: #4D4D4D;
        height: 42px;
        font-size: 1.25rem;
        line-height: 42px;
        margin: 0 7px;
        padding: 0 1.25rem;
        -webkit-appearance: none;
        border: 1px solid #c4c4c4;
        margin: 0;
        width: 100%; }
        .header--wrapper .mobile-search .search-bar input::placeholder {
          color: #ababab;
          font-style: italic; }
      .header--wrapper .mobile-search .search-bar button.btn {
        background: none;
        border: none;
        border-radius: none;
        height: auto;
        padding: 5px;
        position: absolute;
        right: -10px;
        top: 2px;
        -webkit-appearance: none; }
        .header--wrapper .mobile-search .search-bar button.btn .glyphicon {
          display: none; }
        .header--wrapper .mobile-search .search-bar button.btn:after {
          content: "\f002";
          display: block;
          float: right;
          font-family: "fontawesome";
          font-size: 24px;
          height: 24px;
          width: 24px;
          border: medium none;
          color: #80001A;
          margin: 0 17px 0 0; }
      .header--wrapper .mobile-search .search-bar .captcha-admin-links {
        display: none; }
    .header--wrapper .mobile-search a.button {
      color: #ffffff;
      background-image: none;
      border: none;
      border-radius: 30px;
      box-shadow: none;
      font-family: #fff;
      font-weight: 700;
      letter-spacing: 0.05em;
      line-height: 25px;
      padding: 10px 70px 10px 20px;
      text-align: center;
      text-decoration: none;
      text-shadow: none;
      text-transform: uppercase;
      display: inline-block;
      position: relative;
      -webkit-transition: all, 250ms;
      -o-transition: all, 250ms;
      transition: all, 250ms;
      background: #80001A;
      display: block;
      line-height: 42px;
      margin-top: 12px;
      padding: 0 20px; }
      .header--wrapper .mobile-search a.button a {
        position: relative; }
      .header--wrapper .mobile-search a.button a, .header--wrapper .mobile-search a.button a:visited {
        color: #ffffff;
        text-decoration: none; }
      .header--wrapper .mobile-search a.button:after {
        content: '\f105';
        font-family: "fontawesome";
        border: 2px solid #ffffff;
        border-radius: 100%;
        font-size: 30px;
        display: inline-block;
        width: 34px;
        height: 34px;
        text-align: center;
        line-height: 26px;
        padding-left: 2px;
        margin-left: 25px;
        position: absolute;
        top: 50%;
        right: 6px;
        margin-top: -17px; }
      .header--wrapper .mobile-search a.button:hover, .header--wrapper .mobile-search a.button:focus {
        border: none;
        outline: none;
        text-decoration: none; }
      .header--wrapper .mobile-search a.button.login {
        margin-right: 0; }
      .header--wrapper .mobile-search a.button:after {
        display: none; }
      .header--wrapper .mobile-search a.button:hover {
        background: #B3801A; }
    .header--wrapper .mobile-search > span {
      display: block;
      font-weight: 900;
      line-height: 1.75rem;
      margin-top: 25px;
      text-align: center; }
    .header--wrapper .mobile-search ul {
      list-style: none;
      margin-bottom: 0;
      margin-left: 0;
      padding-left: 0;
      text-align: center; }
      .header--wrapper .mobile-search ul li {
        display: inline;
        line-height: 1.75rem;
        margin: 0 25px 0 0;
        padding-left: 0; }
        .header--wrapper .mobile-search ul li a {
          text-decoration: none; }
          .header--wrapper .mobile-search ul li a:hover {
            text-decoration: underline; }
        .header--wrapper .mobile-search ul li a {
          color: #80001A; }

header.navbar {
  z-index: 1;
  max-width: 100vw;
  width: 100vw;
  display: inline-block;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  background-color: #80001A;
  border-radius: 0;
  height: 59px;
  max-width: 100% !important;
  display: none; }
  header.navbar .menu.nav {
    width: 100%;
    display: flex; }
    header.navbar .menu.nav > li {
      text-align: center;
      height: 58px;
      padding-bottom: 0;
      display: flex;
      flex-grow: 1;
      justify-content: center;
      align-items: center;
      position: relative;
      padding: 0; }
      header.navbar .menu.nav > li a {
        text-decoration: none; }
        header.navbar .menu.nav > li a:hover {
          text-decoration: underline; }
      header.navbar .menu.nav > li > a {
        color: #ffffff;
        font-size: 1.125rem;
        font-weight: 100;
        line-height: 1.45rem;
        position: static;
        height: 58px;
        line-height: 58px;
        padding: 0 24px;
        margin-top: 0px; }
        header.navbar .menu.nav > li > a .icon {
          display: inline-block;
          font-size: 10px;
          margin-left: 3px;
          vertical-align: middle;
          margin-top: -5px; }
        header.navbar .menu.nav > li > a i {
          font-size: 1.75rem; }
        header.navbar .menu.nav > li > a span {
          display: none; }
        header.navbar .menu.nav > li > a:hover, header.navbar .menu.nav > li > a:focus {
          background-color: #99001F;
          color: #ffffff;
          text-decoration: none;
          /*          &:after {
            border-style: solid;
            border-width: 0 10px 10px 10px;
            border-color: transparent transparent $gold transparent;
            bottom: 0;
            content: "";
            width: 0;
            height: 0;
            position: absolute;
            left: 50%;
            margin-left: -5px;
          }*/ }
        @media (min-width: 1280px) {
          header.navbar .menu.nav > li > a {
            font-size: 1.35rem; } }
      header.navbar .menu.nav > li.active > a, header.navbar .menu.nav > li.open > a {
        background-color: #CC9933;
        color: #001b32;
        text-decoration: none;
        height: 58px;
        line-height: 58px;
        font-weight: 700;
        padding-top: 0;
        padding-bottom: 0;
        margin-top: 0px;
        /*          &:after {
            border-style: solid;
            border-width: 0 10px 10px 10px;
            border-color: transparent transparent $gold transparent;
            bottom: 0;
            content: "";
            width: 0;
            height: 0;
            position: absolute;
            left: 50%;
            margin-left: -3px;
          }*/ }
        header.navbar .menu.nav > li.active > a:hover, header.navbar .menu.nav > li.active > a:focus, header.navbar .menu.nav > li.open > a:hover, header.navbar .menu.nav > li.open > a:focus {
          background-color: #99001F;
          color: #ffffff;
          text-decoration: none;
          font-weight: normal; }
  @media (min-width: 768px) {
    header.navbar {
      display: block; } }

.lead {
  margin-left: 15px;
  font-family: "Roboto", sans-serif;
  font-size: 18px; }

.header-title {
  font-family: "Roboto",sans-serif;
  text-align: left;
  font-size: 30px; }

ul.menu.nav {
  padding-top: 0; }

.main-menu-submenu {
  position: relative; }
  .main-menu-submenu .submenu {
    margin-top: -1px;
    background: #FFF;
    z-index: 100;
    position: absolute;
    width: 100%;
    padding: 0 20px;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.25), inset 0px 7px 0px #CC9933; }
    .main-menu-submenu .submenu ul {
      padding-left: 0;
      list-style: none; }
      .main-menu-submenu .submenu ul li a {
        font-family: "Roboto", sans-serif;
        font-style: normal;
        font-weight: 400;
        font-size: 16px;
        line-height: 19px;
        color: #00417D;
        text-decoration: none;
        padding-bottom: 15px;
        display: inline-block; }
    .main-menu-submenu .submenu > ul {
      display: flex; }
      .main-menu-submenu .submenu > ul > li {
        padding: 0 30px;
        padding-top: 41px;
        padding-bottom: 44px;
        margin-bottom: 0;
        position: relative;
        min-width: 250px; }
        .main-menu-submenu .submenu > ul > li.active:before {
          border-style: solid;
          border-width: 10px 10px 0px 10px;
          border-color: #CC9933 transparent transparent transparent;
          content: "";
          width: 0;
          height: 0;
          position: absolute;
          left: 50%;
          margin-left: -3px;
          bottom: auto;
          top: 7px; }
        .main-menu-submenu .submenu > ul > li.active > a {
          color: #80001A; }
        .main-menu-submenu .submenu > ul > li > a {
          font-weight: 700;
          font-size: 18px;
          line-height: 21px;
          color: #00417D;
          display: block;
          margin-bottom: 12px;
          padding-bottom: 12px;
          border-bottom: 1px solid rgba(0, 0, 0, 0.15); }
        .main-menu-submenu .submenu > ul > li:last-child {
          min-width: 155px; }

.cta-container.mobile {
  margin: 0 -15px; }
  .cta-container.mobile .button {
    color: #ffffff;
    background-image: none;
    border: none;
    border-radius: 30px;
    box-shadow: none;
    font-family: #fff;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 25px;
    padding: 10px 70px 10px 20px;
    text-align: center;
    text-decoration: none;
    text-shadow: none;
    text-transform: uppercase;
    display: inline-block;
    position: relative;
    -webkit-transition: all, 250ms;
    -o-transition: all, 250ms;
    transition: all, 250ms;
    display: block;
    background: #80001A;
    font-weight: 700;
    font-size: 14px;
    line-height: 16px;
    padding: 0 20px;
    height: 50px;
    line-height: 50px;
    border-radius: 0;
    margin-top: 0;
    text-transform: initial; }
    .cta-container.mobile .button a {
      position: relative; }
    .cta-container.mobile .button a, .cta-container.mobile .button a:visited {
      color: #ffffff;
      text-decoration: none; }
    .cta-container.mobile .button:after {
      content: '\f105';
      font-family: "fontawesome";
      border: 2px solid #ffffff;
      border-radius: 100%;
      font-size: 30px;
      display: inline-block;
      width: 34px;
      height: 34px;
      text-align: center;
      line-height: 26px;
      padding-left: 2px;
      margin-left: 25px;
      position: absolute;
      top: 50%;
      right: 6px;
      margin-top: -17px; }
    .cta-container.mobile .button:hover, .cta-container.mobile .button:focus {
      border: none;
      outline: none;
      text-decoration: none; }
    .cta-container.mobile .button:after {
      display: none; }
    .cta-container.mobile .button:hover {
      background: #B3801A; }

ul.utility-nav.mobile {
  background-color: #D1D3D4;
  list-style: none;
  margin-left: -15px;
  margin-right: -15px;
  margin-bottom: 0;
  padding-left: 15;
  padding-right: 15px; }
  ul.utility-nav.mobile > li.active > a {
    color: #80001A;
    background: transparent; }
    ul.utility-nav.mobile > li.active > a .glyphicon {
      color: #80001A; }
  ul.utility-nav.mobile > li > a {
    font-weight: 700;
    font-size: 24px;
    line-height: 21px;
    color: #00417D;
    display: block;
    margin-bottom: 0;
    padding-top: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
    background: transparent;
    padding-left: 0;
    text-decoration: none; }

.main-menu-nav.mobile.submenu--open > ul > li {
  display: none; }
  .main-menu-nav.mobile.submenu--open > ul > li.submenu--focus {
    display: block; }
    .main-menu-nav.mobile.submenu--open > ul > li.submenu--focus .glyphicon-chevron-left {
      display: block !important; }
    .main-menu-nav.mobile.submenu--open > ul > li.submenu--focus .glyphicon-chevron-right {
      display: none !important; }
    .main-menu-nav.mobile.submenu--open > ul > li.submenu--focus .submenu {
      display: block !important; }

.main-menu-nav.mobile ul {
  padding-left: 0;
  list-style: none; }
  .main-menu-nav.mobile ul li a {
    font-family: "Roboto", sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
    color: #00417D;
    text-decoration: none; }

.main-menu-nav.mobile > ul > li.active > a {
  color: #80001A;
  background: transparent; }
  .main-menu-nav.mobile > ul > li.active > a .glyphicon {
    color: #80001A; }

.main-menu-nav.mobile > ul > li > a {
  font-weight: 700;
  font-size: 24px;
  line-height: 21px;
  color: #00417D;
  display: block;
  margin-bottom: 0;
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  background: transparent;
  padding-left: 0; }

.main-menu-nav.mobile .glyphicon {
  position: absolute;
  right: 0;
  top: 17px; }

.main-menu-nav.mobile .submenu--focus {
  margin-left: 50px; }

.main-menu-nav.mobile .glyphicon-chevron-left {
  position: absolute;
  top: 17px;
  left: -50px; }

.main-menu-nav.mobile .submenu {
  padding-top: 20px;
  padding-bottom: 20px; }
  .main-menu-nav.mobile .submenu > ul > li > a {
    font-weight: 700;
    font-size: 24px;
    line-height: 21px;
    color: #00417D;
    display: block;
    margin-bottom: 0;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.15); }
  .main-menu-nav.mobile .submenu > ul > li > ul {
    padding-bottom: 20px;
    padding-top: 20px; }
    .main-menu-nav.mobile .submenu > ul > li > ul a {
      font-size: 20px; }

header > #navbar-collapse {
  background: #eee;
  margin-bottom: 20px; }
  @media (min-width: 768px) {
    header > #navbar-collapse {
      display: none !important; } }

.navbar-toggle .icon-bar {
  transition: 300ms ease-in-out;
  background-color: #fff;
  position: relative;
  width: 24px;
  height: 3px; }

.navbar-toggle .icon-bar:last-child {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: -7px; }

.navbar-toggle .icon-bar:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 6px; }

.navbar-toggle .icon-bar:nth-child(3) {
  opacity: 0; }

.navbar-toggle.collapsed .icon-bar {
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  top: 0;
  opacity: 1; }

.body_inner > .navbar.container {
  border: medium none; }

/*
 * Icon styles
 **/
.container {
  margin: 0 auto;
  max-width: 1280px;
  width: 100%; }

ul,
ol {
  margin-bottom: 15px;
  padding-left: 1.5rem; }
  ul li,
  ol li {
    padding-bottom: 0; }
  .page ul, .page
  ol {
    font-size: 1.125rem;
    line-height: 1.625; }

.region-content ul li,
.region-content ol li {
  padding-left: 1em; }

p + ul, p + ol {
  margin-top: -30px; }

figcaption {
  font-family: "Roboto", sans-serif;
  font-size: 1.125rem;
  line-height: 1.1; }

/*
 * Warning, error, and status messages
 **/
.messages {
  padding: 1.875rem 5.625rem 1.875rem 5.625rem;
  border: 1px solid #1e1e1e;
  border-left-width: 5px;
  margin: 15px 0;
  position: relative; }
  .messages:before {
    bottom: 0;
    content: '';
    display: block;
    height: 36px;
    left: 15px;
    margin: auto 0;
    position: absolute;
    top: 0;
    width: 36px; }
  .messages .close {
    font-size: 64px;
    font-weight: normal;
    margin-top: -15px;
    position: absolute;
    right: 10px;
    top: 30px; }

div.status,
table tr.ok {
  background-color: #ffffff;
  border-color: #6BA435; }
  div.status:before,
  table tr.ok:before {
    content: url("../images/icon-success.svg"); }

div.warning,
table tr.warning {
  background-color: #ffffff;
  border-color: #e6a968; }
  div.warning:before,
  table tr.warning:before {
    content: url("../images/icon-warning.svg"); }

div.error,
table tr.error {
  background-color: #ffffff;
  border-color: #990033; }
  div.error:before,
  table tr.error:before {
    content: url("../images/icon-error.svg"); }

li.dropdown.open .dropdown-menu-wrapper {
  width: 100%;
  max-width: 1560px;
  background-color: #E7E7E7;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 14px;
  text-align: left;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box;
  padding: 0;
  margin: 0; }
  @media (min-width: 768px) {
    li.dropdown.open .dropdown-menu-wrapper {
      width: 320px; } }
  @media (min-width: 992px) {
    li.dropdown.open .dropdown-menu-wrapper {
      width: 970px; } }
  @media (min-width: 1200px) {
    li.dropdown.open .dropdown-menu-wrapper {
      width: 1560px; } }
  li.dropdown.open .dropdown-menu-wrapper-inner {
    margin-left: -9999px;
    margin-right: -9999px;
    padding-left: 9999px;
    padding-right: 9999px;
    background-color: #E7E7E7; }

li.dropdown.open .dropdown-menu {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  display: block;
  position: relative;
  top: auto;
  left: auto;
  float: none;
  background-color: #E7E7E7;
  overflow: auto;
  padding: 0;
  border: medium none;
  box-shadow: none;
  margin: 0; }
  li.dropdown.open .dropdown-menu li {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; }
    @media (min-width: 768px) {
      li.dropdown.open .dropdown-menu li {
        float: left;
        width: 33.33333%; } }
    li.dropdown.open .dropdown-menu li a {
      color: #4D4D4D; }
      li.dropdown.open .dropdown-menu li a:active, li.dropdown.open .dropdown-menu li a:hover {
        color: #CC9933; }

.pagination > li {
  padding: 0; }
  .pagination > li > a,
  .pagination > li > span {
    background: transparent;
    border: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0);
    color: #0080B4;
    margin: 0 7.5px;
    padding: 0 0 1px; }
    .pagination > li > a:focus, .pagination > li > a:hover,
    .pagination > li > span:focus,
    .pagination > li > span:hover {
      background: transparent;
      color: #0080B4;
      border-bottom: 1px solid #0080B4; }

.pagination > .pager__item--first a {
  min-width: 1rem;
  text-indent: -9999px; }
  .pagination > .pager__item--first a:before {
    bottom: 0;
    content: "";
    font-family: fontAwesome;
    height: 16px;
    line-height: 16px;
    position: absolute;
    top: 0; }
  .pagination > .pager__item--first a:before {
    bottom: 0;
    font-size: 24px;
    left: 0;
    margin: auto;
    text-indent: 0; }

.pagination > .pager__item--last a {
  min-width: 1rem;
  text-indent: -9999px; }
  .pagination > .pager__item--last a:before {
    bottom: 0;
    content: "";
    font-family: fontAwesome;
    height: 16px;
    line-height: 16px;
    position: absolute;
    top: 0; }
  .pagination > .pager__item--last a:before {
    bottom: 0;
    font-size: 24px;
    left: 0;
    margin: auto;
    text-indent: 0; }

.pagination > .pager__item--previous a {
  min-width: 1rem;
  text-indent: -9999px; }
  .pagination > .pager__item--previous a:before {
    bottom: 0;
    content: "";
    font-family: fontAwesome;
    height: 16px;
    line-height: 16px;
    position: absolute;
    top: 0; }
  .pagination > .pager__item--previous a:before {
    bottom: 0;
    font-size: 24px;
    left: 0;
    margin: auto;
    text-indent: 0; }

.pagination > .pager__item--next a {
  min-width: 1rem;
  text-indent: -9999px; }
  .pagination > .pager__item--next a:before {
    bottom: 0;
    content: "";
    font-family: fontAwesome;
    height: 16px;
    line-height: 16px;
    position: absolute;
    top: 0; }
  .pagination > .pager__item--next a:before {
    bottom: 0;
    font-size: 24px;
    left: 0;
    margin: auto;
    text-indent: 0; }

.pagination > .active > a {
  background-color: transparent;
  border-bottom: 1px solid #333333;
  color: #333333; }
  .pagination > .active > a:hover, .pagination > .active > a:focus {
    background-color: transparent;
    border-bottom: 1px solid #333333;
    color: #333333; }

.pagination > .disabled > span {
  background: transparent;
  border-color: transparent;
  color: #333333; }
  .pagination > .disabled > span:hover, .pagination > .disabled > span:focus {
    background: transparent;
    border-color: transparent;
    color: #333333; }

.pagination > .disabled > a {
  background: transparent;
  border-color: transparent;
  color: #333333; }
  .pagination > .disabled > a:hover, .pagination > .disabled > a:focus {
    background: transparent;
    border-color: transparent;
    color: #333333; }

/**
 * General Region styles should go here.
 * Styles for separate regions should go into their own partial
 * names regions--regionNAME.scss
 **/
.form-search input[type="text"] {
  height: 50px; }

.path-search .search-help-link {
  display: block;
  padding: 10px 0;
  max-width: 80%;
  margin: 0 auto; }

.path-search h2 {
  display: none; }

.path-search .block-easy-breadcrumb {
  display: none; }

.path-search .search-form {
  background: #C4D3E1;
  margin-bottom: 3rem;
  padding: 2rem; }
  @media (min-width: 768px) {
    .path-search .search-form > div {
      max-width: 80%;
      margin: 0 auto; }
      .path-search .search-form > div > div {
        width: 100%;
        max-width: 100%; } }
  .path-search .search-form > div .form-wrapper {
    margin-bottom: 0; }
  .path-search .search-form > div input.form-search {
    border: 1px solid #c4c4c4;
    border-radius: 0;
    box-shadow: none;
    color: #333333;
    font-size: 1.125rem;
    line-height: 49px;
    height: 49px;
    padding: 0 0.9375rem; }

.path-search .input-group .form-control {
  border-radius: 0; }

.path-search .input-group-btn > .btn {
  height: 47px;
  padding-right: 0.9375rem; }
  .path-search .input-group-btn > .btn:after {
    display: none; }

.path-search .search-info {
  display: none; }

.path-search .search-advanced .button.form-submit {
  margin-top: 20px; }

html {
  font-size: .875rem; }

body {
  font-family: "Roboto", sans-serif;
  font-size: 1.125rem;
  line-height: 1.5 !important; }
  @media (min-width: 768px) {
    body {
      line-height: 1.625 !important; } }

a {
  color: #003665;
  -webkit-transition: all, 300ms;
  -o-transition: all, 300ms;
  transition: all, 300ms;
  text-decoration: underline; }
  a:hover, a:focus {
    color: #990033;
    text-decoration: underline;
    outline: none; }
  a:visited {
    color: #003665; }

h1 {
  color: #80001A;
  font-family: "Muli", Georgia;
  font-size: 42px;
  line-height: 1.2;
  margin-bottom: 15px;
  margin-top: 0; }
  @media (min-width: 768px) {
    h1 {
      font-size: 36px; } }
  h1 a, h1 a:visited, h1 a:focus, h1 a:hover {
    color: #80001A;
    text-decoration: none; }

h2 {
  color: #80001A;
  font-family: "Muli", Georgia;
  font-size: 36px;
  line-height: 1.25;
  margin-bottom: 15px;
  margin-top: 0; }
  @media (min-width: 768px) {
    h2 {
      font-size: 30px; } }
  h2 a, h2 a:visited, h2 a:focus, h2 a:hover {
    color: #80001A;
    text-decoration: none; }

h3 {
  color: #80001A;
  font-family: "Muli", Georgia;
  font-size: 30px;
  line-height: 1.25;
  margin-bottom: 1.25rem;
  margin-top: 0; }
  @media (min-width: 768px) {
    h3 {
      font-size: 24px; } }
  h3 a, h3 a:visited, h3 a:focus, h3 a:hover {
    color: #80001A;
    text-decoration: none; }

h4 {
  color: #80001A;
  font-family: "Muli", Georgia;
  font-size: 24px;
  line-height: 1.2;
  margin-bottom: 15px;
  margin-top: 0; }
  @media (min-width: 768px) {
    h4 {
      font-size: 20px; } }
  h4 a, h4 a:visited, h4 a:focus, h4 a:hover {
    color: #80001A;
    text-decoration: none; }

h5 {
  color: #80001A;
  font-family: "Roboto", sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 15px;
  margin-top: 0; }
  h5 {
    font-size: 22px; }
    @media screen and (min-width: 320px) {
      h5 {
        font-size: calc(0.36364vw + 20.83636px); } }
    @media screen and (min-width: 1420px) {
      h5 {
        font-size: 26px; } }
  @media (min-width: 768px) {
    h5 {
      font-size: 16px; } }
  h5 a, h5 a:visited, h5 a:focus, h5 a:hover {
    color: #80001A;
    text-decoration: none; }

h6 {
  color: #80001A;
  font-family: "Roboto", sans-serif;
  font-size: 18px;
  font-weight: normal;
  line-height: 1.2;
  margin-bottom: 15px;
  margin-top: 0; }
  @media (min-width: 768px) {
    h6 {
      font-size: 16px; } }
  h6 a, h6 a:visited, h6 a:focus, h6 a:hover {
    color: #80001A;
    text-decoration: none; }

h1, h2, h3 {
  font-weight: normal; }

p {
  font-family: "Roboto", sans-serif;
  font-size: 1rem;
  line-height: 1.5 !important;
  margin-bottom: 30px; }
  @media (min-width: 768px) {
    p {
      font-size: 1.125rem;
      line-height: 1.625 !important; } }

.region-content ol, .region-content ul {
  font-family: "Roboto", sans-serif;
  font-size: 1rem;
  line-height: 1.5 !important;
  padding-top: 1rem; }
  @media (min-width: 768px) {
    .region-content ol, .region-content ul {
      font-size: 1.125rem;
      line-height: 1.625 !important; } }
  .region-content ol ol, .region-content ol ul, .region-content ul ol, .region-content ul ul {
    padding-bottom: 1rem; }

blockquote {
  border-bottom: 2px solid #0080B4;
  border-left: none;
  border-top: 16px solid #0080B4;
  color: #0080B4;
  font-family: "Roboto", sans-serif;
  font-size: 1.75rem;
  font-style: italic;
  line-height: 1.5;
  margin: 15px 0 30px;
  padding: 2.8125rem 1.875rem; }
  blockquote {
    font-size: 1.75rem; }
    @media screen and (min-width: 20rem) {
      blockquote {
        font-size: calc(0.625vw + 1.625rem); } }
    @media screen and (min-width: 100rem) {
      blockquote {
        font-size: 2.25rem; } }
  blockquote p {
    line-height: 1.5; }

del {
  color: #990033; }

cite {
  display: block;
  font-size: 1.125rem;
  font-style: italic;
  margin-top: 15px;
  text-align: right; }
  cite:before {
    content: '- '; }

.page-header {
  border-bottom: none; }

.login-box {
  float: none;
  margin-right: 20px;
  line-height: 2em;
  text-align: center;
  padding: 11px 10px;
  font-size: 14px; }
  @media (min-width: 768px) {
    .login-box {
      float: right; } }
  .login-box a {
    border-left: 1px solid #ababab;
    margin-left: 15px;
    padding-left: 15px; }

.button.login {
  margin-right: 20px; }

.neasc-facet-group {
  display: inline-block;
  width: auto;
  vertical-align: middle; }

.facets-widget-dropdown .block-facet--dropdown {
  display: inline-flex; }

.field--name-field-cta-button {
  overflow: hidden;
  text-align: center; }
  .field--name-field-cta-button a {
    color: #ffffff;
    background-image: none;
    border: none;
    border-radius: 30px;
    box-shadow: none;
    font-family: #fff;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 25px;
    padding: 10px 70px 10px 20px;
    text-align: center;
    text-decoration: none;
    text-shadow: none;
    text-transform: uppercase;
    display: inline-block;
    position: relative;
    -webkit-transition: all, 250ms;
    -o-transition: all, 250ms;
    transition: all, 250ms;
    background-color: #80001A;
    color: #ffffff; }
    .field--name-field-cta-button a a {
      position: relative; }
    .field--name-field-cta-button a a, .field--name-field-cta-button a a:visited {
      color: #ffffff;
      text-decoration: none; }
    .field--name-field-cta-button a:after {
      content: '\f105';
      font-family: "fontawesome";
      border: 2px solid #ffffff;
      border-radius: 100%;
      font-size: 30px;
      display: inline-block;
      width: 34px;
      height: 34px;
      text-align: center;
      line-height: 26px;
      padding-left: 2px;
      margin-left: 25px;
      position: absolute;
      top: 50%;
      right: 6px;
      margin-top: -17px; }
    .field--name-field-cta-button a:hover, .field--name-field-cta-button a:focus {
      border: none;
      outline: none;
      text-decoration: none; }
    .field--name-field-cta-button a:hover, .field--name-field-cta-button a:focus,
    .field--name-field-cta-button a:hover a,
    .field--name-field-cta-button a:focus a,
    .field--name-field-cta-button a:hover a:visited,
    .field--name-field-cta-button a:focus a:visited {
      background-color: #CC9933;
      color: #ffffff; }

.field-name-probation-warning {
  margin-top: 20px; }

.view-mode-right_sidebar > .group-left {
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px; }
  @media (min-width: 600px) {
    .view-mode-right_sidebar > .group-left {
      position: relative;
      float: left;
      width: 50%;
      min-height: 1px;
      padding-left: 15px;
      padding-right: 15px; } }
  @media (min-width: 768px) {
    .view-mode-right_sidebar > .group-left {
      float: left;
      width: 66.66667%; } }

.view-mode-right_sidebar > .group-right {
  position: relative;
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px; }
  @media (min-width: 600px) {
    .view-mode-right_sidebar > .group-right {
      position: relative;
      float: left;
      width: 50%;
      min-height: 1px;
      padding-left: 15px;
      padding-right: 15px; } }
  @media (min-width: 768px) {
    .view-mode-right_sidebar > .group-right {
      float: left;
      width: 33.33333%; } }

.view-mode-right_sidebar .group-footer {
  clear: both; }

.field-name-field-right-paragraphs .field-name-field-title {
  font-size: 1.75rem; }

.field-name-field-right-paragraphs h2.block-title {
  color: #4D4D4D; }

.field-name-field-right-paragraphs .block-menu-block {
  margin-left: -26px; }
  .field-name-field-right-paragraphs .block-menu-block .menu-block-wrapper {
    border-left: 7px solid #CC9933; }
    .field-name-field-right-paragraphs .block-menu-block .menu-block-wrapper ul.menu.nav li {
      padding-left: 0;
      position: relative; }
      .field-name-field-right-paragraphs .block-menu-block .menu-block-wrapper ul.menu.nav li a {
        color: #003665;
        font-size: 1.286rem;
        padding: 5px 15px 5px 20px; }
        .field-name-field-right-paragraphs .block-menu-block .menu-block-wrapper ul.menu.nav li a:hover, .field-name-field-right-paragraphs .block-menu-block .menu-block-wrapper ul.menu.nav li a.active-trail {
          background: none;
          font-weight: 900; }
          .field-name-field-right-paragraphs .block-menu-block .menu-block-wrapper ul.menu.nav li a:hover:before, .field-name-field-right-paragraphs .block-menu-block .menu-block-wrapper ul.menu.nav li a.active-trail:before {
            border-style: solid;
            border-width: 10px 0 10px 10px;
            border-color: transparent transparent transparent #CC9933;
            content: "";
            width: 0;
            height: 0;
            position: absolute;
            left: 4px;
            margin-left: -5px;
            top: 14px; }

.region-uber {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end; }
  .region-uber .menu.nav {
    float: right; }
    .region-uber .menu.nav li {
      float: left; }
      .region-uber .menu.nav li.dropdown a {
        color: #4D4D4D;
        text-transform: uppercase; }
        .region-uber .menu.nav li.dropdown a .caret {
          display: none; }
        .region-uber .menu.nav li.dropdown a:after {
          content: '\f078';
          font-family: "fontawesome";
          margin-left: 5px; }
      .region-uber .menu.nav li a {
        color: #4D4D4D;
        text-transform: uppercase; }
        .region-uber .menu.nav li a:focus, .region-uber .menu.nav li a:active, .region-uber .menu.nav li a:visited {
          color: #4D4D4D; }
  .region-uber > section {
    flex-grow: 1; }
    .region-uber > section.block-search {
      flex-grow: 0;
      max-width: 300px; }
      .region-uber > section.block-search .captcha-admin-links {
        display: none; }
      .region-uber > section.block-search .btn {
        color: #4D4D4D;
        background-color: transparent;
        padding: 0;
        width: 50px; }
      .region-uber > section.block-search input {
        padding: 5px 10px;
        height: auto;
        border-radius: 0;
        border-color: #4D4D4D;
        display: none; }
      .region-uber > section.block-search .input-group-btn {
        width: auto; }
      .region-uber > section.block-search .form-actions {
        display: none; }

/*
 * Front Page
 **/
.institution-node-footer {
  padding-top: 15px; }

.news-updates .field.field--title h1 {
  padding-bottom: 3px;
  margin-bottom: 0; }

.news-updates .field.field--name-field-author-commission-name, .news-updates .field.field--name-field-announcement-type {
  display: inline-block;
  line-height: 1.5rem; }

.news-updates .field.field--name-field-author-commission-name .field-items {
  display: inline-block; }

.news-updates .field.field--name-field-author-commission-name:after {
  content: ",";
  display: inline-block;
  padding-right: 6px; }

.news-updates .field.field--name-field-image img {
  margin: 2rem 0 0; }

.news-updates .field.field--name-body {
  margin-top: 2rem; }

.news-updates #prevnext-previous {
  float: left; }

.news-updates #prevnext-next {
  float: right; }

.paragraph--type--accordion .field--name-field-accordion-tabs {
  margin-bottom: 2.25rem; }
  .paragraph--type--accordion .field--name-field-accordion-tabs > .field--item {
    padding-bottom: 0;
    padding-top: 1rem;
    position: relative; }
    .paragraph--type--accordion .field--name-field-accordion-tabs > .field--item h4.accordion-tab-title {
      border-bottom: dotted 2px #333333;
      padding: 5px 0;
      margin-bottom: 0;
      min-height: 52px; }
      .paragraph--type--accordion .field--name-field-accordion-tabs > .field--item h4.accordion-tab-title .field--name-field-title {
        font-size: 1.5rem;
        text-align: left;
        margin-right: 50px; }
      .paragraph--type--accordion .field--name-field-accordion-tabs > .field--item h4.accordion-tab-title:after {
        color: #333333;
        content: "\f067";
        display: block;
        font-family: "fontawesome";
        font-size: 1.5rem;
        position: absolute;
        right: 20px;
        top: 20px; }
      .paragraph--type--accordion .field--name-field-accordion-tabs > .field--item h4.accordion-tab-title.active:after {
        content: "\f068"; }
    .paragraph--type--accordion .field--name-field-accordion-tabs > .field--item .field--name-field-accordion-tiles .field--name-field-title {
      font-size: 1.5rem;
      padding-top: 0; }
    .paragraph--type--accordion .field--name-field-accordion-tabs > .field--item .field--name-field-accordion-tiles .group-left {
      max-width: 125px;
      padding-right: 0; }
      .paragraph--type--accordion .field--name-field-accordion-tabs > .field--item .field--name-field-accordion-tiles .group-left .field--name-field-image {
        margin-right: 0; }
    .paragraph--type--accordion .field--name-field-accordion-tabs > .field--item .field--name-field-accordion-tiles .group-right {
      width: calc(100% - 125px); }

.paragraph--type--accordion {
  margin-bottom: 15px; }
  .paragraph--type--accordion .accordion-body {
    border-bottom: dotted 2px #333333;
    display: none;
    padding: 15px 0; }
    .paragraph--type--accordion .accordion-body .field--name-field-description {
      margin-bottom: 15px; }
      .paragraph--type--accordion .accordion-body .field--name-field-description .field--item p:last-child {
        margin-bottom: 0; }
    .paragraph--type--accordion .accordion-body:last-of-type {
      border-bottom: none; }
  .paragraph--type--accordion .field--name-field-accordion-tiles {
    display: flex;
    flex-wrap: wrap; }
    .paragraph--type--accordion .field--name-field-accordion-tiles > .field--item {
      flex: 0 0 100%;
      padding: 0; }
      @media (min-width: 768px) {
        .paragraph--type--accordion .field--name-field-accordion-tiles > .field--item {
          flex: 0 0 50%; } }
      .paragraph--type--accordion .field--name-field-accordion-tiles > .field--item .group-right {
        float: none; }

div.paragraph--type--download {
  padding: 20px;
  text-align: center; }
  div.paragraph--type--download .field--name-field-title {
    color: #80001A;
    font-family: "Muli", Georgia;
    font-size: 24px;
    line-height: 1.2;
    margin-bottom: 15px;
    margin-top: 0;
    color: #272626;
    font-size: 1.5rem;
    text-align: left; }
    @media (min-width: 768px) {
      div.paragraph--type--download .field--name-field-title {
        font-size: 20px; } }
    div.paragraph--type--download .field--name-field-title a, div.paragraph--type--download .field--name-field-title a:visited, div.paragraph--type--download .field--name-field-title a:focus, div.paragraph--type--download .field--name-field-title a:hover {
      color: #80001A;
      text-decoration: none; }
  div.paragraph--type--download .field--name-field-file-upload a {
    color: #ffffff;
    background-image: none;
    border: none;
    border-radius: 30px;
    box-shadow: none;
    font-family: #fff;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 25px;
    padding: 10px 70px 10px 20px;
    text-align: center;
    text-decoration: none;
    text-shadow: none;
    text-transform: uppercase;
    display: inline-block;
    position: relative;
    -webkit-transition: all, 250ms;
    -o-transition: all, 250ms;
    transition: all, 250ms;
    background-color: #80001A;
    color: #ffffff;
    margin-bottom: 1rem;
    padding-right: 100px;
    text-transform: none; }
    div.paragraph--type--download .field--name-field-file-upload a a {
      position: relative; }
    div.paragraph--type--download .field--name-field-file-upload a a, div.paragraph--type--download .field--name-field-file-upload a a:visited {
      color: #ffffff;
      text-decoration: none; }
    div.paragraph--type--download .field--name-field-file-upload a:after {
      content: '\f105';
      font-family: "fontawesome";
      border: 2px solid #ffffff;
      border-radius: 100%;
      font-size: 30px;
      display: inline-block;
      width: 34px;
      height: 34px;
      text-align: center;
      line-height: 26px;
      padding-left: 2px;
      margin-left: 25px;
      position: absolute;
      top: 50%;
      right: 6px;
      margin-top: -17px; }
    div.paragraph--type--download .field--name-field-file-upload a:hover, div.paragraph--type--download .field--name-field-file-upload a:focus {
      border: none;
      outline: none;
      text-decoration: none; }
    div.paragraph--type--download .field--name-field-file-upload a:hover, div.paragraph--type--download .field--name-field-file-upload a:focus,
    div.paragraph--type--download .field--name-field-file-upload a:hover a,
    div.paragraph--type--download .field--name-field-file-upload a:focus a,
    div.paragraph--type--download .field--name-field-file-upload a:hover a:visited,
    div.paragraph--type--download .field--name-field-file-upload a:focus a:visited {
      background-color: #CC9933;
      color: #ffffff; }
    div.paragraph--type--download .field--name-field-file-upload a[type*="application/pdf"]:after {
      border: none;
      content: '\f1c1';
      font-size: 24px;
      line-height: 34px;
      right: 6px; }
  div.paragraph--type--download span.file-icon,
  div.paragraph--type--download span.file-size {
    display: none; }
  div.paragraph--type--download .file-link {
    border: medium none;
    display: block; }

.paragraph--type--dynamic-menu .menu.nav .navigation__toggle::before, .paragraph--type--dynamic-menu .menu.nav .navigation__toggle--closed::after {
  background: #80001A;
  content: '';
  display: block;
  height: 2px;
  position: absolute;
  width: 10px; }

.paragraph--type--dynamic-menu {
  border-left: 1px solid #E7E7E7;
  margin-left: -5px;
  padding-left: 5px; }
  .paragraph--type--dynamic-menu .menu.nav .glyphicon {
    margin-left: 10px;
    color: #80001A;
    font-size: 14px;
    cursor: pointer; }
  .paragraph--type--dynamic-menu .menu.nav .navigation__toggle {
    display: inline-block;
    height: 20px;
    margin-left: 7px;
    position: relative;
    top: 7px;
    width: 20px; }
    .paragraph--type--dynamic-menu .menu.nav .navigation__toggle::before {
      top: 5px;
      right: 50%; }
    .paragraph--type--dynamic-menu .menu.nav .navigation__toggle--closed::after {
      top: 5px;
      right: 50%;
      transform: rotate(90deg); }
  .paragraph--type--dynamic-menu .main-menu-nav > .menu.nav > li > a {
    font-style: normal;
    font-weight: 500;
    font-size: 16px;
    line-height: 19px;
    color: #00417D;
    text-decoration: none;
    display: inline-block;
    padding-right: 20px;
    position: relative; }
    .paragraph--type--dynamic-menu .main-menu-nav > .menu.nav > li > a:hover {
      background: transparent;
      text-decoration: underline #80001A; }
  .paragraph--type--dynamic-menu .main-menu-nav > .menu.nav > li ul {
    padding-left: 23px;
    list-style: none;
    padding-bottom: 0;
    padding-top: 0;
    display: none; }
    .paragraph--type--dynamic-menu .main-menu-nav > .menu.nav > li ul.level-2 {
      padding-left: 40px; }
    .paragraph--type--dynamic-menu .main-menu-nav > .menu.nav > li ul a {
      font-weight: 400;
      font-size: 16px;
      line-height: 19px;
      color: #00417D;
      text-decoration: none;
      padding-left: 0;
      display: inline-block;
      padding-right: 0; }
      .paragraph--type--dynamic-menu .main-menu-nav > .menu.nav > li ul a:hover {
        background: transparent;
        text-decoration: underline #80001A; }
    .paragraph--type--dynamic-menu .main-menu-nav > .menu.nav > li ul.open {
      display: block; }
  .paragraph--type--dynamic-menu .main-menu-nav > .menu.nav > li.active > a {
    font-weight: 700; }
  .paragraph--type--dynamic-menu .main-menu-nav > .menu.nav > li.active:before {
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #CC9933;
    bottom: 0;
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    left: -5px;
    top: 10px; }
  .paragraph--type--dynamic-menu .main-menu-nav > .menu.nav > li li.active > a {
    font-weight: 700; }
  .paragraph--type--dynamic-menu .main-menu-nav .dropdown ul {
    display: none; }

.paragraph--type--hero {
  margin-top: -2.25rem; }
  .paragraph--type--hero .hero {
    max-width: 100vw;
    width: 100vw;
    display: inline-block;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    background-color: #4D4D4D; }
    .paragraph--type--hero .hero img {
      width: 100%; }
    .paragraph--type--hero .hero--headline {
      max-width: 1280px;
      margin-left: auto;
      margin-right: auto;
      width: 100%;
      padding-bottom: 15px;
      padding-top: 15px; }
      @media (min-width: 768px) {
        .paragraph--type--hero .hero--headline {
          display: flex; } }
      .paragraph--type--hero .hero--headline--left {
        color: #ffffff;
        font-size: 1.285rem; }
        .paragraph--type--hero .hero--headline--left h2 {
          margin-bottom: 0; }
          .paragraph--type--hero .hero--headline--left h2 .field--name-field-title {
            color: #ffffff;
            margin-bottom: 0;
            line-height: 3rem;
            font-weight: "screen and (min-width: 768px)";
            font-family: "Roboto", sans-serif;
            text-align: left;
            font-size: 24px; }
            @media (min-width: 768px) {
              .paragraph--type--hero .hero--headline--left h2 .field--name-field-title {
                font-size: 30px; } }
            .paragraph--type--hero .hero--headline--left h2 .field--name-field-title .field--item {
              text-align: left; }
              @media (min-width: 768px) {
                .paragraph--type--hero .hero--headline--left h2 .field--name-field-title .field--item {
                  text-align: left; } }
        .paragraph--type--hero .hero--headline--left .field--name-field-description {
          margin-top: 5px; }
      @media (min-width: 768px) {
        .paragraph--type--hero .hero--headline--right {
          display: flex;
          align-items: center;
          flex: 0 2 30%; } }
      .paragraph--type--hero .hero--headline--right .field--name-field-link {
        text-align: center; }
        @media (min-width: 768px) {
          .paragraph--type--hero .hero--headline--right .field--name-field-link {
            text-align: right;
            width: 100%; } }
      .paragraph--type--hero .hero--headline--right a {
        color: #ffffff;
        background-image: none;
        border: none;
        border-radius: 30px;
        box-shadow: none;
        font-family: #fff;
        font-weight: 700;
        letter-spacing: 0.05em;
        line-height: 25px;
        padding: 10px 70px 10px 20px;
        text-align: center;
        text-decoration: none;
        text-shadow: none;
        text-transform: uppercase;
        display: inline-block;
        position: relative;
        -webkit-transition: all, 250ms;
        -o-transition: all, 250ms;
        transition: all, 250ms;
        background-color: #80001A;
        color: #ffffff;
        margin-top: 1.3rem;
        padding-left: 20px;
        padding-right: 5rem;
        white-space: nowrap; }
        .paragraph--type--hero .hero--headline--right a a {
          position: relative; }
        .paragraph--type--hero .hero--headline--right a a, .paragraph--type--hero .hero--headline--right a a:visited {
          color: #ffffff;
          text-decoration: none; }
        .paragraph--type--hero .hero--headline--right a:after {
          content: '\f105';
          font-family: "fontawesome";
          border: 2px solid #ffffff;
          border-radius: 100%;
          font-size: 30px;
          display: inline-block;
          width: 34px;
          height: 34px;
          text-align: center;
          line-height: 26px;
          padding-left: 2px;
          margin-left: 25px;
          position: absolute;
          top: 50%;
          right: 6px;
          margin-top: -17px; }
        .paragraph--type--hero .hero--headline--right a:hover, .paragraph--type--hero .hero--headline--right a:focus {
          border: none;
          outline: none;
          text-decoration: none; }
        .paragraph--type--hero .hero--headline--right a:hover, .paragraph--type--hero .hero--headline--right a:focus,
        .paragraph--type--hero .hero--headline--right a:hover a,
        .paragraph--type--hero .hero--headline--right a:focus a,
        .paragraph--type--hero .hero--headline--right a:hover a:visited,
        .paragraph--type--hero .hero--headline--right a:focus a:visited {
          background-color: #CC9933;
          color: #ffffff; }
        @media (min-width: 768px) {
          .paragraph--type--hero .hero--headline--right a {
            margin-top: 0; } }

.paragraph--type--image-left-text-right {
  overflow: auto;
  padding-bottom: 15px; }
  .paragraph--type--image-left-text-right .field--name-field-image {
    float: left;
    max-width: 300px;
    overflow: hidden;
    margin-right: 15px;
    width: 100%; }
  .paragraph--type--image-left-text-right .field--name-field-title {
    color: #80001A;
    font-family: "Muli", Georgia;
    font-size: 36px;
    line-height: 1.25;
    margin-bottom: 15px;
    margin-top: 0;
    margin-bottom: 5px; }
    @media (min-width: 768px) {
      .paragraph--type--image-left-text-right .field--name-field-title {
        font-size: 30px; } }
    .paragraph--type--image-left-text-right .field--name-field-title a, .paragraph--type--image-left-text-right .field--name-field-title a:visited, .paragraph--type--image-left-text-right .field--name-field-title a:focus, .paragraph--type--image-left-text-right .field--name-field-title a:hover {
      color: #80001A;
      text-decoration: none; }
  .paragraph--type--image-left-text-right .field--name-field-description {
    margin-bottom: 5px; }
  .paragraph--type--image-left-text-right .group-left {
    float: left;
    width: 100%;
    max-width: 100%;
    padding-right: 15px; }
    @media (min-width: 768px) {
      .paragraph--type--image-left-text-right .group-left {
        max-width: 150px; } }
    @media (min-width: 992px) {
      .paragraph--type--image-left-text-right .group-left {
        max-width: 250px; } }
    .paragraph--type--image-left-text-right .group-left .field--name-field-image {
      margin-right: 0; }
  .paragraph--type--image-left-text-right .group-right {
    float: right;
    width: 100%; }
    @media (min-width: 768px) {
      .paragraph--type--image-left-text-right .group-right {
        width: calc(100% - 150px); } }
    @media (min-width: 992px) {
      .paragraph--type--image-left-text-right .group-right {
        width: calc(100% - 250px); } }

.paragraph--type--link-block {
  background: #C4D3E1;
  margin-top: 1rem;
  padding: 20px;
  position: relative; }
  .paragraph--type--link-block field--name-field-title {
    color: #80001A;
    font-family: "Muli", Georgia;
    font-size: 24px;
    line-height: 1.2;
    margin-bottom: 15px;
    margin-top: 0;
    color: #272626;
    font-size: 1.5rem; }
    @media (min-width: 768px) {
      .paragraph--type--link-block field--name-field-title {
        font-size: 20px; } }
    .paragraph--type--link-block field--name-field-title a, .paragraph--type--link-block field--name-field-title a:visited, .paragraph--type--link-block field--name-field-title a:focus, .paragraph--type--link-block field--name-field-title a:hover {
      color: #80001A;
      text-decoration: none; }
  .paragraph--type--link-block .field--item {
    margin-bottom: 10px; }

.paragraph--type--tile-group {
  clear: both;
  overflow: hidden; }
  .paragraph--type--tile-group > .field.field--name-field-title {
    color: #80001A;
    font-family: "Muli", Georgia;
    font-size: 36px;
    line-height: 1.25;
    margin-bottom: 15px;
    margin-top: 0;
    text-align: center; }
    @media (min-width: 768px) {
      .paragraph--type--tile-group > .field.field--name-field-title {
        font-size: 30px; } }
    .paragraph--type--tile-group > .field.field--name-field-title a, .paragraph--type--tile-group > .field.field--name-field-title a:visited, .paragraph--type--tile-group > .field.field--name-field-title a:focus, .paragraph--type--tile-group > .field.field--name-field-title a:hover {
      color: #80001A;
      text-decoration: none; }
  .paragraph--type--tile-group > .field--name-field-tiles {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px; }
    .paragraph--type--tile-group > .field--name-field-tiles > .field--item {
      flex: 0 0 100%;
      flex-grow: 0;
      flex-basis: calc(100% - 30px);
      display: block;
      padding: 0 15px;
      box-sizing: content-box; }
  @media (min-width: 600px) {
    .paragraph--type--tile-group.column-count-4 > .field--name-field-tiles > .field--item {
      flex: 1 1 calc(50% - 30px); } }
  @media (min-width: 1280px) {
    .paragraph--type--tile-group.column-count-4 > .field--name-field-tiles > .field--item {
      flex: 1 1 calc(25% - 30px); } }
  @media (min-width: 600px) {
    .paragraph--type--tile-group.column-count-3 > .field--name-field-tiles > .field--item {
      flex: 1 1 calc(50% - 30px); } }
  @media (min-width: 992px) {
    .paragraph--type--tile-group.column-count-3 > .field--name-field-tiles > .field--item {
      flex: 1 1 calc(33.333% - 30px); } }
  @media (min-width: 768px) {
    .paragraph--type--tile-group.column-count-2 > .field--name-field-tiles > .field--item {
      flex: 1 1 calc(50% - 30px);
      padding: 0 15px; }
      .paragraph--type--tile-group.column-count-2 > .field--name-field-tiles > .field--item .paragraphs-item-view-block {
        width: 100%; } }
  .paragraph--type--tile-group.column-count-1 > .field--name-field-tiles > .field--item {
    flex: 0 0 100%;
    flex-grow: 0;
    flex-basis: calc(50% - 30px); }

.paragraph--type--tile {
  background: #E7E7E7;
  margin-bottom: 2rem;
  padding: 25px 40px;
  -ms-flex: 1;
  width: 100%; }
  .paragraph--type--tile > .content {
    display: flex;
    flex-direction: column; }
    .paragraph--type--tile > .content > div:nth-last-of-type(2) {
      flex-grow: 1; }
  .paragraph--type--tile .field {
    margin-bottom: 15px;
    flex: 0;
    -ms-flex: auto; }
  .paragraph--type--tile .field-name-field-title {
    color: #80001A;
    font-family: "Muli", Georgia;
    font-size: 30px;
    line-height: 1.25;
    margin-bottom: 1.25rem;
    margin-top: 0;
    text-align: center; }
    @media (min-width: 768px) {
      .paragraph--type--tile .field-name-field-title {
        font-size: 24px; } }
    .paragraph--type--tile .field-name-field-title a, .paragraph--type--tile .field-name-field-title a:visited, .paragraph--type--tile .field-name-field-title a:focus, .paragraph--type--tile .field-name-field-title a:hover {
      color: #80001A;
      text-decoration: none; }
  .paragraph--type--tile .field--name-field-link .field--item {
    padding-bottom: .75rem; }
  .paragraph--type--tile .field-name-field-cta-button {
    flex: none;
    text-align: center;
    position: relative;
    margin: 15px 0 0 0; }

.entity-paragraphs-item.paragraphs-item-tile-group .paragraphs-items.paragraphs-items-field-tiles .entity-paragraphs-item.paragraphs-item-tile .field-name-field-title {
  padding-top: 0; }

.updates {
  max-width: 100vw;
  width: 100vw;
  display: inline-block;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  background: #C4D3E1;
  padding-bottom: 3rem;
  padding-top: 2rem; }
  .updates--wrapper {
    max-width: 75%; }
  .updates h2 {
    text-align: center; }
  .updates--content {
    padding-bottom: 3rem;
    text-align: center; }
    .updates--content .field--items {
      display: flex;
      flex-wrap: wrap; }
      .updates--content .field--items .field--item {
        margin-top: .75rem;
        width: 100%; }
  .updates--cta .field--name-field-cta-button {
    margin-bottom: 0;
    text-align: center; }
    .updates--cta .field--name-field-cta-button a {
      float: none; }

.paragraphs-item-view-block .field-name-field-cta-button a {
  margin-top: 1.875rem; }

.field--type-paragraph > .field--item {
  padding: 2.25rem 0; }
  .field--type-paragraph > .field--item .block-easy-breadcrumb {
    margin-top: 0;
    margin-bottom: -2rem; }

.paragraph .field--name-field-title {
  color: #80001A;
  font-family: "Muli", Georgia;
  font-size: 36px;
  line-height: 1.25;
  margin-bottom: 15px;
  margin-top: 0;
  text-align: left; }
  @media (min-width: 768px) {
    .paragraph .field--name-field-title {
      font-size: 30px; } }
  .paragraph .field--name-field-title a, .paragraph .field--name-field-title a:visited, .paragraph .field--name-field-title a:focus, .paragraph .field--name-field-title a:hover {
    color: #80001A;
    text-decoration: none; }

.paragraph .field--name-field-tiles .paragraph .field--name-field-title {
  color: #80001A;
  font-family: "Muli", Georgia;
  font-size: 30px;
  line-height: 1.25;
  margin-bottom: 1.25rem;
  margin-top: 0;
  text-align: left; }
  @media (min-width: 768px) {
    .paragraph .field--name-field-tiles .paragraph .field--name-field-title {
      font-size: 24px; } }
  .paragraph .field--name-field-tiles .paragraph .field--name-field-title a, .paragraph .field--name-field-tiles .paragraph .field--name-field-title a:visited, .paragraph .field--name-field-tiles .paragraph .field--name-field-title a:focus, .paragraph .field--name-field-tiles .paragraph .field--name-field-title a:hover {
    color: #80001A;
    text-decoration: none; }

.field-name-field-description p:last-child {
  margin-bottom: 0; }

.field--name-field-right-paragraphs > .field--item {
  padding: 26px; }
  .field--name-field-right-paragraphs > .field--item .field--name-field-title {
    color: #272626;
    font-size: 1.5rem;
    text-align: left; }

.paragraphs-item-view-block h2.view-block-title {
  text-align: center; }

.view-news-events:not(.view-school-directory) .view-filters, .view-member-stories:not(.view-school-directory) .view-filters {
  text-align: right; }
  .view-news-events:not(.view-school-directory) .view-filters .views-exposed-widget, .view-member-stories:not(.view-school-directory) .view-filters .views-exposed-widget {
    padding-left: 3rem;
    padding-right: 0; }
    .view-news-events:not(.view-school-directory) .view-filters .views-exposed-widget.views-submit-button, .view-member-stories:not(.view-school-directory) .view-filters .views-exposed-widget.views-submit-button {
      padding-left: 0; }
    .view-news-events:not(.view-school-directory) .view-filters .views-exposed-widget label, .view-news-events:not(.view-school-directory) .view-filters .views-exposed-widget fieldset.panel legend.panel-heading span, fieldset.panel legend.panel-heading .view-news-events:not(.view-school-directory) .view-filters .views-exposed-widget span, .view-news-events:not(.view-school-directory) .view-filters .views-exposed-widget .views-widget, .view-member-stories:not(.view-school-directory) .view-filters .views-exposed-widget label, .view-member-stories:not(.view-school-directory) .view-filters .views-exposed-widget fieldset.panel legend.panel-heading span, fieldset.panel legend.panel-heading .view-member-stories:not(.view-school-directory) .view-filters .views-exposed-widget span, .view-member-stories:not(.view-school-directory) .view-filters .views-exposed-widget .views-widget {
      float: left; }
    .view-news-events:not(.view-school-directory) .view-filters .views-exposed-widget label, .view-news-events:not(.view-school-directory) .view-filters .views-exposed-widget fieldset.panel legend.panel-heading span, fieldset.panel legend.panel-heading .view-news-events:not(.view-school-directory) .view-filters .views-exposed-widget span, .view-member-stories:not(.view-school-directory) .view-filters .views-exposed-widget label, .view-member-stories:not(.view-school-directory) .view-filters .views-exposed-widget fieldset.panel legend.panel-heading span, fieldset.panel legend.panel-heading .view-member-stories:not(.view-school-directory) .view-filters .views-exposed-widget span {
      line-height: 3rem;
      margin-right: 1rem; }
  .view-news-events:not(.view-school-directory) .view-filters legend, .view-member-stories:not(.view-school-directory) .view-filters legend {
    display: none; }
  .view-news-events:not(.view-school-directory) .view-filters .form-item, .view-member-stories:not(.view-school-directory) .view-filters .form-item {
    float: none;
    margin-bottom: .5em;
    max-width: none;
    width: auto; }
  .view-news-events:not(.view-school-directory) .view-filters .form-actions, .view-member-stories:not(.view-school-directory) .view-filters .form-actions {
    position: absolute; }

.view-news-events.view-display-id-news_feat .featured, .view-member-stories.view-display-id-news_feat .featured {
  background: #E7E7E7;
  clear: both;
  overflow: hidden; }
  @media (min-width: 992px) {
    .view-news-events.view-display-id-news_feat .featured, .view-member-stories.view-display-id-news_feat .featured {
      display: flex; } }
  .view-news-events.view-display-id-news_feat .featured .col-sm-12:first-of-type, .view-member-stories.view-display-id-news_feat .featured .col-sm-12:first-of-type {
    padding: 0; }
  .view-news-events.view-display-id-news_feat .featured .col-sm-12 img, .view-member-stories.view-display-id-news_feat .featured .col-sm-12 img {
    height: auto;
    width: 100%; }
  .view-news-events.view-display-id-news_feat .featured .col-sm-12.content, .view-member-stories.view-display-id-news_feat .featured .col-sm-12.content {
    align-items: center;
    display: flex;
    justify-content: center;
    padding: 1rem; }
    .view-news-events.view-display-id-news_feat .featured .col-sm-12.content .inner, .view-member-stories.view-display-id-news_feat .featured .col-sm-12.content .inner {
      width: 100%; }
  .view-news-events.view-display-id-news_feat .featured .col-sm-12 .meta, .view-member-stories.view-display-id-news_feat .featured .col-sm-12 .meta {
    font-style: italic; }
  .view-news-events.view-display-id-news_feat .featured h3 a, .view-member-stories.view-display-id-news_feat .featured h3 a {
    color: #80001A;
    text-decoration: none; }
  .view-news-events.view-display-id-news_feat .featured .btn, .view-member-stories.view-display-id-news_feat .featured .btn {
    float: right; }

.view-news-events .view-content, .view-member-stories .view-content {
  clear: both;
  margin-left: 0;
  margin-right: 0;
  padding: 0; }
  .view-news-events .view-content .views-row.listing, .view-member-stories .view-content .views-row.listing {
    margin-bottom: 2rem;
    position: relative;
    padding: 2rem 0; }
    .view-news-events .view-content .views-row.listing:after, .view-member-stories .view-content .views-row.listing:after {
      bottom: 0;
      border-top: 1px dotted #4D4D4D;
      content: "";
      display: block;
      position: absolute;
      width: 100%; }
    .view-news-events .view-content .views-row.listing:first-of-type, .view-member-stories .view-content .views-row.listing:first-of-type {
      padding-top: 0; }
    .view-news-events .view-content .views-row.listing .field--name-field-address, .view-member-stories .view-content .views-row.listing .field--name-field-address {
      color: #80001A;
      font-family: "Roboto", sans-serif;
      font-size: 18px;
      font-weight: normal;
      line-height: 1.2;
      margin-bottom: 15px;
      margin-top: 0; }
      @media (min-width: 768px) {
        .view-news-events .view-content .views-row.listing .field--name-field-address, .view-member-stories .view-content .views-row.listing .field--name-field-address {
          font-size: 16px; } }
      .view-news-events .view-content .views-row.listing .field--name-field-address a, .view-news-events .view-content .views-row.listing .field--name-field-address a:visited, .view-news-events .view-content .views-row.listing .field--name-field-address a:focus, .view-news-events .view-content .views-row.listing .field--name-field-address a:hover, .view-member-stories .view-content .views-row.listing .field--name-field-address a, .view-member-stories .view-content .views-row.listing .field--name-field-address a:visited, .view-member-stories .view-content .views-row.listing .field--name-field-address a:focus, .view-member-stories .view-content .views-row.listing .field--name-field-address a:hover {
        color: #80001A;
        text-decoration: none; }
    .view-news-events .view-content .views-row.listing .inner, .view-member-stories .view-content .views-row.listing .inner {
      overflow: hidden; }
    .view-news-events .view-content .views-row.listing .thumbnail, .view-member-stories .view-content .views-row.listing .thumbnail {
      border: none;
      float: left;
      padding: 0; }
      .view-news-events .view-content .views-row.listing .thumbnail img, .view-member-stories .view-content .views-row.listing .thumbnail img {
        border-radius: 100px;
        margin: 0 2rem 0 0; }
    .view-news-events .view-content .views-row.listing .meta, .view-member-stories .view-content .views-row.listing .meta {
      font-style: italic; }
    .view-news-events .view-content .views-row.listing .btn, .view-news-events .view-content .views-row.listing .readmore-extrafield, .view-member-stories .view-content .views-row.listing .btn, .view-member-stories .view-content .views-row.listing .readmore-extrafield {
      color: #ffffff;
      background-image: none;
      border: none;
      border-radius: 30px;
      box-shadow: none;
      font-family: #fff;
      font-weight: 700;
      letter-spacing: 0.05em;
      line-height: 25px;
      padding: 10px 70px 10px 20px;
      text-align: center;
      text-decoration: none;
      text-shadow: none;
      text-transform: uppercase;
      display: inline-block;
      position: relative;
      -webkit-transition: all, 250ms;
      -o-transition: all, 250ms;
      transition: all, 250ms;
      background-color: #ffffff;
      color: #333333;
      padding-left: 0;
      padding-right: 60px;
      float: right; }
      .view-news-events .view-content .views-row.listing .btn a, .view-news-events .view-content .views-row.listing .readmore-extrafield a, .view-member-stories .view-content .views-row.listing .btn a, .view-member-stories .view-content .views-row.listing .readmore-extrafield a {
        position: relative; }
        .view-news-events .view-content .views-row.listing .btn a:after, .view-news-events .view-content .views-row.listing .readmore-extrafield a:after, .view-member-stories .view-content .views-row.listing .btn a:after, .view-member-stories .view-content .views-row.listing .readmore-extrafield a:after {
          content: '\f105';
          font-family: "fontawesome";
          border: 2px solid #ffffff;
          border-radius: 100%;
          font-size: 30px;
          display: inline-block;
          width: 34px;
          height: 34px;
          text-align: center;
          line-height: 26px;
          padding-left: 2px;
          margin-left: 25px;
          position: absolute;
          top: 50%;
          right: 6px;
          margin-top: -17px;
          border-color: #333333;
          right: -50px; }
      .view-news-events .view-content .views-row.listing .btn a, .view-news-events .view-content .views-row.listing .btn a:visited, .view-news-events .view-content .views-row.listing .readmore-extrafield a, .view-news-events .view-content .views-row.listing .readmore-extrafield a:visited, .view-member-stories .view-content .views-row.listing .btn a, .view-member-stories .view-content .views-row.listing .btn a:visited, .view-member-stories .view-content .views-row.listing .readmore-extrafield a, .view-member-stories .view-content .views-row.listing .readmore-extrafield a:visited {
        color: #ffffff;
        text-decoration: none; }
      .view-news-events .view-content .views-row.listing .btn:after, .view-news-events .view-content .views-row.listing .readmore-extrafield:after, .view-member-stories .view-content .views-row.listing .btn:after, .view-member-stories .view-content .views-row.listing .readmore-extrafield:after {
        content: '\f105';
        font-family: "fontawesome";
        border: 2px solid #ffffff;
        border-radius: 100%;
        font-size: 30px;
        display: inline-block;
        width: 34px;
        height: 34px;
        text-align: center;
        line-height: 26px;
        padding-left: 2px;
        margin-left: 25px;
        position: absolute;
        top: 50%;
        right: 6px;
        margin-top: -17px; }
      .view-news-events .view-content .views-row.listing .btn:after, .view-news-events .view-content .views-row.listing .readmore-extrafield:after, .view-member-stories .view-content .views-row.listing .btn:after, .view-member-stories .view-content .views-row.listing .readmore-extrafield:after {
        display: none; }
      .view-news-events .view-content .views-row.listing .btn:hover, .view-news-events .view-content .views-row.listing .btn:focus, .view-news-events .view-content .views-row.listing .readmore-extrafield:hover, .view-news-events .view-content .views-row.listing .readmore-extrafield:focus, .view-member-stories .view-content .views-row.listing .btn:hover, .view-member-stories .view-content .views-row.listing .btn:focus, .view-member-stories .view-content .views-row.listing .readmore-extrafield:hover, .view-member-stories .view-content .views-row.listing .readmore-extrafield:focus {
        border: none;
        outline: none;
        text-decoration: none; }
      .view-news-events .view-content .views-row.listing .btn:visited, .view-news-events .view-content .views-row.listing .readmore-extrafield:visited, .view-member-stories .view-content .views-row.listing .btn:visited, .view-member-stories .view-content .views-row.listing .readmore-extrafield:visited {
        color: #ffffff; }
      .view-news-events .view-content .views-row.listing .btn:after, .view-news-events .view-content .views-row.listing .readmore-extrafield:after, .view-member-stories .view-content .views-row.listing .btn:after, .view-member-stories .view-content .views-row.listing .readmore-extrafield:after {
        border-color: #333333;
        right: 0; }
      .view-news-events .view-content .views-row.listing .btn:hover, .view-news-events .view-content .views-row.listing .btn:focus,
      .view-news-events .view-content .views-row.listing .btn:hover a,
      .view-news-events .view-content .views-row.listing .btn:focus a,
      .view-news-events .view-content .views-row.listing .btn:hover a:visited,
      .view-news-events .view-content .views-row.listing .btn:focus a:visited, .view-news-events .view-content .views-row.listing .readmore-extrafield:hover, .view-news-events .view-content .views-row.listing .readmore-extrafield:focus,
      .view-news-events .view-content .views-row.listing .readmore-extrafield:hover a,
      .view-news-events .view-content .views-row.listing .readmore-extrafield:focus a,
      .view-news-events .view-content .views-row.listing .readmore-extrafield:hover a:visited,
      .view-news-events .view-content .views-row.listing .readmore-extrafield:focus a:visited, .view-member-stories .view-content .views-row.listing .btn:hover, .view-member-stories .view-content .views-row.listing .btn:focus,
      .view-member-stories .view-content .views-row.listing .btn:hover a,
      .view-member-stories .view-content .views-row.listing .btn:focus a,
      .view-member-stories .view-content .views-row.listing .btn:hover a:visited,
      .view-member-stories .view-content .views-row.listing .btn:focus a:visited, .view-member-stories .view-content .views-row.listing .readmore-extrafield:hover, .view-member-stories .view-content .views-row.listing .readmore-extrafield:focus,
      .view-member-stories .view-content .views-row.listing .readmore-extrafield:hover a,
      .view-member-stories .view-content .views-row.listing .readmore-extrafield:focus a,
      .view-member-stories .view-content .views-row.listing .readmore-extrafield:hover a:visited,
      .view-member-stories .view-content .views-row.listing .readmore-extrafield:focus a:visited {
        background-color: #ffffff;
        color: #80001A; }
        .view-news-events .view-content .views-row.listing .btn:hover:after, .view-news-events .view-content .views-row.listing .btn:focus:after,
        .view-news-events .view-content .views-row.listing .btn:hover a:after,
        .view-news-events .view-content .views-row.listing .btn:focus a:after,
        .view-news-events .view-content .views-row.listing .btn:hover a:visited:after,
        .view-news-events .view-content .views-row.listing .btn:focus a:visited:after, .view-news-events .view-content .views-row.listing .readmore-extrafield:hover:after, .view-news-events .view-content .views-row.listing .readmore-extrafield:focus:after,
        .view-news-events .view-content .views-row.listing .readmore-extrafield:hover a:after,
        .view-news-events .view-content .views-row.listing .readmore-extrafield:focus a:after,
        .view-news-events .view-content .views-row.listing .readmore-extrafield:hover a:visited:after,
        .view-news-events .view-content .views-row.listing .readmore-extrafield:focus a:visited:after, .view-member-stories .view-content .views-row.listing .btn:hover:after, .view-member-stories .view-content .views-row.listing .btn:focus:after,
        .view-member-stories .view-content .views-row.listing .btn:hover a:after,
        .view-member-stories .view-content .views-row.listing .btn:focus a:after,
        .view-member-stories .view-content .views-row.listing .btn:hover a:visited:after,
        .view-member-stories .view-content .views-row.listing .btn:focus a:visited:after, .view-member-stories .view-content .views-row.listing .readmore-extrafield:hover:after, .view-member-stories .view-content .views-row.listing .readmore-extrafield:focus:after,
        .view-member-stories .view-content .views-row.listing .readmore-extrafield:hover a:after,
        .view-member-stories .view-content .views-row.listing .readmore-extrafield:focus a:after,
        .view-member-stories .view-content .views-row.listing .readmore-extrafield:hover a:visited:after,
        .view-member-stories .view-content .views-row.listing .readmore-extrafield:focus a:visited:after {
          border-color: #80001A; }
      .view-news-events .view-content .views-row.listing .btn a, .view-news-events .view-content .views-row.listing .btn a:visited, .view-news-events .view-content .views-row.listing .readmore-extrafield a, .view-news-events .view-content .views-row.listing .readmore-extrafield a:visited, .view-member-stories .view-content .views-row.listing .btn a, .view-member-stories .view-content .views-row.listing .btn a:visited, .view-member-stories .view-content .views-row.listing .readmore-extrafield a, .view-member-stories .view-content .views-row.listing .readmore-extrafield a:visited {
        color: #333333;
        text-decoration: none; }
  .view-news-events .view-content .inner.event .btn, .view-member-stories .view-content .inner.event .btn {
    padding-left: 0; }

.view-school-directory-new .views-exposed-form {
  margin-bottom: 80px; }
  .view-school-directory-new .views-exposed-form form {
    margin: 0 -7px; }
  .view-school-directory-new .views-exposed-form .form--inline {
    display: flex;
    flex-wrap: wrap; }
    .view-school-directory-new .views-exposed-form .form--inline > .form-item {
      width: 25%;
      flex: 0 0 25%;
      display: flex;
      align-items: baseline;
      padding: 0 7px;
      justify-content: end;
      padding-bottom: 10px;
      margin-right: 0; }
      .view-school-directory-new .views-exposed-form .form--inline > .form-item label, .view-school-directory-new .views-exposed-form .form--inline > .form-item fieldset.panel legend.panel-heading span, fieldset.panel legend.panel-heading .view-school-directory-new .views-exposed-form .form--inline > .form-item span {
        padding-right: 15px; }
      .view-school-directory-new .views-exposed-form .form--inline > .form-item input, .view-school-directory-new .views-exposed-form .form--inline > .form-item .select-wrapper {
        flex: 1;
        padding: 0;
        width: inherit;
        max-width: 212px; }
      .view-school-directory-new .views-exposed-form .form--inline > .form-item select {
        max-width: 100%;
        width: 100%; }
      .view-school-directory-new .views-exposed-form .form--inline > .form-item.form-item-status .select-wrapper {
        max-width: 140px; }

.view-school-directory-new .view-header {
  max-width: 846px;
  margin-bottom: 40px; }
  .view-school-directory-new .view-header p {
    line-height: 64px;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0.07em; }

.view-school-directory-new .form-type-select select, .view-school-directory-new .form-type-select select.form-select:not(#edit-interest), .view-school-directory-new .neasc-facet-group select, .view-school-directory-new .neasc-facet-group select.form-select:not(#edit-interest) {
  height: 45px; }

.view-school-directory-new .form-actions {
  margin-top: 0;
  display: flex;
  align-items: flex-start;
  align-content: flex-start;
  width: 25%;
  flex: 0 0 25%;
  display: flex;
  align-items: baseline;
  padding: 0 7px;
  justify-content: end;
  padding-bottom: 10px;
  margin-right: 0; }
  .view-school-directory-new .form-actions button {
    width: 140px !important;
    order: 2;
    font-size: 14px; }
    .view-school-directory-new .form-actions button .glyphicon {
      display: none; }
    .view-school-directory-new .form-actions button.btn-danger {
      color: #000;
      background: none;
      text-decoration: underline;
      order: 1;
      flex: 0;
      text-transform: capitalize;
      font-size: 16px; }
      .view-school-directory-new .form-actions button.btn-danger:after {
        content: "\f021";
        right: auto;
        left: -31px;
        font-size: 20px;
        background-image: url(../../images/refresh.svg);
        content: "";
        background-repeat: no-repeat;
        background-position: center; }
    .view-school-directory-new .form-actions button.btn-primary {
      margin-right: 0; }

.view-school-directory-new .table-responsive thead {
  background-color: #80001A;
  color: #ffffff; }

.view-school-directory-new .table-responsive tbody tr {
  height: 64px; }
  .view-school-directory-new .table-responsive tbody tr:nth-child(2n) {
    background: #E7E7E7; }
  .view-school-directory-new .table-responsive tbody tr td {
    line-height: 64px;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0.07em; }
    .view-school-directory-new .table-responsive tbody tr td a {
      color: #000; }

.view-school-directory-new .pagination > .pager__item a {
  text-indent: 0; }
  .view-school-directory-new .pagination > .pager__item a:before {
    display: none; }
  .view-school-directory-new .pagination > .pager__item a span {
    text-indent: 0; }

.view-school-directory-new .view-empty {
  text-align: center;
  min-height: 400px;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto; }
  .view-school-directory-new .view-empty a {
    text-decoration: underline; }
  .view-school-directory-new .view-empty p {
    line-height: 64px;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0.07em; }

@media (min-width: 841px) {
  .view-school-directory-new .filters-button {
    display: none !important; }
  .view-school-directory-new #school-directory-filters {
    display: block !important;
    height: inherit !important; } }

@media (max-width: 840px) {
  .view-school-directory-new .views-exposed-form .form--inline {
    display: block; }
  .view-school-directory-new .views-exposed-form .form--inline > .form-item {
    width: 100%;
    display: block; }
    .view-school-directory-new .views-exposed-form .form--inline > .form-item label, .view-school-directory-new .views-exposed-form .form--inline > .form-item fieldset.panel legend.panel-heading span, fieldset.panel legend.panel-heading .view-school-directory-new .views-exposed-form .form--inline > .form-item span {
      margin-bottom: 10px; }
    .view-school-directory-new .views-exposed-form .form--inline > .form-item .select-wrapper,
    .view-school-directory-new .views-exposed-form .form--inline > .form-item select,
    .view-school-directory-new .views-exposed-form .form--inline > .form-item input {
      max-width: 100% !important; }
  .filters-button {
    display: block;
    width: 100%;
    background: transparent;
    border: medium none;
    text-align: left;
    position: relative;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    font-size: 16px;
    line-height: 19px;
    text-transform: uppercase;
    margin-bottom: 30px; }
    .filters-button:after {
      color: #c4c4c4;
      content: "\f106";
      display: block;
      font-family: "fontawesome";
      font-size: 32px;
      line-height: 1.625;
      margin-top: 0;
      padding-right: 0;
      position: absolute;
      right: 13px;
      top: 0;
      z-index: -1;
      height: 20px;
      line-height: 20px;
      color: #000; }
    .filters-button.collapsed:after {
      content: "\f107"; }
  .view-school-directory-new .view-content {
    margin-left: -15px;
    margin-right: -15px; }
  .view-school-directory-new .form-actions {
    width: 100%;
    display: block; }
    .view-school-directory-new .form-actions button.btn-primary {
      float: right; }
  .view-school-directory-new .table-responsive {
    border: medium none; }
  .view-school-directory-new .table-responsive tbody tr {
    height: auto; }
  .view-school-directory-new .table-responsive table {
    /* Hide table headers (but not display: none;, for accessibility) */ }
    .view-school-directory-new .table-responsive table td, .view-school-directory-new .table-responsive table tr {
      display: block; }
    .view-school-directory-new .table-responsive table thead tr {
      position: absolute;
      top: -9999px;
      left: -9999px;
      white-space: normal; }
    .view-school-directory-new .table-responsive table tr {
      padding: 20px 7px;
      margin-top: 0; }
      .view-school-directory-new .table-responsive table tr td {
        line-height: 20px;
        font-family: 'Roboto';
        font-style: normal;
        font-weight: 400;
        font-size: 16px;
        line-height: 150%;
        letter-spacing: 0.07em; }
    .view-school-directory-new .table-responsive table tr + tr {
      margin-top: 1.5em; }
    .view-school-directory-new .table-responsive table td {
      /* make like a "row" */
      border: none;
      position: relative;
      padding-left: 50%;
      text-align: left;
      white-space: normal !important; }
    .view-school-directory-new .table-responsive table td:before {
      content: attr(data-label);
      display: inline-block;
      line-height: 1.5;
      margin-left: -100%;
      width: 98%;
      white-space: nowrap;
      font-family: 'Roboto';
      font-style: normal;
      font-weight: 700;
      font-size: 16px;
      line-height: 140%;
      letter-spacing: 0.07em; } }

/**
 * General Views styles should go here.
 * Styles for separate views should go into their own partial
 * names views--VIEWNAME.scss
 **/
.view.view-school-directory .view-filters {
  float: none; }
  .view.view-school-directory .view-filters .views-exposed-form {
    padding-left: 0;
    padding-right: 15px; }
    .view.view-school-directory .view-filters .views-exposed-form .form-submit {
      margin-top: 0;
      margin-left: 15px;
      width: inherit;
      max-width: inherit;
      padding-right: 70px; }
      .view.view-school-directory .view-filters .views-exposed-form .form-submit .glyphicon {
        display: none; }
    .view.view-school-directory .view-filters .views-exposed-form label, .view.view-school-directory .view-filters .views-exposed-form fieldset.panel legend.panel-heading span, fieldset.panel legend.panel-heading .view.view-school-directory .view-filters .views-exposed-form span {
      display: inline-block;
      padding-right: 30px; }
  .view.view-school-directory .view-filters .form-item, .view.view-school-directory .view-filters .facets-views-plugin > .form-group.form-inline {
    padding: 0.5em 0 0 0;
    margin-right: 20px; }
    .view.view-school-directory .view-filters .form-item:first-child, .view.view-school-directory .view-filters .facets-views-plugin > .form-group.form-inline:first-child {
      padding-right: 0; }

.view.view-school-directory span.control-label {
  display: inline-block;
  padding-right: 30px; }

.view.view-school-directory .view-grouping-content > h3,
.view.view-school-directory .view-content > h3 {
  color: #80001A;
  font-family: "Muli", Georgia;
  font-size: 36px;
  line-height: 1.25;
  margin-bottom: 15px;
  margin-top: 0; }
  @media (min-width: 768px) {
    .view.view-school-directory .view-grouping-content > h3,
    .view.view-school-directory .view-content > h3 {
      font-size: 30px; } }
  .view.view-school-directory .view-grouping-content > h3 a, .view.view-school-directory .view-grouping-content > h3 a:visited, .view.view-school-directory .view-grouping-content > h3 a:focus, .view.view-school-directory .view-grouping-content > h3 a:hover,
  .view.view-school-directory .view-content > h3 a,
  .view.view-school-directory .view-content > h3 a:visited,
  .view.view-school-directory .view-content > h3 a:focus,
  .view.view-school-directory .view-content > h3 a:hover {
    color: #80001A;
    text-decoration: none; }

.view.view-school-directory .facets-views-plugin {
  display: inline;
  vertical-align: middle; }

.view.view-school-directory .form-actions.form-group {
  vertical-align: middle;
  margin-top: 0;
  padding-top: 7px; }

.view.view-school-directory .form-item {
  margin-right: 18px;
  max-width: 379px;
  width: 100%;
  display: flex;
  float: left;
  align-items: center; }
  .view.view-school-directory .form-item > label, .view.view-school-directory fieldset.panel legend.panel-heading .form-item > span, fieldset.panel legend.panel-heading .view.view-school-directory .form-item > span {
    flex: 0; }
  .view.view-school-directory .form-item > input {
    flex: 1; }

.webform-submission-apostille-request-form .form-item {
  max-width: unset; }

.iti.iti--allow-dropdown {
  display: block; }

.form-textarea-wrapper textarea.form-textarea {
  border: 1px solid #c4c4c4;
  border-radius: 0;
  box-shadow: none;
  color: #333333;
  font-size: 1.125rem; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiX2RlZmF1bHQtdmFyaWFibGVzLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL19ib290c3RyYXAuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19taXhpbnMuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9faGlkZS10ZXh0LnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX29wYWNpdHkuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9faW1hZ2Uuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbGFiZWxzLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LWZpbHRlci5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19yZXNpemUuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcmVzcG9uc2l2ZS12aXNpYmlsaXR5LnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3NpemUuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGFiLWZvY3VzLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL190ZXh0LW92ZXJmbG93LnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3ZlbmRvci1wcmVmaXhlcy5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19hbGVydHMuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fYnV0dG9ucy5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19wYW5lbHMuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2Zvcm1zLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Byb2dyZXNzLWJhci5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2NlbnRlci1ibG9jay5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19uYXYtdmVydGljYWwtYWxpZ24uc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fZ3JpZC5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3ByaW50LnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZ2x5cGhpY29ucy5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3NjYWZmb2xkaW5nLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdHlwZS5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2NvZGUuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19ncmlkLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdGFibGVzLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZm9ybXMuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19idXR0b25zLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fY29tcG9uZW50LWFuaW1hdGlvbnMuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19kcm9wZG93bnMuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19idXR0b24tZ3JvdXBzLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9faW5wdXQtZ3JvdXBzLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbmF2cy5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25hdmJhci5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2JyZWFkY3J1bWJzLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3BhZ2VyLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbGFiZWxzLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fYmFkZ2VzLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fanVtYm90cm9uLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdGh1bWJuYWlscy5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2FsZXJ0cy5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3Byb2dyZXNzLWJhcnMuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19tZWRpYS5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2xpc3QtZ3JvdXAuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wYW5lbHMuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fd2VsbHMuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jbG9zZS5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX21vZGFscy5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3Rvb2x0aXAuc2NzcyIsIi4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wb3BvdmVycy5zY3NzIiwiLi4vLi4vYm9vdHN0cmFwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Nhcm91c2VsLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdXRpbGl0aWVzLnNjc3MiLCIuLi8uLi9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcmVzcG9uc2l2ZS11dGlsaXRpZXMuc2NzcyIsInZhcmlhYmxlcy9fYmFzZS5zY3NzIiwidmFyaWFibGVzL19icmVha3BvaW50cy5zY3NzIiwidmFyaWFibGVzL19jb2xvcnMuc2NzcyIsInZhcmlhYmxlcy9fdHlwb2dyYXBoeS5zY3NzIiwiX3ZhcmlhYmxlcy5zY3NzIiwiZnVuY3Rpb25zL19mdW5jdGlvbnMuc2NzcyIsIm1peGlucy9fbWl4aW5zLnNjc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJiYXNlL19icmVhZGNydW1icy5zY3NzIiwiYmFzZS9fYnV0dG9ucy5zY3NzIiwiYmFzZS9fZm9vdGVyLnNjc3MiLCJiYXNlL19mb3Jtcy5zY3NzIiwiYmFzZS9faGVhZGVyLnNjc3MiLCJiYXNlL19pY29ucy5zY3NzIiwiYmFzZS9fbGF5b3V0LnNjc3MiLCJiYXNlL19saXN0cy5zY3NzIiwiYmFzZS9fbWVkaWEuc2NzcyIsImJhc2UvX21lc3NhZ2VzLnNjc3MiLCJiYXNlL19uYXZiYXIuc2NzcyIsImJhc2UvX3BhZ2VyLnNjc3MiLCJiYXNlL19yZWdpb25zLnNjc3MiLCJiYXNlL19zZWFyY2guc2NzcyIsImJhc2UvX3RhYmxlcy5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiY29tcG9uZW50cy9ibG9ja3MvX2Jsb2NrLnNjc3MiLCJjb21wb25lbnRzL2Jsb2Nrcy9fbG9naW5fYm94LnNjc3MiLCJjb21wb25lbnRzL2Jvb3RzdHJhcC9fYWNjb3JkaW9uLnNjc3MiLCJjb21wb25lbnRzL2ZhY2V0cy9fZmFjZXRzLnNjc3MiLCJjb21wb25lbnRzL2ZpZWxkc19ncm91cHMvX2dyb3VwLnNjc3MiLCJjb21wb25lbnRzL2ZpZWxkcy9fZmllbGQtY3RhLWJ1dHRvbi5zY3NzIiwiY29tcG9uZW50cy9maWVsZHMvX2ZpZWxkLnNjc3MiLCJjb21wb25lbnRzL2xheW91dHMvX3JpZ2h0LXNpZGViYXIuc2NzcyIsImNvbXBvbmVudHMvbWVudXMvX21haW4tbWVudS5zY3NzIiwiY29tcG9uZW50cy9tZW51cy9fbWVudS5zY3NzIiwiY29tcG9uZW50cy9tZW51cy9fbmF2LXRhYnMuc2NzcyIsImNvbXBvbmVudHMvbWVudXMvX3NpZGViYXItbWVudS5zY3NzIiwiY29tcG9uZW50cy9tZW51cy9fdWJlci5zY3NzIiwiY29tcG9uZW50cy9wYWdlcy9fZnJvbnQuc2NzcyIsImNvbXBvbmVudHMvcGFnZXMvX2luc3RpdHV0aW9uLXBhZ2Uuc2NzcyIsImNvbXBvbmVudHMvcGFnZXMvX21haW4tcGFnZS5zY3NzIiwiY29tcG9uZW50cy9wYWdlcy9fbmV3cy1hbm5vdW5jZW1lbnQuc2NzcyIsImNvbXBvbmVudHMvcGFyYWdyYXBocy9fcGFyYWdyYXBocy1pdGVtLWFjY29yZGlvbi5zY3NzIiwiY29tcG9uZW50cy9wYXJhZ3JhcGhzL19wYXJhZ3JhcGhzLWl0ZW0tZG93bmxvYWQuc2NzcyIsImNvbXBvbmVudHMvcGFyYWdyYXBocy9fcGFyYWdyYXBocy1pdGVtLWR5bmFtaWMtbWVudS5zY3NzIiwiY29tcG9uZW50cy9wYXJhZ3JhcGhzL19wYXJhZ3JhcGhzLWl0ZW0taGVyby5zY3NzIiwiY29tcG9uZW50cy9wYXJhZ3JhcGhzL19wYXJhZ3JhcGhzLWl0ZW0taW1hZ2UtbGVmdC10ZXh0LXJpZ2h0LnNjc3MiLCJjb21wb25lbnRzL3BhcmFncmFwaHMvX3BhcmFncmFwaHMtaXRlbS1saW5rcy5zY3NzIiwiY29tcG9uZW50cy9wYXJhZ3JhcGhzL19wYXJhZ3JhcGhzLWl0ZW0tdGlsZS1ncm91cC5zY3NzIiwiY29tcG9uZW50cy9wYXJhZ3JhcGhzL19wYXJhZ3JhcGhzLWl0ZW0tdGlsZS1uZXdzLnNjc3MiLCJjb21wb25lbnRzL3BhcmFncmFwaHMvX3BhcmFncmFwaHMtaXRlbS10aWxlLnNjc3MiLCJjb21wb25lbnRzL3BhcmFncmFwaHMvX3BhcmFncmFwaHMtaXRlbS11cGRhdGVzLnNjc3MiLCJjb21wb25lbnRzL3BhcmFncmFwaHMvX3BhcmFncmFwaHMtaXRlbS12aWV3LWJsb2NrLnNjc3MiLCJjb21wb25lbnRzL3BhcmFncmFwaHMvX3BhcmFncmFwaHMtaXRlbS5zY3NzIiwiY29tcG9uZW50cy92aWV3cy9fdmlld3NfbmV3cy1ldmVudHMuc2NzcyIsImNvbXBvbmVudHMvdmlld3MvX3ZpZXdzX3NjaG9vbC1kaXJlY3Rvcnkuc2NzcyIsImNvbXBvbmVudHMvdmlld3MvX3ZpZXdzLnNjc3MiLCJjb21wb25lbnRzL3dlYmZvcm1zL19jb250YWN0LXVzLnNjc3MiLCJjb21wb25lbnRzL3dlYmZvcm1zL193ZWJmb3Jtcy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIGJhc2UgdmFyaWFibGVzLlxuQGltcG9ydCAnZGVmYXVsdC12YXJpYWJsZXMnO1xuLy8gQm9vdHN0cmFwIEZyYW1ld29yay5cbkBpbXBvcnQgJy4uLy4uL2Jvb3RzdHJhcC9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwJztcbi8vIEZvbnQgQXdlc29tZVxuQGltcG9ydCAnLi4vLi4vZm9udHMvZm9udC1hd2Vzb21lL2Nzcy9mb250LWF3ZXNvbWUubWluLmNzcyc7XG5cbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX2Jhc2Uuc2Nzc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9fYnJlYWtwb2ludHMuc2Nzc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9fY29sb3JzLnNjc3NcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvX3R5cG9ncmFwaHkuc2Nzc1wiO1xuQGltcG9ydCAndmFyaWFibGVzJztcbkBpbXBvcnQgXCJmdW5jdGlvbnMvX2Z1bmN0aW9ucy5zY3NzXCI7XG5AaW1wb3J0IFwibWl4aW5zL19taXhpbnMuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvX2Jhc2Uuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvX2JyZWFkY3J1bWJzLnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlL19idXR0b25zLnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlL19mb290ZXIuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvX2Zvcm1zLnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlL19oZWFkZXIuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvX2ljb25zLnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlL19sYXlvdXQuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvX2xpc3RzLnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlL19tZWRpYS5zY3NzXCI7XG5AaW1wb3J0IFwiYmFzZS9fbWVzc2FnZXMuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvX25hdmJhci5zY3NzXCI7XG5AaW1wb3J0IFwiYmFzZS9fcGFnZXIuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvX3JlZ2lvbnMuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvX3NlYXJjaC5zY3NzXCI7XG5AaW1wb3J0IFwiYmFzZS9fdGFibGVzLnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlL190eXBvZ3JhcGh5LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Jsb2Nrcy9fYmxvY2suc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYmxvY2tzL19sb2dpbl9ib3guc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYm9vdHN0cmFwL19hY2NvcmRpb24uc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZmFjZXRzL19mYWNldHMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZmllbGRzX2dyb3Vwcy9fZ3JvdXAuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZmllbGRzL19maWVsZC1jdGEtYnV0dG9uLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2ZpZWxkcy9fZmllbGQuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbGF5b3V0cy9fcmlnaHQtc2lkZWJhci5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9tZW51cy9fbWFpbi1tZW51LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL21lbnVzL19tZW51LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL21lbnVzL19uYXYtdGFicy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9tZW51cy9fc2lkZWJhci1tZW51LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL21lbnVzL191YmVyLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhZ2VzL19mcm9udC5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9wYWdlcy9faW5zdGl0dXRpb24tcGFnZS5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9wYWdlcy9fbWFpbi1wYWdlLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhZ2VzL19uZXdzLWFubm91bmNlbWVudC5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9wYXJhZ3JhcGhzL19wYXJhZ3JhcGhzLWl0ZW0tYWNjb3JkaW9uLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhcmFncmFwaHMvX3BhcmFncmFwaHMtaXRlbS1kb3dubG9hZC5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9wYXJhZ3JhcGhzL19wYXJhZ3JhcGhzLWl0ZW0tZHluYW1pYy1tZW51LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhcmFncmFwaHMvX3BhcmFncmFwaHMtaXRlbS1oZXJvLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhcmFncmFwaHMvX3BhcmFncmFwaHMtaXRlbS1pbWFnZS1sZWZ0LXRleHQtcmlnaHQuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcGFyYWdyYXBocy9fcGFyYWdyYXBocy1pdGVtLWxpbmtzLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhcmFncmFwaHMvX3BhcmFncmFwaHMtaXRlbS10aWxlLWdyb3VwLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhcmFncmFwaHMvX3BhcmFncmFwaHMtaXRlbS10aWxlLW5ld3Muc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcGFyYWdyYXBocy9fcGFyYWdyYXBocy1pdGVtLXRpbGUuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcGFyYWdyYXBocy9fcGFyYWdyYXBocy1pdGVtLXVwZGF0ZXMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcGFyYWdyYXBocy9fcGFyYWdyYXBocy1pdGVtLXZpZXctYmxvY2suc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcGFyYWdyYXBocy9fcGFyYWdyYXBocy1pdGVtLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3ZpZXdzL192aWV3c19uZXdzLWV2ZW50cy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy92aWV3cy9fdmlld3Nfc2Nob29sLWRpcmVjdG9yeS5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy92aWV3cy9fdmlld3Muc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvd2ViZm9ybXMvX2NvbnRhY3QtdXMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvd2ViZm9ybXMvX3dlYmZvcm1zLnNjc3NcIjsiLCIvKipcbiAqIERlZmF1bHQgVmFyaWFibGVzLlxuICpcbiAqIE1vZGlmeSB0aGlzIGZpbGUgdG8gcHJvdmlkZSBkZWZhdWx0IEJvb3RzdHJhcCBGcmFtZXdvcmsgdmFyaWFibGVzLiBUaGVcbiAqIEJvb3RzdHJhcCBGcmFtZXdvcmsgd2lsbCBub3Qgb3ZlcnJpZGUgYW55IHZhcmlhYmxlcyBkZWZpbmVkIGhlcmUgYmVjYXVzZSBpdFxuICogdXNlcyB0aGUgYCFkZWZhdWx0YCBmbGFnIHdoaWNoIHdpbGwgb25seSBzZXQgdGhlaXIgZGVmYXVsdCBpZiBub3QgYWxyZWFkeVxuICogZGVmaW5lZCBoZXJlLlxuICpcbiAqIFlvdSBjYW4gY29weSBleGlzdGluZyB2YXJpYWJsZXMgZGlyZWN0bHkgZnJvbSB0aGUgZm9sbG93aW5nIGZpbGU6XG4gKiAuL1RIRU1FTkFNRS9ib290c3RyYXAvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3NcbiAqL1xuXG4vLyR0YWJsZXQ6ICAgICAgICAgICAgICBcInNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skc2NyZWVuLXNtLW1pbn0pXCI7XG4kbm9ybWFsOiAgICAgICAgICAgICAgXCJzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KVwiO1xuLy8kd2lkZTogICAgICAgICAgICAgICAgXCJzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JHNjcmVlbi1sZy1taW59KVwiO1xuLy8kZ3JpZC1icmVha3BvaW50OiAgICAgXCJzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JGdyaWQtZmxvYXQtYnJlYWtwb2ludH0pXCI7XG5cbi8vJHNjcmVlbi1zbS1taW46O1xuLy8kc2NyZWVuLW1kLW1pbjo7XG4vLyRzY3JlZW4tbGctbWluOjtcbi8vJGdyaWQtZmxvYXQtYnJlYWtwb2ludDo7XG5cbiRjb250YWluZXItc206IDMyMHB4O1xuLy8kZ3JpZC1ndXR0ZXItd2lkdGg6IDtcbiRjb250YWluZXItbWQ6IDEyODBweDtcbiRjb250YWluZXItbGc6IDE0MjBweDtcbiRjb250YWluZXIteGw6IDE5NjBweDsiLCIvKiFcbiAqIEJvb3RzdHJhcCB2My4zLjcgKGh0dHA6Ly9nZXRib290c3RyYXAuY29tKVxuICogQ29weXJpZ2h0IDIwMTEtMjAxNiBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICovXG5cbi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgXCJib290c3RyYXAvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL21peGluc1wiO1xuXG4vLyBSZXNldCBhbmQgZGVwZW5kZW5jaWVzXG5AaW1wb3J0IFwiYm9vdHN0cmFwL25vcm1hbGl6ZVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wcmludFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9nbHlwaGljb25zXCI7XG5cbi8vIENvcmUgQ1NTXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3NjYWZmb2xkaW5nXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3R5cGVcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvY29kZVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9ncmlkXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3RhYmxlc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9mb3Jtc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9idXR0b25zXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJib290c3RyYXAvY29tcG9uZW50LWFuaW1hdGlvbnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZHJvcGRvd25zXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2J1dHRvbi1ncm91cHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvaW5wdXQtZ3JvdXBzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL25hdnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbmF2YmFyXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2JyZWFkY3J1bWJzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcGFnZXJcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbGFiZWxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2JhZGdlc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9qdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdGh1bWJuYWlsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9hbGVydHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcHJvZ3Jlc3MtYmFyc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9tZWRpYVwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3BhbmVsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9yZXNwb25zaXZlLWVtYmVkXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3dlbGxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Nsb3NlXCI7XG5cbi8vIENvbXBvbmVudHMgdy8gSmF2YVNjcmlwdFxuQGltcG9ydCBcImJvb3RzdHJhcC9tb2RhbHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvdG9vbHRpcFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wb3BvdmVyc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9jYXJvdXNlbFwiO1xuXG4vLyBVdGlsaXR5IGNsYXNzZXNcbkBpbXBvcnQgXCJib290c3RyYXAvdXRpbGl0aWVzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Jlc3BvbnNpdmUtdXRpbGl0aWVzXCI7XG4iLCIkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyOiBmYWxzZSAhZGVmYXVsdDtcbi8vXG4vLyBWYXJpYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy89PSBDb2xvcnNcbi8vXG4vLyMjIEdyYXkgYW5kIGJyYW5kIGNvbG9ycyBmb3IgdXNlIGFjcm9zcyBCb290c3RyYXAuXG5cbiRncmF5LWJhc2U6ICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGdyYXktZGFya2VyOiAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMTMuNSUpICFkZWZhdWx0OyAvLyAjMjIyXG4kZ3JheS1kYXJrOiAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAyMCUpICFkZWZhdWx0OyAgIC8vICMzMzNcbiRncmF5OiAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDMzLjUlKSAhZGVmYXVsdDsgLy8gIzU1NVxuJGdyYXktbGlnaHQ6ICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgNDYuNyUpICFkZWZhdWx0OyAvLyAjNzc3XG4kZ3JheS1saWdodGVyOiAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA5My41JSkgIWRlZmF1bHQ7IC8vICNlZWVcblxuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgZGFya2VuKCM0MjhiY2EsIDYuNSUpICFkZWZhdWx0OyAvLyAjMzM3YWI3XG4kYnJhbmQtc3VjY2VzczogICAgICAgICAjNWNiODVjICFkZWZhdWx0O1xuJGJyYW5kLWluZm86ICAgICAgICAgICAgIzViYzBkZSAhZGVmYXVsdDtcbiRicmFuZC13YXJuaW5nOiAgICAgICAgICNmMGFkNGUgIWRlZmF1bHQ7XG4kYnJhbmQtZGFuZ2VyOiAgICAgICAgICAjZDk1MzRmICFkZWZhdWx0O1xuXG5cbi8vPT0gU2NhZmZvbGRpbmdcbi8vXG4vLyMjIFNldHRpbmdzIGZvciBzb21lIG9mIHRoZSBtb3N0IGdsb2JhbCBzdHlsZXMuXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgYDxib2R5PmAuXG4kYm9keS1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgdGV4dCBjb2xvciBvbiBgPGJvZHk+YC5cbiR0ZXh0LWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIHRleHR1YWwgbGluayBjb2xvci5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGNvbG9yIHNldCB2aWEgYGRhcmtlbigpYCBmdW5jdGlvbi5cbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBkZWNvcmF0aW9uLlxuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogdW5kZXJsaW5lICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwb2dyYXBoeVxuLy9cbi8vIyMgRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgbW9ub3NwYWNlIGZvbnRzIGZvciBgPGNvZGU+YCwgYDxrYmQ+YCwgYW5kIGA8cHJlPmAuXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgMTRweCAhZGVmYXVsdDtcbiRmb250LXNpemUtbGFyZ2U6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbiRmb250LXNpemUtaDE6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuNikpICFkZWZhdWx0OyAvLyB+MzZweFxuJGZvbnQtc2l6ZS1oMjogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi4xNSkpICFkZWZhdWx0OyAvLyB+MzBweFxuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjcpKSAhZGVmYXVsdDsgLy8gfjI0cHhcbiRmb250LXNpemUtaDQ6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg2OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuLy8qKiBVbml0LWxlc3MgYGxpbmUtaGVpZ2h0YCBmb3IgdXNlIGluIGNvbXBvbmVudHMgbGlrZSBidXR0b25zLlxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAxLjQyODU3MTQyOSAhZGVmYXVsdDsgLy8gMjAvMTRcbi8vKiogQ29tcHV0ZWQgXCJsaW5lLWhlaWdodFwiIChgZm9udC1zaXplYCAqIGBsaW5lLWhlaWdodGApIGZvciB1c2Ugd2l0aCBgbWFyZ2luYCwgYHBhZGRpbmdgLCBldGMuXG4kbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkpICFkZWZhdWx0OyAvLyB+MjBweFxuXG4vLyoqIEJ5IGRlZmF1bHQsIHRoaXMgaW5oZXJpdHMgZnJvbSB0aGUgYDxib2R5PmAuXG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgMS4xICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuXG5cbi8vPT0gSWNvbm9ncmFwaHlcbi8vXG4vLyMjIFNwZWNpZnkgY3VzdG9tIGxvY2F0aW9uIGFuZCBmaWxlbmFtZSBvZiB0aGUgaW5jbHVkZWQgR2x5cGhpY29ucyBpY29uIGZvbnQuIFVzZWZ1bCBmb3IgdGhvc2UgaW5jbHVkaW5nIEJvb3RzdHJhcCB2aWEgQm93ZXIuXG5cbi8vKiogTG9hZCBmb250cyBmcm9tIHRoaXMgZGlyZWN0b3J5LlxuXG4vLyBbY29udmVydGVyXSBJZiAkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyIGlmIHVzZWQsIHByb3ZpZGUgcGF0aCByZWxhdGl2ZSB0byB0aGUgYXNzZXRzIGxvYWQgcGF0aC5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgYmVjYXVzZSBzb21lIGFzc2V0IGhlbHBlcnMsIHN1Y2ggYXMgU3Byb2NrZXRzLCBkbyBub3Qgd29yayB3aXRoIGZpbGUtcmVsYXRpdmUgcGF0aHMuXG4kaWNvbi1mb250LXBhdGg6IGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIFwiYm9vdHN0cmFwL1wiLCBcIi4uL2ZvbnRzL2Jvb3RzdHJhcC9cIikgIWRlZmF1bHQ7XG5cbi8vKiogRmlsZSBuYW1lIGZvciBhbGwgZm9udCBmaWxlcy5cbiRpY29uLWZvbnQtbmFtZTogICAgICAgICAgXCJnbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyXCIgIWRlZmF1bHQ7XG4vLyoqIEVsZW1lbnQgSUQgd2l0aGluIFNWRyBpY29uIGZpbGUuXG4kaWNvbi1mb250LXN2Zy1pZDogICAgICAgIFwiZ2x5cGhpY29uc19oYWxmbGluZ3NyZWd1bGFyXCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDb21wb25lbnRzXG4vL1xuLy8jIyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuIFZhbHVlcyBiYXNlZCBvbiAxNHB4IHRleHQgYW5kIDEuNDI4IGxpbmUtaGVpZ2h0ICh+MjBweCB0byBzdGFydCkuXG5cbiRwYWRkaW5nLWJhc2UtdmVydGljYWw6ICAgICA2cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMTJweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctbGFyZ2UtdmVydGljYWw6ICAgIDEwcHggIWRlZmF1bHQ7XG4kcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgMTZweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctc21hbGwtdmVydGljYWw6ICAgIDVweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw6ICAxMHB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy14cy12ZXJ0aWNhbDogICAgICAgMXB4ICFkZWZhdWx0O1xuJHBhZGRpbmcteHMtaG9yaXpvbnRhbDogICAgIDVweCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWxhcmdlOiAgICAgICAgIDEuMzMzMzMzMyAhZGVmYXVsdDsgLy8gZXh0cmEgZGVjaW1hbHMgZm9yIFdpbiA4LjEgQ2hyb21lXG4kbGluZS1oZWlnaHQtc21hbGw6ICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgNHB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgIDZweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAzcHggIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgYmFja2dyb3VuZCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vKiogV2lkdGggb2YgdGhlIGBib3JkZXJgIGZvciBnZW5lcmF0aW5nIGNhcmV0cyB0aGF0IGluZGljYXRlIGRyb3Bkb3ducy5cbiRjYXJldC13aWR0aC1iYXNlOiAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4vLyoqIENhcmV0cyBpbmNyZWFzZSBzbGlnaHRseSBpbiBzaXplIGZvciBsYXJnZXIgY29tcG9uZW50cy5cbiRjYXJldC13aWR0aC1sYXJnZTogICAgICAgICA1cHggIWRlZmF1bHQ7XG5cblxuLy89PSBUYWJsZXNcbi8vXG4vLyMjIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuLy8qKiBQYWRkaW5nIGZvciBgPHRoPmBzIGFuZCBgPHRkPmBzLlxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgICA4cHggIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgZm9yIGNlbGxzIGluIGAudGFibGUtY29uZGVuc2VkYC5cbiR0YWJsZS1jb25kZW5zZWQtY2VsbC1wYWRkaW5nOiAgNXB4ICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBhbGwgdGFibGVzLlxuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLXN0cmlwZWRgLlxuJHRhYmxlLWJnLWFjY2VudDogICAgICAgICAgICAgICAjZjlmOWY5ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtaG92ZXJgLlxuJHRhYmxlLWJnLWhvdmVyOiAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHRhYmxlLWJnLWFjdGl2ZTogICAgICAgICAgICAgICAkdGFibGUtYmctaG92ZXIgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciB0YWJsZSBhbmQgY2VsbCBib3JkZXJzLlxuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT0gQnV0dG9uc1xuLy9cbi8vIyMgRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgICAgbm9ybWFsICFkZWZhdWx0O1xuXG4kYnRuLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXByaW1hcnktYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1zdWNjZXNzLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tc3VjY2Vzcy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWluZm8tY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4kYnRuLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1pbmZvLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4td2FybmluZy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbiRidG4td2FybmluZy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXdhcm5pbmctYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1kYW5nZXItYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybXNcbi8vXG4vLyMjXG5cbi8vKiogYDxpbnB1dD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQgZGlzYWJsZWQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmctZGlzYWJsZWQ6ICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGA8aW5wdXQ+YHNcbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuLy8qKiBgPGlucHV0PmAgYm9yZGVyIGNvbG9yXG4kaW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBSZW5hbWUgYCRpbnB1dC1ib3JkZXItcmFkaXVzYCB0byBgJGlucHV0LWJvcmRlci1yYWRpdXMtYmFzZWAgaW4gdjRcbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuLy8gVGhpcyBoYXMgbm8gZWZmZWN0IG9uIGA8c2VsZWN0PmBzIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGlucHV0cyBvbiBmb2N1c1xuJGlucHV0LWJvcmRlci1mb2N1czogICAgICAgICAgICAgIzY2YWZlOSAhZGVmYXVsdDtcblxuLy8qKiBQbGFjZWhvbGRlciB0ZXh0IGNvbG9yXG4kaW5wdXQtY29sb3ItcGxhY2Vob2xkZXI6ICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1iYXNlOiAgICAgICAgICAgICAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1sYXJnZTogICAgICAgICAgICAgKGNlaWwoJGZvbnQtc2l6ZS1sYXJnZSAqICRsaW5lLWhlaWdodC1sYXJnZSkgKyAoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LXNtYWxsOiAgICAgICAgICAgICAoZmxvb3IoJGZvbnQtc2l6ZS1zbWFsbCAqICRsaW5lLWhlaWdodC1zbWFsbCkgKyAoJHBhZGRpbmctc21hbGwtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuXG4vLyoqIGAuZm9ybS1ncm91cGAgbWFyZ2luXG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kbGVnZW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJGxlZ2VuZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0ZXh0dWFsIGlucHV0IGFkZG9uc1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogQm9yZGVyIGNvbG9yIGZvciB0ZXh0dWFsIGlucHV0IGFkZG9uc1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlciAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBjdXJzb3IgZm9yIGZvcm0gY29udHJvbHMgYW5kIGJ1dHRvbnMuXG4kY3Vyc29yLWRpc2FibGVkOiAgICAgICAgICAgICAgICBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuXG4vLz09IERyb3Bkb3duc1xuLy9cbi8vIyMgRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyoqIEJhY2tncm91bmQgZm9yIHRoZSBkcm9wZG93biBtZW51LlxuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogRHJvcGRvd24gbWVudSBgYm9yZGVyLWNvbG9yYC5cbiRkcm9wZG93bi1ib3JkZXI6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjE1KSAhZGVmYXVsdDtcbi8vKiogRHJvcGRvd24gbWVudSBgYm9yZGVyLWNvbG9yYCAqKmZvciBJRTgqKi5cbiRkcm9wZG93bi1mYWxsYmFjay1ib3JkZXI6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4vLyoqIERpdmlkZXIgY29sb3IgZm9yIGJldHdlZW4gZHJvcGRvd24gaXRlbXMuXG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIERyb3Bkb3duIGxpbmsgdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4vLyoqIEhvdmVyIGNvbG9yIGZvciBkcm9wZG93biBsaW5rcy5cbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkZ3JheS1kYXJrLCA1JSkgIWRlZmF1bHQ7XG4vLyoqIEhvdmVyIGJhY2tncm91bmQgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBoZWFkZXJzIHdpdGhpbiBkcm9wZG93biBtZW51cy5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIERlcHJlY2F0ZWQgYCRkcm9wZG93bi1jYXJldC1jb2xvcmAgYXMgb2YgdjMuMS4wXG4kZHJvcGRvd24tY2FyZXQtY29sb3I6ICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuXG5cbi8vLS0gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuLy9cbi8vIE5vdGU6IFRoZXNlIHZhcmlhYmxlcyBhcmUgbm90IGdlbmVyYXRlZCBpbnRvIHRoZSBDdXN0b21pemVyLlxuXG4kemluZGV4LW5hdmJhcjogICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuJHppbmRleC1uYXZiYXItZml4ZWQ6ICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2dyb3VuZDogIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuXG5cbi8vPT0gTWVkaWEgcXVlcmllcyBicmVha3BvaW50c1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBicmVha3BvaW50cyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSwgYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmVcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14c2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXhzOiAgICAgICAgICAgICAgICAgIDQ4MHB4ICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzLW1pbmAgYXMgb2YgdjMuMi4wXG4kc2NyZWVuLXhzLW1pbjogICAgICAgICAgICAgICRzY3JlZW4teHMgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tcGhvbmVgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1waG9uZTogICAgICAgICAgICAgICAkc2NyZWVuLXhzLW1pbiAhZGVmYXVsdDtcblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tc21gIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1zbTogICAgICAgICAgICAgICAgICA3NjhweCAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1zbSAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi10YWJsZXRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi10YWJsZXQ6ICAgICAgICAgICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1tZGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLW1kOiAgICAgICAgICAgICAgICAgIDk5MnB4ICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICAkc2NyZWVuLW1kICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1kZXNrdG9wOiAgICAgICAgICAgICAkc2NyZWVuLW1kLW1pbiAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGdgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZzogICAgICAgICAgICAgICAgICAxMjAwcHggIWRlZmF1bHQ7XG4kc2NyZWVuLWxnLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbGcgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGctZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnLWRlc2t0b3A6ICAgICAgICAgICRzY3JlZW4tbGctbWluICFkZWZhdWx0O1xuXG4vLyBTbyBtZWRpYSBxdWVyaWVzIGRvbid0IG92ZXJsYXAgd2hlbiByZXF1aXJlZCwgcHJvdmlkZSBhIG1heGltdW1cbiRzY3JlZW4teHMtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tc20tbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLW1kLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1sZy1taW4gLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IEdyaWQgc3lzdGVtXG4vL1xuLy8jIyBEZWZpbmUgeW91ciBjdXN0b20gcmVzcG9uc2l2ZSBncmlkLlxuXG4vLyoqIE51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGJldHdlZW4gY29sdW1ucy4gR2V0cyBkaXZpZGVkIGluIGhhbGYgZm9yIHRoZSBsZWZ0IGFuZCByaWdodC5cbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAzMHB4ICFkZWZhdWx0O1xuLy8gTmF2YmFyIGNvbGxhcHNlXG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVjb21lcyB1bmNvbGxhcHNlZC5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQ6ICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWdpbnMgY29sbGFwc2luZy5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4OiAoJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29udGFpbmVyIHNpemVzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbiRjb250YWluZXItdGFibGV0OiAgICAgICAgICAgICAoNzIwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tc20tbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLXNtOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci10YWJsZXQgIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4kY29udGFpbmVyLWRlc2t0b3A6ICAgICAgICAgICAgKDk0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLW1kLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1tZDogICAgICAgICAgICAgICAgICRjb250YWluZXItZGVza3RvcCAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4kY29udGFpbmVyLWxhcmdlLWRlc2t0b3A6ICAgICAgKDExNDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1sZy1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbGc6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWxhcmdlLWRlc2t0b3AgIWRlZmF1bHQ7XG5cblxuLy89PSBOYXZiYXJcbi8vXG4vLyMjXG5cbi8vIEJhc2ljcyBvZiBhIG5hdmJhclxuJG5hdmJhci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICA1MHB4ICFkZWZhdWx0O1xuJG5hdmJhci1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAkbGluZS1oZWlnaHQtY29tcHV0ZWQgIWRlZmF1bHQ7XG4kbmF2YmFyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgIGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSkgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICgoJG5hdmJhci1oZWlnaHQgLSAkbGluZS1oZWlnaHQtY29tcHV0ZWQpIC8gMikgIWRlZmF1bHQ7XG4kbmF2YmFyLWNvbGxhcHNlLW1heC1oZWlnaHQ6ICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICNmOGY4ZjggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgbGlua3NcbiRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgYnJhbmQgbGFiZWxcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgdG9nZ2xlXG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAjODg4ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PT0gSW52ZXJ0ZWQgbmF2YmFyXG4vLyBSZXNldCBpbnZlcnRlZCBuYXZiYXIgYmFzaWNzXG4kbmF2YmFyLWludmVyc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICMyMjIgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDEwJSkgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBsaW5rc1xuJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgYnJhbmQgbGFiZWxcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgdG9nZ2xlXG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cblxuLy89PSBOYXZzXG4vL1xuLy8jI1xuXG4vLz09PSBTaGFyZWQgbmF2IHN0eWxlc1xuJG5hdi1saW5rLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLz09IFRhYnNcbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgI2RkZCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I6ICAgICAkYm9keS1iZyAhZGVmYXVsdDtcblxuLy89PSBQaWxsc1xuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdpbmF0aW9uXG4vL1xuLy8jI1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXI6ICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2VyXG4vL1xuLy8jI1xuXG4kcGFnZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1iZyAhZGVmYXVsdDtcbiRwYWdlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJvcmRlciAhZGVmYXVsdDtcbiRwYWdlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRwYWdlci1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kcGFnZXItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnZXItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cbiRwYWdlci1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vPT0gSnVtYm90cm9uXG4vL1xuLy8jI1xuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWhlYWRpbmctY29sb3I6ICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1mb250LXNpemU6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS41KSkgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWhlYWRpbmctZm9udC1zaXplOiAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiA0LjUpKSAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcbi8vXG4vLyMjIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxuXG4kc3RhdGUtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAgICAjM2M3NjNkICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgI2RmZjBkOCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1zdWNjZXNzLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1pbmZvLXRleHQ6ICAgICAgICAgICAgICAgICMzMTcwOGYgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1iZzogICAgICAgICAgICAgICAgICAjZDllZGY3ICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWluZm8tYmcsIC0xMCksIDclKSAhZGVmYXVsdDtcblxuJHN0YXRlLXdhcm5pbmctdGV4dDogICAgICAgICAgICAgIzhhNmQzYiAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtd2FybmluZy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAgICAjYTk0NDQyICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1iZzogICAgICAgICAgICAgICAgI2YyZGVkZSAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1kYW5nZXItYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuXG4vLz09IFRvb2x0aXBzXG4vL1xuLy8jI1xuXG4vLyoqIFRvb2x0aXAgbWF4IHdpZHRoXG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCB0ZXh0IGNvbG9yXG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGJhY2tncm91bmQgY29sb3JcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcblxuLy8qKiBUb29sdGlwIGFycm93IHdpZHRoXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICA1cHggIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYXJyb3cgY29sb3JcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG5cbi8vPT0gUG9wb3ZlcnNcbi8vXG4vLyMjXG5cbi8vKiogUG9wb3ZlciBib2R5IGJhY2tncm91bmQgY29sb3JcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBtYXhpbXVtIHdpZHRoXG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGJvcmRlciBjb2xvclxuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4yKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBmYWxsYmFjayBib3JkZXIgY29sb3JcbiRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgI2NjYyAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIHRpdGxlIGJhY2tncm91bmQgY29sb3JcbiRwb3BvdmVyLXRpdGxlLWJnOiAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoOiAgICAgICAgICAgKCRwb3BvdmVyLWFycm93LXdpZHRoICsgMSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgICAgZmFkZV9pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIDAuMDUpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGZhbGxiYWNrIGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjogIGRhcmtlbigkcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3IsIDIwJSkgIWRlZmF1bHQ7XG5cblxuLy89PSBMYWJlbHNcbi8vXG4vLyMjXG5cbi8vKiogRGVmYXVsdCBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGVmYXVsdC1iZzogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogUHJpbWFyeSBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtcHJpbWFyeS1iZzogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtc3VjY2Vzcy1iZzogICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbi8vKiogSW5mbyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtaW5mby1iZzogICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbi8vKiogV2FybmluZyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtd2FybmluZy1iZzogICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kYW5nZXItYmc6ICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBsYWJlbCB0ZXh0IGNvbG9yXG4kbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IHRleHQgY29sb3Igb2YgYSBsaW5rZWQgbGFiZWxcbiRsYWJlbC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBNb2RhbHNcbi8vXG4vLyMjXG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgdGl0bGVcbiRtb2RhbC10aXRsZS1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIHRpdGxlIGxpbmUtaGVpZ2h0XG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIGNvbnRlbnQgYXJlYVxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvclxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4yKSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3IgKipmb3IgSUU4KipcbiRtb2RhbC1jb250ZW50LWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBNb2RhbCBiYWNrZHJvcCBiYWNrZ3JvdW5kIGNvbG9yXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBiYWNrZHJvcCBvcGFjaXR5XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAuNSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgaGVhZGVyIGJvcmRlciBjb2xvclxuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgI2U1ZTVlNSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgZm9vdGVyIGJvcmRlciBjb2xvclxuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgIDkwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgNjAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuXG4vLz09IEFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nOiAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgYm9sZCAhZGVmYXVsdDtcblxuJGFsZXJ0LXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtaW5mby1iZzogICAgICAgICAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC13YXJuaW5nLWJnOiAgICAgICAgICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWRhbmdlci1iZzogICAgICAgICAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcbiRhbGVydC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xuXG5cbi8vPT0gUHJvZ3Jlc3MgYmFyc1xuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSB3aG9sZSBwcm9ncmVzcyBjb21wb25lbnRcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFByb2dyZXNzIGJhciB0ZXh0IGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBWYXJpYWJsZSBmb3Igc2V0dGluZyByb3VuZGVkIGNvcm5lcnMgb24gcHJvZ3Jlc3MgYmFyLlxuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIFN1Y2Nlc3MgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmc6ICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbi8vKiogV2FybmluZyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItd2FybmluZy1iZzogICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZzogICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuLy8qKiBJbmZvIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1pbmZvLWJnOiAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG5cblxuLy89PSBMaXN0IGdyb3VwXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb24gYC5saXN0LWdyb3VwLWl0ZW1gXG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIGAubGlzdC1ncm91cC1pdGVtYCBib3JkZXIgY29sb3JcbiRsaXN0LWdyb3VwLWJvcmRlcjogICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbi8vKiogTGlzdCBncm91cCBib3JkZXIgcmFkaXVzXG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBzaW5nbGUgbGlzdCBpdGVtcyBvbiBob3ZlclxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3Igb2YgYWN0aXZlIGxpc3QgZWxlbWVudHNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXI6ICAgICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3I6ICBsaWdodGVuKCRsaXN0LWdyb3VwLWFjdGl2ZS1iZywgNDAlKSAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1saW5rLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yOiAgICRsaXN0LWdyb3VwLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I6ICMzMzMgIWRlZmF1bHQ7XG5cblxuLy89PSBQYW5lbHNcbi8vXG4vLyMjXG5cbiRwYW5lbC1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtYm9keS1wYWRkaW5nOiAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJHBhbmVsLWhlYWRpbmctcGFkZGluZzogICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xuJHBhbmVsLWZvb3Rlci1wYWRkaW5nOiAgICAgICAgJHBhbmVsLWhlYWRpbmctcGFkZGluZyAhZGVmYXVsdDtcbiRwYW5lbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBlbGVtZW50cyB3aXRoaW4gcGFuZWxzXG4kcGFuZWwtaW5uZXItYm9yZGVyOiAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJHBhbmVsLWZvb3Rlci1iZzogICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuJHBhbmVsLWRlZmF1bHQtdGV4dDogICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWJvcmRlcjogICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZGVmYXVsdC1oZWFkaW5nLWJnOiAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtcHJpbWFyeS10ZXh0OiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLXByaW1hcnktYm9yZGVyOiAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnOiAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhbmVsLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmc6ICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWluZm8taGVhZGluZy1iZzogICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc6ICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuXG5cbi8vPT0gVGh1bWJuYWlsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGltYWdlXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBiYWNrZ3JvdW5kIGNvbG9yXG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJvcmRlciBjb2xvclxuJHRodW1ibmFpbC1ib3JkZXI6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJvcmRlciByYWRpdXNcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQ3VzdG9tIHRleHQgY29sb3IgZm9yIHRodW1ibmFpbCBjYXB0aW9uc1xuJHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yOiAgICAgJHRleHQtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgY2FwdGlvblxuJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc6ICAgOXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gV2VsbHNcbi8vXG4vLyMjXG5cbiR3ZWxsLWJnOiAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kd2VsbC1ib3JkZXI6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHdlbGwtYmcsIDclKSAhZGVmYXVsdDtcblxuXG4vLz09IEJhZGdlc1xuLy9cbi8vIyNcblxuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTGlua2VkIGJhZGdlIHRleHQgY29sb3Igb24gaG92ZXJcbiRiYWRnZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYmFkZ2UtYmc6ICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBCYWRnZSB0ZXh0IGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xuJGJhZGdlLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhZGdlIGJhY2tncm91bmQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWJnOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGJhZGdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgMSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBCcmVhZGNydW1ic1xuLy9cbi8vIyNcblxuJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbDogICA4cHggIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw6IDE1cHggIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgYmFja2dyb3VuZCBjb2xvclxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBCcmVhZGNydW1iIHRleHQgY29sb3JcbiRicmVhZGNydW1iLWNvbG9yOiAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBjdXJyZW50IHBhZ2UgaW4gdGhlIGJyZWFkY3J1bWJcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFRleHR1YWwgc2VwYXJhdG9yIGZvciBiZXR3ZWVuIGJyZWFkY3J1bWIgZWxlbWVudHNcbiRicmVhZGNydW1iLXNlcGFyYXRvcjogICAgICAgICAgXCIvXCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDYXJvdXNlbFxuLy9cbi8vIyNcblxuJGNhcm91c2VsLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKDAsMCwwLC42KSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2xvc2Vcbi8vXG4vLyMjXG5cbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgMCAxcHggMCAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29kZVxuLy9cbi8vIyNcblxuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgI2M3MjU0ZSAhZGVmYXVsdDtcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICNmOWYyZjQgIWRlZmF1bHQ7XG5cbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG4kcHJlLWJnOiAgICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRwcmUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLz09IFR5cGVcbi8vXG4vLyMjXG5cbi8vKiogSG9yaXpvbnRhbCBvZmZzZXQgZm9yIGZvcm1zIGFuZCBsaXN0cy5cbiRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWw6IDE4MHB4ICFkZWZhdWx0O1xuLy8qKiBUZXh0IG11dGVkIGNvbG9yXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXMgYm9yZGVyIGNvbG9yXG4kYWJici1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogSGVhZGluZ3Mgc21hbGwgY29sb3JcbiRoZWFkaW5ncy1zbWFsbC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIHNtYWxsIGNvbG9yXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBmb250IHNpemVcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBib3JkZXIgY29sb3JcbiRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjogICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFBhZ2UgaGVhZGVyIGJvcmRlciBjb2xvclxuJHBhZ2UtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogV2lkdGggb2YgaG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0IHRpdGxlc1xuJGRsLWhvcml6b250YWwtb2Zmc2V0OiAgICAgICAgJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbCAhZGVmYXVsdDtcbi8vKiogUG9pbnQgYXQgd2hpY2ggLmRsLWhvcml6b250YWwgYmVjb21lcyBob3Jpem9udGFsXG4kZGwtaG9yaXpvbnRhbC1icmVha3BvaW50OiAgICAkZ3JpZC1mbG9hdC1icmVha3BvaW50ICFkZWZhdWx0O1xuLy8qKiBIb3Jpem9udGFsIGxpbmUgY29sb3IuXG4kaHItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuIiwiLy8gTWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJtaXhpbnMvaGlkZS10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL29wYWNpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGFiZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LWZpbHRlclwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzcG9uc2l2ZS12aXNpYmlsaXR5XCI7XG5AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFiLWZvY3VzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1lbXBoYXNpc1wiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LW92ZXJmbG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL3ZlbmRvci1wcmVmaXhlc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0c1wiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhbmVsc1wiO1xuQGltcG9ydCBcIm1peGlucy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LWRpdmlkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcHJvZ3Jlc3MtYmFyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xuXG4vLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2NlbnRlci1ibG9ja1wiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtdmVydGljYWwtYWxpZ25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZC1mcmFtZXdvcmtcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZFwiO1xuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG4vL1xuLy8gSGVhZHMgdXAhIHYzIGxhdW5jaGVkIHdpdGggb25seSBgLmhpZGUtdGV4dCgpYCwgYnV0IHBlciBvdXIgcGF0dGVybiBmb3Jcbi8vIG1peGlucyBiZWluZyByZXVzZWQgYXMgY2xhc3NlcyB3aXRoIHRoZSBzYW1lIG5hbWUsIHRoaXMgZG9lc24ndCBob2xkIHVwLiBBc1xuLy8gb2YgdjMuMC4xIHdlIGhhdmUgYWRkZWQgYC50ZXh0LWhpZGUoKWAgYW5kIGRlcHJlY2F0ZWQgYC5oaWRlLXRleHQoKWAuXG4vL1xuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9jb21taXQvYWEwMzk2ZWFlNzU3XG5cbi8vIERlcHJlY2F0ZWQgYXMgb2YgdjMuMC4xIChoYXMgYmVlbiByZW1vdmVkIGluIHY0KVxuQG1peGluIGhpZGUtdGV4dCgpIHtcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi8vIE5ldyBtaXhpbiB0byB1c2UgYXMgb2YgdjMuMC4xXG5AbWl4aW4gdGV4dC1oaWRlKCkge1xuICBAaW5jbHVkZSBoaWRlLXRleHQ7XG59XG4iLCIvLyBPcGFjaXR5XG5cbkBtaXhpbiBvcGFjaXR5KCRvcGFjaXR5KSB7XG4gIG9wYWNpdHk6ICRvcGFjaXR5O1xuICAvLyBJRTggZmlsdGVyXG4gICRvcGFjaXR5LWllOiAoJG9wYWNpdHkgKiAxMDApO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9JG9wYWNpdHktaWUpO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5AbWl4aW4gaW1nLXJlc3BvbnNpdmUoJGRpc3BsYXk6IGJsb2NrKSB7XG4gIGRpc3BsYXk6ICRkaXNwbGF5O1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIGhlaWdodDogYXV0bzsgLy8gUGFydCAyOiBTY2FsZSB0aGUgaGVpZ2h0IGFjY29yZGluZyB0byB0aGUgd2lkdGgsIG90aGVyd2lzZSB5b3UgZ2V0IHN0cmV0Y2hpbmdcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuIE5vdGUgdGhhdCB0aGVcbi8vIHNwZWxsaW5nIG9mIGBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW9gIGlzIGludGVudGlvbmFsLlxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMXh9XCIpLCBcIiN7JGZpbGUtMXh9XCIpKTtcblxuICBAbWVkaWFcbiAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1pbWFnZS1wYXRoKFwiI3skZmlsZS0yeH1cIiksIFwiI3skZmlsZS0yeH1cIikpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbn1cbiIsIi8vIExhYmVsc1xuXG5AbWl4aW4gbGFiZWwtdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gICZbaHJlZl0ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmVzZXQgZmlsdGVycyBmb3IgSUVcbi8vXG4vLyBXaGVuIHlvdSBuZWVkIHRvIHJlbW92ZSBhIGdyYWRpZW50IGJhY2tncm91bmQsIGRvIG5vdCBmb3JnZXQgdG8gdXNlIHRoaXMgdG8gcmVzZXRcbi8vIHRoZSBJRSBmaWx0ZXIgZm9yIElFOSBhbmQgYmVsb3cuXG5cbkBtaXhpbiByZXNldC1maWx0ZXIoKSB7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KGVuYWJsZWQgPSBmYWxzZSk7XG59XG4iLCIvLyBSZXNpemUgYW55dGhpbmdcblxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XG4gIHJlc2l6ZTogJGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFBlciBDU1MzIFVJLCBgcmVzaXplYCBvbmx5IGFwcGxpZXMgd2hlbiBgb3ZlcmZsb3dgIGlzbid0IGB2aXNpYmxlYFxufVxuIiwiLy8gUmVzcG9uc2l2ZSB1dGlsaXRpZXNcblxuLy9cbi8vIE1vcmUgZWFzaWx5IGluY2x1ZGUgYWxsIHRoZSBzdGF0ZXMgZm9yIHJlc3BvbnNpdmUtdXRpbGl0aWVzLmxlc3MuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiByZXNwb25zaXZlLXZpc2liaWxpdHkoJHBhcmVudCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIHRhYmxlI3skcGFyZW50fSAgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRyI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0aCN7JHBhcmVudH0sXG4gIHRkI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJHBhcmVudCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIFNpemluZyBzaG9ydGN1dHNcblxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0KSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbn1cblxuQG1peGluIHNxdWFyZSgkc2l6ZSkge1xuICBAaW5jbHVkZSBzaXplKCRzaXplLCAkc2l6ZSk7XG59XG4iLCIvLyBXZWJLaXQtc3R5bGUgZm9jdXNcblxuQG1peGluIHRhYi1mb2N1cygpIHtcbiAgLy8gV2ViS2l0LXNwZWNpZmljLiBPdGhlciBicm93c2VycyB3aWxsIGtlZXAgdGhlaXIgZGVmYXVsdCBvdXRsaW5lIHN0eWxlLlxuICAvLyAoSW5pdGlhbGx5IHRyaWVkIHRvIGFsc28gZm9yY2UgZGVmYXVsdCB2aWEgYG91dGxpbmU6IGluaXRpYWxgLFxuICAvLyBidXQgdGhhdCBzZWVtcyB0byBlcnJvbmVvdXNseSByZW1vdmUgdGhlIG91dGxpbmUgaW4gRmlyZWZveCBhbHRvZ2V0aGVyLilcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0KCkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuIiwiLy8gVHlwb2dyYXBoeVxuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gVGV4dCBvdmVyZmxvd1xuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC1vdmVyZmxvdygpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBWZW5kb3IgUHJlZml4ZXNcbi8vXG4vLyBBbGwgdmVuZG9yIG1peGlucyBhcmUgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgZHVlIHRvIHRoZSBpbnRyb2R1Y3Rpb24gb2Zcbi8vIEF1dG9wcmVmaXhlciBpbiBvdXIgR3J1bnRmaWxlLiBUaGV5IGhhdmUgYmVlbiByZW1vdmVkIGluIHY0LlxuXG4vLyAtIEFuaW1hdGlvbnNcbi8vIC0gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gLSBCb3ggc2hhZG93XG4vLyAtIEJveCBzaXppbmdcbi8vIC0gQ29udGVudCBjb2x1bW5zXG4vLyAtIEh5cGhlbnNcbi8vIC0gUGxhY2Vob2xkZXIgdGV4dFxuLy8gLSBUcmFuc2Zvcm1hdGlvbnNcbi8vIC0gVHJhbnNpdGlvbnNcbi8vIC0gVXNlciBTZWxlY3RcblxuXG4vLyBBbmltYXRpb25zXG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgLW8tYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tbmFtZSgkbmFtZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogJG5hbWU7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJGRlbGF5KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCgkaXRlcmF0aW9uLWNvdW50KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xufVxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsLW1vZGUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG59XG5cbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXG5cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCR2aXNpYmlsaXR5KSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG59XG5cbi8vIERyb3Agc2hhZG93c1xuLy9cbi8vIE5vdGU6IERlcHJlY2F0ZWQgYC5ib3gtc2hhZG93KClgIGFzIG9mIHYzLjEuMCBzaW5jZSBhbGwgb2YgQm9vdHN0cmFwJ3Ncbi8vIHN1cHBvcnRlZCBicm93c2VycyB0aGF0IGhhdmUgYm94IHNoYWRvdyBjYXBhYmlsaXRpZXMgbm93IHN1cHBvcnQgaXQuXG5cbkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkc2hhZG93OyAvLyBpT1MgPDQuMyAmIEFuZHJvaWQgPDQuMVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG59XG5cbi8vIEJveCBzaXppbmdcbkBtaXhpbiBib3gtc2l6aW5nKCRib3htb2RlbCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgICAgICAgYm94LXNpemluZzogJGJveG1vZGVsO1xufVxuXG4vLyBDU1MzIENvbnRlbnQgQ29sdW1uc1xuQG1peGluIGNvbnRlbnQtY29sdW1ucygkY29sdW1uLWNvdW50LCAkY29sdW1uLWdhcDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAtbW96LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgICAgICBjb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gIC13ZWJraXQtY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgIC1tb3otY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgICAgICAgY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG59XG5cbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXG5AbWl4aW4gaHlwaGVucygkbW9kZTogYXV0bykge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogJG1vZGU7XG4gICAgIC1tb3otaHlwaGVuczogJG1vZGU7XG4gICAgICAtbXMtaHlwaGVuczogJG1vZGU7IC8vIElFMTArXG4gICAgICAgLW8taHlwaGVuczogJG1vZGU7XG4gICAgICAgICAgaHlwaGVuczogJG1vZGU7XG59XG5cbi8vIFBsYWNlaG9sZGVyIHRleHRcbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3I6ICRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcikge1xuICAvLyBGaXJlZm94XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgb3BhY2l0eTogMTsgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvbnNcbkBtaXhpbiBzY2FsZSgkcmF0aW8uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG59XG5cbkBtaXhpbiBzY2FsZVgoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbn1cbkBtaXhpbiBzY2FsZVkoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbn1cbkBtaXhpbiBza2V3KCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzQ4ODU7IElFOStcbiAgICAgICAtby10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZSgkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG59XG5AbWl4aW4gcm90YXRlKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVgoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVkoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xufVxuQG1peGluIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjsgLy8gSUU5IG9ubHlcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG5cbi8vIFRyYW5zaXRpb25zXG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkdHJhbnNpdGlvbi1wcm9wZXJ0eS4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRyYW5zaXRpb24tZGVsYXkpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0cmFuc2l0aW9uLWR1cmF0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdHJhbnNmb3JtKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbn1cblxuXG4vLyBVc2VyIHNlbGVjdFxuLy8gRm9yIHNlbGVjdGluZyB0ZXh0IG9uIHRoZSBwYWdlXG5cbkBtaXhpbiB1c2VyLXNlbGVjdCgkc2VsZWN0KSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7IC8vIElFMTArXG4gICAgICAgICAgdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG59XG4iLCIvLyBBbGVydHNcblxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICR0ZXh0LWNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkdGV4dC1jb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkY29sb3IsICRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDE3JSk7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgICB9XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuIiwiLy8gUGFuZWxzXG5cbkBtaXhpbiBwYW5lbC12YXJpYW50KCRib3JkZXIsICRoZWFkaW5nLXRleHQtY29sb3IsICRoZWFkaW5nLWJnLWNvbG9yLCAkaGVhZGluZy1ib3JkZXIpIHtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICYgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkaGVhZGluZy1ib3JkZXI7XG5cbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBjb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmID4gLnBhbmVsLWZvb3RlciB7XG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gID4gbGkge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgfVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiwgYnV0dG9uJiB0byBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9XG4gIH1cblxuICBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgfVxuICAgICYuYWN0aXZlLFxuICAgICYuYWN0aXZlOmhvdmVyLFxuICAgICYuYWN0aXZlOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICNlNWU1ZTUpIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbn1cbiIsIi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcbi8vXG4vLyBVc2VkIGluIGZvcm1zLmxlc3MgdG8gZ2VuZXJhdGUgdGhlIGZvcm0gdmFsaWRhdGlvbiBDU1MgZm9yIHdhcm5pbmdzLCBlcnJvcnMsXG4vLyBhbmQgc3VjY2Vzc2VzLlxuXG5AbWl4aW4gZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHRleHQtY29sb3I6ICM1NTUsICRib3JkZXItY29sb3I6ICNjY2MsICRiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1KSB7XG4gIC8vIENvbG9yIHRoZSBsYWJlbCBhbmQgaGVscCB0ZXh0XG4gIC5oZWxwLWJsb2NrLFxuICAuY29udHJvbC1sYWJlbCxcbiAgLnJhZGlvLFxuICAuY2hlY2tib3gsXG4gIC5yYWRpby1pbmxpbmUsXG4gIC5jaGVja2JveC1pbmxpbmUsXG4gICYucmFkaW8gbGFiZWwsXG4gICYuY2hlY2tib3ggbGFiZWwsXG4gICYucmFkaW8taW5saW5lIGxhYmVsLFxuICAmLmNoZWNrYm94LWlubGluZSBsYWJlbCAge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxuICAvLyBTZXQgdGhlIGJvcmRlciBhbmQgYm94IHNoYWRvdyBvbiBzcGVjaWZpYyBpbnB1dHMgdG8gbWF0Y2hcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpOyAvLyBSZWRlY2xhcmUgc28gdHJhbnNpdGlvbnMgd29ya1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMTAlKTtcbiAgICAgICRzaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgNnB4IGxpZ2h0ZW4oJGJvcmRlci1jb2xvciwgMjAlKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XG4gICAgfVxuICB9XG4gIC8vIFNldCB2YWxpZGF0aW9uIHN0YXRlcyBhbHNvIGZvciBhZGRvbnNcbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG4gIC8vIE9wdGlvbmFsIGZlZWRiYWNrIGljb25cbiAgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWJvcmRlci1mb2N1c2AgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGNvbG9yOiAkaW5wdXQtYm9yZGVyLWZvY3VzKSB7XG4gICRjb2xvci1yZ2JhOiByZ2JhKHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvciksIC42KTtcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgOHB4ICRjb2xvci1yZ2JhKTtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gUmVsYXRpdmUgdGV4dCBzaXplLCBwYWRkaW5nLCBhbmQgYm9yZGVyLXJhZGlpIGNoYW5nZXMgZm9yIGZvcm0gY29udHJvbHMuIEZvclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIGlucHV0LXNpemUoJHBhcmVudCwgJGlucHV0LWhlaWdodCwgJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICBzZWxlY3QjeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICB0ZXh0YXJlYSN7JHBhcmVudH0sXG4gIHNlbGVjdFttdWx0aXBsZV0jeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIi8vIFByb2dyZXNzIGJhcnNcblxuQG1peGluIHByb2dyZXNzLWJhci12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgLy8gRGVwcmVjYXRlZCBwYXJlbnQgY2xhc3MgcmVxdWlyZW1lbnQgYXMgb2YgdjMuMi4wXG4gIC5wcm9ncmVzcy1zdHJpcGVkICYge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQ7XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUgPiB0aGVhZCA+IHRyLFxuICAudGFibGUgPiB0Ym9keSA+IHRyLFxuICAudGFibGUgPiB0Zm9vdCA+IHRyIHtcbiAgICA+IHRkLiN7JHN0YXRlfSxcbiAgICA+IHRoLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfSA+IHRkLFxuICAgICYuI3skc3RhdGV9ID4gdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgPiB0aC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0ZCxcbiAgICAmOmhvdmVyID4gLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG4iLCIvLyBHcmFkaWVudHNcblxuXG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd25cbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93blxufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbn1cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG59XG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICM1NTUsICRvdXRlci1jb2xvcjogIzMzMykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gQ2xlYXJmaXhcbi8vXG4vLyBGb3IgbW9kZXJuIGJyb3dzZXJzXG4vLyAxLiBUaGUgc3BhY2UgY29udGVudCBpcyBvbmUgd2F5IHRvIGF2b2lkIGFuIE9wZXJhIGJ1ZyB3aGVuIHRoZVxuLy8gICAgY29udGVudGVkaXRhYmxlIGF0dHJpYnV0ZSBpcyBpbmNsdWRlZCBhbnl3aGVyZSBlbHNlIGluIHRoZSBkb2N1bWVudC5cbi8vICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xuLy8gICAgdGhhdCBhcmUgY2xlYXJmaXhlZC5cbi8vIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4vLyAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4vL1xuLy8gU291cmNlOiBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay9cblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7IC8vIDFcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMlxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG4iLCIvLyBDZW50ZXItYWxpZ24gYSBibG9jayBsZXZlbCBlbGVtZW50XG5cbkBtaXhpbiBjZW50ZXItYmxvY2soKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuIiwiLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXG4vL1xuLy8gVmVydGljYWxseSBjZW50ZXIgZWxlbWVudHMgaW4gdGhlIG5hdmJhci5cbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigzMHB4KTtgIHRvIGNhbGN1bGF0ZSB0aGUgYXBwcm9wcmlhdGUgdG9wIG1hcmdpbi5cblxuQG1peGluIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkZWxlbWVudC1oZWlnaHQpIHtcbiAgbWFyZ2luLXRvcDogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGk6IDEsICRsaXN0OiBcIi5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgLy8gSW5uZXIgZ3V0dGVyIHZpYSBwYWRkaW5nXG4gICAgcGFkZGluZy1sZWZ0OiAgY2VpbCgoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cbn1cblxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MsICRpOiAxLCAkbGlzdDogXCIuY29sLSN7JGNsYXNzfS0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wtI3skY2xhc3N9LSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuQG1peGluIGNhbGMtZ3JpZC1jb2x1bW4oJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XG4gIEBpZiAoJHR5cGUgPT0gd2lkdGgpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LSN7JGluZGV4fSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtI3skaW5kZXh9IHtcbiAgICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0wIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0jeyRpbmRleH0ge1xuICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0wIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IG9mZnNldCkge1xuICAgIC5jb2wtI3skY2xhc3N9LW9mZnNldC0jeyRpbmRleH0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBsb29wLWdyaWQtY29sdW1ucygkY29sdW1ucywgJGNsYXNzLCAkdHlwZSkge1xuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICBAaW5jbHVkZSBjYWxjLWdyaWQtY29sdW1uKCRpLCAkY2xhc3MsICR0eXBlKTtcbiAgfVxufVxuXG5cbi8vIENyZWF0ZSBncmlkIGZvciBzcGVjaWZpYyBjbGFzc1xuQG1peGluIG1ha2UtZ3JpZCgkY2xhc3MpIHtcbiAgQGluY2x1ZGUgZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcyk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgd2lkdGgpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1bGwpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1c2gpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIG9mZnNldCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcbkBtaXhpbiBjb250YWluZXItZml4ZWQoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogIGZsb29yKCgkZ3V0dGVyIC8gMikpO1xuICBwYWRkaW5nLXJpZ2h0OiBjZWlsKCgkZ3V0dGVyIC8gMikpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gQ3JlYXRlcyBhIHdyYXBwZXIgZm9yIGEgc2VyaWVzIG9mIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgbWFyZ2luLWxlZnQ6ICBjZWlsKCgkZ3V0dGVyIC8gLTIpKTtcbiAgbWFyZ2luLXJpZ2h0OiBmbG9vcigoJGd1dHRlciAvIC0yKSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgZXh0cmEgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2UteHMtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2Utc20tY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSB0aGUgbWVkaXVtIGNvbHVtbnNcbkBtaXhpbiBtYWtlLW1kLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIGxhcmdlIGNvbHVtbnNcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLy9cbi8vIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4vLyAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuLy8gICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuLy9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAxXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuLy9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8gSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuLy8gYW5kIEZpcmVmb3guXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuLy9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuLy8gMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuLy9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gMlxufVxuXG4vL1xuLy8gUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbi8vIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4vL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4vLyBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4vL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gTGlua3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbi8vXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLy9cbi8vIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbi8vIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbi8vXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vL1xuLy8gQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuLy8gY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4vL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vLyBFbWJlZGRlZCBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4vL1xuXG5pbWcge1xuICBib3JkZXI6IDA7XG59XG5cbi8vXG4vLyBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbi8vXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gR3JvdXBpbmcgY29udGVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuLy9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbi8vXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8vIEZvcm1zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbi8vIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbi8vXG5cbi8vXG4vLyAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbi8vIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4vLyAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAxXG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAzXG59XG5cbi8vXG4vLyBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuLy8gQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbi8vIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4vLyBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4vL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4vLyAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbi8vIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbi8vIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4vLyAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4vL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8vIDFcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxuICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbn1cblxuLy9cbi8vIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4vL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4vL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbi8vIHRoZSBVQSBzdHlsZXNoZWV0LlxuLy9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vL1xuLy8gSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuLy8gRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbi8vXG4vLyAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuLy8gMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbi8vXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbi8vIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4vLyBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4vL1xuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy9cbi8vIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy8gMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8yXG59XG5cbi8vXG4vLyBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbi8vIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbi8vIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbi8vXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuLy9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4vLyAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4vL1xuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbi8vXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8vXG4vLyBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4vLyBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbi8vXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vIFRhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiLyohIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzcyAqL1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6IGg1YnAuY29tL3Jcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBtZWRpYSBwcmludCB7XG4gICAgKixcbiAgICAqOmJlZm9yZSxcbiAgICAqOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSxcbiAgICBhOnZpc2l0ZWQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICBhW2hyZWZdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgfVxuXG4gICAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgICAvLyBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXG4gICAgYVtocmVmXj1cIiNcIl06YWZ0ZXIsXG4gICAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG5cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICB0aGVhZCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgLy8gaDVicC5jb20vdFxuICAgIH1cblxuICAgIHRyLFxuICAgIGltZyB7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgb3JwaGFuczogMztcbiAgICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5idG4sXG4gICAgLmRyb3B1cCA+IC5idG4ge1xuICAgICAgICA+IC5jYXJldCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxhYmVsIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgdGQsXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudGFibGUtYm9yZGVyZWQge1xuICAgICAgICB0aCxcbiAgICAgICAgdGQge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG59XG4iLCIvL1xuLy8gR2x5cGhpY29ucyBmb3IgQm9vdHN0cmFwXG4vL1xuLy8gU2luY2UgaWNvbnMgYXJlIGZvbnRzLCB0aGV5IGNhbiBiZSBwbGFjZWQgYW55d2hlcmUgdGV4dCBpcyBwbGFjZWQgYW5kIGFyZVxuLy8gdGh1cyBhdXRvbWF0aWNhbGx5IHNpemVkIHRvIG1hdGNoIHRoZSBzdXJyb3VuZGluZyBjaGlsZC4gVG8gdXNlLCBjcmVhdGUgYW5cbi8vIGlubGluZSBlbGVtZW50IHdpdGggdGhlIGFwcHJvcHJpYXRlIGNsYXNzZXMsIGxpa2Ugc286XG4vL1xuLy8gPGEgaHJlZj1cIiNcIj48c3BhbiBjbGFzcz1cImdseXBoaWNvbiBnbHlwaGljb24tc3RhclwiPjwvc3Bhbj4gU3RhcjwvYT5cblxuQGF0LXJvb3Qge1xuICAvLyBJbXBvcnQgdGhlIGZvbnRzXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICAgIHNyYzogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90JyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90JykpO1xuICAgIHNyYzogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90PyNpZWZpeCcpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LmVvdD8jaWVmaXgnKSkgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZjInKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmMicpKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmJyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZicpKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnR0ZicpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnR0ZicpKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5zdmcjI3skaWNvbi1mb250LXN2Zy1pZH0nKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5zdmcjI3skaWNvbi1mb250LXN2Zy1pZH0nKSkgZm9ybWF0KCdzdmcnKTtcbiAgfVxufVxuXG4vLyBDYXRjaGFsbCBiYXNlY2xhc3Ncbi5nbHlwaGljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLy8gSW5kaXZpZHVhbCBpY29uc1xuLmdseXBoaWNvbi1hc3RlcmlzayAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDAyYVwiOyB9IH1cbi5nbHlwaGljb24tcGx1cyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwMmJcIjsgfSB9XG4uZ2x5cGhpY29uLWV1cm8sXG4uZ2x5cGhpY29uLWV1ciAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMGFjXCI7IH0gfVxuLmdseXBoaWNvbi1taW51cyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjIxMlwiOyB9IH1cbi5nbHlwaGljb24tY2xvdWQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI2MDFcIjsgfSB9XG4uZ2x5cGhpY29uLWVudmVsb3BlICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNzA5XCI7IH0gfVxuLmdseXBoaWNvbi1wZW5jaWwgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjcwZlwiOyB9IH1cbi5nbHlwaGljb24tZ2xhc3MgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDFcIjsgfSB9XG4uZ2x5cGhpY29uLW11c2ljICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAyXCI7IH0gfVxuLmdseXBoaWNvbi1zZWFyY2ggICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwM1wiOyB9IH1cbi5nbHlwaGljb24taGVhcnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDVcIjsgfSB9XG4uZ2x5cGhpY29uLXN0YXIgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA2XCI7IH0gfVxuLmdseXBoaWNvbi1zdGFyLWVtcHR5ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwN1wiOyB9IH1cbi5nbHlwaGljb24tdXNlciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDhcIjsgfSB9XG4uZ2x5cGhpY29uLWZpbG0gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA5XCI7IH0gfVxuLmdseXBoaWNvbi10aC1sYXJnZSAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxMFwiOyB9IH1cbi5nbHlwaGljb24tdGggICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTFcIjsgfSB9XG4uZ2x5cGhpY29uLXRoLWxpc3QgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEyXCI7IH0gfVxuLmdseXBoaWNvbi1vayAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxM1wiOyB9IH1cbi5nbHlwaGljb24tcmVtb3ZlICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTRcIjsgfSB9XG4uZ2x5cGhpY29uLXpvb20taW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE1XCI7IH0gfVxuLmdseXBoaWNvbi16b29tLW91dCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxNlwiOyB9IH1cbi5nbHlwaGljb24tb2ZmICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTdcIjsgfSB9XG4uZ2x5cGhpY29uLXNpZ25hbCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE4XCI7IH0gfVxuLmdseXBoaWNvbi1jb2cgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxOVwiOyB9IH1cbi5nbHlwaGljb24tdHJhc2ggICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjBcIjsgfSB9XG4uZ2x5cGhpY29uLWhvbWUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIxXCI7IH0gfVxuLmdseXBoaWNvbi1maWxlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyMlwiOyB9IH1cbi5nbHlwaGljb24tdGltZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjNcIjsgfSB9XG4uZ2x5cGhpY29uLXJvYWQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI0XCI7IH0gfVxuLmdseXBoaWNvbi1kb3dubG9hZC1hbHQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyNVwiOyB9IH1cbi5nbHlwaGljb24tZG93bmxvYWQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjZcIjsgfSB9XG4uZ2x5cGhpY29uLXVwbG9hZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI3XCI7IH0gfVxuLmdseXBoaWNvbi1pbmJveCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyOFwiOyB9IH1cbi5nbHlwaGljb24tcGxheS1jaXJjbGUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjlcIjsgfSB9XG4uZ2x5cGhpY29uLXJlcGVhdCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMwXCI7IH0gfVxuLmdseXBoaWNvbi1yZWZyZXNoICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzMVwiOyB9IH1cbi5nbHlwaGljb24tbGlzdC1hbHQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzJcIjsgfSB9XG4uZ2x5cGhpY29uLWxvY2sgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMzXCI7IH0gfVxuLmdseXBoaWNvbi1mbGFnICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzNFwiOyB9IH1cbi5nbHlwaGljb24taGVhZHBob25lcyAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzVcIjsgfSB9XG4uZ2x5cGhpY29uLXZvbHVtZS1vZmYgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM2XCI7IH0gfVxuLmdseXBoaWNvbi12b2x1bWUtZG93biAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzN1wiOyB9IH1cbi5nbHlwaGljb24tdm9sdW1lLXVwICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzhcIjsgfSB9XG4uZ2x5cGhpY29uLXFyY29kZSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM5XCI7IH0gfVxuLmdseXBoaWNvbi1iYXJjb2RlICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0MFwiOyB9IH1cbi5nbHlwaGljb24tdGFnICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDFcIjsgfSB9XG4uZ2x5cGhpY29uLXRhZ3MgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQyXCI7IH0gfVxuLmdseXBoaWNvbi1ib29rICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0M1wiOyB9IH1cbi5nbHlwaGljb24tYm9va21hcmsgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDRcIjsgfSB9XG4uZ2x5cGhpY29uLXByaW50ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ1XCI7IH0gfVxuLmdseXBoaWNvbi1jYW1lcmEgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0NlwiOyB9IH1cbi5nbHlwaGljb24tZm9udCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDdcIjsgfSB9XG4uZ2x5cGhpY29uLWJvbGQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ4XCI7IH0gfVxuLmdseXBoaWNvbi1pdGFsaWMgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0OVwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC1oZWlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTBcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtd2lkdGggICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUxXCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1sZWZ0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1MlwiOyB9IH1cbi5nbHlwaGljb24tYWxpZ24tY2VudGVyICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTNcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLXJpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU0XCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1qdXN0aWZ5ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1NVwiOyB9IH1cbi5nbHlwaGljb24tbGlzdCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTZcIjsgfSB9XG4uZ2x5cGhpY29uLWluZGVudC1sZWZ0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU3XCI7IH0gfVxuLmdseXBoaWNvbi1pbmRlbnQtcmlnaHQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1OFwiOyB9IH1cbi5nbHlwaGljb24tZmFjZXRpbWUtdmlkZW8gICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTlcIjsgfSB9XG4uZ2x5cGhpY29uLXBpY3R1cmUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYwXCI7IH0gfVxuLmdseXBoaWNvbi1tYXAtbWFya2VyICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2MlwiOyB9IH1cbi5nbHlwaGljb24tYWRqdXN0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjNcIjsgfSB9XG4uZ2x5cGhpY29uLXRpbnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY0XCI7IH0gfVxuLmdseXBoaWNvbi1lZGl0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2NVwiOyB9IH1cbi5nbHlwaGljb24tc2hhcmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjZcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZWNrICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY3XCI7IH0gfVxuLmdseXBoaWNvbi1tb3ZlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2OFwiOyB9IH1cbi5nbHlwaGljb24tc3RlcC1iYWNrd2FyZCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjlcIjsgfSB9XG4uZ2x5cGhpY29uLWZhc3QtYmFja3dhcmQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcwXCI7IH0gfVxuLmdseXBoaWNvbi1iYWNrd2FyZCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3MVwiOyB9IH1cbi5nbHlwaGljb24tcGxheSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzJcIjsgfSB9XG4uZ2x5cGhpY29uLXBhdXNlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDczXCI7IH0gfVxuLmdseXBoaWNvbi1zdG9wICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3NFwiOyB9IH1cbi5nbHlwaGljb24tZm9yd2FyZCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzVcIjsgfSB9XG4uZ2x5cGhpY29uLWZhc3QtZm9yd2FyZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc2XCI7IH0gfVxuLmdseXBoaWNvbi1zdGVwLWZvcndhcmQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3N1wiOyB9IH1cbi5nbHlwaGljb24tZWplY3QgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzhcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tbGVmdCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc5XCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4MFwiOyB9IH1cbi5nbHlwaGljb24tcGx1cy1zaWduICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODFcIjsgfSB9XG4uZ2x5cGhpY29uLW1pbnVzLXNpZ24gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgyXCI7IH0gfVxuLmdseXBoaWNvbi1yZW1vdmUtc2lnbiAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4M1wiOyB9IH1cbi5nbHlwaGljb24tb2stc2lnbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODRcIjsgfSB9XG4uZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg1XCI7IH0gfVxuLmdseXBoaWNvbi1pbmZvLXNpZ24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4NlwiOyB9IH1cbi5nbHlwaGljb24tc2NyZWVuc2hvdCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODdcIjsgfSB9XG4uZ2x5cGhpY29uLXJlbW92ZS1jaXJjbGUgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg4XCI7IH0gfVxuLmdseXBoaWNvbi1vay1jaXJjbGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4OVwiOyB9IH1cbi5nbHlwaGljb24tYmFuLWNpcmNsZSAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTBcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LWxlZnQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkxXCI7IH0gfVxuLmdseXBoaWNvbi1hcnJvdy1yaWdodCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5MlwiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctdXAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTNcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LWRvd24gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk0XCI7IH0gfVxuLmdseXBoaWNvbi1zaGFyZS1hbHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5NVwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLWZ1bGwgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTZcIjsgfSB9XG4uZ2x5cGhpY29uLXJlc2l6ZS1zbWFsbCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk3XCI7IH0gfVxuLmdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwMVwiOyB9IH1cbi5nbHlwaGljb24tZ2lmdCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDJcIjsgfSB9XG4uZ2x5cGhpY29uLWxlYWYgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAzXCI7IH0gfVxuLmdseXBoaWNvbi1maXJlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwNFwiOyB9IH1cbi5nbHlwaGljb24tZXllLW9wZW4gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDVcIjsgfSB9XG4uZ2x5cGhpY29uLWV5ZS1jbG9zZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA2XCI7IH0gfVxuLmdseXBoaWNvbi13YXJuaW5nLXNpZ24gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwN1wiOyB9IH1cbi5nbHlwaGljb24tcGxhbmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDhcIjsgfSB9XG4uZ2x5cGhpY29uLWNhbGVuZGFyICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA5XCI7IH0gfVxuLmdseXBoaWNvbi1yYW5kb20gICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExMFwiOyB9IH1cbi5nbHlwaGljb24tY29tbWVudCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTFcIjsgfSB9XG4uZ2x5cGhpY29uLW1hZ25ldCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEyXCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLXVwICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExM1wiOyB9IH1cbi5nbHlwaGljb24tY2hldnJvbi1kb3duICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTRcIjsgfSB9XG4uZ2x5cGhpY29uLXJldHdlZXQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE1XCI7IH0gfVxuLmdseXBoaWNvbi1zaG9wcGluZy1jYXJ0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExNlwiOyB9IH1cbi5nbHlwaGljb24tZm9sZGVyLWNsb3NlICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTdcIjsgfSB9XG4uZ2x5cGhpY29uLWZvbGRlci1vcGVuICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE4XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtdmVydGljYWwgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExOVwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLWhvcml6b250YWwgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjBcIjsgfSB9XG4uZ2x5cGhpY29uLWhkZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIxXCI7IH0gfVxuLmdseXBoaWNvbi1idWxsaG9ybiAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyMlwiOyB9IH1cbi5nbHlwaGljb24tYmVsbCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjNcIjsgfSB9XG4uZ2x5cGhpY29uLWNlcnRpZmljYXRlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI0XCI7IH0gfVxuLmdseXBoaWNvbi10aHVtYnMtdXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyNVwiOyB9IH1cbi5nbHlwaGljb24tdGh1bWJzLWRvd24gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjZcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtcmlnaHQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI3XCI7IH0gfVxuLmdseXBoaWNvbi1oYW5kLWxlZnQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyOFwiOyB9IH1cbi5nbHlwaGljb24taGFuZC11cCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjlcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtZG93biAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMwXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctcmlnaHQgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzMVwiOyB9IH1cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LWxlZnQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzJcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy11cCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMzXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctZG93biAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzNFwiOyB9IH1cbi5nbHlwaGljb24tZ2xvYmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzVcIjsgfSB9XG4uZ2x5cGhpY29uLXdyZW5jaCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM2XCI7IH0gfVxuLmdseXBoaWNvbi10YXNrcyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzN1wiOyB9IH1cbi5nbHlwaGljb24tZmlsdGVyICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzhcIjsgfSB9XG4uZ2x5cGhpY29uLWJyaWVmY2FzZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM5XCI7IH0gfVxuLmdseXBoaWNvbi1mdWxsc2NyZWVuICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0MFwiOyB9IH1cbi5nbHlwaGljb24tZGFzaGJvYXJkICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDFcIjsgfSB9XG4uZ2x5cGhpY29uLXBhcGVyY2xpcCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQyXCI7IH0gfVxuLmdseXBoaWNvbi1oZWFydC1lbXB0eSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0M1wiOyB9IH1cbi5nbHlwaGljb24tbGluayAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDRcIjsgfSB9XG4uZ2x5cGhpY29uLXBob25lICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ1XCI7IH0gfVxuLmdseXBoaWNvbi1wdXNocGluICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0NlwiOyB9IH1cbi5nbHlwaGljb24tdXNkICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDhcIjsgfSB9XG4uZ2x5cGhpY29uLWdicCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ5XCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1MFwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hbHBoYWJldCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTFcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYWxwaGFiZXQtYWx0ICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUyXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LW9yZGVyICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1M1wiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1vcmRlci1hbHQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTRcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYXR0cmlidXRlcyAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU1XCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LWF0dHJpYnV0ZXMtYWx0IHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1NlwiOyB9IH1cbi5nbHlwaGljb24tdW5jaGVja2VkICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTdcIjsgfSB9XG4uZ2x5cGhpY29uLWV4cGFuZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU4XCI7IH0gfVxuLmdseXBoaWNvbi1jb2xsYXBzZS1kb3duICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1OVwiOyB9IH1cbi5nbHlwaGljb24tY29sbGFwc2UtdXAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjBcIjsgfSB9XG4uZ2x5cGhpY29uLWxvZy1pbiAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYxXCI7IH0gfVxuLmdseXBoaWNvbi1mbGFzaCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2MlwiOyB9IH1cbi5nbHlwaGljb24tbG9nLW91dCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjNcIjsgfSB9XG4uZ2x5cGhpY29uLW5ldy13aW5kb3cgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY0XCI7IH0gfVxuLmdseXBoaWNvbi1yZWNvcmQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2NVwiOyB9IH1cbi5nbHlwaGljb24tc2F2ZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjZcIjsgfSB9XG4uZ2x5cGhpY29uLW9wZW4gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY3XCI7IH0gfVxuLmdseXBoaWNvbi1zYXZlZCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2OFwiOyB9IH1cbi5nbHlwaGljb24taW1wb3J0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjlcIjsgfSB9XG4uZ2x5cGhpY29uLWV4cG9ydCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcwXCI7IH0gfVxuLmdseXBoaWNvbi1zZW5kICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3MVwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LWRpc2sgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzJcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1zYXZlZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTczXCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktcmVtb3ZlICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3NFwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LXNhdmUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzVcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1vcGVuICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc2XCI7IH0gfVxuLmdseXBoaWNvbi1jcmVkaXQtY2FyZCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3N1wiOyB9IH1cbi5nbHlwaGljb24tdHJhbnNmZXIgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzhcIjsgfSB9XG4uZ2x5cGhpY29uLWN1dGxlcnkgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc5XCI7IH0gfVxuLmdseXBoaWNvbi1oZWFkZXIgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4MFwiOyB9IH1cbi5nbHlwaGljb24tY29tcHJlc3NlZCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODFcIjsgfSB9XG4uZ2x5cGhpY29uLWVhcnBob25lICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgyXCI7IH0gfVxuLmdseXBoaWNvbi1waG9uZS1hbHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4M1wiOyB9IH1cbi5nbHlwaGljb24tdG93ZXIgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODRcIjsgfSB9XG4uZ2x5cGhpY29uLXN0YXRzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg1XCI7IH0gfVxuLmdseXBoaWNvbi1zZC12aWRlbyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4NlwiOyB9IH1cbi5nbHlwaGljb24taGQtdmlkZW8gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODdcIjsgfSB9XG4uZ2x5cGhpY29uLXN1YnRpdGxlcyAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg4XCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC1zdGVyZW8gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4OVwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtZG9sYnkgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTBcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLTUtMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkxXCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC02LTEgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5MlwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtNy0xICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTNcIjsgfSB9XG4uZ2x5cGhpY29uLWNvcHlyaWdodC1tYXJrICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk0XCI7IH0gfVxuLmdseXBoaWNvbi1yZWdpc3RyYXRpb24tbWFyayAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5NVwiOyB9IH1cbi5nbHlwaGljb24tY2xvdWQtZG93bmxvYWQgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTdcIjsgfSB9XG4uZ2x5cGhpY29uLWNsb3VkLXVwbG9hZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk4XCI7IH0gfVxuLmdseXBoaWNvbi10cmVlLWNvbmlmZXIgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5OVwiOyB9IH1cbi5nbHlwaGljb24tdHJlZS1kZWNpZHVvdXMgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDBcIjsgfSB9XG4uZ2x5cGhpY29uLWNkICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAxXCI7IH0gfVxuLmdseXBoaWNvbi1zYXZlLWZpbGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwMlwiOyB9IH1cbi5nbHlwaGljb24tb3Blbi1maWxlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDNcIjsgfSB9XG4uZ2x5cGhpY29uLWxldmVsLXVwICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA0XCI7IH0gfVxuLmdseXBoaWNvbi1jb3B5ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwNVwiOyB9IH1cbi5nbHlwaGljb24tcGFzdGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDZcIjsgfSB9XG4vLyBUaGUgZm9sbG93aW5nIDIgR2x5cGhpY29ucyBhcmUgb21pdHRlZCBmb3IgdGhlIHRpbWUgYmVpbmcgYmVjYXVzZVxuLy8gdGhleSBjdXJyZW50bHkgdXNlIFVuaWNvZGUgY29kZXBvaW50cyB0aGF0IGFyZSBvdXRzaWRlIHRoZVxuLy8gQmFzaWMgTXVsdGlsaW5ndWFsIFBsYW5lIChCTVApLiBPbGRlciBidWdneSB2ZXJzaW9ucyBvZiBXZWJLaXQgY2FuJ3QgaGFuZGxlXG4vLyBub24tQk1QIGNvZGVwb2ludHMgaW4gQ1NTIHN0cmluZyBlc2NhcGVzLCBhbmQgdGh1cyBjYW4ndCBkaXNwbGF5IHRoZXNlIHR3byBpY29ucy5cbi8vIE5vdGFibHksIHRoZSBidWcgYWZmZWN0cyBzb21lIG9sZGVyIHZlcnNpb25zIG9mIHRoZSBBbmRyb2lkIEJyb3dzZXIuXG4vLyBNb3JlIGluZm86IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTAxMDZcbi8vIC5nbHlwaGljb24tZG9vciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDFmNmFhXCI7IH0gfVxuLy8gLmdseXBoaWNvbi1rZXkgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMWY1MTFcIjsgfSB9XG4uZ2x5cGhpY29uLWFsZXJ0ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA5XCI7IH0gfVxuLmdseXBoaWNvbi1lcXVhbGl6ZXIgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMFwiOyB9IH1cbi5nbHlwaGljb24ta2luZyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTFcIjsgfSB9XG4uZ2x5cGhpY29uLXF1ZWVuICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjEyXCI7IH0gfVxuLmdseXBoaWNvbi1wYXduICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxM1wiOyB9IH1cbi5nbHlwaGljb24tYmlzaG9wICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTRcIjsgfSB9XG4uZ2x5cGhpY29uLWtuaWdodCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE1XCI7IH0gfVxuLmdseXBoaWNvbi1iYWJ5LWZvcm11bGEgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNlwiOyB9IH1cbi5nbHlwaGljb24tdGVudCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI2ZmFcIjsgfSB9XG4uZ2x5cGhpY29uLWJsYWNrYm9hcmQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE4XCI7IH0gfVxuLmdseXBoaWNvbi1iZWQgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxOVwiOyB9IH1cbi5nbHlwaGljb24tYXBwbGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGY4ZmZcIjsgfSB9XG4uZ2x5cGhpY29uLWVyYXNlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjIxXCI7IH0gfVxuLmdseXBoaWNvbi1ob3VyZ2xhc3MgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjMxYlwiOyB9IH1cbi5nbHlwaGljb24tbGFtcCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjNcIjsgfSB9XG4uZ2x5cGhpY29uLWR1cGxpY2F0ZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI0XCI7IH0gfVxuLmdseXBoaWNvbi1waWdneS1iYW5rICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNVwiOyB9IH1cbi5nbHlwaGljb24tc2Npc3NvcnMgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjZcIjsgfSB9XG4uZ2x5cGhpY29uLWJpdGNvaW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH0gfVxuLmdseXBoaWNvbi1idGMgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyN1wiOyB9IH1cbi5nbHlwaGljb24teGJ0ICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjdcIjsgfSB9XG4uZ2x5cGhpY29uLXllbiAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwwMGE1XCI7IH0gfVxuLmdseXBoaWNvbi1qcHkgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDBhNVwiOyB9IH1cbi5nbHlwaGljb24tcnVibGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYmRcIjsgfSB9XG4uZ2x5cGhpY29uLXJ1YiAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMGJkXCI7IH0gfVxuLmdseXBoaWNvbi1zY2FsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMFwiOyB9IH1cbi5nbHlwaGljb24taWNlLWxvbGx5ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzFcIjsgfSB9XG4uZ2x5cGhpY29uLWljZS1sb2xseS10YXN0ZWQgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMyXCI7IH0gfVxuLmdseXBoaWNvbi1lZHVjYXRpb24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzM1wiOyB9IH1cbi5nbHlwaGljb24tb3B0aW9uLWhvcml6b250YWwgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzRcIjsgfSB9XG4uZ2x5cGhpY29uLW9wdGlvbi12ZXJ0aWNhbCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM1XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LWhhbWJ1cmdlciAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNlwiOyB9IH1cbi5nbHlwaGljb24tbW9kYWwtd2luZG93ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzdcIjsgfSB9XG4uZ2x5cGhpY29uLW9pbCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM4XCI7IH0gfVxuLmdseXBoaWNvbi1ncmFpbiAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzOVwiOyB9IH1cbi5nbHlwaGljb24tc3VuZ2xhc3NlcyAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDBcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtc2l6ZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQxXCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LWNvbG9yICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MlwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC1iYWNrZ3JvdW5kICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDNcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi10b3AgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ0XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tYm90dG9tICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NVwiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWhvcml6b250YWx7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDZcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1sZWZ0ICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ3XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tdmVydGljYWwgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0OFwiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXJpZ2h0ICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDlcIjsgfSB9XG4uZ2x5cGhpY29uLXRyaWFuZ2xlLXJpZ2h0ICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUwXCI7IH0gfVxuLmdseXBoaWNvbi10cmlhbmdsZS1sZWZ0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MVwiOyB9IH1cbi5nbHlwaGljb24tdHJpYW5nbGUtYm90dG9tICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTJcIjsgfSB9XG4uZ2x5cGhpY29uLXRyaWFuZ2xlLXRvcCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUzXCI7IH0gfVxuLmdseXBoaWNvbi1jb25zb2xlICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NFwiOyB9IH1cbi5nbHlwaGljb24tc3VwZXJzY3JpcHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTVcIjsgfSB9XG4uZ2x5cGhpY29uLXN1YnNjcmlwdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU2XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LWxlZnQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1N1wiOyB9IH1cbi5nbHlwaGljb24tbWVudS1yaWdodCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNThcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtZG93biAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU5XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LXVwICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI2MFwiOyB9IH1cbiIsIi8vXG4vLyBTY2FmZm9sZGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBSZXNldCB0aGUgYm94LXNpemluZ1xuLy9cbi8vIEhlYWRzIHVwISBUaGlzIHJlc2V0IG1heSBjYXVzZSBjb25mbGljdHMgd2l0aCBzb21lIHRoaXJkLXBhcnR5IHdpZGdldHMuXG4vLyBGb3IgcmVjb21tZW5kYXRpb25zIG9uIHJlc29sdmluZyBzdWNoIGNvbmZsaWN0cywgc2VlXG4vLyBodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3RoaXJkLWJveC1zaXppbmdcbioge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbn1cblxuXG4vLyBCb2R5IHJlc2V0XG5cbmh0bWwge1xuICBmb250LXNpemU6IDEwcHg7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbn1cblxuLy8gUmVzZXQgZm9udHMgZm9yIHJlbGV2YW50IGVsZW1lbnRzXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cblxuLy8gTGlua3NcblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSB0YWItZm9jdXM7XG4gIH1cbn1cblxuXG4vLyBGaWd1cmVzXG4vL1xuLy8gV2UgcmVzZXQgdGhpcyBoZXJlIGJlY2F1c2UgcHJldmlvdXNseSBOb3JtYWxpemUgaGFkIG5vIGBmaWd1cmVgIG1hcmdpbnMuIFRoaXNcbi8vIGVuc3VyZXMgd2UgZG9uJ3QgYnJlYWsgYW55b25lJ3MgdXNlIG9mIHRoZSBlbGVtZW50LlxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cblxuLy8gSW1hZ2VzXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLmltZy1yZXNwb25zaXZlIHtcbiAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmU7XG59XG5cbi8vIFJvdW5kZWQgY29ybmVyc1xuLmltZy1yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG59XG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi8vXG4vLyBIZWFkcyB1cCEgVGhpcyBpcyBtaXhpbi1lZCBpbnRvIHRodW1ibmFpbHMubGVzcyBmb3IgYC50aHVtYm5haWxgLlxuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UtaW4tb3V0KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmUoaW5saW5lLWJsb2NrKTtcbn1cblxuLy8gUGVyZmVjdCBjaXJjbGVcbi5pbWctY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlOyAvLyBzZXQgcmFkaXVzIGluIHBlcmNlbnRzXG59XG5cblxuLy8gSG9yaXpvbnRhbCBydWxlc1xuXG5ociB7XG4gIG1hcmdpbi10b3A6ICAgICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaHItYm9yZGVyO1xufVxuXG5cbi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXG4vL1xuLy8gU2VlOiBodHRwOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnRcblxuLnNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuLnNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICB9XG59XG5cblxuLy8gaU9TIFwiY2xpY2thYmxlIGVsZW1lbnRzXCIgZml4IGZvciByb2xlPVwiYnV0dG9uXCJcbi8vXG4vLyBGaXhlcyBcImNsaWNrYWJpbGl0eVwiIGlzc3VlIChhbmQgbW9yZSBnZW5lcmFsbHksIHRoZSBmaXJpbmcgb2YgZXZlbnRzIHN1Y2ggYXMgZm9jdXMgYXMgd2VsbClcbi8vIGZvciB0cmFkaXRpb25hbGx5IG5vbi1mb2N1c2FibGUgZWxlbWVudHMgd2l0aCByb2xlPVwiYnV0dG9uXCJcbi8vIHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiIsIi8vXG4vLyBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEhlYWRpbmdzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcblxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkaGVhZGluZ3Mtc21hbGwtY29sb3I7XG4gIH1cbn1cblxuaDEsIC5oMSxcbmgyLCAuaDIsXG5oMywgLmgzIHtcbiAgbWFyZ2luLXRvcDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG5cbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA2NSU7XG4gIH1cbn1cbmg0LCAuaDQsXG5oNSwgLmg1LFxuaDYsIC5oNiB7XG4gIG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICB9XG59XG5cbmgxLCAuaDEgeyBmb250LXNpemU6ICRmb250LXNpemUtaDE7IH1cbmgyLCAuaDIgeyBmb250LXNpemU6ICRmb250LXNpemUtaDI7IH1cbmgzLCAuaDMgeyBmb250LXNpemU6ICRmb250LXNpemUtaDM7IH1cbmg0LCAuaDQgeyBmb250LXNpemU6ICRmb250LXNpemUtaDQ7IH1cbmg1LCAuaDUgeyBmb250LXNpemU6ICRmb250LXNpemUtaDU7IH1cbmg2LCAuaDYgeyBmb250LXNpemU6ICRmb250LXNpemUtaDY7IH1cblxuXG4vLyBCb2R5IHRleHRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxucCB7XG4gIG1hcmdpbjogMCAwICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbn1cblxuLmxlYWQge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDEuMTUpKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xuICB9XG59XG5cblxuLy8gRW1waGFzaXMgJiBtaXNjXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEV4OiAoMTJweCBzbWFsbCBmb250IC8gMTRweCBiYXNlIGZvbnQpICogMTAwJSA9IGFib3V0IDg1JVxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6IGZsb29yKCgxMDAlICogJGZvbnQtc2l6ZS1zbWFsbCAvICRmb250LXNpemUtYmFzZSkpO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhdGUtd2FybmluZy1iZztcbiAgcGFkZGluZzogLjJlbTtcbn1cblxuLy8gQWxpZ25tZW50XG4udGV4dC1sZWZ0ICAgICAgICAgICB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbi50ZXh0LXJpZ2h0ICAgICAgICAgIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbi50ZXh0LWNlbnRlciAgICAgICAgIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4udGV4dC1qdXN0aWZ5ICAgICAgICB7IHRleHQtYWxpZ246IGp1c3RpZnk7IH1cbi50ZXh0LW5vd3JhcCAgICAgICAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuLnRleHQtbG93ZXJjYXNlICAgICAgeyB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOyB9XG4udGV4dC11cHBlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbi50ZXh0LWNhcGl0YWxpemUgICAgIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cblxuLy8gQ29udGV4dHVhbCBjb2xvcnNcbi50ZXh0LW11dGVkIHtcbiAgY29sb3I6ICR0ZXh0LW11dGVkO1xufVxuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXByaW1hcnknLCAkYnJhbmQtcHJpbWFyeSk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtc3VjY2VzcycsICRzdGF0ZS1zdWNjZXNzLXRleHQpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LWluZm8nLCAkc3RhdGUtaW5mby10ZXh0KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC13YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctdGV4dCk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtZGFuZ2VyJywgJHN0YXRlLWRhbmdlci10ZXh0KTtcblxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuLy8gRm9yIG5vdyB3ZSdsbCBsZWF2ZSB0aGVzZSBhbG9uZ3NpZGUgdGhlIHRleHQgY2xhc3NlcyB1bnRpbCB2NCB3aGVuIHdlIGNhblxuLy8gc2FmZWx5IHNoaWZ0IHRoaW5ncyBhcm91bmQgKHBlciBTZW1WZXIgcnVsZXMpLlxuLmJnLXByaW1hcnkge1xuICAvLyBHaXZlbiB0aGUgY29udHJhc3QgaGVyZSwgdGhpcyBpcyB0aGUgb25seSBjbGFzcyB0byBoYXZlIGl0cyBjb2xvciBpbnZlcnRlZFxuICAvLyBhdXRvbWF0aWNhbGx5LlxuICBjb2xvcjogI2ZmZjtcbn1cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1wcmltYXJ5JywgJGJyYW5kLXByaW1hcnkpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctc3VjY2VzcycsICRzdGF0ZS1zdWNjZXNzLWJnKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLWluZm8nLCAkc3RhdGUtaW5mby1iZyk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy13YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctYmcpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctZGFuZ2VyJywgJHN0YXRlLWRhbmdlci1iZyk7XG5cblxuLy8gUGFnZSBoZWFkZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnBhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZy1ib3R0b206ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgLSAxKTtcbiAgbWFyZ2luOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogMikgMCAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vIExpc3RzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFVub3JkZXJlZCBhbmQgT3JkZXJlZCBsaXN0c1xudWwsXG5vbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbiAgdWwsXG4gIG9sIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vIExpc3Qgb3B0aW9uc1xuXG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgZnJvbSBgLmxpc3QtdW5zdHlsZWRgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGFzIGBAbWl4aW4gbGlzdC11bnN0eWxlZGAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xufVxuXG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xuICBtYXJnaW4tbGVmdDogLTVweDtcblxuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xuICB9XG59XG5cbi8vIERlc2NyaXB0aW9uIExpc3RzXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7IC8vIFJlbW92ZSBicm93c2VyIGRlZmF1bHRcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xufVxuZHQsXG5kZCB7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbn1cbmR0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5kZCB7XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxufVxuXG4vLyBIb3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3RzXG4vL1xuLy8gRGVmYXVsdHMgdG8gYmVpbmcgc3RhY2tlZCB3aXRob3V0IGFueSBvZiB0aGUgYmVsb3cgc3R5bGVzIGFwcGxpZWQsIHVudGlsIHRoZVxuLy8gZ3JpZCBicmVha3BvaW50IGlzIHJlYWNoZWQgKGRlZmF1bHQgb2Ygfjc2OHB4KS5cblxuLmRsLWhvcml6b250YWwge1xuICBkZCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7IC8vIENsZWFyIHRoZSBmbG9hdGVkIGBkdGAgaWYgYW4gZW1wdHkgYGRkYCBpcyBwcmVzZW50XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGRsLWhvcml6b250YWwtYnJlYWtwb2ludCkge1xuICAgIGR0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6ICgkZGwtaG9yaXpvbnRhbC1vZmZzZXQgLSAyMCk7XG4gICAgICBjbGVhcjogbGVmdDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgQGluY2x1ZGUgdGV4dC1vdmVyZmxvdztcbiAgICB9XG4gICAgZGQge1xuICAgICAgbWFyZ2luLWxlZnQ6ICRkbC1ob3Jpem9udGFsLW9mZnNldDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBNaXNjXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zXG5hYmJyW3RpdGxlXSxcbi8vIEFkZCBkYXRhLSogYXR0cmlidXRlIHRvIGhlbHAgb3V0IG91ciB0b29sdGlwIHBsdWdpbiwgcGVyIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNTI1N1xuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7XG4gIGN1cnNvcjogaGVscDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAkYWJici1ib3JkZXItY29sb3I7XG59XG4uaW5pdGlhbGlzbSB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBAZXh0ZW5kIC50ZXh0LXVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbmJsb2NrcXVvdGUge1xuICBwYWRkaW5nOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW46IDAgMCAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogJGJsb2NrcXVvdGUtZm9udC1zaXplO1xuICBib3JkZXItbGVmdDogNXB4IHNvbGlkICRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjtcblxuICBwLFxuICB1bCxcbiAgb2wge1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIE5vdGU6IERlcHJlY2F0ZWQgc21hbGwgYW5kIC5zbWFsbCBhcyBvZiB2My4xLjBcbiAgLy8gQ29udGV4dDogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY2MFxuICBmb290ZXIsXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogODAlOyAvLyBiYWNrIHRvIGRlZmF1bHQgZm9udC1zaXplXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMTQgXFwwMEEwJzsgLy8gZW0gZGFzaCwgbmJzcFxuICAgIH1cbiAgfVxufVxuXG4vLyBPcHBvc2l0ZSBhbGlnbm1lbnQgb2YgYmxvY2txdW90ZVxuLy9cbi8vIEhlYWRzIHVwOiBgYmxvY2txdW90ZS5wdWxsLXJpZ2h0YCBoYXMgYmVlbiBkZXByZWNhdGVkIGFzIG9mIHYzLjEuMC5cbi5ibG9ja3F1b3RlLXJldmVyc2UsXG5ibG9ja3F1b3RlLnB1bGwtcmlnaHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGJvcmRlci1yaWdodDogNXB4IHNvbGlkICRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIC8vIEFjY291bnQgZm9yIGNpdGF0aW9uXG4gIGZvb3RlcixcbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgJjpiZWZvcmUgeyBjb250ZW50OiAnJzsgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ1xcMDBBMCBcXDIwMTQnOyAvLyBuYnNwLCBlbSBkYXNoXG4gICAgfVxuICB9XG59XG5cbi8vIEFkZHJlc3Nlc1xuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG59XG4iLCIvL1xuLy8gQ29kZSAoaW5saW5lIGFuZCBibG9jaylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSW5saW5lIGFuZCBibG9jayBjb2RlIHN0eWxlc1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbn1cblxuLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBmb250LXNpemU6IDkwJTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbn1cblxuLy8gVXNlciBpbnB1dCB0eXBpY2FsbHkgZW50ZXJlZCB2aWEga2V5Ym9hcmRcbmtiZCB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogJGtiZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjI1KTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtIDEpIC8gMik7XG4gIG1hcmdpbjogMCAwICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlIC0gMSk7IC8vIDE0cHggdG8gMTNweFxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBjb2xvcjogJHByZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByZS1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHByZS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLy8gRW5hYmxlIHNjcm9sbGFibGUgYmxvY2tzIG9mIGNvZGVcbi5wcmUtc2Nyb2xsYWJsZSB7XG4gIG1heC1oZWlnaHQ6ICRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG4iLCIvL1xuLy8gR3JpZCBzeXN0ZW1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuLmNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1zbTtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1tZDtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICB3aWR0aDogJGNvbnRhaW5lci1sZztcbiAgfVxufVxuXG5cbi8vIEZsdWlkIGNvbnRhaW5lclxuLy9cbi8vIFV0aWxpemVzIHRoZSBtaXhpbiBtZWFudCBmb3IgZml4ZWQgd2lkdGggY29udGFpbmVycywgYnV0IHdpdGhvdXQgYW55IGRlZmluZWRcbi8vIHdpZHRoIGZvciBmbHVpZCwgZnVsbCB3aWR0aCBsYXlvdXRzLlxuXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyLWZpeGVkO1xufVxuXG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiBhbmQgY2xlYXIgdGhlIGZsb2F0cyBvZiB5b3VyIGNvbHVtbnMuXG5cbi5yb3cge1xuICBAaW5jbHVkZSBtYWtlLXJvdztcbn1cblxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucztcblxuXG4vLyBFeHRyYSBzbWFsbCBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIGV4dHJhIHNtYWxsIGRldmljZXMgbGlrZVxuLy8gc21hcnRwaG9uZXMuXG5cbkBpbmNsdWRlIG1ha2UtZ3JpZCh4cyk7XG5cblxuLy8gU21hbGwgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgc21hbGwgZGV2aWNlIHJhbmdlLCBmcm9tIHBob25lc1xuLy8gdG8gdGFibGV0cy5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChzbSk7XG59XG5cblxuLy8gTWVkaXVtIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIGRlc2t0b3AgZGV2aWNlIHJhbmdlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkKG1kKTtcbn1cblxuXG4vLyBMYXJnZSBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBsYXJnZSBkZXNrdG9wIGRldmljZSByYW5nZS5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChsZyk7XG59XG4iLCIvL1xuLy8gVGFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbnRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnO1xufVxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5cbi8vIEJhc2VsaW5lIHN0eWxlc1xuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIC8vIENlbGxzXG4gID4gdGhlYWQsXG4gID4gdGJvZHksXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBCb3R0b20gYWxpZ24gZm9yIGNvbHVtbiBoZWFkaW5nc1xuICA+IHRoZWFkID4gdHIgPiB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuICAvLyBSZW1vdmUgdG9wIGJvcmRlciBmcm9tIHRoZWFkIGJ5IGRlZmF1bHRcbiAgPiBjYXB0aW9uICsgdGhlYWQsXG4gID4gY29sZ3JvdXAgKyB0aGVhZCxcbiAgPiB0aGVhZDpmaXJzdC1jaGlsZCB7XG4gICAgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIEFjY291bnQgZm9yIG11bHRpcGxlIHRib2R5IGluc3RhbmNlc1xuICA+IHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gTmVzdGluZ1xuICAudGFibGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuICB9XG59XG5cblxuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuXG4udGFibGUtY29uZGVuc2VkIHtcbiAgPiB0aGVhZCxcbiAgPiB0Ym9keSxcbiAgPiB0Zm9vdCB7XG4gICAgPiB0ciB7XG4gICAgICA+IHRoLFxuICAgICAgPiB0ZCB7XG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jb25kZW5zZWQtY2VsbC1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJvcmRlcmVkIHZlcnNpb25cbi8vXG4vLyBBZGQgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gID4gdGhlYWQsXG4gID4gdGJvZHksXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IHRoZWFkID4gdHIge1xuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4udGFibGUtc3RyaXBlZCB7XG4gID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmctYWNjZW50O1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICA+IHRib2R5ID4gdHI6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1ob3ZlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmxlIGNlbGwgc2l6aW5nXG4vL1xuLy8gUmVzZXQgZGVmYXVsdCB0YWJsZSBiZWhhdmlvclxuXG50YWJsZSBjb2xbY2xhc3MqPVwiY29sLVwiXSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxuICBmbG9hdDogbm9uZTtcbiAgZGlzcGxheTogdGFibGUtY29sdW1uO1xufVxudGFibGUge1xuICB0ZCxcbiAgdGgge1xuICAgICZbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljOyAvLyBQcmV2ZW50IGJvcmRlciBoaWRpbmcgaW4gRmlyZWZveCBhbmQgSUU5LTExIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTYyMylcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG4vLyBHZW5lcmF0ZSB0aGUgY29udGV4dHVhbCB2YXJpYW50c1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2FjdGl2ZScsICR0YWJsZS1iZy1hY3RpdmUpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ3N1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnaW5mbycsICRzdGF0ZS1pbmZvLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCd3YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctYmcpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2RhbmdlcicsICRzdGF0ZS1kYW5nZXItYmcpO1xuXG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gV3JhcCB5b3VyIHRhYmxlcyBpbiBgLnRhYmxlLXJlc3BvbnNpdmVgIGFuZCB3ZSdsbCBtYWtlIHRoZW0gbW9iaWxlIGZyaWVuZGx5XG4vLyBieSBlbmFibGluZyBob3Jpem9udGFsIHNjcm9sbGluZy4gT25seSBhcHBsaWVzIDw3NjhweC4gRXZlcnl0aGluZyBhYm92ZSB0aGF0XG4vLyB3aWxsIGRpc3BsYXkgbm9ybWFsbHkuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWluLWhlaWdodDogMC4wMSU7IC8vIFdvcmthcm91bmQgZm9yIElFOSBidWcgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE0ODM3KVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAqIDAuNzUpO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgLy8gVGlnaHRlbiB1cCBzcGFjaW5nXG4gICAgPiAudGFibGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgLy8gRW5zdXJlIHRoZSBjb250ZW50IGRvZXNuJ3Qgd3JhcFxuICAgICAgPiB0aGVhZCxcbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aCxcbiAgICAgICAgICA+IHRkIHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU3BlY2lhbCBvdmVycmlkZXMgZm9yIHRoZSBib3JkZXJlZCB0YWJsZXNcbiAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICBib3JkZXI6IDA7XG5cbiAgICAgIC8vIE51a2UgdGhlIGFwcHJvcHJpYXRlIGJvcmRlcnMgc28gdGhhdCB0aGUgcGFyZW50IGNhbiBoYW5kbGUgdGhlbVxuICAgICAgPiB0aGVhZCxcbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aDpmaXJzdC1jaGlsZCxcbiAgICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgICAgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gT25seSBudWtlIHRoZSBsYXN0IHJvdydzIGJvdHRvbS1ib3JkZXIgaW4gYHRib2R5YCBhbmQgYHRmb290YCBzaW5jZVxuICAgICAgLy8gY2hhbmNlcyBhcmUgdGhlcmUgd2lsbCBiZSBvbmx5IG9uZSBgdHJgIGluIGEgYHRoZWFkYCBhbmQgdGhhdCB3b3VsZFxuICAgICAgLy8gcmVtb3ZlIHRoZSBib3JkZXIgYWx0b2dldGhlci5cbiAgICAgID4gdGJvZHksXG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICA+IHRoLFxuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEZvcm1zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIE5vcm1hbGl6ZSBub24tY29udHJvbHNcbi8vXG4vLyBSZXN0eWxlIGFuZCBiYXNlbGluZSBub24tY29udHJvbCBmb3JtIGVsZW1lbnRzLlxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICAvLyBDaHJvbWUgYW5kIEZpcmVmb3ggc2V0IGEgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGl0IGJlaGF2ZXMgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTkuXG4gIG1pbi13aWR0aDogMDtcbn1cblxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogJGxlZ2VuZC1jb2xvcjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxlZ2VuZC1ib3JkZXItY29sb3I7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIEZvcmNlIElFOCB0byB3cmFwIGxvbmcgY29udGVudCAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTMxNDEpXG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cblxuLy8gTm9ybWFsaXplIGZvcm0gY29udHJvbHNcbi8vXG4vLyBXaGlsZSBtb3N0IG9mIG91ciBmb3JtIHN0eWxlcyByZXF1aXJlIGV4dHJhIGNsYXNzZXMsIHNvbWUgYmFzaWMgbm9ybWFsaXphdGlvblxuLy8gaXMgcmVxdWlyZWQgdG8gZW5zdXJlIG9wdGltdW0gZGlzcGxheSB3aXRoIG9yIHdpdGhvdXQgdGhvc2UgY2xhc3NlcyB0byBiZXR0ZXJcbi8vIGFkZHJlc3MgYnJvd3NlciBpbmNvbnNpc3RlbmNpZXMuXG5cbi8vIE92ZXJyaWRlIGNvbnRlbnQtYm94IGluIE5vcm1hbGl6ZSAoKiBpc24ndCBzcGVjaWZpYyBlbm91Z2gpXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbn1cblxuLy8gUG9zaXRpb24gcmFkaW9zIGFuZCBjaGVja2JveGVzIGJldHRlclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgbWFyZ2luOiA0cHggMCAwO1xuICBtYXJnaW4tdG9wOiAxcHggXFw5OyAvLyBJRTgtOVxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBNYWtlIHJhbmdlIGlucHV0cyBiZWhhdmUgbGlrZSB0ZXh0dWFsIGZvcm0gY29udHJvbHNcbmlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gTWFrZSBtdWx0aXBsZSBzZWxlY3QgZWxlbWVudHMgaGVpZ2h0IG5vdCBmaXhlZFxuc2VsZWN0W211bHRpcGxlXSxcbnNlbGVjdFtzaXplXSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gRm9jdXMgZm9yIGZpbGUsIHJhZGlvLCBhbmQgY2hlY2tib3hcbmlucHV0W3R5cGU9XCJmaWxlXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzIHtcbiAgQGluY2x1ZGUgdGFiLWZvY3VzO1xufVxuXG4vLyBBZGp1c3Qgb3V0cHV0IGVsZW1lbnRcbm91dHB1dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbn1cblxuXG4vLyBDb21tb24gZm9ybSBjb250cm9sc1xuLy9cbi8vIFNoYXJlZCBzaXplIGFuZCB0eXBlIHJlc2V0cyBmb3IgZm9ybSBjb250cm9scy4gQXBwbHkgYC5mb3JtLWNvbnRyb2xgIHRvIGFueVxuLy8gb2YgdGhlIGZvbGxvd2luZyBmb3JtIGNvbnRyb2xzOlxuLy9cbi8vIHNlbGVjdFxuLy8gdGV4dGFyZWFcbi8vIGlucHV0W3R5cGU9XCJ0ZXh0XCJdXG4vLyBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZVwiXVxuLy8gaW5wdXRbdHlwZT1cIm1vbnRoXCJdXG4vLyBpbnB1dFt0eXBlPVwidGltZVwiXVxuLy8gaW5wdXRbdHlwZT1cIndlZWtcIl1cbi8vIGlucHV0W3R5cGU9XCJudW1iZXJcIl1cbi8vIGlucHV0W3R5cGU9XCJlbWFpbFwiXVxuLy8gaW5wdXRbdHlwZT1cInVybFwiXVxuLy8gaW5wdXRbdHlwZT1cInNlYXJjaFwiXVxuLy8gaW5wdXRbdHlwZT1cInRlbFwiXVxuLy8gaW5wdXRbdHlwZT1cImNvbG9yXCJdXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlOyAvLyBNYWtlIGlucHV0cyBhdCBsZWFzdCB0aGUgaGVpZ2h0IG9mIHRoZWlyIGJ1dHRvbiBjb3VudGVycGFydCAoYmFzZSBsaW5lLWhlaWdodCArIHBhZGRpbmcgKyBib3JkZXIpXG4gIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcbiAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7IC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIDxzZWxlY3Q+cyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXMpO1xuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLWZvY3VzO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gIEBpbmNsdWRlIHBsYWNlaG9sZGVyO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICZbZGlzYWJsZWRdLFxuICAmW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZy1kaXNhYmxlZDtcbiAgICBvcGFjaXR5OiAxOyAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1XG4gIH1cblxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0ZXh0YXJlYSYgdG8gdGV4dGFyZWEuZm9ybS1jb250cm9sXG59XG5cbi8vIFJlc2V0IGhlaWdodCBmb3IgYHRleHRhcmVhYHNcbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBTZWFyY2ggaW5wdXRzIGluIGlPU1xuLy9cbi8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbi8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuXG4vLyBTcGVjaWFsIHN0eWxlcyBmb3IgaU9TIHRlbXBvcmFsIGlucHV0c1xuLy9cbi8vIEluIE1vYmlsZSBTYWZhcmksIHNldHRpbmcgYGRpc3BsYXk6IGJsb2NrYCBvbiB0ZW1wb3JhbCBpbnB1dHMgY2F1c2VzIHRoZVxuLy8gdGV4dCB3aXRoaW4gdGhlIGlucHV0IHRvIGJlY29tZSB2ZXJ0aWNhbGx5IG1pc2FsaWduZWQuIEFzIGEgd29ya2Fyb3VuZCwgd2Vcbi8vIHNldCBhIHBpeGVsIGxpbmUtaGVpZ2h0IHRoYXQgbWF0Y2hlcyB0aGUgZ2l2ZW4gaGVpZ2h0IG9mIHRoZSBpbnB1dCwgYnV0IG9ubHlcbi8vIGZvciBTYWZhcmkuIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5ODQ4XG4vL1xuLy8gTm90ZSB0aGF0IGFzIG9mIDkuMywgaU9TIGRvZXNuJ3Qgc3VwcG9ydCBgd2Vla2AuXG5cbkBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDApIHtcbiAgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4gIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIGlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gICAgJi5mb3JtLWNvbnRyb2wge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgICB9XG5cbiAgICAmLmlucHV0LXNtLFxuICAgIC5pbnB1dC1ncm91cC1zbSAmIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICAgIH1cblxuICAgICYuaW5wdXQtbGcsXG4gICAgLmlucHV0LWdyb3VwLWxnICYge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGFyZ2U7XG4gICAgfVxuICB9XG59XG5cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG59XG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gSW5kZW50IHRoZSBsYWJlbHMgdG8gcG9zaXRpb24gcmFkaW9zL2NoZWNrYm94ZXMgYXMgaGFuZ2luZyBjb250cm9scy5cblxuLnJhZGlvLFxuLmNoZWNrYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICBsYWJlbCB7XG4gICAgbWluLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOyAvLyBFbnN1cmUgdGhlIGlucHV0IGRvZXNuJ3QganVtcCB3aGVuIHRoZXJlIGlzIG5vIHRleHRcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5yYWRpby1pbmxpbmUgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbi5jaGVja2JveC1pbmxpbmUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gIG1hcmdpbi10b3A6IDRweCBcXDk7XG59XG5cbi5yYWRpbyArIC5yYWRpbyxcbi5jaGVja2JveCArIC5jaGVja2JveCB7XG4gIG1hcmdpbi10b3A6IC01cHg7IC8vIE1vdmUgdXAgc2libGluZyByYWRpb3Mgb3IgY2hlY2tib3hlcyBmb3IgdGlnaHRlciBzcGFjaW5nXG59XG5cbi8vIFJhZGlvcyBhbmQgY2hlY2tib3hlcyBvbiBzYW1lIGxpbmVcbi5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnJhZGlvLWlubGluZSArIC5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lICsgLmNoZWNrYm94LWlubGluZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4OyAvLyBzcGFjZSBvdXQgY29uc2VjdXRpdmUgaW5saW5lIGNvbnRyb2xzXG59XG5cbi8vIEFwcGx5IHNhbWUgZGlzYWJsZWQgY3Vyc29yIHR3ZWFrIGFzIGZvciBpbnB1dHNcbi8vIFNvbWUgc3BlY2lhbCBjYXJlIGlzIG5lZWRlZCBiZWNhdXNlIDxsYWJlbD5zIGRvbid0IGluaGVyaXQgdGhlaXIgcGFyZW50J3MgYGN1cnNvcmAuXG4vL1xuLy8gTm90ZTogTmVpdGhlciByYWRpb3Mgbm9yIGNoZWNrYm94ZXMgY2FuIGJlIHJlYWRvbmx5LlxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbn1cbi8vIFRoZXNlIGNsYXNzZXMgYXJlIHVzZWQgZGlyZWN0bHkgb24gPGxhYmVsPnNcbi5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lIHtcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuLy8gVGhlc2UgY2xhc3NlcyBhcmUgdXNlZCBvbiBlbGVtZW50cyB3aXRoIDxsYWJlbD4gZGVzY2VuZGFudHNcbi5yYWRpbyxcbi5jaGVja2JveCB7XG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBsYWJlbCB7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU3RhdGljIGZvcm0gY29udHJvbCB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSBgcGAgZWxlbWVudCB0byBtYWtlIGFueSBzdHJpbmcgb2YgdGV4dCBhbGlnbiB3aXRoIGxhYmVscyBpblxuLy8gYSBob3Jpem9udGFsIGZvcm0gbGF5b3V0LlxuXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIC8vIFNpemUgaXQgYXBwcm9wcmlhdGVseSBuZXh0IHRvIHJlYWwgZm9ybSBjb250cm9sc1xuICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTtcbiAgcGFkZGluZy1ib3R0b206ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBmcm9tIGBwYFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1iYXNlKTtcblxuICAmLmlucHV0LWxnLFxuICAmLmlucHV0LXNtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBUaGUgYC5mb3JtLWdyb3VwLSogZm9ybS1jb250cm9sYCB2YXJpYXRpb25zIGFyZSBzYWRseSBkdXBsaWNhdGVkIHRvIGF2b2lkIHRoZVxuLy8gaXNzdWUgZG9jdW1lbnRlZCBpbiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE1MDc0LlxuXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtc20nLCAkaW5wdXQtaGVpZ2h0LXNtYWxsLCAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG4uZm9ybS1ncm91cC1zbSB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtYWxsO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsO1xuICB9XG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgfVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4gIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1zbWFsbCk7XG4gICAgcGFkZGluZzogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSkgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbWFsbDtcbiAgfVxufVxuXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtbGcnLCAkaW5wdXQtaGVpZ2h0LWxhcmdlLCAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG4uZm9ybS1ncm91cC1sZyB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxhcmdlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlO1xuICB9XG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgfVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4gIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1sYXJnZSk7XG4gICAgcGFkZGluZzogKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICsgMSkgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sYXJnZTtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBmZWVkYmFjayBzdGF0ZXNcbi8vXG4vLyBBcHBseSBjb250ZXh0dWFsIGFuZCBzZW1hbnRpYyBzdGF0ZXMgdG8gaW5kaXZpZHVhbCBmb3JtIGNvbnRyb2xzLlxuXG4uaGFzLWZlZWRiYWNrIHtcbiAgLy8gRW5hYmxlIGFic29sdXRlIHBvc2l0aW9uaW5nXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAvLyBFbnN1cmUgaWNvbnMgZG9uJ3Qgb3ZlcmxhcCB0ZXh0XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIHBhZGRpbmctcmlnaHQ6ICgkaW5wdXQtaGVpZ2h0LWJhc2UgKiAxLjI1KTtcbiAgfVxufVxuLy8gRmVlZGJhY2sgaWNvbiAocmVxdWlyZXMgLmdseXBoaWNvbiBjbGFzc2VzKVxuLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMjsgLy8gRW5zdXJlIGljb24gaXMgYWJvdmUgaW5wdXQgZ3JvdXBzXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1iYXNlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5pbnB1dC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtbGcgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbn1cbi5pbnB1dC1zbSArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtc20gLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbn1cblxuLy8gRmVlZGJhY2sgc3RhdGVzXG4uaGFzLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG59XG4uaGFzLXdhcm5pbmcge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy1iZyk7XG59XG4uaGFzLWVycm9yIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLWRhbmdlci10ZXh0LCAkc3RhdGUtZGFuZ2VyLXRleHQsICRzdGF0ZS1kYW5nZXItYmcpO1xufVxuXG4vLyBSZXBvc2l0aW9uIGZlZWRiYWNrIGljb24gaWYgaW5wdXQgaGFzIHZpc2libGUgbGFiZWwgYWJvdmVcbi5oYXMtZmVlZGJhY2sgbGFiZWwge1xuXG4gICYgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICB0b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyA1KTsgLy8gSGVpZ2h0IG9mIHRoZSBgbGFiZWxgIGFuZCBpdHMgbWFyZ2luXG4gIH1cbiAgJi5zci1vbmx5IH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgdG9wOiAwO1xuICB9XG59XG5cblxuLy8gSGVscCB0ZXh0XG4vL1xuLy8gQXBwbHkgdG8gYW55IGVsZW1lbnQgeW91IHdpc2ggdG8gY3JlYXRlIGxpZ2h0IHRleHQgZm9yIHBsYWNlbWVudCBpbW1lZGlhdGVseVxuLy8gYmVsb3cgYSBmb3JtIGNvbnRyb2wuIFVzZSBmb3IgZ2VuZXJhbCBoZWxwLCBmb3JtYXR0aW5nLCBvciBpbnN0cnVjdGlvbmFsIHRleHQuXG5cbi5oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7IC8vIGFjY291bnQgZm9yIGFueSBlbGVtZW50IHVzaW5nIGhlbHAtYmxvY2tcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogbGlnaHRlbigkdGV4dC1jb2xvciwgMjUlKTsgLy8gbGlnaHRlbiB0aGUgdGV4dCBzb21lIGZvciBjb250cmFzdFxufVxuXG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byBgLm5hdmJhci1mb3JtYCBpbiBuYXZiYXJzLmxlc3MuXG5cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAuZm9ybS1pbmxpbmVgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbkBtaXhpbiBmb3JtLWlubGluZSB7XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIEluIG5hdmJhci1mb3JtLCBhbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuLFxuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElucHV0IGdyb3VwcyBuZWVkIHRoYXQgMTAwJSB3aWR0aCB0aG91Z2hcbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5yYWRpbyxcbiAgICAuY2hlY2tib3gge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC8vIFJlLW92ZXJyaWRlIHRoZSBmZWVkYmFjayBpY29uLlxuICAgIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59XG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBmb3JtLWlubGluZWAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuLmZvcm0taW5saW5lIHtcbiAgQGluY2x1ZGUgZm9ybS1pbmxpbmU7XG59XG5cblxuXG4vLyBIb3Jpem9udGFsIGZvcm1zXG4vL1xuLy8gSG9yaXpvbnRhbCBmb3JtcyBhcmUgYnVpbHQgb24gZ3JpZCBjbGFzc2VzIGFuZCBhbGxvdyB5b3UgdG8gY3JlYXRlIGZvcm1zIHdpdGhcbi8vIGxhYmVscyBvbiB0aGUgbGVmdCBhbmQgaW5wdXRzIG9uIHRoZSByaWdodC5cblxuLmZvcm0taG9yaXpvbnRhbCB7XG5cbiAgLy8gQ29uc2lzdGVudCB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzXG4gIC8vXG4gIC8vIExhYmVscyBhbHNvIGdldCBzb21lIHJlc2V0IHN0eWxlcywgYnV0IHRoYXQgaXMgc2NvcGVkIHRvIGEgbWVkaWEgcXVlcnkgYmVsb3cuXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7IC8vIERlZmF1bHQgcGFkZGluZyBwbHVzIGEgYm9yZGVyXG4gIH1cbiAgLy8gQWNjb3VudCBmb3IgcGFkZGluZyB3ZSdyZSBhZGRpbmcgdG8gZW5zdXJlIHRoZSBhbGlnbm1lbnQgYW5kIG9mIGhlbHAgdGV4dFxuICAvLyBhbmQgb3RoZXIgY29udGVudCBiZWxvdyBpdGVtc1xuICAucmFkaW8sXG4gIC5jaGVja2JveCB7XG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSkpO1xuICB9XG5cbiAgLy8gTWFrZSBmb3JtIGdyb3VwcyBiZWhhdmUgbGlrZSByb3dzXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdztcbiAgfVxuXG4gIC8vIFJlc2V0IHNwYWNpbmcgYW5kIHJpZ2h0IGFsaWduIGxhYmVscywgYnV0IHNjb3BlIHRvIG1lZGlhIHF1ZXJpZXMgc28gdGhhdFxuICAvLyBsYWJlbHMgb24gbmFycm93IHZpZXdwb3J0cyBzdGFjayB0aGUgc2FtZSBhcyBhIGRlZmF1bHQgZm9ybSBleGFtcGxlLlxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcbiAgICB9XG4gIH1cblxuICAvLyBWYWxpZGF0aW9uIHN0YXRlc1xuICAvL1xuICAvLyBSZXBvc2l0aW9uIHRoZSBpY29uIGJlY2F1c2UgaXQncyBub3cgd2l0aGluIGEgZ3JpZCBjb2x1bW4gYW5kIGNvbHVtbnMgaGF2ZVxuICAvLyBgcG9zaXRpb246IHJlbGF0aXZlO2Agb24gdGhlbS4gQWxzbyBhY2NvdW50cyBmb3IgdGhlIGdyaWQgZ3V0dGVyIHBhZGRpbmcuXG4gIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cblxuICAvLyBGb3JtIGdyb3VwIHNpemVzXG4gIC8vXG4gIC8vIFF1aWNrIHV0aWxpdHkgY2xhc3MgZm9yIGFwcGx5aW5nIGAuaW5wdXQtbGdgIGFuZCBgLmlucHV0LXNtYCBzdHlsZXMgdG8gdGhlXG4gIC8vIGlucHV0cyBhbmQgbGFiZWxzIHdpdGhpbiBhIGAuZm9ybS1ncm91cGAuXG4gIC5mb3JtLWdyb3VwLWxnIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCArIDEpO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb3JtLWdyb3VwLXNtIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCArIDEpO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gRm9yIGlucHV0LmJ0blxuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1iYXNlLXZlcnRpY2FsLCAkcGFkZGluZy1iYXNlLWhvcml6b250YWwsICRmb250LXNpemUtYmFzZSwgJGxpbmUtaGVpZ2h0LWJhc2UsICRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgQGluY2x1ZGUgdXNlci1zZWxlY3Qobm9uZSk7XG5cbiAgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgQGluY2x1ZGUgdGFiLWZvY3VzO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiAkYnRuLWRlZmF1bHQtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDNweCA1cHggcmdiYSgwLDAsMCwuMTI1KSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC42NSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmJ0blxufVxuXG5hLmJ0biB7XG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWRlZmF1bHQge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRlZmF1bHQtY29sb3IsICRidG4tZGVmYXVsdC1iZywgJGJ0bi1kZWZhdWx0LWJvcmRlcik7XG59XG4uYnRuLXByaW1hcnkge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXByaW1hcnktY29sb3IsICRidG4tcHJpbWFyeS1iZywgJGJ0bi1wcmltYXJ5LWJvcmRlcik7XG59XG4vLyBTdWNjZXNzIGFwcGVhcnMgYXMgZ3JlZW5cbi5idG4tc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tc3VjY2Vzcy1jb2xvciwgJGJ0bi1zdWNjZXNzLWJnLCAkYnRuLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cbi8vIEluZm8gYXBwZWFycyBhcyBibHVlLWdyZWVuXG4uYnRuLWluZm8ge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWluZm8tY29sb3IsICRidG4taW5mby1iZywgJGJ0bi1pbmZvLWJvcmRlcik7XG59XG4vLyBXYXJuaW5nIGFwcGVhcnMgYXMgb3JhbmdlXG4uYnRuLXdhcm5pbmcge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXdhcm5pbmctY29sb3IsICRidG4td2FybmluZy1iZywgJGJ0bi13YXJuaW5nLWJvcmRlcik7XG59XG4vLyBEYW5nZXIgYW5kIGVycm9yIGFwcGVhciBhcyByZWRcbi5idG4tZGFuZ2VyIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1kYW5nZXItY29sb3IsICRidG4tZGFuZ2VyLWJnLCAkYnRuLWRhbmdlci1ib3JkZXIpO1xufVxuXG5cbi8vIExpbmsgYnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICYsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCdXR0b24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tbGcge1xuICAvLyBsaW5lLWhlaWdodDogZW5zdXJlIGV2ZW4tbnVtYmVyZWQgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIGxhcmdlIGlucHV0XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG59XG4uYnRuLXNtIHtcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBwcm9wZXIgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIHNtYWxsIGlucHV0XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG4uYnRuLXhzIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmcteHMtdmVydGljYWwsICRwYWRkaW5nLXhzLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbn1cblxuXG4vLyBCbG9jayBidXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbi5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvL1xuLy8gQ29tcG9uZW50IGFuaW1hdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhlYWRzIHVwIVxuLy9cbi8vIFdlIGRvbid0IHVzZSB0aGUgYC5vcGFjaXR5KClgIG1peGluIGhlcmUgc2luY2UgaXQgY2F1c2VzIGEgYnVnIHdpdGggdGV4dFxuLy8gZmllbGRzIGluIElFNy04LiBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzM1NTIuXG5cbi5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IC4xNXMgbGluZWFyKTtcbiAgJi5pbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICBkaXNwbGF5OiBub25lO1xuXG4gICYuaW4gICAgICB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCB0ciYuaW4gdG8gdHIuY29sbGFwc2UuaW5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRib2R5Ji5pbiB0byB0Ym9keS5jb2xsYXBzZS5pblxufVxuXG50ci5jb2xsYXBzZS5pbiAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuXG50Ym9keS5jb2xsYXBzZS5pbiB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDsgfVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5KGhlaWdodCwgdmlzaWJpbGl0eSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZHVyYXRpb24oLjM1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKGVhc2UpO1xufVxuIiwiLy9cbi8vIERyb3Bkb3duIG1lbnVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIERyb3Bkb3duIGFycm93L2NhcmV0XG4uY2FyZXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAycHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci10b3A6ICAgJGNhcmV0LXdpZHRoLWJhc2UgZGFzaGVkO1xuICBib3JkZXItdG9wOiAgICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIFxcOTsgLy8gSUU4XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAgJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChkaXYpXG4uZHJvcHVwLFxuLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLyBQcmV2ZW50IHRoZSBmb2N1cyBvbiB0aGUgZHJvcGRvd24gdG9nZ2xlIHdoZW4gY2xvc2luZyBkcm9wZG93bnNcbi5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudSAodWwpXG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAxNjBweDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIG1hcmdpbjogMnB4IDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRkcm9wZG93bi1mYWxsYmFjay1ib3JkZXI7IC8vIElFOCBmYWxsYmFja1xuICBib3JkZXI6IDFweCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgNnB4IDEycHggcmdiYSgwLDAsMCwuMTc1KSk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG5cbiAgLy8gQWxpZ25zIHRoZSBkcm9wZG93biBtZW51IHRvIHJpZ2h0XG4gIC8vXG4gIC8vIERlcHJlY2F0ZWQgYXMgb2YgMy4xLjAgaW4gZmF2b3Igb2YgYC5kcm9wZG93bi1tZW51LVtkaXJdYFxuICAmLnB1bGwtcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICAvLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4gIC5kaXZpZGVyIHtcbiAgICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZyk7XG4gIH1cblxuICAvLyBMaW5rcyB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbiAgPiBsaSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDNweCAyMHB4O1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgfVxufVxuXG4vLyBIb3Zlci9Gb2N1cyBzdGF0ZVxuLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xuICB9XG59XG5cbi8vIEFjdGl2ZSBzdGF0ZVxuLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xuICB9XG59XG5cbi8vIERpc2FibGVkIHN0YXRlXG4vL1xuLy8gR3JheSBvdXQgdGV4dCBhbmQgZW5zdXJlIHRoZSBob3Zlci9mb2N1cyBzdGF0ZSByZW1haW5zIGdyYXlcblxuLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICB9XG5cbiAgLy8gTnVrZSBob3Zlci9mb2N1cyBlZmZlY3RzXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50XG4gICAgQGluY2x1ZGUgcmVzZXQtZmlsdGVyO1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuXG4vLyBPcGVuIHN0YXRlIGZvciB0aGUgZHJvcGRvd25cbi5vcGVuIHtcbiAgLy8gU2hvdyB0aGUgbWVudVxuICA+IC5kcm9wZG93bi1tZW51IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgb3V0bGluZSB3aGVuIDpmb2N1cyBpcyB0cmlnZ2VyZWRcbiAgPiBhIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vIE1lbnUgcG9zaXRpb25pbmdcbi8vXG4vLyBBZGQgZXh0cmEgY2xhc3MgdG8gYC5kcm9wZG93bi1tZW51YCB0byBmbGlwIHRoZSBhbGlnbm1lbnQgb2YgdGhlIGRyb3Bkb3duXG4vLyBtZW51IHdpdGggdGhlIHBhcmVudC5cbi5kcm9wZG93bi1tZW51LXJpZ2h0IHtcbiAgbGVmdDogYXV0bzsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBgLmRyb3Bkb3duLW1lbnVgXG4gIHJpZ2h0OiAwO1xufVxuLy8gV2l0aCB2Mywgd2UgZW5hYmxlZCBhdXRvLWZsaXBwaW5nIGlmIHlvdSBoYXZlIGEgZHJvcGRvd24gd2l0aGluIGEgcmlnaHRcbi8vIGFsaWduZWQgbmF2IGNvbXBvbmVudC4gVG8gZW5hYmxlIHRoZSB1bmRvaW5nIG9mIHRoYXQsIHdlIHByb3ZpZGUgYW4gb3ZlcnJpZGVcbi8vIHRvIHJlc3RvcmUgdGhlIGRlZmF1bHQgZHJvcGRvd24gbWVudSBhbGlnbm1lbnQuXG4vL1xuLy8gVGhpcyBpcyBvbmx5IGZvciBsZWZ0LWFsaWduaW5nIGEgZHJvcGRvd24gbWVudSB3aXRoaW4gYSBgLm5hdmJhci1yaWdodGAgb3Jcbi8vIGAucHVsbC1yaWdodGAgbmF2IGNvbXBvbmVudC5cbi5kcm9wZG93bi1tZW51LWxlZnQge1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDNweCAyMHB4O1xuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gQmFja2Ryb3AgdG8gY2F0Y2ggYm9keSBjbGlja3Mgb24gbW9iaWxlLCBldGMuXG4uZHJvcGRvd24tYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogKCR6aW5kZXgtZHJvcGRvd24gLSAxMCk7XG59XG5cbi8vIFJpZ2h0IGFsaWduZWQgZHJvcGRvd25zXG4ucHVsbC1yaWdodCA+IC5kcm9wZG93bi1tZW51IHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy9cbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldCwgYnJvLlxuLy8gVE9ETzogYWJzdHJhY3QgdGhpcyBzbyB0aGF0IHRoZSBuYXZiYXIgZml4ZWQgc3R5bGVzIGFyZSBub3QgcGxhY2VkIGhlcmU/XG5cbi5kcm9wdXAsXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSAuZHJvcGRvd24ge1xuICAvLyBSZXZlcnNlIHRoZSBjYXJldFxuICAuY2FyZXQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoLWJhc2UgZGFzaGVkO1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIFxcOTsgLy8gSUU4XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuICAvLyBEaWZmZXJlbnQgcG9zaXRpb25pbmcgZm9yIGJvdHRvbSB1cCBtZW51XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgfVxufVxuXG5cbi8vIENvbXBvbmVudCBhbGlnbm1lbnRcbi8vXG4vLyBSZWl0ZXJhdGUgcGVyIG5hdmJhci5sZXNzIGFuZCB0aGUgbW9kaWZpZWQgY29tcG9uZW50IGFsaWdubWVudCB0aGVyZS5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgLm5hdmJhci1yaWdodCB7XG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgcmlnaHQ6IDA7IGxlZnQ6IGF1dG87XG4gICAgfVxuICAgIC8vIE5lY2Vzc2FyeSBmb3Igb3ZlcnJpZGVzIG9mIHRoZSBkZWZhdWx0IHJpZ2h0IGFsaWduZWQgbWVudS5cbiAgICAvLyBXaWxsIHJlbW92ZSBjb21lIHY0IGluIGFsbCBsaWtlbGlob29kLlxuICAgIC5kcm9wZG93bi1tZW51LWxlZnQge1xuICAgICAgbGVmdDogMDsgcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQnV0dG9uIGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBtYXRjaCAuYnRuIGFsaWdubWVudCBnaXZlbiBmb250LXNpemUgaGFjayBhYm92ZVxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBidXR0b24gdG8gdGhlIGZyb250XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICB9XG59XG5cbi8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcbi5idG4tZ3JvdXAge1xuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5idG4tZ3JvdXAsXG4gIC5idG4tZ3JvdXAgKyAuYnRuLFxuICAuYnRuLWdyb3VwICsgLmJ0bi1ncm91cCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7IC8vIE9mZnNldCB0aGUgZmlyc3QgY2hpbGQncyBtYXJnaW5cbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgLmJ0bixcbiAgLmJ0bi1ncm91cCxcbiAgLmlucHV0LWdyb3VwIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCxcbiAgPiAuaW5wdXQtZ3JvdXAge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIH1cbn1cblxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBTZXQgY29ybmVycyBpbmRpdmlkdWFsIGJlY2F1c2Ugc29tZXRpbWVzIGEgc2luZ2xlIGJ1dHRvbiBjYW4gYmUgaW4gYSAuYnRuLWdyb3VwIGFuZCB3ZSBuZWVkIDpmaXJzdC1jaGlsZCBhbmQgOmxhc3QtY2hpbGQgdG8gYm90aCBtYXRjaFxuLmJ0bi1ncm91cCA+IC5idG46Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgJjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgfVxufVxuLy8gTmVlZCAuZHJvcGRvd24tdG9nZ2xlIHNpbmNlIDpsYXN0LWNoaWxkIGRvZXNuJ3QgYXBwbHksIGdpdmVuIHRoYXQgYSAuZHJvcGRvd24tbWVudSBpcyB1c2VkIGltbWVkaWF0ZWx5IGFmdGVyIGl0XG4uYnRuLWdyb3VwID4gLmJ0bjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmJ0bi1ncm91cCA+IC5kcm9wZG93bi10b2dnbGU6bm90KDpmaXJzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG5cbi8vIEN1c3RvbSBlZGl0cyBmb3IgaW5jbHVkaW5nIGJ0bi1ncm91cHMgd2l0aGluIGJ0bi1ncm91cHMgKHVzZWZ1bCBmb3IgaW5jbHVkaW5nIGRyb3Bkb3duIGJ1dHRvbnMgd2l0aGluIGEgYnRuLWdyb3VwKVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXAge1xuICBmbG9hdDogbGVmdDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICA+IC5idG46bGFzdC1jaGlsZCxcbiAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cblxuLy8gT24gYWN0aXZlIGFuZCBvcGVuLCBkb24ndCBzaG93IG91dGxpbmVcbi5idG4tZ3JvdXAgLmRyb3Bkb3duLXRvZ2dsZTphY3RpdmUsXG4uYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIG91dGxpbmU6IDA7XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAteHMgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXhzOyB9XG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEdpdmUgdGhlIGxpbmUgYmV0d2VlbiBidXR0b25zIHNvbWUgZGVwdGhcbi5idG4tZ3JvdXAgPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUge1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG59XG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBhbmQgc2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgM3B4IDVweCByZ2JhKDAsMCwwLC4xMjUpKTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vLyBSZXBvc2l0aW9uIHRoZSBjYXJldFxuLmJ0biAuY2FyZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi8vIENhcmV0cyBpbiBvdGhlciBidXR0b24gc2l6ZXNcbi5idG4tbGcgLmNhcmV0IHtcbiAgYm9yZGVyLXdpZHRoOiAkY2FyZXQtd2lkdGgtbGFyZ2UgJGNhcmV0LXdpZHRoLWxhcmdlIDA7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG59XG4vLyBVcHNpZGUgZG93biBjYXJldHMgZm9yIC5kcm9wdXBcbi5kcm9wdXAgLmJ0bi1sZyAuY2FyZXQge1xuICBib3JkZXItd2lkdGg6IDAgJGNhcmV0LXdpZHRoLWxhcmdlICRjYXJldC13aWR0aC1sYXJnZTtcbn1cblxuXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCxcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gQ2xlYXIgZmxvYXRzIHNvIGRyb3Bkb3duIG1lbnVzIGNhbiBiZSBwcm9wZXJseSBwbGFjZWRcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICA+IC5idG4ge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgPiAuYnRuICsgLmJ0bixcbiAgPiAuYnRuICsgLmJ0bi1ncm91cCxcbiAgPiAuYnRuLWdyb3VwICsgLmJ0bixcbiAgPiAuYnRuLWdyb3VwICsgLmJ0bi1ncm91cCB7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB7XG4gICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICAmOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgfVxufVxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gID4gLmJ0bjpsYXN0LWNoaWxkLFxuICA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xufVxuXG5cbi8vIEp1c3RpZmllZCBidXR0b24gZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tZ3JvdXAtanVzdGlmaWVkIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB3aWR0aDogMSU7XG4gIH1cbiAgPiAuYnRuLWdyb3VwIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuLWdyb3VwIC5kcm9wZG93bi1tZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcbi8vXG4vLyBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBicm93c2VyJ3MgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrLCBwb3dlcmVkIGJ5IHRoZVxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXG4vLyBTaW1wbHkgdmlzdWFsbHkgaGlkaW5nIHRoZSBpbnB1dHMgdmlhIGBvcGFjaXR5YCB3b3VsZCBsZWF2ZSB0aGVtIGNsaWNrYWJsZSBpblxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cblxuW2RhdGEtdG9nZ2xlPVwiYnV0dG9uc1wiXSB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gSW5wdXQgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZHJvcGRvd25zXG4gIGRpc3BsYXk6IHRhYmxlO1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlOyAvLyBwcmV2ZW50IGlucHV0IGdyb3VwcyBmcm9tIGluaGVyaXRpbmcgYm9yZGVyIHN0eWxlcyBmcm9tIHRhYmxlIGNlbGxzIHdoZW4gcGxhY2VkIHdpdGhpbiBhIHRhYmxlXG5cbiAgLy8gVW5kbyBwYWRkaW5nIGFuZCBmbG9hdCBvZiBncmlkIGNsYXNzZXNcbiAgJltjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIC8vIEVuc3VyZSB0aGF0IHRoZSBpbnB1dCBpcyBhbHdheXMgYWJvdmUgdGhlICphcHBlbmRlZCogYWRkb24gYnV0dG9uIGZvclxuICAgIC8vIHByb3BlciBib3JkZXIgY29sb3JzLlxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgLy8gSUU5IGZ1YmFycyB0aGUgcGxhY2Vob2xkZXIgYXR0cmlidXRlIGluIHRleHQgaW5wdXRzIGFuZCB0aGUgYXJyb3dzIG9uXG4gICAgLy8gc2VsZWN0IGVsZW1lbnRzIGluIGlucHV0IGdyb3Vwcy4gVG8gZml4IGl0LCB3ZSBmbG9hdCB0aGUgaW5wdXQuIERldGFpbHM6XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU2MSNpc3N1ZWNvbW1lbnQtMjg5MzY4NTVcbiAgICBmbG9hdDogbGVmdDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuICB9XG59XG5cbi8vIFNpemluZyBvcHRpb25zXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICBAZXh0ZW5kIC5pbnB1dC1sZztcbn1cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gIEBleHRlbmQgLmlucHV0LXNtO1xufVxuXG5cbi8vIERpc3BsYXkgYXMgdGFibGUtY2VsbFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWJ0bixcbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcblxuICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbi8vIEFkZG9uIGFuZCBhZGRvbiB3cmFwcGVyIGZvciBidXR0b25zXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgd2lkdGg6IDElO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBNYXRjaCB0aGUgaW5wdXRzXG59XG5cbi8vIFRleHQgaW5wdXQgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBwYWRkaW5nOiAkcGFkZGluZy1iYXNlLXZlcnRpY2FsICRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7XG5cbiAgLy8gU2l6aW5nXG4gICYuaW5wdXQtc20ge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsO1xuICB9XG4gICYuaW5wdXQtbGcge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlO1xuICB9XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4vLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmZpcnN0LWNoaWxkLFxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bi1ncm91cCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbn1cbi5pbnB1dC1ncm91cC1hZGRvbjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmxhc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYWRkb246bGFzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5kcm9wZG93bi10b2dnbGUsXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cbi5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbi8vIEJ1dHRvbiBpbnB1dCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pbnB1dC1ncm91cC1idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEphbmtpbHkgcHJldmVudCBpbnB1dCBidXR0b24gZ3JvdXBzIGZyb20gd3JhcHBpbmcgd2l0aCBgd2hpdGUtc3BhY2VgIGFuZFxuICAvLyBgZm9udC1zaXplYCBpbiBjb21iaW5hdGlvbiB3aXRoIGBpbmxpbmUtYmxvY2tgIG9uIGJ1dHRvbnMuXG4gIGZvbnQtc2l6ZTogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIHNwYWNpbmcsIHBvc2l0aW9uIGZvciBicmluZ2luZyBob3ZlcmVkL2ZvY3VzZWQvYWN0aXZlZFxuICAvLyBlbGVtZW50IGFib3ZlIHRoZSBzaWJsaW5ncy5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgKyAuYnRuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgIH1cbiAgICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBidXR0b24gdG8gdGhlIGZyb250XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICB9XG5cbiAgLy8gTmVnYXRpdmUgbWFyZ2luIHRvIG9ubHkgaGF2ZSBhIDFweCBib3JkZXIgYmV0d2VlbiB0aGUgdHdvXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgID4gLmJ0bixcbiAgICA+IC5idG4tZ3JvdXAge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICAgIH1cbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgID4gLmJ0bixcbiAgICA+IC5idG4tZ3JvdXAge1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIE5hdnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm5hdiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCB1bC9vbFxuICBsaXN0LXN0eWxlOiBub25lO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICA+IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICA+IGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAkbmF2LWxpbmstcGFkZGluZztcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3RhdGUgc2V0cyB0ZXh0IHRvIGdyYXkgYW5kIG51a2VzIGhvdmVyL3RhYiBlZmZlY3RzXG4gICAgJi5kaXNhYmxlZCA+IGEge1xuICAgICAgY29sb3I6ICRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gT3BlbiBkcm9wZG93bnNcbiAgLm9wZW4gPiBhIHtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LWxpbmstaG92ZXItYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIE5hdiBkaXZpZGVycyAoZGVwcmVjYXRlZCB3aXRoIHYzLjAuMSlcbiAgLy9cbiAgLy8gVGhpcyBzaG91bGQgaGF2ZSBiZWVuIHJlbW92ZWQgaW4gdjMgd2l0aCB0aGUgZHJvcHBpbmcgb2YgYC5uYXYtbGlzdGAsIGJ1dFxuICAvLyB3ZSBtaXNzZWQgaXQuIFdlIGRvbid0IGN1cnJlbnRseSBzdXBwb3J0IHRoaXMgYW55d2hlcmUsIGJ1dCBpbiB0aGUgaW50ZXJlc3RcbiAgLy8gb2YgbWFpbnRhaW5pbmcgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBpbiBjYXNlIHlvdSB1c2UgaXQsIGl0J3MgZGVwcmVjYXRlZC5cbiAgLm5hdi1kaXZpZGVyIHtcbiAgICBAaW5jbHVkZSBuYXYtZGl2aWRlcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgSUU4IGZyb20gbWlzcGxhY2luZyBpbWdzXG4gIC8vXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9pc3N1ZXMvOTg0I2lzc3VlY29tbWVudC0zOTg1OTg5XG4gID4gbGkgPiBhID4gaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBUYWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEdpdmUgdGhlIHRhYnMgc29tZXRoaW5nIHRvIHNpdCBvblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8vIE1ha2UgdGhlIGxpc3QtaXRlbXMgb3ZlcmxheSB0aGUgYm90dG9tIGJvcmRlclxuICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG5cbiAgICAvLyBBY3R1YWwgdGFicyAoYXMgbGlua3MpXG4gICAgPiBhIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZSwgYW5kIGl0cyA6aG92ZXIgdG8gb3ZlcnJpZGUgbm9ybWFsIDpob3ZlclxuICAgICYuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIHB1bGxpbmcgdGhpcyBpbiBtYWlubHkgZm9yIGxlc3Mgc2hvcnRoYW5kXG4gICYubmF2LWp1c3RpZmllZCB7XG4gICAgQGV4dGVuZCAubmF2LWp1c3RpZmllZDtcbiAgICBAZXh0ZW5kIC5uYXYtdGFicy1qdXN0aWZpZWQ7XG4gIH1cbn1cblxuXG4vLyBQaWxsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm5hdi1waWxscyB7XG4gID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgLy8gTGlua3MgcmVuZGVyZWQgYXMgcGlsbHNcbiAgICA+IGEge1xuICAgICAgYm9yZGVyLXJhZGl1czogJG5hdi1waWxscy1ib3JkZXItcmFkaXVzO1xuICAgIH1cbiAgICArIGxpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFN0YWNrZWQgcGlsbHNcbi5uYXYtc3RhY2tlZCB7XG4gID4gbGkge1xuICAgIGZsb2F0OiBub25lO1xuICAgICsgbGkge1xuICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IC8vIG5vIG5lZWQgZm9yIHRoaXMgZ2FwIGJldHdlZW4gbmF2IGl0ZW1zXG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2IHZhcmlhdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEp1c3RpZmllZCBuYXYgbGlua3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm5hdi1qdXN0aWZpZWQge1xuICB3aWR0aDogMTAwJTtcblxuICA+IGxpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICA+IGEge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIH1cbiAgfVxuXG4gID4gLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgID4gbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgID4gYSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE1vdmUgYm9yZGVycyB0byBhbmNob3JzIGluc3RlYWQgb2YgYm90dG9tIG9mIGxpc3Rcbi8vXG4vLyBNaXhpbiBmb3IgYWRkaW5nIG9uIHRvcCB0aGUgc2hhcmVkIGAubmF2LWp1c3RpZmllZGAgc3R5bGVzIGZvciBvdXIgdGFic1xuLm5hdi10YWJzLWp1c3RpZmllZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgPiBsaSA+IGEge1xuICAgIC8vIE92ZXJyaWRlIG1hcmdpbiBmcm9tIC5uYXYtdGFic1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICB9XG5cbiAgPiAuYWN0aXZlID4gYSxcbiAgPiAuYWN0aXZlID4gYTpob3ZlcixcbiAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZSAkYm9yZGVyLXJhZGl1cy1iYXNlIDAgMDtcbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSxcbiAgICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICAgID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFiYmFibGUgdGFic1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuXG4vLyBEcm9wZG93bnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gU3BlY2lmaWMgZHJvcGRvd25zXG4ubmF2LXRhYnMgLmRyb3Bkb3duLW1lbnUge1xuICAvLyBtYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG59XG4iLCIvL1xuLy8gTmF2YmFyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBXcmFwcGVyIGFuZCBiYXNlIGNsYXNzXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAkbmF2YmFyLWhlaWdodDsgLy8gRW5zdXJlIGEgbmF2YmFyIGFsd2F5cyBzaG93cyAoZS5nLiwgd2l0aG91dCBhIC5uYXZiYXItYnJhbmQgaW4gY29sbGFwc2VkIG1vZGUpXG4gIG1hcmdpbi1ib3R0b206ICRuYXZiYXItbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgLy8gUHJldmVudCBmbG9hdHMgZnJvbSBicmVha2luZyB0aGUgbmF2YmFyXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgYm9yZGVyLXJhZGl1czogJG5hdmJhci1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIGhlYWRpbmdcbi8vXG4vLyBHcm91cHMgYC5uYXZiYXItYnJhbmRgIGFuZCBgLm5hdmJhci10b2dnbGVgIGludG8gYSBzaW5nbGUgY29tcG9uZW50IGZvciBlYXN5XG4vLyBzdHlsaW5nIG9mIHJlc3BvbnNpdmUgYXNwZWN0cy5cblxuLm5hdmJhci1oZWFkZXIge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuLy8gTmF2YmFyIGNvbGxhcHNlIChib2R5KVxuLy9cbi8vIEdyb3VwIHlvdXIgbmF2YmFyIGNvbnRlbnQgaW50byB0aGlzIGZvciBlYXN5IGNvbGxhcHNpbmcgYW5kIGV4cGFuZGluZyBhY3Jvc3Ncbi8vIHZhcmlvdXMgZGV2aWNlIHNpemVzLiBCeSBkZWZhdWx0LCB0aGlzIGNvbnRlbnQgaXMgY29sbGFwc2VkIHdoZW4gPDc2OHB4LCBidXRcbi8vIHdpbGwgZXhwYW5kIHBhc3QgdGhhdCBmb3IgYSBob3Jpem9udGFsIGRpc3BsYXkuXG4vL1xuLy8gVG8gc3RhcnQgKG9uIG1vYmlsZSBkZXZpY2VzKSB0aGUgbmF2YmFyIGxpbmtzLCBmb3JtcywgYW5kIGJ1dHRvbnMgYXJlIHN0YWNrZWRcbi8vIHZlcnRpY2FsbHkgYW5kIGluY2x1ZGUgYSBgbWF4LWhlaWdodGAgdG8gb3ZlcmZsb3cgaW4gY2FzZSB5b3UgaGF2ZSB0b28gbXVjaFxuLy8gY29udGVudCBmb3IgdGhlIHVzZXIncyB2aWV3cG9ydC5cblxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIG92ZXJmbG93LXg6IHZpc2libGU7XG4gIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBwYWRkaW5nLWxlZnQ6ICAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICYuaW4ge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgICYuY29sbGFwc2Uge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgc2V0dGluZ1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLmluIHtcbiAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLy8gVW5kbyB0aGUgY29sbGFwc2Ugc2lkZSBwYWRkaW5nIGZvciBuYXZiYXJzIHdpdGggY29udGFpbmVycyB0byBlbnN1cmVcbiAgICAvLyBhbGlnbm1lbnQgb2YgcmlnaHQtYWxpZ25lZCBjb250ZW50cy5cbiAgICAubmF2YmFyLWZpeGVkLXRvcCAmLFxuICAgIC5uYXZiYXItc3RhdGljLXRvcCAmLFxuICAgIC5uYXZiYXItZml4ZWQtYm90dG9tICYge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gIH1cbn1cblxuLm5hdmJhci1maXhlZC10b3AsXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSB7XG4gIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIG1heC1oZWlnaHQ6ICRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDtcblxuICAgIEBtZWRpYSAobWF4LWRldmljZS13aWR0aDogJHNjcmVlbi14cy1taW4pIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgbWF4LWhlaWdodDogMjAwcHg7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQm90aCBuYXZiYXIgaGVhZGVyIGFuZCBjb2xsYXBzZVxuLy9cbi8vIFdoZW4gYSBjb250YWluZXIgaXMgcHJlc2VudCwgY2hhbmdlIHRoZSBiZWhhdmlvciBvZiB0aGUgaGVhZGVyIGFuZCBjb2xsYXBzZS5cblxuLmNvbnRhaW5lcixcbi5jb250YWluZXItZmx1aWQge1xuICA+IC5uYXZiYXItaGVhZGVyLFxuICA+IC5uYXZiYXItY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIG1hcmdpbi1sZWZ0OiAgLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAgMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gTmF2YmFyIGFsaWdubWVudCBvcHRpb25zXG4vL1xuLy8gRGlzcGxheSB0aGUgbmF2YmFyIGFjcm9zcyB0aGUgZW50aXJldHkgb2YgdGhlIHBhZ2Ugb3IgZml4ZWQgaXQgdG8gdGhlIHRvcCBvclxuLy8gYm90dG9tIG9mIHRoZSBwYWdlLlxuXG4vLyBTdGF0aWMgdG9wICh1bmZpeGVkLCBidXQgMTAwJSB3aWRlKSBuYXZiYXJcbi5uYXZiYXItc3RhdGljLXRvcCB7XG4gIHotaW5kZXg6ICR6aW5kZXgtbmF2YmFyO1xuICBib3JkZXItd2lkdGg6IDAgMCAxcHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5cbi8vIEZpeCB0aGUgdG9wL2JvdHRvbSBuYXZiYXJzIHdoZW4gc2NyZWVuIHJlYWwgZXN0YXRlIHN1cHBvcnRzIGl0XG4ubmF2YmFyLWZpeGVkLXRvcCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1uYXZiYXItZml4ZWQ7XG5cbiAgLy8gVW5kbyB0aGUgcm91bmRlZCBjb3JuZXJzXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuLm5hdmJhci1maXhlZC10b3Age1xuICB0b3A6IDA7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcbn1cbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBvdmVycmlkZSAubmF2YmFyIGRlZmF1bHRzXG4gIGJvcmRlci13aWR0aDogMXB4IDAgMDtcbn1cblxuXG4vLyBCcmFuZC9wcm9qZWN0IG5hbWVcblxuLm5hdmJhci1icmFuZCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmctdmVydGljYWwgJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICA+IGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIC5uYXZiYXIgPiAuY29udGFpbmVyICYsXG4gICAgLm5hdmJhciA+IC5jb250YWluZXItZmx1aWQgJiB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0b2dnbGVcbi8vXG4vLyBDdXN0b20gYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgYC5uYXZiYXItY29sbGFwc2VgLCBwb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZVxuLy8gSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi5uYXZiYXItdG9nZ2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIHBhZGRpbmc6IDlweCAxMHB4O1xuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oMzRweCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gIC8vIFdlIHJlbW92ZSB0aGUgYG91dGxpbmVgIGhlcmUsIGJ1dCBsYXRlciBjb21wZW5zYXRlIGJ5IGF0dGFjaGluZyBgOmhvdmVyYFxuICAvLyBzdHlsZXMgdG8gYDpmb2N1c2AuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAvLyBCYXJzXG4gIC5pY29uLWJhciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xuICB9XG4gIC5pY29uLWJhciArIC5pY29uLWJhciB7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdiBsaW5rc1xuLy9cbi8vIEJ1aWxkcyBvbiB0b3Agb2YgdGhlIGAubmF2YCBjb21wb25lbnRzIHdpdGggaXRzIG93biBtb2RpZmllciBjbGFzcyB0byBtYWtlXG4vLyB0aGUgbmF2IHRoZSBmdWxsIGhlaWdodCBvZiB0aGUgaG9yaXpvbnRhbCBuYXYgKGFib3ZlIDc2OHB4KS5cblxuLm5hdmJhci1uYXYge1xuICBtYXJnaW46ICgkbmF2YmFyLXBhZGRpbmctdmVydGljYWwgLyAyKSAoLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsKTtcblxuICA+IGxpID4gYSB7XG4gICAgcGFkZGluZy10b3A6ICAgIDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgIC8vIERyb3Bkb3ducyBnZXQgY3VzdG9tIGRpc3BsYXkgd2hlbiBjb2xsYXBzZWRcbiAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICA+IGxpID4gYSxcbiAgICAgIC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiA1cHggMTVweCA1cHggMjVweDtcbiAgICAgIH1cbiAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFVuY29sbGFwc2UgdGhlIG5hdlxuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMDtcblxuICAgID4gbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICA+IGEge1xuICAgICAgICBwYWRkaW5nLXRvcDogICAgJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBmb3JtXG4vL1xuLy8gRXh0ZW5zaW9uIG9mIHRoZSBgLmZvcm0taW5saW5lYCB3aXRoIHNvbWUgZXh0cmEgZmxhdm9yIGZvciBvcHRpbXVtIGRpc3BsYXkgaW5cbi8vIG91ciBuYXZiYXJzLlxuXG4ubmF2YmFyLWZvcm0ge1xuICBtYXJnaW4tbGVmdDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgcGFkZGluZzogMTBweCAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICRzaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSksIDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XG5cbiAgLy8gTWl4aW4gYmVoYXZpb3IgZm9yIG9wdGltdW0gZGlzcGxheVxuICBAaW5jbHVkZSBmb3JtLWlubGluZTtcblxuICAuZm9ybS1ncm91cCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWxseSBjZW50ZXIgaW4gZXhwYW5kZWQsIGhvcml6b250YWwgbmF2YmFyXG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkaW5wdXQtaGVpZ2h0LWJhc2UpO1xuXG4gIC8vIFVuZG8gMTAwJSB3aWR0aCBmb3IgcHVsbCBjbGFzc2VzXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy8gRHJvcGRvd24gbWVudXNcblxuLy8gTWVudSBwb3NpdGlvbiBhbmQgbWVudSBjYXJldHNcbi5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xufVxuLy8gTWVudSBwb3NpdGlvbiBhbmQgbWVudSBjYXJldCBzdXBwb3J0IGZvciBkcm9wdXBzIHZpYSBleHRyYSBkcm9wdXAgY2xhc3Ncbi5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItbmF2ID4gbGkgPiAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXZiYXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xufVxuXG5cbi8vIEJ1dHRvbnMgaW4gbmF2YmFyc1xuLy9cbi8vIFZlcnRpY2FsbHkgY2VudGVyIGEgYnV0dG9uIHdpdGhpbiBhIG5hdmJhciAod2hlbiAqbm90KiBpbiBhIGZvcm0pLlxuXG4ubmF2YmFyLWJ0biB7XG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkaW5wdXQtaGVpZ2h0LWJhc2UpO1xuXG4gICYuYnRuLXNtIHtcbiAgICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1zbWFsbCk7XG4gIH1cbiAgJi5idG4teHMge1xuICAgIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigyMik7XG4gIH1cbn1cblxuXG4vLyBUZXh0IGluIG5hdmJhcnNcbi8vXG4vLyBBZGQgYSBjbGFzcyB0byBtYWtlIGFueSBlbGVtZW50IHByb3Blcmx5IGFsaWduIGl0c2VsZiB2ZXJ0aWNhbGx5IHdpdGhpbiB0aGUgbmF2YmFycy5cblxuLm5hdmJhci10ZXh0IHtcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRsaW5lLWhlaWdodC1jb21wdXRlZCk7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgfVxufVxuXG5cbi8vIENvbXBvbmVudCBhbGlnbm1lbnRcbi8vXG4vLyBSZXB1cnBvc2UgdGhlIHB1bGwgdXRpbGl0aWVzIGFzIHRoZWlyIG93biBuYXZiYXIgdXRpbGl0aWVzIHRvIGF2b2lkIHNwZWNpZmljaXR5XG4vLyBpc3N1ZXMgd2l0aCBwYXJlbnRzIGFuZCBjaGFpbmluZy4gT25seSBkbyB0aGlzIHdoZW4gdGhlIG5hdmJhciBpcyB1bmNvbGxhcHNlZFxuLy8gdGhvdWdoIHNvIHRoYXQgbmF2YmFyIGNvbnRlbnRzIHByb3Blcmx5IHN0YWNrIGFuZCBhbGlnbiBpbiBtb2JpbGUuXG4vL1xuLy8gRGVjbGFyZWQgYWZ0ZXIgdGhlIG5hdmJhciBjb21wb25lbnRzIHRvIGVuc3VyZSBtb3JlIHNwZWNpZmljaXR5IG9uIHRoZSBtYXJnaW5zLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAubmF2YmFyLWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm5hdmJhci1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogLSRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuXG4gICAgfiAubmF2YmFyLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgbmF2YmFyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRGVmYXVsdCBuYXZiYXJcbi5uYXZiYXItZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1iZztcbiAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYm9yZGVyO1xuXG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGUge1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc7XG4gICAgfVxuICAgIC5pY29uLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItY29sbGFwc2UsXG4gIC5uYXZiYXItZm9ybSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYm9yZGVyO1xuICB9XG5cbiAgLy8gRHJvcGRvd24gbWVudSBpdGVtc1xuICAubmF2YmFyLW5hdiB7XG4gICAgLy8gUmVtb3ZlIGJhY2tncm91bmQgY29sb3IgZnJvbSBvcGVuIGRyb3Bkb3duXG4gICAgPiAub3BlbiA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheSB3aGVuIGNvbGxhcHNlZFxuICAgICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICA+IGxpID4gYSB7XG4gICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAgICAgJixcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC8vIExpbmtzIGluIG5hdmJhcnNcbiAgLy9cbiAgLy8gQWRkIGEgY2xhc3MgdG8gZW5zdXJlIGxpbmtzIG91dHNpZGUgdGhlIG5hdmJhciBuYXYgYXJlIGNvbG9yZWQgY29ycmVjdGx5LlxuXG4gIC5uYXZiYXItbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICAgICZbZGlzYWJsZWRdLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBJbnZlcnNlIG5hdmJhclxuXG4ubmF2YmFyLWludmVyc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYmc7XG4gIGJvcmRlci1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcblxuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmRpc2FibGVkID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIERhcmtlbiB0aGUgcmVzcG9uc2l2ZSBuYXYgdG9nZ2xlXG4gIC5uYXZiYXItdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlLWhvdmVyLWJnO1xuICAgIH1cbiAgICAuaWNvbi1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLWNvbGxhcHNlLFxuICAubmF2YmFyLWZvcm0ge1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgNyUpO1xuICB9XG5cbiAgLy8gRHJvcGRvd25zXG4gIC5uYXZiYXItbmF2IHtcbiAgICA+IC5vcGVuID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5XG4gICAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgID4gLmRyb3Bkb3duLWhlYWRlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuICAgICAgICB9XG4gICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuICAgICAgICB9XG4gICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I7XG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICAgICZbZGlzYWJsZWRdLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5icmVhZGNydW1iIHtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbCAkYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgKyBsaTpiZWZvcmUge1xuICAgICAgLy8gW2NvbnZlcnRlcl0gV29ya2Fyb3VuZCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MvbGlic2Fzcy9pc3N1ZXMvMTExNVxuICAgICAgJG5ic3A6IFwiXFwwMGEwXCI7XG4gICAgICBjb250ZW50OiBcIiN7JGJyZWFkY3J1bWItc2VwYXJhdG9yfSN7JG5ic3B9XCI7IC8vIFVuaWNvZGUgc3BhY2UgYWRkZWQgc2luY2UgaW5saW5lLWJsb2NrIG1lYW5zIG5vbi1jb2xsYXBzaW5nIHdoaXRlLXNwYWNlXG4gICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1jb2xvcjtcbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi8vXG4vLyBQYWdpbmF0aW9uIChtdWx0aXBsZSBwYWdlcylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTsgLy8gUmVtb3ZlIGxpc3Qtc3R5bGUgYW5kIGJsb2NrLWxldmVsIGRlZmF1bHRzXG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gQ29sbGFwc2Ugd2hpdGUtc3BhY2VcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXI7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IGxpID4gYSxcbiAgPiBsaSA+IHNwYW4ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUgPiBhLFxuICA+IC5hY3RpdmUgPiBzcGFuIHtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG4gIH1cblxuICA+IC5kaXNhYmxlZCB7XG4gICAgPiBzcGFuLFxuICAgID4gc3Bhbjpob3ZlcixcbiAgICA+IHNwYW46Zm9jdXMsXG4gICAgPiBhLFxuICAgID4gYTpob3ZlcixcbiAgICA+IGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjtcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBMYXJnZVxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGJvcmRlci1yYWRpdXMtbGFyZ2UpO1xufVxuXG4vLyBTbWFsbFxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJvcmRlci1yYWRpdXMtc21hbGwpO1xufVxuIiwiLy9cbi8vIFBhZ2VyIHBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLnBhZ2VyIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogNXB4IDE0cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItYmc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcGFnZXItYm9yZGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogJHBhZ2VyLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgPiBhOmhvdmVyLFxuICAgID4gYTpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5leHQge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5wcmV2aW91cyB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cblxuICAuZGlzYWJsZWQge1xuICAgID4gYSxcbiAgICA+IGE6aG92ZXIsXG4gICAgPiBhOmZvY3VzLFxuICAgID4gc3BhbiB7XG4gICAgICBjb2xvcjogJHBhZ2VyLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2VyLWJnO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIExhYmVsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBwYWRkaW5nOiAuMmVtIC42ZW0gLjNlbTtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRsYWJlbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJvcmRlci1yYWRpdXM6IC4yNWVtO1xuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmxhYmVsXG5cbiAgLy8gRW1wdHkgbGFiZWxzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHkgKG5vdCBhdmFpbGFibGUgaW4gSUU4KVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gUXVpY2sgZml4IGZvciBsYWJlbHMgaW4gYnV0dG9uc1xuICAuYnRuICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cbn1cblxuLy8gQWRkIGhvdmVyIGVmZmVjdHMsIGJ1dCBvbmx5IGZvciBsaW5rc1xuYS5sYWJlbCB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGFiZWwtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi8vIENvbG9yc1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgbGFiZWxzIGdldCBkYXJrZXIgb24gOmhvdmVyKVxuXG4ubGFiZWwtZGVmYXVsdCB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLWRlZmF1bHQtYmcpO1xufVxuXG4ubGFiZWwtcHJpbWFyeSB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLXByaW1hcnktYmcpO1xufVxuXG4ubGFiZWwtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLXN1Y2Nlc3MtYmcpO1xufVxuXG4ubGFiZWwtaW5mbyB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLWluZm8tYmcpO1xufVxuXG4ubGFiZWwtd2FybmluZyB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxhYmVsLXdhcm5pbmctYmcpO1xufVxuXG4ubGFiZWwtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtZGFuZ2VyLWJnKTtcbn1cbiIsIi8vXG4vLyBCYWRnZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDEwcHg7XG4gIHBhZGRpbmc6IDNweCA3cHg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgY29sb3I6ICRiYWRnZS1jb2xvcjtcbiAgbGluZS1oZWlnaHQ6ICRiYWRnZS1saW5lLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFkZ2UtYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRiYWRnZS1ib3JkZXItcmFkaXVzO1xuXG4gIC8vIEVtcHR5IGJhZGdlcyBjb2xsYXBzZSBhdXRvbWF0aWNhbGx5IChub3QgYXZhaWxhYmxlIGluIElFOClcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbiAgLmJ0biAmIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4O1xuICB9XG5cbiAgLmJ0bi14cyAmLFxuICAuYnRuLWdyb3VwLXhzID4gLmJ0biAmIHtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZzogMXB4IDVweDtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmJhZGdlXG5cbiAgLy8gQWNjb3VudCBmb3IgYmFkZ2VzIGluIG5hdnNcbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgPiAmLFxuICAubmF2LXBpbGxzID4gLmFjdGl2ZSA+IGEgPiAmIHtcbiAgICBjb2xvcjogJGJhZGdlLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFkZ2UtYWN0aXZlLWJnO1xuICB9XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG4gIC5saXN0LWdyb3VwLWl0ZW0gPiAmICsgJiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cblxuICAubmF2LXBpbGxzID4gbGkgPiBhID4gJiB7XG4gICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgfVxufVxuXG4vLyBIb3ZlciBzdGF0ZSwgYnV0IG9ubHkgZm9yIGxpbmtzXG5hLmJhZGdlIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRiYWRnZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbiIsIi8vXG4vLyBKdW1ib3Ryb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmctdG9wOiAgICAkanVtYm90cm9uLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkanVtYm90cm9uLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgY29sb3I6ICRqdW1ib3Ryb24tY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRqdW1ib3Ryb24tYmc7XG5cbiAgaDEsXG4gIC5oMSB7XG4gICAgY29sb3I6ICRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206ICgkanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcbiAgICBmb250LXNpemU6ICRqdW1ib3Ryb24tZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIH1cblxuICA+IGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGp1bWJvdHJvbi1iZywgMTAlKTtcbiAgfVxuXG4gIC5jb250YWluZXIgJixcbiAgLmNvbnRhaW5lci1mbHVpZCAmIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTsgLy8gT25seSByb3VuZCBjb3JuZXJzIGF0IGhpZ2hlciByZXNvbHV0aW9ucyBpZiBjb250YWluZWQgaW4gYSBjb250YWluZXJcbiAgICBwYWRkaW5nLWxlZnQ6ICAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gICAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICB9XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBwYWRkaW5nLXRvcDogICAgKCRqdW1ib3Ryb24tcGFkZGluZyAqIDEuNik7XG4gICAgcGFkZGluZy1ib3R0b206ICgkanVtYm90cm9uLXBhZGRpbmcgKiAxLjYpO1xuXG4gICAgLmNvbnRhaW5lciAmLFxuICAgIC5jb250YWluZXItZmx1aWQgJiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICAoJGp1bWJvdHJvbi1wYWRkaW5nICogMik7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMik7XG4gICAgfVxuXG4gICAgaDEsXG4gICAgLmgxIHtcbiAgICAgIGZvbnQtc2l6ZTogJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBUaHVtYm5haWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIE1peGluIGFuZCBhZGp1c3QgdGhlIHJlZ3VsYXIgaW1hZ2UgY2xhc3Ncbi50aHVtYm5haWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXIgLjJzIGVhc2UtaW4tb3V0KTtcblxuICA+IGltZyxcbiAgYSA+IGltZyB7XG4gICAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmOmhvdmVyLCBhJjpmb2N1cywgYSYuYWN0aXZlIHRvIGEudGh1bWJuYWlsOmhvdmVyLCBhLnRodW1ibmFpbDpmb2N1cywgYS50aHVtYm5haWwuYWN0aXZlXG5cbiAgLy8gSW1hZ2UgY2FwdGlvbnNcbiAgLmNhcHRpb24ge1xuICAgIHBhZGRpbmc6ICR0aHVtYm5haWwtY2FwdGlvbi1wYWRkaW5nO1xuICAgIGNvbG9yOiAkdGh1bWJuYWlsLWNhcHRpb24tY29sb3I7XG4gIH1cbn1cblxuLy8gQWRkIGEgaG92ZXIgc3RhdGUgZm9yIGxpbmtlZCB2ZXJzaW9ucyBvbmx5XG5hLnRodW1ibmFpbDpob3ZlcixcbmEudGh1bWJuYWlsOmZvY3VzLFxuYS50aHVtYm5haWwuYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAkbGluay1jb2xvcjtcbn1cbiIsIi8vXG4vLyBBbGVydHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmFsZXJ0IHtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRhbGVydC1ib3JkZXItcmFkaXVzO1xuXG4gIC8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4gIGg0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIC8vIFNwZWNpZmllZCBmb3IgdGhlIGg0IHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbiAgLmFsZXJ0LWxpbmsge1xuICAgIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbiAgfVxuXG4gIC8vIEltcHJvdmUgYWxpZ25tZW50IGFuZCBzcGFjaW5nIG9mIGlubmVyIGNvbnRlbnRcbiAgPiBwLFxuICA+IHVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgPiBwICsgcCB7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICB9XG59XG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2FibGUsIC8vIFRoZSBtaXNzcGVsbGVkIC5hbGVydC1kaXNtaXNzYWJsZSB3YXMgZGVwcmVjYXRlZCBpbiAzLjIuMC5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICgkYWxlcnQtcGFkZGluZyArIDIwKTtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuY2xvc2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0ycHg7XG4gICAgcmlnaHQ6IC0yMXB4O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxuXG4uYWxlcnQtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LXN1Y2Nlc3MtYmcsICRhbGVydC1zdWNjZXNzLWJvcmRlciwgJGFsZXJ0LXN1Y2Nlc3MtdGV4dCk7XG59XG5cbi5hbGVydC1pbmZvIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtaW5mby1iZywgJGFsZXJ0LWluZm8tYm9yZGVyLCAkYWxlcnQtaW5mby10ZXh0KTtcbn1cblxuLmFsZXJ0LXdhcm5pbmcge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC13YXJuaW5nLWJnLCAkYWxlcnQtd2FybmluZy1ib3JkZXIsICRhbGVydC13YXJuaW5nLXRleHQpO1xufVxuXG4uYWxlcnQtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtZGFuZ2VyLWJnLCAkYWxlcnQtZGFuZ2VyLWJvcmRlciwgJGFsZXJ0LWRhbmdlci10ZXh0KTtcbn1cbiIsIi8vXG4vLyBQcm9ncmVzcyBiYXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhciBhbmltYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFdlYktpdFxuQC13ZWJraXQta2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgZnJvbSAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0MHB4IDA7IH1cbiAgdG8gICAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbn1cblxuLy8gU3BlYyBhbmQgSUUxMCtcbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tICB7IGJhY2tncm91bmQtcG9zaXRpb246IDQwcHggMDsgfVxuICB0byAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxufVxuXG5cbi8vIEJhciBpdHNlbGZcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gT3V0ZXIgY29udGFpbmVyXG4ucHJvZ3Jlc3Mge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLC4xKSk7XG59XG5cbi8vIEJhciBvZiBwcm9ncmVzc1xuLnByb2dyZXNzLWJhciB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBjb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJnO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjE1KSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24od2lkdGggLjZzIGVhc2UpO1xufVxuXG4vLyBTdHJpcGVkIGJhcnNcbi8vXG4vLyBgLnByb2dyZXNzLXN0cmlwZWQgLnByb2dyZXNzLWJhcmAgaXMgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgaW4gZmF2b3Igb2YgdGhlXG4vLyBgLnByb2dyZXNzLWJhci1zdHJpcGVkYCBjbGFzcywgd2hpY2ggeW91IGp1c3QgYWRkIHRvIGFuIGV4aXN0aW5nXG4vLyBgLnByb2dyZXNzLWJhcmAuXG4ucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyLFxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZDtcbiAgYmFja2dyb3VuZC1zaXplOiA0MHB4IDQwcHg7XG59XG5cbi8vIENhbGwgYW5pbWF0aW9uIGZvciB0aGUgYWN0aXZlIG9uZVxuLy9cbi8vIGAucHJvZ3Jlc3MuYWN0aXZlIC5wcm9ncmVzcy1iYXJgIGlzIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGluIGZhdm9yIG9mIHRoZVxuLy8gYC5wcm9ncmVzcy1iYXIuYWN0aXZlYCBhcHByb2FjaC5cbi5wcm9ncmVzcy5hY3RpdmUgLnByb2dyZXNzLWJhcixcbi5wcm9ncmVzcy1iYXIuYWN0aXZlIHtcbiAgQGluY2x1ZGUgYW5pbWF0aW9uKHByb2dyZXNzLWJhci1zdHJpcGVzIDJzIGxpbmVhciBpbmZpbml0ZSk7XG59XG5cblxuLy8gVmFyaWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucHJvZ3Jlc3MtYmFyLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmcpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLWluZm8ge1xuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLWluZm8tYmcpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXdhcm5pbmcge1xuICBAaW5jbHVkZSBwcm9ncmVzcy1iYXItdmFyaWFudCgkcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmcpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLWRhbmdlciB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnKTtcbn1cbiIsIi5tZWRpYSB7XG4gIC8vIFByb3BlciBzcGFjaW5nIGJldHdlZW4gaW5zdGFuY2VzIG9mIC5tZWRpYVxuICBtYXJnaW4tdG9wOiAxNXB4O1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLm1lZGlhLFxuLm1lZGlhLWJvZHkge1xuICB6b29tOiAxO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubWVkaWEtYm9keSB7XG4gIHdpZHRoOiAxMDAwMHB4O1xufVxuXG4ubWVkaWEtb2JqZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgLy8gRml4IGNvbGxhcHNlIGluIHdlYmtpdCBmcm9tIG1heC13aWR0aDogMTAwJSBhbmQgZGlzcGxheTogdGFibGUtY2VsbC5cbiAgJi5pbWctdGh1bWJuYWlsIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cblxuLm1lZGlhLXJpZ2h0LFxuLm1lZGlhID4gLnB1bGwtcmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG59XG5cbi5tZWRpYS1sZWZ0LFxuLm1lZGlhID4gLnB1bGwtbGVmdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5tZWRpYS1sZWZ0LFxuLm1lZGlhLXJpZ2h0LFxuLm1lZGlhLWJvZHkge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4ubWVkaWEtbWlkZGxlIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLm1lZGlhLWJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gaGVhZGluZ3MgZm9yIHRpZ2h0ZXIgZGVmYXVsdCBzcGFjaW5nXG4ubWVkaWEtaGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLy8gTWVkaWEgbGlzdCB2YXJpYXRpb25cbi8vXG4vLyBVbmRvIGRlZmF1bHQgdWwvb2wgc3R5bGVzXG4ubWVkaWEtbGlzdCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vXG4vLyBMaXN0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxufVxuXG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgLy8gUGxhY2UgdGhlIGJvcmRlciBvbiB0aGUgbGlzdCBpdGVtcyBhbmQgbmVnYXRpdmUgbWFyZ2luIHVwIGZvciBiZXR0ZXIgc3R5bGluZ1xuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyO1xuXG4gIC8vIFJvdW5kIHRoZSBmaXJzdCBhbmQgbGFzdCBpdGVtc1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlIGl0ZW1zLlxuLy8gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzaG93aW5nIHNlbGVjdGVkIGl0ZW1zLlxuXG5hLmxpc3QtZ3JvdXAtaXRlbSxcbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1jb2xvcjtcblxuICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XG4gIH1cbn1cblxuYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJi5kaXNhYmxlZCxcbiAgJi5kaXNhYmxlZDpob3ZlcixcbiAgJi5kaXNhYmxlZDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcblxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgICAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gQWN0aXZlIGNsYXNzIG9uIGl0ZW0gaXRzZWxmLCBub3QgcGFyZW50XG4gICYuYWN0aXZlLFxuICAmLmFjdGl2ZTpob3ZlcixcbiAgJi5hY3RpdmU6Zm9jdXMge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyO1xuXG4gICAgLy8gRm9yY2UgY29sb3IgdG8gaW5oZXJpdCBmb3IgY3VzdG9tIGNvbnRlbnRcbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcsXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gc21hbGwsXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nID4gLnNtYWxsIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgICAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoc3VjY2VzcywgJHN0YXRlLXN1Y2Nlc3MtYmcsICRzdGF0ZS1zdWNjZXNzLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoaW5mbywgJHN0YXRlLWluZm8tYmcsICRzdGF0ZS1pbmZvLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQod2FybmluZywgJHN0YXRlLXdhcm5pbmctYmcsICRzdGF0ZS13YXJuaW5nLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoZGFuZ2VyLCAkc3RhdGUtZGFuZ2VyLWJnLCAkc3RhdGUtZGFuZ2VyLXRleHQpO1xuXG5cbi8vIEN1c3RvbSBjb250ZW50IG9wdGlvbnNcbi8vXG4vLyBFeHRyYSBjbGFzc2VzIGZvciBjcmVhdGluZyB3ZWxsLWZvcm1hdHRlZCBjb250ZW50IHdpdGhpbiBgLmxpc3QtZ3JvdXAtaXRlbWBzLlxuXG4ubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4ubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuIiwiLy9cbi8vIFBhbmVsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4ucGFuZWwge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRwYW5lbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNSkpO1xufVxuXG4vLyBQYW5lbCBjb250ZW50c1xuLnBhbmVsLWJvZHkge1xuICBwYWRkaW5nOiAkcGFuZWwtYm9keS1wYWRkaW5nO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gT3B0aW9uYWwgaGVhZGluZ1xuLnBhbmVsLWhlYWRpbmcge1xuICBwYWRkaW5nOiAkcGFuZWwtaGVhZGluZy1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcblxuICA+IC5kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBXaXRoaW4gaGVhZGluZywgc3RyaXAgYW55IGBoKmAgdGFnIG9mIGl0cyBkZWZhdWx0IG1hcmdpbnMgZm9yIHNwYWNpbmcuXG4ucGFuZWwtdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMTI1KSk7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gID4gYSxcbiAgPiBzbWFsbCxcbiAgPiAuc21hbGwsXG4gID4gc21hbGwgPiBhLFxuICA+IC5zbWFsbCA+IGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIE9wdGlvbmFsIGZvb3RlciAoc3RheXMgZ3JheSBpbiBldmVyeSBtb2RpZmllciBjbGFzcylcbi5wYW5lbC1mb290ZXIge1xuICBwYWRkaW5nOiAkcGFuZWwtZm9vdGVyLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1mb290ZXItYmc7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG59XG5cblxuLy8gTGlzdCBncm91cHMgaW4gcGFuZWxzXG4vL1xuLy8gQnkgZGVmYXVsdCwgc3BhY2Ugb3V0IGxpc3QgZ3JvdXAgY29udGVudCBmcm9tIHBhbmVsIGhlYWRpbmdzIHRvIGFjY291bnQgZm9yXG4vLyBhbnkga2luZCBvZiBjdXN0b20gY29udGVudCBiZXR3ZWVuIHRoZSB0d28uXG5cbi5wYW5lbCB7XG4gID4gLmxpc3QtZ3JvdXAsXG4gID4gLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC5wYW5lbC1oZWFkaW5nICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG59XG4vLyBDb2xsYXBzZSBzcGFjZSBiZXR3ZWVuIHdoZW4gdGhlcmUncyBubyBhZGRpdGlvbmFsIGNvbnRlbnQuXG4ucGFuZWwtaGVhZGluZyArIC5saXN0LWdyb3VwIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxufVxuLmxpc3QtZ3JvdXAgKyAucGFuZWwtZm9vdGVyIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbn1cblxuLy8gVGFibGVzIGluIHBhbmVsc1xuLy9cbi8vIFBsYWNlIGEgbm9uLWJvcmRlcmVkIGAudGFibGVgIHdpdGhpbiBhIHBhbmVsIChub3Qgd2l0aGluIGEgYC5wYW5lbC1ib2R5YCkgYW5kXG4vLyB3YXRjaCBpdCBnbyBmdWxsIHdpZHRoLlxuXG4ucGFuZWwge1xuICA+IC50YWJsZSxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSxcbiAgPiAucGFuZWwtY29sbGFwc2UgPiAudGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBjYXB0aW9uIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJHBhbmVsLWJvZHktcGFkZGluZztcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYW5lbC1ib2R5LXBhZGRpbmc7XG4gICAgfVxuICB9XG4gIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXG4gID4gLnRhYmxlOmZpcnN0LWNoaWxkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG5cbiAgICA+IHRoZWFkOmZpcnN0LWNoaWxkLFxuICAgID4gdGJvZHk6Zmlyc3QtY2hpbGQge1xuICAgICAgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG5cbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgICB0ZDpsYXN0LWNoaWxkLFxuICAgICAgICB0aDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gQWRkIGJvcmRlciBib3R0b20gcmFkaXVzIGZvciBsYXN0IG9uZVxuICA+IC50YWJsZTpsYXN0LWNoaWxkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuXG4gICAgPiB0Ym9keTpsYXN0LWNoaWxkLFxuICAgID4gdGZvb3Q6bGFzdC1jaGlsZCB7XG4gICAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuXG4gICAgICAgIHRkOmZpcnN0LWNoaWxkLFxuICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgICAgdGQ6bGFzdC1jaGlsZCxcbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUsXG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUtcmVzcG9uc2l2ZSxcbiAgPiAudGFibGUgKyAucGFuZWwtYm9keSxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSArIC5wYW5lbC1ib2R5IHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuICA+IC50YWJsZSA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGgsXG4gID4gLnRhYmxlID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuICA+IC50YWJsZS1ib3JkZXJlZCxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgID4gdGhlYWQsXG4gICAgPiB0Ym9keSxcbiAgICA+IHRmb290IHtcbiAgICAgID4gdHIge1xuICAgICAgICA+IHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gdGhlYWQsXG4gICAgPiB0Ym9keSB7XG4gICAgICA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICA+IHRib2R5LFxuICAgID4gdGZvb3Qge1xuICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5cbi8vIENvbGxhcHNpYmxlIHBhbmVscyAoYWthLCBhY2NvcmRpb24pXG4vL1xuLy8gV3JhcCBhIHNlcmllcyBvZiBwYW5lbHMgaW4gYC5wYW5lbC1ncm91cGAgdG8gdHVybiB0aGVtIGludG8gYW4gYWNjb3JkaW9uIHdpdGhcbi8vIHRoZSBoZWxwIG9mIG91ciBjb2xsYXBzZSBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLnBhbmVsLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuXG4gIC8vIFRpZ2h0ZW4gdXAgbWFyZ2luIHNvIGl0J3Mgb25seSBiZXR3ZWVuIHBhbmVsc1xuICAucGFuZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJHBhbmVsLWJvcmRlci1yYWRpdXM7XG5cbiAgICArIC5wYW5lbCB7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgfVxuICB9XG5cbiAgLnBhbmVsLWhlYWRpbmcge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG5cbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5LFxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLnBhbmVsLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnNcbi5wYW5lbC1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtZGVmYXVsdC1ib3JkZXIsICRwYW5lbC1kZWZhdWx0LXRleHQsICRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmcsICRwYW5lbC1kZWZhdWx0LWJvcmRlcik7XG59XG4ucGFuZWwtcHJpbWFyeSB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXByaW1hcnktYm9yZGVyLCAkcGFuZWwtcHJpbWFyeS10ZXh0LCAkcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnLCAkcGFuZWwtcHJpbWFyeS1ib3JkZXIpO1xufVxuLnBhbmVsLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1zdWNjZXNzLWJvcmRlciwgJHBhbmVsLXN1Y2Nlc3MtdGV4dCwgJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZywgJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cbi5wYW5lbC1pbmZvIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtaW5mby1ib3JkZXIsICRwYW5lbC1pbmZvLXRleHQsICRwYW5lbC1pbmZvLWhlYWRpbmctYmcsICRwYW5lbC1pbmZvLWJvcmRlcik7XG59XG4ucGFuZWwtd2FybmluZyB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXdhcm5pbmctYm9yZGVyLCAkcGFuZWwtd2FybmluZy10ZXh0LCAkcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnLCAkcGFuZWwtd2FybmluZy1ib3JkZXIpO1xufVxuLnBhbmVsLWRhbmdlciB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLWRhbmdlci1ib3JkZXIsICRwYW5lbC1kYW5nZXItdGV4dCwgJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnLCAkcGFuZWwtZGFuZ2VyLWJvcmRlcik7XG59XG4iLCIvLyBFbWJlZHMgcmVzcG9uc2l2ZVxuLy9cbi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8gTW9kaWZpZXIgY2xhc3MgZm9yIDE2OjkgYXNwZWN0IHJhdGlvXG4uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OSB7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi8vIE1vZGlmaWVyIGNsYXNzIGZvciA0OjMgYXNwZWN0IHJhdGlvXG4uZW1iZWQtcmVzcG9uc2l2ZS00YnkzIHtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbn1cbiIsIi8vXG4vLyBXZWxsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4ud2VsbCB7XG4gIG1pbi1oZWlnaHQ6IDIwcHg7XG4gIHBhZGRpbmc6IDE5cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3ZWxsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkd2VsbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA1KSk7XG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlci1jb2xvcjogI2RkZDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjE1KTtcbiAgfVxufVxuXG4vLyBTaXplc1xuLndlbGwtbGcge1xuICBwYWRkaW5nOiAyNHB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbn1cbi53ZWxsLXNtIHtcbiAgcGFkZGluZzogOXB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcbn1cbiIsIi8vXG4vLyBDbG9zZSBpY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xuICBAaW5jbHVkZSBvcGFjaXR5KC4yKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQGluY2x1ZGUgb3BhY2l0eSguNSk7XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYnV0dG9uJiB0byBidXR0b24uY2xvc2Vcbn1cblxuLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG4iLCIvL1xuLy8gTW9kYWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc2hpdFxuXG4vLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gICYuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgLTI1JSk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10cmFuc2Zvcm0oMC4zcyBlYXNlLW91dCk7XG4gIH1cbiAgJi5pbiAubW9kYWwtZGlhbG9nIHsgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIDApIH1cbn1cbi5tb2RhbC1vcGVuIC5tb2RhbCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAxMHB4O1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOyAvL29sZCBicm93c2VycyBmYWxsYmFjayAoaWU4IGV0YylcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDNweCA5cHggcmdiYSgwLDAsMCwuNSkpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IEBpbmNsdWRlIG9wYWNpdHkoMCk7IH1cbiAgJi5pbiB7IEBpbmNsdWRlIG9wYWNpdHkoJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkpOyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLXRpdGxlLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG4vLyBDbG9zZSBpY29uXG4ubW9kYWwtaGVhZGVyIC5jbG9zZSB7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyAvLyByaWdodCBhbGlnbiBidXR0b25zXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7IC8vIGNsZWFyIGl0IGluIGNhc2UgZm9sa3MgdXNlIC5wdWxsLSogY2xhc3NlcyBvbiBidXR0b25zXG5cbiAgLy8gUHJvcGVybHkgc3BhY2Ugb3V0IGJ1dHRvbnNcbiAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gYWNjb3VudCBmb3IgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB3aGljaCBnZXRzIHRoZSBib3R0b20gbWFyZ2luIGxpa2UgYWxsIG90aGVyIGlucHV0c1xuICB9XG4gIC8vIGJ1dCBvdmVycmlkZSB0aGF0IGZvciBidXR0b24gZ3JvdXBzXG4gIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG4gIC8vIGFuZCBvdmVycmlkZSBpdCBmb3IgYmxvY2sgYnV0dG9ucyBhcyB3ZWxsXG4gIC5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIHdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG87XG4gIH1cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTVweCByZ2JhKDAsMCwwLC41KSk7XG4gIH1cblxuICAvLyBNb2RhbCBzaXplc1xuICAubW9kYWwtc20geyB3aWR0aDogJG1vZGFsLXNtOyB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAubW9kYWwtbGcgeyB3aWR0aDogJG1vZGFsLWxnOyB9XG59XG4iLCIvL1xuLy8gVG9vbHRpcHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuXG4gIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG5cbiAgJi5pbiAgICAgeyBAaW5jbHVkZSBvcGFjaXR5KCR0b29sdGlwLW9wYWNpdHkpOyB9XG4gICYudG9wICAgIHsgbWFyZ2luLXRvcDogIC0zcHg7IHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7IH1cbiAgJi5yaWdodCAgeyBtYXJnaW4tbGVmdDogIDNweDsgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDsgfVxuICAmLmJvdHRvbSB7IG1hcmdpbi10b3A6ICAgM3B4OyBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwOyB9XG4gICYubGVmdCAgIHsgbWFyZ2luLWxlZnQ6IC0zcHg7IHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGg7IH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogM3B4IDhweDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuXG4vLyBBcnJvd3Ncbi50b29sdGlwLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuLy8gTm90ZTogRGVwcmVjYXRlZCAudG9wLWxlZnQsIC50b3AtcmlnaHQsIC5ib3R0b20tbGVmdCwgYW5kIC5ib3R0b20tcmlnaHQgYXMgb2YgdjMuMy4xXG4udG9vbHRpcCB7XG4gICYudG9wIC50b29sdGlwLWFycm93IHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYudG9wLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWJvdHRvbTogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLnRvcC1yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1ib3R0b206IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbSAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbS1sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5ib3R0b20tcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG59XG4iLCIvL1xuLy8gUG9wb3ZlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgcGFkZGluZzogMXB4O1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSBwb3BvdmVycyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQ7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCAkcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRwb3BvdmVyLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTBweCByZ2JhKDAsMCwwLC4yKSk7XG5cbiAgLy8gT2Zmc2V0IHRoZSBwb3BvdmVyIHRvIGFjY291bnQgZm9yIHRoZSBwb3BvdmVyIGFycm93XG4gICYudG9wICAgICB7IG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxuICAmLnJpZ2h0ICAgeyBtYXJnaW4tbGVmdDogJHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cbiAgJi5ib3R0b20gIHsgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cbiAgJi5sZWZ0ICAgIHsgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxufVxuXG4ucG9wb3Zlci10aXRsZSB7XG4gIG1hcmdpbjogMDsgLy8gcmVzZXQgaGVhZGluZyBtYXJnaW5cbiAgcGFkZGluZzogOHB4IDE0cHg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci10aXRsZS1iZztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtlbigkcG9wb3Zlci10aXRsZS1iZywgNSUpO1xuICBib3JkZXItcmFkaXVzOiAoJGJvcmRlci1yYWRpdXMtbGFyZ2UgLSAxKSAoJGJvcmRlci1yYWRpdXMtbGFyZ2UgLSAxKSAwIDA7XG59XG5cbi5wb3BvdmVyLWNvbnRlbnQge1xuICBwYWRkaW5nOiA5cHggMTRweDtcbn1cblxuLy8gQXJyb3dzXG4vL1xuLy8gLmFycm93IGlzIG91dGVyLCAuYXJyb3c6YWZ0ZXIgaXMgaW5uZXJcblxuLnBvcG92ZXIgPiAuYXJyb3cge1xuICAmLFxuICAmOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgfVxufVxuLnBvcG92ZXIgPiAuYXJyb3cge1xuICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xufVxuLnBvcG92ZXIgPiAuYXJyb3c6YWZ0ZXIge1xuICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICBjb250ZW50OiBcIlwiO1xufVxuXG4ucG9wb3ZlciB7XG4gICYudG9wID4gLmFycm93IHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICBib3R0b206IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgYm90dG9tOiAxcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmLnJpZ2h0ID4gLmFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgbWFyZ2luLXRvcDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGxlZnQ6IDFweDtcbiAgICAgIGJvdHRvbTogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmLmJvdHRvbSA+IC5hcnJvdyB7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgdG9wOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIHRvcDogMXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAmLmxlZnQgPiAuYXJyb3cge1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgbWFyZ2luLXRvcDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgcmlnaHQ6IDFweDtcbiAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICAgIGJvdHRvbTogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENhcm91c2VsXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFdyYXBwZXIgZm9yIHRoZSBzbGlkZSBjb250YWluZXIgYW5kIGluZGljYXRvcnNcbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5pdGVtIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKC42cyBlYXNlLWluLW91dCBsZWZ0KTtcblxuICAgIC8vIEFjY291bnQgZm9yIGphbmtpdHVkZSBvbiBpbWFnZXNcbiAgICA+IGltZyxcbiAgICA+IGEgPiBpbWcge1xuICAgICAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmU7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG5cbiAgICAvLyBXZWJLaXQgQ1NTMyB0cmFuc2Zvcm1zIGZvciBzdXBwb3J0ZWQgZGV2aWNlc1xuICAgIEBtZWRpYSBhbGwgYW5kICh0cmFuc2Zvcm0tM2QpLCAoLXdlYmtpdC10cmFuc2Zvcm0tM2QpIHtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdHJhbnNmb3JtKDAuNnMgZWFzZS1pbi1vdXQpO1xuICAgICAgQGluY2x1ZGUgYmFja2ZhY2UtdmlzaWJpbGl0eShoaWRkZW4pO1xuICAgICAgQGluY2x1ZGUgcGVyc3BlY3RpdmUoMTAwMHB4KTtcblxuICAgICAgJi5uZXh0LFxuICAgICAgJi5hY3RpdmUucmlnaHQge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICAgICYucHJldixcbiAgICAgICYuYWN0aXZlLmxlZnQge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAmLm5leHQubGVmdCxcbiAgICAgICYucHJldi5yaWdodCxcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgPiAuYWN0aXZlLFxuICA+IC5uZXh0LFxuICA+IC5wcmV2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gID4gLmFjdGl2ZSB7XG4gICAgbGVmdDogMDtcbiAgfVxuXG4gID4gLm5leHQsXG4gID4gLnByZXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5uZXh0IHtcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gID4gLnByZXYge1xuICAgIGxlZnQ6IC0xMDAlO1xuICB9XG4gID4gLm5leHQubGVmdCxcbiAgPiAucHJldi5yaWdodCB7XG4gICAgbGVmdDogMDtcbiAgfVxuXG4gID4gLmFjdGl2ZS5sZWZ0IHtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgfVxuICA+IC5hY3RpdmUucmlnaHQge1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cblxufVxuXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uY2Fyb3VzZWwtY29udHJvbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgQGluY2x1ZGUgb3BhY2l0eSgkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5KTtcbiAgZm9udC1zaXplOiAkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogJGNhcm91c2VsLXRleHQtc2hhZG93O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyAvLyBGaXggSUU5IGNsaWNrLXRocnUgYnVnXG4gIC8vIFdlIGNhbid0IGhhdmUgdGhpcyB0cmFuc2l0aW9uIGhlcmUgYmVjYXVzZSBXZWJLaXQgY2FuY2VscyB0aGUgY2Fyb3VzZWxcbiAgLy8gYW5pbWF0aW9uIGlmIHlvdSB0cmlwIHRoaXMgd2hpbGUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIGFuaW1hdGlvbi5cblxuICAvLyBTZXQgZ3JhZGllbnRzIGZvciBiYWNrZ3JvdW5kc1xuICAmLmxlZnQge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiByZ2JhKDAsMCwwLC41KSwgJGVuZC1jb2xvcjogcmdiYSgwLDAsMCwuMDAwMSkpO1xuICB9XG4gICYucmlnaHQge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6IHJnYmEoMCwwLDAsLjAwMDEpLCAkZW5kLWNvbG9yOiByZ2JhKDAsMCwwLC41KSk7XG4gIH1cblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgb3BhY2l0eSguOSk7XG4gIH1cblxuICAvLyBUb2dnbGVzXG4gIC5pY29uLXByZXYsXG4gIC5pY29uLW5leHQsXG4gIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxuICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAuaWNvbi1wcmV2LFxuICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCB7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgfVxuICAuaWNvbi1uZXh0LFxuICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgfVxuICAuaWNvbi1wcmV2LFxuICAuaWNvbi1uZXh0IHtcbiAgICB3aWR0aDogIDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtZmFtaWx5OiBzZXJpZjtcbiAgfVxuXG5cbiAgLmljb24tcHJldiB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAzOSc7Ly8gU0lOR0xFIExFRlQtUE9JTlRJTkcgQU5HTEUgUVVPVEFUSU9OIE1BUksgKFUrMjAzOSlcbiAgICB9XG4gIH1cbiAgLmljb24tbmV4dCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAzYSc7Ly8gU0lOR0xFIFJJR0hULVBPSU5USU5HIEFOR0xFIFFVT1RBVElPTiBNQVJLIChVKzIwM0EpXG4gICAgfVxuICB9XG59XG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIHVub3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiA1MCU7XG4gIHotaW5kZXg6IDE1O1xuICB3aWR0aDogNjAlO1xuICBtYXJnaW4tbGVmdDogLTMwJTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogIDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIG1hcmdpbjogMXB4O1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAvLyBJRTgtOSBoYWNrIGZvciBldmVudCBoYW5kbGluZ1xuICAgIC8vXG4gICAgLy8gSW50ZXJuZXQgRXhwbG9yZXIgOC05IGRvZXMgbm90IHN1cHBvcnQgY2xpY2tzIG9uIGVsZW1lbnRzIHdpdGhvdXQgYSBzZXRcbiAgICAvLyBgYmFja2dyb3VuZC1jb2xvcmAuIFdlIGNhbm5vdCB1c2UgYGZpbHRlcmAgc2luY2UgdGhhdCdzIG5vdCB2aWV3ZWQgYXMgYVxuICAgIC8vIGJhY2tncm91bmQgY29sb3IgYnkgdGhlIGJyb3dzZXIuIFRodXMsIGEgaGFjayBpcyBuZWVkZWQuXG4gICAgLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNJbnRlcm5ldF9FeHBsb3JlclxuICAgIC8vXG4gICAgLy8gRm9yIElFOCwgd2Ugc2V0IHNvbGlkIGJsYWNrIGFzIGl0IGRvZXNuJ3Qgc3VwcG9ydCBgcmdiYSgpYC4gRm9yIElFOSwgd2VcbiAgICAvLyBzZXQgYWxwaGEgdHJhbnNwYXJlbmN5IGZvciB0aGUgYmVzdCByZXN1bHRzIHBvc3NpYmxlLlxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAgXFw5OyAvLyBJRThcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDApOyAvLyBJRTlcbiAgfVxuICAuYWN0aXZlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6ICAxMnB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgfVxufVxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhpZGRlbiBieSBkZWZhdWx0IGZvciBzbWFsbGVyIHZpZXdwb3J0c1xuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDE1JTtcbiAgcmlnaHQ6IDE1JTtcbiAgYm90dG9tOiAyMHB4O1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1zaGFkb3c6ICRjYXJvdXNlbC10ZXh0LXNoYWRvdztcbiAgJiAuYnRuIHtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTsgLy8gTm8gc2hhZG93IGZvciBidXR0b24gZWxlbWVudHMgaW4gY2Fyb3VzZWwtY2FwdGlvblxuICB9XG59XG5cblxuLy8gU2NhbGUgdXAgY29udHJvbHMgZm9yIHRhYmxldHMgYW5kIHVwXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuXG4gIC8vIFNjYWxlIHVwIHRoZSBjb250cm9scyBhIHNtaWRnZVxuICAuY2Fyb3VzZWwtY29udHJvbCB7XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxuICAgIC5pY29uLXByZXYsXG4gICAgLmljb24tbmV4dCB7XG4gICAgICB3aWR0aDogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAqIDEuNSk7XG4gICAgICBoZWlnaHQ6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgKiAxLjUpO1xuICAgICAgbWFyZ2luLXRvcDogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAvIC0yKTtcbiAgICAgIGZvbnQtc2l6ZTogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAqIDEuNSk7XG4gICAgfVxuICAgIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxuICAgIC5pY29uLXByZXYge1xuICAgICAgbWFyZ2luLWxlZnQ6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgLyAtMik7XG4gICAgfVxuICAgIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCxcbiAgICAuaWNvbi1uZXh0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAvIC0yKTtcbiAgICB9XG4gIH1cblxuICAvLyBTaG93IGFuZCBsZWZ0IGFsaWduIHRoZSBjYXB0aW9uc1xuICAuY2Fyb3VzZWwtY2FwdGlvbiB7XG4gICAgbGVmdDogMjAlO1xuICAgIHJpZ2h0OiAyMCU7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIH1cblxuICAvLyBNb3ZlIHVwIHRoZSBpbmRpY2F0b3JzXG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgICBib3R0b206IDIwcHg7XG4gIH1cbn1cbiIsIi8vXG4vLyBVdGlsaXR5IGNsYXNzZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRmxvYXRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuLmNlbnRlci1ibG9jayB7XG4gIEBpbmNsdWRlIGNlbnRlci1ibG9jaztcbn1cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG4ucHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cblxuXG4vLyBUb2dnbGluZyBjb250ZW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE5vdGU6IERlcHJlY2F0ZWQgLmhpZGUgaW4gZmF2b3Igb2YgLmhpZGRlbiBvciAuc3Itb25seSAoYXMgYXBwcm9wcmlhdGUpIGluIHYzLjAuMVxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4uc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZTtcbn1cblxuXG4vLyBIaWRlIGZyb20gc2NyZWVucmVhZGVycyBhbmQgYnJvd3NlcnNcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gRm9yIEFmZml4IHBsdWdpblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYWZmaXgge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG4iLCIvL1xuLy8gUmVzcG9uc2l2ZTogVXRpbGl0eSBjbGFzc2VzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIElFMTAgaW4gV2luZG93cyAoUGhvbmUpIDhcbi8vXG4vLyBTdXBwb3J0IGZvciByZXNwb25zaXZlIHZpZXdzIHZpYSBtZWRpYSBxdWVyaWVzIGlzIGtpbmQgb2YgYm9ya2VkIGluIElFMTAsIGZvclxuLy8gU3VyZmFjZS9kZXNrdG9wIGluIHNwbGl0IHZpZXcgYW5kIGZvciBXaW5kb3dzIFBob25lIDguIFRoaXMgcGFydGljdWxhciBmaXhcbi8vIG11c3QgYmUgYWNjb21wYW5pZWQgYnkgYSBzbmlwcGV0IG9mIEphdmFTY3JpcHQgdG8gc25pZmYgdGhlIHVzZXIgYWdlbnQgYW5kXG4vLyBhcHBseSBzb21lIGNvbmRpdGlvbmFsIENTUyB0byAqb25seSogdGhlIFN1cmZhY2UvZGVza3RvcCBXaW5kb3dzIDguIExvb2sgYXRcbi8vIG91ciBHZXR0aW5nIFN0YXJ0ZWQgcGFnZSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiB0aGlzIGJ1Zy5cbi8vXG4vLyBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBmb2xsb3dpbmc6XG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTA0OTdcbi8vIERvY3M6IGh0dHA6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jc3VwcG9ydC1pZTEwLXdpZHRoXG4vLyBTb3VyY2U6IGh0dHA6Ly90aW1rYWRsZWMuY29tLzIwMTMvMDEvd2luZG93cy1waG9uZS04LWFuZC1kZXZpY2Utd2lkdGgvXG4vLyBTb3VyY2U6IGh0dHA6Ly90aW1rYWRsZWMuY29tLzIwMTIvMTAvaWUxMC1zbmFwLW1vZGUtYW5kLXJlc3BvbnNpdmUtZGVzaWduL1xuXG5AYXQtcm9vdCB7XG4gIEAtbXMtdmlld3BvcnQge1xuICAgIHdpZHRoOiBkZXZpY2Utd2lkdGg7XG4gIH1cbn1cblxuXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS14cywgLnZpc2libGUtc20sIC52aXNpYmxlLW1kLCBhbmQgLnZpc2libGUtbGcgYXMgb2YgdjMuMi4wXG5cbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS14cycpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtbWQnKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1sZycpO1xuXG4udmlzaWJsZS14cy1ibG9jayxcbi52aXNpYmxlLXhzLWlubGluZSxcbi52aXNpYmxlLXhzLWlubGluZS1ibG9jayxcbi52aXNpYmxlLXNtLWJsb2NrLFxuLnZpc2libGUtc20taW5saW5lLFxuLnZpc2libGUtc20taW5saW5lLWJsb2NrLFxuLnZpc2libGUtbWQtYmxvY2ssXG4udmlzaWJsZS1tZC1pbmxpbmUsXG4udmlzaWJsZS1tZC1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1sZy1ibG9jayxcbi52aXNpYmxlLWxnLWlubGluZSxcbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUteHMnKTtcbn1cbi52aXNpYmxlLXhzLWJsb2NrIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUteHMtaW5saW5lIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXhzLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtc20nKTtcbn1cbi52aXNpYmxlLXNtLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1zbS1pbmxpbmUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbWQnKTtcbn1cbi52aXNpYmxlLW1kLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1tZC1pbmxpbmUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1tZC1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLWxnJyk7XG59XG4udmlzaWJsZS1sZy1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLWxnLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4teHMnKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tc20nKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tbWQnKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLWxnJyk7XG59XG5cblxuLy8gUHJpbnQgdXRpbGl0aWVzXG4vL1xuLy8gTWVkaWEgcXVlcmllcyBhcmUgcGxhY2VkIG9uIHRoZSBpbnNpZGUgdG8gYmUgbWl4aW4tZnJpZW5kbHkuXG5cbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnZpc2libGUtcHJpbnQgYXMgb2YgdjMuMi4wXG5cbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1wcmludCcpO1xuXG5AbWVkaWEgcHJpbnQge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXByaW50Jyk7XG59XG4udmlzaWJsZS1wcmludC1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWlubGluZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1wcmludC1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1wcmludCcpO1xufVxuIiwiLypcbiBCYXNlIGRlZmF1bHRzXG4qKi9cblxuLypcbiBTcGFjaW5nIERlZmF1bHRzXG4qKi9cbiRtYXJnaW46IDE1cHg7IC8vIDMwcHhcbiRwYWRkaW5nOiAxLjg3NXJlbTsgLy8gMzBweFxuIiwiJGJhYnktYmVhcjogNDgwcHg7XG4kdGVlbi1iZWFyOiA2MDBweDtcbiRtYW1hLWJlYXI6IDc2OHB4O1xuJHBhcGEtYmVhcjogOTkycHg7XG4kZ3JhbmRtYS1iZWFyOiAxMjgwcHg7XG4kZ3JhbmRwYS1iZWFyOiAxNTAwcHg7XG4kZ3JlYXQtYmVhcjogMTYwMHB4O1xuXG4vLyBTcGVhY2lhbCBicmVha3BvaW50cyBmb3IgdGhvc2Ugc3BlY2lhbCBiZWFyc1xuLy8gJHlvZ2ktYmVhcjogO1xuLy8gJGJvb2Jvby1iZWFyOiA7XG4iLCIkb3JhbmdlX2Rhcms6ICNkYzk5NTE7XG4kb3JhbmdlOiAjZTZhOTY4O1xuJG9yYW5nZV9saWdodDogI2Y5ZWRlMDtcbiRibHVlX2Rhcms6ICM5N2MyYzI7XG4kYmx1ZTogI2FjY2VjZjtcbiRibHVlX2xpZ2h0OiAjZTZmMGYxO1xuXG4vKiBtZXNzYWdlcyAqKi9cbiRncmVlbl91aTogIzk5OTkzMztcbiRyZWRfdWk6ICNjMTM2Mjc7XG5cbi8qIE5ldXRyYWxzICoqL1xuJGJsYWNrOiAjMWUxZTFlO1xuJGJsYWNrX2xpZ2h0OiAjMjcyNjI2O1xuJGdyZXlfZGFya2VyOiAjZWRlZGVkO1xuJGdyZXlfZGFyazogIzMzMzMzMztcbiRncmV5OiAjNEQ0RDREO1xuJGdyZXlfbGlnaHQ6ICNjNGM0YzQ7XG4kZ3JleV9saWdodGVyOiAjRTdFN0U3O1xuJGJlaWdlOiAjZDdkMmMzO1xuJGJlaWdlOiAjZTdlM2Q1O1xuJHdoaXRlOiAjZmZmZmZmO1xuXG4kcmVkOiAjOTkwMDMzO1xuJHJlZF9saWdodDogI0IzMUE0RDtcbiRyZWRfZGFyazogIzgwMDAxQTtcblxuJGdvbGQ6ICNDQzk5MzM7XG4kZ29sZF9saWdodDogI0U2QjM0RDtcbiRnb2xkX2Rhcms6ICNCMzgwMUE7XG5cbiRibHVlOiAjMDA4MEI0O1xuJGJsdWVfbGlnaHQ6IGxpZ2h0ZW4oJGJsdWUsIDEwJSk7XG4kYmx1ZV9saWdodGVyOiAjQzREM0UxO1xuJGJsdWVfbGlnaHRlc3Q6ICNlZmZiZmY7IC8vYmFja2dyb3VuZCBjb2xvclxuXG4kbmF2eV9ibHVlOiAjMDAzNjY1O1xuJG5hdnlfYmx1ZV9saWdodDogbGlnaHRlbigkbmF2eV9ibHVlLCAxMCUpO1xuJG5hdnlfYmx1ZV9kYXJrOiBkYXJrZW4oJG5hdnlfYmx1ZSwgMTAlKTtcblxuJHllbGxvd19saWdodGVyOiAjRkRGMEU0OyAvL2JhY2tncm91bmQgY29sb3JcblxuJGVnZ3BsYW50OiAjNDgzQzZBO1xuJGVnZ3BsYW50X2xpZ2h0OiAjNjI1Njg0O1xuJGVnZ3BsYW50X2xpZ2h0ZXI6ICNERkRFRUI7XG5cbiR0ZWFsOiAjMkY2NTdBO1xuJHRlYWxfbGlnaHQ6ICM0OTdGOTQ7XG4kdGVhbF9saWdodGVyOiAjRERFOUVFO1xuXG4kc3BydWNlOiAjMzM1ODUzO1xuJHNwcnVjZV9saWdodDogIzRENzI2RDtcbiRzcHJ1Y2VfbGlnaHRlcjogI0UyRUFFOTtcblxuJGdyZWVuOiAjNkJBNDM1O1xuJGdyZWVuX2xpZ2h0OiBsaWdodGVuKCRncmVlbiwgMTAlKTtcbiRncmVlbl9kYXJrOiBkYXJrZW4oJGdyZWVuLCAxMCUpO1xuJGdyZWVuX2xpZ2h0ZXI6ICNFREYyRTg7ICAvL2JhY2tncm91bmQgY29sb3JcblxuJHBsdW06ICM4MTI1NEM7XG4kcGx1bV9saWdodDogIzlCM0Y2NjtcblxuJHByaW1hcnlfZm9udF9jb2xvcl9kYXJrOiAkYmxhY2tfbGlnaHQ7IC8vUHJpbWFyeSBCb2R5IG9uIExpZ2h0IEJhY2tncm91bmRcbiRwcmltYXJ5X2ZvbnRfY29sb3JfbGlnaHQ6ICR3aGl0ZTsgLy9QcmltYXJ5IEJvZHkgb24gRGFyayBCYWNrZ3JvdW5kIiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnZm9udGF3ZXNvbWUnO1xuICBzcmM6IHVybCgnLi4vLi4vZm9udHMvZm9udC1hd2Vzb21lL2ZvbnRhd2Vzb21lLXdlYmZvbnQuZW90P3Y9My4wLjEnKTtcbiAgc3JjOiB1cmwoJy4uLy4uL2ZvbnRzL2ZvbnQtYXdlc29tZS9mb250YXdlc29tZS13ZWJmb250LmVvdD8jaWVmaXgmdj0zLjAuMScpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgdXJsKCcuLi8uLi9mb250cy9mb250LWF3ZXNvbWUvZm9udGF3ZXNvbWUtd2ViZm9udC53b2ZmP3Y9My4wLjEnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCcuLi8uLi9mb250cy9mb250LWF3ZXNvbWUvZm9udGF3ZXNvbWUtd2ViZm9udC50dGY/dj0zLjAuMScpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Sb2JvdG8nKTtcbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TXVsaTo0MDAsNDAwaSw3MDAsNzAwaScpO1xuXG4vKiogRm9udCBGYW1pbGllcyAqKi9cbiRoZWFkbGluZS1mb250OiAnTXVsaScsIEdlb3JnaWE7IC8vIEB0b2RvIHJlcGxhY2Ugd2l0aCBjZW50dXJ5IGdvdGhpY1xuJGJvZHktZm9udDogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG4kZm9udGF3ZXNvbWU6ICdmb250YXdlc29tZSc7XG5cbi8qKiBGb250IFdlaWdodHMgKiovXG4kcmVndWxhcjogNDAwO1xuJG1lZGl1bTogNTAwO1xuJHNlbWlfYm9sZDogNjAwO1xuJGJvbGQ6IDcwMDtcbiRoZWF2eTogOTAwO1xuXG4iLCIkcHJpbWFyeTogJHJlZF9kYXJrICFkZWZhdWx0O1xuJHByaW1hcnlfbGlnaHQ6ICRyZWQgIWRlZmF1bHQ7XG4kcHJpbWFyeV9saWdodGVyOiAkcmVkX2xpZ2h0ICFkZWZhdWx0O1xuJHByaW1hcnlfZGFyazogZGFya2VuKCRyZWRfZGFyayw1JSkgIWRlZmF1bHQ7XG5cbiRzZWNvbmRhcnk6ICRnb2xkICFkZWZhdWx0O1xuJHNlY29uZGFyeV9saWdodDogJGdvbGRfbGlnaHQgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5X2Rhcms6ICRnb2xkX2RhcmsgIWRlZmF1bHQ7XG5cbiR0ZXJ0aWFyeTogJGdyZXkgIWRlZmF1bHQ7XG4kdGVydGlhcnlfZGFyazogJGdyZXlfZGFyayAhZGVmYXVsdDtcbiR0ZXJ0aWFyeV9saWdodDogJGdyZXlfbGlnaHQgIWRlZmF1bHQ7XG5cbiRsaWdodGVyX2ZpcnN0OiAkZ3JleV9saWdodGVyICFkZWZhdWx0O1xuJGxpZ2h0ZXJfc2Vjb25kOiAkYmx1ZV9saWdodGVyICFkZWZhdWx0O1xuJGxpZ2h0ZXJfdGhpcmQ6ICR5ZWxsb3dfbGlnaHRlciAhZGVmYXVsdDtcblxuLypidXR0b25zICoqL1xuJHByaW1hcnlfYnRuOiAkcHJpbWFyeSAhZGVmYXVsdDtcbiRwcmltYXJ5X2J0bl9ob3ZlcjogJHNlY29uZGFyeSAhZGVmYXVsdDtcbiRzZWNvbmRhcnlfYnRuOiAkd2hpdGUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5X2J0bl9ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xuJHRlcnRpYXJ5X2J0bjogJHRlcnRpYXJ5ICFkZWZhdWx0O1xuJHRlcnRpYXJ5X2J0bl9ob3ZlcjogJHRlcnRpYXJ5X2RhcmsgIWRlZmF1bHQ7XG5cbi8qIFRleHQgQ29sb3JzICoqL1xuJGxpbms6ICRuYXZ5X2JsdWU7XG4kbGlua19ob3ZlcjogJHJlZDtcbiRsaW5rX3Zpc2l0ZWQ6ICM3YTQ5MTQ7XG5cbiRsaW5rOiAkbmF2eV9ibHVlO1xuJGxpbmtfaG92ZXI6ICRsaW5rLWhvdmVyO1xuJGxpbmtfdmlzaXRlZDogJGxpbms7XG5cbi8qIEJhY2tncm91bmQgKiovXG4kYmFja2dyb3VuZDogI2U3ZTdlNztcbiRiYWNrZ3JvdW5kLWFjY2VudDogJGJsdWVfbGlnaHRlciAhZGVmYXVsdDtcbiRmb290ZXJfc3ViX2JnOiAkcHJpbWFyeSAhZGVmYXVsdDtcblxuLyogSGVhZGxpbmUgKi9cbiRoZWFkbGluZS1jb2xvcjogJHByaW1hcnk7XG5cbi8qIEhlYWRlciBzcGVjaWZpYyBjb2xvcnMgKi9cbiRoZWFkZXJzX2xpbmtzX3ByaW1hcnk6ICRwcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyBTZXQgdGhlIHByb3BlciBkaXJlY3RvcnkgZm9yIHRoZSBCb290c3RyYXAgR2x5cGhpY29uIGZvbnQuXG4kaWNvbi1mb250LXBhdGg6ICcuLi8uLi9ib290c3RyYXAvYXNzZXRzL2ZvbnRzL2Jvb3RzdHJhcC8nICFkZWZhdWx0O1xuIiwiLypcbiAqIEZ1bmN0aW9uc1xuICoqL1xuXG4vLyBSZXF1aXJlcyB0aGUgY2FsYy1pbnRlcnBvbGF0aW9uIGZ1bmN0aW9uIHdoaWNoIGNhbiBhbHNvIGJlIHVzZWQgaW5kZXBlbmRlbnRseVxuXG5AZnVuY3Rpb24gY2FsYy1pbnRlcnBvbGF0aW9uKCRtaW4tc2NyZWVuLCAkbWluLXZhbHVlLCAkbWF4LXNjcmVlbiwgJG1heC12YWx1ZSkge1xuXHRcdCRhOiAoJG1heC12YWx1ZSAtICRtaW4tdmFsdWUpIC8gKCRtYXgtc2NyZWVuIC0gJG1pbi1zY3JlZW4pO1xuXHQkYjogJG1pbi12YWx1ZSAtICRhICogJG1pbi1zY3JlZW47XG5cblx0JHNpZ246IFwiK1wiO1xuXHRAaWYgKCRiIDwgMCkge1xuXHRcdCRzaWduOiBcIi1cIjtcblx0XHQkYjogYWJzKCRiKTtcblx0fVxuXHRAcmV0dXJuIGNhbGMoI3skYSoxMDB9dncgI3skc2lnbn0gI3skYn0pO1xufVxuIiwiLyoqXG4gKiBNaXhpbnMgc2hvdWxkIGdvIGhlcmUuXG4gKiBZb3UgY2FuIGFsc28gYnJlYWsgY29tcGxleCBtaXhpbnMgaW50byBwYXJ0aWFscyBpZiB5b3UgbGlrZVxuICogbmFtZXMgbWl4aW5zLS1OQU1FLnNjc3NcbiAqKi9cblxuQG1peGluIGNvbnRhaW5lcigkd2lkdGgpIHtcbiAgQGlmICgkd2lkdGggPT0gc20pIHtcbiAgICBtYXgtd2lkdGg6ICRjb250YWluZXItc207XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIEBpZiAoJHdpZHRoID09IG1kKSB7XG4gICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1kO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBAaWYgKCR3aWR0aCA9PSBsZykge1xuICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1sZztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgQGlmICgkd2lkdGggPT0geGwpIHtcbiAgICBtYXgtd2lkdGg6ICRjb250YWluZXIteGw7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgQGlmICgkd2lkdGggPT0gbm9uZSkge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBAaWYgKCR3aWR0aCA9PSB2dykge1xuICAgIG1heC13aWR0aDogMTAwdnc7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICB9XG59XG5cbkBtaXhpbiBmdWxsd2lkdGgoKSB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lcih2dyk7XG4gIEBpbmNsdWRlIGNlbnRlcih0cnVlLCBmYWxzZSwgZmFsc2UsIGZhbHNlKTtcbn1cblxuQG1peGluIGZvbnQtc2hhZG93KCkge1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCAycHggcmdiYSgkYmxhY2ssIDAuMjUpO1xufVxuXG5AbWl4aW4gY2xlYXJpbmcoJHBvc2l0aW9uKSB7XG4gIHBvc2l0aW9uOiAkcG9zaXRpb247XG5cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5cbi8vIEJ1dHRvbnNcbkBtaXhpbiBidG4oJHR5cGUsICRsaW5rLWljb246ICdubycpIHtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICBib3gtc2hhZG93OiBub25lO1xuICBmb250LWZhbWlseTogJGJvZHktYmc7XG4gIGZvbnQtd2VpZ2h0OiAkYm9sZDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIHBhZGRpbmc6IDEwcHggNzBweCAxMHB4IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsLCAyNTBtcyk7XG5cbiAgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGlmICgkbGluay1pY29uID09ICd5ZXMnKSB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJ1xcZjEwNSc7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udGF3ZXNvbWU7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAzNHB4O1xuICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgcmlnaHQ6IDZweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTE3cHg7XG5cbiAgICAgICAgQGlmICgkdHlwZSA9PSBzZWNvbmRhcnkpIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRncmV5LWRhcms7XG4gICAgICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYSwgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdcXGYxMDUnO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udGF3ZXNvbWU7XG4gICAgYm9yZGVyOiAycHggc29saWQgJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMzRweDtcbiAgICBoZWlnaHQ6IDM0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgIHBhZGRpbmctbGVmdDogMnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogNnB4O1xuICAgIG1hcmdpbi10b3A6IC0xN3B4O1xuICB9XG5cbiAgQGlmICgkbGluay1pY29uID09ICd5ZXMnKSB7XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIEBpZiAoJHR5cGUgPT0gcHJpbWFyeSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5X2J0bjtcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIgYSxcbiAgICAmOmZvY3VzIGEsXG4gICAgJjpob3ZlciBhOnZpc2l0ZWQsXG4gICAgJjpmb2N1cyBhOnZpc2l0ZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnlfYnRuX2hvdmVyO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBzZWNvbmRhcnkpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5X2J0bjtcbiAgICBjb2xvcjogJGdyZXktZGFyaztcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcblxuICAgICY6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgICY6YWZ0ZXJ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGdyZXktZGFyaztcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciBhLFxuICAgICY6Zm9jdXMgYSxcbiAgICAmOmhvdmVyIGE6dmlzaXRlZCxcbiAgICAmOmZvY3VzIGE6dmlzaXRlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5X2J0bl9ob3ZlcjtcbiAgICAgIGNvbG9yOiAkcmVkLWRhcms7XG5cbiAgICAgICY6YWZ0ZXJ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHJlZC1kYXJrO1xuICAgICAgfVxuICAgIH1cblxuICAgIGEsIGE6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogJGdyZXktZGFyaztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBzZWNvbmRhcnktZGFyaykge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5X2Rhcms7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICY6YWZ0ZXJ7XG4gICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciBhLFxuICAgICY6Zm9jdXMgYSxcbiAgICAmOmhvdmVyIGE6dmlzaXRlZCxcbiAgICAmOmZvY3VzIGE6dmlzaXRlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeV9kYXJrO1xuICAgICAgY29sb3I6ICRzZWNvbmRhcnk7XG5cbiAgICAgICY6YWZ0ZXJ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBhLCBhOnZpc2l0ZWQge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSB0ZXJ0aWFyeSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZXJ0aWFyeV9idG47XG4gICAgYm9yZGVyOiAzcHggc29saWQgJHRlcnRpYXJ5X2J0bjtcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZXJ0aWFyeV9idG5faG92ZXI7XG4gICAgICBib3JkZXI6IDNweCBzb2xpZCAkdGVydGlhcnlfYnRuX2hvdmVyO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCR0eXBlID09IHF1YXRlcm5hcnkpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMCk7XG4gICAgYm9yZGVyOiAzcHggc29saWQgJHdoaXRlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDEpO1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgJHdoaXRlO1xuICAgICAgY29sb3I6ICRibGFja19saWdodDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTGlua3NcblxuQG1peGluIG5vLXVuZGVybGluZSB7XG5cbiAgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGxpbmstbGlnaHQge1xuICBjb2xvcjogJHdoaXRlO1xuXG4gIGEge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuLy8gRGVmaW5lZCBCdXR0b25zIGZvciBzdHlsZSBjb250cm9sXG5cblxuLy8gSWNvbnNcbkBtaXhpbiBpY29uKCRzaXplLCAkY29udGVudCkge1xuICBjb250ZW50OiAkY29udGVudDtcblxuICBAaWYgKCRzaXplID09IG5vcm1hbCkge1xuICAgIGhlaWdodDogNDVweDtcbiAgICB3aWR0aDogNDVweDtcbiAgfVxuXG4gIEBpZiAoJHNpemUgPT0gc21hbGwpIHtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gIH1cblxuICBAaWYgKCRzaXplID09IGxhcmdlKSB7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIHdpZHRoOiA2MHB4O1xuICB9XG59XG5cbi8vIGZvbnRBd2Vzb21lXG5AbWl4aW4gZm9udEF3ZXNvbWUoJGljb24sICRoZWlnaHQpIHtcblxuICAmOmJlZm9yZSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGNvbnRlbnQ6ICRpY29uO1xuICAgIGZvbnQtZmFtaWx5OiBmb250QXdlc29tZTtcbiAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRoZWlnaHQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgfVxufVxuXG4vLyBHbHlwaGljb25cbkBtaXhpbiBnbHlwaGljb24oJGljb24pIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgSGFsZmxpbmdzJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbjtcbiAgfVxufVxuXG4vLy8gTWl4aW4gLSBJbnRlcnBvbGF0ZS5cbi8vLyBQUkVDSVNFIENPTlRST0wgT1ZFUiBSRVNQT05TSVZFIFRZUE9HUkFQSFkgRk9SIFNBU1Ncbi8vLyBAcGFyYW0gJHByb3BlcnRpZXNcbi8vLyBAcGFyYW0gJG1pbi12d1xuLy8vIEBwYXJhbSAkbWF4LXZ3XG4vLy8gQHBhcmFtICRtaW4tdmFsdWVcbi8vLyBAcGFyYW0gJG1heC12YWx1ZVxuQG1peGluIGludGVycG9sYXRlKCRwcm9wZXJ0aWVzLCAkbWluLXNjcmVlbiwgJG1heC1zY3JlZW4sICRtaW4tdmFsdWUsICRtYXgtdmFsdWUpIHtcbiAgJiB7XG4gICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICN7JHByb3BlcnR5fTogJG1pbi12YWx1ZTtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWluLXNjcmVlbikge1xuICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBjYWxjLWludGVycG9sYXRpb24oJG1pbi1zY3JlZW4sICRtaW4tdmFsdWUsICRtYXgtc2NyZWVuLCAkbWF4LXZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWF4LXNjcmVlbikge1xuICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiAkbWF4LXZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gTWl4aW4gLSBDZW50ZXIuXG4vLy8gQ2VudGVyIGFuIGVsZW1lbnQgdmVydGljYWxseSBvciBob3Jpem9udGFsbHkgaW4gaXRzIGNvbnRhaW5lcixcbi8vLyBhbmQgb3B0aW9uYWxseSBob3Jpem9udGFsbHkuIE9wdGlvbiB0byB1bmRvLlxuLy8vIEBwYXJhbSAkaG9yaXpvbmFsbHktY2VudGVyIC0gY2VudGVyIGhvcml6b250YWxseVxuLy8vIEBwYXJhbSAkdmVydGljYWxseS1jZW50ZXIgLSBjZW50ZXIgdmVydGljYWxseVxuLy8vIEBwYXJhbSAkYWJzb2x1dGUtcG9zaXRpb25pbmcgLSBwb3NpdGlvbiBhYnNvbHV0ZWx5LCByYXRoZXIgdGhhbiByZWxhdGl2ZWx5XG4vLy8gQHBhcmFtICR1bmRvIC0gdW5kbyB2ZXJ0aWNhbCBjZW50ZXJpbmcgb24gYW4gZWxlbWVudCBpdCB3YXMgcHJldmlvdXNseSBhcHBsaWVkIHRvXG5AbWl4aW4gY2VudGVyKCRob3Jpem9udGFsbHk6IHRydWUsICR2ZXJ0aWNhbGx5OiB0cnVlLCAkYWJzb2x1dGU6IGZhbHNlLCAkdW5kbzogZmFsc2UpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBAaWYgKCRhYnNvbHV0ZSkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfSBAZWxzZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIEBpZiAoJGhvcml6b250YWxseSA9PSB0cnVlIGFuZCAkdmVydGljYWxseSA9PSB0cnVlKSB7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICB9XG4gIEBpZiAoJHZlcnRpY2FsbHkgPT0gdHJ1ZSBhbmQgJGhvcml6b250YWxseSA9PSBmYWxzZSkge1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuICBAaWYgKCRob3Jpem9udGFsbHkgPT0gdHJ1ZSBhbmQgJHZlcnRpY2FsbHkgPT0gZmFsc2UpIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG4gIEBpZiAoJHVuZG8pIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi8vIEFuaW1hdGUgYWxsIHRoZSB0aGluZ3NcbkBtaXhpbiBhbmltYXRlKCkge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCwgMjUwbXMpO1xufVxuXG4vLyBoZWFkaW5nIG1peGluc1xuQG1peGluIGgxKCkge1xuICBjb2xvcjogJHByaW1hcnk7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGxpbmUtZm9udDtcbiAgZm9udC1zaXplOiA0MnB4OyAvLyA0MnB4XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IC8vIDUwcHhcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWFtYS1iZWFyKSB7ICAvL0Rlc2t0b3Agc3R5bGVzIGRpc2FibGVkIGF0IHJlcXVlc3Qgb2YgTkVBU0NcbiAgICBmb250LXNpemU6IDM2cHg7IC8vIDQ4cHhcbiAgICAvL2xpbmUtaGVpZ2h0OiAxLjI7IC8vIDU4cHhcbiAgfVxuICBhLCBhOnZpc2l0ZWQsIGE6Zm9jdXMsIGE6aG92ZXIge1xuICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGgyKCkge1xuICBjb2xvcjogJHByaW1hcnk7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGxpbmUtZm9udDtcbiAgZm9udC1zaXplOiAzNnB4OyAvLyAzMnB4XG4gIGxpbmUtaGVpZ2h0OiAxLjI1OyAvLyA0MHB4XG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XG4gIG1hcmdpbi10b3A6IDA7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1hbWEtYmVhcikgeyAgLy9EZXNrdG9wIHN0eWxlcyBkaXNhYmxlZCBhdCByZXF1ZXN0IG9mIE5FQVNDXG4gICAgZm9udC1zaXplOiAzMHB4OyAvLyA0MHB4XG4gICAgLy9saW5lLWhlaWdodDogMS4yOyAvLyA0NHB4XG4gIH1cbiAgYSwgYTp2aXNpdGVkLCBhOmZvY3VzLCBhOmhvdmVyIHtcbiAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBoMygpIHtcbiAgY29sb3I6ICRwcmltYXJ5O1xuICBmb250LWZhbWlseTogJGhlYWRsaW5lLWZvbnQ7XG4gIGZvbnQtc2l6ZTogMzBweDsgLy8gMjhweFxuICBsaW5lLWhlaWdodDogMS4yNTsgLy8gMzhweFxuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHsgIC8vRGVza3RvcCBzdHlsZXMgZGlzYWJsZWQgYXQgcmVxdWVzdCBvZiBORUFTQ1xuICAgIGZvbnQtc2l6ZTogMjRweDsgLy8gMzJweFxuICAgIC8vbGluZS1oZWlnaHQ6IDEuMjU7IC8vIDQwcHhcbiAgfVxuICBhLCBhOnZpc2l0ZWQsIGE6Zm9jdXMsIGE6aG92ZXIge1xuICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGg0KCkge1xuICBjb2xvcjogJHByaW1hcnk7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGxpbmUtZm9udDtcbiAgZm9udC1zaXplOiAyNHB4OyAvLyAyNHB4XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IC8vIDMxcHhcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWFtYS1iZWFyKSB7ICAvL0Rlc2t0b3Agc3R5bGVzIGRpc2FibGVkIGF0IHJlcXVlc3Qgb2YgTkVBU0NcbiAgICBmb250LXNpemU6IDIwcHg7IC8vIDI4cHhcbiAgICAvL2xpbmUtaGVpZ2h0OiAxLjI7IC8vIDMzcHhcbiAgfVxuICBhLCBhOnZpc2l0ZWQsIGE6Zm9jdXMsIGE6aG92ZXIge1xuICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGg1KCkge1xuICBjb2xvcjogJHByaW1hcnk7XG4gIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICBmb250LXNpemU6IDE4cHg7IC8vIDIwcHhcbiAgZm9udC13ZWlnaHQ6ICRib2xkO1xuICBAaW5jbHVkZSBpbnRlcnBvbGF0ZShmb250LXNpemUsICRjb250YWluZXItc20sICRjb250YWluZXItbGcsIDIycHgsIDI2cHgpO1xuICBsaW5lLWhlaWdodDogMS4yOyAvLyAyNnB4XG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XG4gIG1hcmdpbi10b3A6IDA7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1hbWEtYmVhcikgeyAgLy9EZXNrdG9wIHN0eWxlcyBkaXNhYmxlZCBhdCByZXF1ZXN0IG9mIE5FQVNDXG4gICAgZm9udC1zaXplOiAxNnB4OyAvLyAyMHB4XG4gIH1cbiAgYSwgYTp2aXNpdGVkLCBhOmZvY3VzLCBhOmhvdmVyIHtcbiAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBoNigpIHtcbiAgY29sb3I6ICRwcmltYXJ5O1xuICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgZm9udC1zaXplOiAxOHB4OyAvLyAxNnB4XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IC8vIDI4cHhcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWFtYS1iZWFyKSB7ICAvL0Rlc2t0b3Agc3R5bGVzIGRpc2FibGVkIGF0IHJlcXVlc3Qgb2YgTkVBU0NcbiAgICBmb250LXNpemU6IDE2cHg7IC8vIDI0cHhcbiAgICAvL2ZvbnQtd2VpZ2h0OiAkc2VtaV9ib2xkO1xuICAgIC8vbGluZS1oZWlnaHQ6IDEuMjU7IC8vIDI4cHhcbiAgfVxuICBhLCBhOnZpc2l0ZWQsIGE6Zm9jdXMsIGE6aG92ZXIge1xuICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIHAoKSB7XG4gIGZvbnQtc2l6ZTogMXJlbTsgLy8gMTZweFxuICBsaW5lLWhlaWdodDogMS41ICFpbXBvcnRhbnQ7IC8vb3ZlcnJpZGVzIHd5c2l3eWcgbGluZS1oZWlnaHQgc3R5bGVzIHdoaWNoIGFwcGVhciBvbiBzb21lIHBhZ2VzXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1hbWEtYmVhcikge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IC8vIDE4cHhcbiAgICBsaW5lLWhlaWdodDogMS42MjUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gbWV0YSgpIHtcbiAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gIEBpbmNsdWRlIGludGVycG9sYXRlKGZvbnQtc2l6ZSwgJGNvbnRhaW5lci1zbSwgJGNvbnRhaW5lci1sZywgMTFweCwgMTRweCk7XG59XG5cbkBtaXhpbiBwdWxscXVvdGUoKSB7XG4gIGNvbG9yOiAkYmxvY2txdW90ZTtcbiAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gIGZvbnQtZmFtaWx5OiBnZW9yZ2lhO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIEBpbmNsdWRlIGludGVycG9sYXRlKGZvbnQtc2l6ZSwgJGNvbnRhaW5lci1zbSwgJGNvbnRhaW5lci1sZywgMThweCwgMjJweCk7XG59XG5cbi8qXG4gKiBUb29sdGlwIFRyaWFuZ2xlc1xuICogQ2F1c2Ugd2UgaGF2ZSBhIGJvcmRlciBvbiBhIHRyaWFuZ2xlLi4uXG4gKiovXG5AbWl4aW4gdG9vbHRpcC10cmlhbmdsZSgkZGlyZWN0aW9uKXtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBcInJpZ2h0XCIge1xuICAgICAgdG9wOiAtNXB4O1xuICAgICAgbGVmdDogMXB4O1xuICAgICAgQGluY2x1ZGUgdHJpYW5nbGUoJHdoaXRlLCAxMHB4LCA2cHgsIDI3MCk7XG4gICAgICAkYW5nbGU6IDI3MDtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJsZWZ0XCIge1xuICAgICAgdG9wOiAtNXB4O1xuICAgICAgcmlnaHQ6IDFweDtcbiAgICAgIEBpbmNsdWRlIHRyaWFuZ2xlKCR3aGl0ZSwgMTBweCwgNnB4LCA0NSk7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwidG9wXCIge1xuICAgICAgdG9wOiAxcHg7XG4gICAgICBsZWZ0OiAtNXB4O1xuICAgICAgQGluY2x1ZGUgdHJpYW5nbGUoJHdoaXRlLCAxMHB4LCA2cHgsIDApO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcImJvdHRvbVwiIHtcbiAgICAgIGJvdHRvbTogMXB4O1xuICAgICAgbGVmdDogLTVweDtcbiAgICAgIEBpbmNsdWRlIHRyaWFuZ2xlKCR3aGl0ZSwgMTBweCwgNnB4LCA5MCk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzb2NpYWwtaWNvbigkY29udGVudCkge1xuXG4gIGEge1xuXG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiByYWRpb3MoJGN1c3RvbS1yYWRpby1zaXplOiAxOHB4LCAkY3VzdG9tLXJhZGlvLWJvcmRlci13aWR0aDogMXB4LCAkY3VzdG9tLXJhZGlvLXBpcC1jb2xvcjogJHNlY29uZGFyeV9pbnB1dF9zdHJva2UsICRjdXN0b20tcmFkaW8tdW5jaGVja2VkLWJnOiAkc2Vjb25kYXJ5X2lucHV0X2JnKXtcbiAgJGN1c3RvbS1yYWRpby10cmFuc2l0aW9uLXNwZWVkOiAgICAgMTAwbXM7XG4gICRjdXN0b20tcmFkaW8taW5zZXQtc2hhZG93OiAgICAgICAgIG5vbmU7XG5cbiAgJGN1c3RvbS1yYWRpby1waXAtc2l6ZTogICAgICAgICAgICAgcm91bmQoJGN1c3RvbS1yYWRpby1zaXplICogLjYpO1xuXG4gIC8vIFN0YXRlc1xuICAkY3VzdG9tLXJhZGlvLXVuY2hlY2tlZC1ib3JkZXI6ICAgICAkZ3JheS1kYXJrO1xuXG4gICRjdXN0b20tcmFkaW8tY2hlY2tlZC1iZzogICAgICAgICAgICRjdXN0b20tcmFkaW8tdW5jaGVja2VkLWJnO1xuICAkY3VzdG9tLXJhZGlvLWNoZWNrZWQtYm9yZGVyOiAgICAgICAkY3VzdG9tLXJhZGlvLXBpcC1jb2xvcjtcblxuICAkY3VzdG9tLXJhZGlvLWFjdGl2ZS1pbnNldC1zaGFkb3c6ICBub25lO1xuXG4gICRjdXN0b20tcmFkaW8tZm9jdXMtc2hhZG93OiAgICAgICAgIDAgMCAwIDJweCB0cmFuc3BhcmVudGl6ZSgkY3VzdG9tLXJhZGlvLXBpcC1jb2xvciwgLjgpO1xuXG4gICRjdXN0b20tcmFkaW8tZGlzYWJsZWQtYmc6ICAgICAgICAgIGxpZ2h0ZW4oYmxhY2ssIDkxLjglKTtcbiAgJGN1c3RvbS1yYWRpby1kaXNhYmxlZC1waXAtY29sb3I6ICAgbGlnaHRlbihibGFjaywgODAlKTtcblxuXG4gIC8vIENoZWNrIHZhcmlhYmxlIHZhbHVlc1xuICBAaWYgKCRjdXN0b20tcmFkaW8tc2l6ZSAlIDIgPT0gMSkgeyBAZXJyb3IgJyRjdXN0b20tcmFkaW8tc2l6ZSBtdXN0IGJlIGV2ZW4nOyB9XG4gIC8vIHJvdW5kIHRvIG5lYXJlc3QgZXZlbiBudW1iZXJcbiAgQGlmICgkY3VzdG9tLXJhZGlvLXBpcC1zaXplICUgMiA9PSAxKSB7ICRjdXN0b20tcmFkaW8tcGlwLXNpemU6ICRjdXN0b20tcmFkaW8tcGlwLXNpemUgLSAxOyB9XG5cblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICB3aWR0aDogICRjdXN0b20tcmFkaW8tc2l6ZSAtIDI7XG4gIGhlaWdodDogJGN1c3RvbS1yYWRpby1zaXplIC0gMjtcblxuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAvLyBSYWRpb1xuICAvLyAtLS0tLVxuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogIC0kY3VzdG9tLXJhZGlvLWJvcmRlci13aWR0aDtcbiAgICBsZWZ0OiAtJGN1c3RvbS1yYWRpby1ib3JkZXItd2lkdGg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogJyc7XG5cblxuICAgIGJhY2tncm91bmQ6ICRjdXN0b20tcmFkaW8tdW5jaGVja2VkLWJnO1xuICAgIGJvcmRlcjogJGN1c3RvbS1yYWRpby1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1yYWRpby11bmNoZWNrZWQtYm9yZGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1yYWRpby1pbnNldC1zaGFkb3c7XG5cbiAgICB3aWR0aDogICRjdXN0b20tcmFkaW8tc2l6ZTtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFkaW8tc2l6ZTtcbiAgfVxuXG4gICY6YWN0aXZlOjpiZWZvcmUge1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tcmFkaW8taW5zZXQtc2hhZG93LFxuICAgICRjdXN0b20tcmFkaW8tYWN0aXZlLWluc2V0LXNoYWRvdztcbiAgfVxuXG4gICY6Zm9jdXM6OmJlZm9yZSB7XG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1yYWRpby1pbnNldC1zaGFkb3csXG4gICAgJGN1c3RvbS1yYWRpby1mb2N1cy1zaGFkb3c7XG4gIH1cblxuICAmOmNoZWNrZWQ6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogJGN1c3RvbS1yYWRpby1jaGVja2VkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1yYWRpby1jaGVja2VkLWJvcmRlcjtcbiAgfVxuXG4gICY6ZGlzYWJsZWQ6OmJlZm9yZSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhZGlvLWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnRpemUoJGN1c3RvbS1yYWRpby11bmNoZWNrZWQtYm9yZGVyLCAuMik7XG4gIH1cblxuXG5cbiAgLy8gUmFkaW8gUGlwXG4gIC8vIC0tLVxuXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtKCRjdXN0b20tcmFkaW8tc2l6ZSAvIDIpIC0gJGN1c3RvbS1yYWRpby1ib3JkZXItd2lkdGg7XG4gICAgbGVmdDogKCRjdXN0b20tcmFkaW8tc2l6ZSAvIDIpIC0gJGN1c3RvbS1yYWRpby1ib3JkZXItd2lkdGg7XG5cblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6ICcnO1xuXG4gICAgYmFja2dyb3VuZDogJGN1c3RvbS1yYWRpby1waXAtY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLDAsMCwuMSk7XG5cbiAgICB3aWR0aDogIDA7XG4gICAgaGVpZ2h0OiAwO1xuICB9XG5cbiAgJjpjaGVja2VkOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogYWxsIGVhc2UtaW4tb3V0ICRjdXN0b20tcmFkaW8tdHJhbnNpdGlvbi1zcGVlZCAwO1xuXG4gICAgdG9wOiAgZmxvb3IoXG4gICAgICAgICAgICAgICAgICAgIC0gKCRjdXN0b20tcmFkaW8tc2l6ZSAvIDIpXG4gICAgICAgICAgICAtICgkY3VzdG9tLXJhZGlvLXBpcC1zaXplIC8gMilcbiAgICAgICAgICAgIC0gJGN1c3RvbS1yYWRpby1ib3JkZXItd2lkdGhcbiAgICAgICAgICAgIC0gLjVcbiAgICApO1xuXG4gICAgbGVmdDogZmxvb3IoXG4gICAgICAgICAgICAgICAgICAgICsgKCRjdXN0b20tcmFkaW8tc2l6ZSAvIDIpXG4gICAgICAgICAgICAtICgkY3VzdG9tLXJhZGlvLXBpcC1zaXplIC8gMilcbiAgICAgICAgICAgIC0gJGN1c3RvbS1yYWRpby1ib3JkZXItd2lkdGhcbiAgICAgICAgICAgICsgMVxuICAgICk7XG5cbiAgICB3aWR0aDogICRjdXN0b20tcmFkaW8tcGlwLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhZGlvLXBpcC1zaXplO1xuICB9XG5cbiAgJjpkaXNhYmxlZDo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICRjdXN0b20tcmFkaW8tZGlzYWJsZWQtcGlwLWNvbG9yO1xuICB9XG59XG5cbkBtaXhpbiBpbnB1dC10ZXh0IHtcbiAgYmFja2dyb3VuZDogJHdoaXRlO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiAkZ3JleTtcbiAgaGVpZ2h0OiA0MnB4O1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICBtYXJnaW46IDAgN3B4O1xuICBwYWRkaW5nOiAwIDEuMjVyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IGRhcmtlbigkZ3JleV9saWdodCwgMTAlKTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWNcbiAgfVxufVxuXG5AbWl4aW4gc2VsZWN0bGlzdCgpIHtcbiAgQGluY2x1ZGUgdXNlci1zZWxlY3Qobm9uZSk7XG5cbiAgYmFja2dyb3VuZDogJHdoaXRlO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiAkZ3JleTtcbiAgaGVpZ2h0OiA0MnB4O1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICBtYXJnaW46IDAgN3B4O1xuICBwYWRkaW5nOiAwIDEuMjVyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzLFxuICAmOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMTVweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAn4pa+JztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMnB4O1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICNiYmJiYmI7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgLmllICYge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBzZWxlY3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgY29sb3I6ICRncmV5O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiAyO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTBweCA1cHg7XG4gICAgLy8gVGhpcyBpcyBzbyBoYWNreS4uIChmb3IgRmlyZWZveClcbiAgICAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IHNlbGVjdCBhcnJvdy5cbiAgICB0ZXh0LW92ZXJmbG93OiAnJztcbiAgICB0ZXh0LWluZGVudDogNXB4O1xuICAgIC8vIEVuZCBvZiBicnV0YWwgaGFja1xuXG4gICAgJlttdWx0aXBsZT1tdWx0aXBsZV0ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXk7XG4gICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICBib3gtc2hhZG93OiAwO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjY2NjY2NjO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMTVweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgb3B0aW9uW2Rpc2FibGVkXSB7XG4gICAgICBjb2xvcjogI2VlZWVlZTtcbiAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHNlbGVjdDotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAjODg4ODg4O1xuICB9XG5cbiAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbn1cblxuLy8gaG92ZXIgaW1hZ2UgaGVscGVyXG5AbWl4aW4gaW1hZ2VIb3ZlcigkcGxheWJ1dHRvbjogZmFsc2UsICRiZzogJGJsYWNrKSB7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuICBAaW5jbHVkZSBhbmltYXRlKCk7XG5cbiAgLy8gb25seSBhcHBseSBwbGF5IGJ1dHRvbiBpZiB0cnVlXG4gIEBpZiAoJHBsYXlidXR0b24gPT0gdHJ1ZSkge1xuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL3BsYXkuc3ZnJykgbm8tcmVwZWF0O1xuICAgICAgQGluY2x1ZGUgY2VudGVyKHRydWUsIHRydWUsIHRydWUsIGZhbHNlKTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBAaW5jbHVkZSBhbmltYXRlKCk7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMC44O1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICBAaW5jbHVkZSBhbmltYXRlKCk7XG4gIH1cbn1cblxuQG1peGluIGJyZWFrcG9pbnQoJHdpZHRoLCAkdHlwZTogJ21pbicpIHtcbiAgQGlmICgkdHlwZSA9PSAnbWluJykge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkd2lkdGgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09ICdtYXgnKSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vU2VsZWN0IEZpbHRlclxuXG5AbWl4aW4gZmlsdGVyIHtcbiAgLnZpZXdzLWV4cG9zZWQtd2lkZ2V0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICYudmlld3Mtc3VibWl0LWJ1dHRvbiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgbGFiZWwsIC52aWV3cy13aWRnZXQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgfVxuXG4gIH1cbn1cblxuXG5AbWl4aW4gbGlzdGluZyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1hbWEtYmVhcikge1xuICB9XG5cbiAgLnZpZXdzLXJvdy5saXN0aW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgJGdyZXk7XG4gICAgICBjb250ZW50OlwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG5cbiAgICAuZmllbGQtLW5hbWUtZmllbGQtYWRkcmVzcyB7XG4gICAgICBAaW5jbHVkZSBoNjtcbiAgICB9XG5cbiAgICAuaW5uZXIge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAudGh1bWJuYWlsIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGltZyB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgICBtYXJnaW46IDAgMnJlbSAwIDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1ldGEge1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIH1cblxuICAgIC5idG4sIC5yZWFkbW9yZS1leHRyYWZpZWxkIHtcbiAgICAgIEBpbmNsdWRlIGJ0bihzZWNvbmRhcnksICd5ZXMnKTtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cbn1cblxuXG5AbWl4aW4gbGlzdGluZy1mZWF0dXJlIHtcblxuICAuZmVhdHVyZWQge1xuICAgIGJhY2tncm91bmQ6ICRncmV5X2xpZ2h0ZXI7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHBhcGEtYmVhcikge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAuY29sLXNtLTEyIHtcblxuICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgJi5jb250ZW50IHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG5cbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWV0YSB7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoMyBhIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAuYnRuIHtcbiAgICAgIC8vQGluY2x1ZGUgYnRuKHNlY29uZGFyeS1kYXJrKTtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNpZGViYXItaGVhZGluZyB7XG4gIGNvbG9yOiAkcHJpbWFyeV9mb250X2NvbG9yX2Rhcms7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5AbWl4aW4gbGFyZ2UtZm9udCB7XG4gIGZvbnQtc2l6ZTogMS4yODZyZW07IC8vMThweFxuICBsaW5lLWhlaWdodDogMS42ZW07XG59XG4iLCJib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xufVxuXG4uYm9keV9pbm5lciB7XG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cbi5tYWluLWNvbnRhaW5lciB7XG5cdG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLy8gZGlzYWJsZSBjYXB0Y2hhIGFkbWluXG4uY2FwdGNoYS1hZG1pbi1saW5rcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cbiIsIi5icmVhZGNydW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwIDAgMDtcbiAgcGFkZGluZzogMCAkcGFkZGluZyAkcGFkZGluZyAwO1xuICBAaW5jbHVkZSBjbGVhcmluZyhyZWxhdGl2ZSk7XG5cbiAgbGkge1xuXG4gICAgJi5hY3RpdmUge31cblxuICAgIGEge1xuICAgICAgY29sb3I6ICRibHVlO1xuICAgIH1cbiAgfVxufVxuXG4uYmxvY2stZWFzeS1icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiAuODc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBtYXJnaW4tdG9wOiAzcmVtO1xufVxuXG4uaGlkZS1icmVhZGNydW1icyAuYmxvY2stZWFzeS1icmVhZGNydW1iLFxuLmZpZWxkLW5hbWUtZmllbGQtaGlkZS1icmVhZGNydW1icy0geyAgLy9IaWRlIGJyZWFkY3J1bWIgZmllbGQgb24gRmxleCBwYWdlc1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLmJ0bi1wcmltYXJ5IHt9XG5cbi5idG46bm90KC5ub3QtYnRuKSB7XG4gIEBpbmNsdWRlIGJ0bihwcmltYXJ5KTtcbn1cblxuLmJ0bi1zZWNvbmRhcnkge1xuICBAaW5jbHVkZSBidG4oc2Vjb25kYXJ5KTtcbn1cblxuLmJ0bi10ZXJ0aWFyeSB7XG4gIEBpbmNsdWRlIGJ0bih0ZXJ0aWFyeSk7XG59XG5cbi5idG4tbGcsXG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7fVxuIiwiLmZvb3RlciB7XG4gIGJvcmRlci10b3A6IDZweCBzb2xpZCAkZ29sZF9kYXJrO1xuICBmb250LXNpemU6IDFyZW07XG4gIHBhZGRpbmctdG9wOiA4cHg7XG5cblx0LnJvdyB7XG5cdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHR9XG5cblx0LnN1YnNjcmlwdGlvbi1mb3JtIHtcblx0XHRiYWNrZ3JvdW5kOiAkZm9vdGVyX3N1Yl9iZztcblx0XHRjb2xvcjogd2hpdGU7XG5cdFx0Zm9udC1mYW1pbHk6ICRoZWFkbGluZS1mb250O1xuXHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRcdHBhZGRpbmc6IDEwcHggMDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRzcGFuIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxNHB4O1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRwYXBhLWJlYXIpIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAyM3B4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcblx0XHRcdEBpbmNsdWRlIGlucHV0LXRleHQ7XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRcdHdpZHRoOiAzMjVweDtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHBhcGEtYmVhcikge1xuXHRcdFx0XHRtYXJnaW46IDAgN3B4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHNlbGVjdCB7XG5cdFx0XHRAaW5jbHVkZSBzZWxlY3RsaXN0O1xuXHRcdFx0d2lkdGg6IDMyNXB4O1xuXG5cdFx0XHRvcHRpb246Zmlyc3QtY2hpbGQge1xuXHRcdCAgICAgIGNvbG9yOiAkZ3JleV9kYXJrO1xuXHRcdCAgICB9XG5cblx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdH1cblxuXHRcdC5mb3JtLWl0ZW0ge1xuXHRcdFx0bWFyZ2luOiAyMHB4IDA7XG5cdFx0XHR3aWR0aDogOTUlO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHtcblx0XHRcdFx0d2lkdGg6IDMwJTtcblx0XHRcdFx0bWFyZ2luOiAyMHB4IDVweDtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkcGFwYS1iZWFyKSB7XG5cdFx0XHRcdHdpZHRoOiAzMjVweDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRidXR0b24ge1xuXHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdGJvcmRlcjogc29saWQgMnB4ICR3aGl0ZTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDQycHg7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRoZWFkbGluZS1mb250O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHRcdGhlaWdodDogNDJweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAzOHB4O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDE0cHg7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdHdpZHRoOiA0MnB4O1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRwYXBhLWJlYXIpIHtcblx0XHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0XHRcdFx0bWFyZ2luLXRvcDogMjFweDtcblx0XHRcdH1cblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5X2Rhcms7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmZvb3Rlci1uZXdzIHtcblx0XHRiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcblx0XHRwYWRkaW5nOiA0MHB4IDA7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0aDIge1xuXHRcdFx0Y29sb3I6ICRyZWQ7XG5cdFx0fVxuXG5cdFx0LmNvbC1zbS0xMiB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdH1cblxuXHRcdFx0JjpsYXN0LW9mLXR5cGUge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxNXB4O1xuXHRcdFx0fVxuXG5cdFx0XHRwIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuZm9vdGVyLWxpbmtzIHtcblx0XHRwYWRkaW5nOiAyNXB4IDA7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuXG5cdFx0LmNvbC1zbS0xMjpmaXJzdC1vZi10eXBlIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAxNXB4O1xuXHRcdH1cblxuXHRcdC5zdWJmb290ZXItbmF2IHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1hbWEtYmVhcikge1xuICAgICAgICBjb2x1bW5zOiAxODBweCA0O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG5cdFx0XHR9XG5cdFx0XHRsaSB7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5hY3JvbnltIHtcblx0XHRcdGZvbnQtZmFtaWx5OiAkaGVhZGxpbmUtZm9udDtcblx0XHRcdGZvbnQtc2l6ZTogNHJlbTtcblx0XHR9XG5cblx0XHR1bCB7XG5cdFx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cblx0XHRcdGxpIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuZmllbGQtaXRlbSB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMTBweDtcblx0XHR9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZXlfZGFya2VyO1xuICAgIH1cblx0fVxuXG5cdC5mb290ZXItYm90dG9tLW5hdiB7XG5cdFx0YmFja2dyb3VuZDogJHByaW1hcnk7XG5cdFx0Ym9yZGVyLXRvcDogNnB4IHNvbGlkICRnb2xkX2Rhcms7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRwYWRkaW5nOiAyNnB4IDA7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0LmZvb3Rlci1uYXYge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cblx0XHR1bCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdGxpIHtcblx0XHRcdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRwYXBhLWJlYXIpIHtcblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdGZsZXg6IDAgMCA1MCU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHBhcGEtYmVhcikge1xuXHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0ZmxleDogMCAwIDI1JTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGEge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHR9XG5cdH1cblxuXHQuZm9vdGVyLWJvdHRvbSB7XG5cdFx0cGFkZGluZzogMDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRwYXBhLWJlYXIpIHtcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0fVxuXG5cdFx0aDUge1xuXHRcdFx0Y29sb3I6ICRwcmltYXJ5O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdH1cblxuXHRcdHAge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG4gICAgLmZvb3Rlci1jb250YWN0LWFuZC1zb2NpYWwtY29udGFpbmVyIHtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkcGFwYS1iZWFyKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG4gICAgfVxuXHRcdC5maWVsZC1uYW1lLWZpZWxkLWZvb3Rlci1jb250YWN0IHtcblx0XHRcdHAge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5maWVsZC1uYW1lLWZpZWxkLWZvb3Rlci1sb2dvIC5pbWctcmVzcG9uc2l2ZXtcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdH1cblxuXHRcdC5zb2NpYWwge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRwYXBhLWJlYXIpIHtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRcdFx0fVxuXG5cdFx0XHRhIHtcblx0XHRcdFx0YmFja2dyb3VuZDogdXJsKC4uLy4uL2ltYWdlcy9pY29uLWZhY2Vib29rLWZvb3Rlci5zdmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHQvL2JhY2tncm91bmQ6ICRncmV5X2Rhcms7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDQ1cHg7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRoZWlnaHQ6IDQ1cHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiA0NXB4O1xuXHRcdFx0XHRtYXJnaW46IDAgMTBweCAxMHB4IDA7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHR3aWR0aDogNDVweDtcblxuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ29sZF9kYXJrO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5jYWxsIHtcblx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMDk4XCI7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5tYXAge1xuXHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0Y29udGVudDogXCJcXGYwNDFcIjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLmZhY2Vib29rIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL2ljb24tZmFjZWJvb2stZm9vdGVyLnN2Zyk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLnR3aXR0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvaWNvbi10d2l0dGVyLWZvb3Rlci5zdmcpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5saW5rZWRpbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9pY29uLWxpbmtlZGluLnBuZyk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLnlvdXR1YmUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvaWNvbi15b3V0dWJlLWZvb3Rlci5zdmcpO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNjAlO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5jYWxsIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQmW2hyZWYqPVwidGVsOlwiXSB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1hbWEtYmVhcikge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5jb2wtbWQtNiB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA1MHB4O1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdH1cblxuXHRcdC5zZWFyY2gtYmFyIHtcblx0XHRcdG1hcmdpbjogMjVweCAwO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0aW5wdXR7XG5cdFx0XHRcdEBpbmNsdWRlIGlucHV0LXRleHQ7XG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRncmV5X2xpZ2h0O1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHR9XG5cdFx0XHRidXR0b24ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IG5vbmU7XG5cdFx0XHRcdHBhZGRpbmc6MDtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRyaWdodDogMnB4O1xuXHRcdFx0XHR0b3A6IC01cHg7XG5cdFx0XHRcdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblx0XHRcdFx0d2lkdGg6IDQwcHg7XG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRjb2xvcjogJHJlZDtcblx0XHRcdFx0XHRjb250ZW50OiBcIlxcZjAwMlwiO1xuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udGF3ZXNvbWU7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAyNHB4O1xuXHRcdFx0XHRcdGhlaWdodDogMjRweDtcblx0XHRcdFx0XHR3aWR0aDogMjRweDtcblx0XHRcdFx0fVxuXHRcdFx0XHQuZ2x5cGhpY29uIHtcblx0XHRcdFx0XHRkaXNwbGF5Om5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LmNhcHRjaGEtYWRtaW4tbGlua3Mge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cbi5maWVsZC1uYW1lLWZpZWxkLWZvb3Rlci1yaWdodC10b3AtdGV4dCB7XG5cbn1cbi5ibG9jay1uZWFzYy1mb290ZXItY29udGFjdC1hZGRyZXNzIHAge1xuXHRmb250LXNpemU6IDFyZW07XG59XG5cbi5mb290ZXItY29weXJpZ2h0LWFuZC1sZWdhbC1uYXYtY29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkcGFwYS1iZWFyKSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbiAgYSArIGEge1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gIH1cbn1cbiIsIi8qXG4gKiBmb3JtLXNlbGVjdFxuICoqL1xuXG5zcGFuLmNvbnRyb2wtbGFiZWwsbGFiZWwsIGZpZWxkc2V0LnBhbmVsIGxlZ2VuZC5wYW5lbC1oZWFkaW5nIHNwYW4ge1xuICBjb2xvcjogJGdyZXktZGFyaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogJGhlYXZ5O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uaW5wdXQtZ3JvdXAge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmZvcm0taXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmLmZvcm0tdHlwZS10ZXh0YXJlYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHtcbiAgICAvL2Rpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDIlO1xuICAgIG1heC13aWR0aDogNDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAuZm9ybS1pdGVtIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYuZm9ybS10eXBlLXRleHRhcmVhIHtcbiAgICAgIHdpZHRoOiA5OCU7XG4gICAgfVxuICB9XG59XG5cbi8vIGZpeGluZyBib290c3RyYXAgZm9ybWNvbnRyb2xcbi5mb3JtLWNvbnRyb2wge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGhlaWdodDogaW5oZXJpdDtcblxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbi5pbnB1dC1ncm91cC1idG4ge1xuXG4gICY6bGFzdC1jaGlsZCB7XG5cbiAgICA+IC5idG4sXG4gICAgPiAuYnRuLWdyb3VwIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGhlaWdodDogNTBweDtcbiAgICAgIHdpZHRoOiA3MHB4O1xuICAgIH1cbiAgfVxufVxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInBob25lXCJdLFxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAkZ3JleV9saWdodDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICRncmV5X2Rhcms7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICBoZWlnaHQ6IDQ1cHg7XG4gIHBhZGRpbmc6IDAgKCRwYWRkaW5nIC8gMik7IC8vIDAgMTVweFxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmx1ZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgcGFkZGluZzogKCRwYWRkaW5nIC8gMik7IC8vIDE1cHggMzBweFxufVxuXG4ucmVzaXphYmxlLXRleHRhcmVhIHRleHRhcmVhLFxudGV4dGFyZWEge1xuICBib3JkZXI6IDFweCBzb2xpZCAkZ3JleV9saWdodDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICRncmV5X2Rhcms7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIHBhZGRpbmc6ICgkcGFkZGluZyAvIDIpOyAvLyAxNXB4IDMwcHhcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogJGJsdWU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG4ucmVzaXphYmxlLXRleHRhcmVhIHtcblxuICAuZ3JpcHBpZSB7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZDogJGdyZXk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXlfbGlnaHQ7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBjdXJzb3I6IHMtcmVzaXplO1xuICB9XG59XG5cbnRleHRhcmVhIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRncmV5O1xufVxuXG4vLyBmaXhpbmcgYm9vdHN0cmFwIHJhZGlvIGFuZCBjaGVja2JveCBhbGlnbm1lbnRcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuXG4uZm9ybS10eXBlLXNlbGVjdCxcbi5uZWFzYy1mYWNldC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBzZWxlY3QsIHNlbGVjdC5mb3JtLXNlbGVjdDpub3QoI2VkaXQtaW50ZXJlc3QpIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjNGM0YzQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjogJGdyZXk7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBoZWlnaHQ6IDQ3cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMnJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJsdWU7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5zZWxlY3Qtd3JhcHBlcjphZnRlciB7XG4gICAgY29sb3I6ICRncmV5LWxpZ2h0O1xuICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmb250YXdlc29tZTtcbiAgICBmb250LXNpemU6IDMycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjI1O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEzcHg7XG4gICAgdG9wOiAtMXB4O1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG59XG5cbi5mb3JtLXR5cGUtZGF0ZSB7XG5cbiAgLmZvcm0tY29udHJvbCB7fVxuXG4gIC5mb3JtLWl0ZW0uZm9ybS10eXBlLXNlbGVjdCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luIC8gMzsgLy8gMTBweFxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICB0b3A6IC0xNHB4O1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LndlYmZvcm0tY2FsZW5kYXIge1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogNDBweDtcbiAgfVxufVxuXG5cbi5mb3JtLW1hbmFnZWQtZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBpbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHtcbiAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bixcbiAgICAuaW5wdXQtZ3JvdXAtYnRuOmxhc3QtY2hpbGQgPiAuYnRuLWdyb3VwIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgcGFkZGluZzogMTJweCAxcmVtO1xuICAgICAgd2lkdGg6IDE3MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5idG4ge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgcGFkZGluZzogOXB4IDIwcHggOHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWFtYS1iZWFyKSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1yZXF1aXJlZDphZnRlciB7XG4gIGNvbG9yOiAkcmVkO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQ7XG59XG5cblxuLmZvcm0tYWN0aW9ucyB7XG5cbiAgLmJ0biB7XG4gICAgcGFkZGluZzogMTBweCAzMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAmOm9ubHktY2hpbGQge1xuICAgICAgbWF4LXdpZHRoOiA0MjBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWF4LXdpZHRoOiBjYWxjKDQyMHB4IC0gNzBweCk7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNzBweCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWFtYS1iZWFyKSB7XG4gICAgICB3aWR0aDogNDglO1xuICAgIH1cbiAgfVxufVxuXG5cbi5mb3JtLWl0ZW0tcGFzc3dvcmQtY29uZmlybSB7XG5cbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uaGFzLWVycm9yIHtcblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBib3JkZXItY29sb3I6ICRncmV5X2xpZ2h0O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRyZWQ7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGdyZXlfbGlnaHQ7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcmVkO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuZmllbGRzZXQucGFuZWwge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW46IDJyZW0gMDtcbiAgcGFkZGluZy10b3A6IDRyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBsZWdlbmQucGFuZWwtaGVhZGluZyB7XG4gICAgYmFja2dyb3VuZDogbGlnaHRlbigkZ3JleV9saWdodCwgMTAlKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHNwYW4ge1xuICAgICAgQGV4dGVuZCBsYWJlbDtcbiAgICB9XG4gIH1cblxuICAucGFuZWwtYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgfVxufVxuXG4uZm9ybS1hY3Rpb25zIHtcbiAgbWFyZ2luOiAycmVtIDAgNHJlbTtcbn1cblxuXG5AaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHtcbiAgLndlYmZvcm0tY2xpZW50LWZvcm0geyAgLy93ZWJmb3JtIHNwZWNpZmljXG5cbiAgICA+IGRpdiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICAuZm9ybS1pdGVtIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIHdpZHRoOiA0OCU7XG4gICAgfVxuXG4gICAgLndlYmZvcm0tY29tcG9uZW50LXRleHRhcmVhLFxuICAgIC53ZWJmb3JtLWNvbXBvbmVudC1maWVsZHNldCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIlO1xuICAgICAgbWF4LXdpZHRoOiA5OCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuZm9ybS1hY3Rpb25zIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4jd2ViZm9ybS1jb21wb25lbnQtcGF5bWVudC1pbmZvcm1hdGlvbi0tcGF5bWVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5ub2RlLXdlYmZvcm0sIC5ub2RlLXR5cGUtcGFnZSB7XG4gIC53ZWJmb3JtLWNsaWVudC1mb3JtIC5mb3JtLWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5mb3JtLWlubGluZSAuZm9ybS1jb250cm9sIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uZm9ybS1pdGVtLXN1Ym1pdHRlZC1wcm9kdWN0LXNlbGVjdGlvbi1zaGlwcGluZy1vcHRpb25zLFxuLmZvcm0taXRlbS1zdWJtaXR0ZWQtcHJvZHVjdC1zZWxlY3Rpb24tc2hpcHBpbmcge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5odG1sLmpzIHtcbiAgaW5wdXQsIGJ1dHRvbiB7XG4gICAgJi5qcy1oaWRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBVdGlsaXR5IG5hdlxuXG4jcGFnZS11YmVyIHtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG5cblxuICBAaW5jbHVkZSBmdWxsd2lkdGgoKTtcblxuICA+IC5jb250YWluZXIge1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAvL0hlYWRlciBicmVhZGNydW1ic1xuICAubmF2IHtcbiAgICB1bC5icmVhZGNydW1iLWxpbmtzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGRhcmtlbigkZ3JleV9saWdodCwgMTAlKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nOiAwIDAgMCA4cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGYwNTNcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250YXdlc29tZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDY0cHg7XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIGEge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGRhcmtlbigkZ3JleV9saWdodCwgMTAlKTtcbiAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmxhc3Qge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogbWVkaXVtIG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAubmF2IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAgIHNwYW4ge1xuICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkaGVhdnk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICAmLnF1aWNrLWxpbmtzIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgQGluY2x1ZGUgbm8tdW5kZXJsaW5lO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAwIDI1cHggMCAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAjMDA0MTdEO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnRuKCRwcmltYXJ5KTtcbiAgICBiYWNrZ3JvdW5kOiAjODAwMDFBO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZ29sZF9kYXJrO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1hbWEtYmVhcikge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWFtYS1iZWFyKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuXG4ubmF2YmFyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbiNuYXZiYXIge1xuICAuY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG4uaGVhZGVyLS13cmFwcGVyIHtcbiAgLy9AaW5jbHVkZSBmdWxsd2lkdGg7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZTsgLyogT2xkIGJyb3dzZXJzICovXG4gIC5oZWFkZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG4gICAgQGluY2x1ZGUgY29udGFpbmVyKG1kKTtcblxuICAgICYtLW1pZGRsZSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRib2xkO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiA2NXB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICB9XG4gICAgICBpbWcubG9nby1kZXNrdG9wIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC5sZWFkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkcGFwYS1iZWFyKSB7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtLWxlZnQsXG4gICAgJi0tcmlnaHQge1xuICAgICAgd2lkdGg6IDI1JTtcbiAgICB9XG5cbiAgICAmLS1sZWZ0IHtcbiAgICAgIC5uYXZiYXItdG9nZ2xlIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgIC5pY29uLWJhciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGdyZXlfZGFyaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1hbWEtYmVhcikge1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG5cbiAgICAgICYtLWxlZnQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgJi0tbWlkZGxlIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogKCRwYWRkaW5nLzIpO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgfVxuICAgICAgICBpbWcubG9nby1tb2JpbGUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgaW1nLmxvZ28tZGVza3RvcCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtLXJpZ2h0IHtcbiAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkcGFwYS1iZWFyKSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tbWlkZGxlIHtcbiAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC5uYW1lIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1yaWdodCB7XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRwYXBhLWJlYXIpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICB9XG4gICAgICAubmF2YmFyLWJyYW5kIHtcbiAgICAgICAgQGluY2x1ZGUgaDE7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgLm5hbWUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgJi0tdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIGNlbnRlcihmYWxzZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UpO1xuICAgICAgICB0b3A6IDQ1JTtcbiAgICAgIH1cblxuICAgICAgdWwudXRpbGl0eS1uYXYge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIEBpbmNsdWRlIG5vLXVuZGVybGluZTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0OHB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdnlfYmx1ZV9saWdodDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnNlYXJjaC10b2dnbGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDAyXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udGF3ZXNvbWU7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgd2lkdGg6IDI0cHg7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zZWFyY2gtYmFyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICBtYXJnaW46IDAgMyUgMCAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgaW5wdXR7XG4gICAgICAgICAgQGluY2x1ZGUgaW5wdXQtdGV4dDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMXB4O1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmV5X2xpZ2h0O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBidXR0b24uYnRuIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiBub25lO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgICAgIHRvcDogMjNweDtcbiAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1hbWEtYmVhcikge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZ2x5cGhpY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDoge1xuICAgICAgICAgICAgICBpbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9pY29uLXNlYXJjaC10aGluLnBuZyk7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgICByZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAgICAgICByaWdodDogMThweDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAzNHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1hbWEtYmVhcikge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNhcHRjaGEtYWRtaW4tbGlua3Mge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubG9nbyB7XG4gICAgICBtYXJnaW46IDAgMiU7XG4gICAgICBtYXgtd2lkdGg6IDQyN3B4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDQyN3B4O1xuICAgICAgei1pbmRleDogMTtcblxuICAgICAgaW1nLmxvZ28tZGVza3RvcCB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgIG1heC13aWR0aDogNDI2cHggIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE1cHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tb2JpbGUtbWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbGluay1saWdodDtcbiAgICBAaW5jbHVkZSBuby11bmRlcmxpbmU7XG5cbiAgICB1bC5tZW51Lm5hdiB7XG4gICAgICBib3JkZXItcmlnaHQ6IDdweCBzb2xpZCAkZ29sZDtcblxuICAgICAgbGkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHJlZF9kYXJrO1xuICAgICAgICBsaW5lLWhlaWdodDogMi4yNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcblxuICAgICAgICAgICYuYWN0aXZlLFxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRnb2xkO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRoZWF2eTtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCAkZ29sZDtcbiAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiAxNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIC8vYmFja2dyb3VuZDogJHJlZF9kYXJrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHVsLnV0aWxpdHktbmF2IHtcbiAgICAgIGJhY2tncm91bmQ6ICRncmV5X2xpZ2h0ZXI7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDE1cHggMCAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDQ5JTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1hbWEtYmVhcikge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyAvLyBtYWtlcyBzdXJlIHRoaXMgbWVudSBpcyBoaWRkZW4gd2hlbiBzY3JlZW4gaXMgcmVzaXplZCB0byBsYXJnZXIgc2l6ZVxuICAgIH1cbiAgfVxuXG4gIC5tb2JpbGUtc2VhcmNoIHtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JleV9saWdodGVyO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1hbWEtYmVhcikge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zZWFyY2gtYmFyIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgLmZvcm0tYWN0aW9ucyB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgaW5wdXR7XG4gICAgICAgIEBpbmNsdWRlIGlucHV0LXRleHQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmV5X2xpZ2h0O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBidXR0b24uYnRuIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiBub25lO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogLTEwcHg7XG4gICAgICAgIHRvcDogMnB4O1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAgICAgLmdseXBoaWNvbiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDAyXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcImZvbnRhd2Vzb21lXCI7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICBib3JkZXI6IG1lZGl1bSBub25lO1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICBtYXJnaW46IDAgMTdweCAwIDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNhcHRjaGEtYWRtaW4tbGlua3Mge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIGEuYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIGJ0bigkcHJpbWFyeSk7XG4gICAgICBiYWNrZ3JvdW5kOiAkaGVhZGVyc19saW5rc19wcmltYXJ5O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsaW5lLWhlaWdodDogNDJweDtcbiAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgICAgICYubG9naW4ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGdvbGRfZGFyaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogJGhlYXZ5O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgQGluY2x1ZGUgbm8tdW5kZXJsaW5lO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuICAgICAgICBtYXJnaW46IDAgMjVweCAwIDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuaGVhZGVyLm5hdmJhciB7XG4gIHotaW5kZXg6IDE7XG4gIEBpbmNsdWRlIGZ1bGx3aWR0aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGhlaWdodDogNTlweDtcbiAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgLm1lbnUubmF2IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgID4gbGkge1xuICAgICAgQGluY2x1ZGUgbm8tdW5kZXJsaW5lO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgaGVpZ2h0OiA1OHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgID4gYSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ1cmVtO1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICBoZWlnaHQ6IDU4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1OHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDI0cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTkwMDFGO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4vKiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDAgMTBweCAxMHB4IDEwcHg7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRnb2xkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgICAgICAgfSovXG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkZ3JhbmRtYS1iZWFyKSB7XG4gICAgICAgICAgIGZvbnQtc2l6ZTogMS4zNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5hY3RpdmUsICYub3BlbiB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdvbGQ7XG4gICAgICAgICAgY29sb3I6ICRuYXZ5X2JsdWVfZGFyaztcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgaGVpZ2h0OiA1OHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1OHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuXG4gICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTkwMDFGO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgfVxuXG4vKiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDAgMTBweCAxMHB4IDEwcHg7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRnb2xkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0zcHg7XG4gICAgICAgICAgfSovXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4ubGVhZCB7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuXG4uaGVhZGVyLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsc2Fucy1zZXJpZjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC1zaXplOiAzMHB4O1xufVxuXG51bC5tZW51Lm5hdiB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4ubWFpbi1tZW51LXN1Ym1lbnUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLnN1Ym1lbnUge1xuICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBib3gtc2hhZG93OiAwcHggNHB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMjUpLCBpbnNldCAwcHggN3B4IDBweCAjQ0M5OTMzO1xuXG4gICAgdWwge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgbGkge1xuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gICAgICAgICAgY29sb3I6ICMwMDQxN0Q7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICA+IHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgID4gbGkge1xuICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MXB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtaW4td2lkdGg6IDI1MHB4O1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxMHB4IDEwcHggMHB4IDEwcHg7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRnb2xkIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0zcHg7XG4gICAgICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjODAwMDFBO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gYSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gICAgICAgICAgY29sb3I6ICMwMDQxN0Q7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWluLXdpZHRoOiAxNTVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmN0YS1jb250YWluZXIubW9iaWxlIHtcbiAgbWFyZ2luOiAwIC0xNXB4O1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidG4oJHByaW1hcnkpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICM4MDAwMUE7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IGluaXRpYWw7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZ29sZF9kYXJrO1xuICAgIH1cbiAgfVxufVxudWwudXRpbGl0eS1uYXYubW9iaWxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0QxRDNENDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOntcbiAgICBsZWZ0Oi0xNXB4O1xuICAgIHJpZ2h0OiAtMTVweDtcbiAgICBib3R0b206IDA7XG4gIH1cbiAgcGFkZGluZzoge1xuICAgIGxlZnQ6IDE1O1xuICAgIHJpZ2h0OiAxNXB4O1xuICB9XG4gID4gbGkge1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgPiBhIHtcbiAgICAgICAgY29sb3I6ICM4MDAwMUE7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgIC5nbHlwaGljb24ge1xuICAgICAgICAgIGNvbG9yOiAjODAwMDFBO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gYSB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gICAgICBjb2xvcjogIzAwNDE3RDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG59XG4ubWFpbi1tZW51LW5hdi5tb2JpbGUge1xuICAmLnN1Ym1lbnUtLW9wZW4gPiB1bCA+IGxpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5zdWJtZW51LS1mb2N1cyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAuc3VibWVudSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHVsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgIGEge1xuICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOXB4O1xuICAgICAgICBjb2xvcjogIzAwNDE3RDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IHVsIHtcblxuICAgID4gbGkge1xuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgY29sb3I6ICM4MDAwMUE7XG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAuZ2x5cGhpY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAjODAwMDFBO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgPiBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgICAgICAgY29sb3I6ICMwMDQxN0Q7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZ2x5cGhpY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAxN3B4O1xuICB9XG4gIC5zdWJtZW51LS1mb2N1cyB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwcHg7XG4gIH1cbiAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDE3cHg7XG4gICAgbGVmdDogLTUwcHg7XG4gIH1cbiAgLnN1Ym1lbnUge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgID4gdWwge1xuICAgICAgPiBsaSB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gICAgICAgICAgY29sb3I6ICMwMDQxN0Q7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgICAgfVxuICAgICAgICA+IHVsIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuaGVhZGVyID4gI25hdmJhci1jb2xsYXBzZSB7XG4gIGJhY2tncm91bmQ6ICNlZWU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5uYXZiYXItdG9nZ2xlIHtcbiAgLmljb24tYmFyIHtcbiAgICB0cmFuc2l0aW9uOiAzMDBtcyBlYXNlLWluLW91dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDNweDtcbiAgfVxuICAuaWNvbi1iYXI6bGFzdC1jaGlsZCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0b3A6IC03cHg7XG4gIH1cbiAgLmljb24tYmFyOm50aC1jaGlsZCgyKSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIHRvcDogNnB4O1xuICB9XG4gIC5pY29uLWJhcjpudGgtY2hpbGQoMykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgJi5jb2xsYXBzZWQge1xuICAgIC5pY29uLWJhciB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgIHRvcDogMDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbi5ib2R5X2lubmVyID4gLm5hdmJhci5jb250YWluZXIge1xuICBib3JkZXI6IG1lZGl1bSBub25lO1xufVxuIiwiLypcbiAqIEljb24gc3R5bGVzXG4gKiovXG4iLCIuY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogJGNvbnRhaW5lci1tZDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5tYWluLWNvbnRhaW5lciB7XG5cdC8vcGFkZGluZy1ib3R0b206IDNyZW07XG59IiwidWwsXG5vbCB7XG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuXG4gIGxpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5wYWdlICYge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IC8vIDE4cHhcbiAgICBsaW5lLWhlaWdodDogMS42MjU7XG4gIH1cbn1cblxuLnJlZ2lvbi1jb250ZW50IHVsLFxuLnJlZ2lvbi1jb250ZW50IG9sIHtcbiAgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMWVtO1xuICB9XG59XG5cbnAgKyB1bCwgcCArIG9sIHtcbiAgbWFyZ2luLXRvcDogLTMwcHg7XG59XG4iLCJmaWdjYXB0aW9uIHtcbiAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07IC8vIDE4cHhcbiAgbGluZS1oZWlnaHQ6IDEuMSAvLyAyMHB4XG59XG4iLCIvKlxuICogV2FybmluZywgZXJyb3IsIGFuZCBzdGF0dXMgbWVzc2FnZXNcbiAqKi9cblxuLm1lc3NhZ2VzIHtcbiAgcGFkZGluZzogJHBhZGRpbmcgKCRwYWRkaW5nICogMykgJHBhZGRpbmcgKCRwYWRkaW5nICogMyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRibGFjaztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDVweDtcbiAgbWFyZ2luOiAkbWFyZ2luIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmJlZm9yZSB7XG4gICAgYm90dG9tOiAgMDtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDM2cHg7XG4gICAgbGVmdDogJG1hcmdpbjtcbiAgICBtYXJnaW46IGF1dG8gMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAzNnB4O1xuICB9XG5cbiAgLmNsb3NlIHtcbiAgICBmb250LXNpemU6IDY0cHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW4tdG9wOiAtMTVweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgdG9wOiAzMHB4O1xuICB9XG59XG5cbmRpdi5zdGF0dXMsXG50YWJsZSB0ci5vayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgYm9yZGVyLWNvbG9yOiAkZ3JlZW47XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IHVybCgnLi4vaW1hZ2VzL2ljb24tc3VjY2Vzcy5zdmcnKTtcbiAgfVxufVxuXG5kaXYud2FybmluZyxcbnRhYmxlIHRyLndhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlci1jb2xvcjogJG9yYW5nZTtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogdXJsKCcuLi9pbWFnZXMvaWNvbi13YXJuaW5nLnN2ZycpO1xuICB9XG59XG5cbmRpdi5lcnJvcixcbnRhYmxlIHRyLmVycm9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBib3JkZXItY29sb3I6ICRyZWQ7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IHVybCgnLi4vaW1hZ2VzL2ljb24tZXJyb3Iuc3ZnJyk7XG4gIH1cbn1cbiIsIlxubGkuZHJvcGRvd24ub3BlbiB7XG4gIC5kcm9wZG93bi1tZW51LXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgd2lkdGg6IDMyMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIHdpZHRoOiA5NzBweDtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgd2lkdGg6IDE1NjBweDtcbiAgICB9XG4gICAgbWF4LXdpZHRoOiAxNTYwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlfbGlnaHRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtaW4td2lkdGg6IDE2MHB4O1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIG1hcmdpbjogMnB4IDAgMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDZweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xNzUpO1xuICAgIGJveC1zaGFkb3c6IDAgNnB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjE3NSk7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICAmLWlubmVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtOTk5OXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtOTk5OXB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiA5OTk5cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA5OTk5cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleV9saWdodGVyO1xuICAgIH1cbiAgfVxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyKG1kKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlfbGlnaHRlcjtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbWVkaXVtIG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgbGkge1xuICAgICAgQGluY2x1ZGUgbWFrZS1zbS1jb2x1bW4oNCk7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICAmOmFjdGl2ZSwgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICRnb2xkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnBhZ2luYXRpb24ge1xuXG4gID4gbGkge1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJHdoaXRlLCAwKTtcbiAgICAgIGNvbG9yOiAkYmx1ZTtcbiAgICAgIG1hcmdpbjogMCAoJG1hcmdpbiAvIDIpO1xuICAgICAgcGFkZGluZzogMCAwIDFweDtcblxuICAgICAgJjpmb2N1cyxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICRibHVlO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgPiAucGFnZXJfX2l0ZW0tLWZpcnN0IHtcblxuICAgIGEge1xuICAgICAgbWluLXdpZHRoOiAxcmVtO1xuICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICBAaW5jbHVkZSBmb250QXdlc29tZSgnXFxmMTAwJywgMTZweCk7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgPiAucGFnZXJfX2l0ZW0tLWxhc3Qge1xuXG4gICAgYSB7XG4gICAgICBtaW4td2lkdGg6IDFyZW07XG4gICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgIEBpbmNsdWRlIGZvbnRBd2Vzb21lKCdcXGYxMDEnLCAxNnB4KTtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IC5wYWdlcl9faXRlbS0tcHJldmlvdXMge1xuXG4gICAgYSB7XG4gICAgICBtaW4td2lkdGg6IDFyZW07XG4gICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgIEBpbmNsdWRlIGZvbnRBd2Vzb21lKCdcXGYxMDQnLCAxNnB4KTtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IC5wYWdlcl9faXRlbS0tbmV4dCB7XG5cbiAgICBhIHtcbiAgICAgIG1pbi13aWR0aDogMXJlbTtcbiAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgQGluY2x1ZGUgZm9udEF3ZXNvbWUoJ1xcZjEwNScsIDE2cHgpO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gID4gLnBhZ2VyLWVsbGlwc2lzIHt9XG5cbiAgPiAuYWN0aXZlIHtcblxuICAgID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleV9kYXJrO1xuICAgICAgY29sb3I6ICRncmV5X2Rhcms7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleV9kYXJrO1xuICAgICAgICBjb2xvcjogJGdyZXlfZGFyaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IC5kaXNhYmxlZCB7XG5cbiAgICA+IHNwYW4ge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICRncmV5X2Rhcms7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAkZ3JleV9kYXJrO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogJGdyZXlfZGFyaztcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICRncmV5X2Rhcms7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cbiIsIi8qKlxuICogR2VuZXJhbCBSZWdpb24gc3R5bGVzIHNob3VsZCBnbyBoZXJlLlxuICogU3R5bGVzIGZvciBzZXBhcmF0ZSByZWdpb25zIHNob3VsZCBnbyBpbnRvIHRoZWlyIG93biBwYXJ0aWFsXG4gKiBuYW1lcyByZWdpb25zLS1yZWdpb25OQU1FLnNjc3NcbiAqKi9cbiIsIi5mb3JtLXNlYXJjaCB7XG5cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtLXNlYXJjaCB7XG5cbiAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICB9XG59XG5cbi5wYXRoLXNlYXJjaCB7XG5cblx0LnNlYXJjaC1oZWxwLWxpbmsge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBhZGRpbmc6IDEwcHggMDtcblx0XHRtYXgtd2lkdGg6IDgwJTtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0fVxuXG5cdGgyIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0LmJsb2NrLWVhc3ktYnJlYWRjcnVtYiB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5zZWFyY2gtZm9ybSB7XG5cdFx0YmFja2dyb3VuZDogJGJsdWVfbGlnaHRlcjtcblx0XHRtYXJnaW4tYm90dG9tOiAzcmVtO1xuXHRcdHBhZGRpbmc6IDJyZW07XG5cblx0XHQ+IGRpdiB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHtcblx0XHRcdFx0bWF4LXdpZHRoOiA4MCU7XG5cdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXG5cdFx0XHRcdD4gZGl2IHtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5mb3JtLXdyYXBwZXIge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdFx0aW5wdXQuZm9ybS1zZWFyY2gge1xuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjYzRjNGM0O1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdFx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdFx0XHRjb2xvcjogIzMzMzMzMztcblx0XHRcdFx0Zm9udC1zaXplOiAxLjEyNXJlbTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDQ5cHg7XG5cdFx0XHRcdGhlaWdodDogNDlweDtcblx0XHRcdFx0cGFkZGluZzogMCAwLjkzNzVyZW07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuXHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdH1cblxuXHQuaW5wdXQtZ3JvdXAtYnRuIHtcblx0XHQ+IC5idG4ge1xuXHRcdFx0aGVpZ2h0OiA0N3B4O1xuXHRcdFx0cGFkZGluZy1yaWdodDogKCRwYWRkaW5nLzIpO1xuXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuc2VhcmNoLWluZm8ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblx0LnNlYXJjaC1hZHZhbmNlZCAuYnV0dG9uLmZvcm0tc3VibWl0IHtcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHR9XG59XG4iLCIiLCJAaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PUxhdG86NDAwLDcwMCw5MDB8TW9udHNlcnJhdDo0MDAsNTAwLDYwMCw3MDAnKTtcblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogLjg3NXJlbTtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41ICFpbXBvcnRhbnQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWFtYS1iZWFyKSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjI1ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuYSB7XG4gIGNvbG9yOiAkbGluaztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwsIDMwMG1zKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRyZWQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6ICRsaW5rX3Zpc2l0ZWQ7XG4gIH1cbn1cblxuaDEge1xuICBAaW5jbHVkZSBoMSgpO1xufVxuXG5oMiB7XG4gIEBpbmNsdWRlIGgyKCk7XG59XG5cbmgzIHtcbiAgQGluY2x1ZGUgaDMoKTtcbn1cblxuaDQge1xuICBAaW5jbHVkZSBoNCgpO1xufVxuXG5oNSB7XG4gIEBpbmNsdWRlIGg1KCk7XG59XG5cbmg2IHtcbiAgQGluY2x1ZGUgaDYoKTtcbn1cblxuaDEsaDIsaDMge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG5wIHtcbiAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gIEBpbmNsdWRlIHAoKTtcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbiAqIDI7XG59XG5cbi5yZWdpb24tY29udGVudCB7XG4gIG9sLCB1bCB7XG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgQGluY2x1ZGUgcCgpO1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuXG4gICAgb2wsIHVsIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgfVxufVxuXG5ibG9ja3F1b3RlIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRibHVlO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXRvcDogMTZweCBzb2xpZCAkYmx1ZTtcbiAgY29sb3I6ICRibHVlO1xuICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgZm9udC1zaXplOiAxLjc1cmVtOyAvLyAyOHB4XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IDEuNTsgLy8gNjBweFxuICBtYXJnaW46ICRtYXJnaW4gMCAoJG1hcmdpbiAqIDIpO1xuICBwYWRkaW5nOiAoJHBhZGRpbmcgKiAxLjUpICRwYWRkaW5nO1xuICBAaW5jbHVkZSBpbnRlcnBvbGF0ZShmb250LXNpemUsIDIwcmVtLCAxMDByZW0sIDEuNzVyZW0sIDIuMjVyZW0pO1xuXG4gIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cbn1cblxuZGVsIHtcbiAgY29sb3I6ICRyZWQ7XG59XG5cbmNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjEyNXJlbTsgLy8gMThweFxuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIG1hcmdpbi10b3A6ICRtYXJnaW47XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnLSAnO1xuICB9XG59XG5cbi5wYWdlLWhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG4iLCIiLCIubG9naW4tYm94IHtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxMXB4IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWFtYS1iZWFyKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIGEge1xuICBcdGJvcmRlci1sZWZ0OiAxcHggc29saWQgZGFya2VuKCRncmV5X2xpZ2h0LDEwJSk7XG4gIFx0bWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICB9XG59XG5cbi5idXR0b24ubG9naW4ge1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG59XG4iLCIiLCIubmVhc2MtZmFjZXQtZ3JvdXAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uZmFjZXRzLXdpZGdldC1kcm9wZG93blxuLmJsb2NrLWZhY2V0LS1kcm9wZG93biB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuIiwiLmZpZWxkLWdyb3VwIHt9XG4iLCIuZmllbGQtLW5hbWUtZmllbGQtY3RhLWJ1dHRvbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBhIHtcbiAgICBAaW5jbHVkZSBidG4ocHJpbWFyeSk7XG4gIH1cbn1cbiIsIi5maWVsZC1uYW1lLXByb2JhdGlvbi13YXJuaW5nIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn0iLCIudmlldy1tb2RlLXJpZ2h0X3NpZGViYXIge1xuICA+IC5ncm91cC1sZWZ0IHtcbiAgICBAaW5jbHVkZSBtYWtlLXhzLWNvbHVtbigxMik7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICR0ZWVuLWJlYXIpIHtcbiAgICAgIEBpbmNsdWRlIG1ha2UteHMtY29sdW1uKDYpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtYWtlLXNtLWNvbHVtbig4KTtcbiAgfVxuICA+IC5ncm91cC1yaWdodCB7XG4gICAgQGluY2x1ZGUgbWFrZS14cy1jb2x1bW4oMTIpO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGVlbi1iZWFyKSB7XG4gICAgICBAaW5jbHVkZSBtYWtlLXhzLWNvbHVtbig2KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWFrZS1zbS1jb2x1bW4oNCk7XG4gIH1cbiAgLmdyb3VwLWZvb3RlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbiIsIiIsIiIsIiIsIi5maWVsZC1uYW1lLWZpZWxkLXJpZ2h0LXBhcmFncmFwaHMge1xuXHRcblx0LmZpZWxkLW5hbWUtZmllbGQtdGl0bGUge1xuXHRcdGZvbnQtc2l6ZTogMS43NXJlbTtcblx0fVxuXG5cdGgyLmJsb2NrLXRpdGxlIHtcblx0XHRjb2xvcjogJHRlcnRpYXJ5O1xuXHR9XG5cblx0LmJsb2NrLW1lbnUtYmxvY2sge1xuXHRcdG1hcmdpbi1sZWZ0OiAtMjZweDtcblxuXHRcdC5tZW51LWJsb2NrLXdyYXBwZXIge1xuXHRcdFx0XG5cdFx0XHRib3JkZXItbGVmdDogN3B4IHNvbGlkICRnb2xkO1xuXHRcdFxuXHRcdFx0dWwubWVudS5uYXYge1xuXG5cdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRuYXZ5X2JsdWU7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDEuMjg2cmVtO1xuXHRcdFx0XHQgICAgcGFkZGluZzogNXB4IDE1cHggNXB4IDIwcHg7XG5cblx0XHRcdFx0XHRcdCY6aG92ZXIsXG5cdFx0XHRcdFx0XHQmLmFjdGl2ZS10cmFpbCB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiAkaGVhdnk7XG5cdFx0XHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xuXHRcdFx0XHRcdFx0ICAgIGJvcmRlci13aWR0aDogMTBweCAwIDEwcHggMTBweDtcblx0XHRcdFx0XHRcdCAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNDQzk5MzM7XG5cdFx0XHRcdFx0XHQgICAgY29udGVudDogXCJcIjtcblx0XHRcdFx0XHRcdCAgICB3aWR0aDogMDtcblx0XHRcdFx0XHRcdCAgICBoZWlnaHQ6IDA7XG5cdFx0XHRcdFx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0ICAgIGxlZnQ6IDRweDtcblx0XHRcdFx0XHRcdCAgICBtYXJnaW4tbGVmdDogLTVweDtcblx0XHRcdFx0XHRcdCAgICB0b3A6IDE0cHg7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIucmVnaW9uLXViZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIC5tZW51Lm5hdiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgJi5kcm9wZG93biB7XG4gICAgICAgIGEge1xuICAgICAgICAgIC5jYXJldCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGYwNzgnO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250YXdlc29tZTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAmOmZvY3VzLCAmOmFjdGl2ZSwgJjp2aXNpdGVkIHtcbiAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgPiBzZWN0aW9uIHtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgJi5ibG9jay1zZWFyY2gge1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgIC5jYXB0Y2hhLWFkbWluLWxpbmtzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC5idG4ge1xuICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgIH1cbiAgICAgIGlucHV0IHtcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3JleTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC5pbnB1dC1ncm91cC1idG4ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICAgIC5mb3JtLWFjdGlvbnMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qXG4gKiBGcm9udCBQYWdlXG4gKiovXG5cbi5mcm9udCB7fVxuIiwiLmluc3RpdHV0aW9uLW5vZGUtZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG59XG4iLCIiLCIubmV3cy11cGRhdGVzIHtcblxuXHQuZmllbGQge1xuXG5cdFx0Ji5maWVsZC0tdGl0bGUge1xuXHRcdFx0aDEge1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogM3B4O1xuICAgIFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYuZmllbGQtLW5hbWUtZmllbGQtYXV0aG9yLWNvbW1pc3Npb24tbmFtZSxcblx0XHQmLmZpZWxkLS1uYW1lLWZpZWxkLWFubm91bmNlbWVudC10eXBlIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjVyZW07XG5cdFx0fVxuXG5cdFx0Ji5maWVsZC0tbmFtZS1maWVsZC1hdXRob3ItY29tbWlzc2lvbi1uYW1lIHtcblxuXHRcdFx0LmZpZWxkLWl0ZW1zIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDpcIixcIjtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiA2cHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5maWVsZC0tbmFtZS1maWVsZC1pbWFnZSBpbWcge1xuXHRcdFx0bWFyZ2luOiAycmVtIDAgMDtcblx0XHR9XG5cblx0XHQmLmZpZWxkLS1uYW1lLWJvZHkge1xuXHQgICAgbWFyZ2luLXRvcDogMnJlbTtcblx0ICB9XG5cdH1cblxuXHQjcHJldm5leHQtcHJldmlvdXMge1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHR9XG5cblx0I3ByZXZuZXh0LW5leHQge1xuXHRcdGZsb2F0OiByaWdodDtcblx0fVxufVxuIiwiLnBhcmFncmFwaC0tdHlwZS0tYWNjb3JkaW9uIHtcblxuICAuZmllbGQtLW5hbWUtZmllbGQtYWNjb3JkaW9uLXRhYnMge1xuICAgIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG4gICAgPiAuZmllbGQtLWl0ZW0ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGg0LmFjY29yZGlvbi10YWItdGl0bGUge1xuICAgICAgICBib3JkZXItYm90dG9tOiBkb3R0ZWQgMnB4ICRncmV5X2Rhcms7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiA1MnB4O1xuICAgICAgICAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbG9yOiAkZ3JleV9kYXJrO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDY3XCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiZm9udGF3ZXNvbWVcIjtcbiAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDY4XCI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZmllbGQtLW5hbWUtZmllbGQtYWNjb3JkaW9uLXRpbGVzIHtcbiAgICAgICAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgICAuZ3JvdXAtbGVmdCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMjVweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIC5maWVsZC0tbmFtZS1maWVsZC1pbWFnZSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5ncm91cC1yaWdodCB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEyNXB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucGFyYWdyYXBoLS10eXBlLS1hY2NvcmRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAuYWNjb3JkaW9uLWJvZHkge1xuICAgIGJvcmRlci1ib3R0b206IGRvdHRlZCAycHggJGdyZXlfZGFyaztcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAuZmllbGQtLW5hbWUtZmllbGQtZGVzY3JpcHRpb24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIC5maWVsZC0taXRlbSBwIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICB9XG4gIC5maWVsZC0tbmFtZS1maWVsZC1hY2NvcmRpb24tdGlsZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgID4gLmZpZWxkLS1pdGVtIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWFtYS1iZWFyKSB7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICB9XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAuZ3JvdXAtcmlnaHQge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsImRpdi5wYXJhZ3JhcGgtLXR5cGUtLWRvd25sb2FkIHtcblx0cGFkZGluZzogMjBweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG5cdFx0QGluY2x1ZGUgaDQ7XG5cdFx0Y29sb3I6ICRwcmltYXJ5X2ZvbnRfY29sb3JfZGFyaztcblx0XHRmb250LXNpemU6IDEuNXJlbTtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR9XG5cblx0LmZpZWxkLS1uYW1lLWZpZWxkLWZpbGUtdXBsb2FkIGF7XG5cdFx0QGluY2x1ZGUgYnRuKHByaW1hcnkpO1xuXHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdFx0cGFkZGluZy1yaWdodDogMTAwcHg7XG5cdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cblx0XHQmW3R5cGUqPSBcImFwcGxpY2F0aW9uL3BkZlwiXSB7XG5cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRcdGNvbnRlbnQ6ICdcXGYxYzEnO1xuXHRcdFx0XHRmb250LXNpemU6IDI0cHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAzNHB4O1xuXHRcdFx0XHRyaWdodDogNnB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHRzcGFuLmZpbGUtaWNvbixcblx0c3Bhbi5maWxlLXNpemUge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblx0LmZpbGUtbGluayB7XG5cdFx0Ym9yZGVyOiBtZWRpdW0gbm9uZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG4iLCIlcGx1cy1taW51cyB7XG4gIGJhY2tncm91bmQ6ICRyZWRfZGFyaztcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTBweDtcbn1cblxuLnBhcmFncmFwaC0tdHlwZS0tZHluYW1pYy1tZW51IHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkZ3JleV9saWdodGVyO1xuICBtYXJnaW4tbGVmdDogLTVweDtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIC5tZW51Lm5hdiB7XG4gICAgLmdseXBoaWNvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIGNvbG9yOiAkcmVkX2Rhcms7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICAgIC5uYXZpZ2F0aW9uX190b2dnbGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogN3B4O1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBAZXh0ZW5kICVwbHVzLW1pbnVzO1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgIH1cbiAgICAgICYtLWNsb3NlZCB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBAZXh0ZW5kICVwbHVzLW1pbnVzO1xuICAgICAgICAgIHRvcDogNXB4O1xuICAgICAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5tYWluLW1lbnUtbmF2IHtcbiAgICA+IC5tZW51Lm5hdiB7XG4gICAgICA+IGxpIHtcbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gICAgICAgICAgY29sb3I6ICMwMDQxN0Q7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAkcmVkX2Rhcms7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIzcHg7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgJi5sZXZlbC0yIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTlweDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDA0MTdEO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAkcmVkX2Rhcms7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxMHB4IDAgMTBweCAxMHB4O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjQ0M5OTMzO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogLTVweDtcbiAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgbGkuYWN0aXZlID4gYSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZHJvcGRvd24ge1xuICAgICAgdWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnBhcmFncmFwaC0tdHlwZS0taGVybyB7XG4gIG1hcmdpbi10b3A6IC0yLjI1cmVtO1xuICAuaGVybyB7XG4gICAgQGluY2x1ZGUgZnVsbHdpZHRoKCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAmLS1oZWFkbGluZSB7XG4gICAgICBAaW5jbHVkZSBjb250YWluZXIobWQpO1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1hbWEtYmVhcikge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuICAgICAgJi0tbGVmdCB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yODVyZW07XG4gICAgICAgIGgyIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogJG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5maWVsZC0taXRlbSB7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1hbWEtYmVhcikge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmZpZWxkLS1uYW1lLWZpZWxkLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtLXJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWFtYS1iZWFyKSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGZsZXg6IDAgMiAzMCU7XG4gICAgICAgIH1cbiAgICAgICAgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIEBpbmNsdWRlIGJ0bihwcmltYXJ5KTtcbiAgICAgICAgICAvL2JhY2tncm91bmQ6ICRyZWQtbGlnaHQ7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMS4zcmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtO1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWFtYS1iZWFyKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnBhcmFncmFwaC0tdHlwZS0taW1hZ2UtbGVmdC10ZXh0LXJpZ2h0IHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAuZmllbGQtLW5hbWUtZmllbGQtaW1hZ2Uge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBoMigpO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxuICAuZmllbGQtLW5hbWUtZmllbGQtZGVzY3JpcHRpb24ge1xuICAgIC8vbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG4gIC5ncm91cC1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWFtYS1iZWFyKSB7XG4gICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRwYXBhLWJlYXIpIHtcbiAgICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgfVxuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLWltYWdlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cbiAgLmdyb3VwLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWFtYS1iZWFyKSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTUwcHgpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRwYXBhLWJlYXIpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyNTBweCk7XG4gICAgfVxuICB9XG59XG4iLCIucGFyYWdyYXBoLS10eXBlLS1saW5rLWJsb2NrIHtcblx0YmFja2dyb3VuZDogJGJhY2tncm91bmQtYWNjZW50O1xuXHRtYXJnaW4tdG9wOiAxcmVtO1xuXHRwYWRkaW5nOiAyMHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0ZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuXHRcdEBpbmNsdWRlIGg0O1xuXHRcdGNvbG9yOiAkcHJpbWFyeV9mb250X2NvbG9yX2Rhcms7XG5cdFx0Zm9udC1zaXplOiAxLjVyZW07XG5cdH1cblxuXHQuZmllbGQtLWl0ZW0ge1xuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdH1cbn1cbiIsIi5wYXJhZ3JhcGgtLXR5cGUtLXRpbGUtZ3JvdXAge1xuICBjbGVhcjpib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICYgPiAuZmllbGQuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgIEBpbmNsdWRlIGgyKCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLy8gcmVzcG9uc2l2ZSBjb2x1bW5zXG4gICYgPiAuZmllbGQtLW5hbWUtZmllbGQtdGlsZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogMCAtMTVweDtcbiAgICA+IC5maWVsZC0taXRlbSB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIGZsZXgtYmFzaXM6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICB9XG4gIH1cbiAgJi5jb2x1bW4tY291bnQge1xuICAgICYtNCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0ZWVuLWJlYXIpIHtcbiAgICAgICAgJiA+IC5maWVsZC0tbmFtZS1maWVsZC10aWxlcyA+IC5maWVsZC0taXRlbSB7XG4gICAgICAgICAgZmxleDogMSAxIGNhbGMoNTAlIC0gMzBweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGdyYW5kbWEtYmVhcikge1xuICAgICAgICAmID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpbGVzID4gLmZpZWxkLS1pdGVtIHtcbiAgICAgICAgICBmbGV4OiAxIDEgY2FsYygyNSUgLSAzMHB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLTMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGVlbi1iZWFyKSB7XG4gICAgICAgICYgPiAuZmllbGQtLW5hbWUtZmllbGQtdGlsZXMgPiAuZmllbGQtLWl0ZW0ge1xuICAgICAgICAgIGZsZXg6IDEgMSBjYWxjKDUwJSAtIDMwcHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRwYXBhLWJlYXIpIHtcbiAgICAgICAgJiA+IC5maWVsZC0tbmFtZS1maWVsZC10aWxlcyA+IC5maWVsZC0taXRlbSB7XG4gICAgICAgICAgZmxleDogMSAxIGNhbGMoMzMuMzMzJSAtIDMwcHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYtMiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtYW1hLWJlYXIpIHtcbiAgICAgICAgJiA+IC5maWVsZC0tbmFtZS1maWVsZC10aWxlcyA+IC5maWVsZC0taXRlbSB7XG4gICAgICAgICAgZmxleDogMSAxIGNhbGMoNTAlIC0gMzBweCk7XG4gICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuXG4gICAgICAgICAgLnBhcmFncmFwaHMtaXRlbS12aWV3LWJsb2NrIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLTEge1xuICAgICAgJiA+IC5maWVsZC0tbmFtZS1maWVsZC10aWxlcyA+IC5maWVsZC0taXRlbSB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoNTAlIC0gMzBweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIiLCIucGFyYWdyYXBoLS10eXBlLS10aWxlIHtcbiAgYmFja2dyb3VuZDogJGdyZXlfbGlnaHRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZzogMjVweCA0MHB4O1xuICAtbXMtZmxleDogMTtcbiAgd2lkdGg6IDEwMCU7XG4gID4gLmNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAvL2hlaWdodDogMTAwJTtcbiAgICA+IGRpdjpudGgtbGFzdC1vZi10eXBlKDIpIHtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICB9XG4gIH1cbiAgLmZpZWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luO1xuICAgIGZsZXg6IDA7XG4gICAgLW1zLWZsZXg6IGF1dG87XG4gIH1cbiAgLmZpZWxkLW5hbWUtZmllbGQtdGl0bGUge1xuICAgIEBpbmNsdWRlIGgzKCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyIDtcbiAgfVxuICAuZmllbGQtLW5hbWUtZmllbGQtbGluayB7XG4gICAgLmZpZWxkLS1pdGVtIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAuNzVyZW07XG4gICAgfVxuICB9XG4gIC5maWVsZC1uYW1lLWZpZWxkLWN0YS1idXR0b24ge1xuICAgIGZsZXg6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDE1cHggMCAwIDA7XG4gIH1cbn1cblxuLmVudGl0eS1wYXJhZ3JhcGhzLWl0ZW0ucGFyYWdyYXBocy1pdGVtLXRpbGUtZ3JvdXAgLnBhcmFncmFwaHMtaXRlbXMucGFyYWdyYXBocy1pdGVtcy1maWVsZC10aWxlcyAuZW50aXR5LXBhcmFncmFwaHMtaXRlbS5wYXJhZ3JhcGhzLWl0ZW0tdGlsZSAuZmllbGQtbmFtZS1maWVsZC10aXRsZSB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuIiwiLnVwZGF0ZXMge1xuXHRAaW5jbHVkZSBmdWxsd2lkdGgoKTtcblx0YmFja2dyb3VuZDogJGJhY2tncm91bmQtYWNjZW50O1xuXHRwYWRkaW5nLWJvdHRvbTogM3JlbTtcblx0cGFkZGluZy10b3A6IDJyZW07XG5cblx0Ji0td3JhcHBlciB7XG5cdFx0bWF4LXdpZHRoOiA3NSU7IC8vOSBjb2wgd2lkdGhcblx0fVxuXG5cdGgyIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblxuXHQmLS1jb250ZW50IHtcblx0XHRwYWRkaW5nLWJvdHRvbTogM3JlbTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHQuZmllbGQtLWl0ZW1zIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cblx0XHRcdC5maWVsZC0taXRlbSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IC43NXJlbTtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLS1jdGEge1xuXHRcdC5maWVsZC0tbmFtZS1maWVsZC1jdGEtYnV0dG9uIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRhIHtcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIucGFyYWdyYXBocy1pdGVtLXZpZXctYmxvY2sgLmZpZWxkLW5hbWUtZmllbGQtY3RhLWJ1dHRvbiBhIHtcblx0bWFyZ2luLXRvcDogJHBhZGRpbmc7XG59IiwiLmZpZWxkLS10eXBlLXBhcmFncmFwaCA+IC5maWVsZC0taXRlbSB7XG5cdHBhZGRpbmc6IDIuMjVyZW0gMDtcblxuXHQuYmxvY2stZWFzeS1icmVhZGNydW1iIHtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdG1hcmdpbi1ib3R0b206IC0ycmVtO1xuXHR9XG59XG5cbi5wYXJhZ3JhcGggLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcblx0QGluY2x1ZGUgaDIoKTtcblx0dGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnBhcmFncmFwaCAuZmllbGQtLW5hbWUtZmllbGQtdGlsZXMgLnBhcmFncmFwaCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuXHRAaW5jbHVkZSBoMygpO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uZmllbGQtbmFtZS1maWVsZC1kZXNjcmlwdGlvbiB7XG5cdHA6bGFzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxufVxuXG5cbi8vU2lkZWJhclxuLmZpZWxkLS1uYW1lLWZpZWxkLXJpZ2h0LXBhcmFncmFwaHMge1xuXHQmID4gLmZpZWxkLS1pdGVtIHtcblx0XHRwYWRkaW5nOiAyNnB4O1xuXHRcdC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG5cdFx0XHRAaW5jbHVkZSBzaWRlYmFyLWhlYWRpbmc7XG5cdFx0fVxuXHR9XG59XG4iLCIucGFyYWdyYXBocy1pdGVtLXZpZXctYmxvY2sge1xuXG4gIGgyLnZpZXctYmxvY2stdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4udmlldy1uZXdzLWV2ZW50cywgLnZpZXctbWVtYmVyLXN0b3JpZXMge1xuXG4gICY6bm90KC52aWV3LXNjaG9vbC1kaXJlY3RvcnkpIC52aWV3LWZpbHRlcnMge1xuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdEBpbmNsdWRlIGZpbHRlcjtcblxuXHRcdGxlZ2VuZCB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cbiAgICAuZm9ybS1pdGVtIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLjVlbTtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgICAuZm9ybS1hY3Rpb25zIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG4gIH1cblxuICAmLnZpZXctZGlzcGxheS1pZC1uZXdzX2ZlYXQge1xuXHRcdEBpbmNsdWRlIGxpc3RpbmctZmVhdHVyZTtcbiAgfVxuXG4gIC52aWV3LWNvbnRlbnQge1xuICAgIGNsZWFyOmJvdGg7XG4gIFx0bWFyZ2luLWxlZnQ6IDA7XG4gIFx0bWFyZ2luLXJpZ2h0OiAwO1xuICBcdHBhZGRpbmc6IDA7XG5cbiAgXHRAaW5jbHVkZSBsaXN0aW5nO1xuXG4gICAgLmlubmVyLmV2ZW50IHtcblxuICAgICAgLmJ0biB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi52aWV3LXNjaG9vbC1kaXJlY3RvcnktbmV3IHtcbiAgLnZpZXdzLWV4cG9zZWQtZm9ybSB7XG4gICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgICBmb3JtIHtcbiAgICAgIG1hcmdpbjogMCAtN3B4O1xuICAgIH1cbiAgICAuZm9ybS0taW5saW5lIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICA+IC5mb3JtLWl0ZW0ge1xuICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICBmbGV4OiAwIDAgMjUlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgICAgIHBhZGRpbmc6IDAgN3B4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBpbnB1dCwgLnNlbGVjdC13cmFwcGVyIHtcbiAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyMTJweDtcbiAgICAgICAgfVxuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZm9ybS1pdGVtLXN0YXR1cyB7XG4gICAgICAgICAgLnNlbGVjdC13cmFwcGVyIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTQwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC52aWV3LWhlYWRlciB7XG4gICAgbWF4LXdpZHRoOiA4NDZweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgcCB7XG4gICAgICBsaW5lLWhlaWdodDogNjRweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wN2VtO1xuICAgIH1cbiAgfVxuICAuZm9ybS10eXBlLXNlbGVjdCBzZWxlY3QsIC5mb3JtLXR5cGUtc2VsZWN0IHNlbGVjdC5mb3JtLXNlbGVjdDpub3QoI2VkaXQtaW50ZXJlc3QpLCAubmVhc2MtZmFjZXQtZ3JvdXAgc2VsZWN0LCAubmVhc2MtZmFjZXQtZ3JvdXAgc2VsZWN0LmZvcm0tc2VsZWN0Om5vdCgjZWRpdC1pbnRlcmVzdCkge1xuICAgIGhlaWdodDogNDVweDtcbiAgfVxuICAuZm9ybS1hY3Rpb25zIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcbiAgICB3aWR0aDogMjUlO1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgcGFkZGluZzogMCA3cHg7XG4gICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxNDBweCAhaW1wb3J0YW50O1xuICAgICAgb3JkZXI6IDI7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgIC5nbHlwaGljb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmLmJ0bi1kYW5nZXIge1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgICBmbGV4OiAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDIxXCI7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbGVmdDogLTMxcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvcmVmcmVzaC5zdmcpO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuYnRuLXByaW1hcnkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICB0aGVhZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICAgIHRib2R5IHtcbiAgICAgIHRyIHtcbiAgICAgICAgaGVpZ2h0OiA2NHB4O1xuXG4gICAgICAgICY6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI0U3RTdFNztcbiAgICAgICAgfVxuXG4gICAgICAgIHRkIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNjRweDtcbiAgICAgICAgICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA3ZW07XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAucGFnaW5hdGlvbiA+IC5wYWdlcl9faXRlbSBhIHtcbiAgICB0ZXh0LWluZGVudDogMDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICB0ZXh0LWluZGVudDogMDtcbiAgICB9XG4gIH1cbiAgLnZpZXctZW1wdHkge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtaW4taGVpZ2h0OiA0MDBweDtcbiAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICAgIHAge1xuICAgICAgbGluZS1oZWlnaHQ6IDY0cHg7XG4gICAgICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDdlbTtcbiAgICB9XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA4NDFweCkge1xuICAudmlldy1zY2hvb2wtZGlyZWN0b3J5LW5ldyB7XG4gICAgLmZpbHRlcnMtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgI3NjaG9vbC1kaXJlY3RvcnktZmlsdGVycyB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogODQwcHgpIHtcbiAgLnZpZXctc2Nob29sLWRpcmVjdG9yeS1uZXcgLnZpZXdzLWV4cG9zZWQtZm9ybSAuZm9ybS0taW5saW5lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAudmlldy1zY2hvb2wtZGlyZWN0b3J5LW5ldyAudmlld3MtZXhwb3NlZC1mb3JtIC5mb3JtLS1pbmxpbmUgPiAuZm9ybS1pdGVtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIGxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgIC5zZWxlY3Qtd3JhcHBlcixcbiAgICBzZWxlY3QsXG4gICAgaW5wdXQge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5maWx0ZXJzLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBtZWRpdW0gbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbG9yOiAjYzRjNGM0O1xuICAgICAgY29udGVudDogXCJcXGYxMDZcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1mYW1pbHk6IFwiZm9udGF3ZXNvbWVcIjtcbiAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjYyNTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDEzcHg7XG4gICAgICB0b3A6IDA7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuICAgICYuY29sbGFwc2VkOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgfVxuICB9XG4gIC52aWV3LXNjaG9vbC1kaXJlY3RvcnktbmV3IHtcbiAgICAudmlldy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gICAgfVxuICAgIC5mb3JtLWFjdGlvbnMge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgYnV0dG9uLmJ0bi1wcmltYXJ5IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgICAudGFibGUtcmVzcG9uc2l2ZSB7XG4gICAgICBib3JkZXI6IG1lZGl1bSBub25lO1xuICAgIH1cbiAgICAudGFibGUtcmVzcG9uc2l2ZSB0Ym9keSB0ciB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICAgIC50YWJsZS1yZXNwb25zaXZlIHRhYmxlIHtcbiAgICAgIHRkLCB0ciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAvKiBIaWRlIHRhYmxlIGhlYWRlcnMgKGJ1dCBub3QgZGlzcGxheTogbm9uZTssIGZvciBhY2Nlc3NpYmlsaXR5KSAqL1xuICAgICAgdGhlYWQgdHIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTk5OTlweDtcbiAgICAgICAgbGVmdDogLTk5OTlweDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgIH1cblxuICAgICAgdHIge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDdweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICB0ZCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wN2VtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRyICsgdHIge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVlbTtcbiAgICAgIH1cblxuICAgICAgdGQge1xuICAgICAgICAvKiBtYWtlIGxpa2UgYSBcInJvd1wiICovXG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICB0ZDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtbGFiZWwpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTAwJTtcbiAgICAgICAgd2lkdGg6IDk4JTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA3ZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cbiIsIi8qKlxuICogR2VuZXJhbCBWaWV3cyBzdHlsZXMgc2hvdWxkIGdvIGhlcmUuXG4gKiBTdHlsZXMgZm9yIHNlcGFyYXRlIHZpZXdzIHNob3VsZCBnbyBpbnRvIHRoZWlyIG93biBwYXJ0aWFsXG4gKiBuYW1lcyB2aWV3cy0tVklFV05BTUUuc2Nzc1xuICoqL1xuXG4udmlldy52aWV3LXNjaG9vbC1kaXJlY3Rvcnkge1xuICAudmlldy1maWx0ZXJzIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICAudmlld3MtZXhwb3NlZC1mb3JtIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAuZm9ybS1zdWJtaXQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNzBweDtcblxuICAgICAgICAuZ2x5cGhpY29uIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZvcm0taXRlbSwgLmZhY2V0cy12aWV3cy1wbHVnaW4gPiAuZm9ybS1ncm91cC5mb3JtLWlubGluZSB7XG4gICAgICBwYWRkaW5nOiAwLjVlbSAwIDAgMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHNwYW4uY29udHJvbC1sYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbiAgLnZpZXctZ3JvdXBpbmctY29udGVudCA+IGgzLFxuICAudmlldy1jb250ZW50ID4gaDMge1xuICAgIEBpbmNsdWRlIGgyO1xuICB9XG4gIC5mYWNldHMtdmlld3MtcGx1Z2luIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICAuZm9ybS1hY3Rpb25zLmZvcm0tZ3JvdXAge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLXRvcDogN3B4O1xuICB9XG4gIC5mb3JtLWl0ZW0ge1xuICAgIG1hcmdpbi1yaWdodDogMThweDtcbiAgICBtYXgtd2lkdGg6IDM3OXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgID4gbGFiZWwge1xuICAgICAgZmxleDogMDtcbiAgICB9XG4gICAgPiBpbnB1dCB7XG4gICAgICBmbGV4OiAxO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29udGFjdCBVcyBmb3JtIHVuaXF1ZSBjbGFzc1xuIiwiLndlYmZvcm0tc3VibWlzc2lvbi1hcG9zdGlsbGUtcmVxdWVzdC1mb3JtXG4gIC5mb3JtLWl0ZW0ge1xuICBtYXgtd2lkdGg6IHVuc2V0XG4gIH1cbiAgLml0aS5pdGktLWFsbG93LWRyb3Bkb3duIHtcbiAgICBkaXNwbGF5OiBibG9ja1xuICB9XG5cbiAgLmZvcm0tdGV4dGFyZWEtd3JhcHBlciB0ZXh0YXJlYS5mb3JtLXRleHRhcmVhIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JleV9saWdodDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6ICRncmV5X2Rhcms7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxuXG5cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FDQUE7Ozs7Ozs7Ozs7R0FVRztBQ1ZIOzs7O0dBSUc7QWlDSkgsNEVBQTRFO0FuQ0s1RSxPQUFPLENBQVAsc0RBQU87QTJFSVAsT0FBTyxDQUFDLHFEQUFJO0FBQ1osT0FBTyxDQUFDLHFFQUFJO0FvQlZaLE9BQU8sQ0FBQywwRkFBSTtBNURRWixBQUFBLElBQUksQ0FBQztFQUNILFdBQVcs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 */
