@charset "UTF-8";

/*!
 * Bootstrap v3.4.0 (https://getbootstrap.com/)
 * Copyright 2011-2018 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */

/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */

html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

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

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

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

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

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

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline 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 {
    color: #000 !important;
    text-shadow: none !important;
    background: transparent !important;
    box-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,
  .btn-large > .caret,
  .dropup > .btn > .caret,
  .dropup > .btn-large > .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/glyphicons-halflings-regular.eot?f4769f9bdb7466be65088239c12046d1);
  src: url(/fonts/glyphicons-halflings-regular.eot?f4769f9bdb7466be65088239c12046d1) format("embedded-opentype"), url(/fonts/glyphicons-halflings-regular.woff2?448c34a56d699c29117adc64c43affeb) format("woff2"), url(/fonts/glyphicons-halflings-regular.woff?fa2772327f55d8198301fdb8bcfc8158) format("woff"), url(/fonts/glyphicons-halflings-regular.ttf?e18bbf611f2a2e43afc071aa2f4e1512) format("truetype"), url(/fonts/glyphicons-halflings-regular.svg?89889688147bd7575d6327160d64e760) format("svg");
}

.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: "Glyphicons Halflings";
  font-style: normal;
  font-weight: 400;
  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";
}

* {
  box-sizing: border-box;
}

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

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

body {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.42857143;
  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.42857143;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  max-width: 100%;
  height: auto;
}

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

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

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  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: 400;
  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 {
  padding: .2em;
  background-color: #fcf8e3;
}

.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-right: 5px;
  padding-left: 5px;
}

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

dt,
dd {
  line-height: 1.42857143;
}

dt {
  font-weight: 700;
}

dd {
  margin-left: 0;
}

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

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

.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.42857143;
  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;
  text-align: right;
  border-right: 5px solid #eeeeee;
  border-left: 0;
}

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

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: 700;
  box-shadow: none;
}

pre {
  display: block;
  padding: 9.5px;
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.42857143;
  color: #333333;
  word-break: break-all;
  word-wrap: break-word;
  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 {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

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

.container:after {
  clear: both;
}

@media (min-width: 768px) {
  .container {
    width: 750px;
  }
}

@media (min-width: 992px) {
  .container {
    width: 970px;
  }
}

@media (min-width: 1200px) {
  .container {
    width: 1170px;
  }
}

.container-fluid {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

.container-fluid:before,
.container-fluid:after {
  display: table;
  content: " ";
}

.container-fluid:after {
  clear: both;
}

.row {
  margin-right: -15px;
  margin-left: -15px;
}

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

.row:after {
  clear: both;
}

.row-no-gutters {
  margin-right: 0;
  margin-left: 0;
}

.row-no-gutters [class*="col-"] {
  padding-right: 0;
  padding-left: 0;
}

.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-right: 15px;
  padding-left: 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.33333333%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .col-sm-2 {
    width: 16.66666667%;
  }

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

  .col-sm-4 {
    width: 33.33333333%;
  }

  .col-sm-5 {
    width: 41.66666667%;
  }

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

  .col-sm-7 {
    width: 58.33333333%;
  }

  .col-sm-8 {
    width: 66.66666667%;
  }

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

  .col-sm-10 {
    width: 83.33333333%;
  }

  .col-sm-11 {
    width: 91.66666667%;
  }

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

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

  .col-sm-pull-1 {
    right: 8.33333333%;
  }

  .col-sm-pull-2 {
    right: 16.66666667%;
  }

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

  .col-sm-pull-4 {
    right: 33.33333333%;
  }

  .col-sm-pull-5 {
    right: 41.66666667%;
  }

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

  .col-sm-pull-7 {
    right: 58.33333333%;
  }

  .col-sm-pull-8 {
    right: 66.66666667%;
  }

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

  .col-sm-pull-10 {
    right: 83.33333333%;
  }

  .col-sm-pull-11 {
    right: 91.66666667%;
  }

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

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

  .col-sm-push-1 {
    left: 8.33333333%;
  }

  .col-sm-push-2 {
    left: 16.66666667%;
  }

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

  .col-sm-push-4 {
    left: 33.33333333%;
  }

  .col-sm-push-5 {
    left: 41.66666667%;
  }

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

  .col-sm-push-7 {
    left: 58.33333333%;
  }

  .col-sm-push-8 {
    left: 66.66666667%;
  }

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

  .col-sm-push-10 {
    left: 83.33333333%;
  }

  .col-sm-push-11 {
    left: 91.66666667%;
  }

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

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

  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }

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

  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }

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

  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }

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

  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }

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

  .col-md-2 {
    width: 16.66666667%;
  }

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

  .col-md-4 {
    width: 33.33333333%;
  }

  .col-md-5 {
    width: 41.66666667%;
  }

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

  .col-md-7 {
    width: 58.33333333%;
  }

  .col-md-8 {
    width: 66.66666667%;
  }

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

  .col-md-10 {
    width: 83.33333333%;
  }

  .col-md-11 {
    width: 91.66666667%;
  }

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

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

  .col-md-pull-1 {
    right: 8.33333333%;
  }

  .col-md-pull-2 {
    right: 16.66666667%;
  }

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

  .col-md-pull-4 {
    right: 33.33333333%;
  }

  .col-md-pull-5 {
    right: 41.66666667%;
  }

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

  .col-md-pull-7 {
    right: 58.33333333%;
  }

  .col-md-pull-8 {
    right: 66.66666667%;
  }

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

  .col-md-pull-10 {
    right: 83.33333333%;
  }

  .col-md-pull-11 {
    right: 91.66666667%;
  }

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

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

  .col-md-push-1 {
    left: 8.33333333%;
  }

  .col-md-push-2 {
    left: 16.66666667%;
  }

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

  .col-md-push-4 {
    left: 33.33333333%;
  }

  .col-md-push-5 {
    left: 41.66666667%;
  }

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

  .col-md-push-7 {
    left: 58.33333333%;
  }

  .col-md-push-8 {
    left: 66.66666667%;
  }

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

  .col-md-push-10 {
    left: 83.33333333%;
  }

  .col-md-push-11 {
    left: 91.66666667%;
  }

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

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

  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }

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

  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }

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

  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }

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

  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }

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

  .col-lg-2 {
    width: 16.66666667%;
  }

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

  .col-lg-4 {
    width: 33.33333333%;
  }

  .col-lg-5 {
    width: 41.66666667%;
  }

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

  .col-lg-7 {
    width: 58.33333333%;
  }

  .col-lg-8 {
    width: 66.66666667%;
  }

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

  .col-lg-10 {
    width: 83.33333333%;
  }

  .col-lg-11 {
    width: 91.66666667%;
  }

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

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

  .col-lg-pull-1 {
    right: 8.33333333%;
  }

  .col-lg-pull-2 {
    right: 16.66666667%;
  }

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

  .col-lg-pull-4 {
    right: 33.33333333%;
  }

  .col-lg-pull-5 {
    right: 41.66666667%;
  }

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

  .col-lg-pull-7 {
    right: 58.33333333%;
  }

  .col-lg-pull-8 {
    right: 66.66666667%;
  }

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

  .col-lg-pull-10 {
    right: 83.33333333%;
  }

  .col-lg-pull-11 {
    right: 91.66666667%;
  }

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

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

  .col-lg-push-1 {
    left: 8.33333333%;
  }

  .col-lg-push-2 {
    left: 16.66666667%;
  }

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

  .col-lg-push-4 {
    left: 33.33333333%;
  }

  .col-lg-push-5 {
    left: 41.66666667%;
  }

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

  .col-lg-push-7 {
    left: 58.33333333%;
  }

  .col-lg-push-8 {
    left: 66.66666667%;
  }

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

  .col-lg-push-10 {
    left: 83.33333333%;
  }

  .col-lg-push-11 {
    left: 91.66666667%;
  }

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

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

  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }

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

  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }

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

  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }

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

  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }

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

table {
  background-color: transparent;
}

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

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

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.42857143;
  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 > 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 {
  min-height: .01%;
  overflow-x: auto;
}

@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 {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

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

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

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

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

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

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.42857143;
  color: #555555;
}

.form-control {
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}

.form-control:focus {
  border-color: #66afe9;
  outline: 0;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}

.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #999;
}

.form-control::-webkit-input-placeholder {
  color: #999;
}

.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}

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

@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-group-btn > input.btn-large[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-group-btn > input.btn-large[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-group-btn > input.btn-large[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-group-btn > input.btn-large[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-group-btn > input.btn-large[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-group-btn > input.btn-large[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-group-btn > input.btn-large[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-group-btn > input.btn-large[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.disabled label,
fieldset[disabled] .radio label,
.checkbox.disabled label,
fieldset[disabled]
.checkbox label {
  cursor: not-allowed;
}

.radio label,
.checkbox label {
  min-height: 20px;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: 400;
  cursor: pointer;
}

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

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

.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: 400;
  vertical-align: middle;
  cursor: pointer;
}

.radio-inline.disabled,
fieldset[disabled] .radio-inline,
.checkbox-inline.disabled,
fieldset[disabled]
.checkbox-inline {
  cursor: not-allowed;
}

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px;
}

.form-control-static {
  min-height: 34px;
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
}

.form-control-static.input-lg,
.input-group-lg > .form-control-static.form-control,
.input-group-lg > .form-control-static.input-group-addon,
.input-group-lg > .input-group-btn > .form-control-static.btn,
.input-group-lg > .input-group-btn > .form-control-static.btn-large,
.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,
.input-group-sm > .input-group-btn > .form-control-static.btn-large {
  padding-right: 0;
  padding-left: 0;
}

.input-sm,
.input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn,
.input-group-sm > .input-group-btn > .btn-large {
  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,
.input-group-sm > .input-group-btn > select.btn-large {
  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,
.input-group-sm > .input-group-btn > textarea.btn-large,
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],
.input-group-sm > .input-group-btn > select.btn-large[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,
.input-group-lg > .input-group-btn > .btn-large {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  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,
.input-group-lg > .input-group-btn > select.btn-large {
  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,
.input-group-lg > .input-group-btn > textarea.btn-large,
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],
.input-group-lg > .input-group-btn > select.btn-large[multiple] {
  height: auto;
}

.form-group-lg .form-control {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  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.3333333;
}

.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 > .input-group-btn > .btn-large + .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 > .input-group-btn > .btn-large + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px;
}

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

.has-success .form-control {
  border-color: #3c763d;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}

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

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

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

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

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

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

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

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

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442;
}

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

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

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

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

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

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

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

@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }

  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }

  .form-inline .form-control-static {
    display: inline-block;
  }

  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle;
  }

  .form-inline .input-group .input-group-addon,
  .form-inline .input-group .input-group-btn,
  .form-inline .input-group .form-control {
    width: auto;
  }

  .form-inline .input-group > .form-control {
    width: 100%;
  }

  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }

  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }

  .form-inline .radio label,
  .form-inline .checkbox label {
    padding-left: 0;
  }

  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }

  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}

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

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

.form-horizontal .form-group {
  margin-right: -15px;
  margin-left: -15px;
}

.form-horizontal .form-group:before,
.form-horizontal .form-group:after {
  display: table;
  content: " ";
}

.form-horizontal .form-group:after {
  clear: both;
}

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

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

.btn:focus,
.btn-large:focus,
.btn.focus,
.focus.btn-large,
.btn:active:focus,
.btn-large:active:focus,
.btn:active.focus,
.btn-large:active.focus,
.btn.active:focus,
.active.btn-large:focus,
.btn.active.focus,
.active.focus.btn-large {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

.btn:hover,
.btn-large:hover,
.btn:focus,
.btn-large:focus,
.btn.focus,
.focus.btn-large {
  color: #333;
  text-decoration: none;
}

.btn:active,
.btn-large:active,
.btn.active,
.active.btn-large {
  background-image: none;
  outline: 0;
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn.disabled,
.disabled.btn-large,
.btn[disabled],
.btn-large[disabled],
fieldset[disabled] .btn,
fieldset[disabled] .btn-large {
  cursor: not-allowed;
  filter: alpha(opacity=65);
  opacity: 0.65;
  box-shadow: none;
}

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

.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}

.btn-default:focus,
.btn-default.focus {
  color: #333;
  background-color: #e6e5e5;
  border-color: #8c8c8c;
}

.btn-default:hover {
  color: #333;
  background-color: #e6e5e5;
  border-color: #adadad;
}

.btn-default:active,
.btn-default.active,
.open > .btn-default.dropdown-toggle {
  color: #333;
  background-color: #e6e5e5;
  background-image: none;
  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.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;
  background-image: none;
  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.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;
  background-image: none;
  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.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;
  background-image: none;
  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.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;
  background-image: none;
  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.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;
  background-image: none;
  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.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 {
  font-weight: 400;
  color: #337ab7;
  border-radius: 0;
}

.btn-link,
.btn-link:active,
.btn-link.active,
.btn-link[disabled],
fieldset[disabled] .btn-link {
  background-color: transparent;
  box-shadow: none;
}

.btn-link,
.btn-link:hover,
.btn-link:focus,
.btn-link:active {
  border-color: transparent;
}

.btn-link:hover,
.btn-link:focus {
  color: #23527c;
  text-decoration: underline;
  background-color: transparent;
}

.btn-link[disabled]:hover,
.btn-link[disabled]:focus,
fieldset[disabled] .btn-link:hover,
fieldset[disabled] .btn-link:focus {
  color: #777777;
  text-decoration: none;
}

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

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

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

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

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

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

.fade {
  opacity: 0;
  transition: opacity 0.15s linear;
}

.fade.in {
  opacity: 1;
}

.collapse {
  display: none;
}

.collapse.in {
  display: block;
}

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

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

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

.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px 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;
  font-size: 14px;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
}

.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: 400;
  line-height: 1.42857143;
  color: #333333;
  white-space: nowrap;
}

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

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

.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;
  cursor: not-allowed;
  background-color: transparent;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}

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

.open > a {
  outline: 0;
}

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

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

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

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

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

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

.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 > .btn-large,
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-large {
  position: relative;
  float: left;
}

.btn-group > .btn:hover,
.btn-group > .btn-large:hover,
.btn-group > .btn:focus,
.btn-group > .btn-large:focus,
.btn-group > .btn:active,
.btn-group > .btn-large:active,
.btn-group > .btn.active,
.btn-group > .active.btn-large,
.btn-group-vertical > .btn:hover,
.btn-group-vertical > .btn-large:hover,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn-large:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn-large:active,
.btn-group-vertical > .btn.active,
.btn-group-vertical > .active.btn-large {
  z-index: 2;
}

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

.btn-toolbar {
  margin-left: -5px;
}

.btn-toolbar:before,
.btn-toolbar:after {
  display: table;
  content: " ";
}

.btn-toolbar:after {
  clear: both;
}

.btn-toolbar .btn,
.btn-toolbar .btn-large,
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
  float: left;
}

.btn-toolbar > .btn,
.btn-toolbar > .btn-large,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 5px;
}

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

.btn-group > .btn:first-child,
.btn-group > .btn-large:first-child {
  margin-left: 0;
}

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

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

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

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

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

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

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

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

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

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

.btn-group.open .dropdown-toggle.btn-link {
  box-shadow: none;
}

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

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

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

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

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

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

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

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

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

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

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

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

.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}

.btn-group-justified > .btn,
.btn-group-justified > .btn-large,
.btn-group-justified > .btn-group {
  display: table-cell;
  float: none;
  width: 1%;
}

.btn-group-justified > .btn-group .btn,
.btn-group-justified > .btn-group .btn-large {
  width: 100%;
}

.btn-group-justified > .btn-group .dropdown-menu {
  left: auto;
}

[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-large input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-large input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn-large input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn-large 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-right: 0;
  padding-left: 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: 400;
  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,
.input-group-sm > .input-group-btn > .input-group-addon.btn-large {
  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,
.input-group-lg > .input-group-btn > .input-group-addon.btn-large {
  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-large,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .btn-group > .btn-large,
.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-large:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn,
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn-large {
  border-top-right-radius: 0;
  border-bottom-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-large,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .btn-group > .btn-large,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-large:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn,
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn-large {
  border-top-left-radius: 0;
  border-bottom-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,
.input-group-btn > .btn-large {
  position: relative;
}

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

.input-group-btn > .btn:hover,
.input-group-btn > .btn-large:hover,
.input-group-btn > .btn:focus,
.input-group-btn > .btn-large:focus,
.input-group-btn > .btn:active,
.input-group-btn > .btn-large:active {
  z-index: 2;
}

.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-large,
.input-group-btn:first-child > .btn-group {
  margin-right: -1px;
}

.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-large,
.input-group-btn:last-child > .btn-group {
  z-index: 2;
  margin-left: -1px;
}

.nav {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

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

.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;
  cursor: not-allowed;
  background-color: transparent;
}

.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.42857143;
  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;
  cursor: default;
  background-color: #fff;
  border: 1px solid #ddd;
  border-bottom-color: transparent;
}

.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 {
  margin-bottom: 5px;
  text-align: center;
}

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

.navbar {
  position: relative;
  min-height: 50px;
  margin-bottom: 20px;
  border: 1px solid transparent;
}

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

.navbar:after {
  clear: both;
}

@media (min-width: 768px) {
  .navbar {
    border-radius: 4px;
  }
}

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

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

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

.navbar-collapse {
  padding-right: 15px;
  padding-left: 15px;
  overflow-x: visible;
  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 {
  display: table;
  content: " ";
}

.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-right: 0;
    padding-left: 0;
  }
}

.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030;
}

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

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

.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-brand {
  float: left;
  height: 50px;
  padding: 15px 15px;
  font-size: 18px;
  line-height: 20px;
}

.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;
  padding: 9px 10px;
  margin-right: 15px;
  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 {
  padding: 10px 15px;
  margin-right: -15px;
  margin-left: -15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  margin-top: 8px;
  margin-bottom: 8px;
}

@media (min-width: 768px) {
  .navbar-form .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }

  .navbar-form .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }

  .navbar-form .form-control-static {
    display: inline-block;
  }

  .navbar-form .input-group {
    display: inline-table;
    vertical-align: middle;
  }

  .navbar-form .input-group .input-group-addon,
  .navbar-form .input-group .input-group-btn,
  .navbar-form .input-group .form-control {
    width: auto;
  }

  .navbar-form .input-group > .form-control {
    width: 100%;
  }

  .navbar-form .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }

  .navbar-form .radio,
  .navbar-form .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }

  .navbar-form .radio label,
  .navbar-form .checkbox label {
    padding-left: 0;
  }

  .navbar-form .radio input[type="radio"],
  .navbar-form .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }

  .navbar-form .has-feedback .form-control-feedback {
    top: 0;
  }
}

@media (max-width: 767px) {
  .navbar-form .form-group {
    margin-bottom: 5px;
  }

  .navbar-form .form-group:last-child {
    margin-bottom: 0;
  }
}

@media (min-width: 768px) {
  .navbar-form {
    width: auto;
    padding-top: 0;
    padding-bottom: 0;
    margin-right: 0;
    margin-left: 0;
    border: 0;
    box-shadow: none;
  }
}

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

.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  margin-bottom: 0;
  border-top-left-radius: 4px;
  border-top-right-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,
.btn-group-sm > .navbar-btn.btn-large {
  margin-top: 10px;
  margin-bottom: 10px;
}

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

.navbar-text {
  margin-top: 15px;
  margin-bottom: 15px;
}

@media (min-width: 768px) {
  .navbar-text {
    float: left;
    margin-right: 15px;
    margin-left: 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: #5e5d5d;
  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-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
  color: #555;
  background-color: #e7e7e7;
}

@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-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-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-nav > .open > a,
.navbar-inverse .navbar-nav > .open > a:hover,
.navbar-inverse .navbar-nav > .open > a:focus {
  color: #fff;
  background-color: #090909;
}

@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-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-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 {
  padding: 0 5px;
  color: #ccc;
  content: "/ ";
}

.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;
  margin-left: -1px;
  line-height: 1.42857143;
  color: #337ab7;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid #ddd;
}

.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 > li:first-child > a,
.pagination > li:first-child > span {
  margin-left: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}

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

.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;
  cursor: default;
  background-color: #337ab7;
  border-color: #337ab7;
}

.pagination > .disabled > span,
.pagination > .disabled > span:hover,
.pagination > .disabled > span:focus,
.pagination > .disabled > a,
.pagination > .disabled > a:hover,
.pagination > .disabled > a:focus {
  color: #777777;
  cursor: not-allowed;
  background-color: #fff;
  border-color: #ddd;
}

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

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

.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-top-right-radius: 6px;
  border-bottom-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-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
}

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

.pager {
  padding-left: 0;
  margin: 20px 0;
  text-align: center;
  list-style: none;
}

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

.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;
  cursor: not-allowed;
  background-color: #fff;
}

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

.label:empty {
  display: none;
}

.btn .label,
.btn-large .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;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-color: #777777;
  border-radius: 10px;
}

.badge:empty {
  display: none;
}

.btn .badge,
.btn-large .badge {
  position: relative;
  top: -1px;
}

.btn-xs .badge,
.btn-group-xs > .btn .badge,
.btn-group-xs > .btn-large .badge,
.btn-group-xs > .btn .badge,
.btn-group-xs > .btn-large .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 {
  padding-right: 15px;
  padding-left: 15px;
  border-radius: 6px;
}

.jumbotron .container {
  max-width: 100%;
}

@media screen and (min-width: 768px) {
  .jumbotron {
    padding-top: 48px;
    padding-bottom: 48px;
  }

  .container .jumbotron,
  .container-fluid .jumbotron {
    padding-right: 60px;
    padding-left: 60px;
  }

  .jumbotron h1,
  .jumbotron .h1 {
    font-size: 63px;
  }
}

.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 20px;
  line-height: 1.42857143;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  transition: border 0.2s ease-in-out;
}

.thumbnail > img,
.thumbnail a > img {
  display: block;
  max-width: 100%;
  height: auto;
  margin-right: auto;
  margin-left: 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 {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}

.alert-success hr {
  border-top-color: #c9e2b3;
}

.alert-success .alert-link {
  color: #2b542c;
}

.alert-info {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}

.alert-info hr {
  border-top-color: #a6e1ec;
}

.alert-info .alert-link {
  color: #245269;
}

.alert-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}

.alert-warning hr {
  border-top-color: #f7e1b5;
}

.alert-warning .alert-link {
  color: #66512c;
}

.alert-danger {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}

.alert-danger hr {
  border-top-color: #e4b9c0;
}

.alert-danger .alert-link {
  color: #843534;
}

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

  to {
    background-position: 0 0;
  }
}

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

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

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

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

.progress-bar-success {
  background-color: #5cb85c;
}

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

.progress-bar-info {
  background-color: #5bc0de;
}

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

.progress-bar-warning {
  background-color: #f0ad4e;
}

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

.progress-bar-danger {
  background-color: #d9534f;
}

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

.media {
  margin-top: 15px;
}

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

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

.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 {
  padding-left: 0;
  margin-bottom: 20px;
}

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

.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}

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

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

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 {
  color: #555;
  text-decoration: none;
  background-color: #f5f5f5;
}

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

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

.panel-body {
  padding: 15px;
}

.panel-body:before,
.panel-body:after {
  display: table;
  content: " ";
}

.panel-body:after {
  clear: both;
}

.panel-heading {
  padding: 10px 15px;
  border-bottom: 1px solid transparent;
  border-top-left-radius: 3px;
  border-top-right-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-left-radius: 3px;
  border-top-right-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-left-radius: 0;
  border-top-right-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-right: 15px;
  padding-left: 15px;
}

.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-left-radius: 3px;
  border-top-right-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-right-radius: 3px;
  border-bottom-left-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 {
  margin-bottom: 0;
  border: 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;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 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;
  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;
  filter: alpha(opacity=20);
  opacity: 0.2;
}

.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  filter: alpha(opacity=50);
  opacity: 0.5;
}

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

.modal-open {
  overflow: hidden;
}

.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  display: none;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}

.modal.fade .modal-dialog {
  transform: translate(0, -25%);
  transition: transform 0.3s ease-out;
}

.modal.in .modal-dialog {
  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;
  background-clip: padding-box;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000;
}

.modal-backdrop.fade {
  filter: alpha(opacity=0);
  opacity: 0;
}

.modal-backdrop.in {
  filter: alpha(opacity=50);
  opacity: 0.5;
}

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

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

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

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

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

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

.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}

.modal-footer:before,
.modal-footer:after {
  display: table;
  content: " ";
}

.modal-footer:after {
  clear: both;
}

.modal-footer .btn + .btn,
.modal-footer .btn-large + .btn,
.modal-footer .btn + .btn-large,
.modal-footer .btn-large + .btn-large {
  margin-bottom: 0;
  margin-left: 5px;
}

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

.modal-footer .btn-block + .btn-block {
  margin-left: 0;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto;
  }

  .modal-content {
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  }

  .modal-sm {
    width: 300px;
  }
}

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

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

.tooltip.in {
  filter: alpha(opacity=90);
  opacity: 0.9;
}

.tooltip.top {
  padding: 5px 0;
  margin-top: -3px;
}

.tooltip.right {
  padding: 0 5px;
  margin-left: 3px;
}

.tooltip.bottom {
  padding: 5px 0;
  margin-top: 3px;
}

.tooltip.left {
  padding: 0 5px;
  margin-left: -3px;
}

.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 {
  right: 5px;
  bottom: 0;
  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;
}

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

.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: 400;
  line-height: 1.42857143;
  line-break: auto;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  white-space: 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;
  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 > .arrow {
  border-width: 11px;
}

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

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

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

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

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

.popover.right > .arrow:after {
  bottom: -10px;
  left: 1px;
  content: " ";
  border-right-color: #fff;
  border-left-width: 0;
}

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

.popover.bottom > .arrow:after {
  top: 1px;
  margin-left: -10px;
  content: " ";
  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 {
  right: 1px;
  bottom: -10px;
  content: " ";
  border-right-width: 0;
  border-left-color: #fff;
}

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

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

.carousel {
  position: relative;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.carousel-inner > .item {
  position: relative;
  display: none;
  transition: 0.6s ease-in-out left;
}

.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
  line-height: 1;
}

@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .item {
    transition: transform 0.6s ease-in-out;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    perspective: 1000px;
  }

  .carousel-inner > .item.next,
  .carousel-inner > .item.active.right {
    transform: translate3d(100%, 0, 0);
    left: 0;
  }

  .carousel-inner > .item.prev,
  .carousel-inner > .item.active.left {
    transform: translate3d(-100%, 0, 0);
    left: 0;
  }

  .carousel-inner > .item.next.left,
  .carousel-inner > .item.prev.right,
  .carousel-inner > .item.active {
    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;
  bottom: 0;
  left: 0;
  width: 15%;
  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);
  filter: alpha(opacity=50);
  opacity: 0.5;
}

.carousel-control.left {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
  background-repeat: repeat-x;
}

.carousel-control.right {
  right: 0;
  left: auto;
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
  background-repeat: repeat-x;
}

.carousel-control:hover,
.carousel-control:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  filter: alpha(opacity=90);
  opacity: 0.9;
}

.carousel-control .icon-prev,
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right {
  position: absolute;
  top: 50%;
  z-index: 5;
  display: inline-block;
  margin-top: -10px;
}

.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;
  font-family: serif;
  line-height: 1;
}

.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%;
  padding-left: 0;
  margin-left: -30%;
  text-align: center;
  list-style: none;
}

.carousel-indicators li {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 1px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #000 \9;
  background-color: rgba(0, 0, 0, 0);
  border: 1px solid #fff;
  border-radius: 10px;
}

.carousel-indicators .active {
  width: 12px;
  height: 12px;
  margin: 0;
  background-color: #fff;
}

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

.carousel-caption .btn,
.carousel-caption .btn-large {
  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 {
    right: 20%;
    left: 20%;
    padding-bottom: 30px;
  }

  .carousel-indicators {
    bottom: 20px;
  }
}

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

.clearfix:after {
  clear: both;
}

.center-block {
  display: block;
  margin-right: auto;
  margin-left: 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;
  }
}

.materialize-red {
  background-color: #e51c23 !important;
}

.materialize-red-text {
  color: #e51c23 !important;
}

.materialize-red.lighten-5 {
  background-color: #fdeaeb !important;
}

.materialize-red-text.text-lighten-5 {
  color: #fdeaeb !important;
}

.materialize-red.lighten-4 {
  background-color: #f8c1c3 !important;
}

.materialize-red-text.text-lighten-4 {
  color: #f8c1c3 !important;
}

.materialize-red.lighten-3 {
  background-color: #f3989b !important;
}

.materialize-red-text.text-lighten-3 {
  color: #f3989b !important;
}

.materialize-red.lighten-2 {
  background-color: #ee6e73 !important;
}

.materialize-red-text.text-lighten-2 {
  color: #ee6e73 !important;
}

.materialize-red.lighten-1 {
  background-color: #ea454b !important;
}

.materialize-red-text.text-lighten-1 {
  color: #ea454b !important;
}

.materialize-red.darken-1 {
  background-color: #d0181e !important;
}

.materialize-red-text.text-darken-1 {
  color: #d0181e !important;
}

.materialize-red.darken-2 {
  background-color: #b9151b !important;
}

.materialize-red-text.text-darken-2 {
  color: #b9151b !important;
}

.materialize-red.darken-3 {
  background-color: #a21318 !important;
}

.materialize-red-text.text-darken-3 {
  color: #a21318 !important;
}

.materialize-red.darken-4 {
  background-color: #8b1014 !important;
}

.materialize-red-text.text-darken-4 {
  color: #8b1014 !important;
}

.red {
  background-color: #F44336 !important;
}

.red-text {
  color: #F44336 !important;
}

.red.lighten-5 {
  background-color: #FFEBEE !important;
}

.red-text.text-lighten-5 {
  color: #FFEBEE !important;
}

.red.lighten-4 {
  background-color: #FFCDD2 !important;
}

.red-text.text-lighten-4 {
  color: #FFCDD2 !important;
}

.red.lighten-3 {
  background-color: #EF9A9A !important;
}

.red-text.text-lighten-3 {
  color: #EF9A9A !important;
}

.red.lighten-2 {
  background-color: #E57373 !important;
}

.red-text.text-lighten-2 {
  color: #E57373 !important;
}

.red.lighten-1 {
  background-color: #EF5350 !important;
}

.red-text.text-lighten-1 {
  color: #EF5350 !important;
}

.red.darken-1 {
  background-color: #E53935 !important;
}

.red-text.text-darken-1 {
  color: #E53935 !important;
}

.red.darken-2 {
  background-color: #D32F2F !important;
}

.red-text.text-darken-2 {
  color: #D32F2F !important;
}

.red.darken-3 {
  background-color: #C62828 !important;
}

.red-text.text-darken-3 {
  color: #C62828 !important;
}

.red.darken-4 {
  background-color: #B71C1C !important;
}

.red-text.text-darken-4 {
  color: #B71C1C !important;
}

.red.accent-1 {
  background-color: #FF8A80 !important;
}

.red-text.text-accent-1 {
  color: #FF8A80 !important;
}

.red.accent-2 {
  background-color: #FF5252 !important;
}

.red-text.text-accent-2 {
  color: #FF5252 !important;
}

.red.accent-3 {
  background-color: #FF1744 !important;
}

.red-text.text-accent-3 {
  color: #FF1744 !important;
}

.red.accent-4 {
  background-color: #D50000 !important;
}

.red-text.text-accent-4 {
  color: #D50000 !important;
}

.pink {
  background-color: #e91e63 !important;
}

.pink-text {
  color: #e91e63 !important;
}

.pink.lighten-5 {
  background-color: #fce4ec !important;
}

.pink-text.text-lighten-5 {
  color: #fce4ec !important;
}

.pink.lighten-4 {
  background-color: #f8bbd0 !important;
}

.pink-text.text-lighten-4 {
  color: #f8bbd0 !important;
}

.pink.lighten-3 {
  background-color: #f48fb1 !important;
}

.pink-text.text-lighten-3 {
  color: #f48fb1 !important;
}

.pink.lighten-2 {
  background-color: #f06292 !important;
}

.pink-text.text-lighten-2 {
  color: #f06292 !important;
}

.pink.lighten-1 {
  background-color: #ec407a !important;
}

.pink-text.text-lighten-1 {
  color: #ec407a !important;
}

.pink.darken-1 {
  background-color: #d81b60 !important;
}

.pink-text.text-darken-1 {
  color: #d81b60 !important;
}

.pink.darken-2 {
  background-color: #c2185b !important;
}

.pink-text.text-darken-2 {
  color: #c2185b !important;
}

.pink.darken-3 {
  background-color: #ad1457 !important;
}

.pink-text.text-darken-3 {
  color: #ad1457 !important;
}

.pink.darken-4 {
  background-color: #880e4f !important;
}

.pink-text.text-darken-4 {
  color: #880e4f !important;
}

.pink.accent-1 {
  background-color: #ff80ab !important;
}

.pink-text.text-accent-1 {
  color: #ff80ab !important;
}

.pink.accent-2 {
  background-color: #ff4081 !important;
}

.pink-text.text-accent-2 {
  color: #ff4081 !important;
}

.pink.accent-3 {
  background-color: #f50057 !important;
}

.pink-text.text-accent-3 {
  color: #f50057 !important;
}

.pink.accent-4 {
  background-color: #c51162 !important;
}

.pink-text.text-accent-4 {
  color: #c51162 !important;
}

.purple {
  background-color: #9c27b0 !important;
}

.purple-text {
  color: #9c27b0 !important;
}

.purple.lighten-5 {
  background-color: #f3e5f5 !important;
}

.purple-text.text-lighten-5 {
  color: #f3e5f5 !important;
}

.purple.lighten-4 {
  background-color: #e1bee7 !important;
}

.purple-text.text-lighten-4 {
  color: #e1bee7 !important;
}

.purple.lighten-3 {
  background-color: #ce93d8 !important;
}

.purple-text.text-lighten-3 {
  color: #ce93d8 !important;
}

.purple.lighten-2 {
  background-color: #ba68c8 !important;
}

.purple-text.text-lighten-2 {
  color: #ba68c8 !important;
}

.purple.lighten-1 {
  background-color: #ab47bc !important;
}

.purple-text.text-lighten-1 {
  color: #ab47bc !important;
}

.purple.darken-1 {
  background-color: #8e24aa !important;
}

.purple-text.text-darken-1 {
  color: #8e24aa !important;
}

.purple.darken-2 {
  background-color: #7b1fa2 !important;
}

.purple-text.text-darken-2 {
  color: #7b1fa2 !important;
}

.purple.darken-3 {
  background-color: #6a1b9a !important;
}

.purple-text.text-darken-3 {
  color: #6a1b9a !important;
}

.purple.darken-4 {
  background-color: #4a148c !important;
}

.purple-text.text-darken-4 {
  color: #4a148c !important;
}

.purple.accent-1 {
  background-color: #ea80fc !important;
}

.purple-text.text-accent-1 {
  color: #ea80fc !important;
}

.purple.accent-2 {
  background-color: #e040fb !important;
}

.purple-text.text-accent-2 {
  color: #e040fb !important;
}

.purple.accent-3 {
  background-color: #d500f9 !important;
}

.purple-text.text-accent-3 {
  color: #d500f9 !important;
}

.purple.accent-4 {
  background-color: #aa00ff !important;
}

.purple-text.text-accent-4 {
  color: #aa00ff !important;
}

.deep-purple {
  background-color: #673ab7 !important;
}

.deep-purple-text {
  color: #673ab7 !important;
}

.deep-purple.lighten-5 {
  background-color: #ede7f6 !important;
}

.deep-purple-text.text-lighten-5 {
  color: #ede7f6 !important;
}

.deep-purple.lighten-4 {
  background-color: #d1c4e9 !important;
}

.deep-purple-text.text-lighten-4 {
  color: #d1c4e9 !important;
}

.deep-purple.lighten-3 {
  background-color: #b39ddb !important;
}

.deep-purple-text.text-lighten-3 {
  color: #b39ddb !important;
}

.deep-purple.lighten-2 {
  background-color: #9575cd !important;
}

.deep-purple-text.text-lighten-2 {
  color: #9575cd !important;
}

.deep-purple.lighten-1 {
  background-color: #7e57c2 !important;
}

.deep-purple-text.text-lighten-1 {
  color: #7e57c2 !important;
}

.deep-purple.darken-1 {
  background-color: #5e35b1 !important;
}

.deep-purple-text.text-darken-1 {
  color: #5e35b1 !important;
}

.deep-purple.darken-2 {
  background-color: #512da8 !important;
}

.deep-purple-text.text-darken-2 {
  color: #512da8 !important;
}

.deep-purple.darken-3 {
  background-color: #4527a0 !important;
}

.deep-purple-text.text-darken-3 {
  color: #4527a0 !important;
}

.deep-purple.darken-4 {
  background-color: #311b92 !important;
}

.deep-purple-text.text-darken-4 {
  color: #311b92 !important;
}

.deep-purple.accent-1 {
  background-color: #b388ff !important;
}

.deep-purple-text.text-accent-1 {
  color: #b388ff !important;
}

.deep-purple.accent-2 {
  background-color: #7c4dff !important;
}

.deep-purple-text.text-accent-2 {
  color: #7c4dff !important;
}

.deep-purple.accent-3 {
  background-color: #651fff !important;
}

.deep-purple-text.text-accent-3 {
  color: #651fff !important;
}

.deep-purple.accent-4 {
  background-color: #6200ea !important;
}

.deep-purple-text.text-accent-4 {
  color: #6200ea !important;
}

.indigo {
  background-color: #3f51b5 !important;
}

.indigo-text {
  color: #3f51b5 !important;
}

.indigo.lighten-5 {
  background-color: #e8eaf6 !important;
}

.indigo-text.text-lighten-5 {
  color: #e8eaf6 !important;
}

.indigo.lighten-4 {
  background-color: #c5cae9 !important;
}

.indigo-text.text-lighten-4 {
  color: #c5cae9 !important;
}

.indigo.lighten-3 {
  background-color: #9fa8da !important;
}

.indigo-text.text-lighten-3 {
  color: #9fa8da !important;
}

.indigo.lighten-2 {
  background-color: #7986cb !important;
}

.indigo-text.text-lighten-2 {
  color: #7986cb !important;
}

.indigo.lighten-1 {
  background-color: #5c6bc0 !important;
}

.indigo-text.text-lighten-1 {
  color: #5c6bc0 !important;
}

.indigo.darken-1 {
  background-color: #3949ab !important;
}

.indigo-text.text-darken-1 {
  color: #3949ab !important;
}

.indigo.darken-2 {
  background-color: #303f9f !important;
}

.indigo-text.text-darken-2 {
  color: #303f9f !important;
}

.indigo.darken-3 {
  background-color: #283593 !important;
}

.indigo-text.text-darken-3 {
  color: #283593 !important;
}

.indigo.darken-4 {
  background-color: #1a237e !important;
}

.indigo-text.text-darken-4 {
  color: #1a237e !important;
}

.indigo.accent-1 {
  background-color: #8c9eff !important;
}

.indigo-text.text-accent-1 {
  color: #8c9eff !important;
}

.indigo.accent-2 {
  background-color: #536dfe !important;
}

.indigo-text.text-accent-2 {
  color: #536dfe !important;
}

.indigo.accent-3 {
  background-color: #3d5afe !important;
}

.indigo-text.text-accent-3 {
  color: #3d5afe !important;
}

.indigo.accent-4 {
  background-color: #304ffe !important;
}

.indigo-text.text-accent-4 {
  color: #304ffe !important;
}

.blue {
  background-color: #2196F3 !important;
}

.blue-text {
  color: #2196F3 !important;
}

.blue.lighten-5 {
  background-color: #E3F2FD !important;
}

.blue-text.text-lighten-5 {
  color: #E3F2FD !important;
}

.blue.lighten-4 {
  background-color: #BBDEFB !important;
}

.blue-text.text-lighten-4 {
  color: #BBDEFB !important;
}

.blue.lighten-3 {
  background-color: #90CAF9 !important;
}

.blue-text.text-lighten-3 {
  color: #90CAF9 !important;
}

.blue.lighten-2 {
  background-color: #64B5F6 !important;
}

.blue-text.text-lighten-2 {
  color: #64B5F6 !important;
}

.blue.lighten-1 {
  background-color: #42A5F5 !important;
}

.blue-text.text-lighten-1 {
  color: #42A5F5 !important;
}

.blue.darken-1 {
  background-color: #1E88E5 !important;
}

.blue-text.text-darken-1 {
  color: #1E88E5 !important;
}

.blue.darken-2 {
  background-color: #1976D2 !important;
}

.blue-text.text-darken-2 {
  color: #1976D2 !important;
}

.blue.darken-3 {
  background-color: #1565C0 !important;
}

.blue-text.text-darken-3 {
  color: #1565C0 !important;
}

.blue.darken-4 {
  background-color: #0D47A1 !important;
}

.blue-text.text-darken-4 {
  color: #0D47A1 !important;
}

.blue.accent-1 {
  background-color: #82B1FF !important;
}

.blue-text.text-accent-1 {
  color: #82B1FF !important;
}

.blue.accent-2 {
  background-color: #448AFF !important;
}

.blue-text.text-accent-2 {
  color: #448AFF !important;
}

.blue.accent-3 {
  background-color: #2979FF !important;
}

.blue-text.text-accent-3 {
  color: #2979FF !important;
}

.blue.accent-4 {
  background-color: #2962FF !important;
}

.blue-text.text-accent-4 {
  color: #2962FF !important;
}

.light-blue {
  background-color: #03a9f4 !important;
}

.light-blue-text {
  color: #03a9f4 !important;
}

.light-blue.lighten-5 {
  background-color: #e1f5fe !important;
}

.light-blue-text.text-lighten-5 {
  color: #e1f5fe !important;
}

.light-blue.lighten-4 {
  background-color: #b3e5fc !important;
}

.light-blue-text.text-lighten-4 {
  color: #b3e5fc !important;
}

.light-blue.lighten-3 {
  background-color: #81d4fa !important;
}

.light-blue-text.text-lighten-3 {
  color: #81d4fa !important;
}

.light-blue.lighten-2 {
  background-color: #4fc3f7 !important;
}

.light-blue-text.text-lighten-2 {
  color: #4fc3f7 !important;
}

.light-blue.lighten-1 {
  background-color: #29b6f6 !important;
}

.light-blue-text.text-lighten-1 {
  color: #29b6f6 !important;
}

.light-blue.darken-1 {
  background-color: #039be5 !important;
}

.light-blue-text.text-darken-1 {
  color: #039be5 !important;
}

.light-blue.darken-2 {
  background-color: #0288d1 !important;
}

.light-blue-text.text-darken-2 {
  color: #0288d1 !important;
}

.light-blue.darken-3 {
  background-color: #0277bd !important;
}

.light-blue-text.text-darken-3 {
  color: #0277bd !important;
}

.light-blue.darken-4 {
  background-color: #01579b !important;
}

.light-blue-text.text-darken-4 {
  color: #01579b !important;
}

.light-blue.accent-1 {
  background-color: #80d8ff !important;
}

.light-blue-text.text-accent-1 {
  color: #80d8ff !important;
}

.light-blue.accent-2 {
  background-color: #40c4ff !important;
}

.light-blue-text.text-accent-2 {
  color: #40c4ff !important;
}

.light-blue.accent-3 {
  background-color: #00b0ff !important;
}

.light-blue-text.text-accent-3 {
  color: #00b0ff !important;
}

.light-blue.accent-4 {
  background-color: #0091ea !important;
}

.light-blue-text.text-accent-4 {
  color: #0091ea !important;
}

.cyan {
  background-color: #00bcd4 !important;
}

.cyan-text {
  color: #00bcd4 !important;
}

.cyan.lighten-5 {
  background-color: #e0f7fa !important;
}

.cyan-text.text-lighten-5 {
  color: #e0f7fa !important;
}

.cyan.lighten-4 {
  background-color: #b2ebf2 !important;
}

.cyan-text.text-lighten-4 {
  color: #b2ebf2 !important;
}

.cyan.lighten-3 {
  background-color: #80deea !important;
}

.cyan-text.text-lighten-3 {
  color: #80deea !important;
}

.cyan.lighten-2 {
  background-color: #4dd0e1 !important;
}

.cyan-text.text-lighten-2 {
  color: #4dd0e1 !important;
}

.cyan.lighten-1 {
  background-color: #26c6da !important;
}

.cyan-text.text-lighten-1 {
  color: #26c6da !important;
}

.cyan.darken-1 {
  background-color: #00acc1 !important;
}

.cyan-text.text-darken-1 {
  color: #00acc1 !important;
}

.cyan.darken-2 {
  background-color: #0097a7 !important;
}

.cyan-text.text-darken-2 {
  color: #0097a7 !important;
}

.cyan.darken-3 {
  background-color: #00838f !important;
}

.cyan-text.text-darken-3 {
  color: #00838f !important;
}

.cyan.darken-4 {
  background-color: #006064 !important;
}

.cyan-text.text-darken-4 {
  color: #006064 !important;
}

.cyan.accent-1 {
  background-color: #84ffff !important;
}

.cyan-text.text-accent-1 {
  color: #84ffff !important;
}

.cyan.accent-2 {
  background-color: #18ffff !important;
}

.cyan-text.text-accent-2 {
  color: #18ffff !important;
}

.cyan.accent-3 {
  background-color: #00e5ff !important;
}

.cyan-text.text-accent-3 {
  color: #00e5ff !important;
}

.cyan.accent-4 {
  background-color: #00b8d4 !important;
}

.cyan-text.text-accent-4 {
  color: #00b8d4 !important;
}

.teal {
  background-color: #009688 !important;
}

.teal-text {
  color: #009688 !important;
}

.teal.lighten-5 {
  background-color: #e0f2f1 !important;
}

.teal-text.text-lighten-5 {
  color: #e0f2f1 !important;
}

.teal.lighten-4 {
  background-color: #b2dfdb !important;
}

.teal-text.text-lighten-4 {
  color: #b2dfdb !important;
}

.teal.lighten-3 {
  background-color: #80cbc4 !important;
}

.teal-text.text-lighten-3 {
  color: #80cbc4 !important;
}

.teal.lighten-2 {
  background-color: #4db6ac !important;
}

.teal-text.text-lighten-2 {
  color: #4db6ac !important;
}

.teal.lighten-1 {
  background-color: #26a69a !important;
}

.teal-text.text-lighten-1 {
  color: #26a69a !important;
}

.teal.darken-1 {
  background-color: #00897b !important;
}

.teal-text.text-darken-1 {
  color: #00897b !important;
}

.teal.darken-2 {
  background-color: #00796b !important;
}

.teal-text.text-darken-2 {
  color: #00796b !important;
}

.teal.darken-3 {
  background-color: #00695c !important;
}

.teal-text.text-darken-3 {
  color: #00695c !important;
}

.teal.darken-4 {
  background-color: #004d40 !important;
}

.teal-text.text-darken-4 {
  color: #004d40 !important;
}

.teal.accent-1 {
  background-color: #a7ffeb !important;
}

.teal-text.text-accent-1 {
  color: #a7ffeb !important;
}

.teal.accent-2 {
  background-color: #64ffda !important;
}

.teal-text.text-accent-2 {
  color: #64ffda !important;
}

.teal.accent-3 {
  background-color: #1de9b6 !important;
}

.teal-text.text-accent-3 {
  color: #1de9b6 !important;
}

.teal.accent-4 {
  background-color: #00bfa5 !important;
}

.teal-text.text-accent-4 {
  color: #00bfa5 !important;
}

.green {
  background-color: #4CAF50 !important;
}

.green-text {
  color: #4CAF50 !important;
}

.green.lighten-5 {
  background-color: #E8F5E9 !important;
}

.green-text.text-lighten-5 {
  color: #E8F5E9 !important;
}

.green.lighten-4 {
  background-color: #C8E6C9 !important;
}

.green-text.text-lighten-4 {
  color: #C8E6C9 !important;
}

.green.lighten-3 {
  background-color: #A5D6A7 !important;
}

.green-text.text-lighten-3 {
  color: #A5D6A7 !important;
}

.green.lighten-2 {
  background-color: #81C784 !important;
}

.green-text.text-lighten-2 {
  color: #81C784 !important;
}

.green.lighten-1 {
  background-color: #66BB6A !important;
}

.green-text.text-lighten-1 {
  color: #66BB6A !important;
}

.green.darken-1 {
  background-color: #43A047 !important;
}

.green-text.text-darken-1 {
  color: #43A047 !important;
}

.green.darken-2 {
  background-color: #388E3C !important;
}

.green-text.text-darken-2 {
  color: #388E3C !important;
}

.green.darken-3 {
  background-color: #2E7D32 !important;
}

.green-text.text-darken-3 {
  color: #2E7D32 !important;
}

.green.darken-4 {
  background-color: #1B5E20 !important;
}

.green-text.text-darken-4 {
  color: #1B5E20 !important;
}

.green.accent-1 {
  background-color: #B9F6CA !important;
}

.green-text.text-accent-1 {
  color: #B9F6CA !important;
}

.green.accent-2 {
  background-color: #69F0AE !important;
}

.green-text.text-accent-2 {
  color: #69F0AE !important;
}

.green.accent-3 {
  background-color: #00E676 !important;
}

.green-text.text-accent-3 {
  color: #00E676 !important;
}

.green.accent-4 {
  background-color: #00C853 !important;
}

.green-text.text-accent-4 {
  color: #00C853 !important;
}

.light-green {
  background-color: #8bc34a !important;
}

.light-green-text {
  color: #8bc34a !important;
}

.light-green.lighten-5 {
  background-color: #f1f8e9 !important;
}

.light-green-text.text-lighten-5 {
  color: #f1f8e9 !important;
}

.light-green.lighten-4 {
  background-color: #dcedc8 !important;
}

.light-green-text.text-lighten-4 {
  color: #dcedc8 !important;
}

.light-green.lighten-3 {
  background-color: #c5e1a5 !important;
}

.light-green-text.text-lighten-3 {
  color: #c5e1a5 !important;
}

.light-green.lighten-2 {
  background-color: #aed581 !important;
}

.light-green-text.text-lighten-2 {
  color: #aed581 !important;
}

.light-green.lighten-1 {
  background-color: #9ccc65 !important;
}

.light-green-text.text-lighten-1 {
  color: #9ccc65 !important;
}

.light-green.darken-1 {
  background-color: #7cb342 !important;
}

.light-green-text.text-darken-1 {
  color: #7cb342 !important;
}

.light-green.darken-2 {
  background-color: #689f38 !important;
}

.light-green-text.text-darken-2 {
  color: #689f38 !important;
}

.light-green.darken-3 {
  background-color: #558b2f !important;
}

.light-green-text.text-darken-3 {
  color: #558b2f !important;
}

.light-green.darken-4 {
  background-color: #33691e !important;
}

.light-green-text.text-darken-4 {
  color: #33691e !important;
}

.light-green.accent-1 {
  background-color: #ccff90 !important;
}

.light-green-text.text-accent-1 {
  color: #ccff90 !important;
}

.light-green.accent-2 {
  background-color: #b2ff59 !important;
}

.light-green-text.text-accent-2 {
  color: #b2ff59 !important;
}

.light-green.accent-3 {
  background-color: #76ff03 !important;
}

.light-green-text.text-accent-3 {
  color: #76ff03 !important;
}

.light-green.accent-4 {
  background-color: #64dd17 !important;
}

.light-green-text.text-accent-4 {
  color: #64dd17 !important;
}

.lime {
  background-color: #cddc39 !important;
}

.lime-text {
  color: #cddc39 !important;
}

.lime.lighten-5 {
  background-color: #f9fbe7 !important;
}

.lime-text.text-lighten-5 {
  color: #f9fbe7 !important;
}

.lime.lighten-4 {
  background-color: #f0f4c3 !important;
}

.lime-text.text-lighten-4 {
  color: #f0f4c3 !important;
}

.lime.lighten-3 {
  background-color: #e6ee9c !important;
}

.lime-text.text-lighten-3 {
  color: #e6ee9c !important;
}

.lime.lighten-2 {
  background-color: #dce775 !important;
}

.lime-text.text-lighten-2 {
  color: #dce775 !important;
}

.lime.lighten-1 {
  background-color: #d4e157 !important;
}

.lime-text.text-lighten-1 {
  color: #d4e157 !important;
}

.lime.darken-1 {
  background-color: #c0ca33 !important;
}

.lime-text.text-darken-1 {
  color: #c0ca33 !important;
}

.lime.darken-2 {
  background-color: #afb42b !important;
}

.lime-text.text-darken-2 {
  color: #afb42b !important;
}

.lime.darken-3 {
  background-color: #9e9d24 !important;
}

.lime-text.text-darken-3 {
  color: #9e9d24 !important;
}

.lime.darken-4 {
  background-color: #827717 !important;
}

.lime-text.text-darken-4 {
  color: #827717 !important;
}

.lime.accent-1 {
  background-color: #f4ff81 !important;
}

.lime-text.text-accent-1 {
  color: #f4ff81 !important;
}

.lime.accent-2 {
  background-color: #eeff41 !important;
}

.lime-text.text-accent-2 {
  color: #eeff41 !important;
}

.lime.accent-3 {
  background-color: #c6ff00 !important;
}

.lime-text.text-accent-3 {
  color: #c6ff00 !important;
}

.lime.accent-4 {
  background-color: #aeea00 !important;
}

.lime-text.text-accent-4 {
  color: #aeea00 !important;
}

.yellow {
  background-color: #ffeb3b !important;
}

.yellow-text {
  color: #ffeb3b !important;
}

.yellow.lighten-5 {
  background-color: #fffde7 !important;
}

.yellow-text.text-lighten-5 {
  color: #fffde7 !important;
}

.yellow.lighten-4 {
  background-color: #fff9c4 !important;
}

.yellow-text.text-lighten-4 {
  color: #fff9c4 !important;
}

.yellow.lighten-3 {
  background-color: #fff59d !important;
}

.yellow-text.text-lighten-3 {
  color: #fff59d !important;
}

.yellow.lighten-2 {
  background-color: #fff176 !important;
}

.yellow-text.text-lighten-2 {
  color: #fff176 !important;
}

.yellow.lighten-1 {
  background-color: #ffee58 !important;
}

.yellow-text.text-lighten-1 {
  color: #ffee58 !important;
}

.yellow.darken-1 {
  background-color: #fdd835 !important;
}

.yellow-text.text-darken-1 {
  color: #fdd835 !important;
}

.yellow.darken-2 {
  background-color: #fbc02d !important;
}

.yellow-text.text-darken-2 {
  color: #fbc02d !important;
}

.yellow.darken-3 {
  background-color: #f9a825 !important;
}

.yellow-text.text-darken-3 {
  color: #f9a825 !important;
}

.yellow.darken-4 {
  background-color: #f57f17 !important;
}

.yellow-text.text-darken-4 {
  color: #f57f17 !important;
}

.yellow.accent-1 {
  background-color: #ffff8d !important;
}

.yellow-text.text-accent-1 {
  color: #ffff8d !important;
}

.yellow.accent-2 {
  background-color: #ffff00 !important;
}

.yellow-text.text-accent-2 {
  color: #ffff00 !important;
}

.yellow.accent-3 {
  background-color: #ffea00 !important;
}

.yellow-text.text-accent-3 {
  color: #ffea00 !important;
}

.yellow.accent-4 {
  background-color: #ffd600 !important;
}

.yellow-text.text-accent-4 {
  color: #ffd600 !important;
}

.amber {
  background-color: #ffc107 !important;
}

.amber-text {
  color: #ffc107 !important;
}

.amber.lighten-5 {
  background-color: #fff8e1 !important;
}

.amber-text.text-lighten-5 {
  color: #fff8e1 !important;
}

.amber.lighten-4 {
  background-color: #ffecb3 !important;
}

.amber-text.text-lighten-4 {
  color: #ffecb3 !important;
}

.amber.lighten-3 {
  background-color: #ffe082 !important;
}

.amber-text.text-lighten-3 {
  color: #ffe082 !important;
}

.amber.lighten-2 {
  background-color: #ffd54f !important;
}

.amber-text.text-lighten-2 {
  color: #ffd54f !important;
}

.amber.lighten-1 {
  background-color: #ffca28 !important;
}

.amber-text.text-lighten-1 {
  color: #ffca28 !important;
}

.amber.darken-1 {
  background-color: #ffb300 !important;
}

.amber-text.text-darken-1 {
  color: #ffb300 !important;
}

.amber.darken-2 {
  background-color: #ffa000 !important;
}

.amber-text.text-darken-2 {
  color: #ffa000 !important;
}

.amber.darken-3 {
  background-color: #ff8f00 !important;
}

.amber-text.text-darken-3 {
  color: #ff8f00 !important;
}

.amber.darken-4 {
  background-color: #ff6f00 !important;
}

.amber-text.text-darken-4 {
  color: #ff6f00 !important;
}

.amber.accent-1 {
  background-color: #ffe57f !important;
}

.amber-text.text-accent-1 {
  color: #ffe57f !important;
}

.amber.accent-2 {
  background-color: #ffd740 !important;
}

.amber-text.text-accent-2 {
  color: #ffd740 !important;
}

.amber.accent-3 {
  background-color: #ffc400 !important;
}

.amber-text.text-accent-3 {
  color: #ffc400 !important;
}

.amber.accent-4 {
  background-color: #ffab00 !important;
}

.amber-text.text-accent-4 {
  color: #ffab00 !important;
}

.orange {
  background-color: #ff9800 !important;
}

.orange-text {
  color: #ff9800 !important;
}

.orange.lighten-5 {
  background-color: #fff3e0 !important;
}

.orange-text.text-lighten-5 {
  color: #fff3e0 !important;
}

.orange.lighten-4 {
  background-color: #ffe0b2 !important;
}

.orange-text.text-lighten-4 {
  color: #ffe0b2 !important;
}

.orange.lighten-3 {
  background-color: #ffcc80 !important;
}

.orange-text.text-lighten-3 {
  color: #ffcc80 !important;
}

.orange.lighten-2 {
  background-color: #ffb74d !important;
}

.orange-text.text-lighten-2 {
  color: #ffb74d !important;
}

.orange.lighten-1 {
  background-color: #ffa726 !important;
}

.orange-text.text-lighten-1 {
  color: #ffa726 !important;
}

.orange.darken-1 {
  background-color: #fb8c00 !important;
}

.orange-text.text-darken-1 {
  color: #fb8c00 !important;
}

.orange.darken-2 {
  background-color: #f57c00 !important;
}

.orange-text.text-darken-2 {
  color: #f57c00 !important;
}

.orange.darken-3 {
  background-color: #ef6c00 !important;
}

.orange-text.text-darken-3 {
  color: #ef6c00 !important;
}

.orange.darken-4 {
  background-color: #e65100 !important;
}

.orange-text.text-darken-4 {
  color: #e65100 !important;
}

.orange.accent-1 {
  background-color: #ffd180 !important;
}

.orange-text.text-accent-1 {
  color: #ffd180 !important;
}

.orange.accent-2 {
  background-color: #ffab40 !important;
}

.orange-text.text-accent-2 {
  color: #ffab40 !important;
}

.orange.accent-3 {
  background-color: #ff9100 !important;
}

.orange-text.text-accent-3 {
  color: #ff9100 !important;
}

.orange.accent-4 {
  background-color: #ff6d00 !important;
}

.orange-text.text-accent-4 {
  color: #ff6d00 !important;
}

.deep-orange {
  background-color: #ff5722 !important;
}

.deep-orange-text {
  color: #ff5722 !important;
}

.deep-orange.lighten-5 {
  background-color: #fbe9e7 !important;
}

.deep-orange-text.text-lighten-5 {
  color: #fbe9e7 !important;
}

.deep-orange.lighten-4 {
  background-color: #ffccbc !important;
}

.deep-orange-text.text-lighten-4 {
  color: #ffccbc !important;
}

.deep-orange.lighten-3 {
  background-color: #ffab91 !important;
}

.deep-orange-text.text-lighten-3 {
  color: #ffab91 !important;
}

.deep-orange.lighten-2 {
  background-color: #ff8a65 !important;
}

.deep-orange-text.text-lighten-2 {
  color: #ff8a65 !important;
}

.deep-orange.lighten-1 {
  background-color: #ff7043 !important;
}

.deep-orange-text.text-lighten-1 {
  color: #ff7043 !important;
}

.deep-orange.darken-1 {
  background-color: #f4511e !important;
}

.deep-orange-text.text-darken-1 {
  color: #f4511e !important;
}

.deep-orange.darken-2 {
  background-color: #e64a19 !important;
}

.deep-orange-text.text-darken-2 {
  color: #e64a19 !important;
}

.deep-orange.darken-3 {
  background-color: #d84315 !important;
}

.deep-orange-text.text-darken-3 {
  color: #d84315 !important;
}

.deep-orange.darken-4 {
  background-color: #bf360c !important;
}

.deep-orange-text.text-darken-4 {
  color: #bf360c !important;
}

.deep-orange.accent-1 {
  background-color: #ff9e80 !important;
}

.deep-orange-text.text-accent-1 {
  color: #ff9e80 !important;
}

.deep-orange.accent-2 {
  background-color: #ff6e40 !important;
}

.deep-orange-text.text-accent-2 {
  color: #ff6e40 !important;
}

.deep-orange.accent-3 {
  background-color: #ff3d00 !important;
}

.deep-orange-text.text-accent-3 {
  color: #ff3d00 !important;
}

.deep-orange.accent-4 {
  background-color: #dd2c00 !important;
}

.deep-orange-text.text-accent-4 {
  color: #dd2c00 !important;
}

.brown {
  background-color: #795548 !important;
}

.brown-text {
  color: #795548 !important;
}

.brown.lighten-5 {
  background-color: #efebe9 !important;
}

.brown-text.text-lighten-5 {
  color: #efebe9 !important;
}

.brown.lighten-4 {
  background-color: #d7ccc8 !important;
}

.brown-text.text-lighten-4 {
  color: #d7ccc8 !important;
}

.brown.lighten-3 {
  background-color: #bcaaa4 !important;
}

.brown-text.text-lighten-3 {
  color: #bcaaa4 !important;
}

.brown.lighten-2 {
  background-color: #a1887f !important;
}

.brown-text.text-lighten-2 {
  color: #a1887f !important;
}

.brown.lighten-1 {
  background-color: #8d6e63 !important;
}

.brown-text.text-lighten-1 {
  color: #8d6e63 !important;
}

.brown.darken-1 {
  background-color: #6d4c41 !important;
}

.brown-text.text-darken-1 {
  color: #6d4c41 !important;
}

.brown.darken-2 {
  background-color: #5d4037 !important;
}

.brown-text.text-darken-2 {
  color: #5d4037 !important;
}

.brown.darken-3 {
  background-color: #4e342e !important;
}

.brown-text.text-darken-3 {
  color: #4e342e !important;
}

.brown.darken-4 {
  background-color: #3e2723 !important;
}

.brown-text.text-darken-4 {
  color: #3e2723 !important;
}

.blue-grey {
  background-color: #607d8b !important;
}

.blue-grey-text {
  color: #607d8b !important;
}

.blue-grey.lighten-5 {
  background-color: #eceff1 !important;
}

.blue-grey-text.text-lighten-5 {
  color: #eceff1 !important;
}

.blue-grey.lighten-4 {
  background-color: #cfd8dc !important;
}

.blue-grey-text.text-lighten-4 {
  color: #cfd8dc !important;
}

.blue-grey.lighten-3 {
  background-color: #b0bec5 !important;
}

.blue-grey-text.text-lighten-3 {
  color: #b0bec5 !important;
}

.blue-grey.lighten-2 {
  background-color: #90a4ae !important;
}

.blue-grey-text.text-lighten-2 {
  color: #90a4ae !important;
}

.blue-grey.lighten-1 {
  background-color: #78909c !important;
}

.blue-grey-text.text-lighten-1 {
  color: #78909c !important;
}

.blue-grey.darken-1 {
  background-color: #546e7a !important;
}

.blue-grey-text.text-darken-1 {
  color: #546e7a !important;
}

.blue-grey.darken-2 {
  background-color: #455a64 !important;
}

.blue-grey-text.text-darken-2 {
  color: #455a64 !important;
}

.blue-grey.darken-3 {
  background-color: #37474f !important;
}

.blue-grey-text.text-darken-3 {
  color: #37474f !important;
}

.blue-grey.darken-4 {
  background-color: #263238 !important;
}

.blue-grey-text.text-darken-4 {
  color: #263238 !important;
}

.grey {
  background-color: #9e9e9e !important;
}

.grey-text {
  color: #9e9e9e !important;
}

.grey.lighten-5 {
  background-color: #fafafa !important;
}

.grey-text.text-lighten-5 {
  color: #fafafa !important;
}

.grey.lighten-4 {
  background-color: #f5f5f5 !important;
}

.grey-text.text-lighten-4 {
  color: #f5f5f5 !important;
}

.grey.lighten-3 {
  background-color: #eeeeee !important;
}

.grey-text.text-lighten-3 {
  color: #eeeeee !important;
}

.grey.lighten-2 {
  background-color: #e0e0e0 !important;
}

.grey-text.text-lighten-2 {
  color: #e0e0e0 !important;
}

.grey.lighten-1 {
  background-color: #bdbdbd !important;
}

.grey-text.text-lighten-1 {
  color: #bdbdbd !important;
}

.grey.darken-1 {
  background-color: #757575 !important;
}

.grey-text.text-darken-1 {
  color: #757575 !important;
}

.grey.darken-2 {
  background-color: #616161 !important;
}

.grey-text.text-darken-2 {
  color: #616161 !important;
}

.grey.darken-3 {
  background-color: #424242 !important;
}

.grey-text.text-darken-3 {
  color: #424242 !important;
}

.grey.darken-4 {
  background-color: #212121 !important;
}

.grey-text.text-darken-4 {
  color: #212121 !important;
}

.black {
  background-color: #000000 !important;
}

.black-text {
  color: #000000 !important;
}

.white {
  background-color: #FFFFFF !important;
}

.white-text {
  color: #FFFFFF !important;
}

.transparent {
  background-color: transparent !important;
}

.transparent-text {
  color: transparent !important;
}

/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 */

html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove default margin.
 */

body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */

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

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */

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

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

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

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */

[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */

/**
 * Remove the gray background color from active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */

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

/* Text-level semantics
   ========================================================================== */

/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */

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

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */

b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */

dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */

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

/**
 * Address styling not present in IE 8/9.
 */

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

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9/10.
 */

img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */

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

/* Grouping content
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari.
 */

figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */

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

/**
 * Contain overflow in all browsers.
 */

pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */

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

/* Forms
   ========================================================================== */

/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */

/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */

button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */

button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

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

/**
 * Re-set default cursor for disabled elements.
 */

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

/**
 * Remove inner padding and border in Firefox 4+.
 */

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

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */

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

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */

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

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
 */

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

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */

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

/**
 * Define consistent border, margin, and padding.
 */

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

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */

textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */

optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

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

td,
th {
  padding: 0;
}

html {
  box-sizing: border-box;
}

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

ul:not(.browser-default) {
  padding-left: 0;
  list-style-type: none;
}

ul:not(.browser-default) li {
  list-style-type: none;
}

a {
  color: #337ab7;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

.valign-wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.clearfix {
  clear: both;
}

.z-depth-0 {
  box-shadow: none !important;
}

.z-depth-1,
nav,
.card-panel,
.card,
.toast,
.btn,
.btn-large,
.btn-floating,
.dropdown-content,
.collapsible,
.side-nav {
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
}

.z-depth-1-half,
.btn:hover,
.btn-large:hover,
.btn-floating:hover {
  box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
}

.z-depth-2 {
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
}

.z-depth-3 {
  box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.3);
}

.z-depth-4,
.modal {
  box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.3);
}

.z-depth-5 {
  box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.3);
}

.hoverable {
  transition: box-shadow .25s;
  box-shadow: 0;
}

.hoverable:hover {
  transition: box-shadow .25s;
  box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.divider {
  height: 1px;
  overflow: hidden;
  background-color: #e0e0e0;
}

blockquote {
  margin: 20px 0;
  padding-left: 1.5rem;
  border-left: 5px solid #ee6e73;
}

i {
  line-height: inherit;
}

i.left {
  float: left;
  margin-right: 15px;
}

i.right {
  float: right;
  margin-left: 15px;
}

i.tiny {
  font-size: 1rem;
}

i.small {
  font-size: 2rem;
}

i.medium {
  font-size: 4rem;
}

i.large {
  font-size: 6rem;
}

img.responsive-img,
video.responsive-video {
  max-width: 100%;
  height: auto;
}

.pagination li {
  display: inline-block;
  border-radius: 2px;
  text-align: center;
  vertical-align: top;
  height: 30px;
}

.pagination li a {
  color: #444;
  display: inline-block;
  font-size: 1.2rem;
  padding: 0 10px;
  line-height: 30px;
}

.pagination li.active a {
  color: #fff;
}

.pagination li.active {
  background-color: #ee6e73;
}

.pagination li.disabled a {
  cursor: default;
  color: #999;
}

.pagination li i {
  font-size: 2rem;
}

.pagination li.pages ul li {
  display: inline-block;
  float: none;
}

@media only screen and (max-width: 992px) {
  .pagination {
    width: 100%;
  }

  .pagination li.prev,
  .pagination li.next {
    width: 10%;
  }

  .pagination li.pages {
    width: 80%;
    overflow: hidden;
    white-space: nowrap;
  }
}

.breadcrumb {
  font-size: 18px;
  color: rgba(255, 255, 255, 0.7);
}

.breadcrumb i,
.breadcrumb [class^="mdi-"],
.breadcrumb [class*="mdi-"],
.breadcrumb i.material-icons {
  display: inline-block;
  float: left;
  font-size: 24px;
}

.breadcrumb:before {
  content: '\E5CC';
  color: rgba(255, 255, 255, 0.7);
  vertical-align: top;
  display: inline-block;
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 25px;
  margin: 0 10px 0 8px;
  -webkit-font-smoothing: antialiased;
}

.breadcrumb:first-child:before {
  display: none;
}

.breadcrumb:last-child {
  color: #fff;
}

.parallax-container {
  position: relative;
  overflow: hidden;
  height: 500px;
}

.parallax {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}

.parallax img {
  display: none;
  position: absolute;
  left: 50%;
  bottom: 0;
  min-width: 100%;
  min-height: 100%;
  transform: translate3d(0, 0, 0);
  transform: translateX(-50%);
}

.pin-top,
.pin-bottom {
  position: relative;
}

.pinned {
  position: fixed !important;
}

/*********************
  Transition Classes
**********************/

ul.staggered-list li {
  opacity: 0;
}

.fade-in {
  opacity: 0;
  transform-origin: 0 50%;
}

/*********************
  Media Query Classes
**********************/

@media only screen and (max-width: 600px) {
  .hide-on-small-only,
  .hide-on-small-and-down {
    display: none !important;
  }
}

@media only screen and (max-width: 992px) {
  .hide-on-med-and-down {
    display: none !important;
  }
}

@media only screen and (min-width: 601px) {
  .hide-on-med-and-up {
    display: none !important;
  }
}

@media only screen and (min-width: 600px) and (max-width: 992px) {
  .hide-on-med-only {
    display: none !important;
  }
}

@media only screen and (min-width: 993px) {
  .hide-on-large-only {
    display: none !important;
  }
}

@media only screen and (min-width: 993px) {
  .show-on-large {
    display: block !important;
  }
}

@media only screen and (min-width: 600px) and (max-width: 992px) {
  .show-on-medium {
    display: block !important;
  }
}

@media only screen and (max-width: 600px) {
  .show-on-small {
    display: block !important;
  }
}

@media only screen and (min-width: 601px) {
  .show-on-medium-and-up {
    display: block !important;
  }
}

@media only screen and (max-width: 992px) {
  .show-on-medium-and-down {
    display: block !important;
  }
}

@media only screen and (max-width: 600px) {
  .center-on-small-only {
    text-align: center;
  }
}

.page-footer {
  padding-top: 20px;
  background-color: #ee6e73;
}

.page-footer .footer-copyright {
  overflow: hidden;
  min-height: 50px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  padding: 10px 0px;
  color: rgba(255, 255, 255, 0.8);
  background-color: rgba(51, 51, 51, 0.08);
}

table,
th,
td {
  border: none;
}

table {
  width: 100%;
  display: table;
}

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

table.striped > tbody > tr:nth-child(odd) {
  background-color: #f2f2f2;
}

table.striped > tbody > tr > td {
  border-radius: 0;
}

table.highlight > tbody > tr {
  transition: background-color .25s ease;
}

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

table.centered thead tr th,
table.centered tbody tr td {
  text-align: center;
}

thead {
  border-bottom: 1px solid #ddd;
}

td,
th {
  padding: 15px 5px;
  display: table-cell;
  text-align: left;
  vertical-align: middle;
  border-radius: 2px;
}

@media only screen and (max-width: 992px) {
  table.responsive-table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    display: block;
    position: relative;
    /* sort out borders */
  }

  table.responsive-table td:empty:before {
    content: '\00a0';
  }

  table.responsive-table th,
  table.responsive-table td {
    margin: 0;
    vertical-align: top;
  }

  table.responsive-table th {
    text-align: left;
  }

  table.responsive-table thead {
    display: block;
    float: left;
  }

  table.responsive-table thead tr {
    display: block;
    padding: 0 10px 0 0;
  }

  table.responsive-table thead tr th::before {
    content: "\00a0";
  }

  table.responsive-table tbody {
    display: block;
    width: auto;
    position: relative;
    overflow-x: auto;
    white-space: nowrap;
  }

  table.responsive-table tbody tr {
    display: inline-block;
    vertical-align: top;
  }

  table.responsive-table th {
    display: block;
    text-align: right;
  }

  table.responsive-table td {
    display: block;
    min-height: 1.25em;
    text-align: left;
  }

  table.responsive-table tr {
    padding: 0 10px;
  }

  table.responsive-table thead {
    border: 0;
    border-right: 1px solid #ddd;
  }

  table.responsive-table.bordered th {
    border-bottom: 0;
    border-left: 0;
  }

  table.responsive-table.bordered td {
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
  }

  table.responsive-table.bordered tr {
    border: 0;
  }

  table.responsive-table.bordered tbody tr {
    border-right: 1px solid #ddd;
  }
}

.collection {
  margin: 0.5rem 0 1rem 0;
  border: 1px solid #e0e0e0;
  border-radius: 2px;
  overflow: hidden;
  position: relative;
}

.collection .collection-item {
  background-color: #fff;
  line-height: 1.5rem;
  padding: 10px 20px;
  margin: 0;
  border-bottom: 1px solid #e0e0e0;
}

.collection .collection-item.avatar {
  min-height: 84px;
  padding-left: 72px;
  position: relative;
}

.collection .collection-item.avatar .circle {
  position: absolute;
  width: 42px;
  height: 42px;
  overflow: hidden;
  left: 15px;
  display: inline-block;
  vertical-align: middle;
}

.collection .collection-item.avatar i.circle {
  font-size: 18px;
  line-height: 42px;
  color: #fff;
  background-color: #999;
  text-align: center;
}

.collection .collection-item.avatar .title {
  font-size: 16px;
}

.collection .collection-item.avatar p {
  margin: 0;
}

.collection .collection-item.avatar .secondary-content {
  position: absolute;
  top: 16px;
  right: 16px;
}

.collection .collection-item:last-child {
  border-bottom: none;
}

.collection .collection-item.active {
  background-color: #26a69a;
  color: #eafaf9;
}

.collection .collection-item.active .secondary-content {
  color: #fff;
}

.collection a.collection-item {
  display: block;
  transition: .25s;
  color: #26a69a;
}

.collection a.collection-item:not(.active):hover {
  background-color: #ddd;
}

.collection.with-header .collection-header {
  background-color: #fff;
  border-bottom: 1px solid #e0e0e0;
  padding: 10px 20px;
}

.collection.with-header .collection-item {
  padding-left: 30px;
}

.collection.with-header .collection-item.avatar {
  padding-left: 72px;
}

.secondary-content {
  float: right;
  color: #26a69a;
}

.collapsible .collection {
  margin: 0;
  border: none;
}

.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}

.video-container iframe,
.video-container object,
.video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.progress {
  position: relative;
  height: 4px;
  display: block;
  width: 100%;
  background-color: white;
  border-radius: 2px;
  margin: 0.5rem 0 1rem 0;
  overflow: hidden;
}

.progress .determinate {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  background-color: #fff;
  transition: width .3s linear;
}

.progress .indeterminate {
  background-color: #fff;
}

.progress .indeterminate:before {
  content: '';
  position: absolute;
  background-color: inherit;
  top: 0;
  left: 0;
  bottom: 0;
  will-change: left, right;
  animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
}

.progress .indeterminate:after {
  content: '';
  position: absolute;
  background-color: inherit;
  top: 0;
  left: 0;
  bottom: 0;
  will-change: left, right;
  animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
  animation-delay: 1.15s;
}

@keyframes indeterminate {
  0% {
    left: -35%;
    right: 100%;
  }

  60% {
    left: 100%;
    right: -90%;
  }

  100% {
    left: 100%;
    right: -90%;
  }
}

@keyframes indeterminate-short {
  0% {
    left: -200%;
    right: 100%;
  }

  60% {
    left: 107%;
    right: -8%;
  }

  100% {
    left: 107%;
    right: -8%;
  }
}

/*******************
  Utility Classes
*******************/

.hide {
  display: none !important;
}

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

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

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

.left {
  float: left !important;
}

.right {
  float: right !important;
}

.no-select,
input[type=range],
input[type=range] + .thumb {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.circle {
  border-radius: 50%;
}

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

.truncate {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.no-padding {
  padding: 0 !important;
}

span.badge {
  min-width: 3rem;
  padding: 0 6px;
  margin-left: 14px;
  text-align: center;
  font-size: 1rem;
  line-height: 22px;
  height: 22px;
  color: #757575;
  float: right;
  box-sizing: border-box;
}

span.badge.new {
  font-weight: 300;
  font-size: 0.8rem;
  color: #fff;
  background-color: #26a69a;
  border-radius: 2px;
}

span.badge.new:after {
  content: " new";
}

span.badge[data-badge-caption]::after {
  content: " " attr(data-badge-caption);
}

nav ul a span.badge {
  display: inline-block;
  float: none;
  margin-left: 4px;
  line-height: 22px;
  height: 22px;
}

.collection-item span.badge {
  margin-top: calc(0.75rem - 11px);
}

.collapsible span.badge {
  margin-top: calc(1.5rem - 11px);
}

.side-nav span.badge {
  margin-top: calc(24px - 11px);
}

/* This is needed for some mobile phones to display the Google Icon font properly */

.material-icons {
  text-rendering: optimizeLegibility;
  -webkit-font-feature-settings: 'liga';
          font-feature-settings: 'liga';
}

.container {
  margin: 0 auto;
  max-width: 1280px;
  width: 90%;
}

@media only screen and (min-width: 601px) {
  .container {
    width: 85%;
  }
}

@media only screen and (min-width: 993px) {
  .container {
    width: 70%;
  }
}

.container .row {
  margin-left: -0.75rem;
  margin-right: -0.75rem;
}

.section {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.section.no-pad {
  padding: 0;
}

.section.no-pad-bot {
  padding-bottom: 0;
}

.section.no-pad-top {
  padding-top: 0;
}

.row {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
}

.row:after {
  content: "";
  display: table;
  clear: both;
}

.row .col {
  float: left;
  box-sizing: border-box;
  padding: 0 0.75rem;
  min-height: 1px;
}

.row .col[class*="push-"],
.row .col[class*="pull-"] {
  position: relative;
}

.row .col.s1 {
  width: 8.33333333%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.s2 {
  width: 16.66666667%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.s3 {
  width: 25%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.s4 {
  width: 33.33333333%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.s5 {
  width: 41.66666667%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.s6 {
  width: 50%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.s7 {
  width: 58.33333333%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.s8 {
  width: 66.66666667%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.s9 {
  width: 75%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.s10 {
  width: 83.33333333%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.s11 {
  width: 91.66666667%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.s12 {
  width: 100%;
  margin-left: auto;
  left: auto;
  right: auto;
}

.row .col.offset-s1 {
  margin-left: 8.33333333%;
}

.row .col.pull-s1 {
  right: 8.33333333%;
}

.row .col.push-s1 {
  left: 8.33333333%;
}

.row .col.offset-s2 {
  margin-left: 16.66666667%;
}

.row .col.pull-s2 {
  right: 16.66666667%;
}

.row .col.push-s2 {
  left: 16.66666667%;
}

.row .col.offset-s3 {
  margin-left: 25%;
}

.row .col.pull-s3 {
  right: 25%;
}

.row .col.push-s3 {
  left: 25%;
}

.row .col.offset-s4 {
  margin-left: 33.33333333%;
}

.row .col.pull-s4 {
  right: 33.33333333%;
}

.row .col.push-s4 {
  left: 33.33333333%;
}

.row .col.offset-s5 {
  margin-left: 41.66666667%;
}

.row .col.pull-s5 {
  right: 41.66666667%;
}

.row .col.push-s5 {
  left: 41.66666667%;
}

.row .col.offset-s6 {
  margin-left: 50%;
}

.row .col.pull-s6 {
  right: 50%;
}

.row .col.push-s6 {
  left: 50%;
}

.row .col.offset-s7 {
  margin-left: 58.33333333%;
}

.row .col.pull-s7 {
  right: 58.33333333%;
}

.row .col.push-s7 {
  left: 58.33333333%;
}

.row .col.offset-s8 {
  margin-left: 66.66666667%;
}

.row .col.pull-s8 {
  right: 66.66666667%;
}

.row .col.push-s8 {
  left: 66.66666667%;
}

.row .col.offset-s9 {
  margin-left: 75%;
}

.row .col.pull-s9 {
  right: 75%;
}

.row .col.push-s9 {
  left: 75%;
}

.row .col.offset-s10 {
  margin-left: 83.33333333%;
}

.row .col.pull-s10 {
  right: 83.33333333%;
}

.row .col.push-s10 {
  left: 83.33333333%;
}

.row .col.offset-s11 {
  margin-left: 91.66666667%;
}

.row .col.pull-s11 {
  right: 91.66666667%;
}

.row .col.push-s11 {
  left: 91.66666667%;
}

.row .col.offset-s12 {
  margin-left: 100%;
}

.row .col.pull-s12 {
  right: 100%;
}

.row .col.push-s12 {
  left: 100%;
}

@media only screen and (min-width: 601px) {
  .row .col.m1 {
    width: 8.33333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.m2 {
    width: 16.66666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.m3 {
    width: 25%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.m4 {
    width: 33.33333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.m5 {
    width: 41.66666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.m6 {
    width: 50%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.m7 {
    width: 58.33333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.m8 {
    width: 66.66666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.m9 {
    width: 75%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.m10 {
    width: 83.33333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.m11 {
    width: 91.66666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.m12 {
    width: 100%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.offset-m1 {
    margin-left: 8.33333333%;
  }

  .row .col.pull-m1 {
    right: 8.33333333%;
  }

  .row .col.push-m1 {
    left: 8.33333333%;
  }

  .row .col.offset-m2 {
    margin-left: 16.66666667%;
  }

  .row .col.pull-m2 {
    right: 16.66666667%;
  }

  .row .col.push-m2 {
    left: 16.66666667%;
  }

  .row .col.offset-m3 {
    margin-left: 25%;
  }

  .row .col.pull-m3 {
    right: 25%;
  }

  .row .col.push-m3 {
    left: 25%;
  }

  .row .col.offset-m4 {
    margin-left: 33.33333333%;
  }

  .row .col.pull-m4 {
    right: 33.33333333%;
  }

  .row .col.push-m4 {
    left: 33.33333333%;
  }

  .row .col.offset-m5 {
    margin-left: 41.66666667%;
  }

  .row .col.pull-m5 {
    right: 41.66666667%;
  }

  .row .col.push-m5 {
    left: 41.66666667%;
  }

  .row .col.offset-m6 {
    margin-left: 50%;
  }

  .row .col.pull-m6 {
    right: 50%;
  }

  .row .col.push-m6 {
    left: 50%;
  }

  .row .col.offset-m7 {
    margin-left: 58.33333333%;
  }

  .row .col.pull-m7 {
    right: 58.33333333%;
  }

  .row .col.push-m7 {
    left: 58.33333333%;
  }

  .row .col.offset-m8 {
    margin-left: 66.66666667%;
  }

  .row .col.pull-m8 {
    right: 66.66666667%;
  }

  .row .col.push-m8 {
    left: 66.66666667%;
  }

  .row .col.offset-m9 {
    margin-left: 75%;
  }

  .row .col.pull-m9 {
    right: 75%;
  }

  .row .col.push-m9 {
    left: 75%;
  }

  .row .col.offset-m10 {
    margin-left: 83.33333333%;
  }

  .row .col.pull-m10 {
    right: 83.33333333%;
  }

  .row .col.push-m10 {
    left: 83.33333333%;
  }

  .row .col.offset-m11 {
    margin-left: 91.66666667%;
  }

  .row .col.pull-m11 {
    right: 91.66666667%;
  }

  .row .col.push-m11 {
    left: 91.66666667%;
  }

  .row .col.offset-m12 {
    margin-left: 100%;
  }

  .row .col.pull-m12 {
    right: 100%;
  }

  .row .col.push-m12 {
    left: 100%;
  }
}

@media only screen and (min-width: 993px) {
  .row .col.l1 {
    width: 8.33333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.l2 {
    width: 16.66666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.l3 {
    width: 25%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.l4 {
    width: 33.33333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.l5 {
    width: 41.66666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.l6 {
    width: 50%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.l7 {
    width: 58.33333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.l8 {
    width: 66.66666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.l9 {
    width: 75%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.l10 {
    width: 83.33333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.l11 {
    width: 91.66666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.l12 {
    width: 100%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.offset-l1 {
    margin-left: 8.33333333%;
  }

  .row .col.pull-l1 {
    right: 8.33333333%;
  }

  .row .col.push-l1 {
    left: 8.33333333%;
  }

  .row .col.offset-l2 {
    margin-left: 16.66666667%;
  }

  .row .col.pull-l2 {
    right: 16.66666667%;
  }

  .row .col.push-l2 {
    left: 16.66666667%;
  }

  .row .col.offset-l3 {
    margin-left: 25%;
  }

  .row .col.pull-l3 {
    right: 25%;
  }

  .row .col.push-l3 {
    left: 25%;
  }

  .row .col.offset-l4 {
    margin-left: 33.33333333%;
  }

  .row .col.pull-l4 {
    right: 33.33333333%;
  }

  .row .col.push-l4 {
    left: 33.33333333%;
  }

  .row .col.offset-l5 {
    margin-left: 41.66666667%;
  }

  .row .col.pull-l5 {
    right: 41.66666667%;
  }

  .row .col.push-l5 {
    left: 41.66666667%;
  }

  .row .col.offset-l6 {
    margin-left: 50%;
  }

  .row .col.pull-l6 {
    right: 50%;
  }

  .row .col.push-l6 {
    left: 50%;
  }

  .row .col.offset-l7 {
    margin-left: 58.33333333%;
  }

  .row .col.pull-l7 {
    right: 58.33333333%;
  }

  .row .col.push-l7 {
    left: 58.33333333%;
  }

  .row .col.offset-l8 {
    margin-left: 66.66666667%;
  }

  .row .col.pull-l8 {
    right: 66.66666667%;
  }

  .row .col.push-l8 {
    left: 66.66666667%;
  }

  .row .col.offset-l9 {
    margin-left: 75%;
  }

  .row .col.pull-l9 {
    right: 75%;
  }

  .row .col.push-l9 {
    left: 75%;
  }

  .row .col.offset-l10 {
    margin-left: 83.33333333%;
  }

  .row .col.pull-l10 {
    right: 83.33333333%;
  }

  .row .col.push-l10 {
    left: 83.33333333%;
  }

  .row .col.offset-l11 {
    margin-left: 91.66666667%;
  }

  .row .col.pull-l11 {
    right: 91.66666667%;
  }

  .row .col.push-l11 {
    left: 91.66666667%;
  }

  .row .col.offset-l12 {
    margin-left: 100%;
  }

  .row .col.pull-l12 {
    right: 100%;
  }

  .row .col.push-l12 {
    left: 100%;
  }
}

@media only screen and (min-width: 1201px) {
  .row .col.xl1 {
    width: 8.33333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.xl2 {
    width: 16.66666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.xl3 {
    width: 25%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.xl4 {
    width: 33.33333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.xl5 {
    width: 41.66666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.xl6 {
    width: 50%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.xl7 {
    width: 58.33333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.xl8 {
    width: 66.66666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.xl9 {
    width: 75%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.xl10 {
    width: 83.33333333%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.xl11 {
    width: 91.66666667%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.xl12 {
    width: 100%;
    margin-left: auto;
    left: auto;
    right: auto;
  }

  .row .col.offset-xl1 {
    margin-left: 8.33333333%;
  }

  .row .col.pull-xl1 {
    right: 8.33333333%;
  }

  .row .col.push-xl1 {
    left: 8.33333333%;
  }

  .row .col.offset-xl2 {
    margin-left: 16.66666667%;
  }

  .row .col.pull-xl2 {
    right: 16.66666667%;
  }

  .row .col.push-xl2 {
    left: 16.66666667%;
  }

  .row .col.offset-xl3 {
    margin-left: 25%;
  }

  .row .col.pull-xl3 {
    right: 25%;
  }

  .row .col.push-xl3 {
    left: 25%;
  }

  .row .col.offset-xl4 {
    margin-left: 33.33333333%;
  }

  .row .col.pull-xl4 {
    right: 33.33333333%;
  }

  .row .col.push-xl4 {
    left: 33.33333333%;
  }

  .row .col.offset-xl5 {
    margin-left: 41.66666667%;
  }

  .row .col.pull-xl5 {
    right: 41.66666667%;
  }

  .row .col.push-xl5 {
    left: 41.66666667%;
  }

  .row .col.offset-xl6 {
    margin-left: 50%;
  }

  .row .col.pull-xl6 {
    right: 50%;
  }

  .row .col.push-xl6 {
    left: 50%;
  }

  .row .col.offset-xl7 {
    margin-left: 58.33333333%;
  }

  .row .col.pull-xl7 {
    right: 58.33333333%;
  }

  .row .col.push-xl7 {
    left: 58.33333333%;
  }

  .row .col.offset-xl8 {
    margin-left: 66.66666667%;
  }

  .row .col.pull-xl8 {
    right: 66.66666667%;
  }

  .row .col.push-xl8 {
    left: 66.66666667%;
  }

  .row .col.offset-xl9 {
    margin-left: 75%;
  }

  .row .col.pull-xl9 {
    right: 75%;
  }

  .row .col.push-xl9 {
    left: 75%;
  }

  .row .col.offset-xl10 {
    margin-left: 83.33333333%;
  }

  .row .col.pull-xl10 {
    right: 83.33333333%;
  }

  .row .col.push-xl10 {
    left: 83.33333333%;
  }

  .row .col.offset-xl11 {
    margin-left: 91.66666667%;
  }

  .row .col.pull-xl11 {
    right: 91.66666667%;
  }

  .row .col.push-xl11 {
    left: 91.66666667%;
  }

  .row .col.offset-xl12 {
    margin-left: 100%;
  }

  .row .col.pull-xl12 {
    right: 100%;
  }

  .row .col.push-xl12 {
    left: 100%;
  }
}

nav {
  color: #fff;
  background-color: #ee6e73;
  width: 100%;
  height: 56px;
  line-height: 56px;
}

nav.nav-extended {
  height: auto;
}

nav.nav-extended .nav-wrapper {
  min-height: 56px;
  height: auto;
}

nav.nav-extended .nav-content {
  position: relative;
  line-height: normal;
}

nav a {
  color: #fff;
}

nav i,
nav [class^="mdi-"],
nav [class*="mdi-"],
nav i.material-icons {
  display: block;
  font-size: 24px;
  height: 56px;
  line-height: 56px;
}

nav .nav-wrapper {
  position: relative;
  height: 100%;
}

@media only screen and (min-width: 993px) {
  nav a.button-collapse {
    display: none;
  }
}

nav .button-collapse {
  float: left;
  position: relative;
  z-index: 1;
  height: 56px;
  margin: 0 18px;
}

nav .button-collapse i {
  height: 56px;
  line-height: 56px;
}

nav .brand-logo {
  position: absolute;
  color: #fff;
  display: inline-block;
  font-size: 2.1rem;
  padding: 0;
  white-space: nowrap;
}

nav .brand-logo.center {
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (max-width: 992px) {
  nav .brand-logo {
    left: 50%;
    transform: translateX(-50%);
  }

  nav .brand-logo.left,
  nav .brand-logo.right {
    padding: 0;
    transform: none;
  }

  nav .brand-logo.left {
    left: 0.5rem;
  }

  nav .brand-logo.right {
    right: 0.5rem;
    left: auto;
  }
}

nav .brand-logo.right {
  right: 0.5rem;
  padding: 0;
}

nav .brand-logo i,
nav .brand-logo [class^="mdi-"],
nav .brand-logo [class*="mdi-"],
nav .brand-logo i.material-icons {
  float: left;
  margin-right: 15px;
}

nav .nav-title {
  display: inline-block;
  font-size: 32px;
  padding: 28px 0;
}

nav ul {
  margin: 0;
}

nav ul li {
  transition: background-color .3s;
  float: left;
  padding: 0;
}

nav ul li.active {
  background-color: rgba(0, 0, 0, 0.1);
}

nav ul a {
  transition: background-color .3s;
  font-size: 1rem;
  color: #fff;
  display: block;
  padding: 0 15px;
  cursor: pointer;
}

nav ul a.btn,
nav ul a.btn-large,
nav ul a.btn-large,
nav ul a.btn-flat,
nav ul a.btn-floating {
  margin-top: -2px;
  margin-left: 15px;
  margin-right: 15px;
}

nav ul a.btn > .material-icons,
nav ul a.btn-large > .material-icons,
nav ul a.btn-large > .material-icons,
nav ul a.btn-flat > .material-icons,
nav ul a.btn-floating > .material-icons {
  height: inherit;
  line-height: inherit;
}

nav ul a:hover {
  background-color: rgba(0, 0, 0, 0.1);
}

nav ul.left {
  float: left;
}

nav form {
  height: 100%;
}

nav .input-field {
  margin: 0;
  height: 100%;
}

nav .input-field input {
  height: 100%;
  font-size: 1.2rem;
  border: none;
  padding-left: 2rem;
}

nav .input-field input:focus,
nav .input-field input[type=text]:valid,
nav .input-field input[type=password]:valid,
nav .input-field input[type=email]:valid,
nav .input-field input[type=url]:valid,
nav .input-field input[type=date]:valid {
  border: none;
  box-shadow: none;
}

nav .input-field label {
  top: 0;
  left: 0;
}

nav .input-field label i {
  color: rgba(255, 255, 255, 0.7);
  transition: color .3s;
}

nav .input-field label.active i {
  color: #fff;
}

.navbar-fixed {
  position: relative;
  height: 56px;
  z-index: 997;
}

.navbar-fixed nav {
  position: fixed;
}

@media only screen and (min-width: 601px) {
  nav.nav-extended .nav-wrapper {
    min-height: 50px;
  }

  nav,
  nav .nav-wrapper i,
  nav a.button-collapse,
  nav a.button-collapse i {
    height: 50px;
    line-height: 50px;
  }

  .navbar-fixed {
    height: 50px;
  }
}

@font-face {
  font-family: "Roboto";
  src: local(Roboto Thin), url(/fonts/Roboto-Thin.woff2?1f35e6a11d27d2e10d28946d42332dc5) format("woff2"), url(/fonts/Roboto-Thin.woff?44b78f142603eb69f593ed4002ed7a4a) format("woff");
  font-weight: 100;
}

@font-face {
  font-family: "Roboto";
  src: local(Roboto Light), url(/fonts/Roboto-Light.woff2?3c37aa69cd77e6a53a067170fa8fe2e9) format("woff2"), url(/fonts/Roboto-Light.woff?ea36cd9a0e9eee97012a67b8a4570d7b) format("woff");
  font-weight: 300;
}

@font-face {
  font-family: "Roboto";
  src: local(Roboto Regular), url(/fonts/Roboto-Regular.woff2?5136cbe62a63604402f2fedb97f246f8) format("woff2"), url(/fonts/Roboto-Regular.woff?3cf6adf61054c328b1b0ddcd8f9ce24d) format("woff");
  font-weight: 400;
}

@font-face {
  font-family: "Roboto";
  src: local(Roboto Medium), url(/fonts/Roboto-Medium.woff2?1561b424aaef2f704bbd89155b3ce514) format("woff2"), url(/fonts/Roboto-Medium.woff?cf4d60bc0b1d4b2314085919a00e1724) format("woff");
  font-weight: 500;
}

@font-face {
  font-family: "Roboto";
  src: local(Roboto Bold), url(/fonts/Roboto-Bold.woff2?c0f1e4a4fdfb8048c72e86aadb2a247d) format("woff2"), url(/fonts/Roboto-Bold.woff?eed9aab5449cc9c8430d7d258108f602) format("woff");
  font-weight: 700;
}

a {
  text-decoration: none;
}

html {
  line-height: 1.5;
  font-family: "Roboto", sans-serif;
  font-weight: normal;
  color: rgba(0, 0, 0, 0.87);
}

@media only screen and (min-width: 0) {
  html {
    font-size: 14px;
  }
}

@media only screen and (min-width: 992px) {
  html {
    font-size: 14.5px;
  }
}

@media only screen and (min-width: 1200px) {
  html {
    font-size: 15px;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
  line-height: 1.1;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  font-weight: inherit;
}

h1 {
  font-size: 4.2rem;
  line-height: 110%;
  margin: 2.1rem 0 1.68rem 0;
}

h2 {
  font-size: 3.56rem;
  line-height: 110%;
  margin: 1.78rem 0 1.424rem 0;
}

h3 {
  font-size: 2.92rem;
  line-height: 110%;
  margin: 1.46rem 0 1.168rem 0;
}

h4 {
  font-size: 2.28rem;
  line-height: 110%;
  margin: 1.14rem 0 0.912rem 0;
}

h5 {
  font-size: 1.64rem;
  line-height: 110%;
  margin: 0.82rem 0 0.656rem 0;
}

h6 {
  font-size: 1rem;
  line-height: 110%;
  margin: 0.5rem 0 0.4rem 0;
}

em {
  font-style: italic;
}

strong {
  font-weight: 500;
}

small {
  font-size: 75%;
}

.light,
.page-footer .footer-copyright {
  font-weight: 300;
}

.thin {
  font-weight: 200;
}

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

@media only screen and (min-width: 360px) {
  .flow-text {
    font-size: 1.2rem;
  }
}

@media only screen and (min-width: 390px) {
  .flow-text {
    font-size: 1.224rem;
  }
}

@media only screen and (min-width: 420px) {
  .flow-text {
    font-size: 1.248rem;
  }
}

@media only screen and (min-width: 450px) {
  .flow-text {
    font-size: 1.272rem;
  }
}

@media only screen and (min-width: 480px) {
  .flow-text {
    font-size: 1.296rem;
  }
}

@media only screen and (min-width: 510px) {
  .flow-text {
    font-size: 1.32rem;
  }
}

@media only screen and (min-width: 540px) {
  .flow-text {
    font-size: 1.344rem;
  }
}

@media only screen and (min-width: 570px) {
  .flow-text {
    font-size: 1.368rem;
  }
}

@media only screen and (min-width: 600px) {
  .flow-text {
    font-size: 1.392rem;
  }
}

@media only screen and (min-width: 630px) {
  .flow-text {
    font-size: 1.416rem;
  }
}

@media only screen and (min-width: 660px) {
  .flow-text {
    font-size: 1.44rem;
  }
}

@media only screen and (min-width: 690px) {
  .flow-text {
    font-size: 1.464rem;
  }
}

@media only screen and (min-width: 720px) {
  .flow-text {
    font-size: 1.488rem;
  }
}

@media only screen and (min-width: 750px) {
  .flow-text {
    font-size: 1.512rem;
  }
}

@media only screen and (min-width: 780px) {
  .flow-text {
    font-size: 1.536rem;
  }
}

@media only screen and (min-width: 810px) {
  .flow-text {
    font-size: 1.56rem;
  }
}

@media only screen and (min-width: 840px) {
  .flow-text {
    font-size: 1.584rem;
  }
}

@media only screen and (min-width: 870px) {
  .flow-text {
    font-size: 1.608rem;
  }
}

@media only screen and (min-width: 900px) {
  .flow-text {
    font-size: 1.632rem;
  }
}

@media only screen and (min-width: 930px) {
  .flow-text {
    font-size: 1.656rem;
  }
}

@media only screen and (min-width: 960px) {
  .flow-text {
    font-size: 1.68rem;
  }
}

@media only screen and (max-width: 360px) {
  .flow-text {
    font-size: 1.2rem;
  }
}

.scale-transition {
  transition: transform 0.3s cubic-bezier(0.53, 0.01, 0.36, 1.63) !important;
}

.scale-transition.scale-out {
  transform: scale(0);
  transition: transform .2s !important;
}

.scale-transition.scale-in {
  transform: scale(1);
}

.card-panel {
  transition: box-shadow .25s;
  padding: 24px;
  margin: 0.5rem 0 1rem 0;
  border-radius: 2px;
  background-color: #fff;
}

.card {
  position: relative;
  margin: 0.5rem 0 1rem 0;
  background-color: #fff;
  transition: box-shadow .25s;
  border-radius: 2px;
}

.card .card-title {
  font-size: 24px;
  font-weight: 300;
}

.card .card-title.activator {
  cursor: pointer;
}

.card.small,
.card.medium,
.card.large {
  position: relative;
}

.card.small .card-image,
.card.medium .card-image,
.card.large .card-image {
  max-height: 60%;
  overflow: hidden;
}

.card.small .card-image + .card-content,
.card.medium .card-image + .card-content,
.card.large .card-image + .card-content {
  max-height: 40%;
}

.card.small .card-content,
.card.medium .card-content,
.card.large .card-content {
  max-height: 100%;
  overflow: hidden;
}

.card.small .card-action,
.card.medium .card-action,
.card.large .card-action {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.card.small {
  height: 300px;
}

.card.medium {
  height: 400px;
}

.card.large {
  height: 500px;
}

.card.horizontal {
  display: -ms-flexbox;
  display: flex;
}

.card.horizontal.small .card-image,
.card.horizontal.medium .card-image,
.card.horizontal.large .card-image {
  height: 100%;
  max-height: none;
  overflow: visible;
}

.card.horizontal.small .card-image img,
.card.horizontal.medium .card-image img,
.card.horizontal.large .card-image img {
  height: 100%;
}

.card.horizontal .card-image {
  max-width: 50%;
}

.card.horizontal .card-image img {
  border-radius: 2px 0 0 2px;
  max-width: 100%;
  width: auto;
}

.card.horizontal .card-stacked {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex: 1;
      flex: 1;
  position: relative;
}

.card.horizontal .card-stacked .card-content {
  -ms-flex-positive: 1;
      flex-grow: 1;
}

.card.sticky-action .card-action {
  z-index: 2;
}

.card.sticky-action .card-reveal {
  z-index: 1;
  padding-bottom: 64px;
}

.card .card-image {
  position: relative;
}

.card .card-image img {
  display: block;
  border-radius: 2px 2px 0 0;
  position: relative;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
}

.card .card-image .card-title {
  color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  max-width: 100%;
  padding: 24px;
}

.card .card-content {
  padding: 24px;
  border-radius: 0 0 2px 2px;
}

.card .card-content p {
  margin: 0;
  color: inherit;
}

.card .card-content .card-title {
  display: block;
  line-height: 32px;
  margin-bottom: 8px;
}

.card .card-content .card-title i {
  line-height: 32px;
}

.card .card-action {
  position: relative;
  background-color: inherit;
  border-top: 1px solid rgba(160, 160, 160, 0.2);
  padding: 16px 24px;
}

.card .card-action:last-child {
  border-radius: 0 0 2px 2px;
}

.card .card-action a:not(.btn):not(.btn-large):not(.btn-large):not(.btn-floating) {
  color: #ffab40;
  margin-right: 24px;
  transition: color .3s ease;
  text-transform: uppercase;
}

.card .card-action a:not(.btn):not(.btn-large):not(.btn-large):not(.btn-floating):hover {
  color: #ffd8a6;
}

.card .card-reveal {
  padding: 24px;
  position: absolute;
  background-color: #fff;
  width: 100%;
  overflow-y: auto;
  left: 0;
  top: 100%;
  height: 100%;
  z-index: 3;
  display: none;
}

.card .card-reveal .card-title {
  cursor: pointer;
  display: block;
}

#toast-container {
  display: block;
  position: fixed;
  z-index: 10000;
}

@media only screen and (max-width: 600px) {
  #toast-container {
    min-width: 100%;
    bottom: 0%;
  }
}

@media only screen and (min-width: 601px) and (max-width: 992px) {
  #toast-container {
    left: 5%;
    bottom: 7%;
    max-width: 90%;
  }
}

@media only screen and (min-width: 993px) {
  #toast-container {
    top: 10%;
    right: 7%;
    max-width: 86%;
  }
}

.toast {
  border-radius: 2px;
  top: 35px;
  width: auto;
  clear: both;
  margin-top: 10px;
  position: relative;
  max-width: 100%;
  height: auto;
  min-height: 48px;
  line-height: 1.5em;
  word-break: break-all;
  background-color: #323232;
  padding: 10px 25px;
  font-size: 1.1rem;
  font-weight: 300;
  color: #fff;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.toast .btn,
.toast .btn-large,
.toast .btn-flat {
  margin: 0;
  margin-left: 3rem;
}

.toast.rounded {
  border-radius: 24px;
}

@media only screen and (max-width: 600px) {
  .toast {
    width: 100%;
    border-radius: 0;
  }
}

@media only screen and (min-width: 601px) and (max-width: 992px) {
  .toast {
    float: left;
  }
}

@media only screen and (min-width: 993px) {
  .toast {
    float: right;
  }
}

.tabs {
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  height: 48px;
  width: 100%;
  background-color: #fff;
  margin: 0 auto;
  white-space: nowrap;
}

.tabs.tabs-transparent {
  background-color: transparent;
}

.tabs.tabs-transparent .tab a,
.tabs.tabs-transparent .tab.disabled a,
.tabs.tabs-transparent .tab.disabled a:hover {
  color: rgba(255, 255, 255, 0.7);
}

.tabs.tabs-transparent .tab a:hover,
.tabs.tabs-transparent .tab a.active {
  color: #fff;
}

.tabs.tabs-transparent .indicator {
  background-color: #fff;
}

.tabs.tabs-fixed-width {
  display: -ms-flexbox;
  display: flex;
}

.tabs.tabs-fixed-width .tab {
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.tabs .tab {
  display: inline-block;
  text-align: center;
  line-height: 48px;
  height: 48px;
  padding: 0;
  margin: 0;
  text-transform: uppercase;
}

.tabs .tab a {
  color: rgba(238, 110, 115, 0.7);
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 24px;
  font-size: 14px;
  text-overflow: ellipsis;
  overflow: hidden;
  transition: color .28s ease;
}

.tabs .tab a:hover,
.tabs .tab a.active {
  background-color: transparent;
  color: #ee6e73;
}

.tabs .tab.disabled a,
.tabs .tab.disabled a:hover {
  color: rgba(238, 110, 115, 0.7);
  cursor: default;
}

.tabs .indicator {
  position: absolute;
  bottom: 0;
  height: 2px;
  background-color: #f6b2b5;
  will-change: left, right;
}

@media only screen and (max-width: 992px) {
  .tabs {
    display: -ms-flexbox;
    display: flex;
  }

  .tabs .tab {
    -ms-flex-positive: 1;
    flex-grow: 1;
  }

  .tabs .tab a {
    padding: 0 12px;
  }
}

.material-tooltip {
  padding: 10px 8px;
  font-size: 1rem;
  z-index: 2000;
  background-color: transparent;
  border-radius: 2px;
  color: #fff;
  min-height: 36px;
  line-height: 120%;
  opacity: 0;
  position: absolute;
  text-align: center;
  max-width: calc(100% - 4px);
  overflow: hidden;
  left: 0;
  top: 0;
  pointer-events: none;
  visibility: hidden;
}

.backdrop {
  position: absolute;
  opacity: 0;
  height: 7px;
  width: 14px;
  border-radius: 0 0 50% 50%;
  background-color: #323232;
  z-index: -1;
  transform-origin: 50% 0%;
  visibility: hidden;
}

.btn,
.btn-large,
.btn-flat {
  border: none;
  border-radius: 2px;
  display: inline-block;
  height: 36px;
  line-height: 36px;
  padding: 0 2rem;
  text-transform: uppercase;
  vertical-align: middle;
  -webkit-tap-highlight-color: transparent;
}

.btn.disabled,
.disabled.btn-large,
.btn-floating.disabled,
.btn-large.disabled,
.btn-flat.disabled,
.btn:disabled,
.btn-large:disabled,
.btn-floating:disabled,
.btn-large:disabled,
.btn-flat:disabled,
.btn[disabled],
.btn-large[disabled],
.btn-floating[disabled],
.btn-large[disabled],
.btn-flat[disabled] {
  pointer-events: none;
  background-color: #DFDFDF !important;
  box-shadow: none;
  color: #9F9F9F !important;
  cursor: default;
}

.btn.disabled:hover,
.disabled.btn-large:hover,
.btn-floating.disabled:hover,
.btn-large.disabled:hover,
.btn-flat.disabled:hover,
.btn:disabled:hover,
.btn-large:disabled:hover,
.btn-floating:disabled:hover,
.btn-large:disabled:hover,
.btn-flat:disabled:hover,
.btn[disabled]:hover,
.btn-large[disabled]:hover,
.btn-floating[disabled]:hover,
.btn-large[disabled]:hover,
.btn-flat[disabled]:hover {
  background-color: #DFDFDF !important;
  color: #9F9F9F !important;
}

.btn,
.btn-large,
.btn-floating,
.btn-large,
.btn-flat {
  font-size: 1rem;
  outline: 0;
}

.btn i,
.btn-large i,
.btn-floating i,
.btn-large i,
.btn-flat i {
  font-size: 1.3rem;
  line-height: inherit;
}

.btn:focus,
.btn-large:focus,
.btn-floating:focus {
  background-color: #1d7d74;
}

.btn,
.btn-large {
  text-decoration: none;
  color: #fff;
  background-color: #26a69a;
  text-align: center;
  letter-spacing: .5px;
  transition: .2s ease-out;
  cursor: pointer;
}

.btn:hover,
.btn-large:hover {
  background-color: #2bbbad;
}

.btn-floating {
  display: inline-block;
  color: #fff;
  position: relative;
  overflow: hidden;
  z-index: 1;
  width: 40px;
  height: 40px;
  line-height: 40px;
  padding: 0;
  background-color: #26a69a;
  border-radius: 50%;
  transition: .3s;
  cursor: pointer;
  vertical-align: middle;
}

.btn-floating:hover {
  background-color: #26a69a;
}

.btn-floating:before {
  border-radius: 0;
}

.btn-floating.btn-large {
  width: 56px;
  height: 56px;
}

.btn-floating.btn-large.halfway-fab {
  bottom: -28px;
}

.btn-floating.btn-large i {
  line-height: 56px;
}

.btn-floating.halfway-fab {
  position: absolute;
  right: 24px;
  bottom: -20px;
}

.btn-floating.halfway-fab.left {
  right: auto;
  left: 24px;
}

.btn-floating i {
  width: inherit;
  display: inline-block;
  text-align: center;
  color: #fff;
  font-size: 1.6rem;
  line-height: 40px;
}

button.btn-floating {
  border: none;
}

.fixed-action-btn {
  position: fixed;
  right: 23px;
  bottom: 23px;
  padding-top: 15px;
  margin-bottom: 0;
  z-index: 998;
}

.fixed-action-btn.active ul {
  visibility: visible;
}

.fixed-action-btn.horizontal {
  padding: 0 0 0 15px;
}

.fixed-action-btn.horizontal ul {
  text-align: right;
  right: 64px;
  top: 50%;
  transform: translateY(-50%);
  height: 100%;
  left: auto;
  width: 500px;
  /*width 100% only goes to width of button container */
}

.fixed-action-btn.horizontal ul li {
  display: inline-block;
  margin: 15px 15px 0 0;
}

.fixed-action-btn.toolbar {
  padding: 0;
  height: 56px;
}

.fixed-action-btn.toolbar.active > a i {
  opacity: 0;
}

.fixed-action-btn.toolbar ul {
  display: -ms-flexbox;
  display: flex;
  top: 0;
  bottom: 0;
}

.fixed-action-btn.toolbar ul li {
  -ms-flex: 1;
      flex: 1;
  display: inline-block;
  margin: 0;
  height: 100%;
  transition: none;
}

.fixed-action-btn.toolbar ul li a {
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%;
  background-color: transparent;
  box-shadow: none;
  color: #fff;
  line-height: 56px;
  z-index: 1;
}

.fixed-action-btn.toolbar ul li a i {
  line-height: inherit;
}

.fixed-action-btn ul {
  left: 0;
  right: 0;
  text-align: center;
  position: absolute;
  bottom: 64px;
  margin: 0;
  visibility: hidden;
}

.fixed-action-btn ul li {
  margin-bottom: 15px;
}

.fixed-action-btn ul a.btn-floating {
  opacity: 0;
}

.fixed-action-btn .fab-backdrop {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 40px;
  height: 40px;
  background-color: #26a69a;
  border-radius: 50%;
  transform: scale(0);
}

.btn-flat {
  box-shadow: none;
  background-color: transparent;
  color: #343434;
  cursor: pointer;
  transition: background-color .2s;
}

.btn-flat:focus,
.btn-flat:active {
  background-color: transparent;
}

.btn-flat:focus,
.btn-flat:hover {
  background-color: rgba(0, 0, 0, 0.1);
  box-shadow: none;
}

.btn-flat:active {
  background-color: rgba(0, 0, 0, 0.2);
}

.btn-flat.disabled {
  background-color: transparent !important;
  color: #b3b2b2 !important;
  cursor: default;
}

.btn-large {
  height: 54px;
  line-height: 54px;
}

.btn-large i {
  font-size: 1.6rem;
}

.btn-block {
  display: block;
}

.dropdown-content {
  background-color: #fff;
  margin: 0;
  display: none;
  min-width: 100px;
  max-height: 650px;
  overflow-y: auto;
  opacity: 0;
  position: absolute;
  z-index: 999;
  will-change: width, height;
}

.dropdown-content li {
  clear: both;
  color: rgba(0, 0, 0, 0.87);
  cursor: pointer;
  min-height: 50px;
  line-height: 1.5rem;
  width: 100%;
  text-align: left;
  text-transform: none;
}

.dropdown-content li:hover,
.dropdown-content li.active,
.dropdown-content li.selected {
  background-color: #eee;
}

.dropdown-content li.active.selected {
  background-color: #e1e1e1;
}

.dropdown-content li.divider {
  min-height: 0;
  height: 1px;
}

.dropdown-content li > a,
.dropdown-content li > span {
  font-size: 16px;
  color: #26a69a;
  display: block;
  line-height: 22px;
  padding: 14px 16px;
}

.dropdown-content li > span > label {
  top: 1px;
  left: 0;
  height: 18px;
}

.dropdown-content li > a > i {
  height: inherit;
  line-height: inherit;
  float: left;
  margin: 0 24px 0 0;
  width: 24px;
}

.input-field.col .dropdown-content [type="checkbox"] + label {
  top: 1px;
  left: 0;
  height: 18px;
}

/*!
 * Waves v0.6.0
 * http://fian.my.id/Waves
 *
 * Copyright 2014 Alfiana E. Sibuea and other contributors
 * Released under the MIT license
 * https://github.com/fians/Waves/blob/master/LICENSE
 */

.waves-effect {
  position: relative;
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-tap-highlight-color: transparent;
  vertical-align: middle;
  z-index: 1;
  transition: .3s ease-out;
}

.waves-effect .waves-ripple {
  position: absolute;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  margin-left: -10px;
  opacity: 0;
  background: rgba(0, 0, 0, 0.2);
  transition: all 0.7s ease-out;
  transition-property: transform, opacity;
  transform: scale(0);
  pointer-events: none;
}

.waves-effect.waves-light .waves-ripple {
  background-color: rgba(255, 255, 255, 0.45);
}

.waves-effect.waves-red .waves-ripple {
  background-color: rgba(244, 67, 54, 0.7);
}

.waves-effect.waves-yellow .waves-ripple {
  background-color: rgba(255, 235, 59, 0.7);
}

.waves-effect.waves-orange .waves-ripple {
  background-color: rgba(255, 152, 0, 0.7);
}

.waves-effect.waves-purple .waves-ripple {
  background-color: rgba(156, 39, 176, 0.7);
}

.waves-effect.waves-green .waves-ripple {
  background-color: rgba(76, 175, 80, 0.7);
}

.waves-effect.waves-teal .waves-ripple {
  background-color: rgba(0, 150, 136, 0.7);
}

.waves-effect input[type="button"],
.waves-effect input[type="reset"],
.waves-effect input[type="submit"] {
  border: 0;
  font-style: normal;
  font-size: inherit;
  text-transform: inherit;
  background: none;
}

.waves-effect img {
  position: relative;
  z-index: -1;
}

.waves-notransition {
  transition: none !important;
}

.waves-circle {
  transform: translateZ(0);
  -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%);
}

.waves-input-wrapper {
  border-radius: 0.2em;
  vertical-align: bottom;
}

.waves-input-wrapper .waves-button-input {
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
}

.waves-circle {
  text-align: center;
  width: 2.5em;
  height: 2.5em;
  line-height: 2.5em;
  border-radius: 50%;
  -webkit-mask-image: none;
}

.waves-block {
  display: block;
}

/* Firefox Bug: link not triggered */

.waves-effect .waves-ripple {
  z-index: -1;
}

.modal {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  background-color: #fafafa;
  padding: 0;
  max-height: 70%;
  width: 55%;
  margin: auto;
  overflow-y: auto;
  border-radius: 2px;
  will-change: top, opacity;
}

@media only screen and (max-width: 992px) {
  .modal {
    width: 80%;
  }
}

.modal h1,
.modal h2,
.modal h3,
.modal h4 {
  margin-top: 0;
}

.modal .modal-content {
  padding: 24px;
}

.modal .modal-close {
  cursor: pointer;
}

.modal .modal-footer {
  border-radius: 0 0 2px 2px;
  background-color: #fafafa;
  padding: 4px 6px;
  height: 56px;
  width: 100%;
}

.modal .modal-footer .btn,
.modal .modal-footer .btn-large,
.modal .modal-footer .btn-flat {
  float: right;
  margin: 6px 0;
}

.modal-overlay {
  position: fixed;
  z-index: 999;
  top: -100px;
  left: 0;
  bottom: 0;
  right: 0;
  height: 125%;
  width: 100%;
  background: #000;
  display: none;
  will-change: opacity;
}

.modal.modal-fixed-footer {
  padding: 0;
  height: 70%;
}

.modal.modal-fixed-footer .modal-content {
  position: absolute;
  height: calc(100% - 56px);
  max-height: 100%;
  width: 100%;
  overflow-y: auto;
}

.modal.modal-fixed-footer .modal-footer {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  position: absolute;
  bottom: 0;
}

.modal.bottom-sheet {
  top: auto;
  bottom: -100%;
  margin: 0;
  width: 100%;
  max-height: 45%;
  border-radius: 0;
  will-change: bottom, opacity;
}

.collapsible {
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd;
  border-left: 1px solid #ddd;
  margin: 0.5rem 0 1rem 0;
}

.collapsible-header {
  display: block;
  cursor: pointer;
  min-height: 3rem;
  line-height: 3rem;
  padding: 0 1rem;
  background-color: #fff;
  border-bottom: 1px solid #ddd;
}

.collapsible-header i {
  width: 2rem;
  font-size: 1.6rem;
  line-height: 3rem;
  display: block;
  float: left;
  text-align: center;
  margin-right: 1rem;
}

.collapsible-body {
  display: none;
  border-bottom: 1px solid #ddd;
  box-sizing: border-box;
  padding: 2rem;
}

.side-nav .collapsible,
.side-nav.fixed .collapsible {
  border: none;
  box-shadow: none;
}

.side-nav .collapsible li,
.side-nav.fixed .collapsible li {
  padding: 0;
}

.side-nav .collapsible-header,
.side-nav.fixed .collapsible-header {
  background-color: transparent;
  border: none;
  line-height: inherit;
  height: inherit;
  padding: 0 16px;
}

.side-nav .collapsible-header:hover,
.side-nav.fixed .collapsible-header:hover {
  background-color: rgba(0, 0, 0, 0.05);
}

.side-nav .collapsible-header i,
.side-nav.fixed .collapsible-header i {
  line-height: inherit;
}

.side-nav .collapsible-body,
.side-nav.fixed .collapsible-body {
  border: 0;
  background-color: #fff;
}

.side-nav .collapsible-body li a,
.side-nav.fixed .collapsible-body li a {
  padding: 0 23.5px 0 31px;
}

.collapsible.popout {
  border: none;
  box-shadow: none;
}

.collapsible.popout > li {
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  margin: 0 24px;
  transition: margin 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.collapsible.popout > li.active {
  box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
  margin: 16px 0;
}

.chip {
  display: inline-block;
  height: 32px;
  font-size: 13px;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.6);
  line-height: 32px;
  padding: 0 12px;
  border-radius: 16px;
  background-color: #e4e4e4;
  margin-bottom: 5px;
  margin-right: 5px;
}

.chip > img {
  float: left;
  margin: 0 8px 0 -12px;
  height: 32px;
  width: 32px;
  border-radius: 50%;
}

.chip .close {
  cursor: pointer;
  float: right;
  font-size: 16px;
  line-height: 32px;
  padding-left: 8px;
}

.chips {
  border: none;
  border-bottom: 1px solid #9e9e9e;
  box-shadow: none;
  margin: 0 0 20px 0;
  min-height: 45px;
  outline: none;
  transition: all .3s;
}

.chips.focus {
  border-bottom: 1px solid #26a69a;
  box-shadow: 0 1px 0 0 #26a69a;
}

.chips:hover {
  cursor: text;
}

.chips .chip.selected {
  background-color: #26a69a;
  color: #fff;
}

.chips .input {
  background: none;
  border: 0;
  color: rgba(0, 0, 0, 0.6);
  display: inline-block;
  font-size: 1rem;
  height: 3rem;
  line-height: 32px;
  outline: 0;
  margin: 0;
  padding: 0 !important;
  width: 120px !important;
}

.chips .input:focus {
  border: 0 !important;
  box-shadow: none !important;
}

.chips .autocomplete-content {
  margin-top: 0;
}

.prefix ~ .chips {
  margin-left: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}

.chips:empty ~ label {
  font-size: 0.8rem;
  transform: translateY(-140%);
}

.materialboxed {
  display: block;
  cursor: zoom-in;
  position: relative;
  transition: opacity .4s;
  -webkit-backface-visibility: hidden;
}

.materialboxed:hover:not(.active) {
  opacity: .8;
}

.materialboxed.active {
  cursor: zoom-out;
}

#materialbox-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #292929;
  z-index: 1000;
  will-change: opacity;
}

.materialbox-caption {
  position: fixed;
  display: none;
  color: #fff;
  line-height: 50px;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
  padding: 0% 15%;
  height: 50px;
  z-index: 1000;
  -webkit-font-smoothing: antialiased;
}

select:focus {
  outline: 1px solid #c9f3ef;
}

button:focus {
  outline: none;
  background-color: #2ab7a9;
}

label {
  font-size: 0.8rem;
  color: #9e9e9e;
}

/* Text Inputs + Textarea
   ========================================================================== */

/* Style Placeholders */

::-webkit-input-placeholder {
  color: #d1d1d1;
}

:-moz-placeholder {
  /* Firefox 18- */
  color: #d1d1d1;
}

::-moz-placeholder {
  /* Firefox 19+ */
  color: #d1d1d1;
}

:-ms-input-placeholder {
  color: #d1d1d1;
}

/* Text inputs */

input:not([type]),
input[type=text],
input[type=password],
input[type=email],
input[type=url],
input[type=time],
input[type=date],
input[type=datetime],
input[type=datetime-local],
input[type=tel],
input[type=number],
input[type=search],
textarea.materialize-textarea {
  background-color: transparent;
  border: none;
  border-bottom: #ccc;
  border-radius: 0;
  outline: none;
  height: 3rem;
  width: 100%;
  font-size: 1rem;
  margin: 0 0 20px 0;
  padding: 0;
  box-shadow: none;
  box-sizing: content-box;
  transition: all 0.3s;
}

input:not([type]):disabled,
input:not([type])[readonly="readonly"],
input[type=text]:disabled,
input[type=text][readonly="readonly"],
input[type=password]:disabled,
input[type=password][readonly="readonly"],
input[type=email]:disabled,
input[type=email][readonly="readonly"],
input[type=url]:disabled,
input[type=url][readonly="readonly"],
input[type=time]:disabled,
input[type=time][readonly="readonly"],
input[type=date]:disabled,
input[type=date][readonly="readonly"],
input[type=datetime]:disabled,
input[type=datetime][readonly="readonly"],
input[type=datetime-local]:disabled,
input[type=datetime-local][readonly="readonly"],
input[type=tel]:disabled,
input[type=tel][readonly="readonly"],
input[type=number]:disabled,
input[type=number][readonly="readonly"],
input[type=search]:disabled,
input[type=search][readonly="readonly"],
textarea.materialize-textarea:disabled,
textarea.materialize-textarea[readonly="readonly"] {
  color: rgba(0, 0, 0, 0.26);
  border-bottom: 1px dotted rgba(0, 0, 0, 0.26);
}

input:not([type]):disabled + label,
input:not([type])[readonly="readonly"] + label,
input[type=text]:disabled + label,
input[type=text][readonly="readonly"] + label,
input[type=password]:disabled + label,
input[type=password][readonly="readonly"] + label,
input[type=email]:disabled + label,
input[type=email][readonly="readonly"] + label,
input[type=url]:disabled + label,
input[type=url][readonly="readonly"] + label,
input[type=time]:disabled + label,
input[type=time][readonly="readonly"] + label,
input[type=date]:disabled + label,
input[type=date][readonly="readonly"] + label,
input[type=datetime]:disabled + label,
input[type=datetime][readonly="readonly"] + label,
input[type=datetime-local]:disabled + label,
input[type=datetime-local][readonly="readonly"] + label,
input[type=tel]:disabled + label,
input[type=tel][readonly="readonly"] + label,
input[type=number]:disabled + label,
input[type=number][readonly="readonly"] + label,
input[type=search]:disabled + label,
input[type=search][readonly="readonly"] + label,
textarea.materialize-textarea:disabled + label,
textarea.materialize-textarea[readonly="readonly"] + label {
  color: rgba(0, 0, 0, 0.26);
}

input:not([type]):focus:not([readonly]),
input[type=text]:focus:not([readonly]),
input[type=password]:focus:not([readonly]),
input[type=email]:focus:not([readonly]),
input[type=url]:focus:not([readonly]),
input[type=time]:focus:not([readonly]),
input[type=date]:focus:not([readonly]),
input[type=datetime]:focus:not([readonly]),
input[type=datetime-local]:focus:not([readonly]),
input[type=tel]:focus:not([readonly]),
input[type=number]:focus:not([readonly]),
input[type=search]:focus:not([readonly]),
textarea.materialize-textarea:focus:not([readonly]) {
  border-bottom: 1px solid #26a69a;
  box-shadow: 0 1px 0 0 #26a69a;
}

input:not([type]):focus:not([readonly]) + label,
input[type=text]:focus:not([readonly]) + label,
input[type=password]:focus:not([readonly]) + label,
input[type=email]:focus:not([readonly]) + label,
input[type=url]:focus:not([readonly]) + label,
input[type=time]:focus:not([readonly]) + label,
input[type=date]:focus:not([readonly]) + label,
input[type=datetime]:focus:not([readonly]) + label,
input[type=datetime-local]:focus:not([readonly]) + label,
input[type=tel]:focus:not([readonly]) + label,
input[type=number]:focus:not([readonly]) + label,
input[type=search]:focus:not([readonly]) + label,
textarea.materialize-textarea:focus:not([readonly]) + label {
  color: #26a69a;
}

input:not([type]).valid,
input:not([type]):focus.valid,
input[type=text].valid,
input[type=text]:focus.valid,
input[type=password].valid,
input[type=password]:focus.valid,
input[type=email].valid,
input[type=email]:focus.valid,
input[type=url].valid,
input[type=url]:focus.valid,
input[type=time].valid,
input[type=time]:focus.valid,
input[type=date].valid,
input[type=date]:focus.valid,
input[type=datetime].valid,
input[type=datetime]:focus.valid,
input[type=datetime-local].valid,
input[type=datetime-local]:focus.valid,
input[type=tel].valid,
input[type=tel]:focus.valid,
input[type=number].valid,
input[type=number]:focus.valid,
input[type=search].valid,
input[type=search]:focus.valid,
textarea.materialize-textarea.valid,
textarea.materialize-textarea:focus.valid {
  border-bottom: 1px solid #4CAF50;
  box-shadow: 0 1px 0 0 #4CAF50;
}

input:not([type]).valid + label:after,
input:not([type]):focus.valid + label:after,
input[type=text].valid + label:after,
input[type=text]:focus.valid + label:after,
input[type=password].valid + label:after,
input[type=password]:focus.valid + label:after,
input[type=email].valid + label:after,
input[type=email]:focus.valid + label:after,
input[type=url].valid + label:after,
input[type=url]:focus.valid + label:after,
input[type=time].valid + label:after,
input[type=time]:focus.valid + label:after,
input[type=date].valid + label:after,
input[type=date]:focus.valid + label:after,
input[type=datetime].valid + label:after,
input[type=datetime]:focus.valid + label:after,
input[type=datetime-local].valid + label:after,
input[type=datetime-local]:focus.valid + label:after,
input[type=tel].valid + label:after,
input[type=tel]:focus.valid + label:after,
input[type=number].valid + label:after,
input[type=number]:focus.valid + label:after,
input[type=search].valid + label:after,
input[type=search]:focus.valid + label:after,
textarea.materialize-textarea.valid + label:after,
textarea.materialize-textarea:focus.valid + label:after {
  content: attr(data-success);
  color: #4CAF50;
  opacity: 1;
}

input:not([type]).invalid,
input:not([type]):focus.invalid,
input[type=text].invalid,
input[type=text]:focus.invalid,
input[type=password].invalid,
input[type=password]:focus.invalid,
input[type=email].invalid,
input[type=email]:focus.invalid,
input[type=url].invalid,
input[type=url]:focus.invalid,
input[type=time].invalid,
input[type=time]:focus.invalid,
input[type=date].invalid,
input[type=date]:focus.invalid,
input[type=datetime].invalid,
input[type=datetime]:focus.invalid,
input[type=datetime-local].invalid,
input[type=datetime-local]:focus.invalid,
input[type=tel].invalid,
input[type=tel]:focus.invalid,
input[type=number].invalid,
input[type=number]:focus.invalid,
input[type=search].invalid,
input[type=search]:focus.invalid,
textarea.materialize-textarea.invalid,
textarea.materialize-textarea:focus.invalid {
  border-bottom: 1px solid #F44336;
  box-shadow: 0 1px 0 0 #F44336;
}

input:not([type]).invalid + label:after,
input:not([type]):focus.invalid + label:after,
input[type=text].invalid + label:after,
input[type=text]:focus.invalid + label:after,
input[type=password].invalid + label:after,
input[type=password]:focus.invalid + label:after,
input[type=email].invalid + label:after,
input[type=email]:focus.invalid + label:after,
input[type=url].invalid + label:after,
input[type=url]:focus.invalid + label:after,
input[type=time].invalid + label:after,
input[type=time]:focus.invalid + label:after,
input[type=date].invalid + label:after,
input[type=date]:focus.invalid + label:after,
input[type=datetime].invalid + label:after,
input[type=datetime]:focus.invalid + label:after,
input[type=datetime-local].invalid + label:after,
input[type=datetime-local]:focus.invalid + label:after,
input[type=tel].invalid + label:after,
input[type=tel]:focus.invalid + label:after,
input[type=number].invalid + label:after,
input[type=number]:focus.invalid + label:after,
input[type=search].invalid + label:after,
input[type=search]:focus.invalid + label:after,
textarea.materialize-textarea.invalid + label:after,
textarea.materialize-textarea:focus.invalid + label:after {
  content: attr(data-error);
  color: #F44336;
  opacity: 1;
}

input:not([type]).validate + label,
input[type=text].validate + label,
input[type=password].validate + label,
input[type=email].validate + label,
input[type=url].validate + label,
input[type=time].validate + label,
input[type=date].validate + label,
input[type=datetime].validate + label,
input[type=datetime-local].validate + label,
input[type=tel].validate + label,
input[type=number].validate + label,
input[type=search].validate + label,
textarea.materialize-textarea.validate + label {
  width: 100%;
  pointer-events: none;
}

input:not([type]) + label:after,
input[type=text] + label:after,
input[type=password] + label:after,
input[type=email] + label:after,
input[type=url] + label:after,
input[type=time] + label:after,
input[type=date] + label:after,
input[type=datetime] + label:after,
input[type=datetime-local] + label:after,
input[type=tel] + label:after,
input[type=number] + label:after,
input[type=search] + label:after,
textarea.materialize-textarea + label:after {
  display: block;
  content: "";
  position: absolute;
  top: 60px;
  opacity: 0;
  transition: .2s opacity ease-out, .2s color ease-out;
}

.input-field {
  position: relative;
  margin-top: 1rem;
}

.input-field.inline {
  display: inline-block;
  vertical-align: middle;
  margin-left: 5px;
}

.input-field.inline input,
.input-field.inline .select-dropdown {
  margin-bottom: 1rem;
}

.input-field.col label {
  left: 0.75rem;
}

.input-field.col .prefix ~ label,
.input-field.col .prefix ~ .validate ~ label {
  width: calc(100% - 3rem - 1.5rem);
}

.input-field label {
  color: #9e9e9e;
  position: absolute;
  top: 0.8rem;
  left: 0;
  font-size: 1rem;
  cursor: text;
  transition: .2s ease-out;
  text-align: initial;
}

.input-field label:not(.label-icon).active {
  font-size: 0.8rem;
  transform: translateY(-140%);
}

.input-field .prefix {
  position: absolute;
  width: 3rem;
  font-size: 2rem;
  transition: color .2s;
}

.input-field .prefix.active {
  color: #26a69a;
}

.input-field .prefix ~ input,
.input-field .prefix ~ textarea,
.input-field .prefix ~ label,
.input-field .prefix ~ .validate ~ label,
.input-field .prefix ~ .autocomplete-content {
  margin-left: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}

.input-field .prefix ~ label {
  margin-left: 3rem;
}

@media only screen and (max-width: 992px) {
  .input-field .prefix ~ input {
    width: 86%;
    width: calc(100% - 3rem);
  }
}

@media only screen and (max-width: 600px) {
  .input-field .prefix ~ input {
    width: 80%;
    width: calc(100% - 3rem);
  }
}

/* Search Field */

.input-field input[type=search] {
  display: block;
  line-height: inherit;
  padding-left: 4rem;
  width: calc(100% - 4rem);
}

.input-field input[type=search]:focus {
  background-color: #fff;
  border: 0;
  box-shadow: none;
  color: #444;
}

.input-field input[type=search]:focus + label i,
.input-field input[type=search]:focus ~ .mdi-navigation-close,
.input-field input[type=search]:focus ~ .material-icons {
  color: #444;
}

.input-field input[type=search] + label {
  left: 1rem;
}

.input-field input[type=search] ~ .mdi-navigation-close,
.input-field input[type=search] ~ .material-icons {
  position: absolute;
  top: 0;
  right: 1rem;
  color: transparent;
  cursor: pointer;
  font-size: 2rem;
  transition: .3s color;
}

/* Textarea */

textarea {
  width: 100%;
  height: 3rem;
  background-color: transparent;
}

textarea.materialize-textarea {
  overflow-y: hidden;
  /* prevents scroll bar flash */
  padding: .8rem 0 1.6rem 0;
  /* prevents text jump on Enter keypress */
  resize: none;
  min-height: 3rem;
}

.hiddendiv {
  display: none;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow-wrap: break-word;
  /* future version of deprecated 'word-wrap' */
  padding-top: 1.2rem;
  /* prevents text jump on Enter keypress */
  position: absolute;
  top: 0;
}

/* Autocomplete */

.autocomplete-content {
  margin-top: -20px;
  display: block;
  opacity: 1;
  position: static;
}

.autocomplete-content li .highlight {
  color: #444;
}

.autocomplete-content li img {
  height: 40px;
  width: 40px;
  margin: 5px 15px;
}

/* Radio Buttons
   ========================================================================== */

[type="radio"]:not(:checked),
[type="radio"]:checked {
  position: absolute;
  left: -9999px;
  opacity: 0;
}

[type="radio"]:not(:checked) + label,
[type="radio"]:checked + label {
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  display: inline-block;
  height: 25px;
  line-height: 25px;
  font-size: 1rem;
  transition: .28s ease;
  /* webkit (konqueror) browsers */
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

[type="radio"] + label:before,
[type="radio"] + label:after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  margin: 4px;
  width: 16px;
  height: 16px;
  z-index: 0;
  transition: .28s ease;
}

/* Unchecked styles */

[type="radio"]:not(:checked) + label:before,
[type="radio"]:not(:checked) + label:after,
[type="radio"]:checked + label:before,
[type="radio"]:checked + label:after,
[type="radio"].with-gap:checked + label:before,
[type="radio"].with-gap:checked + label:after {
  border-radius: 50%;
}

[type="radio"]:not(:checked) + label:before,
[type="radio"]:not(:checked) + label:after {
  border: 2px solid #5a5a5a;
}

[type="radio"]:not(:checked) + label:after {
  transform: scale(0);
}

/* Checked styles */

[type="radio"]:checked + label:before {
  border: 2px solid transparent;
}

[type="radio"]:checked + label:after,
[type="radio"].with-gap:checked + label:before,
[type="radio"].with-gap:checked + label:after {
  border: 2px solid #26a69a;
}

[type="radio"]:checked + label:after,
[type="radio"].with-gap:checked + label:after {
  background-color: #26a69a;
}

[type="radio"]:checked + label:after {
  transform: scale(1.02);
}

/* Radio With gap */

[type="radio"].with-gap:checked + label:after {
  transform: scale(0.5);
}

/* Focused styles */

[type="radio"].tabbed:focus + label:before {
  box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1);
}

/* Disabled Radio With gap */

[type="radio"].with-gap:disabled:checked + label:before {
  border: 2px solid rgba(0, 0, 0, 0.26);
}

[type="radio"].with-gap:disabled:checked + label:after {
  border: none;
  background-color: rgba(0, 0, 0, 0.26);
}

/* Disabled style */

[type="radio"]:disabled:not(:checked) + label:before,
[type="radio"]:disabled:checked + label:before {
  background-color: transparent;
  border-color: rgba(0, 0, 0, 0.26);
}

[type="radio"]:disabled + label {
  color: rgba(0, 0, 0, 0.26);
}

[type="radio"]:disabled:not(:checked) + label:before {
  border-color: rgba(0, 0, 0, 0.26);
}

[type="radio"]:disabled:checked + label:after {
  background-color: rgba(0, 0, 0, 0.26);
  border-color: #BDBDBD;
}

/* Checkboxes
   ========================================================================== */

/* CUSTOM CSS CHECKBOXES */

form p {
  margin-bottom: 10px;
  text-align: left;
}

form p:last-child {
  margin-bottom: 0;
}

/* Remove default checkbox */

[type="checkbox"]:not(:checked),
[type="checkbox"]:checked {
  position: absolute;
  left: -9999px;
  opacity: 0;
}

[type="checkbox"] {
  /* checkbox aspect */
}

[type="checkbox"] + label {
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  display: inline-block;
  height: 25px;
  line-height: 25px;
  font-size: 1rem;
  -webkit-user-select: none;
  /* webkit (safari, chrome) browsers */
  -moz-user-select: none;
  /* mozilla browsers */
  -khtml-user-select: none;
  /* webkit (konqueror) browsers */
  -ms-user-select: none;
  /* IE10+ */
}

[type="checkbox"] + label:before,
[type="checkbox"]:not(.filled-in) + label:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  height: 18px;
  z-index: 0;
  border: 2px solid #5a5a5a;
  border-radius: 1px;
  margin-top: 2px;
  transition: .2s;
}

[type="checkbox"]:not(.filled-in) + label:after {
  border: 0;
  transform: scale(0);
}

[type="checkbox"]:not(:checked):disabled + label:before {
  border: none;
  background-color: rgba(0, 0, 0, 0.26);
}

[type="checkbox"].tabbed:focus + label:after {
  transform: scale(1);
  border: 0;
  border-radius: 50%;
  box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1);
  background-color: rgba(0, 0, 0, 0.1);
}

[type="checkbox"]:checked + label:before {
  top: -4px;
  left: -5px;
  width: 12px;
  height: 22px;
  border-top: 2px solid transparent;
  border-left: 2px solid transparent;
  border-right: 2px solid #26a69a;
  border-bottom: 2px solid #26a69a;
  transform: rotate(40deg);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform-origin: 100% 100%;
}

[type="checkbox"]:checked:disabled + label:before {
  border-right: 2px solid rgba(0, 0, 0, 0.26);
  border-bottom: 2px solid rgba(0, 0, 0, 0.26);
}

/* Indeterminate checkbox */

[type="checkbox"]:indeterminate + label:before {
  top: -11px;
  left: -12px;
  width: 10px;
  height: 22px;
  border-top: none;
  border-left: none;
  border-right: 2px solid #26a69a;
  border-bottom: none;
  transform: rotate(90deg);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform-origin: 100% 100%;
}

[type="checkbox"]:indeterminate:disabled + label:before {
  border-right: 2px solid rgba(0, 0, 0, 0.26);
  background-color: transparent;
}

[type="checkbox"].filled-in + label:after {
  border-radius: 2px;
}

[type="checkbox"].filled-in + label:before,
[type="checkbox"].filled-in + label:after {
  content: '';
  left: 0;
  position: absolute;
  /* .1s delay is for check animation */
  transition: border .25s, background-color .25s, width .20s .1s, height .20s .1s, top .20s .1s, left .20s .1s;
  z-index: 1;
}

[type="checkbox"].filled-in:not(:checked) + label:before {
  width: 0;
  height: 0;
  border: 3px solid transparent;
  left: 6px;
  top: 10px;
  transform: rotateZ(37deg);
  transform-origin: 100% 100%;
}

[type="checkbox"].filled-in:not(:checked) + label:after {
  height: 20px;
  width: 20px;
  background-color: transparent;
  border: 2px solid #5a5a5a;
  top: 0px;
  z-index: 0;
}

[type="checkbox"].filled-in:checked + label:before {
  top: 0;
  left: 1px;
  width: 8px;
  height: 13px;
  border-top: 2px solid transparent;
  border-left: 2px solid transparent;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotateZ(37deg);
  transform-origin: 100% 100%;
}

[type="checkbox"].filled-in:checked + label:after {
  top: 0;
  width: 20px;
  height: 20px;
  border: 2px solid #26a69a;
  background-color: #26a69a;
  z-index: 0;
}

[type="checkbox"].filled-in.tabbed:focus + label:after {
  border-radius: 2px;
  border-color: #5a5a5a;
  background-color: rgba(0, 0, 0, 0.1);
}

[type="checkbox"].filled-in.tabbed:checked:focus + label:after {
  border-radius: 2px;
  background-color: #26a69a;
  border-color: #26a69a;
}

[type="checkbox"].filled-in:disabled:not(:checked) + label:before {
  background-color: transparent;
  border: 2px solid transparent;
}

[type="checkbox"].filled-in:disabled:not(:checked) + label:after {
  border-color: transparent;
  background-color: #BDBDBD;
}

[type="checkbox"].filled-in:disabled:checked + label:before {
  background-color: transparent;
}

[type="checkbox"].filled-in:disabled:checked + label:after {
  background-color: #BDBDBD;
  border-color: #BDBDBD;
}

/* Switch
   ========================================================================== */

.switch,
.switch * {
  -webkit-user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -ms-user-select: none;
}

.switch label {
  cursor: pointer;
}

.switch label input[type=checkbox] {
  opacity: 0;
  width: 0;
  height: 0;
}

.switch label input[type=checkbox]:checked + .lever {
  background-color: #84c7c1;
}

.switch label input[type=checkbox]:checked + .lever:after {
  background-color: #26a69a;
  left: 24px;
}

.switch label .lever {
  content: "";
  display: inline-block;
  position: relative;
  width: 40px;
  height: 15px;
  background-color: #818181;
  border-radius: 15px;
  margin-right: 10px;
  transition: background 0.3s ease;
  vertical-align: middle;
  margin: 0 16px;
}

.switch label .lever:after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 21px;
  height: 21px;
  background-color: #F1F1F1;
  border-radius: 21px;
  box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4);
  left: -5px;
  top: -3px;
  transition: left 0.3s ease, background .3s ease, box-shadow 0.1s ease;
}

input[type=checkbox]:checked:not(:disabled) ~ .lever:active::after,
input[type=checkbox]:checked:not(:disabled).tabbed:focus ~ .lever::after {
  box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(38, 166, 154, 0.1);
}

input[type=checkbox]:not(:disabled) ~ .lever:active:after,
input[type=checkbox]:not(:disabled).tabbed:focus ~ .lever::after {
  box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(0, 0, 0, 0.08);
}

.switch input[type=checkbox][disabled] + .lever {
  cursor: default;
}

.switch label input[type=checkbox][disabled] + .lever:after,
.switch label input[type=checkbox][disabled]:checked + .lever:after {
  background-color: #BDBDBD;
}

/* Select Field
   ========================================================================== */

select {
  display: none;
}

select.browser-default {
  display: block;
}

select {
  background-color: rgba(255, 255, 255, 0.9);
  width: 100%;
  padding: 5px;
  border: 1px solid #f2f2f2;
  border-radius: 2px;
  height: 3rem;
}

.select-label {
  position: absolute;
}

.select-wrapper {
  position: relative;
}

.select-wrapper input.select-dropdown {
  position: relative;
  cursor: pointer;
  background-color: transparent;
  border: none;
  border-bottom: #ccc;
  outline: none;
  height: 3rem;
  line-height: 3rem;
  width: 100%;
  font-size: 1rem;
  margin: 0 0 20px 0;
  padding: 0;
  display: block;
}

.select-wrapper span.caret {
  color: initial;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  height: 10px;
  margin: auto 0;
  font-size: 10px;
  line-height: 10px;
}

.select-wrapper span.caret.disabled {
  color: rgba(0, 0, 0, 0.26);
}

.select-wrapper + label {
  position: absolute;
  top: -14px;
  font-size: 0.8rem;
}

select:disabled {
  color: rgba(0, 0, 0, 0.3);
}

.select-wrapper input.select-dropdown:disabled {
  color: rgba(0, 0, 0, 0.3);
  cursor: default;
  -webkit-user-select: none;
  /* webkit (safari, chrome) browsers */
  -moz-user-select: none;
  /* mozilla browsers */
  -ms-user-select: none;
  /* IE10+ */
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}

.select-wrapper i {
  color: rgba(0, 0, 0, 0.3);
}

.select-dropdown li.disabled,
.select-dropdown li.disabled > span,
.select-dropdown li.optgroup {
  color: rgba(0, 0, 0, 0.3);
  background-color: transparent;
}

.prefix ~ .select-wrapper {
  margin-left: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}

.prefix ~ label {
  margin-left: 3rem;
}

.select-dropdown li img {
  height: 40px;
  width: 40px;
  margin: 5px 15px;
  float: right;
}

.select-dropdown li.optgroup {
  border-top: 1px solid #eee;
}

.select-dropdown li.optgroup.selected > span {
  color: rgba(0, 0, 0, 0.7);
}

.select-dropdown li.optgroup > span {
  color: rgba(0, 0, 0, 0.4);
}

.select-dropdown li.optgroup ~ li.optgroup-option {
  padding-left: 1rem;
}

/* File Input
   ========================================================================== */

.file-field {
  position: relative;
}

.file-field .file-path-wrapper {
  overflow: hidden;
  padding-left: 10px;
}

.file-field input.file-path {
  width: 100%;
}

.file-field .btn,
.file-field .btn-large {
  float: left;
  height: 3rem;
  line-height: 3rem;
}

.file-field span {
  cursor: pointer;
}

.file-field input[type=file] {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  margin: 0;
  padding: 0;
  font-size: 20px;
  cursor: pointer;
  opacity: 0;
  filter: alpha(opacity=0);
}

/* Range
   ========================================================================== */

.range-field {
  position: relative;
}

input[type=range],
input[type=range] + .thumb {
  cursor: pointer;
}

input[type="range"] {
  position: relative;
  background-color: transparent;
  border: none;
  outline: none;
  width: 100%;
  margin: 15px 0;
  padding: 0;
}

input[type=range]:focus {
  outline: none;
}

input[type=range] + .thumb {
  position: absolute;
  top: 10px;
  left: 0;
  border: none;
  height: 0;
  width: 0;
  border-radius: 50%;
  background-color: #26a69a;
  margin-left: 7px;
  transform-origin: 50% 50%;
  transform: rotate(-45deg);
}

input[type=range] + .thumb .value {
  display: block;
  width: 30px;
  text-align: center;
  color: #26a69a;
  font-size: 0;
  transform: rotate(45deg);
}

input[type=range] + .thumb.active {
  border-radius: 50% 50% 50% 0;
}

input[type=range] + .thumb.active .value {
  color: #fff;
  margin-left: -1px;
  margin-top: 8px;
  font-size: 10px;
}

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

input[type=range]::-webkit-slider-runnable-track {
  height: 3px;
  background: #c2c0c2;
  border: none;
}

input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none;
  border: none;
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background-color: #26a69a;
  transform-origin: 50% 50%;
  margin: -5px 0 0 0;
  transition: .3s;
}

input[type=range]:focus::-webkit-slider-runnable-track {
  background: #ccc;
}

input[type="range"] {
  /* fix for FF unable to apply focus style bug  */
  border: 1px solid white;
  /*required for proper track sizing in FF*/
}

input[type=range]::-moz-range-track {
  height: 3px;
  background: #ddd;
  border: none;
}

input[type=range]::-moz-range-thumb {
  border: none;
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background: #26a69a;
  margin-top: -5px;
}

input[type=range]:-moz-focusring {
  outline: 1px solid #fff;
  outline-offset: -1px;
}

input[type=range]:focus::-moz-range-track {
  background: #ccc;
}

input[type=range]::-ms-track {
  height: 3px;
  background: transparent;
  border-color: transparent;
  border-width: 6px 0;
  /*remove default tick marks*/
  color: transparent;
}

input[type=range]::-ms-fill-lower {
  background: #777;
}

input[type=range]::-ms-fill-upper {
  background: #ddd;
}

input[type=range]::-ms-thumb {
  border: none;
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background: #26a69a;
}

input[type=range]:focus::-ms-fill-lower {
  background: #888;
}

input[type=range]:focus::-ms-fill-upper {
  background: #ccc;
}

/***************
    Nav List
***************/

.table-of-contents.fixed {
  position: fixed;
}

.table-of-contents li {
  padding: 2px 0;
}

.table-of-contents a {
  display: inline-block;
  font-weight: 300;
  color: #757575;
  padding-left: 20px;
  height: 1.5rem;
  line-height: 1.5rem;
  letter-spacing: .4;
  display: inline-block;
}

.table-of-contents a:hover {
  color: #a8a8a8;
  padding-left: 19px;
  border-left: 1px solid #ee6e73;
}

.table-of-contents a.active {
  font-weight: 500;
  padding-left: 18px;
  border-left: 2px solid #ee6e73;
}

.side-nav {
  position: fixed;
  width: 300px;
  left: 0;
  top: 0;
  margin: 0;
  transform: translateX(-100%);
  height: 100%;
  height: calc(100% + 60px);
  height: -moz-calc(100%);
  padding-bottom: 60px;
  background-color: #fff;
  z-index: 999;
  overflow-y: auto;
  will-change: transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform: translateX(-105%);
}

.side-nav.right-aligned {
  right: 0;
  transform: translateX(105%);
  left: auto;
  transform: translateX(100%);
}

.side-nav .collapsible {
  margin: 0;
}

.side-nav li {
  float: none;
  line-height: 48px;
}

.side-nav li.active {
  background-color: rgba(0, 0, 0, 0.05);
}

.side-nav li > a {
  color: rgba(0, 0, 0, 0.87);
  display: block;
  font-size: 14px;
  font-weight: 500;
  height: 48px;
  line-height: 48px;
  padding: 0 32px;
}

.side-nav li > a:hover {
  background-color: rgba(0, 0, 0, 0.05);
}

.side-nav li > a.btn,
.side-nav li > a.btn-large,
.side-nav li > a.btn-large,
.side-nav li > a.btn-flat,
.side-nav li > a.btn-floating {
  margin: 10px 15px;
}

.side-nav li > a.btn,
.side-nav li > a.btn-large,
.side-nav li > a.btn-large,
.side-nav li > a.btn-floating {
  color: #fff;
}

.side-nav li > a.btn-flat {
  color: #343434;
}

.side-nav li > a.btn:hover,
.side-nav li > a.btn-large:hover,
.side-nav li > a.btn-large:hover {
  background-color: #2bbbad;
}

.side-nav li > a.btn-floating:hover {
  background-color: #26a69a;
}

.side-nav li > a > i,
.side-nav li > a > [class^="mdi-"],
.side-nav li > a li > a > [class*="mdi-"],
.side-nav li > a > i.material-icons {
  float: left;
  height: 48px;
  line-height: 48px;
  margin: 0 32px 0 0;
  width: 24px;
  color: rgba(0, 0, 0, 0.54);
}

.side-nav .divider {
  margin: 8px 0 0 0;
}

.side-nav .subheader {
  cursor: initial;
  pointer-events: none;
  color: rgba(0, 0, 0, 0.54);
  font-size: 14px;
  font-weight: 500;
  line-height: 48px;
}

.side-nav .subheader:hover {
  background-color: transparent;
}

.side-nav .userView {
  position: relative;
  padding: 32px 32px 0;
  margin-bottom: 8px;
}

.side-nav .userView > a {
  height: auto;
  padding: 0;
}

.side-nav .userView > a:hover {
  background-color: transparent;
}

.side-nav .userView .background {
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
}

.side-nav .userView .circle,
.side-nav .userView .name,
.side-nav .userView .email {
  display: block;
}

.side-nav .userView .circle {
  height: 64px;
  width: 64px;
}

.side-nav .userView .name,
.side-nav .userView .email {
  font-size: 14px;
  line-height: 24px;
}

.side-nav .userView .name {
  margin-top: 16px;
  font-weight: 500;
}

.side-nav .userView .email {
  padding-bottom: 16px;
  font-weight: 400;
}

.drag-target {
  height: 100%;
  width: 10px;
  position: fixed;
  top: 0;
  z-index: 998;
}

.side-nav.fixed {
  left: 0;
  transform: translateX(0);
  position: fixed;
}

.side-nav.fixed.right-aligned {
  right: 0;
  left: auto;
}

@media only screen and (max-width: 992px) {
  .side-nav.fixed {
    transform: translateX(-105%);
  }

  .side-nav.fixed.right-aligned {
    transform: translateX(105%);
  }

  .side-nav a {
    padding: 0 16px;
  }

  .side-nav .userView {
    padding: 16px 16px 0;
  }
}

.side-nav .collapsible-body > ul:not(.collapsible) > li.active,
.side-nav.fixed .collapsible-body > ul:not(.collapsible) > li.active {
  background-color: #ee6e73;
}

.side-nav .collapsible-body > ul:not(.collapsible) > li.active a,
.side-nav.fixed .collapsible-body > ul:not(.collapsible) > li.active a {
  color: #fff;
}

.side-nav .collapsible-body {
  padding: 0;
}

#sidenav-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 120vh;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 997;
  will-change: opacity;
}

/*
    @license
    Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
    This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
    The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
    The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
    Code distributed by Google as part of the polymer project is also
    subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
 */

/**************************/

/* STYLES FOR THE SPINNER */

/**************************/

/*
 * Constants:
 *      STROKEWIDTH = 3px
 *      ARCSIZE     = 270 degrees (amount of circle the arc takes up)
 *      ARCTIME     = 1333ms (time it takes to expand and contract arc)
 *      ARCSTARTROT = 216 degrees (how much the start location of the arc
 *                                should rotate each time, 216 gives us a
 *                                5 pointed star shape (it's 360/5 * 3).
 *                                For a 7 pointed star, we might do
 *                                360/7 * 3 = 154.286)
 *      CONTAINERWIDTH = 28px
 *      SHRINK_TIME = 400ms
 */

.preloader-wrapper {
  display: inline-block;
  position: relative;
  width: 50px;
  height: 50px;
}

.preloader-wrapper.small {
  width: 36px;
  height: 36px;
}

.preloader-wrapper.big {
  width: 64px;
  height: 64px;
}

.preloader-wrapper.active {
  /* duration: 360 * ARCTIME / (ARCSTARTROT + (360-ARCSIZE)) */
  animation: container-rotate 1568ms linear infinite;
}

@keyframes container-rotate {
  to {
    transform: rotate(360deg);
  }
}

.spinner-layer {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  border-color: #26a69a;
}

.spinner-blue,
.spinner-blue-only {
  border-color: #4285f4;
}

.spinner-red,
.spinner-red-only {
  border-color: #db4437;
}

.spinner-yellow,
.spinner-yellow-only {
  border-color: #f4b400;
}

.spinner-green,
.spinner-green-only {
  border-color: #0f9d58;
}

/**
 * IMPORTANT NOTE ABOUT CSS ANIMATION PROPERTIES (keanulee):
 *
 * iOS Safari (tested on iOS 8.1) does not handle animation-delay very well - it doesn't
 * guarantee that the animation will start _exactly_ after that value. So we avoid using
 * animation-delay and instead set custom keyframes for each color (as redundant as it
 * seems).
 *
 * We write out each animation in full (instead of separating animation-name,
 * animation-duration, etc.) because under the polyfill, Safari does not recognize those
 * specific properties properly, treats them as -webkit-animation, and overrides the
 * other animation rules. See https://github.com/Polymer/platform/issues/53.
 */

.active .spinner-layer.spinner-blue {
  /* durations: 4 * ARCTIME */
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, blue-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer.spinner-red {
  /* durations: 4 * ARCTIME */
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, red-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer.spinner-yellow {
  /* durations: 4 * ARCTIME */
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, yellow-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer.spinner-green {
  /* durations: 4 * ARCTIME */
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, green-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer,
.active .spinner-layer.spinner-blue-only,
.active .spinner-layer.spinner-red-only,
.active .spinner-layer.spinner-yellow-only,
.active .spinner-layer.spinner-green-only {
  /* durations: 4 * ARCTIME */
  opacity: 1;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

@keyframes fill-unfill-rotate {
  12.5% {
    transform: rotate(135deg);
  }

  /* 0.5 * ARCSIZE */
  25% {
    transform: rotate(270deg);
  }

  /* 1   * ARCSIZE */
  37.5% {
    transform: rotate(405deg);
  }

  /* 1.5 * ARCSIZE */
  50% {
    transform: rotate(540deg);
  }

  /* 2   * ARCSIZE */
  62.5% {
    transform: rotate(675deg);
  }

  /* 2.5 * ARCSIZE */
  75% {
    transform: rotate(810deg);
  }

  /* 3   * ARCSIZE */
  87.5% {
    transform: rotate(945deg);
  }

  /* 3.5 * ARCSIZE */
  to {
    transform: rotate(1080deg);
  }

  /* 4   * ARCSIZE */}

@keyframes blue-fade-in-out {
  from {
    opacity: 1;
  }

  25% {
    opacity: 1;
  }

  26% {
    opacity: 0;
  }

  89% {
    opacity: 0;
  }

  90% {
    opacity: 1;
  }

  100% {
    opacity: 1;
  }
}

@keyframes red-fade-in-out {
  from {
    opacity: 0;
  }

  15% {
    opacity: 0;
  }

  25% {
    opacity: 1;
  }

  50% {
    opacity: 1;
  }

  51% {
    opacity: 0;
  }
}

@keyframes yellow-fade-in-out {
  from {
    opacity: 0;
  }

  40% {
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  75% {
    opacity: 1;
  }

  76% {
    opacity: 0;
  }
}

@keyframes green-fade-in-out {
  from {
    opacity: 0;
  }

  65% {
    opacity: 0;
  }

  75% {
    opacity: 1;
  }

  90% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

/**
 * Patch the gap that appear between the two adjacent div.circle-clipper while the
 * spinner is rotating (appears on Chrome 38, Safari 7.1, and IE 11).
 */

.gap-patch {
  position: absolute;
  top: 0;
  left: 45%;
  width: 10%;
  height: 100%;
  overflow: hidden;
  border-color: inherit;
}

.gap-patch .circle {
  width: 1000%;
  left: -450%;
}

.circle-clipper {
  display: inline-block;
  position: relative;
  width: 50%;
  height: 100%;
  overflow: hidden;
  border-color: inherit;
}

.circle-clipper .circle {
  width: 200%;
  height: 100%;
  border-width: 3px;
  /* STROKEWIDTH */
  border-style: solid;
  border-color: inherit;
  border-bottom-color: transparent !important;
  border-radius: 50%;
  animation: none;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
}

.circle-clipper.left .circle {
  left: 0;
  border-right-color: transparent !important;
  transform: rotate(129deg);
}

.circle-clipper.right .circle {
  left: -100%;
  border-left-color: transparent !important;
  transform: rotate(-129deg);
}

.active .circle-clipper.left .circle {
  /* duration: ARCTIME */
  animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .circle-clipper.right .circle {
  /* duration: ARCTIME */
  animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

@keyframes left-spin {
  from {
    transform: rotate(130deg);
  }

  50% {
    transform: rotate(-5deg);
  }

  to {
    transform: rotate(130deg);
  }
}

@keyframes right-spin {
  from {
    transform: rotate(-130deg);
  }

  50% {
    transform: rotate(5deg);
  }

  to {
    transform: rotate(-130deg);
  }
}

#spinnerContainer.cooldown {
  /* duration: SHRINK_TIME */
  animation: container-rotate 1568ms linear infinite, fade-out 400ms cubic-bezier(0.4, 0, 0.2, 1);
}

@keyframes fade-out {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

.slider {
  position: relative;
  height: 400px;
  width: 100%;
}

.slider.fullscreen {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.slider.fullscreen ul.slides {
  height: 100%;
}

.slider.fullscreen ul.indicators {
  z-index: 2;
  bottom: 30px;
}

.slider .slides {
  background-color: #9e9e9e;
  margin: 0;
  height: 400px;
}

.slider .slides li {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: inherit;
  overflow: hidden;
}

.slider .slides li img {
  height: 100%;
  width: 100%;
  background-size: cover;
  background-position: center;
}

.slider .slides li .caption {
  color: #fff;
  position: absolute;
  top: 15%;
  left: 15%;
  width: 70%;
  opacity: 0;
}

.slider .slides li .caption p {
  color: #e0e0e0;
}

.slider .slides li.active {
  z-index: 2;
}

.slider .indicators {
  position: absolute;
  text-align: center;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
}

.slider .indicators .indicator-item {
  display: inline-block;
  position: relative;
  cursor: pointer;
  height: 16px;
  width: 16px;
  margin: 0 12px;
  background-color: #e0e0e0;
  transition: background-color .3s;
  border-radius: 50%;
}

.slider .indicators .indicator-item.active {
  background-color: #4CAF50;
}

.carousel {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 400px;
  perspective: 500px;
  transform-style: preserve-3d;
  transform-origin: 0% 50%;
}

.carousel.carousel-slider {
  top: 0;
  left: 0;
  height: 0;
}

.carousel.carousel-slider .carousel-fixed-item {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 20px;
  z-index: 1;
}

.carousel.carousel-slider .carousel-fixed-item.with-indicators {
  bottom: 68px;
}

.carousel.carousel-slider .carousel-item {
  width: 100%;
  height: 100%;
  min-height: 400px;
  position: absolute;
  top: 0;
  left: 0;
}

.carousel.carousel-slider .carousel-item h2 {
  font-size: 24px;
  font-weight: 500;
  line-height: 32px;
}

.carousel.carousel-slider .carousel-item p {
  font-size: 15px;
}

.carousel .carousel-item {
  display: none;
  width: 200px;
  height: 200px;
  position: absolute;
  top: 0;
  left: 0;
}

.carousel .carousel-item > img {
  width: 100%;
}

.carousel .indicators {
  position: absolute;
  text-align: center;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
}

.carousel .indicators .indicator-item {
  display: inline-block;
  position: relative;
  cursor: pointer;
  height: 8px;
  width: 8px;
  margin: 24px 4px;
  background-color: rgba(255, 255, 255, 0.5);
  transition: background-color .3s;
  border-radius: 50%;
}

.carousel .indicators .indicator-item.active {
  background-color: #fff;
}

.carousel.scrolling .carousel-item .materialboxed,
.carousel .carousel-item:not(.active) .materialboxed {
  pointer-events: none;
}

.tap-target-wrapper {
  width: 800px;
  height: 800px;
  position: fixed;
  z-index: 1000;
  visibility: hidden;
  transition: visibility 0s .3s;
}

.tap-target-wrapper.open {
  visibility: visible;
  transition: visibility 0s;
}

.tap-target-wrapper.open .tap-target {
  transform: scale(1);
  opacity: .95;
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1), opacity 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

.tap-target-wrapper.open .tap-target-wave::before {
  transform: scale(1);
}

.tap-target-wrapper.open .tap-target-wave::after {
  visibility: visible;
  animation: pulse-animation 1s cubic-bezier(0.24, 0, 0.38, 1) infinite;
  transition: opacity .3s, transform .3s, visibility 0s 1s;
}

.tap-target {
  position: absolute;
  font-size: 1rem;
  border-radius: 50%;
  background-color: #ee6e73;
  box-shadow: 0 20px 20px 0 rgba(0, 0, 0, 0.14), 0 10px 50px 0 rgba(0, 0, 0, 0.12), 0 30px 10px -20px rgba(0, 0, 0, 0.2);
  width: 100%;
  height: 100%;
  opacity: 0;
  transform: scale(0);
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1), opacity 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

.tap-target-content {
  position: relative;
  display: table-cell;
}

.tap-target-wave {
  position: absolute;
  border-radius: 50%;
  z-index: 10001;
}

.tap-target-wave::before,
.tap-target-wave::after {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #ffffff;
}

.tap-target-wave::before {
  transform: scale(0);
  transition: transform .3s;
}

.tap-target-wave::after {
  visibility: hidden;
  transition: opacity .3s, transform .3s, visibility 0s;
  z-index: -1;
}

.tap-target-origin {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10002;
  position: absolute !important;
}

.tap-target-origin:not(.btn):not(.btn-large),
.tap-target-origin:not(.btn):not(.btn-large):hover {
  background: none;
}

@media only screen and (max-width: 600px) {
  .tap-target,
  .tap-target-wrapper {
    width: 600px;
    height: 600px;
  }
}

.pulse {
  overflow: initial;
  position: relative;
}

.pulse::before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: inherit;
  border-radius: inherit;
  transition: opacity .3s, transform .3s;
  animation: pulse-animation 1s cubic-bezier(0.24, 0, 0.38, 1) infinite;
  z-index: -1;
}

@keyframes pulse-animation {
  0% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: 0;
    transform: scale(1.5);
  }

  100% {
    opacity: 0;
    transform: scale(1.5);
  }
}

/* ==========================================================================
   $BASE-PICKER
   ========================================================================== */

/**
 * Note: the root picker element should *NOT* be styled more than what's here.
 */

.picker {
  font-size: 16px;
  text-align: left;
  line-height: 1.2;
  color: #000000;
  position: absolute;
  z-index: 10000;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/**
 * The picker input element.
 */

.picker__input {
  cursor: default;
}

/**
 * When the picker is opened, the input element is "activated".
 */

.picker__input.picker__input--active {
  border-color: #0089ec;
}

/**
 * The holder is the only "scrollable" top-level container element.
 */

.picker__holder {
  width: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

/*!
 * Default mobile-first, responsive styling for pickadate.js
 * Demo: http://amsul.github.io/pickadate.js
 */

/**
 * Note: the root picker element should *NOT* be styled more than what's here.
 */

/**
 * Make the holder and frame fullscreen.
 */

.picker__holder,
.picker__frame {
  bottom: 0;
  left: 0;
  right: 0;
  top: 100%;
}

/**
 * The holder should overlay the entire screen.
 */

.picker__holder {
  position: fixed;
  transition: background 0.15s ease-out, top 0s 0.15s;
  -webkit-backface-visibility: hidden;
}

/**
 * The frame that bounds the box contents of the picker.
 */

.picker__frame {
  position: absolute;
  margin: 0 auto;
  min-width: 256px;
  width: 300px;
  max-height: 350px;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  opacity: 0;
  transition: all 0.15s ease-out;
}

@media (min-height: 28.875em) {
  .picker__frame {
    overflow: visible;
    top: auto;
    bottom: -100%;
    max-height: 80%;
  }
}

@media (min-height: 40.125em) {
  .picker__frame {
    margin-bottom: 7.5%;
  }
}

/**
 * The wrapper sets the stage to vertically align the box contents.
 */

.picker__wrap {
  display: table;
  width: 100%;
  height: 100%;
}

@media (min-height: 28.875em) {
  .picker__wrap {
    display: block;
  }
}

/**
 * The box contains all the picker contents.
 */

.picker__box {
  background: #ffffff;
  display: table-cell;
  vertical-align: middle;
}

@media (min-height: 28.875em) {
  .picker__box {
    display: block;
    border: 1px solid #777777;
    border-top-color: #898989;
    border-bottom-width: 0;
    border-radius: 5px 5px 0 0;
    box-shadow: 0 12px 36px 16px rgba(0, 0, 0, 0.24);
  }
}

/**
 * When the picker opens...
 */

.picker--opened .picker__holder {
  top: 0;
  background: transparent;
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#1E000000,endColorstr=#1E000000)";
  zoom: 1;
  background: rgba(0, 0, 0, 0.32);
  transition: background 0.15s ease-out;
}

.picker--opened .picker__frame {
  top: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  opacity: 1;
}

@media (min-height: 35.875em) {
  .picker--opened .picker__frame {
    top: 10%;
    bottom: auto;
  }
}

/**
 * For `large` screens, transform into an inline picker.
 */

/* ==========================================================================
   CUSTOM MATERIALIZE STYLES
   ========================================================================== */

.picker__input.picker__input--active {
  border-color: #E3F2FD;
}

.picker__frame {
  margin: 0 auto;
  max-width: 325px;
}

@media (min-height: 38.875em) {
  .picker--opened .picker__frame {
    top: 10%;
    bottom: auto;
  }
}

/* ==========================================================================
   $BASE-DATE-PICKER
   ========================================================================== */

/**
 * The picker box.
 */

.picker__box {
  padding: 0 1em;
}

/**
 * The header containing the month and year stuff.
 */

.picker__header {
  text-align: center;
  position: relative;
  margin-top: .75em;
}

/**
 * The month and year labels.
 */

.picker__month,
.picker__year {
  display: inline-block;
  margin-left: .25em;
  margin-right: .25em;
}

/**
 * The month and year selectors.
 */

.picker__select--month,
.picker__select--year {
  height: 2em;
  padding: 0;
  margin-left: .25em;
  margin-right: .25em;
}

.picker__select--month.browser-default {
  display: inline;
  background-color: #FFFFFF;
  width: 40%;
}

.picker__select--year.browser-default {
  display: inline;
  background-color: #FFFFFF;
  width: 26%;
}

.picker__select--month:focus,
.picker__select--year:focus {
  border-color: rgba(0, 0, 0, 0.05);
}

/**
 * The month navigation buttons.
 */

.picker__nav--prev,
.picker__nav--next {
  position: absolute;
  padding: .5em 1.25em;
  width: 1em;
  height: 1em;
  box-sizing: content-box;
  top: -0.25em;
}

.picker__nav--prev {
  left: -1em;
  padding-right: 1.25em;
}

.picker__nav--next {
  right: -1em;
  padding-left: 1.25em;
}

.picker__nav--disabled,
.picker__nav--disabled:hover,
.picker__nav--disabled:before,
.picker__nav--disabled:before:hover {
  cursor: default;
  background: none;
  border-right-color: #f5f5f5;
  border-left-color: #f5f5f5;
}

/**
 * The calendar table of dates
 */

.picker__table {
  text-align: center;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  font-size: 1rem;
  width: 100%;
  margin-top: .75em;
  margin-bottom: .5em;
}

.picker__table th,
.picker__table td {
  text-align: center;
}

.picker__table td {
  margin: 0;
  padding: 0;
}

/**
 * The weekday labels
 */

.picker__weekday {
  width: 14.285714286%;
  font-size: .75em;
  padding-bottom: .25em;
  color: #999999;
  font-weight: 500;
  /* Increase the spacing a tad */
}

@media (min-height: 33.875em) {
  .picker__weekday {
    padding-bottom: .5em;
  }
}

/**
 * The days on the calendar
 */

.picker__day--today {
  position: relative;
  color: #595959;
  letter-spacing: -.3;
  padding: .75rem 0;
  font-weight: 400;
  border: 1px solid transparent;
}

.picker__day--disabled:before {
  border-top-color: #aaaaaa;
}

.picker__day--infocus:hover {
  cursor: pointer;
  color: #000;
  font-weight: 500;
}

.picker__day--outfocus {
  display: none;
  padding: .75rem 0;
  color: #fff;
}

.picker__day--outfocus:hover {
  cursor: pointer;
  color: #dddddd;
  font-weight: 500;
}

.picker__day--highlighted:hover,
.picker--focused .picker__day--highlighted {
  cursor: pointer;
}

.picker__day--selected,
.picker__day--selected:hover,
.picker--focused .picker__day--selected {
  border-radius: 50%;
  transform: scale(0.75);
  background: #0089ec;
  color: #ffffff;
}

.picker__day--disabled,
.picker__day--disabled:hover,
.picker--focused .picker__day--disabled {
  background: #f5f5f5;
  border-color: #f5f5f5;
  color: #dddddd;
  cursor: default;
}

.picker__day--highlighted.picker__day--disabled,
.picker__day--highlighted.picker__day--disabled:hover {
  background: #bbbbbb;
}

/**
 * The footer containing the "today", "clear", and "close" buttons.
 */

.picker__footer {
  text-align: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.picker__button--today,
.picker__button--clear,
.picker__button--close {
  border: 1px solid #ffffff;
  background: #ffffff;
  font-size: .8em;
  padding: .66em 0;
  font-weight: bold;
  width: 33%;
  display: inline-block;
  vertical-align: bottom;
}

.picker__button--today:hover,
.picker__button--clear:hover,
.picker__button--close:hover {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
  border-bottom-color: #b1dcfb;
}

.picker__button--today:focus,
.picker__button--clear:focus,
.picker__button--close:focus {
  background: #b1dcfb;
  border-color: rgba(0, 0, 0, 0.05);
  outline: none;
}

.picker__button--today:before,
.picker__button--clear:before,
.picker__button--close:before {
  position: relative;
  display: inline-block;
  height: 0;
}

.picker__button--today:before,
.picker__button--clear:before {
  content: " ";
  margin-right: .45em;
}

.picker__button--today:before {
  top: -0.05em;
  width: 0;
  border-top: 0.66em solid #0059bc;
  border-left: .66em solid transparent;
}

.picker__button--clear:before {
  top: -0.25em;
  width: .66em;
  border-top: 3px solid #ee2200;
}

.picker__button--close:before {
  content: "\D7";
  top: -0.1em;
  vertical-align: top;
  font-size: 1.1em;
  margin-right: .35em;
  color: #777777;
}

.picker__button--today[disabled],
.picker__button--today[disabled]:hover {
  background: #f5f5f5;
  border-color: #f5f5f5;
  color: #dddddd;
  cursor: default;
}

.picker__button--today[disabled]:before {
  border-top-color: #aaaaaa;
}

/* ==========================================================================
   CUSTOM MATERIALIZE STYLES
   ========================================================================== */

.picker__box {
  border-radius: 2px;
  overflow: hidden;
}

.picker__date-display {
  text-align: center;
  background-color: #26a69a;
  color: #fff;
  padding-bottom: 15px;
  font-weight: 300;
}

.picker__nav--prev:hover,
.picker__nav--next:hover {
  cursor: pointer;
  color: #000000;
  background: #a1ded8;
}

.picker__weekday-display {
  background-color: #1f897f;
  padding: 10px;
  font-weight: 200;
  letter-spacing: .5;
  font-size: 1rem;
  margin-bottom: 15px;
}

.picker__month-display {
  text-transform: uppercase;
  font-size: 2rem;
}

.picker__day-display {
  font-size: 4.5rem;
  font-weight: 400;
}

.picker__year-display {
  font-size: 1.8rem;
  color: rgba(255, 255, 255, 0.4);
}

.picker__box {
  padding: 0;
}

.picker__calendar-container {
  padding: 0 1rem;
}

.picker__calendar-container thead {
  border: none;
}

.picker__table {
  margin-top: 0;
  margin-bottom: .5em;
}

.picker__day--infocus {
  color: #595959;
  letter-spacing: -.3;
  padding: .75rem 0;
  font-weight: 400;
  border: 1px solid transparent;
}

.picker__day.picker__day--today {
  color: #26a69a;
}

.picker__day.picker__day--today.picker__day--selected {
  color: #fff;
}

.picker__weekday {
  font-size: .9rem;
}

.picker__day--selected,
.picker__day--selected:hover,
.picker--focused .picker__day--selected {
  border-radius: 50%;
  transform: scale(0.9);
  background-color: #26a69a;
  color: #ffffff;
}

.picker__day--selected.picker__day--outfocus,
.picker__day--selected:hover.picker__day--outfocus,
.picker--focused .picker__day--selected.picker__day--outfocus {
  background-color: #a1ded8;
}

.picker__footer {
  text-align: right;
  padding: 5px 10px;
}

.picker__close,
.picker__today {
  font-size: 1.1rem;
  padding: 0 1rem;
  color: #26a69a;
}

.picker__nav--prev:before,
.picker__nav--next:before {
  content: " ";
  border-top: .5em solid transparent;
  border-bottom: .5em solid transparent;
  border-right: 0.75em solid #676767;
  width: 0;
  height: 0;
  display: block;
  margin: 0 auto;
}

.picker__nav--next:before {
  border-right: 0;
  border-left: 0.75em solid #676767;
}

button.picker__today:focus,
button.picker__clear:focus,
button.picker__close:focus {
  background-color: #a1ded8;
}

/* ==========================================================================
   $BASE-TIME-PICKER
   ========================================================================== */

/**
 * The list of times.
 */

.picker__list {
  list-style: none;
  padding: 0.75em 0 4.2em;
  margin: 0;
}

/**
 * The times on the clock.
 */

.picker__list-item {
  border-bottom: 1px solid #dddddd;
  border-top: 1px solid #dddddd;
  margin-bottom: -1px;
  position: relative;
  background: #ffffff;
  padding: .75em 1.25em;
}

@media (min-height: 46.75em) {
  .picker__list-item {
    padding: .5em 1em;
  }
}

/* Hovered time */

.picker__list-item:hover {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
  border-color: #0089ec;
  z-index: 10;
}

/* Highlighted and hovered/focused time */

.picker__list-item--highlighted {
  border-color: #0089ec;
  z-index: 10;
}

.picker__list-item--highlighted:hover,
.picker--focused .picker__list-item--highlighted {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
}

/* Selected and hovered/focused time */

.picker__list-item--selected,
.picker__list-item--selected:hover,
.picker--focused .picker__list-item--selected {
  background: #0089ec;
  color: #ffffff;
  z-index: 10;
}

/* Disabled time */

.picker__list-item--disabled,
.picker__list-item--disabled:hover,
.picker--focused .picker__list-item--disabled {
  background: #f5f5f5;
  border-color: #f5f5f5;
  color: #dddddd;
  cursor: default;
  border-color: #dddddd;
  z-index: auto;
}

/**
 * The clear button
 */

.picker--time .picker__button--clear {
  display: block;
  width: 80%;
  margin: 1em auto 0;
  padding: 1em 1.25em;
  background: none;
  border: 0;
  font-weight: 500;
  font-size: .67em;
  text-align: center;
  text-transform: uppercase;
  color: #666;
}

.picker--time .picker__button--clear:hover,
.picker--time .picker__button--clear:focus {
  color: #000000;
  background: #b1dcfb;
  background: #ee2200;
  border-color: #ee2200;
  cursor: pointer;
  color: #ffffff;
  outline: none;
}

.picker--time .picker__button--clear:before {
  top: -0.25em;
  color: #666;
  font-size: 1.25em;
  font-weight: bold;
}

.picker--time .picker__button--clear:hover:before,
.picker--time .picker__button--clear:focus:before {
  color: #ffffff;
}

/* ==========================================================================
   $DEFAULT-TIME-PICKER
   ========================================================================== */

/**
 * The frame the bounds the time picker.
 */

.picker--time .picker__frame {
  min-width: 256px;
  max-width: 320px;
}

/**
 * The picker box.
 */

.picker--time .picker__box {
  font-size: 1em;
  background: #f2f2f2;
  padding: 0;
}

@media (min-height: 40.125em) {
  .picker--time .picker__box {
    margin-bottom: 5em;
  }
}

html,
body {
  background-color: #fff;
  color: #636b6f;
  font-family: 'Raleway', sans-serif;
  font-weight: 100;
  height: 100vh;
  margin: 0;
}

.full-height {
  height: 100vh;
}

.flex-center {
  -ms-flex-align: center;
      align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}

.position-ref {
  position: relative;
}

.top-right {
  position: absolute;
  right: 10px;
  top: 18px;
}

.content {
  text-align: center;
}

.title {
  font-size: 12.6em;
}

.links > a {
  color: #636b6f;
  padding: 0 25px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .1rem;
  text-decoration: none;
  text-transform: uppercase;
}

.m-b-md {
  margin-bottom: 30px;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovcmVzb3VyY2VzL2Fzc2V0cy9zYXNzLzQyLnNjc3MiLCJzb3VyY2VzIjpbIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L3Jlc291cmNlcy9hc3NldHMvc2Fzcy80Mi5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9fYm9vdHN0cmFwLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2hpZGUtdGV4dC5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19vcGFjaXR5LnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2xhYmVscy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19yZXNldC1maWx0ZXIuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcmVzaXplLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc3BvbnNpdmUtdmlzaWJpbGl0eS5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19zaXplLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3RhYi1mb2N1cy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGV4dC1vdmVyZmxvdy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL192ZW5kb3ItcHJlZml4ZXMuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fYWxlcnRzLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcGFuZWxzLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19mb3Jtcy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19wcm9ncmVzcy1iYXIuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGFibGUtcm93LnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19jZW50ZXItYmxvY2suc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbmF2LXZlcnRpY2FsLWFsaWduLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19ub3JtYWxpemUuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wcmludC5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2dseXBoaWNvbnMuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19zY2FmZm9sZGluZy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3R5cGUuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jb2RlLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZ3JpZC5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3RhYmxlcy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Zvcm1zLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fYnV0dG9ucy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2NvbXBvbmVudC1hbmltYXRpb25zLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZHJvcGRvd25zLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fYnV0dG9uLWdyb3Vwcy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2lucHV0LWdyb3Vwcy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25hdnMuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19uYXZiYXIuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19icmVhZGNydW1icy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3BhZ2luYXRpb24uc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wYWdlci5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2xhYmVscy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2JhZGdlcy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2p1bWJvdHJvbi5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3RodW1ibmFpbHMuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19hbGVydHMuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wcm9ncmVzcy1iYXJzLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbWVkaWEuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19saXN0LWdyb3VwLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcGFuZWxzLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3dlbGxzLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fY2xvc2Uuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19tb2RhbHMuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL190b29sdGlwLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcG9wb3ZlcnMuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jYXJvdXNlbC5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3V0aWxpdGllcy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3Jlc3BvbnNpdmUtdXRpbGl0aWVzLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvbWF0ZXJpYWxpemUuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19taXhpbnMuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19jb2xvci5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX3ZhcmlhYmxlcy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX25vcm1hbGl6ZS5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX2dsb2JhbC5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX2JhZGdlcy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX2ljb25zLW1hdGVyaWFsLWRlc2lnbi5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX2dyaWQuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19uYXZiYXIuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19yb2JvdG8uc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL190eXBvZ3JhcGh5LnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9fdHJhbnNpdGlvbnMuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19jYXJkcy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX3RvYXN0LnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19idXR0b25zLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL193YXZlcy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX21vZGFsLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9fY29sbGFwc2libGUuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19jaGlwcy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvX21hdGVyaWFsYm94LnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9mb3Jtcy9fZm9ybXMuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL2Zvcm1zL19pbnB1dC1maWVsZHMuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL2Zvcm1zL19yYWRpby1idXR0b25zLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9mb3Jtcy9fY2hlY2tib3hlcy5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvZm9ybXMvX3N3aXRjaGVzLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9mb3Jtcy9fc2VsZWN0LnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9mb3Jtcy9fZmlsZS1pbnB1dC5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvZm9ybXMvX3JhbmdlLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9fdGFibGVfb2ZfY29udGVudHMuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19zaWRlTmF2LnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9fcHJlbG9hZGVyLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCIvZGF0YS9kYXNoYm9hcmQub2ZlcnRpcy5jei9ub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvY29tcG9uZW50cy9fY2Fyb3VzZWwuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL190YXBUYXJnZXQuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL19wdWxzZS5zY3NzIiwiL2RhdGEvZGFzaGJvYXJkLm9mZXJ0aXMuY3ovbm9kZV9tb2R1bGVzL21hdGVyaWFsaXplLWNzcy9zYXNzL2NvbXBvbmVudHMvZGF0ZV9waWNrZXIvX2RlZmF1bHQuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL2RhdGVfcGlja2VyL19kZWZhdWx0LmRhdGUuc2NzcyIsIi9kYXRhL2Rhc2hib2FyZC5vZmVydGlzLmN6L25vZGVfbW9kdWxlcy9tYXRlcmlhbGl6ZS1jc3Mvc2Fzcy9jb21wb25lbnRzL2RhdGVfcGlja2VyL19kZWZhdWx0LnRpbWUuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBCb290c3RyYXBcbkBpbXBvcnQgXCJub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcFwiO1xuXG4vLyBNYXRlcmlhbGl6ZS5jc3NcbkBpbXBvcnQgXCJub2RlX21vZHVsZXMvbWF0ZXJpYWxpemUtY3NzL3Nhc3MvbWF0ZXJpYWxpemUuc2Nzc1wiO1xuXG5odG1sLCBib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICM2MzZiNmY7XG4gIGZvbnQtZmFtaWx5OiAnUmFsZXdheScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGhlaWdodDogMTAwdmg7XG4gIG1hcmdpbjogMDtcbn1cblxuLmZ1bGwtaGVpZ2h0IHtcbiAgaGVpZ2h0OiAxMDB2aDtcbn1cblxuLmZsZXgtY2VudGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5wb3NpdGlvbi1yZWYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi50b3AtcmlnaHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDE4cHg7XG59XG5cbi5jb250ZW50IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGl0bGUge1xuICBmb250LXNpemU6IDEyLjZlbTtcbn1cblxuLmxpbmtzID4gYSB7XG4gIGNvbG9yOiAjNjM2YjZmO1xuICBwYWRkaW5nOiAwIDI1cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC4xcmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5tLWItbWQge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufSIsIi8qIVxuICogQm9vdHN0cmFwIHYzLjQuMCAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcbiAqIENvcHlyaWdodCAyMDExLTIwMTggVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuXG4vLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9taXhpbnNcIjtcblxuLy8gUmVzZXQgYW5kIGRlcGVuZGVuY2llc1xuQGltcG9ydCBcImJvb3RzdHJhcC9ub3JtYWxpemVcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcHJpbnRcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZ2x5cGhpY29uc1wiO1xuXG4vLyBDb3JlIENTU1xuQGltcG9ydCBcImJvb3RzdHJhcC9zY2FmZm9sZGluZ1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC90eXBlXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2NvZGVcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZ3JpZFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC90YWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZm9ybXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYnV0dG9uc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwiYm9vdHN0cmFwL2NvbXBvbmVudC1hbmltYXRpb25zXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Ryb3Bkb3duc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9idXR0b24tZ3JvdXBzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2lucHV0LWdyb3Vwc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9uYXZzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL25hdmJhclwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9icmVhZGNydW1ic1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3BhZ2VyXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2xhYmVsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9iYWRnZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvanVtYm90cm9uXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3RodW1ibmFpbHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYWxlcnRzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Byb2dyZXNzLWJhcnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbWVkaWFcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wYW5lbHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcmVzcG9uc2l2ZS1lbWJlZFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC93ZWxsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9jbG9zZVwiO1xuXG4vLyBDb21wb25lbnRzIHcvIEphdmFTY3JpcHRcbkBpbXBvcnQgXCJib290c3RyYXAvbW9kYWxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Rvb2x0aXBcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcG9wb3ZlcnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvY2Fyb3VzZWxcIjtcblxuLy8gVXRpbGl0eSBjbGFzc2VzXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3V0aWxpdGllc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9yZXNwb25zaXZlLXV0aWxpdGllc1wiO1xuIiwiJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlcjogZmFsc2UgIWRlZmF1bHQ7XG4vL1xuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vPT0gQ29sb3JzXG4vL1xuLy8jIyBHcmF5IGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxuXG4kZ3JheS1iYXNlOiAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRncmF5LWRhcmtlcjogICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDEzLjUlKSAhZGVmYXVsdDsgLy8gIzIyMlxuJGdyYXktZGFyazogICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMjAlKSAhZGVmYXVsdDsgICAvLyAjMzMzXG4kZ3JheTogICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAzMy41JSkgIWRlZmF1bHQ7IC8vICM1NTVcbiRncmF5LWxpZ2h0OiAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDQ2LjclKSAhZGVmYXVsdDsgLy8gIzc3N1xuJGdyYXktbGlnaHRlcjogICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgOTMuNSUpICFkZWZhdWx0OyAvLyAjZWVlXG5cbiRicmFuZC1wcmltYXJ5OiAgICAgICAgIGRhcmtlbigjNDI4YmNhLCA2LjUlKSAhZGVmYXVsdDsgLy8gIzMzN2FiN1xuJGJyYW5kLXN1Y2Nlc3M6ICAgICAgICAgIzVjYjg1YyAhZGVmYXVsdDtcbiRicmFuZC1pbmZvOiAgICAgICAgICAgICM1YmMwZGUgIWRlZmF1bHQ7XG4kYnJhbmQtd2FybmluZzogICAgICAgICAjZjBhZDRlICFkZWZhdWx0O1xuJGJyYW5kLWRhbmdlcjogICAgICAgICAgI2Q5NTM0ZiAhZGVmYXVsdDtcblxuXG4vLz09IFNjYWZmb2xkaW5nXG4vL1xuLy8jIyBTZXR0aW5ncyBmb3Igc29tZSBvZiB0aGUgbW9zdCBnbG9iYWwgc3R5bGVzLlxuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIGA8Ym9keT5gLlxuJGJvZHktYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIHRleHQgY29sb3Igb24gYDxib2R5PmAuXG4kdGV4dC1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCB0ZXh0dWFsIGxpbmsgY29sb3IuXG4kbGluay1jb2xvcjogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBjb2xvciBzZXQgdmlhIGBkYXJrZW4oKWAgZnVuY3Rpb24uXG4kbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgZGVjb3JhdGlvbi5cbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcblxuXG4vLz09IFR5cG9ncmFwaHlcbi8vXG4vLyMjIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1zZXJpZjogICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IG1vbm9zcGFjZSBmb250cyBmb3IgYDxjb2RlPmAsIGA8a2JkPmAsIGFuZCBgPHByZT5gLlxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtc21hbGw6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbiRmb250LXNpemUtaDE6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuNikpICFkZWZhdWx0OyAvLyB+MzZweFxuJGZvbnQtc2l6ZS1oMjogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi4xNSkpICFkZWZhdWx0OyAvLyB+MzBweFxuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjcpKSAhZGVmYXVsdDsgLy8gfjI0cHhcbiRmb250LXNpemUtaDQ6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg2OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4vLyoqIFVuaXQtbGVzcyBgbGluZS1oZWlnaHRgIGZvciB1c2UgaW4gY29tcG9uZW50cyBsaWtlIGJ1dHRvbnMuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNDI4NTcxNDI5ICFkZWZhdWx0OyAvLyAyMC8xNFxuLy8qKiBDb21wdXRlZCBcImxpbmUtaGVpZ2h0XCIgKGBmb250LXNpemVgICogYGxpbmUtaGVpZ2h0YCkgZm9yIHVzZSB3aXRoIGBtYXJnaW5gLCBgcGFkZGluZ2AsIGV0Yy5cbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yMHB4XG5cbi8vKiogQnkgZGVmYXVsdCwgdGhpcyBpbmhlcml0cyBmcm9tIHRoZSBgPGJvZHk+YC5cbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cblxuLy89PSBJY29ub2dyYXBoeVxuLy9cbi8vIyMgU3BlY2lmeSBjdXN0b20gbG9jYXRpb24gYW5kIGZpbGVuYW1lIG9mIHRoZSBpbmNsdWRlZCBHbHlwaGljb25zIGljb24gZm9udC4gVXNlZnVsIGZvciB0aG9zZSBpbmNsdWRpbmcgQm9vdHN0cmFwIHZpYSBCb3dlci5cblxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXG5cbi8vIFtjb252ZXJ0ZXJdIElmICRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIgaWYgdXNlZCwgcHJvdmlkZSBwYXRoIHJlbGF0aXZlIHRvIHRoZSBhc3NldHMgbG9hZCBwYXRoLlxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBiZWNhdXNlIHNvbWUgYXNzZXQgaGVscGVycywgc3VjaCBhcyBTcHJvY2tldHMsIGRvIG5vdCB3b3JrIHdpdGggZmlsZS1yZWxhdGl2ZSBwYXRocy5cbiRpY29uLWZvbnQtcGF0aDogaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgXCJib290c3RyYXAvXCIsIFwiLi4vZm9udHMvYm9vdHN0cmFwL1wiKSAhZGVmYXVsdDtcblxuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxuJGljb24tZm9udC1uYW1lOiAgICAgICAgICBcImdseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXJcIiAhZGVmYXVsdDtcbi8vKiogRWxlbWVudCBJRCB3aXRoaW4gU1ZHIGljb24gZmlsZS5cbiRpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIiAhZGVmYXVsdDtcblxuXG4vLz09IENvbXBvbmVudHNcbi8vXG4vLyMjIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS4gVmFsdWVzIGJhc2VkIG9uIDE0cHggdGV4dCBhbmQgMS40MjggbGluZS1oZWlnaHQgKH4yMHB4IHRvIHN0YXJ0KS5cblxuJHBhZGRpbmctYmFzZS12ZXJ0aWNhbDogICAgIDZweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDogICAxMnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDogICAgMTBweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw6ICAxNnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDogICAgNXB4ICFkZWZhdWx0O1xuJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDogIDEwcHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXhzLXZlcnRpY2FsOiAgICAgICAxcHggIWRlZmF1bHQ7XG4kcGFkZGluZy14cy1ob3Jpem9udGFsOiAgICAgNXB4ICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtbGFyZ2U6ICAgICAgICAgMS4zMzMzMzMzICFkZWZhdWx0OyAvLyBleHRyYSBkZWNpbWFscyBmb3IgV2luIDguMSBDaHJvbWVcbiRsaW5lLWhlaWdodC1zbWFsbDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICA0cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgNnB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDNweCAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8qKiBXaWR0aCBvZiB0aGUgYGJvcmRlcmAgZm9yIGdlbmVyYXRpbmcgY2FyZXRzIHRoYXQgaW5kaWNhdGUgZHJvcGRvd25zLlxuJGNhcmV0LXdpZHRoLWJhc2U6ICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogQ2FyZXRzIGluY3JlYXNlIHNsaWdodGx5IGluIHNpemUgZm9yIGxhcmdlciBjb21wb25lbnRzLlxuJGNhcmV0LXdpZHRoLWxhcmdlOiAgICAgICAgIDVweCAhZGVmYXVsdDtcblxuXG4vLz09IFRhYmxlc1xuLy9cbi8vIyMgQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyoqIFBhZGRpbmcgZm9yIGA8dGg+YHMgYW5kIGA8dGQ+YHMuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA1cHggIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtc3RyaXBlZGAuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5ZjkgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRhYmxlIGFuZCBjZWxsIGJvcmRlcnMuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBCdXR0b25zXG4vL1xuLy8jIyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG5cbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbiRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnRuLWluZm8tYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4td2FybmluZy1iZzogICAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4td2FybmluZy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4vLyBUaGlzIGhhcyBubyBlZmZlY3Qgb24gYDxzZWxlY3Q+YHMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICAjNjZhZmU5ICFkZWZhdWx0O1xuXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgICAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAgICAgIChmbG9vcigkZm9udC1zaXplLXNtYWxsICogJGxpbmUtaGVpZ2h0LXNtYWxsKSArICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG5cbi8vKiogYC5mb3JtLWdyb3VwYCBtYXJnaW5cbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG5cbi8vPT0gRHJvcGRvd25zXG4vL1xuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgLlxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMTUpICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxuJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbi8vKiogSG92ZXIgY29sb3IgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRncmF5LWRhcmssIDUlKSAhZGVmYXVsdDtcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGhlYWRlcnMgd2l0aGluIGRyb3Bkb3duIG1lbnVzLlxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogRGVwcmVjYXRlZCBgJGRyb3Bkb3duLWNhcmV0LWNvbG9yYCBhcyBvZiB2My4xLjBcbiRkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG5cblxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG4vL1xuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXG5cbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG5cblxuLy89PSBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4teHM6ICAgICAgICAgICAgICAgICAgNDgwcHggIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHMtbWluYCBhcyBvZiB2My4yLjBcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi14cyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1waG9uZWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXBob25lOiAgICAgICAgICAgICAgICRzY3JlZW4teHMtbWluICFkZWZhdWx0O1xuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1zbWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXNtICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXRhYmxldGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXRhYmxldDogICAgICAgICAgICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLW1kYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbWQ6ICAgICAgICAgICAgICAgICAgOTkycHggIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbWQgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWRlc2t0b3A6ICAgICAgICAgICAgICRzY3JlZW4tbWQtbWluICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZ2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcbiRzY3JlZW4tbGctbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1sZyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZy1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGctZGVza3RvcDogICAgICAgICAgJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNvIG1lZGlhIHF1ZXJpZXMgZG9uJ3Qgb3ZlcmxhcCB3aGVuIHJlcXVpcmVkLCBwcm92aWRlIGEgbWF4aW11bVxuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbWQtbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gR3JpZCBzeXN0ZW1cbi8vXG4vLyMjIERlZmluZSB5b3VyIGN1c3RvbSByZXNwb25zaXZlIGdyaWQuXG5cbi8vKiogTnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYmV0d2VlbiBjb2x1bW5zLiBHZXRzIGRpdmlkZWQgaW4gaGFsZiBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0LlxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4vLyBOYXZiYXIgY29sbGFwc2Vcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBDb250YWluZXIgc2l6ZXNcbi8vXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuJGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICg3MjBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1zbS1taW5gIGFuZCB1cC5cbiRjb250YWluZXItc206ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXRhYmxldCAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcbiRjb250YWluZXItZGVza3RvcDogICAgICAgICAgICAoOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbWQtbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLW1kOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1kZXNrdG9wICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcbiRjb250YWluZXItbGFyZ2UtZGVza3RvcDogICAgICAoMTE0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLWxnLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1sZzogICAgICAgICAgICAgICAgICRjb250YWluZXItbGFyZ2UtZGVza3RvcCAhZGVmYXVsdDtcblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICRsaW5lLWhlaWdodC1jb21wdXRlZCAhZGVmYXVsdDtcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKCgkbmF2YmFyLWhlaWdodCAtICRsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKSAhZGVmYXVsdDtcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBsaW5rc1xuJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09PSBJbnZlcnRlZCBuYXZiYXJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IE5hdnNcbi8vXG4vLyMjXG5cbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vPT0gVGFic1xuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4vLz09IFBpbGxzXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2luYXRpb25cbi8vXG4vLyMjXG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnZXJcbi8vXG4vLyMjXG5cbiRwYWdlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYm9yZGVyICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJHBhZ2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwYWdlci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuJHBhZ2VyLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBKdW1ib3Ryb25cbi8vXG4vLyMjXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjogICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWZvbnQtc2l6ZTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjUpKSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1mb250LXNpemU6ICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDQuNSkpICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGNvbG9ycyBmb3IgZm9ybSBmZWVkYmFjayBzdGF0ZXMgYW5kLCBieSBkZWZhdWx0LCBhbGVydHMuXG5cbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMzYzc2M2QgIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAjZGZmMGQ4ICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgICAgIzMxNzA4ZiAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNkOWVkZjcgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpICFkZWZhdWx0O1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS13YXJuaW5nLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG5cbi8vPT0gVG9vbHRpcHNcbi8vXG4vLyMjXG5cbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYmFja2dyb3VuZCBjb2xvclxuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBhcnJvdyBjb2xvclxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBQb3BvdmVyc1xuLy9cbi8vIyNcblxuLy8qKiBQb3BvdmVyIGJvZHkgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjIpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxuJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgdGl0bGUgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItdGl0bGUtYmc6ICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlX2luKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgMC4wNSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOiAgZGFya2VuKCRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvciwgMjAlKSAhZGVmYXVsdDtcblxuXG4vLz09IExhYmVsc1xuLy9cbi8vIyNcblxuLy8qKiBEZWZhdWx0IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBQcmltYXJ5IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRhbmdlci1iZzogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGxhYmVsIHRleHQgY29sb3JcbiRsYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgdGV4dCBjb2xvciBvZiBhIGxpbmtlZCBsYWJlbFxuJGxhYmVsLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IE1vZGFsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCB0aXRsZVxuJG1vZGFsLXRpdGxlLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgdGl0bGUgbGluZS1oZWlnaHRcbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgY29udGVudCBhcmVhXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjIpICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvciAqKmZvciBJRTgqKlxuJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4vLyoqIE1vZGFsIGJhY2tkcm9wIGJhY2tncm91bmQgY29sb3JcbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGJhY2tkcm9wIG9wYWNpdHlcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgIC41ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAjZTVlNWU1ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBmb290ZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmc6ICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICBib2xkICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy89PSBQcm9ncmVzcyBiYXJzXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogUHJvZ3Jlc3MgYmFyIHRleHQgY29sb3JcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFZhcmlhYmxlIGZvciBzZXR0aW5nIHJvdW5kZWQgY29ybmVycyBvbiBwcm9ncmVzcyBiYXIuXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZzogICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnOiAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcblxuXG4vLz09IExpc3QgZ3JvdXBcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvbiBgLmxpc3QtZ3JvdXAtaXRlbWBcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYC5saXN0LWdyb3VwLWl0ZW1gIGJvcmRlciBjb2xvclxuJGxpc3QtZ3JvdXAtYm9yZGVyOiAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I6ICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IFBhbmVsc1xuLy9cbi8vIyNcblxuJHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtaGVhZGluZy1wYWRkaW5nOiAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICAkcGFuZWwtaGVhZGluZy1wYWRkaW5nICFkZWZhdWx0O1xuJHBhbmVsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcbiRwYW5lbC1pbm5lci1ib3JkZXI6ICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZzogICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBUaHVtYm5haWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJhY2tncm91bmQgY29sb3JcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBjYXB0aW9uXG4kdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHggIWRlZmF1bHQ7XG5cblxuLy89PSBXZWxsc1xuLy9cbi8vIyNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR3ZWxsLWJvcmRlcjogICAgICAgICAgICAgICAgIGRhcmtlbigkd2VsbC1iZywgNyUpICFkZWZhdWx0O1xuXG5cbi8vPT0gQmFkZ2VzXG4vL1xuLy8jI1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxuJGJhZGdlLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIEJhZGdlIHRleHQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuXG4vLz09IEJyZWFkY3J1bWJzXG4vL1xuLy8jI1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDhweCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmctaG9yaXpvbnRhbDogMTVweCAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiBiYWNrZ3JvdW5kIGNvbG9yXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgdGV4dCBjb2xvclxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGN1cnJlbnQgcGFnZSBpbiB0aGUgYnJlYWRjcnVtYlxuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogVGV4dHVhbCBzZXBhcmF0b3IgZm9yIGJldHdlZW4gYnJlYWRjcnVtYiBlbGVtZW50c1xuJGJyZWFkY3J1bWItc2VwYXJhdG9yOiAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcblxuXG4vLz09IENhcm91c2VsXG4vL1xuLy8jI1xuXG4kY2Fyb3VzZWwtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgLjYpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDbG9zZVxuLy9cbi8vIyNcblxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDb2RlXG4vL1xuLy8jI1xuXG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYzcyNTRlICFkZWZhdWx0O1xuJGNvZGUtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y5ZjJmNCAhZGVmYXVsdDtcblxuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cbiRwcmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwZVxuLy9cbi8vIyNcblxuLy8qKiBIb3Jpem9udGFsIG9mZnNldCBmb3IgZm9ybXMgYW5kIGxpc3RzLlxuJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDogMTgwcHggIWRlZmF1bHQ7XG4vLyoqIFRleHQgbXV0ZWQgY29sb3JcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBBYmJyZXZpYXRpb25zIGFuZCBhY3JvbnltcyBib3JkZXIgY29sb3JcbiRhYmJyLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBIZWFkaW5ncyBzbWFsbCBjb2xvclxuJGhlYWRpbmdzLXNtYWxsLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgc21hbGwgY29sb3JcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGZvbnQgc2l6ZVxuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGJvcmRlciBjb2xvclxuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogUGFnZSBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBXaWR0aCBvZiBob3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3QgdGl0bGVzXG4kZGwtaG9yaXpvbnRhbC1vZmZzZXQ6ICAgICAgICAkY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCAuZGwtaG9yaXpvbnRhbCBiZWNvbWVzIGhvcml6b250YWxcbiRkbC1ob3Jpem9udGFsLWJyZWFrcG9pbnQ6ICAgICRncmlkLWZsb2F0LWJyZWFrcG9pbnQgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4iLCIvLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy9oaWRlLXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvb3BhY2l0eVwiO1xuQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xuQGltcG9ydCBcIm1peGlucy9sYWJlbHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtZmlsdGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNwb25zaXZlLXZpc2liaWxpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy90YWItZm9jdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtb3ZlcmZsb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmVuZG9yLXByZWZpeGVzXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFuZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtZGl2aWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy9wcm9ncmVzcy1iYXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtcm93XCI7XG5cbi8vIFNraW5zXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tncm91bmQtdmFyaWFudFwiO1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xuXG4vLyBMYXlvdXRcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2VudGVyLWJsb2NrXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi12ZXJ0aWNhbC1hbGlnblwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbi8vXG4vLyBIZWFkcyB1cCEgdjMgbGF1bmNoZWQgd2l0aCBvbmx5IGAuaGlkZS10ZXh0KClgLCBidXQgcGVyIG91ciBwYXR0ZXJuIGZvclxuLy8gbWl4aW5zIGJlaW5nIHJldXNlZCBhcyBjbGFzc2VzIHdpdGggdGhlIHNhbWUgbmFtZSwgdGhpcyBkb2Vzbid0IGhvbGQgdXAuIEFzXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC5cbi8vXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2NvbW1pdC9hYTAzOTZlYWU3NTdcblxuLy8gRGVwcmVjYXRlZCBhcyBvZiB2My4wLjEgKGhhcyBiZWVuIHJlbW92ZWQgaW4gdjQpXG5AbWl4aW4gaGlkZS10ZXh0KCkge1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gTmV3IG1peGluIHRvIHVzZSBhcyBvZiB2My4wLjFcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XG4gIEBpbmNsdWRlIGhpZGUtdGV4dDtcbn1cbiIsIi8vIE9wYWNpdHlcblxuQG1peGluIG9wYWNpdHkoJG9wYWNpdHkpIHtcbiAgJG9wYWNpdHktaWU6ICgkb3BhY2l0eSAqIDEwMCk7ICAvLyBJRTggZmlsdGVyXG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0kb3BhY2l0eS1pZSk7XG4gIG9wYWNpdHk6ICRvcGFjaXR5O1xufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5AbWl4aW4gaW1nLXJlc3BvbnNpdmUoJGRpc3BsYXk6IGJsb2NrKSB7XG4gIGRpc3BsYXk6ICRkaXNwbGF5O1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIGhlaWdodDogYXV0bzsgLy8gUGFydCAyOiBTY2FsZSB0aGUgaGVpZ2h0IGFjY29yZGluZyB0byB0aGUgd2lkdGgsIG90aGVyd2lzZSB5b3UgZ2V0IHN0cmV0Y2hpbmdcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuIE5vdGUgdGhhdCB0aGVcbi8vIHNwZWxsaW5nIG9mIGBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW9gIGlzIGludGVudGlvbmFsLlxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMXh9XCIpLCBcIiN7JGZpbGUtMXh9XCIpKTtcblxuICBAbWVkaWFcbiAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggbWluLXJlc29sdXRpb246IDE5MmRwaSksXG4gIG9ubHkgc2NyZWVuIGFuZCAoIG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTJ4fVwiKSwgXCIjeyRmaWxlLTJ4fVwiKSk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxufVxuIiwiLy8gTGFiZWxzXG5cbkBtaXhpbiBsYWJlbC12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgJltocmVmXSB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSZXNldCBmaWx0ZXJzIGZvciBJRVxuLy9cbi8vIFdoZW4geW91IG5lZWQgdG8gcmVtb3ZlIGEgZ3JhZGllbnQgYmFja2dyb3VuZCwgZG8gbm90IGZvcmdldCB0byB1c2UgdGhpcyB0byByZXNldFxuLy8gdGhlIElFIGZpbHRlciBmb3IgSUU5IGFuZCBiZWxvdy5cblxuQG1peGluIHJlc2V0LWZpbHRlcigpIHtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTtcbn1cbiIsIi8vIFJlc2l6ZSBhbnl0aGluZ1xuXG5AbWl4aW4gcmVzaXphYmxlKCRkaXJlY3Rpb24pIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFBlciBDU1MzIFVJLCBgcmVzaXplYCBvbmx5IGFwcGxpZXMgd2hlbiBgb3ZlcmZsb3dgIGlzbid0IGB2aXNpYmxlYFxuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXG59XG4iLCIvLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiByZXNwb25zaXZlLXZpc2liaWxpdHkoJHBhcmVudCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIHRhYmxlI3skcGFyZW50fSAgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRyI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0aCN7JHBhcmVudH0sXG4gIHRkI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJHBhcmVudCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIFNpemluZyBzaG9ydGN1dHNcblxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0KSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbn1cblxuQG1peGluIHNxdWFyZSgkc2l6ZSkge1xuICBAaW5jbHVkZSBzaXplKCRzaXplLCAkc2l6ZSk7XG59XG4iLCIvLyBXZWJLaXQtc3R5bGUgZm9jdXNcblxuQG1peGluIHRhYi1mb2N1cygpIHtcbiAgLy8gV2ViS2l0LXNwZWNpZmljLiBPdGhlciBicm93c2VycyB3aWxsIGtlZXAgdGhlaXIgZGVmYXVsdCBvdXRsaW5lIHN0eWxlLlxuICAvLyAoSW5pdGlhbGx5IHRyaWVkIHRvIGFsc28gZm9yY2UgZGVmYXVsdCB2aWEgYG91dGxpbmU6IGluaXRpYWxgLFxuICAvLyBidXQgdGhhdCBzZWVtcyB0byBlcnJvbmVvdXNseSByZW1vdmUgdGhlIG91dGxpbmUgaW4gRmlyZWZveCBhbHRvZ2V0aGVyLilcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0KCkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgbGluZS1icmVhazogYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuIiwiLy8gVHlwb2dyYXBoeVxuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gVGV4dCBvdmVyZmxvd1xuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC1vdmVyZmxvdygpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBWZW5kb3IgUHJlZml4ZXNcbi8vXG4vLyBBbGwgdmVuZG9yIG1peGlucyBhcmUgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgZHVlIHRvIHRoZSBpbnRyb2R1Y3Rpb24gb2Zcbi8vIEF1dG9wcmVmaXhlciBpbiBvdXIgR3J1bnRmaWxlLiBUaGV5IGhhdmUgYmVlbiByZW1vdmVkIGluIHY0LlxuXG4vLyAtIEFuaW1hdGlvbnNcbi8vIC0gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gLSBCb3ggc2hhZG93XG4vLyAtIEJveCBzaXppbmdcbi8vIC0gQ29udGVudCBjb2x1bW5zXG4vLyAtIEh5cGhlbnNcbi8vIC0gUGxhY2Vob2xkZXIgdGV4dFxuLy8gLSBUcmFuc2Zvcm1hdGlvbnNcbi8vIC0gVHJhbnNpdGlvbnNcbi8vIC0gVXNlciBTZWxlY3RcblxuXG4vLyBBbmltYXRpb25zXG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgLW8tYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tbmFtZSgkbmFtZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogJG5hbWU7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJGRlbGF5KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCgkaXRlcmF0aW9uLWNvdW50KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xufVxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsLW1vZGUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG59XG5cbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXG5cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCR2aXNpYmlsaXR5KSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG59XG5cbi8vIERyb3Agc2hhZG93c1xuLy9cbi8vIE5vdGU6IERlcHJlY2F0ZWQgYC5ib3gtc2hhZG93KClgIGFzIG9mIHYzLjEuMCBzaW5jZSBhbGwgb2YgQm9vdHN0cmFwJ3Ncbi8vIHN1cHBvcnRlZCBicm93c2VycyB0aGF0IGhhdmUgYm94IHNoYWRvdyBjYXBhYmlsaXRpZXMgbm93IHN1cHBvcnQgaXQuXG5cbkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkc2hhZG93OyAvLyBpT1MgPDQuMyAmIEFuZHJvaWQgPDQuMVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG59XG5cbi8vIEJveCBzaXppbmdcbkBtaXhpbiBib3gtc2l6aW5nKCRib3htb2RlbCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgICAgICAgYm94LXNpemluZzogJGJveG1vZGVsO1xufVxuXG4vLyBDU1MzIENvbnRlbnQgQ29sdW1uc1xuQG1peGluIGNvbnRlbnQtY29sdW1ucygkY29sdW1uLWNvdW50LCAkY29sdW1uLWdhcDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAtbW96LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgICAgICBjb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gIC13ZWJraXQtY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgIC1tb3otY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgICAgICAgY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG59XG5cbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXG5AbWl4aW4gaHlwaGVucygkbW9kZTogYXV0bykge1xuICAtd2Via2l0LWh5cGhlbnM6ICRtb2RlO1xuICAgICAtbW96LWh5cGhlbnM6ICRtb2RlO1xuICAgICAgLW1zLWh5cGhlbnM6ICRtb2RlOyAvLyBJRTEwK1xuICAgICAgIC1vLWh5cGhlbnM6ICRtb2RlO1xuICAgICAgICAgIGh5cGhlbnM6ICRtb2RlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi8vIFBsYWNlaG9sZGVyIHRleHRcbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3I6ICRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcikge1xuICAvLyBGaXJlZm94XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgb3BhY2l0eTogMTsgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvbnNcbkBtaXhpbiBzY2FsZSgkcmF0aW8uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG59XG5cbkBtaXhpbiBzY2FsZVgoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbn1cbkBtaXhpbiBzY2FsZVkoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbn1cbkBtaXhpbiBza2V3KCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzQ4ODU7IElFOStcbiAgICAgICAtby10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZSgkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG59XG5AbWl4aW4gcm90YXRlKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVgoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVkoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xufVxuQG1peGluIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjsgLy8gSUU5IG9ubHlcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG5cbi8vIFRyYW5zaXRpb25zXG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkdHJhbnNpdGlvbi1wcm9wZXJ0eS4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRyYW5zaXRpb24tZGVsYXkpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0cmFuc2l0aW9uLWR1cmF0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdHJhbnNmb3JtKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbn1cblxuXG4vLyBVc2VyIHNlbGVjdFxuLy8gRm9yIHNlbGVjdGluZyB0ZXh0IG9uIHRoZSBwYWdlXG5cbkBtaXhpbiB1c2VyLXNlbGVjdCgkc2VsZWN0KSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7IC8vIElFMTArXG4gICAgICAgICAgdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG59XG4iLCIvLyBBbGVydHNcblxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICR0ZXh0LWNvbG9yKSB7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuXG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCR0ZXh0LWNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRjb2xvciwgJGJhY2tncm91bmQsICRib3JkZXIpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxNyUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgICB9XG4gIH1cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cblxuICAuYmFkZ2Uge1xuICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbn1cbiIsIi8vIFBhbmVsc1xuXG5AbWl4aW4gcGFuZWwtdmFyaWFudCgkYm9yZGVyLCAkaGVhZGluZy10ZXh0LWNvbG9yLCAkaGVhZGluZy1iZy1jb2xvciwgJGhlYWRpbmctYm9yZGVyKSB7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGhlYWRpbmctYm9yZGVyO1xuXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJiA+IC5wYW5lbC1mb290ZXIge1xuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICA+IGxpIHtcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYsIGJ1dHRvbiYgdG8gYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LCBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfVxuICB9XG5cbiAgYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgICAmLmFjdGl2ZSxcbiAgICAmLmFjdGl2ZTpob3ZlcixcbiAgICAmLmFjdGl2ZTpmb2N1cyB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAjZTVlNWU1KSB7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgLSAxKSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG59XG4iLCIvLyBGb3JtIHZhbGlkYXRpb24gc3RhdGVzXG4vL1xuLy8gVXNlZCBpbiBmb3Jtcy5sZXNzIHRvIGdlbmVyYXRlIHRoZSBmb3JtIHZhbGlkYXRpb24gQ1NTIGZvciB3YXJuaW5ncywgZXJyb3JzLFxuLy8gYW5kIHN1Y2Nlc3Nlcy5cblxuQG1peGluIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCR0ZXh0LWNvbG9yOiAjNTU1LCAkYm9yZGVyLWNvbG9yOiAjY2NjLCAkYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNSkge1xuICAvLyBDb2xvciB0aGUgbGFiZWwgYW5kIGhlbHAgdGV4dFxuICAuaGVscC1ibG9jayxcbiAgLmNvbnRyb2wtbGFiZWwsXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lLFxuICAmLnJhZGlvIGxhYmVsLFxuICAmLmNoZWNrYm94IGxhYmVsLFxuICAmLnJhZGlvLWlubGluZSBsYWJlbCxcbiAgJi5jaGVja2JveC1pbmxpbmUgbGFiZWwgIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbiAgLy8gU2V0IHRoZSBib3JkZXIgYW5kIGJveCBzaGFkb3cgb24gc3BlY2lmaWMgaW5wdXRzIHRvIG1hdGNoXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpKTsgLy8gUmVkZWNsYXJlIHNvIHRyYW5zaXRpb25zIHdvcmtcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXItY29sb3IsIDEwJSk7XG4gICAgICAkc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KSwgMCAwIDZweCBsaWdodGVuKCRib3JkZXItY29sb3IsIDIwJSk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xuICAgIH1cbiAgfVxuICAvLyBTZXQgdmFsaWRhdGlvbiBzdGF0ZXMgYWxzbyBmb3IgYWRkb25zXG4gIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgfVxuICAvLyBPcHRpb25hbCBmZWVkYmFjayBpY29uXG4gIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1ib3JkZXItZm9jdXNgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCRjb2xvcjogJGlucHV0LWJvcmRlci1mb2N1cykge1xuICAkY29sb3ItcmdiYTogcmdiYShyZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpLCAuNik7XG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KSwgMCAwIDhweCAkY29sb3ItcmdiYSk7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIFJlbGF0aXZlIHRleHQgc2l6ZSwgcGFkZGluZywgYW5kIGJvcmRlci1yYWRpaSBjaGFuZ2VzIGZvciBmb3JtIGNvbnRyb2xzLiBGb3Jcbi8vIGhvcml6b250YWwgc2l6aW5nLCB3cmFwIGNvbnRyb2xzIGluIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy4gYDxzZWxlY3Q+YFxuLy8gZWxlbWVudCBnZXRzIHNwZWNpYWwgbG92ZSBiZWNhdXNlIGl0J3Mgc3BlY2lhbCwgYW5kIHRoYXQncyBhIGZhY3QhXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBpbnB1dC1zaXplKCRwYXJlbnQsICRpbnB1dC1oZWlnaHQsICRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgc2VsZWN0I3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgdGV4dGFyZWEjeyRwYXJlbnR9LFxuICBzZWxlY3RbbXVsdGlwbGVdI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4iLCIvLyBQcm9ncmVzcyBiYXJzXG5cbkBtaXhpbiBwcm9ncmVzcy1iYXItdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gIC8vIERlcHJlY2F0ZWQgcGFyZW50IGNsYXNzIHJlcXVpcmVtZW50IGFzIG9mIHYzLjIuMFxuICAucHJvZ3Jlc3Mtc3RyaXBlZCAmIHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlID4gdGhlYWQgPiB0cixcbiAgLnRhYmxlID4gdGJvZHkgPiB0cixcbiAgLnRhYmxlID4gdGZvb3QgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX0sXG4gICAgPiB0aC4jeyRzdGF0ZX0sXG4gICAgJi4jeyRzdGF0ZX0gPiB0ZCxcbiAgICAmLiN7JHN0YXRlfSA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIge1xuICAgID4gdGQuI3skc3RhdGV9OmhvdmVyLFxuICAgID4gdGguI3skc3RhdGV9OmhvdmVyLFxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGQsXG4gICAgJjpob3ZlciA+IC4jeyRzdGF0ZX0sXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG4gIGEjeyRwYXJlbnR9OmhvdmVyLFxuICBhI3skcGFyZW50fTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbiIsIlxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93blxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7ICAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7ICAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAjNTU1LCAkb3V0ZXItY29sb3I6ICMzMzMpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi8vIENsZWFyZml4XG4vL1xuLy8gRm9yIG1vZGVybiBicm93c2Vyc1xuLy8gMS4gVGhlIHNwYWNlIGNvbnRlbnQgaXMgb25lIHdheSB0byBhdm9pZCBhbiBPcGVyYSBidWcgd2hlbiB0aGVcbi8vICAgIGNvbnRlbnRlZGl0YWJsZSBhdHRyaWJ1dGUgaXMgaW5jbHVkZWQgYW55d2hlcmUgZWxzZSBpbiB0aGUgZG9jdW1lbnQuXG4vLyAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcbi8vICAgIHRoYXQgYXJlIGNsZWFyZml4ZWQuXG4vLyAyLiBUaGUgdXNlIG9mIGB0YWJsZWAgcmF0aGVyIHRoYW4gYGJsb2NrYCBpcyBvbmx5IG5lY2Vzc2FyeSBpZiB1c2luZ1xuLy8gICAgYDpiZWZvcmVgIHRvIGNvbnRhaW4gdGhlIHRvcC1tYXJnaW5zIG9mIGNoaWxkIGVsZW1lbnRzLlxuLy9cbi8vIFNvdXJjZTogaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svXG5cbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAyXG4gICAgY29udGVudDogXCIgXCI7IC8vIDFcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuIiwiLy8gQ2VudGVyLWFsaWduIGEgYmxvY2sgbGV2ZWwgZWxlbWVudFxuXG5AbWl4aW4gY2VudGVyLWJsb2NrKCkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbiIsIi8vIE5hdmJhciB2ZXJ0aWNhbCBhbGlnblxuLy9cbi8vIFZlcnRpY2FsbHkgY2VudGVyIGVsZW1lbnRzIGluIHRoZSBuYXZiYXIuXG4vLyBFeGFtcGxlOiBhbiBlbGVtZW50IGhhcyBhIGhlaWdodCBvZiAzMHB4LCBzbyB3cml0ZSBvdXQgYC5uYXZiYXItdmVydGljYWwtYWxpZ24oMzBweCk7YCB0byBjYWxjdWxhdGUgdGhlIGFwcHJvcHJpYXRlIHRvcCBtYXJnaW4uXG5cbkBtaXhpbiBuYXZiYXItdmVydGljYWwtYWxpZ24oJGVsZW1lbnQtaGVpZ2h0KSB7XG4gIG1hcmdpbi10b3A6ICgoJG5hdmJhci1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICgoJG5hdmJhci1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRpOiAxLCAkbGlzdDogXCIuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCIpIHtcbiAgQGZvciAkaSBmcm9tICgxICsgMSkgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAkbGlzdDogXCIjeyRsaXN0fSwgLmNvbC14cy0jeyRpfSwgLmNvbC1zbS0jeyRpfSwgLmNvbC1tZC0jeyRpfSwgLmNvbC1sZy0jeyRpfVwiO1xuICB9XG4gICN7JGxpc3R9IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gY29sbGFwc2luZyB3aGVuIGVtcHR5XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIC8vIElubmVyIGd1dHRlciB2aWEgcGFkZGluZ1xuICAgIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gICAgcGFkZGluZy1sZWZ0OiBjZWlsKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cbn1cblxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MsICRpOiAxLCAkbGlzdDogXCIuY29sLSN7JGNsYXNzfS0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wtI3skY2xhc3N9LSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuQG1peGluIGNhbGMtZ3JpZC1jb2x1bW4oJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XG4gIEBpZiAoJHR5cGUgPT0gd2lkdGgpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LSN7JGluZGV4fSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtI3skaW5kZXh9IHtcbiAgICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0wIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0jeyRpbmRleH0ge1xuICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0wIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IG9mZnNldCkge1xuICAgIC5jb2wtI3skY2xhc3N9LW9mZnNldC0jeyRpbmRleH0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBsb29wLWdyaWQtY29sdW1ucygkY29sdW1ucywgJGNsYXNzLCAkdHlwZSkge1xuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICBAaW5jbHVkZSBjYWxjLWdyaWQtY29sdW1uKCRpLCAkY2xhc3MsICR0eXBlKTtcbiAgfVxufVxuXG5cbi8vIENyZWF0ZSBncmlkIGZvciBzcGVjaWZpYyBjbGFzc1xuQG1peGluIG1ha2UtZ3JpZCgkY2xhc3MpIHtcbiAgQGluY2x1ZGUgZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcyk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgd2lkdGgpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1bGwpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1c2gpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIG9mZnNldCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcbkBtaXhpbiBjb250YWluZXItZml4ZWQoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBhZGRpbmctcmlnaHQ6IGNlaWwoKCRndXR0ZXIgLyAyKSk7XG4gIHBhZGRpbmctbGVmdDogZmxvb3IoKCRndXR0ZXIgLyAyKSk7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBDcmVhdGVzIGEgd3JhcHBlciBmb3IgYSBzZXJpZXMgb2YgY29sdW1uc1xuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBtYXJnaW4tcmlnaHQ6IGZsb29yKCgkZ3V0dGVyIC8gLTIpKTtcbiAgbWFyZ2luLWxlZnQ6IGNlaWwoKCRndXR0ZXIgLyAtMikpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gR2VuZXJhdGUgdGhlIGV4dHJhIHNtYWxsIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXhzLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLWxlZnQ6ICgkZ3V0dGVyIC8gMik7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2Utc20tY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctbGVmdDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBtZWRpdW0gY29sdW1uc1xuQG1peGluIG1ha2UtbWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctbGVmdDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBsYXJnZSBjb2x1bW5zXG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1sZWZ0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLy9cbi8vIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4vLyAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuLy8gICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuLy9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAxXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuLy9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8gSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuLy8gYW5kIEZpcmVmb3guXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuLy9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuLy8gMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuLy9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gMlxufVxuXG4vL1xuLy8gUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbi8vIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4vL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4vLyBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4vL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gTGlua3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbi8vXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLy9cbi8vIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbi8vIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbi8vXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny0gYW5kIEZpcmVmb3ggMzktLlxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLy8gMVxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbi8vXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLy9cbi8vIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbi8vIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuLy9cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuLy8gRW1iZWRkZWQgY29udGVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxuLy9cblxuaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vL1xuLy8gQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXG4vL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vIEdyb3VwaW5nIGNvbnRlbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbi8vXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4vL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vLyBGb3Jtc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXG4vLyBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4vL1xuXG4vL1xuLy8gMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuLy8gICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4vLyAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuLy8gMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBjb2xvcjogaW5oZXJpdDsgLy8gMVxuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIG1hcmdpbjogMDsgLy8gM1xufVxuXG4vL1xuLy8gQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4vL1xuXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLy9cbi8vIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbi8vIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4vLyBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuLy8gQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuLy9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuLy8gICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4vLyAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4vLyAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuLy8gICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuLy9cblxuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbiAgY3Vyc29yOiBwb2ludGVyOyAvLyAzXG59XG5cbi8vXG4vLyBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuLy9cblxuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vL1xuLy8gUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuLy9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4vLyB0aGUgVUEgc3R5bGVzaGVldC5cbi8vXG5cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLy9cbi8vIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbi8vIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4vL1xuLy8gMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbi8vIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4vL1xuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbn1cblxuLy9cbi8vIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4vLyBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuLy8gZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxuLy9cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vXG4vLyAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbi8vIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4vL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4vLyBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4vLyBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4vL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbi8vXG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuLy8gMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuLy9cblxubGVnZW5kIHtcbiAgYm9yZGVyOiAwOyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbn1cblxuLy9cbi8vIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4vL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vL1xuLy8gRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuLy8gTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4vL1xuXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vLyBUYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDtcbn1cbiIsIi8qISBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2Jsb2IvbWFzdGVyL3NyYy9jc3MvbWFpbi5jc3MgKi9cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFByaW50IHN0eWxlcy5cbi8vIElubGluZWQgdG8gYXZvaWQgdGhlIGFkZGl0aW9uYWwgSFRUUCByZXF1ZXN0OiBoNWJwLmNvbS9yXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AbWVkaWEgcHJpbnQge1xuICAqLFxuICAqOmJlZm9yZSxcbiAgKjphZnRlciB7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5cbiAgYVtocmVmXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gIH1cblxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICB9XG5cbiAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICBhW2hyZWZePVwiI1wiXTphZnRlcixcbiAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuXG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IC8vIGg1YnAuY29tL3RcbiAgfVxuXG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG5cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgfVxuXG4gIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XG5cbiAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgLm5hdmJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYnRuLFxuICAuZHJvcHVwID4gLmJ0biB7XG4gICAgPiAuY2FyZXQge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAubGFiZWwge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gIH1cblxuICAudGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgIHRkLFxuICAgIHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gR2x5cGhpY29ucyBmb3IgQm9vdHN0cmFwXG4vL1xuLy8gU2luY2UgaWNvbnMgYXJlIGZvbnRzLCB0aGV5IGNhbiBiZSBwbGFjZWQgYW55d2hlcmUgdGV4dCBpcyBwbGFjZWQgYW5kIGFyZVxuLy8gdGh1cyBhdXRvbWF0aWNhbGx5IHNpemVkIHRvIG1hdGNoIHRoZSBzdXJyb3VuZGluZyBjaGlsZC4gVG8gdXNlLCBjcmVhdGUgYW5cbi8vIGlubGluZSBlbGVtZW50IHdpdGggdGhlIGFwcHJvcHJpYXRlIGNsYXNzZXMsIGxpa2Ugc286XG4vL1xuLy8gPGEgaHJlZj1cIiNcIj48c3BhbiBjbGFzcz1cImdseXBoaWNvbiBnbHlwaGljb24tc3RhclwiPjwvc3Bhbj4gU3RhcjwvYT5cblxuQGF0LXJvb3Qge1xuICAvLyBJbXBvcnQgdGhlIGZvbnRzXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIkdseXBoaWNvbnMgSGFsZmxpbmdzXCI7XG4gICAgc3JjOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoXCIjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90XCIpLCBcIiN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3RcIikpO1xuICAgIHNyYzogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKFwiI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LmVvdD8jaWVmaXhcIiksIFwiI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LmVvdD8jaWVmaXhcIikpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLFxuICAgICAgICAgdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKFwiI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LndvZmYyXCIpLCBcIiN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmMlwiKSkgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoXCIjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZlwiKSwgXCIjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZlwiKSkgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aChcIiN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS50dGZcIiksIFwiI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnR0ZlwiKSkgZm9ybWF0KFwidHJ1ZXR5cGVcIiksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoXCIjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uc3ZnIyN7JGljb24tZm9udC1zdmctaWR9XCIpLCBcIiN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5zdmcjI3skaWNvbi1mb250LXN2Zy1pZH1cIikpIGZvcm1hdChcInN2Z1wiKTtcbiAgfVxufVxuXG4vLyBDYXRjaGFsbCBiYXNlY2xhc3Ncbi5nbHlwaGljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkdseXBoaWNvbnMgSGFsZmxpbmdzXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4vLyBJbmRpdmlkdWFsIGljb25zXG4uZ2x5cGhpY29uLWFzdGVyaXNrICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwwMDJhXCI7IH0gfVxuLmdseXBoaWNvbi1wbHVzICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDAyYlwiOyB9IH1cbi5nbHlwaGljb24tZXVybyxcbi5nbHlwaGljb24tZXVyICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYWNcIjsgfSB9XG4uZ2x5cGhpY29uLW1pbnVzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMjEyXCI7IH0gfVxuLmdseXBoaWNvbi1jbG91ZCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjYwMVwiOyB9IH1cbi5nbHlwaGljb24tZW52ZWxvcGUgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI3MDlcIjsgfSB9XG4uZ2x5cGhpY29uLXBlbmNpbCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNzBmXCI7IH0gfVxuLmdseXBoaWNvbi1nbGFzcyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwMVwiOyB9IH1cbi5nbHlwaGljb24tbXVzaWMgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDJcIjsgfSB9XG4uZ2x5cGhpY29uLXNlYXJjaCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAzXCI7IH0gfVxuLmdseXBoaWNvbi1oZWFydCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwNVwiOyB9IH1cbi5nbHlwaGljb24tc3RhciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDZcIjsgfSB9XG4uZ2x5cGhpY29uLXN0YXItZW1wdHkgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA3XCI7IH0gfVxuLmdseXBoaWNvbi11c2VyICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwOFwiOyB9IH1cbi5nbHlwaGljb24tZmlsbSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDlcIjsgfSB9XG4uZ2x5cGhpY29uLXRoLWxhcmdlICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEwXCI7IH0gfVxuLmdseXBoaWNvbi10aCAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxMVwiOyB9IH1cbi5nbHlwaGljb24tdGgtbGlzdCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTJcIjsgfSB9XG4uZ2x5cGhpY29uLW9rICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEzXCI7IH0gfVxuLmdseXBoaWNvbi1yZW1vdmUgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxNFwiOyB9IH1cbi5nbHlwaGljb24tem9vbS1pbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTVcIjsgfSB9XG4uZ2x5cGhpY29uLXpvb20tb3V0ICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE2XCI7IH0gfVxuLmdseXBoaWNvbi1vZmYgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxN1wiOyB9IH1cbi5nbHlwaGljb24tc2lnbmFsICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMThcIjsgfSB9XG4uZ2x5cGhpY29uLWNvZyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE5XCI7IH0gfVxuLmdseXBoaWNvbi10cmFzaCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyMFwiOyB9IH1cbi5nbHlwaGljb24taG9tZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjFcIjsgfSB9XG4uZ2x5cGhpY29uLWZpbGUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIyXCI7IH0gfVxuLmdseXBoaWNvbi10aW1lICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyM1wiOyB9IH1cbi5nbHlwaGljb24tcm9hZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjRcIjsgfSB9XG4uZ2x5cGhpY29uLWRvd25sb2FkLWFsdCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI1XCI7IH0gfVxuLmdseXBoaWNvbi1kb3dubG9hZCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyNlwiOyB9IH1cbi5nbHlwaGljb24tdXBsb2FkICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjdcIjsgfSB9XG4uZ2x5cGhpY29uLWluYm94ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI4XCI7IH0gfVxuLmdseXBoaWNvbi1wbGF5LWNpcmNsZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyOVwiOyB9IH1cbi5nbHlwaGljb24tcmVwZWF0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzBcIjsgfSB9XG4uZ2x5cGhpY29uLXJlZnJlc2ggICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMxXCI7IH0gfVxuLmdseXBoaWNvbi1saXN0LWFsdCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzMlwiOyB9IH1cbi5nbHlwaGljb24tbG9jayAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzNcIjsgfSB9XG4uZ2x5cGhpY29uLWZsYWcgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM0XCI7IH0gfVxuLmdseXBoaWNvbi1oZWFkcGhvbmVzICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzNVwiOyB9IH1cbi5nbHlwaGljb24tdm9sdW1lLW9mZiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzZcIjsgfSB9XG4uZ2x5cGhpY29uLXZvbHVtZS1kb3duICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM3XCI7IH0gfVxuLmdseXBoaWNvbi12b2x1bWUtdXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzOFwiOyB9IH1cbi5nbHlwaGljb24tcXJjb2RlICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzlcIjsgfSB9XG4uZ2x5cGhpY29uLWJhcmNvZGUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQwXCI7IH0gfVxuLmdseXBoaWNvbi10YWcgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0MVwiOyB9IH1cbi5nbHlwaGljb24tdGFncyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDJcIjsgfSB9XG4uZ2x5cGhpY29uLWJvb2sgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQzXCI7IH0gfVxuLmdseXBoaWNvbi1ib29rbWFyayAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0NFwiOyB9IH1cbi5nbHlwaGljb24tcHJpbnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDVcIjsgfSB9XG4uZ2x5cGhpY29uLWNhbWVyYSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ2XCI7IH0gfVxuLmdseXBoaWNvbi1mb250ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0N1wiOyB9IH1cbi5nbHlwaGljb24tYm9sZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDhcIjsgfSB9XG4uZ2x5cGhpY29uLWl0YWxpYyAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ5XCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LWhlaWdodCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1MFwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC13aWR0aCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTFcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLWxlZnQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUyXCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1jZW50ZXIgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1M1wiOyB9IH1cbi5nbHlwaGljb24tYWxpZ24tcmlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTRcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLWp1c3RpZnkgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU1XCI7IH0gfVxuLmdseXBoaWNvbi1saXN0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1NlwiOyB9IH1cbi5nbHlwaGljb24taW5kZW50LWxlZnQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTdcIjsgfSB9XG4uZ2x5cGhpY29uLWluZGVudC1yaWdodCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU4XCI7IH0gfVxuLmdseXBoaWNvbi1mYWNldGltZS12aWRlbyAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1OVwiOyB9IH1cbi5nbHlwaGljb24tcGljdHVyZSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjBcIjsgfSB9XG4uZ2x5cGhpY29uLW1hcC1tYXJrZXIgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYyXCI7IH0gfVxuLmdseXBoaWNvbi1hZGp1c3QgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2M1wiOyB9IH1cbi5nbHlwaGljb24tdGludCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjRcIjsgfSB9XG4uZ2x5cGhpY29uLWVkaXQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY1XCI7IH0gfVxuLmdseXBoaWNvbi1zaGFyZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2NlwiOyB9IH1cbi5nbHlwaGljb24tY2hlY2sgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjdcIjsgfSB9XG4uZ2x5cGhpY29uLW1vdmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY4XCI7IH0gfVxuLmdseXBoaWNvbi1zdGVwLWJhY2t3YXJkICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2OVwiOyB9IH1cbi5nbHlwaGljb24tZmFzdC1iYWNrd2FyZCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzBcIjsgfSB9XG4uZ2x5cGhpY29uLWJhY2t3YXJkICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcxXCI7IH0gfVxuLmdseXBoaWNvbi1wbGF5ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3MlwiOyB9IH1cbi5nbHlwaGljb24tcGF1c2UgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzNcIjsgfSB9XG4uZ2x5cGhpY29uLXN0b3AgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc0XCI7IH0gfVxuLmdseXBoaWNvbi1mb3J3YXJkICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3NVwiOyB9IH1cbi5nbHlwaGljb24tZmFzdC1mb3J3YXJkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzZcIjsgfSB9XG4uZ2x5cGhpY29uLXN0ZXAtZm9yd2FyZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc3XCI7IH0gfVxuLmdseXBoaWNvbi1lamVjdCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3OFwiOyB9IH1cbi5nbHlwaGljb24tY2hldnJvbi1sZWZ0ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzlcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgwXCI7IH0gfVxuLmdseXBoaWNvbi1wbHVzLXNpZ24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4MVwiOyB9IH1cbi5nbHlwaGljb24tbWludXMtc2lnbiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODJcIjsgfSB9XG4uZ2x5cGhpY29uLXJlbW92ZS1zaWduICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgzXCI7IH0gfVxuLmdseXBoaWNvbi1vay1zaWduICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4NFwiOyB9IH1cbi5nbHlwaGljb24tcXVlc3Rpb24tc2lnbiAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODVcIjsgfSB9XG4uZ2x5cGhpY29uLWluZm8tc2lnbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg2XCI7IH0gfVxuLmdseXBoaWNvbi1zY3JlZW5zaG90ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4N1wiOyB9IH1cbi5nbHlwaGljb24tcmVtb3ZlLWNpcmNsZSAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODhcIjsgfSB9XG4uZ2x5cGhpY29uLW9rLWNpcmNsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg5XCI7IH0gfVxuLmdseXBoaWNvbi1iYW4tY2lyY2xlICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5MFwiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctbGVmdCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTFcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LXJpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkyXCI7IH0gfVxuLmdseXBoaWNvbi1hcnJvdy11cCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5M1wiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctZG93biAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTRcIjsgfSB9XG4uZ2x5cGhpY29uLXNoYXJlLWFsdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk1XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtZnVsbCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5NlwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLXNtYWxsICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTdcIjsgfSB9XG4uZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24gICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAxXCI7IH0gfVxuLmdseXBoaWNvbi1naWZ0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwMlwiOyB9IH1cbi5nbHlwaGljb24tbGVhZiAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDNcIjsgfSB9XG4uZ2x5cGhpY29uLWZpcmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA0XCI7IH0gfVxuLmdseXBoaWNvbi1leWUtb3BlbiAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwNVwiOyB9IH1cbi5nbHlwaGljb24tZXllLWNsb3NlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDZcIjsgfSB9XG4uZ2x5cGhpY29uLXdhcm5pbmctc2lnbiAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA3XCI7IH0gfVxuLmdseXBoaWNvbi1wbGFuZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwOFwiOyB9IH1cbi5nbHlwaGljb24tY2FsZW5kYXIgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDlcIjsgfSB9XG4uZ2x5cGhpY29uLXJhbmRvbSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEwXCI7IH0gfVxuLmdseXBoaWNvbi1jb21tZW50ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExMVwiOyB9IH1cbi5nbHlwaGljb24tbWFnbmV0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTJcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tdXAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEzXCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLWRvd24gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExNFwiOyB9IH1cbi5nbHlwaGljb24tcmV0d2VldCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTVcIjsgfSB9XG4uZ2x5cGhpY29uLXNob3BwaW5nLWNhcnQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE2XCI7IH0gfVxuLmdseXBoaWNvbi1mb2xkZXItY2xvc2UgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExN1wiOyB9IH1cbi5nbHlwaGljb24tZm9sZGVyLW9wZW4gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMThcIjsgfSB9XG4uZ2x5cGhpY29uLXJlc2l6ZS12ZXJ0aWNhbCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE5XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtaG9yaXpvbnRhbCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyMFwiOyB9IH1cbi5nbHlwaGljb24taGRkICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjFcIjsgfSB9XG4uZ2x5cGhpY29uLWJ1bGxob3JuICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIyXCI7IH0gfVxuLmdseXBoaWNvbi1iZWxsICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyM1wiOyB9IH1cbi5nbHlwaGljb24tY2VydGlmaWNhdGUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjRcIjsgfSB9XG4uZ2x5cGhpY29uLXRodW1icy11cCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI1XCI7IH0gfVxuLmdseXBoaWNvbi10aHVtYnMtZG93biAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyNlwiOyB9IH1cbi5nbHlwaGljb24taGFuZC1yaWdodCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjdcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtbGVmdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI4XCI7IH0gfVxuLmdseXBoaWNvbi1oYW5kLXVwICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyOVwiOyB9IH1cbi5nbHlwaGljb24taGFuZC1kb3duICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzBcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1yaWdodCAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMxXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctbGVmdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzMlwiOyB9IH1cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LXVwICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzNcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1kb3duICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM0XCI7IH0gfVxuLmdseXBoaWNvbi1nbG9iZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzNVwiOyB9IH1cbi5nbHlwaGljb24td3JlbmNoICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzZcIjsgfSB9XG4uZ2x5cGhpY29uLXRhc2tzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM3XCI7IH0gfVxuLmdseXBoaWNvbi1maWx0ZXIgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzOFwiOyB9IH1cbi5nbHlwaGljb24tYnJpZWZjYXNlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzlcIjsgfSB9XG4uZ2x5cGhpY29uLWZ1bGxzY3JlZW4gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQwXCI7IH0gfVxuLmdseXBoaWNvbi1kYXNoYm9hcmQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0MVwiOyB9IH1cbi5nbHlwaGljb24tcGFwZXJjbGlwICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDJcIjsgfSB9XG4uZ2x5cGhpY29uLWhlYXJ0LWVtcHR5ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQzXCI7IH0gfVxuLmdseXBoaWNvbi1saW5rICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0NFwiOyB9IH1cbi5nbHlwaGljb24tcGhvbmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDVcIjsgfSB9XG4uZ2x5cGhpY29uLXB1c2hwaW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ2XCI7IH0gfVxuLmdseXBoaWNvbi11c2QgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0OFwiOyB9IH1cbi5nbHlwaGljb24tZ2JwICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDlcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUwXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LWFscGhhYmV0ICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1MVwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hbHBoYWJldC1hbHQgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTJcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktb3JkZXIgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUzXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LW9yZGVyLWFsdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1NFwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hdHRyaWJ1dGVzICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTVcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYXR0cmlidXRlcy1hbHQgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU2XCI7IH0gfVxuLmdseXBoaWNvbi11bmNoZWNrZWQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1N1wiOyB9IH1cbi5nbHlwaGljb24tZXhwYW5kICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNThcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbGxhcHNlLWRvd24gICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU5XCI7IH0gfVxuLmdseXBoaWNvbi1jb2xsYXBzZS11cCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2MFwiOyB9IH1cbi5nbHlwaGljb24tbG9nLWluICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjFcIjsgfSB9XG4uZ2x5cGhpY29uLWZsYXNoICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYyXCI7IH0gfVxuLmdseXBoaWNvbi1sb2ctb3V0ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2M1wiOyB9IH1cbi5nbHlwaGljb24tbmV3LXdpbmRvdyAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjRcIjsgfSB9XG4uZ2x5cGhpY29uLXJlY29yZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY1XCI7IH0gfVxuLmdseXBoaWNvbi1zYXZlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2NlwiOyB9IH1cbi5nbHlwaGljb24tb3BlbiAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjdcIjsgfSB9XG4uZ2x5cGhpY29uLXNhdmVkICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY4XCI7IH0gfVxuLmdseXBoaWNvbi1pbXBvcnQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2OVwiOyB9IH1cbi5nbHlwaGljb24tZXhwb3J0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzBcIjsgfSB9XG4uZ2x5cGhpY29uLXNlbmQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcxXCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktZGlzayAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3MlwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LXNhdmVkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzNcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1yZW1vdmUgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc0XCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktc2F2ZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3NVwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LW9wZW4gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzZcIjsgfSB9XG4uZ2x5cGhpY29uLWNyZWRpdC1jYXJkICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc3XCI7IH0gfVxuLmdseXBoaWNvbi10cmFuc2ZlciAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3OFwiOyB9IH1cbi5nbHlwaGljb24tY3V0bGVyeSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzlcIjsgfSB9XG4uZ2x5cGhpY29uLWhlYWRlciAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgwXCI7IH0gfVxuLmdseXBoaWNvbi1jb21wcmVzc2VkICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4MVwiOyB9IH1cbi5nbHlwaGljb24tZWFycGhvbmUgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODJcIjsgfSB9XG4uZ2x5cGhpY29uLXBob25lLWFsdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgzXCI7IH0gfVxuLmdseXBoaWNvbi10b3dlciAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4NFwiOyB9IH1cbi5nbHlwaGljb24tc3RhdHMgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODVcIjsgfSB9XG4uZ2x5cGhpY29uLXNkLXZpZGVvICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg2XCI7IH0gfVxuLmdseXBoaWNvbi1oZC12aWRlbyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4N1wiOyB9IH1cbi5nbHlwaGljb24tc3VidGl0bGVzICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODhcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLXN0ZXJlbyAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg5XCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC1kb2xieSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5MFwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtNS0xICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTFcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLTYtMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkyXCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC03LTEgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5M1wiOyB9IH1cbi5nbHlwaGljb24tY29weXJpZ2h0LW1hcmsgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTRcIjsgfSB9XG4uZ2x5cGhpY29uLXJlZ2lzdHJhdGlvbi1tYXJrICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk1XCI7IH0gfVxuLmdseXBoaWNvbi1jbG91ZC1kb3dubG9hZCAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5N1wiOyB9IH1cbi5nbHlwaGljb24tY2xvdWQtdXBsb2FkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOThcIjsgfSB9XG4uZ2x5cGhpY29uLXRyZWUtY29uaWZlciAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk5XCI7IH0gfVxuLmdseXBoaWNvbi10cmVlLWRlY2lkdW91cyAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwMFwiOyB9IH1cbi5nbHlwaGljb24tY2QgICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDFcIjsgfSB9XG4uZ2x5cGhpY29uLXNhdmUtZmlsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAyXCI7IH0gfVxuLmdseXBoaWNvbi1vcGVuLWZpbGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwM1wiOyB9IH1cbi5nbHlwaGljb24tbGV2ZWwtdXAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDRcIjsgfSB9XG4uZ2x5cGhpY29uLWNvcHkgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA1XCI7IH0gfVxuLmdseXBoaWNvbi1wYXN0ZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwNlwiOyB9IH1cbi8vIFRoZSBmb2xsb3dpbmcgMiBHbHlwaGljb25zIGFyZSBvbWl0dGVkIGZvciB0aGUgdGltZSBiZWluZyBiZWNhdXNlXG4vLyB0aGV5IGN1cnJlbnRseSB1c2UgVW5pY29kZSBjb2RlcG9pbnRzIHRoYXQgYXJlIG91dHNpZGUgdGhlXG4vLyBCYXNpYyBNdWx0aWxpbmd1YWwgUGxhbmUgKEJNUCkuIE9sZGVyIGJ1Z2d5IHZlcnNpb25zIG9mIFdlYktpdCBjYW4ndCBoYW5kbGVcbi8vIG5vbi1CTVAgY29kZXBvaW50cyBpbiBDU1Mgc3RyaW5nIGVzY2FwZXMsIGFuZCB0aHVzIGNhbid0IGRpc3BsYXkgdGhlc2UgdHdvIGljb25zLlxuLy8gTm90YWJseSwgdGhlIGJ1ZyBhZmZlY3RzIHNvbWUgb2xkZXIgdmVyc2lvbnMgb2YgdGhlIEFuZHJvaWQgQnJvd3Nlci5cbi8vIE1vcmUgaW5mbzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDEwNlxuLy8gLmdseXBoaWNvbi1kb29yICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMWY2YWFcIjsgfSB9XG4vLyAuZ2x5cGhpY29uLWtleSAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwxZjUxMVwiOyB9IH1cbi5nbHlwaGljb24tYWxlcnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDlcIjsgfSB9XG4uZ2x5cGhpY29uLWVxdWFsaXplciAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjEwXCI7IH0gfVxuLmdseXBoaWNvbi1raW5nICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMVwiOyB9IH1cbi5nbHlwaGljb24tcXVlZW4gICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTJcIjsgfSB9XG4uZ2x5cGhpY29uLXBhd24gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjEzXCI7IH0gfVxuLmdseXBoaWNvbi1iaXNob3AgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNFwiOyB9IH1cbi5nbHlwaGljb24ta25pZ2h0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTVcIjsgfSB9XG4uZ2x5cGhpY29uLWJhYnktZm9ybXVsYSAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE2XCI7IH0gfVxuLmdseXBoaWNvbi10ZW50ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjZmYVwiOyB9IH1cbi5nbHlwaGljb24tYmxhY2tib2FyZCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMThcIjsgfSB9XG4uZ2x5cGhpY29uLWJlZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE5XCI7IH0gfVxuLmdseXBoaWNvbi1hcHBsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjhmZlwiOyB9IH1cbi5nbHlwaGljb24tZXJhc2UgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjFcIjsgfSB9XG4uZ2x5cGhpY29uLWhvdXJnbGFzcyAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMzFiXCI7IH0gfVxuLmdseXBoaWNvbi1sYW1wICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyM1wiOyB9IH1cbi5nbHlwaGljb24tZHVwbGljYXRlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjRcIjsgfSB9XG4uZ2x5cGhpY29uLXBpZ2d5LWJhbmsgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI1XCI7IH0gfVxuLmdseXBoaWNvbi1zY2lzc29ycyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNlwiOyB9IH1cbi5nbHlwaGljb24tYml0Y29pbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjdcIjsgfSB9XG4uZ2x5cGhpY29uLWJ0YyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH0gfVxuLmdseXBoaWNvbi14YnQgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyN1wiOyB9IH1cbi5nbHlwaGljb24teWVuICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwYTVcIjsgfSB9XG4uZ2x5cGhpY29uLWpweSAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwwMGE1XCI7IH0gfVxuLmdseXBoaWNvbi1ydWJsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjBiZFwiOyB9IH1cbi5nbHlwaGljb24tcnViICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYmRcIjsgfSB9XG4uZ2x5cGhpY29uLXNjYWxlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMwXCI7IH0gfVxuLmdseXBoaWNvbi1pY2UtbG9sbHkgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMVwiOyB9IH1cbi5nbHlwaGljb24taWNlLWxvbGx5LXRhc3RlZCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzJcIjsgfSB9XG4uZ2x5cGhpY29uLWVkdWNhdGlvbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMzXCI7IH0gfVxuLmdseXBoaWNvbi1vcHRpb24taG9yaXpvbnRhbCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNFwiOyB9IH1cbi5nbHlwaGljb24tb3B0aW9uLXZlcnRpY2FsICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzVcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtaGFtYnVyZ2VyICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM2XCI7IH0gfVxuLmdseXBoaWNvbi1tb2RhbC13aW5kb3cgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzN1wiOyB9IH1cbi5nbHlwaGljb24tb2lsICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzhcIjsgfSB9XG4uZ2x5cGhpY29uLWdyYWluICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM5XCI7IH0gfVxuLmdseXBoaWNvbi1zdW5nbGFzc2VzICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MFwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC1zaXplICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDFcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtY29sb3IgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQyXCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LWJhY2tncm91bmQgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0M1wiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXRvcCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDRcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1ib3R0b20gICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ1XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24taG9yaXpvbnRhbHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NlwiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWxlZnQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDdcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi12ZXJ0aWNhbCAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ4XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tcmlnaHQgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0OVwiOyB9IH1cbi5nbHlwaGljb24tdHJpYW5nbGUtcmlnaHQgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTBcIjsgfSB9XG4uZ2x5cGhpY29uLXRyaWFuZ2xlLWxlZnQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUxXCI7IH0gfVxuLmdseXBoaWNvbi10cmlhbmdsZS1ib3R0b20gICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MlwiOyB9IH1cbi5nbHlwaGljb24tdHJpYW5nbGUtdG9wICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTNcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbnNvbGUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU0XCI7IH0gfVxuLmdseXBoaWNvbi1zdXBlcnNjcmlwdCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NVwiOyB9IH1cbi5nbHlwaGljb24tc3Vic2NyaXB0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTZcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtbGVmdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU3XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LXJpZ2h0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1OFwiOyB9IH1cbi5nbHlwaGljb24tbWVudS1kb3duICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTlcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtdXAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjYwXCI7IH0gfVxuIiwiLy9cbi8vIFNjYWZmb2xkaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFJlc2V0IHRoZSBib3gtc2l6aW5nXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgcmVzZXQgbWF5IGNhdXNlIGNvbmZsaWN0cyB3aXRoIHNvbWUgdGhpcmQtcGFydHkgd2lkZ2V0cy5cbi8vIEZvciByZWNvbW1lbmRhdGlvbnMgb24gcmVzb2x2aW5nIHN1Y2ggY29uZmxpY3RzLCBzZWVcbi8vIGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS9kb2NzLzMuNC9nZXR0aW5nLXN0YXJ0ZWQvI3RoaXJkLWJveC1zaXppbmdcbioge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbn1cblxuXG4vLyBCb2R5IHJlc2V0XG5cbmh0bWwge1xuICBmb250LXNpemU6IDEwcHg7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbn1cblxuLy8gUmVzZXQgZm9udHMgZm9yIHJlbGV2YW50IGVsZW1lbnRzXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cblxuLy8gTGlua3NcblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSB0YWItZm9jdXM7XG4gIH1cbn1cblxuXG4vLyBGaWd1cmVzXG4vL1xuLy8gV2UgcmVzZXQgdGhpcyBoZXJlIGJlY2F1c2UgcHJldmlvdXNseSBOb3JtYWxpemUgaGFkIG5vIGBmaWd1cmVgIG1hcmdpbnMuIFRoaXNcbi8vIGVuc3VyZXMgd2UgZG9uJ3QgYnJlYWsgYW55b25lJ3MgdXNlIG9mIHRoZSBlbGVtZW50LlxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cblxuLy8gSW1hZ2VzXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLmltZy1yZXNwb25zaXZlIHtcbiAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmU7XG59XG5cbi8vIFJvdW5kZWQgY29ybmVyc1xuLmltZy1yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG59XG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi8vXG4vLyBIZWFkcyB1cCEgVGhpcyBpcyBtaXhpbi1lZCBpbnRvIHRodW1ibmFpbHMubGVzcyBmb3IgYC50aHVtYm5haWxgLlxuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UtaW4tb3V0KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmUoaW5saW5lLWJsb2NrKTtcbn1cblxuLy8gUGVyZmVjdCBjaXJjbGVcbi5pbWctY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlOyAvLyBzZXQgcmFkaXVzIGluIHBlcmNlbnRzXG59XG5cblxuLy8gSG9yaXpvbnRhbCBydWxlc1xuXG5ociB7XG4gIG1hcmdpbi10b3A6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaHItYm9yZGVyO1xufVxuXG5cbi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXG4vL1xuLy8gU2VlOiBodHRwczovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50XG5cbi5zci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gIH1cbn1cblxuXG4vLyBpT1MgXCJjbGlja2FibGUgZWxlbWVudHNcIiBmaXggZm9yIHJvbGU9XCJidXR0b25cIlxuLy9cbi8vIEZpeGVzIFwiY2xpY2thYmlsaXR5XCIgaXNzdWUgKGFuZCBtb3JlIGdlbmVyYWxseSwgdGhlIGZpcmluZyBvZiBldmVudHMgc3VjaCBhcyBmb2N1cyBhcyB3ZWxsKVxuLy8gZm9yIHRyYWRpdGlvbmFsbHkgbm9uLWZvY3VzYWJsZSBlbGVtZW50cyB3aXRoIHJvbGU9XCJidXR0b25cIlxuLy8gc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuIiwiLy9cbi8vIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSGVhZGluZ3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRoZWFkaW5ncy1zbWFsbC1jb2xvcjtcbiAgfVxufVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMge1xuICBtYXJnaW4tdG9wOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcblxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDY1JTtcbiAgfVxufVxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG5cbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gIH1cbn1cblxuaDEsIC5oMSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMTsgfVxuaDIsIC5oMiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMjsgfVxuaDMsIC5oMyB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMzsgfVxuaDQsIC5oNCB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNDsgfVxuaDUsIC5oNSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNTsgfVxuaDYsIC5oNiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNjsgfVxuXG5cbi8vIEJvZHkgdGV4dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xufVxuXG4ubGVhZCB7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMS4xNSkpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIH1cbn1cblxuXG4vLyBFbXBoYXNpcyAmIG1pc2Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRXg6ICgxMnB4IHNtYWxsIGZvbnQgLyAxNHB4IGJhc2UgZm9udCkgKiAxMDAlID0gYWJvdXQgODUlXG5zbWFsbCxcbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogZmxvb3IoKDEwMCUgKiAkZm9udC1zaXplLXNtYWxsIC8gJGZvbnQtc2l6ZS1iYXNlKSk7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6IC4yZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICRzdGF0ZS13YXJuaW5nLWJnO1xufVxuXG4vLyBBbGlnbm1lbnRcbi50ZXh0LWxlZnQgICAgICAgICAgIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuLnRleHQtcmlnaHQgICAgICAgICAgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuLnRleHQtY2VudGVyICAgICAgICAgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbi50ZXh0LWp1c3RpZnkgICAgICAgIHsgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuLnRleHQtbm93cmFwICAgICAgICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG4udGV4dC1sb3dlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cbi50ZXh0LXVwcGVyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuLnRleHQtY2FwaXRhbGl6ZSAgICAgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG59XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtcHJpbWFyeScsICRicmFuZC1wcmltYXJ5KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1zdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtdGV4dCk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtaW5mbycsICRzdGF0ZS1pbmZvLXRleHQpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXdhcm5pbmcnLCAkc3RhdGUtd2FybmluZy10ZXh0KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1kYW5nZXInLCAkc3RhdGUtZGFuZ2VyLXRleHQpO1xuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG4vLyBGb3Igbm93IHdlJ2xsIGxlYXZlIHRoZXNlIGFsb25nc2lkZSB0aGUgdGV4dCBjbGFzc2VzIHVudGlsIHY0IHdoZW4gd2UgY2FuXG4vLyBzYWZlbHkgc2hpZnQgdGhpbmdzIGFyb3VuZCAocGVyIFNlbVZlciBydWxlcykuXG4uYmctcHJpbWFyeSB7XG4gIC8vIEdpdmVuIHRoZSBjb250cmFzdCBoZXJlLCB0aGlzIGlzIHRoZSBvbmx5IGNsYXNzIHRvIGhhdmUgaXRzIGNvbG9yIGludmVydGVkXG4gIC8vIGF1dG9tYXRpY2FsbHkuXG4gIGNvbG9yOiAjZmZmO1xufVxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXByaW1hcnknLCAkYnJhbmQtcHJpbWFyeSk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1zdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtYmcpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctaW5mbycsICRzdGF0ZS1pbmZvLWJnKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXdhcm5pbmcnLCAkc3RhdGUtd2FybmluZy1iZyk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1kYW5nZXInLCAkc3RhdGUtZGFuZ2VyLWJnKTtcblxuXG4vLyBQYWdlIGhlYWRlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucGFnZS1oZWFkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpO1xuICBtYXJnaW46ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAyKSAwICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I7XG59XG5cblxuLy8gTGlzdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVW5vcmRlcmVkIGFuZCBPcmRlcmVkIGxpc3RzXG51bCxcbm9sIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICB1bCxcbiAgb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8gTGlzdCBvcHRpb25zXG5cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAubGlzdC11bnN0eWxlZGAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBsaXN0LXVuc3R5bGVkYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG59XG5cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIH1cbn1cblxuLy8gRGVzY3JpcHRpb24gTGlzdHNcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdFxuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG59XG5kdCxcbmRkIHtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xufVxuZHQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuZGQge1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuLy8gSG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0c1xuLy9cbi8vIERlZmF1bHRzIHRvIGJlaW5nIHN0YWNrZWQgd2l0aG91dCBhbnkgb2YgdGhlIGJlbG93IHN0eWxlcyBhcHBsaWVkLCB1bnRpbCB0aGVcbi8vIGdyaWQgYnJlYWtwb2ludCBpcyByZWFjaGVkIChkZWZhdWx0IG9mIH43NjhweCkuXG5cbi5kbC1ob3Jpem9udGFsIHtcbiAgZGQge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4OyAvLyBDbGVhciB0aGUgZmxvYXRlZCBgZHRgIGlmIGFuIGVtcHR5IGBkZGAgaXMgcHJlc2VudFxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRkbC1ob3Jpem9udGFsLWJyZWFrcG9pbnQpIHtcbiAgICBkdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAoJGRsLWhvcml6b250YWwtb2Zmc2V0IC0gMjApO1xuICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIEBpbmNsdWRlIHRleHQtb3ZlcmZsb3c7XG4gICAgfVxuICAgIGRkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkZGwtaG9yaXpvbnRhbC1vZmZzZXQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTWlzY1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBBYmJyZXZpYXRpb25zIGFuZCBhY3Jvbnltc1xuLy8gQWRkIGRhdGEtKiBhdHRyaWJ1dGUgdG8gaGVscCBvdXQgb3VyIHRvb2x0aXAgcGx1Z2luLCBwZXIgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy81MjU3XG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0ge1xuICBjdXJzb3I6IGhlbHA7XG59XG5cbi5pbml0aWFsaXNtIHtcbiAgZm9udC1zaXplOiA5MCU7XG4gIEBleHRlbmQgLnRleHQtdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbjogMCAwICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1mb250LXNpemU7XG4gIGJvcmRlci1sZWZ0OiA1cHggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuXG4gIHAsXG4gIHVsLFxuICBvbCB7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gTm90ZTogRGVwcmVjYXRlZCBzbWFsbCBhbmQgLnNtYWxsIGFzIG9mIHYzLjEuMFxuICAvLyBDb250ZXh0OiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjYwXG4gIGZvb3RlcixcbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiA4MCU7IC8vIGJhY2sgdG8gZGVmYXVsdCBmb250LXNpemVcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXDIwMTQgXFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgICB9XG4gIH1cbn1cblxuLy8gT3Bwb3NpdGUgYWxpZ25tZW50IG9mIGJsb2NrcXVvdGVcbi8vXG4vLyBIZWFkcyB1cDogYGJsb2NrcXVvdGUucHVsbC1yaWdodGAgaGFzIGJlZW4gZGVwcmVjYXRlZCBhcyBvZiB2My4xLjAuXG4uYmxvY2txdW90ZS1yZXZlcnNlLFxuYmxvY2txdW90ZS5wdWxsLXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgYm9yZGVyLXJpZ2h0OiA1cHggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItbGVmdDogMDtcblxuICAvLyBBY2NvdW50IGZvciBjaXRhdGlvblxuICBmb290ZXIsXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgICY6YmVmb3JlIHsgY29udGVudDogXCJcIjsgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcXDAwQTAgXFwyMDE0XCI7IC8vIG5ic3AsIGVtIGRhc2hcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkcmVzc2VzXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbn1cbiIsIi8vXG4vLyBDb2RlIChpbmxpbmUgYW5kIGJsb2NrKVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBJbmxpbmUgYW5kIGJsb2NrIGNvZGUgc3R5bGVzXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xufVxuXG4vLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAuMjUpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbi8vIEJsb2NrcyBvZiBjb2RlXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAxKSAvIDIpO1xuICBtYXJnaW46IDAgMCAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAtIDEpOyAvLyAxNHB4IHRvIDEzcHhcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJHByZS1jb2xvcjtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmUtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRwcmUtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy9cbi8vIEdyaWQgc3lzdGVtXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbi5jb250YWluZXIge1xuICBAaW5jbHVkZSBjb250YWluZXItZml4ZWQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItc207XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItbWQ7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItbGc7XG4gIH1cbn1cblxuXG4vLyBGbHVpZCBjb250YWluZXJcbi8vXG4vLyBVdGlsaXplcyB0aGUgbWl4aW4gbWVhbnQgZm9yIGZpeGVkIHdpZHRoIGNvbnRhaW5lcnMsIGJ1dCB3aXRob3V0IGFueSBkZWZpbmVkXG4vLyB3aWR0aCBmb3IgZmx1aWQsIGZ1bGwgd2lkdGggbGF5b3V0cy5cblxuLmNvbnRhaW5lci1mbHVpZCB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4gYW5kIGNsZWFyIHRoZSBmbG9hdHMgb2YgeW91ciBjb2x1bW5zLlxuXG4ucm93IHtcbiAgQGluY2x1ZGUgbWFrZS1yb3c7XG59XG5cbi5yb3ctbm8tZ3V0dGVycyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnM7XG5cblxuLy8gRXh0cmEgc21hbGwgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciBleHRyYSBzbWFsbCBkZXZpY2VzIGxpa2Vcbi8vIHNtYXJ0cGhvbmVzLlxuXG5AaW5jbHVkZSBtYWtlLWdyaWQoeHMpO1xuXG5cbi8vIFNtYWxsIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIHNtYWxsIGRldmljZSByYW5nZSwgZnJvbSBwaG9uZXNcbi8vIHRvIHRhYmxldHMuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQoc20pO1xufVxuXG5cbi8vIE1lZGl1bSBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBkZXNrdG9wIGRldmljZSByYW5nZS5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChtZCk7XG59XG5cblxuLy8gTGFyZ2UgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgbGFyZ2UgZGVza3RvcCBkZXZpY2UgcmFuZ2UuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQobGcpO1xufVxuIiwiLy9cbi8vIFRhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZztcblxuICAvLyBUYWJsZSBjZWxsIHNpemluZ1xuICAvL1xuICAvLyBSZXNldCBkZWZhdWx0IHRhYmxlIGJlaGF2aW9yXG5cbiAgY29sW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxuICAgIGRpc3BsYXk6IHRhYmxlLWNvbHVtbjtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIHRkLFxuICB0aCB7XG4gICAgJltjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnRoIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuXG4vLyBCYXNlbGluZSBzdHlsZXNcblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICAvLyBDZWxsc1xuICA+IHRoZWFkLFxuICA+IHRib2R5LFxuICA+IHRmb290IHtcbiAgICA+IHRyIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gQm90dG9tIGFsaWduIGZvciBjb2x1bW4gaGVhZGluZ3NcbiAgPiB0aGVhZCA+IHRyID4gdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cbiAgLy8gUmVtb3ZlIHRvcCBib3JkZXIgZnJvbSB0aGVhZCBieSBkZWZhdWx0XG4gID4gY2FwdGlvbiArIHRoZWFkLFxuICA+IGNvbGdyb3VwICsgdGhlYWQsXG4gID4gdGhlYWQ6Zmlyc3QtY2hpbGQge1xuICAgID4gdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBBY2NvdW50IGZvciBtdWx0aXBsZSB0Ym9keSBpbnN0YW5jZXNcbiAgPiB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIE5lc3RpbmdcbiAgLnRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgfVxufVxuXG5cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcblxuLnRhYmxlLWNvbmRlbnNlZCB7XG4gID4gdGhlYWQsXG4gID4gdGJvZHksXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBwYWRkaW5nOiAkdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCb3JkZXJlZCB2ZXJzaW9uXG4vL1xuLy8gQWRkIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICA+IHRoZWFkLFxuICA+IHRib2R5LFxuICA+IHRmb290IHtcbiAgICA+IHRyIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgPiB0aGVhZCA+IHRyIHtcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnLWFjY2VudDtcbiAgfVxufVxuXG5cbi8vIEhvdmVyIGVmZmVjdFxuLy9cbi8vIFBsYWNlZCBoZXJlIHNpbmNlIGl0IGhhcyB0byBjb21lIGFmdGVyIHRoZSBwb3RlbnRpYWwgemVicmEgc3RyaXBpbmdcblxuLnRhYmxlLWhvdmVyIHtcbiAgPiB0Ym9keSA+IHRyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmctaG92ZXI7XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG4vLyBHZW5lcmF0ZSB0aGUgY29udGV4dHVhbCB2YXJpYW50c1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2FjdGl2ZScsICR0YWJsZS1iZy1hY3RpdmUpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ3N1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnaW5mbycsICRzdGF0ZS1pbmZvLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCd3YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctYmcpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2RhbmdlcicsICRzdGF0ZS1kYW5nZXItYmcpO1xuXG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gV3JhcCB5b3VyIHRhYmxlcyBpbiBgLnRhYmxlLXJlc3BvbnNpdmVgIGFuZCB3ZSdsbCBtYWtlIHRoZW0gbW9iaWxlIGZyaWVuZGx5XG4vLyBieSBlbmFibGluZyBob3Jpem9udGFsIHNjcm9sbGluZy4gT25seSBhcHBsaWVzIDw3NjhweC4gRXZlcnl0aGluZyBhYm92ZSB0aGF0XG4vLyB3aWxsIGRpc3BsYXkgbm9ybWFsbHkuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgbWluLWhlaWdodDogLjAxJTsgLy8gV29ya2Fyb3VuZCBmb3IgSUU5IGJ1ZyAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTQ4MzcpXG4gIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogLjc1KTtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICAgIC8vIFRpZ2h0ZW4gdXAgc3BhY2luZ1xuICAgID4gLnRhYmxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgIC8vIEVuc3VyZSB0aGUgY29udGVudCBkb2Vzbid0IHdyYXBcbiAgICAgID4gdGhlYWQsXG4gICAgICA+IHRib2R5LFxuICAgICAgPiB0Zm9vdCB7XG4gICAgICAgID4gdHIge1xuICAgICAgICAgID4gdGgsXG4gICAgICAgICAgPiB0ZCB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNwZWNpYWwgb3ZlcnJpZGVzIGZvciB0aGUgYm9yZGVyZWQgdGFibGVzXG4gICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAvLyBOdWtlIHRoZSBhcHByb3ByaWF0ZSBib3JkZXJzIHNvIHRoYXQgdGhlIHBhcmVudCBjYW4gaGFuZGxlIHRoZW1cbiAgICAgID4gdGhlYWQsXG4gICAgICA+IHRib2R5LFxuICAgICAgPiB0Zm9vdCB7XG4gICAgICAgID4gdHIge1xuICAgICAgICAgID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgICAgICAgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgPiB0aDpsYXN0LWNoaWxkLFxuICAgICAgICAgID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE9ubHkgbnVrZSB0aGUgbGFzdCByb3cncyBib3R0b20tYm9yZGVyIGluIGB0Ym9keWAgYW5kIGB0Zm9vdGAgc2luY2VcbiAgICAgIC8vIGNoYW5jZXMgYXJlIHRoZXJlIHdpbGwgYmUgb25seSBvbmUgYHRyYCBpbiBhIGB0aGVhZGAgYW5kIHRoYXQgd291bGRcbiAgICAgIC8vIHJlbW92ZSB0aGUgYm9yZGVyIGFsdG9nZXRoZXIuXG4gICAgICA+IHRib2R5LFxuICAgICAgPiB0Zm9vdCB7XG4gICAgICAgID4gdHI6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgPiB0aCxcbiAgICAgICAgICA+IHRkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBGb3Jtc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBOb3JtYWxpemUgbm9uLWNvbnRyb2xzXG4vL1xuLy8gUmVzdHlsZSBhbmQgYmFzZWxpbmUgbm9uLWNvbnRyb2wgZm9ybSBlbGVtZW50cy5cblxuZmllbGRzZXQge1xuICAvLyBDaHJvbWUgYW5kIEZpcmVmb3ggc2V0IGEgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGl0IGJlaGF2ZXMgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTkuXG4gIG1pbi13aWR0aDogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICRsZWdlbmQtY29sb3I7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsZWdlbmQtYm9yZGVyLWNvbG9yO1xufVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBGb3JjZSBJRTggdG8gd3JhcCBsb25nIGNvbnRlbnQgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEzMTQxKVxuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cblxuLy8gTm9ybWFsaXplIGZvcm0gY29udHJvbHNcbi8vXG4vLyBXaGlsZSBtb3N0IG9mIG91ciBmb3JtIHN0eWxlcyByZXF1aXJlIGV4dHJhIGNsYXNzZXMsIHNvbWUgYmFzaWMgbm9ybWFsaXphdGlvblxuLy8gaXMgcmVxdWlyZWQgdG8gZW5zdXJlIG9wdGltdW0gZGlzcGxheSB3aXRoIG9yIHdpdGhvdXQgdGhvc2UgY2xhc3NlcyB0byBiZXR0ZXJcbi8vIGFkZHJlc3MgYnJvd3NlciBpbmNvbnNpc3RlbmNpZXMuXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAvLyBPdmVycmlkZSBjb250ZW50LWJveCBpbiBOb3JtYWxpemUgKCogaXNuJ3Qgc3BlY2lmaWMgZW5vdWdoKVxuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuXG4gIC8vIFNlYXJjaCBpbnB1dHMgaW4gaU9TXG4gIC8vXG4gIC8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbiAgLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4gIC8vIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyBQb3NpdGlvbiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgYmV0dGVyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBtYXJnaW46IDRweCAwIDA7XG4gIG1hcmdpbi10b3A6IDFweCBcXDk7IC8vIElFOC05XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cbiAgLy8gQXBwbHkgc2FtZSBkaXNhYmxlZCBjdXJzb3IgdHdlYWsgYXMgZm9yIGlucHV0c1xuICAvLyBTb21lIHNwZWNpYWwgY2FyZSBpcyBuZWVkZWQgYmVjYXVzZSA8bGFiZWw+cyBkb24ndCBpbmhlcml0IHRoZWlyIHBhcmVudCdzIGBjdXJzb3JgLlxuICAvL1xuICAvLyBOb3RlOiBOZWl0aGVyIHJhZGlvcyBub3IgY2hlY2tib3hlcyBjYW4gYmUgcmVhZG9ubHkuXG4gICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIE1ha2UgcmFuZ2UgaW5wdXRzIGJlaGF2ZSBsaWtlIHRleHR1YWwgZm9ybSBjb250cm9sc1xuaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBNYWtlIG11bHRpcGxlIHNlbGVjdCBlbGVtZW50cyBoZWlnaHQgbm90IGZpeGVkXG5zZWxlY3RbbXVsdGlwbGVdLFxuc2VsZWN0W3NpemVdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBGb2N1cyBmb3IgZmlsZSwgcmFkaW8sIGFuZCBjaGVja2JveFxuaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMge1xuICBAaW5jbHVkZSB0YWItZm9jdXM7XG59XG5cbi8vIEFkanVzdCBvdXRwdXQgZWxlbWVudFxub3V0cHV0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xufVxuXG5cbi8vIENvbW1vbiBmb3JtIGNvbnRyb2xzXG4vL1xuLy8gU2hhcmVkIHNpemUgYW5kIHR5cGUgcmVzZXRzIGZvciBmb3JtIGNvbnRyb2xzLiBBcHBseSBgLmZvcm0tY29udHJvbGAgdG8gYW55XG4vLyBvZiB0aGUgZm9sbG93aW5nIGZvcm0gY29udHJvbHM6XG4vL1xuLy8gc2VsZWN0XG4vLyB0ZXh0YXJlYVxuLy8gaW5wdXRbdHlwZT1cInRleHRcIl1cbi8vIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRlXCJdXG4vLyBpbnB1dFt0eXBlPVwibW9udGhcIl1cbi8vIGlucHV0W3R5cGU9XCJ0aW1lXCJdXG4vLyBpbnB1dFt0eXBlPVwid2Vla1wiXVxuLy8gaW5wdXRbdHlwZT1cIm51bWJlclwiXVxuLy8gaW5wdXRbdHlwZT1cImVtYWlsXCJdXG4vLyBpbnB1dFt0eXBlPVwidXJsXCJdXG4vLyBpbnB1dFt0eXBlPVwic2VhcmNoXCJdXG4vLyBpbnB1dFt0eXBlPVwidGVsXCJdXG4vLyBpbnB1dFt0eXBlPVwiY29sb3JcIl1cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7IC8vIE1ha2UgaW5wdXRzIGF0IGxlYXN0IHRoZSBoZWlnaHQgb2YgdGhlaXIgYnV0dG9uIGNvdW50ZXJwYXJ0IChiYXNlIGxpbmUtaGVpZ2h0ICsgcGFkZGluZyArIGJvcmRlcilcbiAgcGFkZGluZzogJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAkcGFkZGluZy1iYXNlLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxuICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1czsgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgPHNlbGVjdD5zIGluIENTUy5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgLjE1cyk7XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXM7XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgQGluY2x1ZGUgcGxhY2Vob2xkZXI7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJltkaXNhYmxlZF0sXG4gICZbcmVhZG9ubHldLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnLWRpc2FibGVkO1xuICAgIG9wYWNpdHk6IDE7IC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTVcbiAgfVxuXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRleHRhcmVhJiB0byB0ZXh0YXJlYS5mb3JtLWNvbnRyb2xcbn1cblxuLy8gUmVzZXQgaGVpZ2h0IGZvciBgdGV4dGFyZWFgc1xudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFNwZWNpYWwgc3R5bGVzIGZvciBpT1MgdGVtcG9yYWwgaW5wdXRzXG4vL1xuLy8gSW4gTW9iaWxlIFNhZmFyaSwgc2V0dGluZyBgZGlzcGxheTogYmxvY2tgIG9uIHRlbXBvcmFsIGlucHV0cyBjYXVzZXMgdGhlXG4vLyB0ZXh0IHdpdGhpbiB0aGUgaW5wdXQgdG8gYmVjb21lIHZlcnRpY2FsbHkgbWlzYWxpZ25lZC4gQXMgYSB3b3JrYXJvdW5kLCB3ZVxuLy8gc2V0IGEgcGl4ZWwgbGluZS1oZWlnaHQgdGhhdCBtYXRjaGVzIHRoZSBnaXZlbiBoZWlnaHQgb2YgdGhlIGlucHV0LCBidXQgb25seVxuLy8gZm9yIFNhZmFyaS4gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk4NDhcbi8vXG4vLyBOb3RlIHRoYXQgYXMgb2YgOS4zLCBpT1MgZG9lc24ndCBzdXBwb3J0IGB3ZWVrYC5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xuICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgICAmLmZvcm0tY29udHJvbCB7XG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xuICAgIH1cblxuICAgICYuaW5wdXQtc20sXG4gICAgLmlucHV0LWdyb3VwLXNtICYge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gICAgfVxuXG4gICAgJi5pbnB1dC1sZyxcbiAgICAuaW5wdXQtZ3JvdXAtbGcgJiB7XG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGb3JtIGdyb3Vwc1xuLy9cbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3Jcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4ucmFkaW8sXG4uY2hlY2tib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gIC8vIFRoZXNlIGFyZSB1c2VkIG9uIGVsZW1lbnRzIHdpdGggPGxhYmVsPiBkZXNjZW5kYW50c1xuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgbGFiZWwge1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIGxhYmVsIHtcbiAgICBtaW4taGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7IC8vIEVuc3VyZSB0aGUgaW5wdXQgZG9lc24ndCBqdW1wIHdoZW4gdGhlcmUgaXMgbm8gdGV4dFxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4ucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLnJhZGlvLWlubGluZSBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuLmNoZWNrYm94LWlubGluZSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6IDRweCBcXDk7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcbn1cblxuLnJhZGlvICsgLnJhZGlvLFxuLmNoZWNrYm94ICsgLmNoZWNrYm94IHtcbiAgbWFyZ2luLXRvcDogLTVweDsgLy8gTW92ZSB1cCBzaWJsaW5nIHJhZGlvcyBvciBjaGVja2JveGVzIGZvciB0aWdodGVyIHNwYWNpbmdcbn1cblxuLy8gUmFkaW9zIGFuZCBjaGVja2JveGVzIG9uIHNhbWUgbGluZVxuLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXdlaWdodDogNDAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gVGhlc2UgYXJlIHVzZWQgZGlyZWN0bHkgb24gPGxhYmVsPnNcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuLnJhZGlvLWlubGluZSArIC5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lICsgLmNoZWNrYm94LWlubGluZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4OyAvLyBzcGFjZSBvdXQgY29uc2VjdXRpdmUgaW5saW5lIGNvbnRyb2xzXG59XG5cblxuLy8gU3RhdGljIGZvcm0gY29udHJvbCB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSBgcGAgZWxlbWVudCB0byBtYWtlIGFueSBzdHJpbmcgb2YgdGV4dCBhbGlnbiB3aXRoIGxhYmVscyBpblxuLy8gYSBob3Jpem9udGFsIGZvcm0gbGF5b3V0LlxuXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLWJhc2UpO1xuICAvLyBTaXplIGl0IGFwcHJvcHJpYXRlbHkgbmV4dCB0byByZWFsIGZvcm0gY29udHJvbHNcbiAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIHBhZGRpbmctYm90dG9tOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xuICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gZnJvbSBgcGBcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAmLmlucHV0LWxnLFxuICAmLmlucHV0LXNtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBUaGUgYC5mb3JtLWdyb3VwLSogZm9ybS1jb250cm9sYCB2YXJpYXRpb25zIGFyZSBzYWRseSBkdXBsaWNhdGVkIHRvIGF2b2lkIHRoZVxuLy8gaXNzdWUgZG9jdW1lbnRlZCBpbiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE1MDc0LlxuXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtc20nLCAkaW5wdXQtaGVpZ2h0LXNtYWxsLCAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG4uZm9ybS1ncm91cC1zbSB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtYWxsO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsO1xuICB9XG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgfVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4gIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1zbWFsbCk7XG4gICAgcGFkZGluZzogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSkgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbWFsbDtcbiAgfVxufVxuXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtbGcnLCAkaW5wdXQtaGVpZ2h0LWxhcmdlLCAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG4uZm9ybS1ncm91cC1sZyB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxhcmdlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlO1xuICB9XG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgfVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4gIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1sYXJnZSk7XG4gICAgcGFkZGluZzogKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICsgMSkgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sYXJnZTtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBmZWVkYmFjayBzdGF0ZXNcbi8vXG4vLyBBcHBseSBjb250ZXh0dWFsIGFuZCBzZW1hbnRpYyBzdGF0ZXMgdG8gaW5kaXZpZHVhbCBmb3JtIGNvbnRyb2xzLlxuXG4uaGFzLWZlZWRiYWNrIHtcbiAgLy8gRW5hYmxlIGFic29sdXRlIHBvc2l0aW9uaW5nXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAvLyBFbnN1cmUgaWNvbnMgZG9uJ3Qgb3ZlcmxhcCB0ZXh0XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIHBhZGRpbmctcmlnaHQ6ICgkaW5wdXQtaGVpZ2h0LWJhc2UgKiAxLjI1KTtcbiAgfVxufVxuLy8gRmVlZGJhY2sgaWNvbiAocmVxdWlyZXMgLmdseXBoaWNvbiBjbGFzc2VzKVxuLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMjsgLy8gRW5zdXJlIGljb24gaXMgYWJvdmUgaW5wdXQgZ3JvdXBzXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1iYXNlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5pbnB1dC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtbGcgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbn1cbi5pbnB1dC1zbSArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtc20gLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbn1cblxuLy8gRmVlZGJhY2sgc3RhdGVzXG4uaGFzLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG59XG4uaGFzLXdhcm5pbmcge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy1iZyk7XG59XG4uaGFzLWVycm9yIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLWRhbmdlci10ZXh0LCAkc3RhdGUtZGFuZ2VyLXRleHQsICRzdGF0ZS1kYW5nZXItYmcpO1xufVxuXG4vLyBSZXBvc2l0aW9uIGZlZWRiYWNrIGljb24gaWYgaW5wdXQgaGFzIHZpc2libGUgbGFiZWwgYWJvdmVcbi5oYXMtZmVlZGJhY2sgbGFiZWwge1xuXG4gICYgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICB0b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyA1KTsgLy8gSGVpZ2h0IG9mIHRoZSBgbGFiZWxgIGFuZCBpdHMgbWFyZ2luXG4gIH1cbiAgJi5zci1vbmx5IH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgdG9wOiAwO1xuICB9XG59XG5cblxuLy8gSGVscCB0ZXh0XG4vL1xuLy8gQXBwbHkgdG8gYW55IGVsZW1lbnQgeW91IHdpc2ggdG8gY3JlYXRlIGxpZ2h0IHRleHQgZm9yIHBsYWNlbWVudCBpbW1lZGlhdGVseVxuLy8gYmVsb3cgYSBmb3JtIGNvbnRyb2wuIFVzZSBmb3IgZ2VuZXJhbCBoZWxwLCBmb3JtYXR0aW5nLCBvciBpbnN0cnVjdGlvbmFsIHRleHQuXG5cbi5oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7IC8vIGFjY291bnQgZm9yIGFueSBlbGVtZW50IHVzaW5nIGhlbHAtYmxvY2tcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogbGlnaHRlbigkdGV4dC1jb2xvciwgMjUlKTsgLy8gbGlnaHRlbiB0aGUgdGV4dCBzb21lIGZvciBjb250cmFzdFxufVxuXG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byBgLm5hdmJhci1mb3JtYCBpbiBuYXZiYXJzLmxlc3MuXG5cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAuZm9ybS1pbmxpbmVgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbkBtaXhpbiBmb3JtLWlubGluZSB7XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIEluIG5hdmJhci1mb3JtLCBhbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuLFxuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElucHV0IGdyb3VwcyBuZWVkIHRoYXQgMTAwJSB3aWR0aCB0aG91Z2hcbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5yYWRpbyxcbiAgICAuY2hlY2tib3gge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC8vIFJlLW92ZXJyaWRlIHRoZSBmZWVkYmFjayBpY29uLlxuICAgIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59XG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBmb3JtLWlubGluZWAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuLmZvcm0taW5saW5lIHtcbiAgQGluY2x1ZGUgZm9ybS1pbmxpbmU7XG59XG5cblxuXG4vLyBIb3Jpem9udGFsIGZvcm1zXG4vL1xuLy8gSG9yaXpvbnRhbCBmb3JtcyBhcmUgYnVpbHQgb24gZ3JpZCBjbGFzc2VzIGFuZCBhbGxvdyB5b3UgdG8gY3JlYXRlIGZvcm1zIHdpdGhcbi8vIGxhYmVscyBvbiB0aGUgbGVmdCBhbmQgaW5wdXRzIG9uIHRoZSByaWdodC5cblxuLmZvcm0taG9yaXpvbnRhbCB7XG5cbiAgLy8gQ29uc2lzdGVudCB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzXG4gIC8vXG4gIC8vIExhYmVscyBhbHNvIGdldCBzb21lIHJlc2V0IHN0eWxlcywgYnV0IHRoYXQgaXMgc2NvcGVkIHRvIGEgbWVkaWEgcXVlcnkgYmVsb3cuXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lIHtcbiAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLy8gQWNjb3VudCBmb3IgcGFkZGluZyB3ZSdyZSBhZGRpbmcgdG8gZW5zdXJlIHRoZSBhbGlnbm1lbnQgYW5kIG9mIGhlbHAgdGV4dFxuICAvLyBhbmQgb3RoZXIgY29udGVudCBiZWxvdyBpdGVtc1xuICAucmFkaW8sXG4gIC5jaGVja2JveCB7XG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSkpO1xuICB9XG5cbiAgLy8gTWFrZSBmb3JtIGdyb3VwcyBiZWhhdmUgbGlrZSByb3dzXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdztcbiAgfVxuXG4gIC8vIFJlc2V0IHNwYWNpbmcgYW5kIHJpZ2h0IGFsaWduIGxhYmVscywgYnV0IHNjb3BlIHRvIG1lZGlhIHF1ZXJpZXMgc28gdGhhdFxuICAvLyBsYWJlbHMgb24gbmFycm93IHZpZXdwb3J0cyBzdGFjayB0aGUgc2FtZSBhcyBhIGRlZmF1bHQgZm9ybSBleGFtcGxlLlxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBWYWxpZGF0aW9uIHN0YXRlc1xuICAvL1xuICAvLyBSZXBvc2l0aW9uIHRoZSBpY29uIGJlY2F1c2UgaXQncyBub3cgd2l0aGluIGEgZ3JpZCBjb2x1bW4gYW5kIGNvbHVtbnMgaGF2ZVxuICAvLyBgcG9zaXRpb246IHJlbGF0aXZlO2Agb24gdGhlbS4gQWxzbyBhY2NvdW50cyBmb3IgdGhlIGdyaWQgZ3V0dGVyIHBhZGRpbmcuXG4gIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cblxuICAvLyBGb3JtIGdyb3VwIHNpemVzXG4gIC8vXG4gIC8vIFF1aWNrIHV0aWxpdHkgY2xhc3MgZm9yIGFwcGx5aW5nIGAuaW5wdXQtbGdgIGFuZCBgLmlucHV0LXNtYCBzdHlsZXMgdG8gdGhlXG4gIC8vIGlucHV0cyBhbmQgbGFiZWxzIHdpdGhpbiBhIGAuZm9ybS1ncm91cGAuXG4gIC5mb3JtLWdyb3VwLWxnIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCArIDEpO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb3JtLWdyb3VwLXNtIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCArIDEpO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gRm9yIGlucHV0LmJ0blxuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1iYXNlLXZlcnRpY2FsLCAkcGFkZGluZy1iYXNlLWhvcml6b250YWwsICRmb250LXNpemUtYmFzZSwgJGxpbmUtaGVpZ2h0LWJhc2UsICRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgQGluY2x1ZGUgdXNlci1zZWxlY3Qobm9uZSk7XG5cbiAgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgQGluY2x1ZGUgdGFiLWZvY3VzO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiAkYnRuLWRlZmF1bHQtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC42NSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmJ0blxufVxuXG5hLmJ0biB7XG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWRlZmF1bHQge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRlZmF1bHQtY29sb3IsICRidG4tZGVmYXVsdC1iZywgJGJ0bi1kZWZhdWx0LWJvcmRlcik7XG59XG4uYnRuLXByaW1hcnkge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXByaW1hcnktY29sb3IsICRidG4tcHJpbWFyeS1iZywgJGJ0bi1wcmltYXJ5LWJvcmRlcik7XG59XG4vLyBTdWNjZXNzIGFwcGVhcnMgYXMgZ3JlZW5cbi5idG4tc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tc3VjY2Vzcy1jb2xvciwgJGJ0bi1zdWNjZXNzLWJnLCAkYnRuLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cbi8vIEluZm8gYXBwZWFycyBhcyBibHVlLWdyZWVuXG4uYnRuLWluZm8ge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWluZm8tY29sb3IsICRidG4taW5mby1iZywgJGJ0bi1pbmZvLWJvcmRlcik7XG59XG4vLyBXYXJuaW5nIGFwcGVhcnMgYXMgb3JhbmdlXG4uYnRuLXdhcm5pbmcge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXdhcm5pbmctY29sb3IsICRidG4td2FybmluZy1iZywgJGJ0bi13YXJuaW5nLWJvcmRlcik7XG59XG4vLyBEYW5nZXIgYW5kIGVycm9yIGFwcGVhciBhcyByZWRcbi5idG4tZGFuZ2VyIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1kYW5nZXItY29sb3IsICRidG4tZGFuZ2VyLWJnLCAkYnRuLWRhbmdlci1ib3JkZXIpO1xufVxuXG5cbi8vIExpbmsgYnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICYsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCdXR0b24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tbGcge1xuICAvLyBsaW5lLWhlaWdodDogZW5zdXJlIGV2ZW4tbnVtYmVyZWQgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIGxhcmdlIGlucHV0XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG59XG4uYnRuLXNtIHtcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBwcm9wZXIgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIHNtYWxsIGlucHV0XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG4uYnRuLXhzIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmcteHMtdmVydGljYWwsICRwYWRkaW5nLXhzLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbn1cblxuXG4vLyBCbG9jayBidXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbi5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvL1xuLy8gQ29tcG9uZW50IGFuaW1hdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhlYWRzIHVwIVxuLy9cbi8vIFdlIGRvbid0IHVzZSB0aGUgYC5vcGFjaXR5KClgIG1peGluIGhlcmUgc2luY2UgaXQgY2F1c2VzIGEgYnVnIHdpdGggdGV4dFxuLy8gZmllbGRzIGluIElFNy04LiBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzM1NTIuXG5cbi5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IC4xNXMgbGluZWFyKTtcblxuICAmLmluIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgJi5pbiAgICAgIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRyJi5pbiB0byB0ci5jb2xsYXBzZS5pblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdGJvZHkmLmluIHRvIHRib2R5LmNvbGxhcHNlLmluXG59XG5cbnRyLmNvbGxhcHNlLmluICAgIHsgZGlzcGxheTogdGFibGUtcm93OyB9XG5cbnRib2R5LmNvbGxhcHNlLmluIHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwOyB9XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tcHJvcGVydHkoaGVpZ2h0LCB2aXNpYmlsaXR5KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbiguMzVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oZWFzZSk7XG59XG4iLCIvL1xuLy8gRHJvcGRvd24gbWVudXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRHJvcGRvd24gYXJyb3cvY2FyZXRcbi5jYXJldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoLWJhc2UgZGFzaGVkO1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCBcXDk7IC8vIElFOFxuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChkaXYpXG4uZHJvcHVwLFxuLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLyBQcmV2ZW50IHRoZSBmb2N1cyBvbiB0aGUgZHJvcGRvd24gdG9nZ2xlIHdoZW4gY2xvc2luZyBkcm9wZG93bnNcbi5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudSAodWwpXG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAxNjBweDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIG1hcmdpbjogMnB4IDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRkcm9wZG93bi1mYWxsYmFjay1ib3JkZXI7IC8vIElFOCBmYWxsYmFja1xuICBib3JkZXI6IDFweCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgNnB4IDEycHggcmdiYSgwLCAwLCAwLCAuMTc1KSk7XG5cbiAgLy8gQWxpZ25zIHRoZSBkcm9wZG93biBtZW51IHRvIHJpZ2h0XG4gIC8vXG4gIC8vIERlcHJlY2F0ZWQgYXMgb2YgMy4xLjAgaW4gZmF2b3Igb2YgYC5kcm9wZG93bi1tZW51LVtkaXJdYFxuICAmLnB1bGwtcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICAvLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4gIC5kaXZpZGVyIHtcbiAgICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZyk7XG4gIH1cblxuICAvLyBMaW5rcyB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbiAgPiBsaSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDNweCAyMHB4O1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgICB9XG4gIH1cbn1cblxuLy8gQWN0aXZlIHN0YXRlXG4uZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8gRGlzYWJsZWQgc3RhdGVcbi8vXG4vLyBHcmF5IG91dCB0ZXh0IGFuZCBlbnN1cmUgdGhlIGhvdmVyL2ZvY3VzIHN0YXRlIHJlbWFpbnMgZ3JheVxuXG4uZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGEge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gIH1cblxuICAvLyBOdWtlIGhvdmVyL2ZvY3VzIGVmZmVjdHNcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50XG4gICAgQGluY2x1ZGUgcmVzZXQtZmlsdGVyO1xuICB9XG59XG5cbi8vIE9wZW4gc3RhdGUgZm9yIHRoZSBkcm9wZG93blxuLm9wZW4ge1xuICAvLyBTaG93IHRoZSBtZW51XG4gID4gLmRyb3Bkb3duLW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBvdXRsaW5lIHdoZW4gOmZvY3VzIGlzIHRyaWdnZXJlZFxuICA+IGEge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8gTWVudSBwb3NpdGlvbmluZ1xuLy9cbi8vIEFkZCBleHRyYSBjbGFzcyB0byBgLmRyb3Bkb3duLW1lbnVgIHRvIGZsaXAgdGhlIGFsaWdubWVudCBvZiB0aGUgZHJvcGRvd25cbi8vIG1lbnUgd2l0aCB0aGUgcGFyZW50LlxuLmRyb3Bkb3duLW1lbnUtcmlnaHQge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bzsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBgLmRyb3Bkb3duLW1lbnVgXG59XG4vLyBXaXRoIHYzLCB3ZSBlbmFibGVkIGF1dG8tZmxpcHBpbmcgaWYgeW91IGhhdmUgYSBkcm9wZG93biB3aXRoaW4gYSByaWdodFxuLy8gYWxpZ25lZCBuYXYgY29tcG9uZW50LiBUbyBlbmFibGUgdGhlIHVuZG9pbmcgb2YgdGhhdCwgd2UgcHJvdmlkZSBhbiBvdmVycmlkZVxuLy8gdG8gcmVzdG9yZSB0aGUgZGVmYXVsdCBkcm9wZG93biBtZW51IGFsaWdubWVudC5cbi8vXG4vLyBUaGlzIGlzIG9ubHkgZm9yIGxlZnQtYWxpZ25pbmcgYSBkcm9wZG93biBtZW51IHdpdGhpbiBhIGAubmF2YmFyLXJpZ2h0YCBvclxuLy8gYC5wdWxsLXJpZ2h0YCBuYXYgY29tcG9uZW50LlxuLmRyb3Bkb3duLW1lbnUtbGVmdCB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogM3B4IDIwcHg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBCYWNrZHJvcCB0byBjYXRjaCBib2R5IGNsaWNrcyBvbiBtb2JpbGUsIGV0Yy5cbi5kcm9wZG93bi1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAoJHppbmRleC1kcm9wZG93biAtIDEwKTtcbn1cblxuLy8gUmlnaHQgYWxpZ25lZCBkcm9wZG93bnNcbi5wdWxsLXJpZ2h0ID4gLmRyb3Bkb3duLW1lbnUge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vL1xuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LCBicm8uXG4vLyBUT0RPOiBhYnN0cmFjdCB0aGlzIHNvIHRoYXQgdGhlIG5hdmJhciBmaXhlZCBzdHlsZXMgYXJlIG5vdCBwbGFjZWQgaGVyZT9cblxuLmRyb3B1cCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5kcm9wZG93biB7XG4gIC8vIFJldmVyc2UgdGhlIGNhcmV0XG4gIC5jYXJldCB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aC1iYXNlIGRhc2hlZDtcbiAgICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCBcXDk7IC8vIElFOFxuICB9XG4gIC8vIERpZmZlcmVudCBwb3NpdGlvbmluZyBmb3IgYm90dG9tIHVwIG1lbnVcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICB9XG59XG5cblxuLy8gQ29tcG9uZW50IGFsaWdubWVudFxuLy9cbi8vIFJlaXRlcmF0ZSBwZXIgbmF2YmFyLmxlc3MgYW5kIHRoZSBtb2RpZmllZCBjb21wb25lbnQgYWxpZ25tZW50IHRoZXJlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAubmF2YmFyLXJpZ2h0IHtcbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICByaWdodDogMDsgbGVmdDogYXV0bztcbiAgICB9XG4gICAgLy8gTmVjZXNzYXJ5IGZvciBvdmVycmlkZXMgb2YgdGhlIGRlZmF1bHQgcmlnaHQgYWxpZ25lZCBtZW51LlxuICAgIC8vIFdpbGwgcmVtb3ZlIGNvbWUgdjQgaW4gYWxsIGxpa2VsaWhvb2QuXG4gICAgLmRyb3Bkb3duLW1lbnUtbGVmdCB7XG4gICAgICBsZWZ0OiAwOyByaWdodDogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCdXR0b24gZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuLmJ0bi1ncm91cCB7XG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmJ0bi1ncm91cCxcbiAgLmJ0bi1ncm91cCArIC5idG4sXG4gIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBtYXJnaW4tbGVmdDogLTVweDsgLy8gT2Zmc2V0IHRoZSBmaXJzdCBjaGlsZCdzIG1hcmdpblxuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAuYnRuLFxuICAuYnRuLWdyb3VwLFxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwLFxuICA+IC5pbnB1dC1ncm91cCB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxufVxuXG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIFNldCBjb3JuZXJzIGluZGl2aWR1YWwgYmVjYXVzZSBzb21ldGltZXMgYSBzaW5nbGUgYnV0dG9uIGNhbiBiZSBpbiBhIC5idG4tZ3JvdXAgYW5kIHdlIG5lZWQgOmZpcnN0LWNoaWxkIGFuZCA6bGFzdC1jaGlsZCB0byBib3RoIG1hdGNoXG4uYnRuLWdyb3VwID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAmOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG59XG4vLyBOZWVkIC5kcm9wZG93bi10b2dnbGUgc2luY2UgOmxhc3QtY2hpbGQgZG9lc24ndCBhcHBseSwgZ2l2ZW4gdGhhdCBhIC5kcm9wZG93bi1tZW51IGlzIHVzZWQgaW1tZWRpYXRlbHkgYWZ0ZXIgaXRcbi5idG4tZ3JvdXAgPiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmRyb3Bkb3duLXRvZ2dsZTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cblxuLy8gQ3VzdG9tIGVkaXRzIGZvciBpbmNsdWRpbmcgYnRuLWdyb3VwcyB3aXRoaW4gYnRuLWdyb3VwcyAodXNlZnVsIGZvciBpbmNsdWRpbmcgZHJvcGRvd24gYnV0dG9ucyB3aXRoaW4gYSBidG4tZ3JvdXApXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gID4gLmJ0bjpsYXN0LWNoaWxkLFxuICA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuXG4vLyBPbiBhY3RpdmUgYW5kIG9wZW4sIGRvbid0IHNob3cgb3V0bGluZVxuLmJ0bi1ncm91cCAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSxcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgb3V0bGluZTogMDtcbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC14cyA+IC5idG4geyBAZXh0ZW5kIC5idG4teHM7IH1cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgbGluZSBiZXR3ZWVuIGJ1dHRvbnMgc29tZSBkZXB0aFxuLmJ0bi1ncm91cCA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gIHBhZGRpbmctbGVmdDogMTJweDtcbn1cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBSZW1vdmUgdGhlIGdyYWRpZW50IGFuZCBzZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSkpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vIFJlcG9zaXRpb24gdGhlIGNhcmV0XG4uYnRuIC5jYXJldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLy8gQ2FyZXRzIGluIG90aGVyIGJ1dHRvbiBzaXplc1xuLmJ0bi1sZyAuY2FyZXQge1xuICBib3JkZXItd2lkdGg6ICRjYXJldC13aWR0aC1sYXJnZSAkY2FyZXQtd2lkdGgtbGFyZ2UgMDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cbi8vIFVwc2lkZSBkb3duIGNhcmV0cyBmb3IgLmRyb3B1cFxuLmRyb3B1cCAuYnRuLWxnIC5jYXJldCB7XG4gIGJvcmRlci13aWR0aDogMCAkY2FyZXQtd2lkdGgtbGFyZ2UgJGNhcmV0LXdpZHRoLWxhcmdlO1xufVxuXG5cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBDbGVhciBmbG9hdHMgc28gZHJvcGRvd24gbWVudXMgY2FuIGJlIHByb3Blcmx5IHBsYWNlZFxuICA+IC5idG4tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgID4gLmJ0biB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG4gIH1cblxuICA+IC5idG4gKyAuYnRuLFxuICA+IC5idG4gKyAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcbiAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG4gICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICB9XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG59XG5cblxuLy8gSnVzdGlmaWVkIGJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ncm91cC1qdXN0aWZpZWQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxJTtcbiAgfVxuICA+IC5idG4tZ3JvdXAgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG4tZ3JvdXAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG5bZGF0YS10b2dnbGU9XCJidXR0b25zXCJdIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBJbnB1dCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBkcm9wZG93bnNcbiAgZGlzcGxheTogdGFibGU7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7IC8vIHByZXZlbnQgaW5wdXQgZ3JvdXBzIGZyb20gaW5oZXJpdGluZyBib3JkZXIgc3R5bGVzIGZyb20gdGFibGUgY2VsbHMgd2hlbiBwbGFjZWQgd2l0aGluIGEgdGFibGVcblxuICAvLyBVbmRvIHBhZGRpbmcgYW5kIGZsb2F0IG9mIGdyaWQgY2xhc3Nlc1xuICAmW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgLy8gRW5zdXJlIHRoYXQgdGhlIGlucHV0IGlzIGFsd2F5cyBhYm92ZSB0aGUgKmFwcGVuZGVkKiBhZGRvbiBidXR0b24gZm9yXG4gICAgLy8gcHJvcGVyIGJvcmRlciBjb2xvcnMuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAvLyBJRTkgZnViYXJzIHRoZSBwbGFjZWhvbGRlciBhdHRyaWJ1dGUgaW4gdGV4dCBpbnB1dHMgYW5kIHRoZSBhcnJvd3Mgb25cbiAgICAvLyBzZWxlY3QgZWxlbWVudHMgaW4gaW5wdXQgZ3JvdXBzLiBUbyBmaXggaXQsIHdlIGZsb2F0IHRoZSBpbnB1dC4gRGV0YWlsczpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTYxI2lzc3VlY29tbWVudC0yODkzNjg1NVxuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cbn1cblxuLy8gU2l6aW5nIG9wdGlvbnNcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gIEBleHRlbmQgLmlucHV0LWxnO1xufVxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcbiAgQGV4dGVuZCAuaW5wdXQtc207XG59XG5cblxuLy8gRGlzcGxheSBhcyB0YWJsZS1jZWxsXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuLFxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXG4gICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuLy8gQWRkb24gYW5kIGFkZG9uIHdyYXBwZXIgZm9yIGJ1dHRvbnNcbi5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1idG4ge1xuICB3aWR0aDogMSU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIE1hdGNoIHRoZSBpbnB1dHNcbn1cblxuLy8gVGV4dCBpbnB1dCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pbnB1dC1ncm91cC1hZGRvbiB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cztcblxuICAvLyBTaXppbmdcbiAgJi5pbnB1dC1zbSB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctc21hbGwtdmVydGljYWwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw7XG4gIH1cbiAgJi5pbnB1dC1sZyB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIH1cblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bGFzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOmxhc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLy8gQnV0dG9uIGlucHV0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gSmFua2lseSBwcmV2ZW50IGlucHV0IGJ1dHRvbiBncm91cHMgZnJvbSB3cmFwcGluZyB3aXRoIGB3aGl0ZS1zcGFjZWAgYW5kXG4gIC8vIGBmb250LXNpemVgIGluIGNvbWJpbmF0aW9uIHdpdGggYGlubGluZS1ibG9ja2Agb24gYnV0dG9ucy5cbiAgZm9udC1zaXplOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3Igc3BhY2luZywgcG9zaXRpb24gZm9yIGJyaW5naW5nIGhvdmVyZWQvZm9jdXNlZC9hY3RpdmVkXG4gIC8vIGVsZW1lbnQgYWJvdmUgdGhlIHNpYmxpbmdzLlxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICArIC5idG4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cblxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gdG8gb25seSBoYXZlIGEgMXB4IGJvcmRlciBiZXR3ZWVuIHRoZSB0d29cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gTmF2c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubmF2IHtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IHVsL29sXG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gID4gbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nO1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZSBzZXRzIHRleHQgdG8gZ3JheSBhbmQgbnVrZXMgaG92ZXIvdGFiIGVmZmVjdHNcbiAgICAmLmRpc2FibGVkID4gYSB7XG4gICAgICBjb2xvcjogJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBPcGVuIGRyb3Bkb3duc1xuICAub3BlbiA+IGEge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJGxpbmstY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gTmF2IGRpdmlkZXJzIChkZXByZWNhdGVkIHdpdGggdjMuMC4xKVxuICAvL1xuICAvLyBUaGlzIHNob3VsZCBoYXZlIGJlZW4gcmVtb3ZlZCBpbiB2MyB3aXRoIHRoZSBkcm9wcGluZyBvZiBgLm5hdi1saXN0YCwgYnV0XG4gIC8vIHdlIG1pc3NlZCBpdC4gV2UgZG9uJ3QgY3VycmVudGx5IHN1cHBvcnQgdGhpcyBhbnl3aGVyZSwgYnV0IGluIHRoZSBpbnRlcmVzdFxuICAvLyBvZiBtYWludGFpbmluZyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IGluIGNhc2UgeW91IHVzZSBpdCwgaXQncyBkZXByZWNhdGVkLlxuICAubmF2LWRpdmlkZXIge1xuICAgIEBpbmNsdWRlIG5hdi1kaXZpZGVyO1xuICB9XG5cbiAgLy8gUHJldmVudCBJRTggZnJvbSBtaXNwbGFjaW5nIGltZ3NcbiAgLy9cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2lzc3Vlcy85ODQjaXNzdWVjb21tZW50LTM5ODU5ODlcbiAgPiBsaSA+IGEgPiBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIFRhYnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgdGFicyBzb21ldGhpbmcgdG8gc2l0IG9uXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLy8gTWFrZSB0aGUgbGlzdC1pdGVtcyBvdmVybGF5IHRoZSBib3R0b20gYm9yZGVyXG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDtcblxuICAgIC8vIEFjdHVhbCB0YWJzIChhcyBsaW5rcylcbiAgICA+IGEge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlLCBhbmQgaXRzIDpob3ZlciB0byBvdmVycmlkZSBub3JtYWwgOmhvdmVyXG4gICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gcHVsbGluZyB0aGlzIGluIG1haW5seSBmb3IgbGVzcyBzaG9ydGhhbmRcbiAgJi5uYXYtanVzdGlmaWVkIHtcbiAgICBAZXh0ZW5kIC5uYXYtanVzdGlmaWVkO1xuICAgIEBleHRlbmQgLm5hdi10YWJzLWp1c3RpZmllZDtcbiAgfVxufVxuXG5cbi8vIFBpbGxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubmF2LXBpbGxzIHtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAvLyBMaW5rcyByZW5kZXJlZCBhcyBwaWxsc1xuICAgID4gYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuICAgICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAmLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gU3RhY2tlZCBwaWxsc1xuLm5hdi1zdGFja2VkIHtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgKyBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgLy8gbm8gbmVlZCBmb3IgdGhpcyBnYXAgYmV0d2VlbiBuYXYgaXRlbXNcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXYgdmFyaWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSnVzdGlmaWVkIG5hdiBsaW5rc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gbGkge1xuICAgIGZsb2F0OiBub25lO1xuICAgID4gYSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgPiAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgPiBhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gTW92ZSBib3JkZXJzIHRvIGFuY2hvcnMgaW5zdGVhZCBvZiBib3R0b20gb2YgbGlzdFxuLy9cbi8vIE1peGluIGZvciBhZGRpbmcgb24gdG9wIHRoZSBzaGFyZWQgYC5uYXYtanVzdGlmaWVkYCBzdHlsZXMgZm9yIG91ciB0YWJzXG4ubmF2LXRhYnMtanVzdGlmaWVkIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICA+IGxpID4gYSB7XG4gICAgLy8gT3ZlcnJpZGUgbWFyZ2luIGZyb20gLm5hdi10YWJzXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIH1cblxuICA+IC5hY3RpdmUgPiBhLFxuICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhLFxuICAgID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gICAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5cbi8vIERyb3Bkb3duc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTcGVjaWZpYyBkcm9wZG93bnNcbi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7XG4gIC8vIG1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICBtYXJnaW4tdG9wOiAtMXB4O1xuICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cbiIsIi8vXG4vLyBOYXZiYXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFdyYXBwZXIgYW5kIGJhc2UgY2xhc3Ncbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6ICRuYXZiYXItaGVpZ2h0OyAvLyBFbnN1cmUgYSBuYXZiYXIgYWx3YXlzIHNob3dzIChlLmcuLCB3aXRob3V0IGEgLm5hdmJhci1icmFuZCBpbiBjb2xsYXBzZWQgbW9kZSlcbiAgbWFyZ2luLWJvdHRvbTogJG5hdmJhci1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAvLyBQcmV2ZW50IGZsb2F0cyBmcm9tIGJyZWFraW5nIHRoZSBuYXZiYXJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkbmF2YmFyLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgaGVhZGluZ1xuLy9cbi8vIEdyb3VwcyBgLm5hdmJhci1icmFuZGAgYW5kIGAubmF2YmFyLXRvZ2dsZWAgaW50byBhIHNpbmdsZSBjb21wb25lbnQgZm9yIGVhc3lcbi8vIHN0eWxpbmcgb2YgcmVzcG9uc2l2ZSBhc3BlY3RzLlxuXG4ubmF2YmFyLWhlYWRlciB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgY29sbGFwc2UgKGJvZHkpXG4vL1xuLy8gR3JvdXAgeW91ciBuYXZiYXIgY29udGVudCBpbnRvIHRoaXMgZm9yIGVhc3kgY29sbGFwc2luZyBhbmQgZXhwYW5kaW5nIGFjcm9zc1xuLy8gdmFyaW91cyBkZXZpY2Ugc2l6ZXMuIEJ5IGRlZmF1bHQsIHRoaXMgY29udGVudCBpcyBjb2xsYXBzZWQgd2hlbiA8NzY4cHgsIGJ1dFxuLy8gd2lsbCBleHBhbmQgcGFzdCB0aGF0IGZvciBhIGhvcml6b250YWwgZGlzcGxheS5cbi8vXG4vLyBUbyBzdGFydCAob24gbW9iaWxlIGRldmljZXMpIHRoZSBuYXZiYXIgbGlua3MsIGZvcm1zLCBhbmQgYnV0dG9ucyBhcmUgc3RhY2tlZFxuLy8gdmVydGljYWxseSBhbmQgaW5jbHVkZSBhIGBtYXgtaGVpZ2h0YCB0byBvdmVyZmxvdyBpbiBjYXNlIHlvdSBoYXZlIHRvbyBtdWNoXG4vLyBjb250ZW50IGZvciB0aGUgdXNlcidzIHZpZXdwb3J0LlxuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgcGFkZGluZy1yaWdodDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIHBhZGRpbmctbGVmdDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIG92ZXJmbG93LXg6IHZpc2libGU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAmLmluIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IHNldHRpbmdcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5pbiB7XG4gICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8vIFVuZG8gdGhlIGNvbGxhcHNlIHNpZGUgcGFkZGluZyBmb3IgbmF2YmFycyB3aXRoIGNvbnRhaW5lcnMgdG8gZW5zdXJlXG4gICAgLy8gYWxpZ25tZW50IG9mIHJpZ2h0LWFsaWduZWQgY29udGVudHMuXG4gICAgLm5hdmJhci1maXhlZC10b3AgJixcbiAgICAubmF2YmFyLXN0YXRpYy10b3AgJixcbiAgICAubmF2YmFyLWZpeGVkLWJvdHRvbSAmIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5uYXZiYXItZml4ZWQtdG9wLFxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xuICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBtYXgtaGVpZ2h0OiAkbmF2YmFyLWNvbGxhcHNlLW1heC1oZWlnaHQ7XG5cbiAgICBAbWVkaWEgKG1heC1kZXZpY2Utd2lkdGg6ICRzY3JlZW4teHMtbWluKSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgIH1cbiAgfVxuXG4gIC8vIEZpeCB0aGUgdG9wL2JvdHRvbSBuYXZiYXJzIHdoZW4gc2NyZWVuIHJlYWwgZXN0YXRlIHN1cHBvcnRzIGl0XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbmF2YmFyLWZpeGVkO1xuXG4gIC8vIFVuZG8gdGhlIHJvdW5kZWQgY29ybmVyc1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLm5hdmJhci1maXhlZC10b3Age1xuICB0b3A6IDA7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcbn1cbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBvdmVycmlkZSAubmF2YmFyIGRlZmF1bHRzXG4gIGJvcmRlci13aWR0aDogMXB4IDAgMDtcbn1cblxuXG4vLyBCb3RoIG5hdmJhciBoZWFkZXIgYW5kIGNvbGxhcHNlXG4vL1xuLy8gV2hlbiBhIGNvbnRhaW5lciBpcyBwcmVzZW50LCBjaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIHRoZSBoZWFkZXIgYW5kIGNvbGxhcHNlLlxuXG4uY29udGFpbmVyLFxuLmNvbnRhaW5lci1mbHVpZCB7XG4gID4gLm5hdmJhci1oZWFkZXIsXG4gID4gLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbWFyZ2luLWxlZnQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gTmF2YmFyIGFsaWdubWVudCBvcHRpb25zXG4vL1xuLy8gRGlzcGxheSB0aGUgbmF2YmFyIGFjcm9zcyB0aGUgZW50aXJldHkgb2YgdGhlIHBhZ2Ugb3IgZml4ZWQgaXQgdG8gdGhlIHRvcCBvclxuLy8gYm90dG9tIG9mIHRoZSBwYWdlLlxuXG4vLyBTdGF0aWMgdG9wICh1bmZpeGVkLCBidXQgMTAwJSB3aWRlKSBuYXZiYXJcbi5uYXZiYXItc3RhdGljLXRvcCB7XG4gIHotaW5kZXg6ICR6aW5kZXgtbmF2YmFyO1xuICBib3JkZXItd2lkdGg6IDAgMCAxcHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5cblxuLy8gQnJhbmQvcHJvamVjdCBuYW1lXG5cbi5uYXZiYXItYnJhbmQge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodDtcbiAgcGFkZGluZzogJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgPiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICAubmF2YmFyID4gLmNvbnRhaW5lciAmLFxuICAgIC5uYXZiYXIgPiAuY29udGFpbmVyLWZsdWlkICYge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdG9nZ2xlXG4vL1xuLy8gQ3VzdG9tIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIGAubmF2YmFyLWNvbGxhcHNlYCwgcG93ZXJlZCBieSB0aGUgY29sbGFwc2Vcbi8vIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4ubmF2YmFyLXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nOiA5cHggMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKDM0cHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcblxuICAvLyBXZSByZW1vdmUgdGhlIGBvdXRsaW5lYCBoZXJlLCBidXQgbGF0ZXIgY29tcGVuc2F0ZSBieSBhdHRhY2hpbmcgYDpob3ZlcmBcbiAgLy8gc3R5bGVzIHRvIGA6Zm9jdXNgLlxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgLy8gQmFyc1xuICAuaWNvbi1iYXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyMnB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgfVxuICAuaWNvbi1iYXIgKyAuaWNvbi1iYXIge1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXYgbGlua3Ncbi8vXG4vLyBCdWlsZHMgb24gdG9wIG9mIHRoZSBgLm5hdmAgY29tcG9uZW50cyB3aXRoIGl0cyBvd24gbW9kaWZpZXIgY2xhc3MgdG8gbWFrZVxuLy8gdGhlIG5hdiB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIGhvcml6b250YWwgbmF2IChhYm92ZSA3NjhweCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgbWFyZ2luOiAoJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsIC8gMikgKC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbCk7XG5cbiAgPiBsaSA+IGEge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcbiAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5IHdoZW4gY29sbGFwc2VkXG4gICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgPiBsaSA+IGEsXG4gICAgICAuZHJvcGRvd24taGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogNXB4IDE1cHggNXB4IDI1cHg7XG4gICAgICB9XG4gICAgICA+IGxpID4gYSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBVbmNvbGxhcHNlIHRoZSBuYXZcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICA+IGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgPiBhIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgZm9ybVxuLy9cbi8vIEV4dGVuc2lvbiBvZiB0aGUgYC5mb3JtLWlubGluZWAgd2l0aCBzb21lIGV4dHJhIGZsYXZvciBmb3Igb3B0aW11bSBkaXNwbGF5IGluXG4vLyBvdXIgbmF2YmFycy5cblxuLm5hdmJhci1mb3JtIHtcbiAgcGFkZGluZzogMTBweCAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIG1hcmdpbi1sZWZ0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAkc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpLCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xuXG4gIC8vIE1peGluIGJlaGF2aW9yIGZvciBvcHRpbXVtIGRpc3BsYXlcbiAgQGluY2x1ZGUgZm9ybS1pbmxpbmU7XG5cbiAgLmZvcm0tZ3JvdXAge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsbHkgY2VudGVyIGluIGV4cGFuZGVkLCBob3Jpem9udGFsIG5hdmJhclxuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1iYXNlKTtcblxuICAvLyBVbmRvIDEwMCUgd2lkdGggZm9yIHB1bGwgY2xhc3Nlc1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vIERyb3Bkb3duIG1lbnVzXG5cbi8vIE1lbnUgcG9zaXRpb24gYW5kIG1lbnUgY2FyZXRzXG4ubmF2YmFyLW5hdiA+IGxpID4gLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cbi8vIE1lbnUgcG9zaXRpb24gYW5kIG1lbnUgY2FyZXQgc3VwcG9ydCBmb3IgZHJvcHVwcyB2aWEgZXh0cmEgZHJvcHVwIGNsYXNzXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSAubmF2YmFyLW5hdiA+IGxpID4gLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2YmFyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbn1cblxuXG4vLyBCdXR0b25zIGluIG5hdmJhcnNcbi8vXG4vLyBWZXJ0aWNhbGx5IGNlbnRlciBhIGJ1dHRvbiB3aXRoaW4gYSBuYXZiYXIgKHdoZW4gKm5vdCogaW4gYSBmb3JtKS5cblxuLm5hdmJhci1idG4ge1xuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1iYXNlKTtcblxuICAmLmJ0bi1zbSB7XG4gICAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRpbnB1dC1oZWlnaHQtc21hbGwpO1xuICB9XG4gICYuYnRuLXhzIHtcbiAgICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oMjIpO1xuICB9XG59XG5cblxuLy8gVGV4dCBpbiBuYXZiYXJzXG4vL1xuLy8gQWRkIGEgY2xhc3MgdG8gbWFrZSBhbnkgZWxlbWVudCBwcm9wZXJseSBhbGlnbiBpdHNlbGYgdmVydGljYWxseSB3aXRoaW4gdGhlIG5hdmJhcnMuXG5cbi5uYXZiYXItdGV4dCB7XG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkbGluZS1oZWlnaHQtY29tcHV0ZWQpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBtYXJnaW4tbGVmdDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIH1cbn1cblxuXG4vLyBDb21wb25lbnQgYWxpZ25tZW50XG4vL1xuLy8gUmVwdXJwb3NlIHRoZSBwdWxsIHV0aWxpdGllcyBhcyB0aGVpciBvd24gbmF2YmFyIHV0aWxpdGllcyB0byBhdm9pZCBzcGVjaWZpY2l0eVxuLy8gaXNzdWVzIHdpdGggcGFyZW50cyBhbmQgY2hhaW5pbmcuIE9ubHkgZG8gdGhpcyB3aGVuIHRoZSBuYXZiYXIgaXMgdW5jb2xsYXBzZWRcbi8vIHRob3VnaCBzbyB0aGF0IG5hdmJhciBjb250ZW50cyBwcm9wZXJseSBzdGFjayBhbmQgYWxpZ24gaW4gbW9iaWxlLlxuLy9cbi8vIERlY2xhcmVkIGFmdGVyIHRoZSBuYXZiYXIgY29tcG9uZW50cyB0byBlbnN1cmUgbW9yZSBzcGVjaWZpY2l0eSBvbiB0aGUgbWFyZ2lucy5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgLm5hdmJhci1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gIC5uYXZiYXItcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcblxuICAgIH4gLm5hdmJhci1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIG5hdmJhcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIERlZmF1bHQgbmF2YmFyXG4ubmF2YmFyLWRlZmF1bHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYmc7XG4gIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJvcmRlcjtcblxuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmRpc2FibGVkID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIG1lbnUgaXRlbXNcbiAgICAvLyBSZW1vdmUgYmFja2dyb3VuZCBjb2xvciBmcm9tIG9wZW4gZHJvcGRvd25cbiAgICA+IC5vcGVuID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5IHdoZW4gY29sbGFwc2VkXG4gICAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGVmYXVsdC10b2dnbGUtYm9yZGVyLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWJnO1xuICAgIH1cbiAgICAuaWNvbi1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLWNvbGxhcHNlLFxuICAubmF2YmFyLWZvcm0ge1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJvcmRlcjtcbiAgfVxuXG5cbiAgLy8gTGlua3MgaW4gbmF2YmFyc1xuICAvL1xuICAvLyBBZGQgYSBjbGFzcyB0byBlbnN1cmUgbGlua3Mgb3V0c2lkZSB0aGUgbmF2YmFyIG5hdiBhcmUgY29sb3JlZCBjb3JyZWN0bHkuXG5cbiAgLm5hdmJhci1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gICAgJltkaXNhYmxlZF0sXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEludmVyc2UgbmF2YmFyXG5cbi5uYXZiYXItaW52ZXJzZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1iZztcbiAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuXG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd25zXG4gICAgPiAub3BlbiA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheVxuICAgICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICA+IC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcbiAgICAgICAgfVxuICAgICAgICAuZGl2aWRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcbiAgICAgICAgfVxuICAgICAgICA+IGxpID4gYSB7XG4gICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAgICAgJixcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBEYXJrZW4gdGhlIHJlc3BvbnNpdmUgbmF2IHRvZ2dsZVxuICAubmF2YmFyLXRvZ2dsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ob3Zlci1iZztcbiAgICB9XG4gICAgLmljb24tYmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1jb2xsYXBzZSxcbiAgLm5hdmJhci1mb3JtIHtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDclKTtcbiAgfVxuXG4gIC5uYXZiYXItbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICAgICZbZGlzYWJsZWRdLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5icmVhZGNydW1iIHtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbCAkYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgKyBsaTpiZWZvcmUge1xuICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItY29sb3I7XG4gICAgICAvLyBbY29udmVydGVyXSBXb3JrYXJvdW5kIGZvciBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9saWJzYXNzL2lzc3Vlcy8xMTE1XG4gICAgICAkbmJzcDogXCJcXDAwYTBcIjtcbiAgICAgIGNvbnRlbnQ6IFwiI3skYnJlYWRjcnVtYi1zZXBhcmF0b3J9I3skbmJzcH1cIjsgLy8gVW5pY29kZSBzcGFjZSBhZGRlZCBzaW5jZSBpbmxpbmUtYmxvY2sgbWVhbnMgbm9uLWNvbGxhcHNpbmcgd2hpdGUtc3BhY2VcbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi8vXG4vLyBQYWdpbmF0aW9uIChtdWx0aXBsZSBwYWdlcylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTsgLy8gUmVtb3ZlIGxpc3Qtc3R5bGUgYW5kIGJsb2NrLWxldmVsIGRlZmF1bHRzXG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gQ29sbGFwc2Ugd2hpdGUtc3BhY2VcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuICAgICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUgPiBhLFxuICA+IC5hY3RpdmUgPiBzcGFuIHtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjtcbiAgICB9XG4gIH1cblxuICA+IC5kaXNhYmxlZCB7XG4gICAgPiBzcGFuLFxuICAgID4gc3Bhbjpob3ZlcixcbiAgICA+IHNwYW46Zm9jdXMsXG4gICAgPiBhLFxuICAgID4gYTpob3ZlcixcbiAgICA+IGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBMYXJnZVxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGJvcmRlci1yYWRpdXMtbGFyZ2UpO1xufVxuXG4vLyBTbWFsbFxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJvcmRlci1yYWRpdXMtc21hbGwpO1xufVxuIiwiLy9cbi8vIFBhZ2VyIHBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLnBhZ2VyIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogNXB4IDE0cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItYmc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcGFnZXItYm9yZGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogJHBhZ2VyLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgPiBhOmhvdmVyLFxuICAgID4gYTpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5leHQge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5wcmV2aW91cyB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cblxuICAuZGlzYWJsZWQge1xuICAgID4gYSxcbiAgICA+IGE6aG92ZXIsXG4gICAgPiBhOmZvY3VzLFxuICAgID4gc3BhbiB7XG4gICAgICBjb2xvcjogJHBhZ2VyLWRpc2FibGVkLWNvbG9yO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2VyLWJnO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIExhYmVsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBwYWRkaW5nOiAuMmVtIC42ZW0gLjNlbTtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGxhYmVsLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYm9yZGVyLXJhZGl1czogLjI1ZW07XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEubGFiZWxcblxuICAvLyBFbXB0eSBsYWJlbHMgY29sbGFwc2UgYXV0b21hdGljYWxseSAobm90IGF2YWlsYWJsZSBpbiBJRTgpXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBRdWljayBmaXggZm9yIGxhYmVscyBpbiBidXR0b25zXG4gIC5idG4gJiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDtcbiAgfVxufVxuXG4vLyBBZGQgaG92ZXIgZWZmZWN0cywgYnV0IG9ubHkgZm9yIGxpbmtzXG5hLmxhYmVsIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsYWJlbC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLy8gQ29sb3JzXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBsYWJlbHMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpXG5cbi5sYWJlbC1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtZGVmYXVsdC1iZyk7XG59XG5cbi5sYWJlbC1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtcHJpbWFyeS1iZyk7XG59XG5cbi5sYWJlbC1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtc3VjY2Vzcy1iZyk7XG59XG5cbi5sYWJlbC1pbmZvIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtaW5mby1iZyk7XG59XG5cbi5sYWJlbC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtd2FybmluZy1iZyk7XG59XG5cbi5sYWJlbC1kYW5nZXIge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1kYW5nZXItYmcpO1xufVxuIiwiLy9cbi8vIEJhZGdlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMTBweDtcbiAgcGFkZGluZzogM3B4IDdweDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGJhZGdlLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJhZGdlLWJvcmRlci1yYWRpdXM7XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHkgKG5vdCBhdmFpbGFibGUgaW4gSUU4KVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuICAuYnRuICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cblxuICAuYnRuLXhzICYsXG4gIC5idG4tZ3JvdXAteHMgPiAuYnRuICYge1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAxcHggNXB4O1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEuYmFkZ2VcblxuICAvLyBBY2NvdW50IGZvciBiYWRnZXMgaW4gbmF2c1xuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSA+ICYsXG4gIC5uYXYtcGlsbHMgPiAuYWN0aXZlID4gYSA+ICYge1xuICAgIGNvbG9yOiAkYmFkZ2UtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1hY3RpdmUtYmc7XG4gIH1cblxuICAubGlzdC1ncm91cC1pdGVtID4gJiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYgKyAmIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxuXG4gIC5uYXYtcGlsbHMgPiBsaSA+IGEgPiAmIHtcbiAgICBtYXJnaW4tbGVmdDogM3B4O1xuICB9XG59XG5cbi8vIEhvdmVyIHN0YXRlLCBidXQgb25seSBmb3IgbGlua3NcbmEuYmFkZ2Uge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGJhZGdlLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuIiwiLy9cbi8vIEp1bWJvdHJvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uanVtYm90cm9uIHtcbiAgcGFkZGluZy10b3A6ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBjb2xvcjogJGp1bWJvdHJvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGp1bWJvdHJvbi1iZztcblxuICBoMSxcbiAgLmgxIHtcbiAgICBjb2xvcjogJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yO1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogKCRqdW1ib3Ryb24tcGFkZGluZyAvIDIpO1xuICAgIGZvbnQtc2l6ZTogJGp1bWJvdHJvbi1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgfVxuXG4gID4gaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkanVtYm90cm9uLWJnLCAxMCUpO1xuICB9XG5cbiAgLmNvbnRhaW5lciAmLFxuICAuY29udGFpbmVyLWZsdWlkICYge1xuICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgICBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTsgLy8gT25seSByb3VuZCBjb3JuZXJzIGF0IGhpZ2hlciByZXNvbHV0aW9ucyBpZiBjb250YWluZWQgaW4gYSBjb250YWluZXJcbiAgfVxuXG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcGFkZGluZy10b3A6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAxLjYpO1xuICAgIHBhZGRpbmctYm90dG9tOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMS42KTtcblxuICAgIC5jb250YWluZXIgJixcbiAgICAuY29udGFpbmVyLWZsdWlkICYge1xuICAgICAgcGFkZGluZy1yaWdodDogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpO1xuICAgICAgcGFkZGluZy1sZWZ0OiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMik7XG4gICAgfVxuXG4gICAgaDEsXG4gICAgLmgxIHtcbiAgICAgIGZvbnQtc2l6ZTogJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBUaHVtYm5haWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIE1peGluIGFuZCBhZGp1c3QgdGhlIHJlZ3VsYXIgaW1hZ2UgY2xhc3Ncbi50aHVtYm5haWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXIgLjJzIGVhc2UtaW4tb3V0KTtcblxuICA+IGltZyxcbiAgYSA+IGltZyB7XG4gICAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmU7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmOmhvdmVyLCBhJjpmb2N1cywgYSYuYWN0aXZlIHRvIGEudGh1bWJuYWlsOmhvdmVyLCBhLnRodW1ibmFpbDpmb2N1cywgYS50aHVtYm5haWwuYWN0aXZlXG5cbiAgLy8gSW1hZ2UgY2FwdGlvbnNcbiAgLmNhcHRpb24ge1xuICAgIHBhZGRpbmc6ICR0aHVtYm5haWwtY2FwdGlvbi1wYWRkaW5nO1xuICAgIGNvbG9yOiAkdGh1bWJuYWlsLWNhcHRpb24tY29sb3I7XG4gIH1cbn1cblxuLy8gQWRkIGEgaG92ZXIgc3RhdGUgZm9yIGxpbmtlZCB2ZXJzaW9ucyBvbmx5XG5hLnRodW1ibmFpbDpob3ZlcixcbmEudGh1bWJuYWlsOmZvY3VzLFxuYS50aHVtYm5haWwuYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAkbGluay1jb2xvcjtcbn1cbiIsIi8vXG4vLyBBbGVydHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmFsZXJ0IHtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRhbGVydC1ib3JkZXItcmFkaXVzO1xuXG4gIC8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4gIGg0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGNvbG9yOiBpbmhlcml0OyAvLyBTcGVjaWZpZWQgZm9yIHRoZSBoNCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgfVxuXG4gIC8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4gIC5hbGVydC1saW5rIHtcbiAgICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG4gIH1cblxuICAvLyBJbXByb3ZlIGFsaWdubWVudCBhbmQgc3BhY2luZyBvZiBpbm5lciBjb250ZW50XG4gID4gcCxcbiAgPiB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gID4gcCArIHAge1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgfVxufVxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLy8gVGhlIG1pc3NwZWxsZWQgLmFsZXJ0LWRpc21pc3NhYmxlIHdhcyBkZXByZWNhdGVkIGluIDMuMi4wLlxuLmFsZXJ0LWRpc21pc3NhYmxlLFxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogKCRhbGVydC1wYWRkaW5nICsgMjApO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTJweDtcbiAgICByaWdodDogLTIxcHg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtc3VjY2Vzcy1iZywgJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyLCAkYWxlcnQtc3VjY2Vzcy10ZXh0KTtcbn1cblxuLmFsZXJ0LWluZm8ge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1pbmZvLWJnLCAkYWxlcnQtaW5mby1ib3JkZXIsICRhbGVydC1pbmZvLXRleHQpO1xufVxuXG4uYWxlcnQtd2FybmluZyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LXdhcm5pbmctYmcsICRhbGVydC13YXJuaW5nLWJvcmRlciwgJGFsZXJ0LXdhcm5pbmctdGV4dCk7XG59XG5cbi5hbGVydC1kYW5nZXIge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1kYW5nZXItYmcsICRhbGVydC1kYW5nZXItYm9yZGVyLCAkYWxlcnQtZGFuZ2VyLXRleHQpO1xufVxuIiwiLy9cbi8vIFByb2dyZXNzIGJhcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFyIGFuaW1hdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gV2ViS2l0XG5ALXdlYmtpdC1rZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tICB7IGJhY2tncm91bmQtcG9zaXRpb246IDQwcHggMDsgfVxuICB0byAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxufVxuXG4vLyBTcGVjIGFuZCBJRTEwK1xuQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gIGZyb20gIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogNDBweCAwOyB9XG4gIHRvICAgIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG59XG5cblxuLy8gQmFyIGl0c2VsZlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBPdXRlciBjb250YWluZXJcbi5wcm9ncmVzcyB7XG4gIGhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLWJvcmRlci1yYWRpdXM7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgLjEpKTtcbn1cblxuLy8gQmFyIG9mIHByb2dyZXNzXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih3aWR0aCAuNnMgZWFzZSk7XG59XG5cbi8vIFN0cmlwZWQgYmFyc1xuLy9cbi8vIGAucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyYCBpcyBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBpbiBmYXZvciBvZiB0aGVcbi8vIGAucHJvZ3Jlc3MtYmFyLXN0cmlwZWRgIGNsYXNzLCB3aGljaCB5b3UganVzdCBhZGQgdG8gYW4gZXhpc3Rpbmdcbi8vIGAucHJvZ3Jlc3MtYmFyYC5cbi5wcm9ncmVzcy1zdHJpcGVkIC5wcm9ncmVzcy1iYXIsXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xuICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcbn1cblxuLy8gQ2FsbCBhbmltYXRpb24gZm9yIHRoZSBhY3RpdmUgb25lXG4vL1xuLy8gYC5wcm9ncmVzcy5hY3RpdmUgLnByb2dyZXNzLWJhcmAgaXMgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgaW4gZmF2b3Igb2YgdGhlXG4vLyBgLnByb2dyZXNzLWJhci5hY3RpdmVgIGFwcHJvYWNoLlxuLnByb2dyZXNzLmFjdGl2ZSAucHJvZ3Jlc3MtYmFyLFxuLnByb2dyZXNzLWJhci5hY3RpdmUge1xuICBAaW5jbHVkZSBhbmltYXRpb24ocHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlKTtcbn1cblxuXG4vLyBWYXJpYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wcm9ncmVzcy1iYXItc3VjY2VzcyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItaW5mbyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItaW5mby1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItd2FybmluZyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItd2FybmluZy1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItZGFuZ2VyIHtcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJHByb2dyZXNzLWJhci1kYW5nZXItYmcpO1xufVxuIiwiLm1lZGlhIHtcbiAgLy8gUHJvcGVyIHNwYWNpbmcgYmV0d2VlbiBpbnN0YW5jZXMgb2YgLm1lZGlhXG4gIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4ubWVkaWEsXG4ubWVkaWEtYm9keSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHpvb206IDE7XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgd2lkdGg6IDEwMDAwcHg7XG59XG5cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBibG9jaztcblxuICAvLyBGaXggY29sbGFwc2UgaW4gd2Via2l0IGZyb20gbWF4LXdpZHRoOiAxMDAlIGFuZCBkaXNwbGF5OiB0YWJsZS1jZWxsLlxuICAmLmltZy10aHVtYm5haWwge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG4ubWVkaWEtcmlnaHQsXG4ubWVkaWEgPiAucHVsbC1yaWdodCB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuLm1lZGlhLWxlZnQsXG4ubWVkaWEgPiAucHVsbC1sZWZ0IHtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLm1lZGlhLWxlZnQsXG4ubWVkaWEtcmlnaHQsXG4ubWVkaWEtYm9keSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi5tZWRpYS1taWRkbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubWVkaWEtYm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBoZWFkaW5ncyBmb3IgdGlnaHRlciBkZWZhdWx0IHNwYWNpbmdcbi5tZWRpYS1oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4vLyBNZWRpYSBsaXN0IHZhcmlhdGlvblxuLy9cbi8vIFVuZG8gZGVmYXVsdCB1bC9vbCBzdHlsZXNcbi5tZWRpYS1saXN0IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy9cbi8vIExpc3QgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cblxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICAvLyBQbGFjZSB0aGUgYm9yZGVyIG9uIHRoZSBsaXN0IGl0ZW1zIGFuZCBuZWdhdGl2ZSBtYXJnaW4gdXAgZm9yIGJldHRlciBzdHlsaW5nXG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXI7XG5cbiAgLy8gUm91bmQgdGhlIGZpcnN0IGFuZCBsYXN0IGl0ZW1zXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICYuZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQ6aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG5cbiAgICAvLyBGb3JjZSBjb2xvciB0byBpbmhlcml0IGZvciBjdXN0b20gY29udGVudFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFjdGl2ZSBjbGFzcyBvbiBpdGVtIGl0c2VsZiwgbm90IHBhcmVudFxuICAmLmFjdGl2ZSxcbiAgJi5hY3RpdmU6aG92ZXIsXG4gICYuYWN0aXZlOmZvY3VzIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjtcblxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IHNtYWxsLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IC5zbWFsbCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlIGl0ZW1zLlxuLy8gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzaG93aW5nIHNlbGVjdGVkIGl0ZW1zLlxuXG5hLmxpc3QtZ3JvdXAtaXRlbSxcbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1jb2xvcjtcblxuICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XG4gIH1cbn1cblxuYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoc3VjY2VzcywgJHN0YXRlLXN1Y2Nlc3MtYmcsICRzdGF0ZS1zdWNjZXNzLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoaW5mbywgJHN0YXRlLWluZm8tYmcsICRzdGF0ZS1pbmZvLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQod2FybmluZywgJHN0YXRlLXdhcm5pbmctYmcsICRzdGF0ZS13YXJuaW5nLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoZGFuZ2VyLCAkc3RhdGUtZGFuZ2VyLWJnLCAkc3RhdGUtZGFuZ2VyLXRleHQpO1xuXG5cbi8vIEN1c3RvbSBjb250ZW50IG9wdGlvbnNcbi8vXG4vLyBFeHRyYSBjbGFzc2VzIGZvciBjcmVhdGluZyB3ZWxsLWZvcm1hdHRlZCBjb250ZW50IHdpdGhpbiBgLmxpc3QtZ3JvdXAtaXRlbWBzLlxuXG4ubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4ubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuIiwiLy9cbi8vIFBhbmVsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4ucGFuZWwge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRwYW5lbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNSkpO1xufVxuXG4vLyBQYW5lbCBjb250ZW50c1xuLnBhbmVsLWJvZHkge1xuICBwYWRkaW5nOiAkcGFuZWwtYm9keS1wYWRkaW5nO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gT3B0aW9uYWwgaGVhZGluZ1xuLnBhbmVsLWhlYWRpbmcge1xuICBwYWRkaW5nOiAkcGFuZWwtaGVhZGluZy1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcblxuICA+IC5kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBXaXRoaW4gaGVhZGluZywgc3RyaXAgYW55IGBoKmAgdGFnIG9mIGl0cyBkZWZhdWx0IG1hcmdpbnMgZm9yIHNwYWNpbmcuXG4ucGFuZWwtdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMTI1KSk7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gID4gYSxcbiAgPiBzbWFsbCxcbiAgPiAuc21hbGwsXG4gID4gc21hbGwgPiBhLFxuICA+IC5zbWFsbCA+IGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIE9wdGlvbmFsIGZvb3RlciAoc3RheXMgZ3JheSBpbiBldmVyeSBtb2RpZmllciBjbGFzcylcbi5wYW5lbC1mb290ZXIge1xuICBwYWRkaW5nOiAkcGFuZWwtZm9vdGVyLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1mb290ZXItYmc7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG59XG5cblxuLy8gTGlzdCBncm91cHMgaW4gcGFuZWxzXG4vL1xuLy8gQnkgZGVmYXVsdCwgc3BhY2Ugb3V0IGxpc3QgZ3JvdXAgY29udGVudCBmcm9tIHBhbmVsIGhlYWRpbmdzIHRvIGFjY291bnQgZm9yXG4vLyBhbnkga2luZCBvZiBjdXN0b20gY29udGVudCBiZXR3ZWVuIHRoZSB0d28uXG5cbi5wYW5lbCB7XG4gID4gLmxpc3QtZ3JvdXAsXG4gID4gLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC5wYW5lbC1oZWFkaW5nICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG59XG4vLyBDb2xsYXBzZSBzcGFjZSBiZXR3ZWVuIHdoZW4gdGhlcmUncyBubyBhZGRpdGlvbmFsIGNvbnRlbnQuXG4ucGFuZWwtaGVhZGluZyArIC5saXN0LWdyb3VwIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxufVxuLmxpc3QtZ3JvdXAgKyAucGFuZWwtZm9vdGVyIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbn1cblxuLy8gVGFibGVzIGluIHBhbmVsc1xuLy9cbi8vIFBsYWNlIGEgbm9uLWJvcmRlcmVkIGAudGFibGVgIHdpdGhpbiBhIHBhbmVsIChub3Qgd2l0aGluIGEgYC5wYW5lbC1ib2R5YCkgYW5kXG4vLyB3YXRjaCBpdCBnbyBmdWxsIHdpZHRoLlxuXG4ucGFuZWwge1xuICA+IC50YWJsZSxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSxcbiAgPiAucGFuZWwtY29sbGFwc2UgPiAudGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBjYXB0aW9uIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYW5lbC1ib2R5LXBhZGRpbmc7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRwYW5lbC1ib2R5LXBhZGRpbmc7XG4gICAgfVxuICB9XG4gIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXG4gID4gLnRhYmxlOmZpcnN0LWNoaWxkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG5cbiAgICA+IHRoZWFkOmZpcnN0LWNoaWxkLFxuICAgID4gdGJvZHk6Zmlyc3QtY2hpbGQge1xuICAgICAgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG5cbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgICB0ZDpsYXN0LWNoaWxkLFxuICAgICAgICB0aDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gQWRkIGJvcmRlciBib3R0b20gcmFkaXVzIGZvciBsYXN0IG9uZVxuICA+IC50YWJsZTpsYXN0LWNoaWxkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuXG4gICAgPiB0Ym9keTpsYXN0LWNoaWxkLFxuICAgID4gdGZvb3Q6bGFzdC1jaGlsZCB7XG4gICAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuXG4gICAgICAgIHRkOmZpcnN0LWNoaWxkLFxuICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgICAgdGQ6bGFzdC1jaGlsZCxcbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUsXG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUtcmVzcG9uc2l2ZSxcbiAgPiAudGFibGUgKyAucGFuZWwtYm9keSxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSArIC5wYW5lbC1ib2R5IHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuICA+IC50YWJsZSA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGgsXG4gID4gLnRhYmxlID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuICA+IC50YWJsZS1ib3JkZXJlZCxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgID4gdGhlYWQsXG4gICAgPiB0Ym9keSxcbiAgICA+IHRmb290IHtcbiAgICAgID4gdHIge1xuICAgICAgICA+IHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gdGhlYWQsXG4gICAgPiB0Ym9keSB7XG4gICAgICA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICA+IHRib2R5LFxuICAgID4gdGZvb3Qge1xuICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5cbi8vIENvbGxhcHNpYmxlIHBhbmVscyAoYWthLCBhY2NvcmRpb24pXG4vL1xuLy8gV3JhcCBhIHNlcmllcyBvZiBwYW5lbHMgaW4gYC5wYW5lbC1ncm91cGAgdG8gdHVybiB0aGVtIGludG8gYW4gYWNjb3JkaW9uIHdpdGhcbi8vIHRoZSBoZWxwIG9mIG91ciBjb2xsYXBzZSBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLnBhbmVsLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuXG4gIC8vIFRpZ2h0ZW4gdXAgbWFyZ2luIHNvIGl0J3Mgb25seSBiZXR3ZWVuIHBhbmVsc1xuICAucGFuZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJHBhbmVsLWJvcmRlci1yYWRpdXM7XG5cbiAgICArIC5wYW5lbCB7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgfVxuICB9XG5cbiAgLnBhbmVsLWhlYWRpbmcge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG5cbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5LFxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLnBhbmVsLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnNcbi5wYW5lbC1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtZGVmYXVsdC1ib3JkZXIsICRwYW5lbC1kZWZhdWx0LXRleHQsICRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmcsICRwYW5lbC1kZWZhdWx0LWJvcmRlcik7XG59XG4ucGFuZWwtcHJpbWFyeSB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXByaW1hcnktYm9yZGVyLCAkcGFuZWwtcHJpbWFyeS10ZXh0LCAkcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnLCAkcGFuZWwtcHJpbWFyeS1ib3JkZXIpO1xufVxuLnBhbmVsLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1zdWNjZXNzLWJvcmRlciwgJHBhbmVsLXN1Y2Nlc3MtdGV4dCwgJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZywgJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cbi5wYW5lbC1pbmZvIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtaW5mby1ib3JkZXIsICRwYW5lbC1pbmZvLXRleHQsICRwYW5lbC1pbmZvLWhlYWRpbmctYmcsICRwYW5lbC1pbmZvLWJvcmRlcik7XG59XG4ucGFuZWwtd2FybmluZyB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXdhcm5pbmctYm9yZGVyLCAkcGFuZWwtd2FybmluZy10ZXh0LCAkcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnLCAkcGFuZWwtd2FybmluZy1ib3JkZXIpO1xufVxuLnBhbmVsLWRhbmdlciB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLWRhbmdlci1ib3JkZXIsICRwYW5lbC1kYW5nZXItdGV4dCwgJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnLCAkcGFuZWwtZGFuZ2VyLWJvcmRlcik7XG59XG4iLCIvLyBFbWJlZHMgcmVzcG9uc2l2ZVxuLy9cbi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8gTW9kaWZpZXIgY2xhc3MgZm9yIDE2OjkgYXNwZWN0IHJhdGlvXG4uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OSB7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi8vIE1vZGlmaWVyIGNsYXNzIGZvciA0OjMgYXNwZWN0IHJhdGlvXG4uZW1iZWQtcmVzcG9uc2l2ZS00YnkzIHtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbn1cbiIsIi8vXG4vLyBXZWxsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4ud2VsbCB7XG4gIG1pbi1oZWlnaHQ6IDIwcHg7XG4gIHBhZGRpbmc6IDE5cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3ZWxsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkd2VsbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA1KSk7XG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlci1jb2xvcjogI2RkZDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgLjE1KTtcbiAgfVxufVxuXG4vLyBTaXplc1xuLndlbGwtbGcge1xuICBwYWRkaW5nOiAyNHB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbn1cbi53ZWxsLXNtIHtcbiAgcGFkZGluZzogOXB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcbn1cbiIsIi8vXG4vLyBDbG9zZSBpY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xuICBAaW5jbHVkZSBvcGFjaXR5KC4yKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQGluY2x1ZGUgb3BhY2l0eSguNSk7XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYnV0dG9uJiB0byBidXR0b24uY2xvc2Vcbn1cblxuLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG4iLCIvL1xuLy8gTW9kYWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc2hpdFxuXG4vLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gICYuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgLTI1JSk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10cmFuc2Zvcm0oMC4zcyBlYXNlLW91dCk7XG4gIH1cbiAgJi5pbiAubW9kYWwtZGlhbG9nIHsgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIDApIH1cbn1cbi5tb2RhbC1vcGVuIC5tb2RhbCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAxMHB4O1xufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOyAvL29sZCBicm93c2VycyBmYWxsYmFjayAoaWU4IGV0YylcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDNweCA5cHggcmdiYSgwLCAwLCAwLCAuNSkpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IEBpbmNsdWRlIG9wYWNpdHkoMCk7IH1cbiAgJi5pbiB7IEBpbmNsdWRlIG9wYWNpdHkoJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkpOyB9XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLXRpdGxlLXBhZGRpbmc7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG4vLyBDbG9zZSBpY29uXG4ubW9kYWwtaGVhZGVyIC5jbG9zZSB7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyAvLyByaWdodCBhbGlnbiBidXR0b25zXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7IC8vIGNsZWFyIGl0IGluIGNhc2UgZm9sa3MgdXNlIC5wdWxsLSogY2xhc3NlcyBvbiBidXR0b25zXG5cbiAgLy8gUHJvcGVybHkgc3BhY2Ugb3V0IGJ1dHRvbnNcbiAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIGFjY291bnQgZm9yIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0gd2hpY2ggZ2V0cyB0aGUgYm90dG9tIG1hcmdpbiBsaWtlIGFsbCBvdGhlciBpbnB1dHNcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG4gIC8vIGJ1dCBvdmVycmlkZSB0aGF0IGZvciBidXR0b24gZ3JvdXBzXG4gIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG4gIC8vIGFuZCBvdmVycmlkZSBpdCBmb3IgYmxvY2sgYnV0dG9ucyBhcyB3ZWxsXG4gIC5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIHdpZHRoOiAkbW9kYWwtbWQ7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG87XG4gIH1cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCA1cHggMTVweCByZ2JhKDAsIDAsIDAsIC41KSk7XG4gIH1cblxuICAvLyBNb2RhbCBzaXplc1xuICAubW9kYWwtc20geyB3aWR0aDogJG1vZGFsLXNtOyB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAubW9kYWwtbGcgeyB3aWR0aDogJG1vZGFsLWxnOyB9XG59XG4iLCIvL1xuLy8gVG9vbHRpcHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuXG4gIEBpbmNsdWRlIG9wYWNpdHkoMCk7XG5cbiAgJi5pbiB7IEBpbmNsdWRlIG9wYWNpdHkoJHRvb2x0aXAtb3BhY2l0eSk7IH1cbiAgJi50b3Age1xuICAgIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuICAmLnJpZ2h0IHtcbiAgICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gIH1cbiAgJi5ib3R0b20ge1xuICAgIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgbWFyZ2luLXRvcDogM3B4O1xuICB9XG4gICYubGVmdCB7XG4gICAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogLTNweDtcbiAgfVxuXG4gIC8vIE5vdGU6IERlcHJlY2F0ZWQgLnRvcC1sZWZ0LCAudG9wLXJpZ2h0LCAuYm90dG9tLWxlZnQsIGFuZCAuYm90dG9tLXJpZ2h0IGFzIG9mIHYzLjMuMVxuICAmLnRvcCAudG9vbHRpcC1hcnJvdyB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLnRvcC1sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICByaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi50b3AtcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tYm90dG9tOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYucmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYubGVmdCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5ib3R0b20gLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi5ib3R0b20tbGVmdCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYuYm90dG9tLXJpZ2h0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAzcHggOHB4O1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG59XG5cbi8vIEFycm93c1xuLnRvb2x0aXAtYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG4iLCIvL1xuLy8gUG9wb3ZlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgcGFkZGluZzogMXB4O1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSBwb3BvdmVycyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQ7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yO1xuICBib3JkZXI6IDFweCBzb2xpZCAkcG9wb3Zlci1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAuMikpO1xuXG4gIC8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuICAmLnRvcCB7IG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxuICAmLnJpZ2h0IHsgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LXdpZHRoOyB9XG4gICYuYm90dG9tIHsgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cbiAgJi5sZWZ0IHsgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxuXG4gIC8vIEFycm93c1xuICAvLyAuYXJyb3cgaXMgb3V0ZXIsIC5hcnJvdzphZnRlciBpcyBpbm5lclxuICA+IC5hcnJvdyB7XG4gICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcblxuICAgICYsXG4gICAgJjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICB9XG4gIH1cblxuICAmLnRvcCA+IC5hcnJvdyB7XG4gICAgYm90dG9tOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgJjphZnRlciB7XG4gICAgICBib3R0b206IDFweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbiAgJi5yaWdodCA+IC5hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgICY6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICBsZWZ0OiAxcHg7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICB9XG4gIH1cbiAgJi5ib3R0b20gPiAuYXJyb3cge1xuICAgIHRvcDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I7IC8vIElFOCBmYWxsYmFja1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgICY6YWZ0ZXIge1xuICAgICAgdG9wOiAxcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG5cbiAgJi5sZWZ0ID4gLmFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgJjphZnRlciB7XG4gICAgICByaWdodDogMXB4O1xuICAgICAgYm90dG9tOiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLnBvcG92ZXItdGl0bGUge1xuICBwYWRkaW5nOiA4cHggMTRweDtcbiAgbWFyZ2luOiAwOyAvLyByZXNldCBoZWFkaW5nIG1hcmdpblxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItdGl0bGUtYmc7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBkYXJrZW4oJHBvcG92ZXItdGl0bGUtYmcsIDUlKTtcbiAgYm9yZGVyLXJhZGl1czogKCRib3JkZXItcmFkaXVzLWxhcmdlIC0gMSkgKCRib3JkZXItcmFkaXVzLWxhcmdlIC0gMSkgMCAwO1xufVxuXG4ucG9wb3Zlci1jb250ZW50IHtcbiAgcGFkZGluZzogOXB4IDE0cHg7XG59XG4iLCIvL1xuLy8gQ2Fyb3VzZWxcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gV3JhcHBlciBmb3IgdGhlIHNsaWRlIGNvbnRhaW5lciBhbmQgaW5kaWNhdG9yc1xuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gID4gLml0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oLjZzIGVhc2UtaW4tb3V0IGxlZnQpO1xuXG4gICAgLy8gQWNjb3VudCBmb3IgamFua2l0dWRlIG9uIGltYWdlc1xuICAgID4gaW1nLFxuICAgID4gYSA+IGltZyB7XG4gICAgICBAaW5jbHVkZSBpbWctcmVzcG9uc2l2ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgIC8vIFdlYktpdCBDU1MzIHRyYW5zZm9ybXMgZm9yIHN1cHBvcnRlZCBkZXZpY2VzXG4gICAgQG1lZGlhIGFsbCBhbmQgKHRyYW5zZm9ybS0zZCksICgtd2Via2l0LXRyYW5zZm9ybS0zZCkge1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10cmFuc2Zvcm0oMC42cyBlYXNlLWluLW91dCk7XG4gICAgICBAaW5jbHVkZSBiYWNrZmFjZS12aXNpYmlsaXR5KGhpZGRlbik7XG4gICAgICBAaW5jbHVkZSBwZXJzcGVjdGl2ZSgxMDAwcHgpO1xuXG4gICAgICAmLm5leHQsXG4gICAgICAmLmFjdGl2ZS5yaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgICAgJi5wcmV2LFxuICAgICAgJi5hY3RpdmUubGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICAgICYubmV4dC5sZWZ0LFxuICAgICAgJi5wcmV2LnJpZ2h0LFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUsXG4gID4gLm5leHQsXG4gID4gLnByZXYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgPiAuYWN0aXZlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgPiAubmV4dCxcbiAgPiAucHJldiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLm5leHQge1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbiAgPiAucHJldiB7XG4gICAgbGVmdDogLTEwMCU7XG4gIH1cbiAgPiAubmV4dC5sZWZ0LFxuICA+IC5wcmV2LnJpZ2h0IHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgPiAuYWN0aXZlLmxlZnQge1xuICAgIGxlZnQ6IC0xMDAlO1xuICB9XG4gID4gLmFjdGl2ZS5yaWdodCB7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuXG59XG5cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jYXJvdXNlbC1jb250cm9sIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBmb250LXNpemU6ICRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtc2hhZG93OiAkY2Fyb3VzZWwtdGV4dC1zaGFkb3c7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7IC8vIEZpeCBJRTkgY2xpY2stdGhydSBidWdcbiAgQGluY2x1ZGUgb3BhY2l0eSgkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5KTtcbiAgLy8gV2UgY2FuJ3QgaGF2ZSB0aGlzIHRyYW5zaXRpb24gaGVyZSBiZWNhdXNlIFdlYktpdCBjYW5jZWxzIHRoZSBjYXJvdXNlbFxuICAvLyBhbmltYXRpb24gaWYgeW91IHRyaXAgdGhpcyB3aGlsZSBpbiB0aGUgbWlkZGxlIG9mIGFub3RoZXIgYW5pbWF0aW9uLlxuXG4gIC8vIFNldCBncmFkaWVudHMgZm9yIGJhY2tncm91bmRzXG4gICYubGVmdCB7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjUpLCAkZW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4wMDAxKSk7XG4gIH1cbiAgJi5yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgICBAaW5jbHVkZSBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMDAwMSksICRlbmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjUpKTtcbiAgfVxuXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC45KTtcbiAgfVxuXG4gIC8vIFRvZ2dsZXNcbiAgLmljb24tcHJldixcbiAgLmljb24tbmV4dCxcbiAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICB9XG4gIC5pY29uLXByZXYsXG4gIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0IHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICB9XG4gIC5pY29uLW5leHQsXG4gIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCB7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICB9XG4gIC5pY29uLXByZXYsXG4gIC5pY29uLW5leHQge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBmb250LWZhbWlseTogc2VyaWY7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAuaWNvbi1wcmV2IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcMjAzOVwiOy8vIFNJTkdMRSBMRUZULVBPSU5USU5HIEFOR0xFIFFVT1RBVElPTiBNQVJLIChVKzIwMzkpXG4gICAgfVxuICB9XG4gIC5pY29uLW5leHQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFwyMDNhXCI7Ly8gU0lOR0xFIFJJR0hULVBPSU5USU5HIEFOR0xFIFFVT1RBVElPTiBNQVJLIChVKzIwM0EpXG4gICAgfVxuICB9XG59XG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIHVub3JkZXJlZCBsaXN0IHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGEgbGlzdCBpdGVtIGZvciBlYWNoXG4vLyBzbGlkZSB5b3VyIGNhcm91c2VsIGhvbGRzLlxuXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiA1MCU7XG4gIHotaW5kZXg6IDE1O1xuICB3aWR0aDogNjAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAtMzAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luOiAxcHg7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLy8gSUU4LTkgaGFjayBmb3IgZXZlbnQgaGFuZGxpbmdcbiAgICAvL1xuICAgIC8vIEludGVybmV0IEV4cGxvcmVyIDgtOSBkb2VzIG5vdCBzdXBwb3J0IGNsaWNrcyBvbiBlbGVtZW50cyB3aXRob3V0IGEgc2V0XG4gICAgLy8gYGJhY2tncm91bmQtY29sb3JgLiBXZSBjYW5ub3QgdXNlIGBmaWx0ZXJgIHNpbmNlIHRoYXQncyBub3Qgdmlld2VkIGFzIGFcbiAgICAvLyBiYWNrZ3JvdW5kIGNvbG9yIGJ5IHRoZSBicm93c2VyLiBUaHVzLCBhIGhhY2sgaXMgbmVlZGVkLlxuICAgIC8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjSW50ZXJuZXRfRXhwbG9yZXJcbiAgICAvL1xuICAgIC8vIEZvciBJRTgsIHdlIHNldCBzb2xpZCBibGFjayBhcyBpdCBkb2Vzbid0IHN1cHBvcnQgYHJnYmEoKWAuIEZvciBJRTksIHdlXG4gICAgLy8gc2V0IGFscGhhIHRyYW5zcGFyZW5jeSBmb3IgdGhlIGJlc3QgcmVzdWx0cyBwb3NzaWJsZS5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwIFxcOTsgLy8gSUU4XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsgLy8gSUU5XG5cbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgfVxufVxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhpZGRlbiBieSBkZWZhdWx0IGZvciBzbWFsbGVyIHZpZXdwb3J0c1xuLmNhcm91c2VsLWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxNSU7XG4gIGJvdHRvbTogMjBweDtcbiAgbGVmdDogMTUlO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1zaGFkb3c6ICRjYXJvdXNlbC10ZXh0LXNoYWRvdztcblxuICAmIC5idG4ge1xuICAgIHRleHQtc2hhZG93OiBub25lOyAvLyBObyBzaGFkb3cgZm9yIGJ1dHRvbiBlbGVtZW50cyBpbiBjYXJvdXNlbC1jYXB0aW9uXG4gIH1cbn1cblxuXG4vLyBTY2FsZSB1cCBjb250cm9scyBmb3IgdGFibGV0cyBhbmQgdXBcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG5cbiAgLy8gU2NhbGUgdXAgdGhlIGNvbnRyb2xzIGEgc21pZGdlXG4gIC5jYXJvdXNlbC1jb250cm9sIHtcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsXG4gICAgLmljb24tcHJldixcbiAgICAuaWNvbi1uZXh0IHtcbiAgICAgIHdpZHRoOiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplICogMS41KTtcbiAgICAgIGhlaWdodDogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAqIDEuNSk7XG4gICAgICBtYXJnaW4tdG9wOiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplIC8gLTIpO1xuICAgICAgZm9udC1zaXplOiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplICogMS41KTtcbiAgICB9XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gICAgLmljb24tcHJldiB7XG4gICAgICBtYXJnaW4tbGVmdDogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAvIC0yKTtcbiAgICB9XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxuICAgIC5pY29uLW5leHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplIC8gLTIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNob3cgYW5kIGxlZnQgYWxpZ24gdGhlIGNhcHRpb25zXG4gIC5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgICByaWdodDogMjAlO1xuICAgIGxlZnQ6IDIwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIC8vIE1vdmUgdXAgdGhlIGluZGljYXRvcnNcbiAgLmNhcm91c2VsLWluZGljYXRvcnMge1xuICAgIGJvdHRvbTogMjBweDtcbiAgfVxufVxuIiwiLy9cbi8vIFV0aWxpdHkgY2xhc3Nlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBGbG9hdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmNsZWFyZml4IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG4uY2VudGVyLWJsb2NrIHtcbiAgQGluY2x1ZGUgY2VudGVyLWJsb2NrO1xufVxuLnB1bGwtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cbi5wdWxsLWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIFRvZ2dsaW5nIGNvbnRlbnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTm90ZTogRGVwcmVjYXRlZCAuaGlkZSBpbiBmYXZvciBvZiAuaGlkZGVuIG9yIC5zci1vbmx5IChhcyBhcHByb3ByaWF0ZSkgaW4gdjMuMC4xXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5zaG93IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlO1xufVxuXG5cbi8vIEhpZGUgZnJvbSBzY3JlZW5yZWFkZXJzIGFuZCBicm93c2Vyc1xuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG4vLyBGb3IgQWZmaXggcGx1Z2luXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5hZmZpeCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cbiIsIi8vXG4vLyBSZXNwb25zaXZlOiBVdGlsaXR5IGNsYXNzZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSUUxMCBpbiBXaW5kb3dzIChQaG9uZSkgOFxuLy9cbi8vIFN1cHBvcnQgZm9yIHJlc3BvbnNpdmUgdmlld3MgdmlhIG1lZGlhIHF1ZXJpZXMgaXMga2luZCBvZiBib3JrZWQgaW4gSUUxMCwgZm9yXG4vLyBTdXJmYWNlL2Rlc2t0b3AgaW4gc3BsaXQgdmlldyBhbmQgZm9yIFdpbmRvd3MgUGhvbmUgOC4gVGhpcyBwYXJ0aWN1bGFyIGZpeFxuLy8gbXVzdCBiZSBhY2NvbXBhbmllZCBieSBhIHNuaXBwZXQgb2YgSmF2YVNjcmlwdCB0byBzbmlmZiB0aGUgdXNlciBhZ2VudCBhbmRcbi8vIGFwcGx5IHNvbWUgY29uZGl0aW9uYWwgQ1NTIHRvICpvbmx5KiB0aGUgU3VyZmFjZS9kZXNrdG9wIFdpbmRvd3MgOC4gTG9vayBhdFxuLy8gb3VyIEdldHRpbmcgU3RhcnRlZCBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIHRoaXMgYnVnLlxuLy9cbi8vIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIGZvbGxvd2luZzpcbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDQ5N1xuLy8gRG9jczogaHR0cHM6Ly9nZXRib290c3RyYXAuY29tL2RvY3MvMy40L2dldHRpbmctc3RhcnRlZC8jc3VwcG9ydC1pZTEwLXdpZHRoXG4vLyBTb3VyY2U6IGh0dHBzOi8vdGlta2FkbGVjLmNvbS8yMDEzLzAxL3dpbmRvd3MtcGhvbmUtOC1hbmQtZGV2aWNlLXdpZHRoL1xuLy8gU291cmNlOiBodHRwczovL3RpbWthZGxlYy5jb20vMjAxMi8xMC9pZTEwLXNuYXAtbW9kZS1hbmQtcmVzcG9uc2l2ZS1kZXNpZ24vXG5cbkBhdC1yb290IHtcbiAgQC1tcy12aWV3cG9ydCB7XG4gICAgd2lkdGg6IGRldmljZS13aWR0aDtcbiAgfVxufVxuXG5cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXhzLCAudmlzaWJsZS1zbSwgLnZpc2libGUtbWQsIGFuZCAudmlzaWJsZS1sZyBhcyBvZiB2My4yLjBcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtc20nKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLWxnJyk7XG5cbi52aXNpYmxlLXhzLWJsb2NrLFxuLnZpc2libGUteHMtaW5saW5lLFxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtc20tYmxvY2ssXG4udmlzaWJsZS1zbS1pbmxpbmUsXG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1tZC1ibG9jayxcbi52aXNpYmxlLW1kLWlubGluZSxcbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayxcbi52aXNpYmxlLWxnLWJsb2NrLFxuLnZpc2libGUtbGctaW5saW5lLFxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS14cycpO1xufVxuLnZpc2libGUteHMtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUteHMtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xufVxuLnZpc2libGUtc20tYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1tZCcpO1xufVxuLnZpc2libGUtbWQtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLW1kLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcbn1cbi52aXNpYmxlLWxnLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi14cycpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1zbScpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1tZCcpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tbGcnKTtcbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbi8vXG4vLyBNZWRpYSBxdWVyaWVzIGFyZSBwbGFjZWQgb24gdGhlIGluc2lkZSB0byBiZSBtaXhpbi1mcmllbmRseS5cblxuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS1wcmludCBhcyBvZiB2My4yLjBcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXByaW50Jyk7XG5cbkBtZWRpYSBwcmludCB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcbn1cbi52aXNpYmxlLXByaW50LWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXByaW50Jyk7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vIE1peGluc1xuLy8gQGltcG9ydCBcImNvbXBvbmVudHMvcHJlZml4ZXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL21peGluc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvY29sb3JcIjtcblxuLy8gVmFyaWFibGVzO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdmFyaWFibGVzXCI7XG5cbi8vIFJlc2V0XG5AaW1wb3J0IFwiY29tcG9uZW50cy9ub3JtYWxpemVcIjtcblxuLy8gY29tcG9uZW50c1xuQGltcG9ydCBcImNvbXBvbmVudHMvZ2xvYmFsXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9iYWRnZXNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2ljb25zLW1hdGVyaWFsLWRlc2lnblwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZ3JpZFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbmF2YmFyXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9yb2JvdG9cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3R5cG9ncmFwaHlcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3RyYW5zaXRpb25zXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9jYXJkc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdG9hc3RcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3RhYnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3Rvb2x0aXBcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Ryb3Bkb3duXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy93YXZlc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbW9kYWxcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2NvbGxhcHNpYmxlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9jaGlwc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbWF0ZXJpYWxib3hcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Zvcm1zL2Zvcm1zXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy90YWJsZV9vZl9jb250ZW50c1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvc2lkZU5hdlwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcHJlbG9hZGVyXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9zbGlkZXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Nhcm91c2VsXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy90YXBUYXJnZXRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3B1bHNlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9kYXRlX3BpY2tlci9kZWZhdWx0XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9kYXRlX3BpY2tlci9kZWZhdWx0LmRhdGVcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2RhdGVfcGlja2VyL2RlZmF1bHQudGltZVwiO1xuIiwiLy8gQG1peGluIGJveC1zaGFkb3ctMigkYXJnczEsICRhcmdzMikge1xuLy8gICAgIC13ZWJraXQtYm94LXNoYWRvdzogJGFyZ3MxLCAkYXJnczI7XG4vLyAgICAgLW1vei1ib3gtc2hhZG93OiAkYXJnczEsICRhcmdzMjtcbi8vICAgICBib3gtc2hhZG93OiAkYXJnczEsICRhcmdzMjtcbi8vIH0iLCIvLyBVdGlsaXR5IENvbG9yIENsYXNzZXNcblxuLy8uc3VjY2VzcyB7XG4vL1xuLy99XG5cbi8vIEdvb2dsZSBDb2xvciBQYWxldHRlIGRlZmluZWQ6IGh0dHA6Ly93d3cuZ29vZ2xlLmNvbS9kZXNpZ24vc3BlYy9zdHlsZS9jb2xvci5odG1sXG5cblxuJG1hdGVyaWFsaXplLXJlZDogKFxuICBcImJhc2VcIjogICAgICAgI2U1MWMyMyxcbiAgXCJsaWdodGVuLTVcIjogICNmZGVhZWIsXG4gIFwibGlnaHRlbi00XCI6ICAjZjhjMWMzLFxuICBcImxpZ2h0ZW4tM1wiOiAgI2YzOTg5YixcbiAgXCJsaWdodGVuLTJcIjogICNlZTZlNzMsXG4gIFwibGlnaHRlbi0xXCI6ICAjZWE0NTRiLFxuICBcImRhcmtlbi0xXCI6ICAgI2QwMTgxZSxcbiAgXCJkYXJrZW4tMlwiOiAgICNiOTE1MWIsXG4gIFwiZGFya2VuLTNcIjogICAjYTIxMzE4LFxuICBcImRhcmtlbi00XCI6ICAgIzhiMTAxNCxcbik7XG5cbiRyZWQ6IChcbiAgXCJiYXNlXCI6ICAgICAgICNGNDQzMzYsXG4gIFwibGlnaHRlbi01XCI6ICAjRkZFQkVFLFxuICBcImxpZ2h0ZW4tNFwiOiAgI0ZGQ0REMixcbiAgXCJsaWdodGVuLTNcIjogICNFRjlBOUEsXG4gIFwibGlnaHRlbi0yXCI6ICAjRTU3MzczLFxuICBcImxpZ2h0ZW4tMVwiOiAgI0VGNTM1MCxcbiAgXCJkYXJrZW4tMVwiOiAgICNFNTM5MzUsXG4gIFwiZGFya2VuLTJcIjogICAjRDMyRjJGLFxuICBcImRhcmtlbi0zXCI6ICAgI0M2MjgyOCxcbiAgXCJkYXJrZW4tNFwiOiAgICNCNzFDMUMsXG4gIFwiYWNjZW50LTFcIjogICAgI0ZGOEE4MCxcbiAgXCJhY2NlbnQtMlwiOiAgICAjRkY1MjUyLFxuICBcImFjY2VudC0zXCI6ICAgICNGRjE3NDQsXG4gIFwiYWNjZW50LTRcIjogICAgI0Q1MDAwMFxuKTtcblxuJHBpbms6IChcbiAgXCJiYXNlXCI6ICAgICAgICNlOTFlNjMsXG4gIFwibGlnaHRlbi01XCI6ICAjZmNlNGVjLFxuICBcImxpZ2h0ZW4tNFwiOiAgI2Y4YmJkMCxcbiAgXCJsaWdodGVuLTNcIjogICNmNDhmYjEsXG4gIFwibGlnaHRlbi0yXCI6ICAjZjA2MjkyLFxuICBcImxpZ2h0ZW4tMVwiOiAgI2VjNDA3YSxcbiAgXCJkYXJrZW4tMVwiOiAgICNkODFiNjAsXG4gIFwiZGFya2VuLTJcIjogICAjYzIxODViLFxuICBcImRhcmtlbi0zXCI6ICAgI2FkMTQ1NyxcbiAgXCJkYXJrZW4tNFwiOiAgICM4ODBlNGYsXG4gIFwiYWNjZW50LTFcIjogICAgI2ZmODBhYixcbiAgXCJhY2NlbnQtMlwiOiAgICAjZmY0MDgxLFxuICBcImFjY2VudC0zXCI6ICAgICNmNTAwNTcsXG4gIFwiYWNjZW50LTRcIjogICAgI2M1MTE2MlxuKTtcblxuJHB1cnBsZTogKFxuICBcImJhc2VcIjogICAgICAgIzljMjdiMCxcbiAgXCJsaWdodGVuLTVcIjogICNmM2U1ZjUsXG4gIFwibGlnaHRlbi00XCI6ICAjZTFiZWU3LFxuICBcImxpZ2h0ZW4tM1wiOiAgI2NlOTNkOCxcbiAgXCJsaWdodGVuLTJcIjogICNiYTY4YzgsXG4gIFwibGlnaHRlbi0xXCI6ICAjYWI0N2JjLFxuICBcImRhcmtlbi0xXCI6ICAgIzhlMjRhYSxcbiAgXCJkYXJrZW4tMlwiOiAgICM3YjFmYTIsXG4gIFwiZGFya2VuLTNcIjogICAjNmExYjlhLFxuICBcImRhcmtlbi00XCI6ICAgIzRhMTQ4YyxcbiAgXCJhY2NlbnQtMVwiOiAgICAjZWE4MGZjLFxuICBcImFjY2VudC0yXCI6ICAgICNlMDQwZmIsXG4gIFwiYWNjZW50LTNcIjogICAgI2Q1MDBmOSxcbiAgXCJhY2NlbnQtNFwiOiAgICAjYWEwMGZmXG4pO1xuXG4kZGVlcC1wdXJwbGU6IChcbiAgXCJiYXNlXCI6ICAgICAgICM2NzNhYjcsXG4gIFwibGlnaHRlbi01XCI6ICAjZWRlN2Y2LFxuICBcImxpZ2h0ZW4tNFwiOiAgI2QxYzRlOSxcbiAgXCJsaWdodGVuLTNcIjogICNiMzlkZGIsXG4gIFwibGlnaHRlbi0yXCI6ICAjOTU3NWNkLFxuICBcImxpZ2h0ZW4tMVwiOiAgIzdlNTdjMixcbiAgXCJkYXJrZW4tMVwiOiAgICM1ZTM1YjEsXG4gIFwiZGFya2VuLTJcIjogICAjNTEyZGE4LFxuICBcImRhcmtlbi0zXCI6ICAgIzQ1MjdhMCxcbiAgXCJkYXJrZW4tNFwiOiAgICMzMTFiOTIsXG4gIFwiYWNjZW50LTFcIjogICAgI2IzODhmZixcbiAgXCJhY2NlbnQtMlwiOiAgICAjN2M0ZGZmLFxuICBcImFjY2VudC0zXCI6ICAgICM2NTFmZmYsXG4gIFwiYWNjZW50LTRcIjogICAgIzYyMDBlYVxuKTtcblxuJGluZGlnbzogKFxuICBcImJhc2VcIjogICAgICAgIzNmNTFiNSxcbiAgXCJsaWdodGVuLTVcIjogICNlOGVhZjYsXG4gIFwibGlnaHRlbi00XCI6ICAjYzVjYWU5LFxuICBcImxpZ2h0ZW4tM1wiOiAgIzlmYThkYSxcbiAgXCJsaWdodGVuLTJcIjogICM3OTg2Y2IsXG4gIFwibGlnaHRlbi0xXCI6ICAjNWM2YmMwLFxuICBcImRhcmtlbi0xXCI6ICAgIzM5NDlhYixcbiAgXCJkYXJrZW4tMlwiOiAgICMzMDNmOWYsXG4gIFwiZGFya2VuLTNcIjogICAjMjgzNTkzLFxuICBcImRhcmtlbi00XCI6ICAgIzFhMjM3ZSxcbiAgXCJhY2NlbnQtMVwiOiAgICAjOGM5ZWZmLFxuICBcImFjY2VudC0yXCI6ICAgICM1MzZkZmUsXG4gIFwiYWNjZW50LTNcIjogICAgIzNkNWFmZSxcbiAgXCJhY2NlbnQtNFwiOiAgICAjMzA0ZmZlXG4pO1xuXG4kYmx1ZTogKFxuICBcImJhc2VcIjogICAgICAgIzIxOTZGMyxcbiAgXCJsaWdodGVuLTVcIjogICNFM0YyRkQsXG4gIFwibGlnaHRlbi00XCI6ICAjQkJERUZCLFxuICBcImxpZ2h0ZW4tM1wiOiAgIzkwQ0FGOSxcbiAgXCJsaWdodGVuLTJcIjogICM2NEI1RjYsXG4gIFwibGlnaHRlbi0xXCI6ICAjNDJBNUY1LFxuICBcImRhcmtlbi0xXCI6ICAgIzFFODhFNSxcbiAgXCJkYXJrZW4tMlwiOiAgICMxOTc2RDIsXG4gIFwiZGFya2VuLTNcIjogICAjMTU2NUMwLFxuICBcImRhcmtlbi00XCI6ICAgIzBENDdBMSxcbiAgXCJhY2NlbnQtMVwiOiAgICAjODJCMUZGLFxuICBcImFjY2VudC0yXCI6ICAgICM0NDhBRkYsXG4gIFwiYWNjZW50LTNcIjogICAgIzI5NzlGRixcbiAgXCJhY2NlbnQtNFwiOiAgICAjMjk2MkZGXG4pO1xuXG4kbGlnaHQtYmx1ZTogKFxuICBcImJhc2VcIjogICAgICAgIzAzYTlmNCxcbiAgXCJsaWdodGVuLTVcIjogICNlMWY1ZmUsXG4gIFwibGlnaHRlbi00XCI6ICAjYjNlNWZjLFxuICBcImxpZ2h0ZW4tM1wiOiAgIzgxZDRmYSxcbiAgXCJsaWdodGVuLTJcIjogICM0ZmMzZjcsXG4gIFwibGlnaHRlbi0xXCI6ICAjMjliNmY2LFxuICBcImRhcmtlbi0xXCI6ICAgIzAzOWJlNSxcbiAgXCJkYXJrZW4tMlwiOiAgICMwMjg4ZDEsXG4gIFwiZGFya2VuLTNcIjogICAjMDI3N2JkLFxuICBcImRhcmtlbi00XCI6ICAgIzAxNTc5YixcbiAgXCJhY2NlbnQtMVwiOiAgICAjODBkOGZmLFxuICBcImFjY2VudC0yXCI6ICAgICM0MGM0ZmYsXG4gIFwiYWNjZW50LTNcIjogICAgIzAwYjBmZixcbiAgXCJhY2NlbnQtNFwiOiAgICAjMDA5MWVhXG4pO1xuXG4kY3lhbjogKFxuICBcImJhc2VcIjogICAgICAgIzAwYmNkNCxcbiAgXCJsaWdodGVuLTVcIjogICNlMGY3ZmEsXG4gIFwibGlnaHRlbi00XCI6ICAjYjJlYmYyLFxuICBcImxpZ2h0ZW4tM1wiOiAgIzgwZGVlYSxcbiAgXCJsaWdodGVuLTJcIjogICM0ZGQwZTEsXG4gIFwibGlnaHRlbi0xXCI6ICAjMjZjNmRhLFxuICBcImRhcmtlbi0xXCI6ICAgIzAwYWNjMSxcbiAgXCJkYXJrZW4tMlwiOiAgICMwMDk3YTcsXG4gIFwiZGFya2VuLTNcIjogICAjMDA4MzhmLFxuICBcImRhcmtlbi00XCI6ICAgIzAwNjA2NCxcbiAgXCJhY2NlbnQtMVwiOiAgICAjODRmZmZmLFxuICBcImFjY2VudC0yXCI6ICAgICMxOGZmZmYsXG4gIFwiYWNjZW50LTNcIjogICAgIzAwZTVmZixcbiAgXCJhY2NlbnQtNFwiOiAgICAjMDBiOGQ0XG4pO1xuXG4kdGVhbDogKFxuICBcImJhc2VcIjogICAgICAgIzAwOTY4OCxcbiAgXCJsaWdodGVuLTVcIjogICNlMGYyZjEsXG4gIFwibGlnaHRlbi00XCI6ICAjYjJkZmRiLFxuICBcImxpZ2h0ZW4tM1wiOiAgIzgwY2JjNCxcbiAgXCJsaWdodGVuLTJcIjogICM0ZGI2YWMsXG4gIFwibGlnaHRlbi0xXCI6ICAjMjZhNjlhLFxuICBcImRhcmtlbi0xXCI6ICAgIzAwODk3YixcbiAgXCJkYXJrZW4tMlwiOiAgICMwMDc5NmIsXG4gIFwiZGFya2VuLTNcIjogICAjMDA2OTVjLFxuICBcImRhcmtlbi00XCI6ICAgIzAwNGQ0MCxcbiAgXCJhY2NlbnQtMVwiOiAgICAjYTdmZmViLFxuICBcImFjY2VudC0yXCI6ICAgICM2NGZmZGEsXG4gIFwiYWNjZW50LTNcIjogICAgIzFkZTliNixcbiAgXCJhY2NlbnQtNFwiOiAgICAjMDBiZmE1XG4pO1xuXG4kZ3JlZW46IChcbiAgXCJiYXNlXCI6ICAgICAgICM0Q0FGNTAsXG4gIFwibGlnaHRlbi01XCI6ICAjRThGNUU5LFxuICBcImxpZ2h0ZW4tNFwiOiAgI0M4RTZDOSxcbiAgXCJsaWdodGVuLTNcIjogICNBNUQ2QTcsXG4gIFwibGlnaHRlbi0yXCI6ICAjODFDNzg0LFxuICBcImxpZ2h0ZW4tMVwiOiAgIzY2QkI2QSxcbiAgXCJkYXJrZW4tMVwiOiAgICM0M0EwNDcsXG4gIFwiZGFya2VuLTJcIjogICAjMzg4RTNDLFxuICBcImRhcmtlbi0zXCI6ICAgIzJFN0QzMixcbiAgXCJkYXJrZW4tNFwiOiAgICMxQjVFMjAsXG4gIFwiYWNjZW50LTFcIjogICAgI0I5RjZDQSxcbiAgXCJhY2NlbnQtMlwiOiAgICAjNjlGMEFFLFxuICBcImFjY2VudC0zXCI6ICAgICMwMEU2NzYsXG4gIFwiYWNjZW50LTRcIjogICAgIzAwQzg1M1xuKTtcblxuJGxpZ2h0LWdyZWVuOiAoXG4gIFwiYmFzZVwiOiAgICAgICAjOGJjMzRhLFxuICBcImxpZ2h0ZW4tNVwiOiAgI2YxZjhlOSxcbiAgXCJsaWdodGVuLTRcIjogICNkY2VkYzgsXG4gIFwibGlnaHRlbi0zXCI6ICAjYzVlMWE1LFxuICBcImxpZ2h0ZW4tMlwiOiAgI2FlZDU4MSxcbiAgXCJsaWdodGVuLTFcIjogICM5Y2NjNjUsXG4gIFwiZGFya2VuLTFcIjogICAjN2NiMzQyLFxuICBcImRhcmtlbi0yXCI6ICAgIzY4OWYzOCxcbiAgXCJkYXJrZW4tM1wiOiAgICM1NThiMmYsXG4gIFwiZGFya2VuLTRcIjogICAjMzM2OTFlLFxuICBcImFjY2VudC0xXCI6ICAgICNjY2ZmOTAsXG4gIFwiYWNjZW50LTJcIjogICAgI2IyZmY1OSxcbiAgXCJhY2NlbnQtM1wiOiAgICAjNzZmZjAzLFxuICBcImFjY2VudC00XCI6ICAgICM2NGRkMTdcbik7XG5cbiRsaW1lOiAoXG4gIFwiYmFzZVwiOiAgICAgICAjY2RkYzM5LFxuICBcImxpZ2h0ZW4tNVwiOiAgI2Y5ZmJlNyxcbiAgXCJsaWdodGVuLTRcIjogICNmMGY0YzMsXG4gIFwibGlnaHRlbi0zXCI6ICAjZTZlZTljLFxuICBcImxpZ2h0ZW4tMlwiOiAgI2RjZTc3NSxcbiAgXCJsaWdodGVuLTFcIjogICNkNGUxNTcsXG4gIFwiZGFya2VuLTFcIjogICAjYzBjYTMzLFxuICBcImRhcmtlbi0yXCI6ICAgI2FmYjQyYixcbiAgXCJkYXJrZW4tM1wiOiAgICM5ZTlkMjQsXG4gIFwiZGFya2VuLTRcIjogICAjODI3NzE3LFxuICBcImFjY2VudC0xXCI6ICAgICNmNGZmODEsXG4gIFwiYWNjZW50LTJcIjogICAgI2VlZmY0MSxcbiAgXCJhY2NlbnQtM1wiOiAgICAjYzZmZjAwLFxuICBcImFjY2VudC00XCI6ICAgICNhZWVhMDBcbik7XG5cbiR5ZWxsb3c6IChcbiAgXCJiYXNlXCI6ICAgICAgICNmZmViM2IsXG4gIFwibGlnaHRlbi01XCI6ICAjZmZmZGU3LFxuICBcImxpZ2h0ZW4tNFwiOiAgI2ZmZjljNCxcbiAgXCJsaWdodGVuLTNcIjogICNmZmY1OWQsXG4gIFwibGlnaHRlbi0yXCI6ICAjZmZmMTc2LFxuICBcImxpZ2h0ZW4tMVwiOiAgI2ZmZWU1OCxcbiAgXCJkYXJrZW4tMVwiOiAgICNmZGQ4MzUsXG4gIFwiZGFya2VuLTJcIjogICAjZmJjMDJkLFxuICBcImRhcmtlbi0zXCI6ICAgI2Y5YTgyNSxcbiAgXCJkYXJrZW4tNFwiOiAgICNmNTdmMTcsXG4gIFwiYWNjZW50LTFcIjogICAgI2ZmZmY4ZCxcbiAgXCJhY2NlbnQtMlwiOiAgICAjZmZmZjAwLFxuICBcImFjY2VudC0zXCI6ICAgICNmZmVhMDAsXG4gIFwiYWNjZW50LTRcIjogICAgI2ZmZDYwMFxuKTtcblxuJGFtYmVyOiAoXG4gIFwiYmFzZVwiOiAgICAgICAjZmZjMTA3LFxuICBcImxpZ2h0ZW4tNVwiOiAgI2ZmZjhlMSxcbiAgXCJsaWdodGVuLTRcIjogICNmZmVjYjMsXG4gIFwibGlnaHRlbi0zXCI6ICAjZmZlMDgyLFxuICBcImxpZ2h0ZW4tMlwiOiAgI2ZmZDU0ZixcbiAgXCJsaWdodGVuLTFcIjogICNmZmNhMjgsXG4gIFwiZGFya2VuLTFcIjogICAjZmZiMzAwLFxuICBcImRhcmtlbi0yXCI6ICAgI2ZmYTAwMCxcbiAgXCJkYXJrZW4tM1wiOiAgICNmZjhmMDAsXG4gIFwiZGFya2VuLTRcIjogICAjZmY2ZjAwLFxuICBcImFjY2VudC0xXCI6ICAgICNmZmU1N2YsXG4gIFwiYWNjZW50LTJcIjogICAgI2ZmZDc0MCxcbiAgXCJhY2NlbnQtM1wiOiAgICAjZmZjNDAwLFxuICBcImFjY2VudC00XCI6ICAgICNmZmFiMDBcbik7XG5cbiRvcmFuZ2U6IChcbiAgXCJiYXNlXCI6ICAgICAgICNmZjk4MDAsXG4gIFwibGlnaHRlbi01XCI6ICAjZmZmM2UwLFxuICBcImxpZ2h0ZW4tNFwiOiAgI2ZmZTBiMixcbiAgXCJsaWdodGVuLTNcIjogICNmZmNjODAsXG4gIFwibGlnaHRlbi0yXCI6ICAjZmZiNzRkLFxuICBcImxpZ2h0ZW4tMVwiOiAgI2ZmYTcyNixcbiAgXCJkYXJrZW4tMVwiOiAgICNmYjhjMDAsXG4gIFwiZGFya2VuLTJcIjogICAjZjU3YzAwLFxuICBcImRhcmtlbi0zXCI6ICAgI2VmNmMwMCxcbiAgXCJkYXJrZW4tNFwiOiAgICNlNjUxMDAsXG4gIFwiYWNjZW50LTFcIjogICAgI2ZmZDE4MCxcbiAgXCJhY2NlbnQtMlwiOiAgICAjZmZhYjQwLFxuICBcImFjY2VudC0zXCI6ICAgICNmZjkxMDAsXG4gIFwiYWNjZW50LTRcIjogICAgI2ZmNmQwMFxuKTtcblxuJGRlZXAtb3JhbmdlOiAoXG4gIFwiYmFzZVwiOiAgICAgICAjZmY1NzIyLFxuICBcImxpZ2h0ZW4tNVwiOiAgI2ZiZTllNyxcbiAgXCJsaWdodGVuLTRcIjogICNmZmNjYmMsXG4gIFwibGlnaHRlbi0zXCI6ICAjZmZhYjkxLFxuICBcImxpZ2h0ZW4tMlwiOiAgI2ZmOGE2NSxcbiAgXCJsaWdodGVuLTFcIjogICNmZjcwNDMsXG4gIFwiZGFya2VuLTFcIjogICAjZjQ1MTFlLFxuICBcImRhcmtlbi0yXCI6ICAgI2U2NGExOSxcbiAgXCJkYXJrZW4tM1wiOiAgICNkODQzMTUsXG4gIFwiZGFya2VuLTRcIjogICAjYmYzNjBjLFxuICBcImFjY2VudC0xXCI6ICAgICNmZjllODAsXG4gIFwiYWNjZW50LTJcIjogICAgI2ZmNmU0MCxcbiAgXCJhY2NlbnQtM1wiOiAgICAjZmYzZDAwLFxuICBcImFjY2VudC00XCI6ICAgICNkZDJjMDBcbik7XG5cbiRicm93bjogKFxuICBcImJhc2VcIjogICAgICAgIzc5NTU0OCxcbiAgXCJsaWdodGVuLTVcIjogICNlZmViZTksXG4gIFwibGlnaHRlbi00XCI6ICAjZDdjY2M4LFxuICBcImxpZ2h0ZW4tM1wiOiAgI2JjYWFhNCxcbiAgXCJsaWdodGVuLTJcIjogICNhMTg4N2YsXG4gIFwibGlnaHRlbi0xXCI6ICAjOGQ2ZTYzLFxuICBcImRhcmtlbi0xXCI6ICAgIzZkNGM0MSxcbiAgXCJkYXJrZW4tMlwiOiAgICM1ZDQwMzcsXG4gIFwiZGFya2VuLTNcIjogICAjNGUzNDJlLFxuICBcImRhcmtlbi00XCI6ICAgIzNlMjcyM1xuKTtcblxuJGJsdWUtZ3JleTogKFxuICBcImJhc2VcIjogICAgICAgIzYwN2Q4YixcbiAgXCJsaWdodGVuLTVcIjogICNlY2VmZjEsXG4gIFwibGlnaHRlbi00XCI6ICAjY2ZkOGRjLFxuICBcImxpZ2h0ZW4tM1wiOiAgI2IwYmVjNSxcbiAgXCJsaWdodGVuLTJcIjogICM5MGE0YWUsXG4gIFwibGlnaHRlbi0xXCI6ICAjNzg5MDljLFxuICBcImRhcmtlbi0xXCI6ICAgIzU0NmU3YSxcbiAgXCJkYXJrZW4tMlwiOiAgICM0NTVhNjQsXG4gIFwiZGFya2VuLTNcIjogICAjMzc0NzRmLFxuICBcImRhcmtlbi00XCI6ICAgIzI2MzIzOFxuKTtcblxuJGdyZXk6IChcbiAgXCJiYXNlXCI6ICAgICAgICM5ZTllOWUsXG4gIFwibGlnaHRlbi01XCI6ICAjZmFmYWZhLFxuICBcImxpZ2h0ZW4tNFwiOiAgI2Y1ZjVmNSxcbiAgXCJsaWdodGVuLTNcIjogICNlZWVlZWUsXG4gIFwibGlnaHRlbi0yXCI6ICAjZTBlMGUwLFxuICBcImxpZ2h0ZW4tMVwiOiAgI2JkYmRiZCxcbiAgXCJkYXJrZW4tMVwiOiAgICM3NTc1NzUsXG4gIFwiZGFya2VuLTJcIjogICAjNjE2MTYxLFxuICBcImRhcmtlbi0zXCI6ICAgIzQyNDI0MixcbiAgXCJkYXJrZW4tNFwiOiAgICMyMTIxMjFcbik7XG5cbiRzaGFkZXM6IChcbiAgXCJibGFja1wiOiAgICAgICAgIzAwMDAwMCxcbiAgXCJ3aGl0ZVwiOiAgICAgICAgI0ZGRkZGRixcbiAgXCJ0cmFuc3BhcmVudFwiOiAgdHJhbnNwYXJlbnRcbik7XG5cbiRjb2xvcnM6IChcbiAgXCJtYXRlcmlhbGl6ZS1yZWRcIjogJG1hdGVyaWFsaXplLXJlZCxcbiAgXCJyZWRcIjogJHJlZCxcbiAgXCJwaW5rXCI6ICRwaW5rLFxuICBcInB1cnBsZVwiOiAkcHVycGxlLFxuICBcImRlZXAtcHVycGxlXCI6ICRkZWVwLXB1cnBsZSxcbiAgXCJpbmRpZ29cIjogJGluZGlnbyxcbiAgXCJibHVlXCI6ICRibHVlLFxuICBcImxpZ2h0LWJsdWVcIjogJGxpZ2h0LWJsdWUsXG4gIFwiY3lhblwiOiAkY3lhbixcbiAgXCJ0ZWFsXCI6ICR0ZWFsLFxuICBcImdyZWVuXCI6ICRncmVlbixcbiAgXCJsaWdodC1ncmVlblwiOiAkbGlnaHQtZ3JlZW4sXG4gIFwibGltZVwiOiAkbGltZSxcbiAgXCJ5ZWxsb3dcIjogJHllbGxvdyxcbiAgXCJhbWJlclwiOiAkYW1iZXIsXG4gIFwib3JhbmdlXCI6ICRvcmFuZ2UsXG4gIFwiZGVlcC1vcmFuZ2VcIjogJGRlZXAtb3JhbmdlLFxuICBcImJyb3duXCI6ICRicm93bixcbiAgXCJibHVlLWdyZXlcIjogJGJsdWUtZ3JleSxcbiAgXCJncmV5XCI6ICRncmV5LFxuICBcInNoYWRlc1wiOiAkc2hhZGVzXG4pO1xuXG5cbi8vIENvbG9yIENsYXNzZXNcblxuQGVhY2ggJGNvbG9yX25hbWUsICRjb2xvciBpbiAkY29sb3JzIHtcbiAgQGVhY2ggJGNvbG9yX3R5cGUsICRjb2xvcl92YWx1ZSBpbiAkY29sb3Ige1xuICAgIEBpZiAkY29sb3JfdHlwZSA9PSBcImJhc2VcIiB7XG4gICAgICAuI3skY29sb3JfbmFtZX0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfdmFsdWUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC4jeyRjb2xvcl9uYW1lfS10ZXh0IHtcbiAgICAgICAgY29sb3I6ICRjb2xvcl92YWx1ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkY29sb3JfbmFtZSAhPSBcInNoYWRlc1wiIHtcbiAgICAgIC4jeyRjb2xvcl9uYW1lfS4jeyRjb2xvcl90eXBlfSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl92YWx1ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLiN7JGNvbG9yX25hbWV9LXRleHQudGV4dC0jeyRjb2xvcl90eXBlfSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3JfdmFsdWUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hhZGUgY2xhc3Nlc1xuQGVhY2ggJGNvbG9yLCAkY29sb3JfdmFsdWUgaW4gJHNoYWRlcyB7XG4gIC4jeyRjb2xvcn0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl92YWx1ZSAhaW1wb3J0YW50O1xuICB9XG4gIC4jeyRjb2xvcn0tdGV4dCB7XG4gICAgY29sb3I6ICRjb2xvcl92YWx1ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cblxuLy8gdXNhZ2U6IGNvbG9yKFwibmFtZV9vZl9jb2xvclwiLCBcInR5cGVfb2ZfY29sb3JcIilcbi8vIHRvIGF2b2lkIHRvIHJlcGVhdGluZyBtYXAtZ2V0KCRjb2xvcnMsIC4uLilcblxuQGZ1bmN0aW9uIGNvbG9yKCRjb2xvciwgJHR5cGUpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRjb2xvcnMsICRjb2xvcikge1xuICAgICRjdXJyX2NvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsICRjb2xvcik7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRjdXJyX2NvbG9yLCAkdHlwZSkge1xuICAgICAgQHJldHVybiBtYXAtZ2V0KCRjdXJyX2NvbG9yLCAkdHlwZSk7XG4gICAgfVxuICB9XG4gIEB3YXJuIFwiVW5rbm93biBgI3tuYW1lfWAgaW4gJGNvbG9ycy5cIjtcbiAgQHJldHVybiBudWxsO1xufVxuXG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTWF0ZXJpYWxpemUgdmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy9cbi8vIFRhYmxlIG9mIENvbnRlbnRzOlxuLy9cbi8vICAxLiBDb2xvcnNcbi8vICAyLiBCYWRnZXNcbi8vICAzLiBCdXR0b25zXG4vLyAgNC4gQ2FyZHNcbi8vICA1LiBDb2xsYXBzaWJsZVxuLy8gIDYuIENoaXBzXG4vLyAgNy4gRGF0ZSBQaWNrZXJcbi8vICA4LiBEcm9wZG93blxuLy8gIDEwLiBGb3Jtc1xuLy8gIDExLiBHbG9iYWxcbi8vICAxMi4gR3JpZFxuLy8gIDEzLiBOYXZpZ2F0aW9uIEJhclxuLy8gIDE0LiBTaWRlIE5hdmlnYXRpb25cbi8vICAxNS4gUGhvdG8gU2xpZGVyXG4vLyAgMTYuIFNwaW5uZXJzIHwgTG9hZGVyc1xuLy8gIDE3LiBUYWJzXG4vLyAgMTguIFRhYmxlc1xuLy8gIDE5LiBUb2FzdHNcbi8vICAyMC4gVHlwb2dyYXBoeVxuLy8gIDIxLiBGb290ZXJcbi8vICAyMi4gRmxvdyBUZXh0XG4vLyAgMjMuIENvbGxlY3Rpb25zXG4vLyAgMjQuIFByb2dyZXNzIEJhclxuXG5cblxuLy8gMS4gQ29sb3JzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kcHJpbWFyeS1jb2xvcjogY29sb3IoXCJtYXRlcmlhbGl6ZS1yZWRcIiwgXCJsaWdodGVuLTJcIikgIWRlZmF1bHQ7XG4kcHJpbWFyeS1jb2xvci1saWdodDogbGlnaHRlbigkcHJpbWFyeS1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRwcmltYXJ5LWNvbG9yLWRhcms6IGRhcmtlbigkcHJpbWFyeS1jb2xvciwgMTUlKSAhZGVmYXVsdDtcblxuJHNlY29uZGFyeS1jb2xvcjogY29sb3IoXCJ0ZWFsXCIsIFwibGlnaHRlbi0xXCIpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtY29sb3I6IGNvbG9yKFwiZ3JlZW5cIiwgXCJiYXNlXCIpICFkZWZhdWx0O1xuJGVycm9yLWNvbG9yOiBjb2xvcihcInJlZFwiLCBcImJhc2VcIikgIWRlZmF1bHQ7XG4kbGluay1jb2xvcjogY29sb3IoXCJsaWdodC1ibHVlXCIsIFwiZGFya2VuLTFcIikgIWRlZmF1bHQ7XG5cblxuLy8gMi4gQmFkZ2VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kYmFkZ2UtYmctY29sb3I6ICRzZWNvbmRhcnktY29sb3IgIWRlZmF1bHQ7XG4kYmFkZ2UtaGVpZ2h0OiAyMnB4ICFkZWZhdWx0O1xuXG5cbi8vIDMuIEJ1dHRvbnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIFNoYXJlZCBzdHlsZXNcbiRidXR0b24tYm9yZGVyOiBub25lICFkZWZhdWx0O1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWZvY3VzOiBsaWdodGVuKCRzZWNvbmRhcnktY29sb3IsIDQlKSAhZGVmYXVsdDtcbiRidXR0b24tZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuJGJ1dHRvbi1pY29uLWZvbnQtc2l6ZTogMS4zcmVtICFkZWZhdWx0O1xuJGJ1dHRvbi1oZWlnaHQ6IDM2cHggIWRlZmF1bHQ7XG4kYnV0dG9uLXBhZGRpbmc6IDAgMnJlbSAhZGVmYXVsdDtcbiRidXR0b24tcmFkaXVzOiAycHggIWRlZmF1bHQ7XG5cbi8vIERpc2FibGVkIHN0eWxlc1xuJGJ1dHRvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kOiAjREZERkRGICFkZWZhdWx0O1xuJGJ1dHRvbi1kaXNhYmxlZC1jb2xvcjogIzlGOUY5RiAhZGVmYXVsdDtcblxuLy8gUmFpc2VkIGJ1dHRvbnNcbiRidXR0b24tcmFpc2VkLWJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kLWhvdmVyOiBsaWdodGVuKCRidXR0b24tcmFpc2VkLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRidXR0b24tcmFpc2VkLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBidXR0b25zXG4kYnV0dG9uLWxhcmdlLWljb24tZm9udC1zaXplOiAxLjZyZW0gIWRlZmF1bHQ7XG4kYnV0dG9uLWxhcmdlLWhlaWdodDogJGJ1dHRvbi1oZWlnaHQgKiAxLjUgIWRlZmF1bHQ7XG5cbi8vIEZsYXQgYnV0dG9uc1xuJGJ1dHRvbi1mbGF0LWNvbG9yOiAjMzQzNDM0ICFkZWZhdWx0O1xuJGJ1dHRvbi1mbGF0LWRpc2FibGVkLWNvbG9yOiBsaWdodGVuKCM5OTksIDEwJSkgIWRlZmF1bHQ7XG5cbi8vIEZsb2F0aW5nIGJ1dHRvbnNcbiRidXR0b24tZmxvYXRpbmctYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tZmxvYXRpbmctYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1mbG9hdGluZy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJ1dHRvbi1mbG9hdGluZy1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRidXR0b24tZmxvYXRpbmctc2l6ZTogNDBweCAhZGVmYXVsdDtcbiRidXR0b24tZmxvYXRpbmctbGFyZ2Utc2l6ZTogNTZweCAhZGVmYXVsdDtcbiRidXR0b24tZmxvYXRpbmctcmFkaXVzOiA1MCUgIWRlZmF1bHQ7XG5cblxuLy8gNC4gQ2FyZHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRjYXJkLXBhZGRpbmc6IDI0cHggIWRlZmF1bHQ7XG4kY2FyZC1iZy1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRjYXJkLWxpbmstY29sb3I6IGNvbG9yKFwib3JhbmdlXCIsIFwiYWNjZW50LTJcIikgIWRlZmF1bHQ7XG4kY2FyZC1saW5rLWNvbG9yLWxpZ2h0OiBsaWdodGVuKCRjYXJkLWxpbmstY29sb3IsIDIwJSkgIWRlZmF1bHQ7XG5cblxuLy8gNS4gQ29sbGFwc2libGVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRjb2xsYXBzaWJsZS1oZWlnaHQ6IDNyZW0gIWRlZmF1bHQ7XG4kY29sbGFwc2libGUtbGluZS1oZWlnaHQ6ICRjb2xsYXBzaWJsZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY29sbGFwc2libGUtaGVhZGVyLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJGNvbGxhcHNpYmxlLWJvcmRlci1jb2xvcjogI2RkZCAhZGVmYXVsdDtcblxuXG4vLyA2LiBDaGlwc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGNoaXAtYmctY29sb3I6ICNlNGU0ZTQgIWRlZmF1bHQ7XG4kY2hpcC1ib3JkZXItY29sb3I6ICM5ZTllOWUgIWRlZmF1bHQ7XG4kY2hpcC1zZWxlY3RlZC1jb2xvcjogIzI2YTY5YSAhZGVmYXVsdDtcbiRjaGlwLW1hcmdpbjogNXB4ICFkZWZhdWx0O1xuXG5cbi8vIDcuIERhdGUgUGlja2VyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZGF0ZXBpY2tlci13ZWVrZGF5LWJnOiBkYXJrZW4oJHNlY29uZGFyeS1jb2xvciwgNyUpICFkZWZhdWx0O1xuJGRhdGVwaWNrZXItZGF0ZS1iZzogJHNlY29uZGFyeS1jb2xvciAhZGVmYXVsdDtcbiRkYXRlcGlja2VyLXllYXI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjQpICFkZWZhdWx0O1xuJGRhdGVwaWNrZXItZm9jdXM6IHJnYmEoMCwwLDAsIC4wNSkgIWRlZmF1bHQ7XG4kZGF0ZXBpY2tlci1zZWxlY3RlZDogJHNlY29uZGFyeS1jb2xvciAhZGVmYXVsdDtcbiRkYXRlcGlja2VyLXNlbGVjdGVkLW91dGZvY3VzOiBkZXNhdHVyYXRlKGxpZ2h0ZW4oJHNlY29uZGFyeS1jb2xvciwgMzUlKSwgMTUlKSAhZGVmYXVsdDtcblxuXG4vLyA4LiBEcm9wZG93blxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGRyb3Bkb3duLWJnLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhvdmVyLWJnLWNvbG9yOiAjZWVlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0taGVpZ2h0OiA1MHB4ICFkZWZhdWx0O1xuXG5cbi8vIDkuIEZvbnRzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kcm9ib3RvLWZvbnQtcGF0aDogXCIuLi9mb250cy9yb2JvdG8vXCIgIWRlZmF1bHQ7XG5cblxuLy8gMTAuIEZvcm1zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBUZXh0IElucHV0cyArIFRleHRhcmVhXG4kaW5wdXQtaGVpZ2h0OiAzcmVtICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogY29sb3IoXCJncmV5XCIsIFwiYmFzZVwiKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWJhY2tncm91bmQ6ICNmZmYgIWRlZmF1bHQ7XG4kaW5wdXQtZXJyb3ItY29sb3I6ICRlcnJvci1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1zdWNjZXNzLWNvbG9yOiAkc3VjY2Vzcy1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogJHNlY29uZGFyeS1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtbWFyZ2luLWJvdHRvbTogMjBweDtcbiRpbnB1dC1tYXJnaW46IDAgMCAkaW5wdXQtbWFyZ2luLWJvdHRvbSAwICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmc6IDAgIWRlZmF1bHQ7XG4kaW5wdXQtdHJhbnNpdGlvbjogYWxsIC4zcyAhZGVmYXVsdDtcbiRsYWJlbC1mb250LXNpemU6IC44cmVtICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWNvbG9yOiByZ2JhKDAsMCwwLCAuMjYpICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLXNvbGlkLWNvbG9yOiAjQkRCREJEICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJvcmRlcjogMXB4IGRvdHRlZCAkaW5wdXQtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtaW52YWxpZC1ib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtZXJyb3ItY29sb3IgIWRlZmF1bHQ7XG4kcGxhY2Vob2xkZXItdGV4dC1jb2xvcjogbGlnaHRlbigkaW5wdXQtYm9yZGVyLWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuXG4vLyBSYWRpbyBCdXR0b25zXG4kcmFkaW8tZmlsbC1jb2xvcjogJHNlY29uZGFyeS1jb2xvciAhZGVmYXVsdDtcbiRyYWRpby1lbXB0eS1jb2xvcjogIzVhNWE1YSAhZGVmYXVsdDtcbiRyYWRpby1ib3JkZXI6IDJweCBzb2xpZCAkcmFkaW8tZmlsbC1jb2xvciAhZGVmYXVsdDtcblxuLy8gUmFuZ2VcbiRyYW5nZS1oZWlnaHQ6IDE0cHggIWRlZmF1bHQ7XG4kcmFuZ2Utd2lkdGg6IDE0cHggIWRlZmF1bHQ7XG4kdHJhY2staGVpZ2h0OiAzcHggIWRlZmF1bHQ7XG5cbi8vIFNlbGVjdFxuJHNlbGVjdC1ib3JkZXI6IDFweCBzb2xpZCAjZjJmMmYyICFkZWZhdWx0O1xuJHNlbGVjdC1iYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTApICFkZWZhdWx0O1xuJHNlbGVjdC1mb2N1czogMXB4IHNvbGlkIGxpZ2h0ZW4oJHNlY29uZGFyeS1jb2xvciwgNDclKSAhZGVmYXVsdDtcbiRzZWxlY3QtcGFkZGluZzogNXB4ICFkZWZhdWx0O1xuJHNlbGVjdC1yYWRpdXM6IDJweCAhZGVmYXVsdDtcbiRzZWxlY3QtZGlzYWJsZWQtY29sb3I6IHJnYmEoMCwwLDAsLjMpICFkZWZhdWx0O1xuXG4vLyBTd2l0Y2hlc1xuJHN3aXRjaC1iZy1jb2xvcjogJHNlY29uZGFyeS1jb2xvciAhZGVmYXVsdDtcbiRzd2l0Y2gtY2hlY2tlZC1sZXZlci1iZzogZGVzYXR1cmF0ZShsaWdodGVuKCRzZWNvbmRhcnktY29sb3IsIDI1JSksIDI1JSkgIWRlZmF1bHQ7XG4kc3dpdGNoLXVuY2hlY2tlZC1iZzogI0YxRjFGMSAhZGVmYXVsdDtcbiRzd2l0Y2gtdW5jaGVja2VkLWxldmVyLWJnOiAjODE4MTgxICFkZWZhdWx0O1xuJHN3aXRjaC1yYWRpdXM6IDE1cHggIWRlZmF1bHQ7XG5cblxuLy8gMTEuIEdsb2JhbFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gTWVkaWEgUXVlcnkgUmFuZ2VzXG4kc21hbGwtc2NyZWVuLXVwOiA2MDFweCAhZGVmYXVsdDtcbiRtZWRpdW0tc2NyZWVuLXVwOiA5OTNweCAhZGVmYXVsdDtcbiRsYXJnZS1zY3JlZW4tdXA6IDEyMDFweCAhZGVmYXVsdDtcbiRzbWFsbC1zY3JlZW46IDYwMHB4ICFkZWZhdWx0O1xuJG1lZGl1bS1zY3JlZW46IDk5MnB4ICFkZWZhdWx0O1xuJGxhcmdlLXNjcmVlbjogMTIwMHB4ICFkZWZhdWx0O1xuXG4kbWVkaXVtLWFuZC11cDogXCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6ICN7JHNtYWxsLXNjcmVlbi11cH0pXCIgIWRlZmF1bHQ7XG4kbGFyZ2UtYW5kLXVwOiBcIm9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogI3skbWVkaXVtLXNjcmVlbi11cH0pXCIgIWRlZmF1bHQ7XG4kZXh0cmEtbGFyZ2UtYW5kLXVwOiBcIm9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogI3skbGFyZ2Utc2NyZWVuLXVwfSlcIiAhZGVmYXVsdDtcbiRzbWFsbC1hbmQtZG93bjogXCJvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6ICN7JHNtYWxsLXNjcmVlbn0pXCIgIWRlZmF1bHQ7XG4kbWVkaXVtLWFuZC1kb3duOiBcIm9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogI3skbWVkaXVtLXNjcmVlbn0pXCIgIWRlZmF1bHQ7XG4kbWVkaXVtLW9ubHk6IFwib25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAjeyRzbWFsbC1zY3JlZW4tdXB9KSBhbmQgKG1heC13aWR0aCA6ICN7JG1lZGl1bS1zY3JlZW59KVwiICFkZWZhdWx0O1xuXG5cbi8vIDEyLiBHcmlkXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kbnVtLWNvbHM6IDEyICFkZWZhdWx0O1xuJGd1dHRlci13aWR0aDogMS41cmVtICFkZWZhdWx0O1xuJGVsZW1lbnQtdG9wLW1hcmdpbjogJGd1dHRlci13aWR0aC8zICFkZWZhdWx0O1xuJGVsZW1lbnQtYm90dG9tLW1hcmdpbjogKCRndXR0ZXItd2lkdGgqMikvMyAhZGVmYXVsdDtcblxuXG4vLyAxMy4gTmF2aWdhdGlvbiBCYXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRuYXZiYXItaGVpZ2h0OiA2NHB4ICFkZWZhdWx0O1xuJG5hdmJhci1saW5lLWhlaWdodDogJG5hdmJhci1oZWlnaHQgIWRlZmF1bHQ7XG4kbmF2YmFyLWhlaWdodC1tb2JpbGU6IDU2cHggIWRlZmF1bHQ7XG4kbmF2YmFyLWxpbmUtaGVpZ2h0LW1vYmlsZTogJG5hdmJhci1oZWlnaHQtbW9iaWxlICFkZWZhdWx0O1xuJG5hdmJhci1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLWZvbnQtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogMi4xcmVtICFkZWZhdWx0O1xuXG4vLyAxNC4gU2lkZSBOYXZpZ2F0aW9uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kc2lkZW5hdi1mb250LXNpemU6IDE0cHggIWRlZmF1bHQ7XG4kc2lkZW5hdi1mb250LWNvbG9yOiByZ2JhKDAsMCwwLC44NykgIWRlZmF1bHQ7XG4kc2lkZW5hdi1iZy1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRzaWRlbmF2LXBhZGRpbmc6IDE2cHggIWRlZmF1bHQ7XG4kc2lkZW5hdi1pdGVtLWhlaWdodDogNDhweCAhZGVmYXVsdDtcbiRzaWRlbmF2LWxpbmUtaGVpZ2h0OiAkc2lkZW5hdi1pdGVtLWhlaWdodCAhZGVmYXVsdDtcblxuXG4vLyAxNS4gUGhvdG8gU2xpZGVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kc2xpZGVyLWJnLWNvbG9yOiBjb2xvcignZ3JleScsICdiYXNlJykgIWRlZmF1bHQ7XG4kc2xpZGVyLWJnLWNvbG9yLWxpZ2h0OiBjb2xvcignZ3JleScsICdsaWdodGVuLTInKSAhZGVmYXVsdDtcbiRzbGlkZXItaW5kaWNhdG9yLWNvbG9yOiBjb2xvcignZ3JlZW4nLCAnYmFzZScpICFkZWZhdWx0O1xuXG5cbi8vIDE2LiBTcGlubmVycyB8IExvYWRlcnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRzcGlubmVyLWRlZmF1bHQtY29sb3I6ICRzZWNvbmRhcnktY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gMTcuIFRhYnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiR0YWJzLXVuZGVybGluZS1jb2xvcjogJHByaW1hcnktY29sb3ItbGlnaHQgIWRlZmF1bHQ7XG4kdGFicy10ZXh0LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiR0YWJzLWJnLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuXG5cbi8vIDE4LiBUYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICNkMGQwZDAgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1jb2xvcjogI2YyZjJmMiAhZGVmYXVsdDtcblxuXG4vLyAxOS4gVG9hc3RzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kdG9hc3QtaGVpZ2h0OiA0OHB4ICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAjMzIzMjMyICFkZWZhdWx0O1xuJHRvYXN0LXRleHQtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG5cblxuLy8gMjAuIFR5cG9ncmFwaHlcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRvZmYtYmxhY2s6IHJnYmEoMCwgMCwgMCwgMC44NykgIWRlZmF1bHQ7XG4vLyBIZWFkZXIgU3R5bGVzXG4kaDEtZm9udHNpemU6IDQuMnJlbSAhZGVmYXVsdDtcbiRoMi1mb250c2l6ZTogMy41NnJlbSAhZGVmYXVsdDtcbiRoMy1mb250c2l6ZTogMi45MnJlbSAhZGVmYXVsdDtcbiRoNC1mb250c2l6ZTogMi4yOHJlbSAhZGVmYXVsdDtcbiRoNS1mb250c2l6ZTogMS42NHJlbSAhZGVmYXVsdDtcbiRoNi1mb250c2l6ZTogMXJlbSAhZGVmYXVsdDtcblxuXG4vLyAyMS4gRm9vdGVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZm9vdGVyLWJnLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyAyMi4gRmxvdyBUZXh0XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kcmFuZ2UgOiAkbGFyZ2Utc2NyZWVuIC0gJHNtYWxsLXNjcmVlbiAhZGVmYXVsdDtcbiRpbnRlcnZhbHM6IDIwICFkZWZhdWx0O1xuJGludGVydmFsLXNpemU6ICRyYW5nZSAvICRpbnRlcnZhbHMgIWRlZmF1bHQ7XG5cblxuLy8gMjMuIENvbGxlY3Rpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kY29sbGVjdGlvbi1ib3JkZXItY29sb3I6ICNlMGUwZTAgIWRlZmF1bHQ7XG4kY29sbGVjdGlvbi1iZy1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRjb2xsZWN0aW9uLWFjdGl2ZS1iZy1jb2xvcjogJHNlY29uZGFyeS1jb2xvciAhZGVmYXVsdDtcbiRjb2xsZWN0aW9uLWFjdGl2ZS1jb2xvcjogbGlnaHRlbigkc2Vjb25kYXJ5LWNvbG9yLCA1NSUpICFkZWZhdWx0O1xuJGNvbGxlY3Rpb24taG92ZXItYmctY29sb3I6ICNkZGQgIWRlZmF1bHQ7XG4kY29sbGVjdGlvbi1saW5rLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGNvbGxlY3Rpb24tbGluZS1oZWlnaHQ6IDEuNXJlbSAhZGVmYXVsdDtcblxuXG4vLyAyNC4gUHJvZ3Jlc3MgQmFyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKipcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4gKiAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuICogICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuICovXG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcbiAqIGFuZCBGaXJlZm94LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cbiAqL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICogMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxuICogYWN0aXZlL2hvdmVyIHN0YXRlLlxuICovXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4gKi9cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAqL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKipcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAqL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbiAgbWFyZ2luOiAwOyAvKiAzICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbiAqL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gKi9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gKi9cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuICogU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuICogcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbiAqL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4gKiAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm9yZGVyOiAwOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyogVGFibGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDtcbn1cbiIsIi8vRGVmYXVsdCBzdHlsZXNcblxuaHRtbCB7XG4gYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbiosICo6YmVmb3JlLCAqOmFmdGVyIHtcbiBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5ib2R5IHtcbiAgLy8gZGlzcGxheTogZmxleDtcbiAgLy8gbWluLWhlaWdodDogMTAwdmg7XG4gIC8vIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbm1haW4ge1xuICAvLyBmbGV4OiAxIDAgYXV0bztcbn1cblxudWwge1xuICAmOm5vdCguYnJvd3Nlci1kZWZhdWx0KSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuYSB7XG5cdGNvbG9yOiAkbGluay1jb2xvcjtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gIC8vIEdldHMgcmlkIG9mIHRhcCBhY3RpdmUgc3RhdGVcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuXG4vLyBQb3NpdGlvbmluZ1xuLnZhbGlnbi13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuXG4vLyBjbGFzc2ljIGNsZWFyZml4XG4uY2xlYXJmaXgge1xuICBjbGVhcjogYm90aDtcbn1cblxuXG4vLyBaLWxldmVsc1xuLnotZGVwdGgtMCB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cbi56LWRlcHRoLTEge1xuICBib3gtc2hhZG93OiAwIDJweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpLCAwIDNweCAxcHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG4uei1kZXB0aC0xLWhhbGYge1xuICBib3gtc2hhZG93OiAwIDNweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCA3cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpLCAwIDNweCAxcHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG4uei1kZXB0aC0yIHtcbiAgYm94LXNoYWRvdzogMCA0cHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAxcHggMTBweCAwIHJnYmEoMCwgMCwgMCwgMC4xMiksIDAgMnB4IDRweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbi56LWRlcHRoLTMge1xuICBib3gtc2hhZG93OiAwIDZweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAxcHggMThweCAwIHJnYmEoMCwgMCwgMCwgMC4xMiksIDAgM3B4IDVweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbi56LWRlcHRoLTQge1xuICBib3gtc2hhZG93OiAwIDhweCAxMHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDNweCAxNHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTIpLCAwIDVweCA1cHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG4uei1kZXB0aC01IHtcbiAgYm94LXNoYWRvdzogMCAxNnB4IDI0cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDAgNnB4IDMwcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMiksIDAgOHB4IDEwcHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG5cbi5ob3ZlcmFibGUge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IC4yNXM7XG4gIGJveC1zaGFkb3c6IDA7XG59XG5cbi5ob3ZlcmFibGU6aG92ZXIge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IC4yNXM7XG4gIGJveC1zaGFkb3c6IDAgOHB4IDE3cHggMCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgNnB4IDIwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTkpO1xufVxuXG4vLyBEaXZpZGVyc1xuXG4uZGl2aWRlciB7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihcImdyZXlcIiwgXCJsaWdodGVuLTJcIik7XG59XG5cblxuLy8gIEJsb2NrcXVvdGVcblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMjBweCAwO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbn1cblxuLy8gSWNvbiBTdHlsZXNcblxuaSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuXG4gICYubGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICB9XG4gICYucmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgfVxuICAmLnRpbnkge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuICAmLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbiAgJi5tZWRpdW0ge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgfVxuICAmLmxhcmdlIHtcbiAgICBmb250LXNpemU6IDZyZW07XG4gIH1cbn1cblxuLy8gSW1hZ2VzXG5pbWcucmVzcG9uc2l2ZS1pbWcsXG52aWRlby5yZXNwb25zaXZlLXZpZGVvIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUGFnaW5hdGlvblxuXG4ucGFnaW5hdGlvbiB7XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgaGVpZ2h0OiAzMHB4O1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogIzQ0NDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUgYSB7IGNvbG9yOiAjZmZmOyB9XG5cbiAgICAmLmFjdGl2ZSB7IGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yOyB9XG5cbiAgICAmLmRpc2FibGVkIGEge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgY29sb3I6ICM5OTk7XG4gICAgfVxuXG4gICAgaSB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgfVxuICB9XG5cblxuICBsaS5wYWdlcyB1bCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5AbWVkaWEgI3skbWVkaXVtLWFuZC1kb3dufSB7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGxpLnByZXYsXG4gICAgbGkubmV4dCB7XG4gICAgICB3aWR0aDogMTAlO1xuICAgIH1cblxuICAgIGxpLnBhZ2VzIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQnJlYWRjcnVtYnNcbi5icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgLjcpO1xuXG4gIGksXG4gIFtjbGFzc149XCJtZGktXCJdLCBbY2xhc3MqPVwibWRpLVwiXSxcbiAgaS5tYXRlcmlhbC1pY29ucyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxFNUNDJztcbiAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgLjcpO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBtYXJnaW46IDAgMTBweCAwIDhweDtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuXG5cbi8vIFBhcmFsbGF4XG4ucGFyYWxsYXgtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDUwMHB4O1xufVxuXG4ucGFyYWxsYXgge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogLTE7XG5cbiAgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgYm90dG9tOiAwO1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cblxuLy8gUHVzaHBpblxuLnBpbi10b3AsIC5waW4tYm90dG9tIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnBpbm5lZCB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqXG4gIFRyYW5zaXRpb24gQ2xhc3Nlc1xuKioqKioqKioqKioqKioqKioqKioqKi9cblxudWwuc3RhZ2dlcmVkLWxpc3QgbGkge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uZmFkZS1pbiB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgNTAlO1xufVxuXG5cbi8qKioqKioqKioqKioqKioqKioqKipcbiAgTWVkaWEgUXVlcnkgQ2xhc3Nlc1xuKioqKioqKioqKioqKioqKioqKioqKi9cbi5oaWRlLW9uLXNtYWxsLW9ubHksIC5oaWRlLW9uLXNtYWxsLWFuZC1kb3duIHtcbiAgQG1lZGlhICN7JHNtYWxsLWFuZC1kb3dufSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uaGlkZS1vbi1tZWQtYW5kLWRvd24ge1xuICBAbWVkaWEgI3skbWVkaXVtLWFuZC1kb3dufSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uaGlkZS1vbi1tZWQtYW5kLXVwIHtcbiAgQG1lZGlhICN7JG1lZGl1bS1hbmQtdXB9IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5oaWRlLW9uLW1lZC1vbmx5IHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc21hbGwtc2NyZWVuKSBhbmQgKG1heC13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5oaWRlLW9uLWxhcmdlLW9ubHkge1xuICBAbWVkaWEgI3skbGFyZ2UtYW5kLXVwfSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uc2hvdy1vbi1sYXJnZSB7XG4gIEBtZWRpYSAjeyRsYXJnZS1hbmQtdXB9IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4uc2hvdy1vbi1tZWRpdW0ge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4pIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5zaG93LW9uLXNtYWxsIHtcbiAgQG1lZGlhICN7JHNtYWxsLWFuZC1kb3dufSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnNob3ctb24tbWVkaXVtLWFuZC11cCB7XG4gIEBtZWRpYSAjeyRtZWRpdW0tYW5kLXVwfSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnNob3ctb24tbWVkaXVtLWFuZC1kb3duIHtcbiAgQG1lZGlhICN7JG1lZGl1bS1hbmQtZG93bn0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuXG4vLyBDZW50ZXIgdGV4dCBvbiBtb2JpbGVcbi5jZW50ZXItb24tc21hbGwtb25seSB7XG4gIEBtZWRpYSAjeyRzbWFsbC1hbmQtZG93bn0ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4vLyBGb290ZXJcbi5wYWdlLWZvb3RlciB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9vdGVyLWJnLWNvbG9yO1xuXG4gIC5mb290ZXItY29weXJpZ2h0IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDEwcHggMHB4O1xuICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUxLDUxLDUxLC4wOCk7XG4gICAgQGV4dGVuZCAubGlnaHQ7XG4gIH1cbn1cblxuLy8gVGFibGVzXG50YWJsZSwgdGgsIHRkIHtcbiAgIGJvcmRlcjogbm9uZTtcbn1cblxudGFibGUge1xuICB3aWR0aDoxMDAlO1xuICBkaXNwbGF5OiB0YWJsZTtcblxuICAmLmJvcmRlcmVkID4gdGhlYWQgPiB0cixcbiAgJi5ib3JkZXJlZCA+IHRib2R5ID4gdHIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi5zdHJpcGVkID4gdGJvZHkge1xuICAgID4gdHI6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtY29sb3I7XG4gICAgfVxuXG4gICAgPiB0ciA+IHRkIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuICB9XG5cbiAgJi5oaWdobGlnaHQgPiB0Ym9keSA+IHRyIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgZWFzZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYuY2VudGVyZWQge1xuICAgIHRoZWFkIHRyIHRoLCB0Ym9keSB0ciB0ZCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbn1cblxudGhlYWQge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbn1cblxudGQsIHRoe1xuICBwYWRkaW5nOiAxNXB4IDVweDtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuXG4vLyBSZXNwb25zaXZlIFRhYmxlXG5AbWVkaWEgI3skbWVkaXVtLWFuZC1kb3dufSB7XG5cbiAgdGFibGUucmVzcG9uc2l2ZS10YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICB0ZDplbXB0eTpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMDBhMCc7XG4gICAgfVxuXG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG5cbiAgICB0aCB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICB0ciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xuXG4gICAgICAgIHRoOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFwwMGEwXCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgdGJvZHkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICB0ciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIH1cbiAgICB9XG4gICAgdGgge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gICAgdGQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtaW4taGVpZ2h0OiAxLjI1ZW07XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgICB0ciB7IHBhZGRpbmc6IDAgMTBweDsgfVxuXG4gICAgLyogc29ydCBvdXQgYm9yZGVycyAqL1xuICAgIHRoZWFkIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi5ib3JkZXJlZCB7XG4gICAgICB0aCB7IGJvcmRlci1ib3R0b206IDA7IGJvcmRlci1sZWZ0OiAwOyB9XG4gICAgICB0ZCB7IGJvcmRlci1sZWZ0OiAwOyBib3JkZXItcmlnaHQ6IDA7IGJvcmRlci1ib3R0b206IDA7IH1cbiAgICAgIHRyIHsgYm9yZGVyOiAwOyB9XG4gICAgICB0Ym9keSB0ciB7IGJvcmRlci1yaWdodDogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7IH1cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLy8gQ29sbGVjdGlvbnNcbi5jb2xsZWN0aW9uIHtcbiAgbWFyZ2luOiAkZWxlbWVudC10b3AtbWFyZ2luIDAgJGVsZW1lbnQtYm90dG9tLW1hcmdpbiAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAkY29sbGVjdGlvbi1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5jb2xsZWN0aW9uLWl0ZW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xsZWN0aW9uLWJnLWNvbG9yO1xuICAgIGxpbmUtaGVpZ2h0OiAkY29sbGVjdGlvbi1saW5lLWhlaWdodDtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sbGVjdGlvbi1ib3JkZXItY29sb3I7XG5cbiAgICAvLyBBdmF0YXIgQ29sbGVjdGlvblxuICAgICYuYXZhdGFyIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDg0cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDcycHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC5jaXJjbGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiA0MnB4O1xuICAgICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICAgIGkuY2lyY2xlIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDJweDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuXG4gICAgICAudGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG5cbiAgICAgIC5zZWNvbmRhcnktY29udGVudCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxNnB4O1xuICAgICAgICByaWdodDogMTZweDtcbiAgICAgIH1cblxuICAgIH1cblxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbGxlY3Rpb24tYWN0aXZlLWJnLWNvbG9yO1xuICAgICAgY29sb3I6ICRjb2xsZWN0aW9uLWFjdGl2ZS1jb2xvcjtcblxuICAgICAgLnNlY29uZGFyeS1jb250ZW50IHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGEuY29sbGVjdGlvbi1pdGVte1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zaXRpb246IC4yNXM7XG4gICAgY29sb3I6ICRjb2xsZWN0aW9uLWxpbmstY29sb3I7XG4gICAgJjpub3QoLmFjdGl2ZSkge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xsZWN0aW9uLWhvdmVyLWJnLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYud2l0aC1oZWFkZXIge1xuICAgIC5jb2xsZWN0aW9uLWhlYWRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sbGVjdGlvbi1iZy1jb2xvcjtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sbGVjdGlvbi1ib3JkZXItY29sb3I7XG4gICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgfVxuICAgIC5jb2xsZWN0aW9uLWl0ZW0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIH1cbiAgICAuY29sbGVjdGlvbi1pdGVtLmF2YXRhciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDcycHg7XG4gICAgfVxuICB9XG5cbn1cbi8vIE1hZGUgbGVzcyBzcGVjaWZpYyB0byBhbGxvdyBlYXNpZXIgb3ZlcnJpZGluZ1xuLnNlY29uZGFyeS1jb250ZW50IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbn1cbi5jb2xsYXBzaWJsZSAuY29sbGVjdGlvbiB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG5cblxuLy8gUmVzcG9uc2l2ZSBWaWRlb3Ncbi52aWRlby1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgaWZyYW1lLCBvYmplY3QsIGVtYmVkIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG59XG5cbi8vIFByb2dyZXNzIEJhclxuLnByb2dyZXNzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkcHJvZ3Jlc3MtYmFyLWNvbG9yLCA0MCUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBtYXJnaW46ICRlbGVtZW50LXRvcC1tYXJnaW4gMCAkZWxlbWVudC1ib3R0b20tbWFyZ2luIDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLmRldGVybWluYXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gICAgdHJhbnNpdGlvbjogd2lkdGggLjNzIGxpbmVhcjtcbiAgfVxuICAuaW5kZXRlcm1pbmF0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OjA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWxsLWNoYW5nZTogbGVmdCwgcmlnaHQ7XG4gICAgICAvLyBDdXN0b20gYmV6aWVyXG4gICAgICBhbmltYXRpb246IGluZGV0ZXJtaW5hdGUgMi4xcyBjdWJpYy1iZXppZXIoMC42NTAsIDAuODE1LCAwLjczNSwgMC4zOTUpIGluZmluaXRlO1xuXG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDowO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lsbC1jaGFuZ2U6IGxlZnQsIHJpZ2h0O1xuICAgICAgLy8gQ3VzdG9tIGJlemllclxuICAgICAgYW5pbWF0aW9uOiBpbmRldGVybWluYXRlLXNob3J0IDIuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0MCwgMC40NDAsIDEuMDAwKSBpbmZpbml0ZTtcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogMS4xNXM7XG4gICAgfVxuICB9XG59XG5Aa2V5ZnJhbWVzIGluZGV0ZXJtaW5hdGUge1xuICAgIDAlIHtcbiAgICAgIGxlZnQ6IC0zNSU7XG4gICAgICByaWdodDoxMDAlO1xuICAgIH1cbiAgICA2MCUge1xuICAgICAgbGVmdDogMTAwJTtcbiAgICAgIHJpZ2h0OiAtOTAlO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICByaWdodDogLTkwJTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgaW5kZXRlcm1pbmF0ZS1zaG9ydCB7XG4gICAgMCUge1xuICAgICAgbGVmdDogLTIwMCU7XG4gICAgICByaWdodDogMTAwJTtcbiAgICB9XG4gICAgNjAlIHtcbiAgICAgIGxlZnQ6IDEwNyU7XG4gICAgICByaWdodDogLTglO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgIGxlZnQ6IDEwNyU7XG4gICAgICByaWdodDogLTglO1xuICAgIH1cbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKlxuICBVdGlsaXR5IENsYXNzZXNcbioqKioqKioqKioqKioqKioqKiovXG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vLyBUZXh0IEFsaWduXG4ubGVmdC1hbGlnbiB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4ucmlnaHQtYWxpZ24ge1xuICB0ZXh0LWFsaWduOiByaWdodFxufVxuLmNlbnRlciwgLmNlbnRlci1hbGlnbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuLnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi8vIE5vIFRleHQgU2VsZWN0XG4ubm8tc2VsZWN0IHtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5jZW50ZXItYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnRydW5jYXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4ubm8tcGFkZGluZyB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cbiIsIi8vIEJhZGdlc1xuc3Bhbi5iYWRnZSB7XG4gIG1pbi13aWR0aDogM3JlbTtcbiAgcGFkZGluZzogMCA2cHg7XG4gIG1hcmdpbi1sZWZ0OiAxNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6ICRiYWRnZS1oZWlnaHQ7XG4gIGhlaWdodDogJGJhZGdlLWhlaWdodDtcbiAgY29sb3I6IGNvbG9yKCdncmV5JywgJ2Rhcmtlbi0xJyk7XG4gIGZsb2F0OiByaWdodDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAmLm5ldyB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFkZ2UtYmctY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB9XG4gICYubmV3OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBuZXdcIjtcbiAgfVxuXG4gICZbZGF0YS1iYWRnZS1jYXB0aW9uXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiIGF0dHIoZGF0YS1iYWRnZS1jYXB0aW9uKTtcbiAgfVxufVxubmF2IHVsIGEgc3Bhbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIGxpbmUtaGVpZ2h0OiAkYmFkZ2UtaGVpZ2h0O1xuICBoZWlnaHQ6ICRiYWRnZS1oZWlnaHQ7XG59XG5cbi8vIExpbmUgaGVpZ2h0IGNlbnRlcmluZ1xuLmNvbGxlY3Rpb24taXRlbSBzcGFuLmJhZGdlIHtcbiAgbWFyZ2luLXRvcDogY2FsYygjeyRjb2xsZWN0aW9uLWxpbmUtaGVpZ2h0IC8gMn0gLSAjeyRiYWRnZS1oZWlnaHQgLyAyfSk7XG59XG4uY29sbGFwc2libGUgc3Bhbi5iYWRnZSB7XG4gIG1hcmdpbi10b3A6IGNhbGMoI3skY29sbGFwc2libGUtbGluZS1oZWlnaHQgLyAyfSAtICN7JGJhZGdlLWhlaWdodCAvIDJ9KTtcbn1cbi5zaWRlLW5hdiBzcGFuLmJhZGdlIHtcbiAgbWFyZ2luLXRvcDogY2FsYygjeyRzaWRlbmF2LWxpbmUtaGVpZ2h0IC8gMn0gLSAjeyRiYWRnZS1oZWlnaHQgLyAyfSk7XG59XG4iLCIvKiBUaGlzIGlzIG5lZWRlZCBmb3Igc29tZSBtb2JpbGUgcGhvbmVzIHRvIGRpc3BsYXkgdGhlIEdvb2dsZSBJY29uIGZvbnQgcHJvcGVybHkgKi9cbi5tYXRlcmlhbC1pY29ucyB7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xufVxuIiwiLmNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEyODBweDtcbiAgd2lkdGg6IDkwJTtcbn1cbkBtZWRpYSAjeyRtZWRpdW0tYW5kLXVwfSB7XG4gIC5jb250YWluZXIge1xuICAgIHdpZHRoOiA4NSU7XG4gIH1cbn1cbkBtZWRpYSAjeyRsYXJnZS1hbmQtdXB9IHtcbiAgLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDcwJTtcbiAgfVxufVxuLmNvbnRhaW5lciAucm93IHtcbiAgbWFyZ2luLWxlZnQ6ICgtMSAqICRndXR0ZXItd2lkdGggLyAyKTtcbiAgbWFyZ2luLXJpZ2h0OiAoLTEgKiAkZ3V0dGVyLXdpZHRoIC8gMik7XG59XG5cbi5zZWN0aW9uIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXG4gICYubm8tcGFkIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gICYubm8tcGFkLWJvdCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgJi5uby1wYWQtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIE1peGlucyB0byBlbGltaW5hdGUgY29kZSByZXBpdGl0aW9uXG5AbWl4aW4gcmVzZXQtb2Zmc2V0IHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xufVxuQG1peGluIGdyaWQtY2xhc3Nlcygkc2l6ZSwgJGksICRwZXJjKSB7XG4gICYub2Zmc2V0LSN7JHNpemV9I3skaX0ge1xuICAgIG1hcmdpbi1sZWZ0OiAkcGVyYztcbiAgfVxuICAmLnB1bGwtI3skc2l6ZX0jeyRpfSB7XG4gICAgcmlnaHQ6ICRwZXJjO1xuICB9XG4gICYucHVzaC0jeyRzaXplfSN7JGl9IHtcbiAgICBsZWZ0OiAkcGVyYztcbiAgfVxufVxuXG5cbi5yb3cge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gIC8vIENsZWFyIGZsb2F0aW5nIGNoaWxkcmVuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cblxuICAuY29sIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBhZGRpbmc6IDAgJGd1dHRlci13aWR0aCAvIDI7XG4gICAgbWluLWhlaWdodDogMXB4O1xuXG4gICAgJltjbGFzcyo9XCJwdXNoLVwiXSxcbiAgICAmW2NsYXNzKj1cInB1bGwtXCJdIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAkaTogMTtcbiAgICBAd2hpbGUgJGkgPD0gJG51bS1jb2xzIHtcbiAgICAgICRwZXJjOiB1bnF1b3RlKCgxMDAgLyAoJG51bS1jb2xzIC8gJGkpKSArIFwiJVwiKTtcbiAgICAgICYucyN7JGl9IHtcbiAgICAgICAgd2lkdGg6ICRwZXJjO1xuICAgICAgICBAaW5jbHVkZSByZXNldC1vZmZzZXQ7XG4gICAgICB9XG4gICAgICAkaTogJGkgKyAxO1xuICAgIH1cblxuICAgICRpOiAxO1xuICAgIEB3aGlsZSAkaSA8PSAkbnVtLWNvbHMge1xuICAgICAgJHBlcmM6IHVucXVvdGUoKDEwMCAvICgkbnVtLWNvbHMgLyAkaSkpICsgXCIlXCIpO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jbGFzc2VzKFwic1wiLCAkaSwgJHBlcmMpO1xuICAgICAgJGk6ICRpICsgMTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbWVkaXVtLWFuZC11cH0ge1xuXG4gICAgICAkaTogMTtcbiAgICAgIEB3aGlsZSAkaSA8PSAkbnVtLWNvbHMge1xuICAgICAgICAkcGVyYzogdW5xdW90ZSgoMTAwIC8gKCRudW0tY29scyAvICRpKSkgKyBcIiVcIik7XG4gICAgICAgICYubSN7JGl9IHtcbiAgICAgICAgICB3aWR0aDogJHBlcmM7XG4gICAgICAgICAgQGluY2x1ZGUgcmVzZXQtb2Zmc2V0O1xuICAgICAgICB9XG4gICAgICAgICRpOiAkaSArIDFcbiAgICAgIH1cblxuICAgICAgJGk6IDE7XG4gICAgICBAd2hpbGUgJGkgPD0gJG51bS1jb2xzIHtcbiAgICAgICAgJHBlcmM6IHVucXVvdGUoKDEwMCAvICgkbnVtLWNvbHMgLyAkaSkpICsgXCIlXCIpO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNsYXNzZXMoXCJtXCIsICRpLCAkcGVyYyk7XG4gICAgICAgICRpOiAkaSArIDE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JGxhcmdlLWFuZC11cH0ge1xuXG4gICAgICAkaTogMTtcbiAgICAgIEB3aGlsZSAkaSA8PSAkbnVtLWNvbHMge1xuICAgICAgICAkcGVyYzogdW5xdW90ZSgoMTAwIC8gKCRudW0tY29scyAvICRpKSkgKyBcIiVcIik7XG4gICAgICAgICYubCN7JGl9IHtcbiAgICAgICAgICB3aWR0aDogJHBlcmM7XG4gICAgICAgICAgQGluY2x1ZGUgcmVzZXQtb2Zmc2V0O1xuICAgICAgICB9XG4gICAgICAgICRpOiAkaSArIDE7XG4gICAgICB9XG5cbiAgICAgICRpOiAxO1xuICAgICAgQHdoaWxlICRpIDw9ICRudW0tY29scyB7XG4gICAgICAgICRwZXJjOiB1bnF1b3RlKCgxMDAgLyAoJG51bS1jb2xzIC8gJGkpKSArIFwiJVwiKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jbGFzc2VzKFwibFwiLCAkaSwgJHBlcmMpO1xuICAgICAgICAkaTogJGkgKyAxO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAjeyRleHRyYS1sYXJnZS1hbmQtdXB9IHtcblxuICAgICAgJGk6IDE7XG4gICAgICBAd2hpbGUgJGkgPD0gJG51bS1jb2xzIHtcbiAgICAgICAgJHBlcmM6IHVucXVvdGUoKDEwMCAvICgkbnVtLWNvbHMgLyAkaSkpICsgXCIlXCIpO1xuICAgICAgICAmLnhsI3skaX0ge1xuICAgICAgICAgIHdpZHRoOiAkcGVyYztcbiAgICAgICAgICBAaW5jbHVkZSByZXNldC1vZmZzZXQ7XG4gICAgICAgIH1cbiAgICAgICAgJGk6ICRpICsgMTtcbiAgICAgIH1cblxuICAgICAgJGk6IDE7XG4gICAgICBAd2hpbGUgJGkgPD0gJG51bS1jb2xzIHtcbiAgICAgICAgJHBlcmM6IHVucXVvdGUoKDEwMCAvICgkbnVtLWNvbHMgLyAkaSkpICsgXCIlXCIpO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNsYXNzZXMoXCJ4bFwiLCAkaSwgJHBlcmMpO1xuICAgICAgICAkaTogJGkgKyAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwibmF2IHtcbiAgJi5uYXYtZXh0ZW5kZWQge1xuICAgIGhlaWdodDogYXV0bztcblxuICAgIC5uYXYtd3JhcHBlciB7XG4gICAgICBtaW4taGVpZ2h0OiAkbmF2YmFyLWhlaWdodC1tb2JpbGU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLm5hdi1jb250ZW50IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgfVxuICB9XG5cbiAgY29sb3I6ICRuYXZiYXItZm9udC1jb2xvcjtcbiAgQGV4dGVuZCAuei1kZXB0aC0xO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJG5hdmJhci1oZWlnaHQtbW9iaWxlO1xuICBsaW5lLWhlaWdodDogJG5hdmJhci1saW5lLWhlaWdodC1tb2JpbGU7XG5cbiAgYSB7IGNvbG9yOiAkbmF2YmFyLWZvbnQtY29sb3I7IH1cblxuICBpLFxuICBbY2xhc3NePVwibWRpLVwiXSwgW2NsYXNzKj1cIm1kaS1cIl0sXG4gIGkubWF0ZXJpYWwtaWNvbnMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBoZWlnaHQ6ICRuYXZiYXItaGVpZ2h0LW1vYmlsZTtcbiAgICBsaW5lLWhlaWdodDogJG5hdmJhci1saW5lLWhlaWdodC1tb2JpbGU7XG4gIH1cblxuICAubmF2LXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICBAbWVkaWEgI3skbGFyZ2UtYW5kLXVwfSB7XG4gICAgYS5idXR0b24tY29sbGFwc2UgeyBkaXNwbGF5OiBub25lOyB9XG4gIH1cblxuXG4gIC8vIENvbGxhcHNlIGJ1dHRvblxuICAuYnV0dG9uLWNvbGxhcHNlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBoZWlnaHQ6ICRuYXZiYXItaGVpZ2h0LW1vYmlsZTtcbiAgICBtYXJnaW46IDAgMThweDtcblxuICAgIGkge1xuICAgICAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodC1tb2JpbGU7XG4gICAgICBsaW5lLWhlaWdodDogJG5hdmJhci1saW5lLWhlaWdodC1tb2JpbGU7XG4gICAgfVxuICB9XG5cblxuICAvLyBMb2dvXG4gIC5icmFuZC1sb2dvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29sb3I6ICRuYXZiYXItZm9udC1jb2xvcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAmLmNlbnRlciB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JG1lZGl1bS1hbmQtZG93bn0ge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuXG4gICAgICAmLmxlZnQsICYucmlnaHQge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYubGVmdCB7IGxlZnQ6IDAuNXJlbTsgfVxuICAgICAgJi5yaWdodCB7XG4gICAgICAgIHJpZ2h0OiAwLjVyZW07XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5yaWdodCB7XG4gICAgICByaWdodDogMC41cmVtO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICBpLFxuICAgIFtjbGFzc149XCJtZGktXCJdLCBbY2xhc3MqPVwibWRpLVwiXSxcbiAgICBpLm1hdGVyaWFsLWljb25zIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gVGl0bGVcbiAgLm5hdi10aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICBwYWRkaW5nOiAyOHB4IDA7XG4gIH1cblxuXG4gIC8vIE5hdmJhciBMaW5rc1xuICB1bCB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgbGkge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3M7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuMSk7XG4gICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3M7XG4gICAgICBmb250LXNpemU6ICRuYXZiYXItZm9udC1zaXplO1xuICAgICAgY29sb3I6ICRuYXZiYXItZm9udC1jb2xvcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAmLmJ0biwgJi5idG4tbGFyZ2UsICYuYnRuLWZsYXQsICYuYnRuLWZsb2F0aW5nIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcblxuICAgICAgICAmID4gLm1hdGVyaWFsLWljb25zIHtcbiAgICAgICAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cblxuICAvLyBOYXZiYXIgU2VhcmNoIEZvcm1cbiAgZm9ybSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLmlucHV0LWZpZWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgaW5wdXQge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG5cbiAgICAgICY6Zm9jdXMsICZbdHlwZT10ZXh0XTp2YWxpZCwgJlt0eXBlPXBhc3N3b3JkXTp2YWxpZCxcbiAgICAgICZbdHlwZT1lbWFpbF06dmFsaWQsICZbdHlwZT11cmxdOnZhbGlkLCAmW3R5cGU9ZGF0ZV06dmFsaWQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcblxuICAgICAgaSB7XG4gICAgICAgIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC43KTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjNzO1xuICAgICAgfVxuICAgICAgJi5hY3RpdmUgaSB7IGNvbG9yOiAkbmF2YmFyLWZvbnQtY29sb3I7IH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRml4ZWQgTmF2YmFyXG4ubmF2YmFyLWZpeGVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6ICRuYXZiYXItaGVpZ2h0LW1vYmlsZTtcbiAgei1pbmRleDogOTk3O1xuXG4gIG5hdiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICB9XG59XG5AbWVkaWEgI3skbWVkaXVtLWFuZC11cH0ge1xuICBuYXYubmF2LWV4dGVuZGVkIC5uYXYtd3JhcHBlciB7XG4gICAgbWluLWhlaWdodDogJG5hdmJhci1oZWlnaHQ7XG4gIH1cbiAgbmF2LCBuYXYgLm5hdi13cmFwcGVyIGksIG5hdiBhLmJ1dHRvbi1jb2xsYXBzZSwgbmF2IGEuYnV0dG9uLWNvbGxhcHNlIGkge1xuICAgIGhlaWdodDogJG5hdmJhci1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRuYXZiYXItbGluZS1oZWlnaHQ7XG4gIH1cbiAgLm5hdmJhci1maXhlZCB7XG4gICAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodDtcbiAgfVxufVxuIiwiQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCI7XG4gICAgc3JjOiBsb2NhbChSb2JvdG8gVGhpbiksXG4gICAgICAgIHVybChcIiN7JHJvYm90by1mb250LXBhdGh9Um9ib3RvLVRoaW4ud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIiN7JHJvYm90by1mb250LXBhdGh9Um9ib3RvLVRoaW4ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuXG4gICAgZm9udC13ZWlnaHQ6IDEwMDtcbn1cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgIHNyYzogbG9jYWwoUm9ib3RvIExpZ2h0KSxcbiAgICAgICAgdXJsKFwiI3skcm9ib3RvLWZvbnQtcGF0aH1Sb2JvdG8tTGlnaHQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIiN7JHJvYm90by1mb250LXBhdGh9Um9ib3RvLUxpZ2h0LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIjtcbiAgICBzcmM6IGxvY2FsKFJvYm90byBSZWd1bGFyKSwgXG4gICAgICAgIHVybChcIiN7JHJvYm90by1mb250LXBhdGh9Um9ib3RvLVJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIiN7JHJvYm90by1mb250LXBhdGh9Um9ib3RvLVJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiO1xuICAgIHNyYzogbG9jYWwoUm9ib3RvIE1lZGl1bSksXG4gICAgICAgIHVybChcIiN7JHJvYm90by1mb250LXBhdGh9Um9ib3RvLU1lZGl1bS53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgdXJsKFwiI3skcm9ib3RvLWZvbnQtcGF0aH1Sb2JvdG8tTWVkaXVtLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIjtcbiAgICBzcmM6IGxvY2FsKFJvYm90byBCb2xkKSxcbiAgICAgICAgdXJsKFwiI3skcm9ib3RvLWZvbnQtcGF0aH1Sb2JvdG8tQm9sZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgdXJsKFwiI3skcm9ib3RvLWZvbnQtcGF0aH1Sb2JvdG8tQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbiIsIlxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuaHRtbHtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XG4gICAgZm9udC1zaXplOiAxNC41cHg7XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsYXJnZS1zY3JlZW4pIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gIH1cblxuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICRvZmYtYmxhY2s7XG59XG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcblx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0bGluZS1oZWlnaHQ6IDEuMTtcbn1cblxuLy8gSGVhZGVyIFN0eWxlc1xuaDEgYSwgaDIgYSwgaDMgYSwgaDQgYSwgaDUgYSwgaDYgYSB7IGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG5oMSB7IGZvbnQtc2l6ZTogJGgxLWZvbnRzaXplOyBsaW5lLWhlaWdodDogMTEwJTsgbWFyZ2luOiAoJGgxLWZvbnRzaXplIC8gMikgMCAoJGgxLWZvbnRzaXplIC8gMi41KSAwO31cbmgyIHsgZm9udC1zaXplOiAkaDItZm9udHNpemU7IGxpbmUtaGVpZ2h0OiAxMTAlOyBtYXJnaW46ICgkaDItZm9udHNpemUgLyAyKSAwICgkaDItZm9udHNpemUgLyAyLjUpIDA7fVxuaDMgeyBmb250LXNpemU6ICRoMy1mb250c2l6ZTsgbGluZS1oZWlnaHQ6IDExMCU7IG1hcmdpbjogKCRoMy1mb250c2l6ZSAvIDIpIDAgKCRoMy1mb250c2l6ZSAvIDIuNSkgMDt9XG5oNCB7IGZvbnQtc2l6ZTogJGg0LWZvbnRzaXplOyBsaW5lLWhlaWdodDogMTEwJTsgbWFyZ2luOiAoJGg0LWZvbnRzaXplIC8gMikgMCAoJGg0LWZvbnRzaXplIC8gMi41KSAwO31cbmg1IHsgZm9udC1zaXplOiAkaDUtZm9udHNpemU7IGxpbmUtaGVpZ2h0OiAxMTAlOyBtYXJnaW46ICgkaDUtZm9udHNpemUgLyAyKSAwICgkaDUtZm9udHNpemUgLyAyLjUpIDA7fVxuaDYgeyBmb250LXNpemU6ICRoNi1mb250c2l6ZTsgbGluZS1oZWlnaHQ6IDExMCU7IG1hcmdpbjogKCRoNi1mb250c2l6ZSAvIDIpIDAgKCRoNi1mb250c2l6ZSAvIDIuNSkgMDt9XG5cbi8vIFRleHQgU3R5bGVzXG5lbSB7IGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuc3Ryb25nIHsgZm9udC13ZWlnaHQ6IDUwMDsgfVxuc21hbGwgeyBmb250LXNpemU6IDc1JTsgfVxuLmxpZ2h0IHsgZm9udC13ZWlnaHQ6IDMwMDsgfVxuLnRoaW4geyBmb250LXdlaWdodDogMjAwOyB9XG5cblxuLmZsb3ctdGV4dHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgJGk6IDA7XG4gIEB3aGlsZSAkaSA8PSAkaW50ZXJ2YWxzIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAzNjAgKyAoJGkgKiAkaW50ZXJ2YWwtc2l6ZSkpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtICogKDEgKyAoLjAyICogJGkpKTtcbiAgICB9XG4gICAgJGk6ICRpICsgMTtcbiAgfVxuXG4gIC8vIEhhbmRsZSBiZWxvdyAzNjBweCBzY3JlZW5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG59IiwiLy8gU2NhbGUgdHJhbnNpdGlvblxuLnNjYWxlLXRyYW5zaXRpb24ge1xuICAmLnNjYWxlLW91dCB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmLnNjYWxlLWluIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoMC41MywgMC4wMSwgMC4zNiwgMS42MykgIWltcG9ydGFudDtcbn0iLCJcblxuLmNhcmQtcGFuZWwge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IC4yNXM7XG4gIHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG4gIG1hcmdpbjogJGVsZW1lbnQtdG9wLW1hcmdpbiAwICRlbGVtZW50LWJvdHRvbS1tYXJnaW4gMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBAZXh0ZW5kIC56LWRlcHRoLTE7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnLWNvbG9yO1xufVxuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAkZWxlbWVudC10b3AtbWFyZ2luIDAgJGVsZW1lbnQtYm90dG9tLW1hcmdpbiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZy1jb2xvcjtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuMjVzO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIEBleHRlbmQgLnotZGVwdGgtMTtcblxuXG4gIC5jYXJkLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAmLmFjdGl2YXRvciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2FyZCBTaXplc1xuICAmLnNtYWxsLCAmLm1lZGl1bSwgJi5sYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmNhcmQtaW1hZ2Uge1xuICAgICAgbWF4LWhlaWdodDogNjAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gICAgLmNhcmQtaW1hZ2UgKyAuY2FyZC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IDQwJTtcbiAgICB9XG4gICAgLmNhcmQtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gICAgLmNhcmQtYWN0aW9uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAmLnNtYWxsIHtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICB9XG5cbiAgJi5tZWRpdW0ge1xuICAgIGhlaWdodDogNDAwcHg7XG4gIH1cblxuICAmLmxhcmdlIHtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBDYXJkc1xuICAmLmhvcml6b250YWwge1xuICAgICYuc21hbGwsICYubWVkaXVtLCAmLmxhcmdlIHtcbiAgICAgIC5jYXJkLWltYWdlIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAuY2FyZC1pbWFnZSB7XG4gICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIGltZyB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweCAwIDAgMnB4O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkLXN0YWNrZWQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4OiAxO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAuY2FyZC1jb250ZW50IHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN0aWNreSBBY3Rpb24gU2VjdGlvblxuICAmLnN0aWNreS1hY3Rpb24ge1xuICAgIC5jYXJkLWFjdGlvbiB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgIC5jYXJkLXJldmVhbCB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgcGFkZGluZy1ib3R0b206IDY0cHg7XG4gICAgfVxuICB9XG5cblxuXG5cbiAgLmNhcmQtaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vIEltYWdlIGJhY2tncm91bmQgZm9yIGNvbnRlbnRcbiAgICBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHggMnB4IDAgMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5jYXJkLXRpdGxlIHtcbiAgICAgIGNvbG9yOiAkY2FyZC1iZy1jb2xvcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAkY2FyZC1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC5jYXJkLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDJweCAycHg7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgICAuY2FyZC10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuXG4gICAgICBpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmNhcmQtYWN0aW9uIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDJweCAycHg7XG4gICAgfVxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDE2MCwxNjAsMTYwLC4yKTtcbiAgICBwYWRkaW5nOiAxNnB4ICRjYXJkLXBhZGRpbmc7XG5cbiAgICBhOm5vdCguYnRuKTpub3QoLmJ0bi1sYXJnZSk6bm90KC5idG4tZmxvYXRpbmcpIHtcbiAgICAgIGNvbG9yOiAkY2FyZC1saW5rLWNvbG9yO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZC1wYWRkaW5nO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2U7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAmOmhvdmVyIHsgY29sb3I6ICRjYXJkLWxpbmstY29sb3ItbGlnaHQ7IH1cbiAgICB9XG4gIH1cblxuICAuY2FyZC1yZXZlYWwge1xuICAgIHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnLWNvbG9yO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIC5jYXJkLXRpdGxlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiI3RvYXN0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAwMDA7XG5cbiAgQG1lZGlhICN7JHNtYWxsLWFuZC1kb3dufSB7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIGJvdHRvbTogMCU7XG4gIH1cbiAgQG1lZGlhICN7JG1lZGl1bS1vbmx5fSB7XG4gICAgbGVmdDogNSU7XG4gICAgYm90dG9tOiA3JTtcbiAgICBtYXgtd2lkdGg6IDkwJTtcbiAgfVxuICBAbWVkaWEgI3skbGFyZ2UtYW5kLXVwfSB7XG4gICAgdG9wOiAxMCU7XG4gICAgcmlnaHQ6IDclO1xuICAgIG1heC13aWR0aDogODYlO1xuICB9XG59XG5cbi50b2FzdCB7XG4gIEBleHRlbmQgLnotZGVwdGgtMTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0b3A6IDM1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6MTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiAkdG9hc3QtaGVpZ2h0O1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWNvbG9yO1xuICBwYWRkaW5nOiAxMHB4IDI1cHg7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogJHRvYXN0LXRleHQtY29sb3I7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gIC5idG4sIC5idG4tZmxhdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICB9XG5cbiAgJi5yb3VuZGVke1xuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gIH1cblxuICBAbWVkaWEgI3skc21hbGwtYW5kLWRvd259IHtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgQG1lZGlhICN7JG1lZGl1bS1vbmx5fSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgQG1lZGlhICN7JGxhcmdlLWFuZC11cH0ge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG59XG4iLCIudGFicyB7XG4gICYudGFicy10cmFuc3BhcmVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAudGFiIGEsXG4gICAgLnRhYi5kaXNhYmxlZCBhLFxuICAgIC50YWIuZGlzYWJsZWQgYTpob3ZlciB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjcpO1xuICAgIH1cblxuICAgIC50YWIgYTpob3ZlcixcbiAgICAudGFiIGEuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cblxuICAgIC5pbmRpY2F0b3Ige1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cblxuICAmLnRhYnMtZml4ZWQtd2lkdGgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAudGFiIHtcbiAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gICAgICAtd2Via2l0LWZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAtbXMtZmxleC1wb3NpdGl2ZTogMTtcbiAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cbiAgfVxuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFicy1iZy1jb2xvcjtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLnRhYiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogNDhweDtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgIGEge1xuICAgICAgJjpob3ZlcixcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAkdGFicy10ZXh0LWNvbG9yO1xuICAgICAgfVxuXG4gICAgICBjb2xvcjogcmdiYSgkdGFicy10ZXh0LWNvbG9yLCAuNyk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogMCAyNHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI4cyBlYXNlO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQgYSxcbiAgICAmLmRpc2FibGVkIGE6aG92ZXIge1xuICAgICAgY29sb3I6IHJnYmEoJHRhYnMtdGV4dC1jb2xvciwgLjcpO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cbiAgfVxuICAuaW5kaWNhdG9yIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJzLXVuZGVybGluZS1jb2xvcjtcbiAgICB3aWxsLWNoYW5nZTogbGVmdCwgcmlnaHQ7XG4gIH1cbn1cblxuLy8gRml4ZWQgc2lkZU5hdiBoaWRlIG9uIHNtYWxsZXJcbkBtZWRpYSAjeyRtZWRpdW0tYW5kLWRvd259IHtcbiAgLnRhYnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAudGFiIHtcbiAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gICAgICAtd2Via2l0LWZsZXgtZ3JvdzogMTtcbiAgICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAxO1xuICAgICAgZmxleC1ncm93OiAxO1xuXG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogMCAxMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1hdGVyaWFsLXRvb2x0aXAge1xuICBwYWRkaW5nOiAxMHB4IDhweDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB6LWluZGV4OiAyMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBjb2xvcjogI2ZmZjtcbiAgbWluLWhlaWdodDogMzZweDtcbiAgbGluZS1oZWlnaHQ6IDEyMCU7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDRweCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDdweDtcbiAgd2lkdGg6IDE0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMjMyO1xuICB6LWluZGV4OiAtMTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDAlO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4iLCIvLyBzaGFyZWQgc3R5bGVzXG4uYnRuLFxuLmJ0bi1mbGF0IHtcbiAgYm9yZGVyOiAkYnV0dG9uLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAkYnV0dG9uLWhlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRidXR0b24taGVpZ2h0O1xuICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC8vIEdldHMgcmlkIG9mIHRhcCBhY3RpdmUgc3RhdGVcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLy8gRGlzYWJsZWQgc2hhcmVkIHN0eWxlXG4uYnRuLmRpc2FibGVkLFxuLmJ0bi1mbG9hdGluZy5kaXNhYmxlZCxcbi5idG4tbGFyZ2UuZGlzYWJsZWQsXG4uYnRuLWZsYXQuZGlzYWJsZWQsXG4uYnRuOmRpc2FibGVkLFxuLmJ0bi1mbG9hdGluZzpkaXNhYmxlZCxcbi5idG4tbGFyZ2U6ZGlzYWJsZWQsXG4uYnRuLWZsYXQ6ZGlzYWJsZWQsXG4uYnRuW2Rpc2FibGVkXSxcbi5idG4tZmxvYXRpbmdbZGlzYWJsZWRdLFxuLmJ0bi1sYXJnZVtkaXNhYmxlZF0sXG4uYnRuLWZsYXRbZGlzYWJsZWRdIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogJGJ1dHRvbi1kaXNhYmxlZC1jb2xvciAhaW1wb3J0YW50O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRidXR0b24tZGlzYWJsZWQtY29sb3IgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBTaGFyZWQgaWNvbiBzdHlsZXNcbi5idG4sXG4uYnRuLWZsb2F0aW5nLFxuLmJ0bi1sYXJnZSxcbi5idG4tZmxhdCB7XG4gIGZvbnQtc2l6ZTogJGJ1dHRvbi1mb250LXNpemU7XG4gIG91dGxpbmU6IDA7XG5cbiAgaSB7XG4gICAgZm9udC1zaXplOiAkYnV0dG9uLWljb24tZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFNoYXJlZCBmb2N1cyBidXR0b24gc3R5bGVcbi5idG4sXG4uYnRuLWZsb2F0aW5nIHtcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRidXR0b24tcmFpc2VkLWJhY2tncm91bmQsIDEwJSk7XG4gIH1cbn1cblxuLy8gUmFpc2VkIEJ1dHRvblxuLmJ0biB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICRidXR0b24tcmFpc2VkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICBAZXh0ZW5kIC56LWRlcHRoLTE7XG4gIHRyYW5zaXRpb246IC4ycyBlYXNlLW91dDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tcmFpc2VkLWJhY2tncm91bmQtaG92ZXI7XG4gICAgQGV4dGVuZCAuei1kZXB0aC0xLWhhbGY7XG4gIH1cbn1cblxuLy8gRmxvYXRpbmcgYnV0dG9uXG4uYnRuLWZsb2F0aW5nIHtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1mbG9hdGluZy1iYWNrZ3JvdW5kLWhvdmVyO1xuICAgIEBleHRlbmQgLnotZGVwdGgtMS1oYWxmO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cblxuICAmLmJ0bi1sYXJnZSB7XG4gICAgJi5oYWxmd2F5LWZhYiB7XG4gICAgICBib3R0b206IC0kYnV0dG9uLWZsb2F0aW5nLWxhcmdlLXNpemUgLyAyO1xuICAgIH1cblxuICAgIHdpZHRoOiAkYnV0dG9uLWZsb2F0aW5nLWxhcmdlLXNpemU7XG4gICAgaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLWxhcmdlLXNpemU7XG4gICAgaSB7XG4gICAgICBsaW5lLWhlaWdodDogJGJ1dHRvbi1mbG9hdGluZy1sYXJnZS1zaXplO1xuICAgIH1cbiAgfVxuXG4gICYuaGFsZndheS1mYWIge1xuICAgICYubGVmdCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDI0cHg7XG4gICAgfVxuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAyNHB4O1xuICAgIGJvdHRvbTogLSRidXR0b24tZmxvYXRpbmctc2l6ZSAvIDI7XG4gIH1cblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAkYnV0dG9uLWZsb2F0aW5nLWNvbG9yO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAkYnV0dG9uLWZsb2F0aW5nLXNpemU7XG4gIGhlaWdodDogJGJ1dHRvbi1mbG9hdGluZy1zaXplO1xuICBsaW5lLWhlaWdodDogJGJ1dHRvbi1mbG9hdGluZy1zaXplO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWZsb2F0aW5nLWJhY2tncm91bmQ7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tZmxvYXRpbmctcmFkaXVzO1xuICBAZXh0ZW5kIC56LWRlcHRoLTE7XG4gIHRyYW5zaXRpb246IC4zcztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gIGkge1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICRidXR0b24tZmxvYXRpbmctY29sb3I7XG4gICAgZm9udC1zaXplOiAkYnV0dG9uLWxhcmdlLWljb24tZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLXNpemU7XG4gIH1cbn1cblxuLy8gYnV0dG9uIGZpeFxuYnV0dG9uLmJ0bi1mbG9hdGluZyB7XG4gIGJvcmRlcjogJGJ1dHRvbi1ib3JkZXI7XG59XG5cbi8vIEZpeGVkIEFjdGlvbiBCdXR0b25cbi5maXhlZC1hY3Rpb24tYnRuIHtcbiAgJi5hY3RpdmUge1xuICAgIHVsIHtcbiAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG4gIH1cblxuICAmLmhvcml6b250YWwge1xuICAgIHBhZGRpbmc6IDAgMCAwIDE1cHg7XG5cbiAgICB1bCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHJpZ2h0OiA2NHB4O1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgd2lkdGg6IDUwMHB4OyAvKndpZHRoIDEwMCUgb25seSBnb2VzIHRvIHdpZHRoIG9mIGJ1dHRvbiBjb250YWluZXIgKi9cblxuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMTVweCAxNXB4IDAgMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnRvb2xiYXIge1xuICAgICYuYWN0aXZlIHtcbiAgICAgICYgPiBhIGkge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLWxhcmdlLXNpemU7XG5cbiAgICB1bCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6ICRidXR0b24tZmxvYXRpbmctbGFyZ2Utc2l6ZTtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAyM3B4O1xuICBib3R0b206IDIzcHg7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB6LWluZGV4OiA5OTg7XG5cbiAgdWwge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDY0cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuXG4gICAgYS5idG4tZmxvYXRpbmcge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cblxuICAuZmFiLWJhY2tkcm9wIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgd2lkdGg6ICRidXR0b24tZmxvYXRpbmctc2l6ZTtcbiAgICBoZWlnaHQ6ICRidXR0b24tZmxvYXRpbmctc2l6ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWZsb2F0aW5nLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1mbG9hdGluZy1yYWRpdXM7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxufVxuXG4vLyBGbGF0IGJ1dHRvblxuLmJ0bi1mbGF0IHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAkYnV0dG9uLWZsYXQtY29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnM7XG5cbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuMSk7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4yKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRidXR0b24tZmxhdC1kaXNhYmxlZC1jb2xvciAhaW1wb3J0YW50O1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuXG4vLyBMYXJnZSBidXR0b25cbi5idG4tbGFyZ2Uge1xuICBAZXh0ZW5kIC5idG47XG4gIGhlaWdodDogJGJ1dHRvbi1sYXJnZS1oZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLWxhcmdlLWhlaWdodDtcblxuICBpIHtcbiAgICBmb250LXNpemU6ICRidXR0b24tbGFyZ2UtaWNvbi1mb250LXNpemU7XG4gIH1cbn1cblxuLy8gQmxvY2sgYnV0dG9uXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iLCIuZHJvcGRvd24tY29udGVudCB7XG4gIEBleHRlbmQgLnotZGVwdGgtMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnLWNvbG9yO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1pbi13aWR0aDogMTAwcHg7XG4gIG1heC1oZWlnaHQ6IDY1MHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDk5OTtcbiAgd2lsbC1jaGFuZ2U6IHdpZHRoLCBoZWlnaHQ7XG5cbiAgbGkge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbG9yOiAkb2ZmLWJsYWNrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBtaW4taGVpZ2h0OiAkZHJvcGRvd24taXRlbS1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG4gICAgJjpob3ZlciwgJi5hY3RpdmUsICYuc2VsZWN0ZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWhvdmVyLWJnLWNvbG9yO1xuICAgIH1cblxuICAgICYuYWN0aXZlLnNlbGVjdGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkZHJvcGRvd24taG92ZXItYmctY29sb3IsIDUlKTtcbiAgICB9XG5cbiAgICAmLmRpdmlkZXIge1xuICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgIH1cblxuICAgICYgPiBhLCAmID4gc3BhbiB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgIHBhZGRpbmc6ICgoJGRyb3Bkb3duLWl0ZW0taGVpZ2h0IC0gMjIpIC8gMikgMTZweDtcbiAgICB9XG5cbiAgICAmID4gc3BhbiA+IGxhYmVsIHtcbiAgICAgIHRvcDogMXB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIGhlaWdodDogMThweDtcbiAgICB9XG5cbiAgICAvLyBJY29uIGFsaWdubWVudCBvdmVycmlkZVxuICAgICYgPiBhID4gaSB7XG4gICAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luOiAwIDI0cHggMCAwO1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgfVxuICB9XG59XG5cbi8vIElucHV0IGZpZWxkIHNwZWNpZmljaXR5IGJ1Z2ZpeFxuLmlucHV0LWZpZWxkLmNvbCAuZHJvcGRvd24tY29udGVudCBbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwge1xuICB0b3A6IDFweDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxOHB4O1xufVxuXG4iLCJcbi8qIVxuICogV2F2ZXMgdjAuNi4wXG4gKiBodHRwOi8vZmlhbi5teS5pZC9XYXZlc1xuICpcbiAqIENvcHlyaWdodCAyMDE0IEFsZmlhbmEgRS4gU2lidWVhIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogaHR0cHM6Ly9naXRodWIuY29tL2ZpYW5zL1dhdmVzL2Jsb2IvbWFzdGVyL0xJQ0VOU0VcbiAqL1xuXG5cbi53YXZlcy1lZmZlY3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgei1pbmRleDogMTtcbiAgdHJhbnNpdGlvbjogLjNzIGVhc2Utb3V0O1xuXG4gIC53YXZlcy1yaXBwbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIG1hcmdpbi10b3A6LTEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6LTEwcHg7XG4gICAgb3BhY2l0eTogMDtcblxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC4yKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC43cyBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC8vIFdhdmVzIENvbG9yc1xuICAmLndhdmVzLWxpZ2h0IC53YXZlcy1yaXBwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40NSk7XG4gIH1cbiAgJi53YXZlcy1yZWQgLndhdmVzLXJpcHBsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDQsIDY3LCA1NCwgLjcwKTtcbiAgfVxuICAmLndhdmVzLXllbGxvdyAud2F2ZXMtcmlwcGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjM1LCA1OSwgLjcwKTtcbiAgfVxuICAmLndhdmVzLW9yYW5nZSAud2F2ZXMtcmlwcGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMTUyLCAwLCAuNzApO1xuICB9XG4gICYud2F2ZXMtcHVycGxlIC53YXZlcy1yaXBwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTU2LCAzOSwgMTc2LCAwLjcwKTtcbiAgfVxuICAmLndhdmVzLWdyZWVuIC53YXZlcy1yaXBwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNzYsIDE3NSwgODAsIDAuNzApO1xuICB9XG4gICYud2F2ZXMtdGVhbCAud2F2ZXMtcmlwcGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDE1MCwgMTM2LCAwLjcwKTtcbiAgfVxuXG4gIC8vIFN0eWxlIGlucHV0IGJ1dHRvbiBidWcuXG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIGlucHV0W3R5cGU9XCJyZXNldFwiXSwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgfVxuXG4gIGltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG59XG5cbi53YXZlcy1ub3RyYW5zaXRpb24ge1xuICB0cmFuc2l0aW9uOiBub25lICN7XCIhaW1wb3J0YW50XCJ9O1xufVxuXG4ud2F2ZXMtY2lyY2xlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAtd2Via2l0LW1hc2staW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgd2hpdGUgMTAwJSwgYmxhY2sgMTAwJSk7XG59XG5cbi53YXZlcy1pbnB1dC13cmFwcGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yZW07XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG5cbiAgLndhdmVzLWJ1dHRvbi1pbnB1dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLndhdmVzLWNpcmNsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDIuNWVtO1xuICBoZWlnaHQ6IDIuNWVtO1xuICBsaW5lLWhlaWdodDogMi41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLXdlYmtpdC1tYXNrLWltYWdlOiBub25lO1xufVxuXG4ud2F2ZXMtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogRmlyZWZveCBCdWc6IGxpbmsgbm90IHRyaWdnZXJlZCAqL1xuLndhdmVzLWVmZmVjdCAud2F2ZXMtcmlwcGxlIHtcbiAgei1pbmRleDogLTE7XG59IiwiLm1vZGFsIHtcbiAgQGV4dGVuZCAuei1kZXB0aC00O1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gIHBhZGRpbmc6IDA7XG4gIG1heC1oZWlnaHQ6IDcwJTtcbiAgd2lkdGg6IDU1JTtcbiAgbWFyZ2luOiBhdXRvO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgd2lsbC1jaGFuZ2U6IHRvcCwgb3BhY2l0eTtcblxuICBAbWVkaWEgI3skbWVkaXVtLWFuZC1kb3dufSB7XG4gICB3aWR0aDogODAlO1xuICB9XG5cbiAgaDEsaDIsaDMsaDQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgcGFkZGluZzogMjRweDtcbiAgfVxuICAubW9kYWwtY2xvc2Uge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIC5tb2RhbC1mb290ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAycHggMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gICAgcGFkZGluZzogNHB4IDZweDtcbiAgICBoZWlnaHQ6IDU2cHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAuYnRuLCAuYnRuLWZsYXQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luOiA2cHggMDtcbiAgICB9XG4gIH1cbn1cbi5tb2RhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk7XG4gIHRvcDogLTEwMHB4O1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEyNSU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBkaXNwbGF5OiBub25lO1xuXG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xufVxuXG4vLyBNb2RhbCB3aXRoIGZpeGVkIGFjdGlvbiBmb290ZXJcbi5tb2RhbC5tb2RhbC1maXhlZC1mb290ZXIge1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDcwJTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gNTZweCk7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gIH1cbn1cblxuLy8gTW9kYWwgQm90dG9tIFNoZWV0IFN0eWxlXG4ubW9kYWwuYm90dG9tLXNoZWV0IHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IC0xMDAlO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiA0NSU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHdpbGwtY2hhbmdlOiBib3R0b20sIG9wYWNpdHk7XG59XG4iLCIuY29sbGFwc2libGUge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbGxhcHNpYmxlLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGNvbGxhcHNpYmxlLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sbGFwc2libGUtYm9yZGVyLWNvbG9yO1xuICBtYXJnaW46ICRlbGVtZW50LXRvcC1tYXJnaW4gMCAkZWxlbWVudC1ib3R0b20tbWFyZ2luIDA7XG4gIEBleHRlbmQgLnotZGVwdGgtMTtcbn1cblxuLmNvbGxhcHNpYmxlLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1pbi1oZWlnaHQ6ICRjb2xsYXBzaWJsZS1oZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY29sbGFwc2libGUtbGluZS1oZWlnaHQ7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbGxhcHNpYmxlLWhlYWRlci1jb2xvcjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xsYXBzaWJsZS1ib3JkZXItY29sb3I7XG5cbiAgaSB7XG4gICAgd2lkdGg6IDJyZW07XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6ICRjb2xsYXBzaWJsZS1saW5lLWhlaWdodDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICB9XG59XG5cbi5jb2xsYXBzaWJsZS1ib2R5IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xsYXBzaWJsZS1ib3JkZXItY29sb3I7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDJyZW07XG59XG5cbi8vIHNpZGVOYXYgY29sbGFwc2libGUgc3R5bGluZ1xuLnNpZGUtbmF2LFxuLnNpZGUtbmF2LmZpeGVkIHtcblxuICAuY29sbGFwc2libGUge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgbGkgeyBwYWRkaW5nOiAwOyB9XG4gIH1cblxuICAuY29sbGFwc2libGUtaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgIHBhZGRpbmc6IDAgJHNpZGVuYXYtcGFkZGluZztcblxuICAgICY6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4wNSk7IH1cbiAgICBpIHsgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cbiAgfVxuXG4gIC5jb2xsYXBzaWJsZS1ib2R5IHtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbGxhcHNpYmxlLWhlYWRlci1jb2xvcjtcblxuICAgIGxpIGEge1xuICAgICAgcGFkZGluZzogMCAoNy41cHggKyAkc2lkZW5hdi1wYWRkaW5nKVxuICAgICAgICAgICAgICAgMCAoMTVweCArICRzaWRlbmF2LXBhZGRpbmcpO1xuICAgIH1cbiAgfVxuXG59XG5cbi8vIFBvcG91dCBDb2xsYXBzaWJsZVxuXG4uY29sbGFwc2libGUucG9wb3V0IHtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICA+IGxpIHtcbiAgICBib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTYpLCAwIDJweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgICAvLyB0cmFuc2Zvcm06IHNjYWxlWCguOTIpO1xuICAgIG1hcmdpbjogMCAyNHB4O1xuICAgIHRyYW5zaXRpb246IG1hcmdpbiAuMzVzIGN1YmljLWJlemllcigwLjI1MCwgMC40NjAsIDAuNDUwLCAwLjk0MCk7XG4gIH1cbiAgPiBsaS5hY3RpdmUge1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDExcHggMCByZ2JhKDAsIDAsIDAsIDAuMTgpLCAwIDRweCAxNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICBtYXJnaW46IDE2cHggMDtcbiAgICAvLyB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgfVxufVxuIiwiLmNoaXAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMzJweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogcmdiYSgwLDAsMCwuNik7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBwYWRkaW5nOiAwIDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjaGlwLWJnLWNvbG9yO1xuICBtYXJnaW4tYm90dG9tOiAkY2hpcC1tYXJnaW47XG4gIG1hcmdpbi1yaWdodDogJGNoaXAtbWFyZ2luO1xuXG4gID4gaW1nIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDAgOHB4IDAgLTEycHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgfVxuXG4gIC5jbG9zZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIH1cbn1cblxuLmNoaXBzIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNoaXAtYm9yZGVyLWNvbG9yO1xuICBib3gtc2hhZG93OiBub25lO1xuICBtYXJnaW46ICRpbnB1dC1tYXJnaW47XG4gIG1pbi1oZWlnaHQ6IDQ1cHg7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAuM3M7XG5cbiAgJi5mb2N1cyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjaGlwLXNlbGVjdGVkLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAkY2hpcC1zZWxlY3RlZC1jb2xvcjtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogdGV4dDtcbiAgfVxuXG4gIC5jaGlwLnNlbGVjdGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2hpcC1zZWxlY3RlZC1jb2xvcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuXG4gIC5pbnB1dCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6IHJnYmEoMCwwLDAsLjYpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgIG91dGxpbmU6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTIwcHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnB1dDpmb2N1cyB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gQXV0b2NvbXBsZXRlXG4gIC5hdXRvY29tcGxldGUtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4vLyBGb3JtIHByZWZpeFxuLnByZWZpeCB+IC5jaGlwcyB7XG4gIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICB3aWR0aDogOTIlO1xuICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG59XG4uY2hpcHM6ZW1wdHkgfiBsYWJlbCAge1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNDAlKTtcbn1cbiIsIi5tYXRlcmlhbGJveGVkIHtcbiAgJjpob3ZlciB7XG4gICAgJjpub3QoLmFjdGl2ZSkge1xuICAgICAgb3BhY2l0eTogLjg7XG4gICAgfVxuICB9XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGN1cnNvcjogem9vbS1pbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC40cztcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgJi5hY3RpdmUge1xuICAgIGN1cnNvcjogem9vbS1vdXQ7XG4gIH1cbn1cblxuI21hdGVyaWFsYm94LW92ZXJsYXkge1xuICBwb3NpdGlvbjpmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjkyOTI5O1xuICB6LWluZGV4OiAxMDAwO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbn1cblxuLm1hdGVyaWFsYm94LWNhcHRpb24ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICBsaW5lLWhlaWdodDogNTBweDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwJSAxNSU7XG4gIGhlaWdodDogNTBweDtcbiAgei1pbmRleDogMTAwMDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59IiwiLy8gUmVtb3ZlIEZvY3VzIEJveGVzXG5zZWxlY3Q6Zm9jdXMge1xuICBvdXRsaW5lOiAkc2VsZWN0LWZvY3VzO1xufVxuXG5idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQtZm9jdXM7XG59XG5cbmxhYmVsIHtcbiAgZm9udC1zaXplOiAkbGFiZWwtZm9udC1zaXplO1xuICBjb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcbn1cblxuQGltcG9ydCAnaW5wdXQtZmllbGRzJztcbkBpbXBvcnQgJ3JhZGlvLWJ1dHRvbnMnO1xuQGltcG9ydCAnY2hlY2tib3hlcyc7XG5AaW1wb3J0ICdzd2l0Y2hlcyc7XG5AaW1wb3J0ICdzZWxlY3QnO1xuQGltcG9ydCAnZmlsZS1pbnB1dCc7XG5AaW1wb3J0ICdyYW5nZSc7XG4iLCIvKiBUZXh0IElucHV0cyArIFRleHRhcmVhXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBTdHlsZSBQbGFjZWhvbGRlcnMgKi9cblxuOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICRwbGFjZWhvbGRlci10ZXh0LWNvbG9yO1xufVxuXG46LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTgtICovXG4gIGNvbG9yOiAkcGxhY2Vob2xkZXItdGV4dC1jb2xvcjtcbn1cblxuOjotbW96LXBsYWNlaG9sZGVyIHsgIC8qIEZpcmVmb3ggMTkrICovXG4gIGNvbG9yOiAkcGxhY2Vob2xkZXItdGV4dC1jb2xvcjtcbn1cblxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAkcGxhY2Vob2xkZXItdGV4dC1jb2xvcjtcbn1cblxuLyogVGV4dCBpbnB1dHMgKi9cblxuaW5wdXQ6bm90KFt0eXBlXSksXG5pbnB1dFt0eXBlPXRleHRdLFxuaW5wdXRbdHlwZT1wYXNzd29yZF0sXG5pbnB1dFt0eXBlPWVtYWlsXSxcbmlucHV0W3R5cGU9dXJsXSxcbmlucHV0W3R5cGU9dGltZV0sXG5pbnB1dFt0eXBlPWRhdGVdLFxuaW5wdXRbdHlwZT1kYXRldGltZV0sXG5pbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXSxcbmlucHV0W3R5cGU9dGVsXSxcbmlucHV0W3R5cGU9bnVtYmVyXSxcbmlucHV0W3R5cGU9c2VhcmNoXSxcbnRleHRhcmVhLm1hdGVyaWFsaXplLXRleHRhcmVhIHtcblxuICAvLyBHZW5lcmFsIFN0eWxlc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBvdXRsaW5lOiBub25lO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIG1hcmdpbjogJGlucHV0LW1hcmdpbjtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcblxuICAvLyBEaXNhYmxlZCBpbnB1dCBzdHlsZVxuICAmOmRpc2FibGVkLFxuICAmW3JlYWRvbmx5PVwicmVhZG9ubHlcIl0ge1xuICAgIGNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbTogJGlucHV0LWRpc2FibGVkLWJvcmRlcjtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGxhYmVsIHN0eWxlXG4gICY6ZGlzYWJsZWQrbGFiZWwsXG4gICZbcmVhZG9ubHk9XCJyZWFkb25seVwiXStsYWJlbCB7XG4gICAgY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbiAgfVxuXG4gIC8vIEZvY3VzZWQgaW5wdXQgc3R5bGVcbiAgJjpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYm94LXNoYWRvdzogMCAxcHggMCAwICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgfVxuXG4gIC8vIEZvY3VzZWQgbGFiZWwgc3R5bGVcbiAgJjpmb2N1czpub3QoW3JlYWRvbmx5XSkrbGFiZWwge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gIH1cblxuICAvLyBWYWxpZCBJbnB1dCBTdHlsZVxuICAmLnZhbGlkLFxuICAmOmZvY3VzLnZhbGlkIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGlucHV0LXN1Y2Nlc3MtY29sb3I7XG4gICAgYm94LXNoYWRvdzogMCAxcHggMCAwICRpbnB1dC1zdWNjZXNzLWNvbG9yO1xuICB9XG5cbiAgLy8gQ3VzdG9tIFN1Y2Nlc3MgTWVzc2FnZVxuICAmLnZhbGlkICsgbGFiZWw6YWZ0ZXIsXG4gICY6Zm9jdXMudmFsaWQgKyBsYWJlbDphZnRlciB7XG4gICAgY29udGVudDogYXR0cihkYXRhLXN1Y2Nlc3MpO1xuICAgIGNvbG9yOiAkaW5wdXQtc3VjY2Vzcy1jb2xvcjtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gSW52YWxpZCBJbnB1dCBTdHlsZVxuICAmLmludmFsaWQsXG4gICY6Zm9jdXMuaW52YWxpZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGlucHV0LWludmFsaWQtYm9yZGVyO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAkaW5wdXQtZXJyb3ItY29sb3I7XG4gIH1cblxuICAvLyBDdXN0b20gRXJyb3IgbWVzc2FnZVxuICAmLmludmFsaWQgKyBsYWJlbDphZnRlcixcbiAgJjpmb2N1cy5pbnZhbGlkICsgbGFiZWw6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1lcnJvcik7XG4gICAgY29sb3I6ICRpbnB1dC1lcnJvci1jb2xvcjtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRnVsbCB3aWR0aCBsYWJlbCB3aGVuIHVzaW5nIHZhbGlkYXRlIGZvciBlcnJvciBtZXNzYWdlc1xuICAmLnZhbGlkYXRlICsgbGFiZWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLy8gRm9ybSBNZXNzYWdlIFNoYXJlZCBTdHlsZXNcbiAgJiArIGxhYmVsOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDYwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiAuMnMgb3BhY2l0eSBlYXNlLW91dCwgLjJzIGNvbG9yIGVhc2Utb3V0O1xuICB9XG59XG5cbi8vIFN0eWxpbmcgZm9yIGlucHV0IGZpZWxkIHdyYXBwZXJcbi5pbnB1dC1maWVsZCB7XG4gIC8vIElubGluZSBzdHlsZXNcbiAgJi5pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG5cbiAgICBpbnB1dCxcbiAgICAuc2VsZWN0LWRyb3Bkb3duIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuICB9XG5cbiAgLy8gR3V0dGVyIHNwYWNpbmdcbiAgJi5jb2wge1xuICAgIGxhYmVsIHtcbiAgICAgIGxlZnQ6ICRndXR0ZXItd2lkdGggLyAyO1xuICAgIH1cblxuICAgIC5wcmVmaXggfiBsYWJlbCxcbiAgICAucHJlZml4IH4gLnZhbGlkYXRlIH4gbGFiZWwge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDNyZW0gLSAjeyRndXR0ZXItd2lkdGh9KTtcbiAgICB9XG4gIH1cblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgbGFiZWwge1xuICAgIGNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuOHJlbTtcbiAgICBsZWZ0OiAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBjdXJzb3I6IHRleHQ7XG4gICAgdHJhbnNpdGlvbjogLjJzIGVhc2Utb3V0O1xuICAgIHRleHQtYWxpZ246IGluaXRpYWw7XG5cbiAgICAmOm5vdCgubGFiZWwtaWNvbikuYWN0aXZlIHtcbiAgICAgIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTQwJSk7XG4gICAgfVxuICB9XG5cbiAgLy8gUHJlZml4IEljb25zXG4gIC5wcmVmaXgge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogJGlucHV0LWhlaWdodDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjJzO1xuXG4gICAgJi5hY3RpdmUgeyBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yOyB9XG4gIH1cblxuICAucHJlZml4IH4gaW5wdXQsXG4gIC5wcmVmaXggfiB0ZXh0YXJlYSxcbiAgLnByZWZpeCB+IGxhYmVsLFxuICAucHJlZml4IH4gLnZhbGlkYXRlIH4gbGFiZWwsXG4gIC5wcmVmaXggfiAuYXV0b2NvbXBsZXRlLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICAgIHdpZHRoOiA5MiU7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDNyZW0pO1xuICB9XG5cbiAgLnByZWZpeCB+IGxhYmVsIHsgbWFyZ2luLWxlZnQ6IDNyZW07IH1cblxuICBAbWVkaWEgI3skbWVkaXVtLWFuZC1kb3dufSB7XG4gICAgLnByZWZpeCB+IGlucHV0IHtcbiAgICAgIHdpZHRoOiA4NiU7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhICN7JHNtYWxsLWFuZC1kb3dufSB7XG4gICAgLnByZWZpeCB+IGlucHV0IHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG4gICAgfVxuICB9XG59XG5cblxuLyogU2VhcmNoIEZpZWxkICovXG5cbi5pbnB1dC1maWVsZCBpbnB1dFt0eXBlPXNlYXJjaF0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHBhZGRpbmctbGVmdDogNHJlbTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pO1xuXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiAjNDQ0O1xuXG4gICAgJiArIGxhYmVsIGksXG4gICAgJiB+IC5tZGktbmF2aWdhdGlvbi1jbG9zZSxcbiAgICAmIH4gLm1hdGVyaWFsLWljb25zIHtcbiAgICAgIGNvbG9yOiAjNDQ0O1xuICAgIH1cbiAgfVxuXG4gICYgKyBsYWJlbCB7XG4gICAgbGVmdDogMXJlbTtcbiAgfVxuXG4gICYgfiAubWRpLW5hdmlnYXRpb24tY2xvc2UsXG4gICYgfiAubWF0ZXJpYWwtaWNvbnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgdHJhbnNpdGlvbjogLjNzIGNvbG9yO1xuICB9XG59XG5cblxuLyogVGV4dGFyZWEgKi9cblxuLy8gRGVmYXVsdCB0ZXh0YXJlYVxudGV4dGFyZWEge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAmLm1hdGVyaWFsaXplLXRleHRhcmVhIHtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47IC8qIHByZXZlbnRzIHNjcm9sbCBiYXIgZmxhc2ggKi9cbiAgICBwYWRkaW5nOiAuOHJlbSAwIDEuNnJlbSAwOyAvKiBwcmV2ZW50cyB0ZXh0IGp1bXAgb24gRW50ZXIga2V5cHJlc3MgKi9cbiAgICByZXNpemU6IG5vbmU7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxufVxuXG4vLyBGb3IgdGV4dGFyZWEgYXV0b3Jlc2l6ZVxuLmhpZGRlbmRpdiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkOyAvKiBmdXR1cmUgdmVyc2lvbiBvZiBkZXByZWNhdGVkICd3b3JkLXdyYXAnICovXG4gIHBhZGRpbmctdG9wOiAxLjJyZW07IC8qIHByZXZlbnRzIHRleHQganVtcCBvbiBFbnRlciBrZXlwcmVzcyAqL1xuXG4gIC8vIFJlZHVjZXMgcmVwYWludHNcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG59XG5cblxuLyogQXV0b2NvbXBsZXRlICovXG4uYXV0b2NvbXBsZXRlLWNvbnRlbnQge1xuICBtYXJnaW4tdG9wOiAtMSAqICRpbnB1dC1tYXJnaW4tYm90dG9tO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMTtcbiAgcG9zaXRpb246IHN0YXRpYztcblxuICBsaSB7XG4gICAgLmhpZ2hsaWdodCB7IGNvbG9yOiAjNDQ0OyB9XG5cbiAgICBpbWcge1xuICAgICAgaGVpZ2h0OiAkZHJvcGRvd24taXRlbS1oZWlnaHQgLSAxMDtcbiAgICAgIHdpZHRoOiAkZHJvcGRvd24taXRlbS1oZWlnaHQgLSAxMDtcbiAgICAgIG1hcmdpbjogNXB4IDE1cHg7XG4gICAgfVxuICB9XG59XG4iLCIvKiBSYWRpbyBCdXR0b25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyBSZW1vdmUgZGVmYXVsdCBSYWRpbyBCdXR0b25zXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCksXG5bdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC05OTk5cHg7XG4gIG9wYWNpdHk6IDA7XG59XG5cblt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIGxhYmVsLFxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMzVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgdHJhbnNpdGlvbjogLjI4cyBlYXNlO1xuXG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTsgLyogd2Via2l0IChrb25xdWVyb3IpIGJyb3dzZXJzICovXG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6YmVmb3JlLFxuW3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBtYXJnaW46IDRweDtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgei1pbmRleDogMDtcbiAgdHJhbnNpdGlvbjogLjI4cyBlYXNlO1xufVxuXG4vKiBVbmNoZWNrZWQgc3R5bGVzICovXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUsXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlcixcblt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSxcblt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyLFxuW3R5cGU9XCJyYWRpb1wiXS53aXRoLWdhcDpjaGVja2VkICsgbGFiZWw6YmVmb3JlLFxuW3R5cGU9XCJyYWRpb1wiXS53aXRoLWdhcDpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cblt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmJlZm9yZSxcblt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyIHtcbiAgYm9yZGVyOiAycHggc29saWQgJHJhZGlvLWVtcHR5LWNvbG9yO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG59XG5cbi8qIENoZWNrZWQgc3R5bGVzICovXG5bdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIsXG5bdHlwZT1cInJhZGlvXCJdLndpdGgtZ2FwOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsXG5bdHlwZT1cInJhZGlvXCJdLndpdGgtZ2FwOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gIGJvcmRlcjogJHJhZGlvLWJvcmRlcjtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIsXG5bdHlwZT1cInJhZGlvXCJdLndpdGgtZ2FwOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyYWRpby1maWxsLWNvbG9yO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XG59XG5cbi8qIFJhZGlvIFdpdGggZ2FwICovXG5bdHlwZT1cInJhZGlvXCJdLndpdGgtZ2FwOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoLjUpO1xufVxuXG4vKiBGb2N1c2VkIHN0eWxlcyAqL1xuW3R5cGU9XCJyYWRpb1wiXS50YWJiZWQ6Zm9jdXMgKyBsYWJlbDpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAxMHB4IHJnYmEoMCwwLDAsLjEpO1xufVxuXG4vKiBEaXNhYmxlZCBSYWRpbyBXaXRoIGdhcCAqL1xuW3R5cGU9XCJyYWRpb1wiXS53aXRoLWdhcDpkaXNhYmxlZDpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgYm9yZGVyOiAycHggc29saWQgJGlucHV0LWRpc2FibGVkLWNvbG9yO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdLndpdGgtZ2FwOmRpc2FibGVkOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xufVxuXG4vKiBEaXNhYmxlZCBzdHlsZSAqL1xuW3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZDpub3QoOmNoZWNrZWQpICsgbGFiZWw6YmVmb3JlLFxuW3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZDpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkICsgbGFiZWwge1xuICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZDpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLXNvbGlkLWNvbG9yO1xufVxuIiwiLyogQ2hlY2tib3hlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogQ1VTVE9NIENTUyBDSEVDS0JPWEVTICovXG5mb3JtIHAge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5mb3JtIHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIFJlbW92ZSBkZWZhdWx0IGNoZWNrYm94ICovXG5bdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCksXG5bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC05OTk5cHg7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8vIENoZWNrYm94IFN0eWxlc1xuW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIC8vIFRleHQgTGFiZWwgU3R5bGVcbiAgKyBsYWJlbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICBmb250LXNpemU6IDFyZW07XG5cbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOyAvKiB3ZWJraXQgKHNhZmFyaSwgY2hyb21lKSBicm93c2VycyAqL1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7IC8qIG1vemlsbGEgYnJvd3NlcnMgKi9cbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7IC8qIHdlYmtpdCAoa29ucXVlcm9yKSBicm93c2VycyAqL1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTsgLyogSUUxMCsgKi9cbiAgfVxuXG4gIC8qIGNoZWNrYm94IGFzcGVjdCAqL1xuICArIGxhYmVsOmJlZm9yZSxcbiAgJjpub3QoLmZpbGxlZC1pbikgKyBsYWJlbDphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICB6LWluZGV4OiAwO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRyYWRpby1lbXB0eS1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gICAgbWFyZ2luLXRvcDogMnB4O1xuICAgIHRyYW5zaXRpb246IC4ycztcbiAgfVxuXG4gICY6bm90KC5maWxsZWQtaW4pICsgbGFiZWw6YWZ0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG5cbiAgJjpub3QoOmNoZWNrZWQpOmRpc2FibGVkICsgbGFiZWw6YmVmb3JlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICB9XG5cbiAgLy8gRm9jdXNlZCBzdHlsZXNcbiAgJi50YWJiZWQ6Zm9jdXMgKyBsYWJlbDphZnRlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDEwcHggcmdiYSgwLDAsMCwuMSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuMSk7XG4gIH1cbn1cblxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIHtcbiAgKyBsYWJlbDpiZWZvcmUge1xuICAgIHRvcDogLTRweDtcbiAgICBsZWZ0OiAtNXB4O1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6ICRyYWRpby1ib3JkZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHJhZGlvLWJvcmRlcjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0MGRlZyk7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICB9XG59XG5cbi8qIEluZGV0ZXJtaW5hdGUgY2hlY2tib3ggKi9cblt0eXBlPVwiY2hlY2tib3hcIl06aW5kZXRlcm1pbmF0ZSB7XG4gICtsYWJlbDpiZWZvcmUge1xuICAgIHRvcDogLTExcHg7XG4gICAgbGVmdDogLTEycHg7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgYm9yZGVyLXJpZ2h0OiAkcmFkaW8tYm9yZGVyO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBpbmRldGVybWluYXRlXG4gICY6ZGlzYWJsZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLyBGaWxsZWQgaW4gU3R5bGVcblt0eXBlPVwiY2hlY2tib3hcIl0uZmlsbGVkLWluIHtcbiAgLy8gR2VuZXJhbFxuICArIGxhYmVsOmFmdGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gIH1cblxuICArIGxhYmVsOmJlZm9yZSxcbiAgKyBsYWJlbDphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLyogLjFzIGRlbGF5IGlzIGZvciBjaGVjayBhbmltYXRpb24gKi9cbiAgICB0cmFuc2l0aW9uOiBib3JkZXIgLjI1cywgYmFja2dyb3VuZC1jb2xvciAuMjVzLCB3aWR0aCAuMjBzIC4xcywgaGVpZ2h0IC4yMHMgLjFzLCB0b3AgLjIwcyAuMXMsIGxlZnQgLjIwcyAuMXM7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIC8vIFVuY2hlY2tlZCBzdHlsZVxuICAmOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBsZWZ0OiA2cHg7XG4gICAgdG9wOiAxMHB4O1xuXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVooMzdkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigzN2RlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAyMCUgNDAlO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcbiAgfVxuXG4gICY6bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyIHtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgJHJhZGlvLWVtcHR5LWNvbG9yO1xuICAgIHRvcDogMHB4O1xuICAgIHotaW5kZXg6IDA7XG4gIH1cblxuICAvLyBDaGVja2VkIHN0eWxlXG4gICY6Y2hlY2tlZCB7XG4gICAgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMXB4O1xuICAgICAgd2lkdGg6IDhweDtcbiAgICAgIGhlaWdodDogMTNweDtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAkaW5wdXQtYmFja2dyb3VuZDtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkaW5wdXQtYmFja2dyb3VuZDtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVaKDM3ZGVnKTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlWigzN2RlZyk7XG5cbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuICAgIH1cblxuICAgICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgIHotaW5kZXg6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9jdXNlZCBzdHlsZXNcbiAgJi50YWJiZWQ6Zm9jdXMgKyBsYWJlbDphZnRlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJvcmRlci1jb2xvcjogJHJhZGlvLWVtcHR5LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjEpO1xuICB9XG5cbiAgJi50YWJiZWQ6Y2hlY2tlZDpmb2N1cyArIGxhYmVsOmFmdGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdHlsZVxuICAmOmRpc2FibGVkOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpkaXNhYmxlZDpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLXNvbGlkLWNvbG9yO1xuICB9XG5cbiAgJjpkaXNhYmxlZDpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6ZGlzYWJsZWQ6Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtc29saWQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtc29saWQtY29sb3I7XG4gIH1cbn1cbiIsIi8qIFN3aXRjaFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnN3aXRjaCxcbi5zd2l0Y2ggKiB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uc3dpdGNoIGxhYmVsIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uc3dpdGNoIGxhYmVsIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgb3BhY2l0eTogMDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICAmOmNoZWNrZWQgKyAubGV2ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzd2l0Y2gtY2hlY2tlZC1sZXZlci1iZztcblxuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN3aXRjaC1iZy1jb2xvcjtcbiAgICAgIGxlZnQ6IDI0cHg7XG4gICAgfVxuICB9XG59XG5cbi5zd2l0Y2ggbGFiZWwgLmxldmVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDE1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzd2l0Y2gtdW5jaGVja2VkLWxldmVyLWJnO1xuICBib3JkZXItcmFkaXVzOiAkc3dpdGNoLXJhZGl1cztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIDE2cHg7XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAyMXB4O1xuICAgIGhlaWdodDogMjFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3dpdGNoLXVuY2hlY2tlZC1iZztcbiAgICBib3JkZXItcmFkaXVzOiAyMXB4O1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDNweCAxcHggcmdiYSgwLDAsMCwuNCk7XG4gICAgbGVmdDogLTVweDtcbiAgICB0b3A6IC0zcHg7XG4gICAgdHJhbnNpdGlvbjogbGVmdCAwLjNzIGVhc2UsIGJhY2tncm91bmQgLjNzIGVhc2UsIGJveC1zaGFkb3cgMC4xcyBlYXNlO1xuICB9XG59XG5cbi8vIFN3aXRjaCBhY3RpdmUgc3R5bGVcbmlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQ6bm90KDpkaXNhYmxlZCkgfiAubGV2ZXI6YWN0aXZlOjphZnRlcixcbmlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQ6bm90KDpkaXNhYmxlZCkudGFiYmVkOmZvY3VzIH4gLmxldmVyOjphZnRlciB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAxcHggcmdiYSgwLDAsMCwuNCksIDAgMCAwIDE1cHggdHJhbnNwYXJlbnRpemUoJHN3aXRjaC1iZy1jb2xvciwgLjkpO1xufVxuXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmRpc2FibGVkKSB+IC5sZXZlcjphY3RpdmU6YWZ0ZXIsXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmRpc2FibGVkKS50YWJiZWQ6Zm9jdXMgfiAubGV2ZXI6OmFmdGVyIHtcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4IDFweCByZ2JhKDAsMCwwLC40KSwgMCAwIDAgMTVweCByZ2JhKDAsIDAsIDAsIC4wOCk7XG59XG5cbi8vIERpc2FibGVkIFN0eWxlc1xuLnN3aXRjaCBpbnB1dFt0eXBlPWNoZWNrYm94XVtkaXNhYmxlZF0gKyAubGV2ZXIge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5zd2l0Y2ggbGFiZWwgaW5wdXRbdHlwZT1jaGVja2JveF1bZGlzYWJsZWRdICsgLmxldmVyOmFmdGVyLFxuLnN3aXRjaCBsYWJlbCBpbnB1dFt0eXBlPWNoZWNrYm94XVtkaXNhYmxlZF06Y2hlY2tlZCArIC5sZXZlcjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1zb2xpZC1jb2xvcjtcbn1cbiIsIi8qIFNlbGVjdCBGaWVsZFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuc2VsZWN0IHsgZGlzcGxheTogbm9uZTsgfVxuc2VsZWN0LmJyb3dzZXItZGVmYXVsdCB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbnNlbGVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRzZWxlY3QtcGFkZGluZztcbiAgYm9yZGVyOiAkc2VsZWN0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbn1cblxuLnNlbGVjdC1sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnNlbGVjdC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGlucHV0LnNlbGVjdC1kcm9wZG93biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogJGlucHV0LWJvcmRlcjtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgbWFyZ2luOiAkaW5wdXQtbWFyZ2luO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBzcGFuLmNhcmV0IHtcbiAgICBjb2xvcjogaW5pdGlhbDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luOiBhdXRvIDA7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxMHB4O1xuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYgKyBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTE0cHg7XG4gICAgZm9udC1zaXplOiAkbGFiZWwtZm9udC1zaXplO1xuICB9XG59XG5cbi8vIERpc2FibGVkIHN0eWxlc1xuc2VsZWN0OmRpc2FibGVkIHtcbiAgY29sb3I6IHJnYmEoMCwwLDAsLjMpO1xufVxuXG4uc2VsZWN0LXdyYXBwZXIgaW5wdXQuc2VsZWN0LWRyb3Bkb3duOmRpc2FibGVkIHtcbiAgY29sb3I6IHJnYmEoMCwwLDAsLjMpO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7IC8qIHdlYmtpdCAoc2FmYXJpLCBjaHJvbWUpIGJyb3dzZXJzICovXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7IC8qIG1vemlsbGEgYnJvd3NlcnMgKi9cbiAgLW1zLXVzZXItc2VsZWN0OiBub25lOyAvKiBJRTEwKyAqL1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLDAsMCwuMyk7XG59XG5cbi5zZWxlY3Qtd3JhcHBlciBpIHtcbiAgY29sb3I6ICRzZWxlY3QtZGlzYWJsZWQtY29sb3I7XG59XG5cbi5zZWxlY3QtZHJvcGRvd24gbGkuZGlzYWJsZWQsXG4uc2VsZWN0LWRyb3Bkb3duIGxpLmRpc2FibGVkID4gc3Bhbixcbi5zZWxlY3QtZHJvcGRvd24gbGkub3B0Z3JvdXAge1xuICBjb2xvcjogJHNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8vIFByZWZpeCBJY29uc1xuLnByZWZpeCB+IC5zZWxlY3Qtd3JhcHBlciB7XG4gIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICB3aWR0aDogOTIlO1xuICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG59XG5cbi5wcmVmaXggfiBsYWJlbCB7IG1hcmdpbi1sZWZ0OiAzcmVtOyB9XG5cbi8vIEljb25zXG4uc2VsZWN0LWRyb3Bkb3duIGxpIHtcbiAgaW1nIHtcbiAgICBoZWlnaHQ6ICRkcm9wZG93bi1pdGVtLWhlaWdodCAtIDEwO1xuICAgIHdpZHRoOiAkZHJvcGRvd24taXRlbS1oZWlnaHQgLSAxMDtcbiAgICBtYXJnaW46IDVweCAxNXB4O1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4vLyBPcHRncm91cCBzdHlsZXNcbi5zZWxlY3QtZHJvcGRvd24gbGkub3B0Z3JvdXAge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGRyb3Bkb3duLWhvdmVyLWJnLWNvbG9yO1xuXG4gICYuc2VsZWN0ZWQgPiBzcGFuIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAuNyk7XG4gIH1cblxuICAmID4gc3BhbiB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgLjQpO1xuICB9XG5cbiAgJiB+IGxpLm9wdGdyb3VwLW9wdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICB9XG59XG4iLCIvKiBGaWxlIElucHV0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZmlsZS1maWVsZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuZmlsZS1wYXRoLXdyYXBwZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICB9XG5cbiAgaW5wdXQuZmlsZS1wYXRoIHsgd2lkdGg6IDEwMCU7IH1cblxuICAuYnRuIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICBzcGFuIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICBpbnB1dFt0eXBlPWZpbGVdIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG4gIH1cbn1cbiIsIi8qIFJhbmdlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4ucmFuZ2UtZmllbGQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdLFxuaW5wdXRbdHlwZT1yYW5nZV0gKyAudGh1bWIge1xuICBAZXh0ZW5kIC5uby1zZWxlY3Q7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDE1cHggMDtcbiAgcGFkZGluZzogMDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdICsgLnRodW1iIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHg7XG4gIGxlZnQ6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmFkaW8tZmlsbC1jb2xvcjtcbiAgbWFyZ2luLWxlZnQ6IDdweDtcblxuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuXG4gIC52YWx1ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkcmFkaW8tZmlsbC1jb2xvcjtcbiAgICBmb250LXNpemU6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJSA1MCUgNTAlIDA7XG5cbiAgICAudmFsdWUge1xuICAgICAgY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgfVxuICB9XG59XG5cbi8vIFdlYktpdFxuaW5wdXRbdHlwZT1yYW5nZV0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gIGhlaWdodDogJHRyYWNrLWhlaWdodDtcbiAgYmFja2dyb3VuZDogI2MyYzBjMjtcbiAgYm9yZGVyOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgaGVpZ2h0OiAkcmFuZ2UtaGVpZ2h0O1xuICB3aWR0aDogJHJhbmdlLXdpZHRoO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyYWRpby1maWxsLWNvbG9yO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICBtYXJnaW46IC01cHggMCAwIDA7XG4gIHRyYW5zaXRpb246IC4zcztcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV06Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgYmFja2dyb3VuZDogI2NjYztcbn1cblxuLy8gRmlyZUZveFxuaW5wdXRbdHlwZT1yYW5nZV0ge1xuICAvKiBmaXggZm9yIEZGIHVuYWJsZSB0byBhcHBseSBmb2N1cyBzdHlsZSBidWcgICovXG4gIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuXG4gIC8qcmVxdWlyZWQgZm9yIHByb3BlciB0cmFjayBzaXppbmcgaW4gRkYqL1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10cmFjayB7XG4gIGhlaWdodDogJHRyYWNrLWhlaWdodDtcbiAgYmFja2dyb3VuZDogI2RkZDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10aHVtYiB7XG4gIGJvcmRlcjogbm9uZTtcbiAgaGVpZ2h0OiAkcmFuZ2UtaGVpZ2h0O1xuICB3aWR0aDogJHJhbmdlLXdpZHRoO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6ICRyYWRpby1maWxsLWNvbG9yO1xuICBtYXJnaW4tdG9wOiAtNXB4O1xufVxuXG4vLyBoaWRlIHRoZSBvdXRsaW5lIGJlaGluZCB0aGUgYm9yZGVyXG5pbnB1dFt0eXBlPXJhbmdlXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBzb2xpZCAjZmZmO1xuICBvdXRsaW5lLW9mZnNldDogLTFweDtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV06Zm9jdXM6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICBiYWNrZ3JvdW5kOiAjY2NjO1xufVxuXG4vLyBJRSAxMCtcbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdHJhY2sge1xuICBoZWlnaHQ6ICR0cmFjay1oZWlnaHQ7XG5cbiAgLy8gcmVtb3ZlIGJnIGNvbG91ciBmcm9tIHRoZSB0cmFjaywgd2UnbGwgdXNlIG1zLWZpbGwtbG93ZXIgYW5kIG1zLWZpbGwtdXBwZXIgaW5zdGVhZFxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAvLyBsZWF2ZSByb29tIGZvciB0aGUgbGFyZ2VyIHRodW1iIHRvIG92ZXJmbG93IHdpdGggYSB0cmFuc3BhcmVudCBib3JkZXIgKi9cbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiA2cHggMDtcblxuICAvKnJlbW92ZSBkZWZhdWx0IHRpY2sgbWFya3MqL1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtZmlsbC1sb3dlciB7XG4gIGJhY2tncm91bmQ6ICM3Nzc7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtZmlsbC11cHBlciB7XG4gIGJhY2tncm91bmQ6ICNkZGQ7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdGh1bWIge1xuICBib3JkZXI6IG5vbmU7XG4gIGhlaWdodDogJHJhbmdlLWhlaWdodDtcbiAgd2lkdGg6ICRyYW5nZS13aWR0aDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiAkcmFkaW8tZmlsbC1jb2xvcjtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV06Zm9jdXM6Oi1tcy1maWxsLWxvd2VyIHtcbiAgYmFja2dyb3VuZDogIzg4ODtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV06Zm9jdXM6Oi1tcy1maWxsLXVwcGVyIHtcbiAgYmFja2dyb3VuZDogI2NjYztcbn1cbiIsIi8qKioqKioqKioqKioqKipcbiAgICBOYXYgTGlzdFxuKioqKioqKioqKioqKioqL1xuLnRhYmxlLW9mLWNvbnRlbnRzIHtcbiAgJi5maXhlZCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuXG4gIGxpIHtcbiAgICBwYWRkaW5nOiAycHggMDtcbiAgfVxuICBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogIzc1NzU3NTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogbGlnaHRlbigjNzU3NTc1LCAyMCUpO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxOXB4O1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gICAgJi5hY3RpdmUge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMThweDtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIuc2lkZS1uYXYge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAzMDBweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBtYXJnaW46IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIGhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgKyA2MHB4KTtcbiAgaGVpZ2h0OiAtbW96LWNhbGMoMTAwJSk7IC8vVGVtcG9yYXJ5IEZpcmVmb3ggRml4XG4gIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZW5hdi1iZy1jb2xvcjtcbiAgei1pbmRleDogOTk5O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTA1JSk7XG5cbiAgQGV4dGVuZCAuei1kZXB0aC0xO1xuXG4gIC8vIFJpZ2h0IEFsaWduXG4gICYucmlnaHQtYWxpZ25lZCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwNSUpO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB9XG5cbiAgLmNvbGxhcHNpYmxlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuXG4gIGxpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogJHNpZGVuYXYtbGluZS1oZWlnaHQ7XG5cbiAgICAmLmFjdGl2ZSB7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjA1KTsgfVxuICB9XG5cbiAgbGkgPiBhIHtcbiAgICBjb2xvcjogJHNpZGVuYXYtZm9udC1jb2xvcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRzaWRlbmF2LWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGhlaWdodDogJHNpZGVuYXYtaXRlbS1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRzaWRlbmF2LWxpbmUtaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDAgKCRzaWRlbmF2LXBhZGRpbmcgKiAyKTtcblxuICAgICY6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4wNSk7fVxuXG4gICAgJi5idG4sICYuYnRuLWxhcmdlLCAmLmJ0bi1mbGF0LCAmLmJ0bi1mbG9hdGluZyB7XG4gICAgICBtYXJnaW46IDEwcHggMTVweDtcbiAgICB9XG5cbiAgICAmLmJ0bixcbiAgICAmLmJ0bi1sYXJnZSxcbiAgICAmLmJ0bi1mbG9hdGluZyB7IGNvbG9yOiAkYnV0dG9uLXJhaXNlZC1jb2xvcjsgfVxuICAgICYuYnRuLWZsYXQgeyBjb2xvcjogJGJ1dHRvbi1mbGF0LWNvbG9yOyB9XG5cbiAgICAmLmJ0bjpob3ZlcixcbiAgICAmLmJ0bi1sYXJnZTpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGJ1dHRvbi1yYWlzZWQtYmFja2dyb3VuZCwgNSUpOyB9XG4gICAgJi5idG4tZmxvYXRpbmc6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kOyB9XG5cbiAgICAmID4gaSxcbiAgICAmID4gW2NsYXNzXj1cIm1kaS1cIl0sIGxpID4gYSA+IFtjbGFzcyo9XCJtZGktXCJdLFxuICAgICYgPiBpLm1hdGVyaWFsLWljb25zIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgaGVpZ2h0OiAkc2lkZW5hdi1pdGVtLWhlaWdodDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkc2lkZW5hdi1saW5lLWhlaWdodDtcbiAgICAgIG1hcmdpbjogMCAoJHNpZGVuYXYtcGFkZGluZyAqIDIpIDAgMDtcbiAgICAgIHdpZHRoOiAkc2lkZW5hdi1pdGVtLWhlaWdodCAvIDI7XG4gICAgICBjb2xvcjogcmdiYSgwLDAsMCwuNTQpO1xuICAgIH1cbiAgfVxuXG5cbiAgLmRpdmlkZXIge1xuICAgIG1hcmdpbjogKCRzaWRlbmF2LXBhZGRpbmcgLyAyKSAwIDAgMDtcbiAgfVxuXG4gIC5zdWJoZWFkZXIge1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgY3Vyc29yOiBpbml0aWFsO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbG9yOiByZ2JhKDAsMCwwLC41NCk7XG4gICAgZm9udC1zaXplOiAkc2lkZW5hdi1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogJHNpZGVuYXYtbGluZS1oZWlnaHQ7XG4gIH1cblxuICAudXNlclZpZXcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAoJHNpZGVuYXYtcGFkZGluZyAqIDIpICgkc2lkZW5hdi1wYWRkaW5nICogMikgMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc2lkZW5hdi1wYWRkaW5nIC8gMjtcblxuICAgICYgPiBhIHtcbiAgICAgICY6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuYmFja2dyb3VuZCB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuXG4gICAgLmNpcmNsZSwgLm5hbWUsIC5lbWFpbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuY2lyY2xlIHtcbiAgICAgIGhlaWdodDogNjRweDtcbiAgICAgIHdpZHRoOiA2NHB4O1xuICAgIH1cblxuICAgIC5uYW1lLFxuICAgIC5lbWFpbCB7XG4gICAgICBmb250LXNpemU6ICRzaWRlbmF2LWZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkc2lkZW5hdi1saW5lLWhlaWdodCAvIDI7XG4gICAgfVxuXG4gICAgLm5hbWUge1xuICAgICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuXG4gICAgLmVtYWlsIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUb3VjaCBpbnRlcmFjdGlvblxuLmRyYWctdGFyZ2V0IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDk5ODtcbn1cblxuXG4vLyBGaXhlZCBzaWRlLW5hdiBzaG93blxuLnNpZGUtbmF2LmZpeGVkIHtcbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICBwb3NpdGlvbjogZml4ZWQ7XG5cbiAgLy8gUmlnaHQgQWxpZ25cbiAgJi5yaWdodC1hbGlnbmVkIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG5cbi8vIEZpeGVkIHNpZGVOYXYgaGlkZSBvbiBzbWFsbGVyXG5AbWVkaWEgI3skbWVkaXVtLWFuZC1kb3dufSB7XG4gIC5zaWRlLW5hdiB7XG4gICAgJi5maXhlZCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwNSUpO1xuXG4gICAgICAmLnJpZ2h0LWFsaWduZWQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTA1JSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiAwICRzaWRlbmF2LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLnVzZXJWaWV3IHtcbiAgICAgIHBhZGRpbmc6ICRzaWRlbmF2LXBhZGRpbmcgJHNpZGVuYXYtcGFkZGluZyAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi5zaWRlLW5hdiAuY29sbGFwc2libGUtYm9keSA+IHVsOm5vdCguY29sbGFwc2libGUpID4gbGkuYWN0aXZlLFxuLnNpZGUtbmF2LmZpeGVkIC5jb2xsYXBzaWJsZS1ib2R5ID4gdWw6bm90KC5jb2xsYXBzaWJsZSkgPiBsaS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgYSB7XG4gICAgY29sb3I6ICRzaWRlbmF2LWJnLWNvbG9yO1xuICB9XG59XG4uc2lkZS1uYXYgLmNvbGxhcHNpYmxlLWJvZHkge1xuICBwYWRkaW5nOiAwO1xufVxuXG5cbiNzaWRlbmF2LW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG5cbiAgaGVpZ2h0OiAxMjB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuNSk7XG4gIHotaW5kZXg6IDk5NztcblxuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbn1cbiIsIi8qXG4gICAgQGxpY2Vuc2VcbiAgICBDb3B5cmlnaHQgKGMpIDIwMTQgVGhlIFBvbHltZXIgUHJvamVjdCBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICAgIFRoaXMgY29kZSBtYXkgb25seSBiZSB1c2VkIHVuZGVyIHRoZSBCU0Qgc3R5bGUgbGljZW5zZSBmb3VuZCBhdCBodHRwOi8vcG9seW1lci5naXRodWIuaW8vTElDRU5TRS50eHRcbiAgICBUaGUgY29tcGxldGUgc2V0IG9mIGF1dGhvcnMgbWF5IGJlIGZvdW5kIGF0IGh0dHA6Ly9wb2x5bWVyLmdpdGh1Yi5pby9BVVRIT1JTLnR4dFxuICAgIFRoZSBjb21wbGV0ZSBzZXQgb2YgY29udHJpYnV0b3JzIG1heSBiZSBmb3VuZCBhdCBodHRwOi8vcG9seW1lci5naXRodWIuaW8vQ09OVFJJQlVUT1JTLnR4dFxuICAgIENvZGUgZGlzdHJpYnV0ZWQgYnkgR29vZ2xlIGFzIHBhcnQgb2YgdGhlIHBvbHltZXIgcHJvamVjdCBpcyBhbHNvXG4gICAgc3ViamVjdCB0byBhbiBhZGRpdGlvbmFsIElQIHJpZ2h0cyBncmFudCBmb3VuZCBhdCBodHRwOi8vcG9seW1lci5naXRodWIuaW8vUEFURU5UUy50eHRcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTVFlMRVMgRk9SIFRIRSBTUElOTkVSICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qXG4gKiBDb25zdGFudHM6XG4gKiAgICAgIFNUUk9LRVdJRFRIID0gM3B4XG4gKiAgICAgIEFSQ1NJWkUgICAgID0gMjcwIGRlZ3JlZXMgKGFtb3VudCBvZiBjaXJjbGUgdGhlIGFyYyB0YWtlcyB1cClcbiAqICAgICAgQVJDVElNRSAgICAgPSAxMzMzbXMgKHRpbWUgaXQgdGFrZXMgdG8gZXhwYW5kIGFuZCBjb250cmFjdCBhcmMpXG4gKiAgICAgIEFSQ1NUQVJUUk9UID0gMjE2IGRlZ3JlZXMgKGhvdyBtdWNoIHRoZSBzdGFydCBsb2NhdGlvbiBvZiB0aGUgYXJjXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hvdWxkIHJvdGF0ZSBlYWNoIHRpbWUsIDIxNiBnaXZlcyB1cyBhXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNSBwb2ludGVkIHN0YXIgc2hhcGUgKGl0J3MgMzYwLzUgKiAzKS5cbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGb3IgYSA3IHBvaW50ZWQgc3Rhciwgd2UgbWlnaHQgZG9cbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzNjAvNyAqIDMgPSAxNTQuMjg2KVxuICogICAgICBDT05UQUlORVJXSURUSCA9IDI4cHhcbiAqICAgICAgU0hSSU5LX1RJTUUgPSA0MDBtc1xuICovXG5cblxuLnByZWxvYWRlci13cmFwcGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG5cbiAgJi5zbWFsbCB7XG4gICAgd2lkdGg6IDM2cHg7XG4gICAgaGVpZ2h0OiAzNnB4O1xuICB9XG5cbiAgJi5iaWcge1xuICAgIHdpZHRoOiA2NHB4O1xuICAgIGhlaWdodDogNjRweDtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICAvKiBkdXJhdGlvbjogMzYwICogQVJDVElNRSAvIChBUkNTVEFSVFJPVCArICgzNjAtQVJDU0laRSkpICovXG4gICAgLXdlYmtpdC1hbmltYXRpb246IGNvbnRhaW5lci1yb3RhdGUgMTU2OG1zIGxpbmVhciBpbmZpbml0ZTtcbiAgICBhbmltYXRpb246IGNvbnRhaW5lci1yb3RhdGUgMTU2OG1zIGxpbmVhciBpbmZpbml0ZTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgY29udGFpbmVyLXJvdGF0ZSB7XG4gIHRvIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIH1cbn1cblxuQGtleWZyYW1lcyBjb250YWluZXItcm90YXRlIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIH1cbn1cblxuLnNwaW5uZXItbGF5ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9wYWNpdHk6IDA7XG4gIGJvcmRlci1jb2xvcjogJHNwaW5uZXItZGVmYXVsdC1jb2xvcjtcbn1cblxuLnNwaW5uZXItYmx1ZSxcbi5zcGlubmVyLWJsdWUtb25seSB7XG4gIGJvcmRlci1jb2xvcjogIzQyODVmNDtcbn1cblxuLnNwaW5uZXItcmVkLFxuLnNwaW5uZXItcmVkLW9ubHkge1xuICBib3JkZXItY29sb3I6ICNkYjQ0Mzc7XG59XG5cbi5zcGlubmVyLXllbGxvdyxcbi5zcGlubmVyLXllbGxvdy1vbmx5IHtcbiAgYm9yZGVyLWNvbG9yOiAjZjRiNDAwO1xufVxuXG4uc3Bpbm5lci1ncmVlbixcbi5zcGlubmVyLWdyZWVuLW9ubHkge1xuICBib3JkZXItY29sb3I6ICMwZjlkNTg7XG59XG5cbi8qKlxuICogSU1QT1JUQU5UIE5PVEUgQUJPVVQgQ1NTIEFOSU1BVElPTiBQUk9QRVJUSUVTIChrZWFudWxlZSk6XG4gKlxuICogaU9TIFNhZmFyaSAodGVzdGVkIG9uIGlPUyA4LjEpIGRvZXMgbm90IGhhbmRsZSBhbmltYXRpb24tZGVsYXkgdmVyeSB3ZWxsIC0gaXQgZG9lc24ndFxuICogZ3VhcmFudGVlIHRoYXQgdGhlIGFuaW1hdGlvbiB3aWxsIHN0YXJ0IF9leGFjdGx5XyBhZnRlciB0aGF0IHZhbHVlLiBTbyB3ZSBhdm9pZCB1c2luZ1xuICogYW5pbWF0aW9uLWRlbGF5IGFuZCBpbnN0ZWFkIHNldCBjdXN0b20ga2V5ZnJhbWVzIGZvciBlYWNoIGNvbG9yIChhcyByZWR1bmRhbnQgYXMgaXRcbiAqIHNlZW1zKS5cbiAqXG4gKiBXZSB3cml0ZSBvdXQgZWFjaCBhbmltYXRpb24gaW4gZnVsbCAoaW5zdGVhZCBvZiBzZXBhcmF0aW5nIGFuaW1hdGlvbi1uYW1lLFxuICogYW5pbWF0aW9uLWR1cmF0aW9uLCBldGMuKSBiZWNhdXNlIHVuZGVyIHRoZSBwb2x5ZmlsbCwgU2FmYXJpIGRvZXMgbm90IHJlY29nbml6ZSB0aG9zZVxuICogc3BlY2lmaWMgcHJvcGVydGllcyBwcm9wZXJseSwgdHJlYXRzIHRoZW0gYXMgLXdlYmtpdC1hbmltYXRpb24sIGFuZCBvdmVycmlkZXMgdGhlXG4gKiBvdGhlciBhbmltYXRpb24gcnVsZXMuIFNlZSBodHRwczovL2dpdGh1Yi5jb20vUG9seW1lci9wbGF0Zm9ybS9pc3N1ZXMvNTMuXG4gKi9cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIuc3Bpbm5lci1ibHVlIHtcbiAgLyogZHVyYXRpb25zOiA0ICogQVJDVElNRSAqL1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmlsbC11bmZpbGwtcm90YXRlIDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aCwgYmx1ZS1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG4gIGFuaW1hdGlvbjogZmlsbC11bmZpbGwtcm90YXRlIDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aCwgYmx1ZS1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIuc3Bpbm5lci1yZWQge1xuICAvKiBkdXJhdGlvbnM6IDQgKiBBUkNUSU1FICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmaWxsLXVuZmlsbC1yb3RhdGUgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoLCByZWQtZmFkZS1pbi1vdXQgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoO1xuICBhbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGgsIHJlZC1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIuc3Bpbm5lci15ZWxsb3cge1xuICAvKiBkdXJhdGlvbnM6IDQgKiBBUkNUSU1FICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmaWxsLXVuZmlsbC1yb3RhdGUgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoLCB5ZWxsb3ctZmFkZS1pbi1vdXQgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoO1xuICBhbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGgsIHllbGxvdy1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIuc3Bpbm5lci1ncmVlbiB7XG4gIC8qIGR1cmF0aW9uczogNCAqIEFSQ1RJTUUgKi9cbiAgLXdlYmtpdC1hbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGgsIGdyZWVuLWZhZGUtaW4tb3V0IDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aDtcbiAgYW5pbWF0aW9uOiBmaWxsLXVuZmlsbC1yb3RhdGUgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoLCBncmVlbi1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIsXG4uYWN0aXZlIC5zcGlubmVyLWxheWVyLnNwaW5uZXItYmx1ZS1vbmx5LFxuLmFjdGl2ZSAuc3Bpbm5lci1sYXllci5zcGlubmVyLXJlZC1vbmx5LFxuLmFjdGl2ZSAuc3Bpbm5lci1sYXllci5zcGlubmVyLXllbGxvdy1vbmx5LFxuLmFjdGl2ZSAuc3Bpbm5lci1sYXllci5zcGlubmVyLWdyZWVuLW9ubHkge1xuICAvKiBkdXJhdGlvbnM6IDQgKiBBUkNUSU1FICovXG4gIG9wYWNpdHk6IDE7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmaWxsLXVuZmlsbC1yb3RhdGUgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoO1xuICBhbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmaWxsLXVuZmlsbC1yb3RhdGUge1xuICAxMi41JSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsgIH0gLyogMC41ICogQVJDU0laRSAqL1xuICAyNSUgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsgIH0gLyogMSAgICogQVJDU0laRSAqL1xuICAzNy41JSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDA1ZGVnKTsgIH0gLyogMS41ICogQVJDU0laRSAqL1xuICA1MCUgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNTQwZGVnKTsgIH0gLyogMiAgICogQVJDU0laRSAqL1xuICA2Mi41JSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNjc1ZGVnKTsgIH0gLyogMi41ICogQVJDU0laRSAqL1xuICA3NSUgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoODEwZGVnKTsgIH0gLyogMyAgICogQVJDU0laRSAqL1xuICA4Ny41JSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTQ1ZGVnKTsgIH0gLyogMy41ICogQVJDU0laRSAqL1xuICB0byAgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTA4MGRlZyk7IH0gLyogNCAgICogQVJDU0laRSAqL1xufVxuXG5Aa2V5ZnJhbWVzIGZpbGwtdW5maWxsLXJvdGF0ZSB7XG4gIDEyLjUlIHsgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsgIH0gLyogMC41ICogQVJDU0laRSAqL1xuICAyNSUgICB7IHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7ICB9IC8qIDEgICAqIEFSQ1NJWkUgKi9cbiAgMzcuNSUgeyB0cmFuc2Zvcm06IHJvdGF0ZSg0MDVkZWcpOyAgfSAvKiAxLjUgKiBBUkNTSVpFICovXG4gIDUwJSAgIHsgdHJhbnNmb3JtOiByb3RhdGUoNTQwZGVnKTsgIH0gLyogMiAgICogQVJDU0laRSAqL1xuICA2Mi41JSB7IHRyYW5zZm9ybTogcm90YXRlKDY3NWRlZyk7ICB9IC8qIDIuNSAqIEFSQ1NJWkUgKi9cbiAgNzUlICAgeyB0cmFuc2Zvcm06IHJvdGF0ZSg4MTBkZWcpOyAgfSAvKiAzICAgKiBBUkNTSVpFICovXG4gIDg3LjUlIHsgdHJhbnNmb3JtOiByb3RhdGUoOTQ1ZGVnKTsgIH0gLyogMy41ICogQVJDU0laRSAqL1xuICB0byAgICB7IHRyYW5zZm9ybTogcm90YXRlKDEwODBkZWcpOyB9IC8qIDQgICAqIEFSQ1NJWkUgKi9cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJsdWUtZmFkZS1pbi1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMTsgfVxuICAyNSUgeyBvcGFjaXR5OiAxOyB9XG4gIDI2JSB7IG9wYWNpdHk6IDA7IH1cbiAgODklIHsgb3BhY2l0eTogMDsgfVxuICA5MCUgeyBvcGFjaXR5OiAxOyB9XG4gIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG59XG5cbkBrZXlmcmFtZXMgYmx1ZS1mYWRlLWluLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAxOyB9XG4gIDI1JSB7IG9wYWNpdHk6IDE7IH1cbiAgMjYlIHsgb3BhY2l0eTogMDsgfVxuICA4OSUgeyBvcGFjaXR5OiAwOyB9XG4gIDkwJSB7IG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJlZC1mYWRlLWluLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAwOyB9XG4gIDE1JSB7IG9wYWNpdHk6IDA7IH1cbiAgMjUlIHsgb3BhY2l0eTogMTsgfVxuICA1MCUgeyBvcGFjaXR5OiAxOyB9XG4gIDUxJSB7IG9wYWNpdHk6IDA7IH1cbn1cblxuQGtleWZyYW1lcyByZWQtZmFkZS1pbi1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICAxNSUgeyBvcGFjaXR5OiAwOyB9XG4gIDI1JSB7IG9wYWNpdHk6IDE7IH1cbiAgNTAlIHsgb3BhY2l0eTogMTsgfVxuICA1MSUgeyBvcGFjaXR5OiAwOyB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB5ZWxsb3ctZmFkZS1pbi1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICA0MCUgeyBvcGFjaXR5OiAwOyB9XG4gIDUwJSB7IG9wYWNpdHk6IDE7IH1cbiAgNzUlIHsgb3BhY2l0eTogMTsgfVxuICA3NiUgeyBvcGFjaXR5OiAwOyB9XG59XG5cbkBrZXlmcmFtZXMgeWVsbG93LWZhZGUtaW4tb3V0IHtcbiAgZnJvbSB7IG9wYWNpdHk6IDA7IH1cbiAgNDAlIHsgb3BhY2l0eTogMDsgfVxuICA1MCUgeyBvcGFjaXR5OiAxOyB9XG4gIDc1JSB7IG9wYWNpdHk6IDE7IH1cbiAgNzYlIHsgb3BhY2l0eTogMDsgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZ3JlZW4tZmFkZS1pbi1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICA2NSUgeyBvcGFjaXR5OiAwOyB9XG4gIDc1JSB7IG9wYWNpdHk6IDE7IH1cbiAgOTAlIHsgb3BhY2l0eTogMTsgfVxuICAxMDAlIHsgb3BhY2l0eTogMDsgfVxufVxuXG5Aa2V5ZnJhbWVzIGdyZWVuLWZhZGUtaW4tb3V0IHtcbiAgZnJvbSB7IG9wYWNpdHk6IDA7IH1cbiAgNjUlIHsgb3BhY2l0eTogMDsgfVxuICA3NSUgeyBvcGFjaXR5OiAxOyB9XG4gIDkwJSB7IG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDA7IH1cbn1cblxuLyoqXG4gKiBQYXRjaCB0aGUgZ2FwIHRoYXQgYXBwZWFyIGJldHdlZW4gdGhlIHR3byBhZGphY2VudCBkaXYuY2lyY2xlLWNsaXBwZXIgd2hpbGUgdGhlXG4gKiBzcGlubmVyIGlzIHJvdGF0aW5nIChhcHBlYXJzIG9uIENocm9tZSAzOCwgU2FmYXJpIDcuMSwgYW5kIElFIDExKS5cbiAqL1xuLmdhcC1wYXRjaCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA0NSU7XG4gIHdpZHRoOiAxMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xufVxuXG4uZ2FwLXBhdGNoIC5jaXJjbGUge1xuICB3aWR0aDogMTAwMCU7XG4gIGxlZnQ6IC00NTAlO1xufVxuXG4uY2lyY2xlLWNsaXBwZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDUwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG5cbiAgLmNpcmNsZSB7XG4gICAgd2lkdGg6IDIwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci13aWR0aDogM3B4OyAvKiBTVFJPS0VXSURUSCAqL1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBub25lO1xuICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgfVxuXG4gICYubGVmdCAuY2lyY2xlIHtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDEyOWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTI5ZGVnKTtcbiAgfVxuICAmLnJpZ2h0IC5jaXJjbGUge1xuICAgIGxlZnQ6IC0xMDAlO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEyOWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTEyOWRlZyk7XG4gIH1cbn1cblxuXG5cbi5hY3RpdmUgLmNpcmNsZS1jbGlwcGVyLmxlZnQgLmNpcmNsZSB7XG4gIC8qIGR1cmF0aW9uOiBBUkNUSU1FICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBsZWZ0LXNwaW4gMTMzM21zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoO1xuICBhbmltYXRpb246IGxlZnQtc3BpbiAxMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLmNpcmNsZS1jbGlwcGVyLnJpZ2h0IC5jaXJjbGUge1xuICAvKiBkdXJhdGlvbjogQVJDVElNRSAqL1xuICAtd2Via2l0LWFuaW1hdGlvbjogcmlnaHQtc3BpbiAxMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG4gIGFuaW1hdGlvbjogcmlnaHQtc3BpbiAxMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBsZWZ0LXNwaW4ge1xuICBmcm9tIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMzBkZWcpOyB9XG4gIDUwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpOyB9XG4gIHRvIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMzBkZWcpOyB9XG59XG5cbkBrZXlmcmFtZXMgbGVmdC1zcGluIHtcbiAgZnJvbSB7IHRyYW5zZm9ybTogcm90YXRlKDEzMGRlZyk7IH1cbiAgNTAlIHsgdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpOyB9XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMTMwZGVnKTsgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcmlnaHQtc3BpbiB7XG4gIGZyb20geyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzBkZWcpOyB9XG4gIDUwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7IH1cbiAgdG8geyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzBkZWcpOyB9XG59XG5cbkBrZXlmcmFtZXMgcmlnaHQtc3BpbiB7XG4gIGZyb20geyB0cmFuc2Zvcm06IHJvdGF0ZSgtMTMwZGVnKTsgfVxuICA1MCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTsgfVxuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKC0xMzBkZWcpOyB9XG59XG5cbiNzcGlubmVyQ29udGFpbmVyLmNvb2xkb3duIHtcbiAgLyogZHVyYXRpb246IFNIUklOS19USU1FICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBjb250YWluZXItcm90YXRlIDE1NjhtcyBsaW5lYXIgaW5maW5pdGUsIGZhZGUtb3V0IDQwMG1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKTtcbiAgYW5pbWF0aW9uOiBjb250YWluZXItcm90YXRlIDE1NjhtcyBsaW5lYXIgaW5maW5pdGUsIGZhZGUtb3V0IDQwMG1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGUtb3V0IHtcbiAgZnJvbSB7IG9wYWNpdHk6IDE7IH1cbiAgdG8geyBvcGFjaXR5OiAwOyB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZS1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMTsgfVxuICB0byB7IG9wYWNpdHk6IDA7IH1cbn1cbiIsIi5zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNDAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIEZ1bGxzY3JlZW4gc2xpZGVyXG4gICYuZnVsbHNjcmVlbiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG5cbiAgICB1bC5zbGlkZXMge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIHVsLmluZGljYXRvcnMge1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGJvdHRvbTogMzBweDtcbiAgICB9XG4gIH1cblxuICAuc2xpZGVzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWJnLWNvbG9yO1xuICAgIG1hcmdpbjogMDtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuXG4gICAgbGkge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5jYXB0aW9uIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxNSU7XG4gICAgICAgIGxlZnQ6IDE1JTtcbiAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICBwIHsgY29sb3I6ICRzbGlkZXItYmctY29sb3ItbGlnaHQ7IH1cbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLmluZGljYXRvcnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgLmluZGljYXRvci1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGhlaWdodDogMTZweDtcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgbWFyZ2luOiAwIDEycHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWJnLWNvbG9yLWxpZ2h0O1xuXG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWluZGljYXRvci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufSIsIi5jYXJvdXNlbCB7XG4gICYuY2Fyb3VzZWwtc2xpZGVyIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDA7XG5cbiAgICAuY2Fyb3VzZWwtZml4ZWQtaXRlbSB7XG4gICAgICAmLndpdGgtaW5kaWNhdG9ycyB7XG4gICAgICAgIGJvdHRvbTogNjhweDtcbiAgICAgIH1cblxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAyMHB4O1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1pbi1oZWlnaHQ6IDQwMHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcblxuICAgICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDAwcHg7XG4gIHBlcnNwZWN0aXZlOiA1MDBweDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCUgNTAlO1xuXG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgICYgPiBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmluZGljYXRvcnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgLmluZGljYXRvci1pdGVtIHtcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIH1cblxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICB3aWR0aDogOHB4O1xuICAgICAgbWFyZ2luOiAyNHB4IDRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjUpO1xuXG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB9XG4gIH1cblxuICAvLyBNYXRlcmlhbGJveCBjb21wYXRpYmlsaXR5XG4gICYuc2Nyb2xsaW5nIC5jYXJvdXNlbC1pdGVtIC5tYXRlcmlhbGJveGVkLFxuICAuY2Fyb3VzZWwtaXRlbTpub3QoLmFjdGl2ZSkgLm1hdGVyaWFsYm94ZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG4iLCIudGFwLXRhcmdldC13cmFwcGVyIHtcbiAgd2lkdGg6IDgwMHB4O1xuICBoZWlnaHQ6IDgwMHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcyAuM3M7XG59XG5cbi50YXAtdGFyZ2V0LXdyYXBwZXIub3BlbiB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMHM7XG5cbiAgLnRhcC10YXJnZXQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogLjk1O1xuICAgIHRyYW5zaXRpb246XG4gICAgICB0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllciguNDIsMCwuNTgsMSksXG4gICAgICBvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQyLDAsLjU4LDEpO1xuICB9XG5cbiAgLnRhcC10YXJnZXQtd2F2ZTo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIC50YXAtdGFyZ2V0LXdhdmU6OmFmdGVyIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGFuaW1hdGlvbjogcHVsc2UtYW5pbWF0aW9uIDFzIGN1YmljLWJlemllcigwLjI0LCAwLCAwLjM4LCAxKSBpbmZpbml0ZTtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgb3BhY2l0eSAuM3MsXG4gICAgICB0cmFuc2Zvcm0gLjNzLFxuICAgICAgdmlzaWJpbGl0eSAwcyAxcztcbiAgfVxufVxuXG4udGFwLXRhcmdldCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICBib3gtc2hhZG93OiAwIDIwcHggMjBweCAwIHJnYmEoMCwwLDAsMC4xNCksIDAgMTBweCA1MHB4IDAgcmdiYSgwLDAsMCwwLjEyKSwgMCAzMHB4IDEwcHggLTIwcHggcmdiYSgwLDAsMCwwLjIpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2l0aW9uOlxuICAgIHRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC40MiwwLC41OCwxKSxcbiAgICBvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjQyLDAsLjU4LDEpO1xufVxuXG4udGFwLXRhcmdldC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xufVxuXG4udGFwLXRhcmdldC13YXZlIHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgfVxuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcztcbiAgfVxuICAmOjphZnRlciB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246XG4gICAgICBvcGFjaXR5IC4zcyxcbiAgICAgIHRyYW5zZm9ybSAuM3MsXG4gICAgICB2aXNpYmlsaXR5IDBzO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHotaW5kZXg6IDEwMDAxO1xufVxuXG4udGFwLXRhcmdldC1vcmlnaW4ge1xuICAmOm5vdCguYnRuKSxcbiAgJjpub3QoLmJ0bik6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cblxuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuXG4gIHotaW5kZXg6IDEwMDAyO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICAudGFwLXRhcmdldCwgLnRhcC10YXJnZXQtd3JhcHBlciB7XG4gICAgd2lkdGg6IDYwMHB4O1xuICAgIGhlaWdodDogNjAwcHg7XG4gIH1cbn1cbiIsIi5wdWxzZSB7XG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MsIHRyYW5zZm9ybSAuM3M7XG4gICAgYW5pbWF0aW9uOiBwdWxzZS1hbmltYXRpb24gMXMgY3ViaWMtYmV6aWVyKDAuMjQsIDAsIDAuMzgsIDEpIGluZmluaXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgb3ZlcmZsb3c6IGluaXRpYWw7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQGtleWZyYW1lcyBwdWxzZS1hbmltYXRpb24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAkQkFTRS1QSUNLRVJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIE5vdGU6IHRoZSByb290IHBpY2tlciBlbGVtZW50IHNob3VsZCAqTk9UKiBiZSBzdHlsZWQgbW9yZSB0aGFuIHdoYXQncyBoZXJlLlxuICovXG4ucGlja2VyIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDAwMDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbi8qKlxuICogVGhlIHBpY2tlciBpbnB1dCBlbGVtZW50LlxuICovXG4ucGlja2VyX19pbnB1dCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi8qKlxuICogV2hlbiB0aGUgcGlja2VyIGlzIG9wZW5lZCwgdGhlIGlucHV0IGVsZW1lbnQgaXMgXCJhY3RpdmF0ZWRcIi5cbiAqL1xuLnBpY2tlcl9faW5wdXQucGlja2VyX19pbnB1dC0tYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDA4OWVjO1xufVxuLyoqXG4gKiBUaGUgaG9sZGVyIGlzIHRoZSBvbmx5IFwic2Nyb2xsYWJsZVwiIHRvcC1sZXZlbCBjb250YWluZXIgZWxlbWVudC5cbiAqL1xuLnBpY2tlcl9faG9sZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLyohXG4gKiBEZWZhdWx0IG1vYmlsZS1maXJzdCwgcmVzcG9uc2l2ZSBzdHlsaW5nIGZvciBwaWNrYWRhdGUuanNcbiAqIERlbW86IGh0dHA6Ly9hbXN1bC5naXRodWIuaW8vcGlja2FkYXRlLmpzXG4gKi9cbi8qKlxuICogTm90ZTogdGhlIHJvb3QgcGlja2VyIGVsZW1lbnQgc2hvdWxkICpOT1QqIGJlIHN0eWxlZCBtb3JlIHRoYW4gd2hhdCdzIGhlcmUuXG4gKi9cbi8qKlxuICogTWFrZSB0aGUgaG9sZGVyIGFuZCBmcmFtZSBmdWxsc2NyZWVuLlxuICovXG4ucGlja2VyX19ob2xkZXIsXG4ucGlja2VyX19mcmFtZSB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMTAwJTtcbn1cbi8qKlxuICogVGhlIGhvbGRlciBzaG91bGQgb3ZlcmxheSB0aGUgZW50aXJlIHNjcmVlbi5cbiAqL1xuLnBpY2tlcl9faG9sZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMgZWFzZS1vdXQsIHRvcCAwcyAwLjE1cztcbiAgLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzIGVhc2Utb3V0LCB0b3AgMHMgMC4xNXM7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMgZWFzZS1vdXQsIHRvcCAwcyAwLjE1cztcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4vKipcbiAqIFRoZSBmcmFtZSB0aGF0IGJvdW5kcyB0aGUgYm94IGNvbnRlbnRzIG9mIHRoZSBwaWNrZXIuXG4gKi9cbi5waWNrZXJfX2ZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWluLXdpZHRoOiAyNTZweDtcblxuLy8gIHBpY2tlciB3aWR0aFxuICB3aWR0aDogMzAwcHg7XG4gIG1heC1oZWlnaHQ6IDM1MHB4O1xuXG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MClcIjtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICAtbW96LW9wYWNpdHk6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xufVxuQG1lZGlhIChtaW4taGVpZ2h0OiAyOC44NzVlbSkge1xuICAucGlja2VyX19mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogLTEwMCU7XG4gICAgbWF4LWhlaWdodDogODAlO1xuICB9XG59XG5AbWVkaWEgKG1pbi1oZWlnaHQ6IDQwLjEyNWVtKSB7XG4gIC5waWNrZXJfX2ZyYW1lIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3LjUlO1xuICB9XG59XG4vKipcbiAqIFRoZSB3cmFwcGVyIHNldHMgdGhlIHN0YWdlIHRvIHZlcnRpY2FsbHkgYWxpZ24gdGhlIGJveCBjb250ZW50cy5cbiAqL1xuLnBpY2tlcl9fd3JhcCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuQG1lZGlhIChtaW4taGVpZ2h0OiAyOC44NzVlbSkge1xuICAucGlja2VyX193cmFwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLyoqXG4gKiBUaGUgYm94IGNvbnRhaW5zIGFsbCB0aGUgcGlja2VyIGNvbnRlbnRzLlxuICovXG4ucGlja2VyX19ib3gge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLy9AbWVkaWEgKG1pbi1oZWlnaHQ6IDI2LjVlbSkge1xuLy8gIC5waWNrZXJfX2JveCB7XG4vLy8vICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuLy8gIH1cbi8vfVxuQG1lZGlhIChtaW4taGVpZ2h0OiAyOC44NzVlbSkge1xuICAucGlja2VyX19ib3gge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4vLyAgICBwaWNrZXIgaGVhZGVyIGZvbnQtc2l6ZVxuLy8gICAgZm9udC1zaXplOiAxcmVtO1xuXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzc3Nzc3NztcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjODk4OTg5O1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDtcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMnB4IDM2cHggMTZweCByZ2JhKDAsIDAsIDAsIDAuMjQpO1xuICAgIC1tb3otYm94LXNoYWRvdzogMCAxMnB4IDM2cHggMTZweCByZ2JhKDAsIDAsIDAsIDAuMjQpO1xuICAgIGJveC1zaGFkb3c6IDAgMTJweCAzNnB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjI0KTtcbiAgfVxufVxuLy9AbWVkaWEgKG1pbi1oZWlnaHQ6IDQwLjEyNWVtKSB7XG4vLyAgLnBpY2tlcl9fYm94IHtcbi8vICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuLy8gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuLy8gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7XG4vLyAgICAtbW96LWJvcmRlci1yYWRpdXM6IDVweDtcbi8vICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbi8vICB9XG4vL31cbi8qKlxuICogV2hlbiB0aGUgcGlja2VyIG9wZW5zLi4uXG4gKi9cbi5waWNrZXItLW9wZW5lZCAucGlja2VyX19ob2xkZXIge1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSMxRTAwMDAwMCxlbmRDb2xvcnN0cj0jMUUwMDAwMDApXCI7XG4gIHpvb206IDE7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zMik7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzIGVhc2Utb3V0O1xufVxuLnBpY2tlci0tb3BlbmVkIC5waWNrZXJfX2ZyYW1lIHtcbiAgdG9wOiAwO1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTEwMClcIjtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG4gIC1tb3otb3BhY2l0eTogMTtcbiAgb3BhY2l0eTogMTtcbn1cbkBtZWRpYSAobWluLWhlaWdodDogMzUuODc1ZW0pIHtcbiAgLnBpY2tlci0tb3BlbmVkIC5waWNrZXJfX2ZyYW1lIHtcbiAgICB0b3A6IDEwJTtcbiAgICBib3R0b206IGF1dG87XG4gIH1cbn1cbi8qKlxuICogRm9yIGBsYXJnZWAgc2NyZWVucywgdHJhbnNmb3JtIGludG8gYW4gaW5saW5lIHBpY2tlci5cbiAqL1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ1VTVE9NIE1BVEVSSUFMSVpFIFNUWUxFU1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnBpY2tlcl9faW5wdXQucGlja2VyX19pbnB1dC0tYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiBjb2xvcihcImJsdWVcIiwgXCJsaWdodGVuLTVcIik7XG59XG5cbi5waWNrZXJfX2ZyYW1lIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMzI1cHg7XG59XG5cbkBtZWRpYSAobWluLWhlaWdodDogMzguODc1ZW0pIHtcbiAgLnBpY2tlci0tb3BlbmVkIC5waWNrZXJfX2ZyYW1lIHtcbiAgICB0b3A6IDEwJTtcbiAgICBib3R0b206IGF1dG87XG4gIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAkQkFTRS1EQVRFLVBJQ0tFUlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogVGhlIHBpY2tlciBib3guXG4gKi9cbi5waWNrZXJfX2JveCB7XG4gIHBhZGRpbmc6IDAgMWVtO1xufVxuLyoqXG4gKiBUaGUgaGVhZGVyIGNvbnRhaW5pbmcgdGhlIG1vbnRoIGFuZCB5ZWFyIHN0dWZmLlxuICovXG4ucGlja2VyX19oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogLjc1ZW07XG59XG4vKipcbiAqIFRoZSBtb250aCBhbmQgeWVhciBsYWJlbHMuXG4gKi9cbi5waWNrZXJfX21vbnRoLFxuLnBpY2tlcl9feWVhciB7XG4vLyAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogLjI1ZW07XG4gIG1hcmdpbi1yaWdodDogLjI1ZW07XG59XG4vKipcbiAqIFRoZSBtb250aCBhbmQgeWVhciBzZWxlY3RvcnMuXG4gKi9cbi5waWNrZXJfX3NlbGVjdC0tbW9udGgsXG4ucGlja2VyX19zZWxlY3QtLXllYXIge1xuXG4gIGhlaWdodDogMmVtO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tbGVmdDogLjI1ZW07XG4gIG1hcmdpbi1yaWdodDogLjI1ZW07XG59XG5cbi8vIE1vZGlmaWVkXG4ucGlja2VyX19zZWxlY3QtLW1vbnRoLmJyb3dzZXItZGVmYXVsdCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgd2lkdGg6IDQwJTtcbn1cbi5waWNrZXJfX3NlbGVjdC0teWVhci5icm93c2VyLWRlZmF1bHQge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIHdpZHRoOiAyNiU7XG59XG4ucGlja2VyX19zZWxlY3QtLW1vbnRoOmZvY3VzLFxuLnBpY2tlcl9fc2VsZWN0LS15ZWFyOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAkZGF0ZXBpY2tlci1mb2N1cztcbn1cbi8qKlxuICogVGhlIG1vbnRoIG5hdmlnYXRpb24gYnV0dG9ucy5cbiAqL1xuLnBpY2tlcl9fbmF2LS1wcmV2LFxuLnBpY2tlcl9fbmF2LS1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nOiAuNWVtIDEuMjVlbTtcbiAgd2lkdGg6IDFlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICB0b3A6IC0wLjI1ZW07XG59XG4vL0BtZWRpYSAobWluLXdpZHRoOiAyNC41ZW0pIHtcbi8vICAucGlja2VyX19uYXYtLXByZXYsXG4vLyAgLnBpY2tlcl9fbmF2LS1uZXh0IHtcbi8vICAgIHRvcDogLTAuMzNlbTtcbi8vICB9XG4vL31cbi5waWNrZXJfX25hdi0tcHJldiB7XG4gIGxlZnQ6IC0xZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuMjVlbTtcbn1cbi8vQG1lZGlhIChtaW4td2lkdGg6IDI0LjVlbSkge1xuLy8gIC5waWNrZXJfX25hdi0tcHJldiB7XG4vLyAgICBwYWRkaW5nLXJpZ2h0OiAxLjVlbTtcbi8vICB9XG4vL31cbi5waWNrZXJfX25hdi0tbmV4dCB7XG4gIHJpZ2h0OiAtMWVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuMjVlbTtcbn1cbi8vQG1lZGlhIChtaW4td2lkdGg6IDI0LjVlbSkge1xuLy8gIC5waWNrZXJfX25hdi0tbmV4dCB7XG4vLyAgICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xuLy8gIH1cbi8vfVxuXG4ucGlja2VyX19uYXYtLWRpc2FibGVkLFxuLnBpY2tlcl9fbmF2LS1kaXNhYmxlZDpob3Zlcixcbi5waWNrZXJfX25hdi0tZGlzYWJsZWQ6YmVmb3JlLFxuLnBpY2tlcl9fbmF2LS1kaXNhYmxlZDpiZWZvcmU6aG92ZXIge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogI2Y1ZjVmNTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICNmNWY1ZjU7XG59XG4vKipcbiAqIFRoZSBjYWxlbmRhciB0YWJsZSBvZiBkYXRlc1xuICovXG4ucGlja2VyX190YWJsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IC43NWVtO1xuICBtYXJnaW4tYm90dG9tOiAuNWVtO1xufVxuXG5cblxuLnBpY2tlcl9fdGFibGUgdGgsIC5waWNrZXJfX3RhYmxlIHRkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5cblxuXG5cblxuLnBpY2tlcl9fdGFibGUgdGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4vKipcbiAqIFRoZSB3ZWVrZGF5IGxhYmVsc1xuICovXG4ucGlja2VyX193ZWVrZGF5IHtcbiAgd2lkdGg6IDE0LjI4NTcxNDI4NiU7XG4gIGZvbnQtc2l6ZTogLjc1ZW07XG4gIHBhZGRpbmctYm90dG9tOiAuMjVlbTtcbiAgY29sb3I6ICM5OTk5OTk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIC8qIEluY3JlYXNlIHRoZSBzcGFjaW5nIGEgdGFkICovXG59XG5AbWVkaWEgKG1pbi1oZWlnaHQ6IDMzLjg3NWVtKSB7XG4gIC5waWNrZXJfX3dlZWtkYXkge1xuICAgIHBhZGRpbmctYm90dG9tOiAuNWVtO1xuICB9XG59XG4vKipcbiAqIFRoZSBkYXlzIG9uIHRoZSBjYWxlbmRhclxuICovXG5cbi5waWNrZXJfX2RheS0tdG9kYXkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjNTk1OTU5O1xuICBsZXR0ZXItc3BhY2luZzogLS4zO1xuICBwYWRkaW5nOiAuNzVyZW0gMDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbn1cblxuLy8ucGlja2VyX19kYXktLXRvZGF5OmJlZm9yZSB7XG4vLyAgY29udGVudDogXCIgXCI7XG4vLyAgcG9zaXRpb246IGFic29sdXRlO1xuLy8gIHRvcDogMnB4O1xuLy8gIHJpZ2h0OiAycHg7XG4vLyAgd2lkdGg6IDA7XG4vLyAgaGVpZ2h0OiAwO1xuLy8gIGJvcmRlci10b3A6IDAuNWVtIHNvbGlkICMwMDU5YmM7XG4vLyAgYm9yZGVyLWxlZnQ6IC41ZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4vL31cbi5waWNrZXJfX2RheS0tZGlzYWJsZWQ6YmVmb3JlIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2FhYWFhYTtcbn1cblxuXG4ucGlja2VyX19kYXktLWluZm9jdXM6aG92ZXJ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5waWNrZXJfX2RheS0tb3V0Zm9jdXMge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAuNzVyZW0gMDtcbiAgY29sb3I6ICNmZmY7XG5cbn1cbi5waWNrZXJfX2RheS0tb3V0Zm9jdXM6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjZGRkZGRkO1xuLy8gIGJhY2tncm91bmQ6ICNiMWRjZmI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cblxuLnBpY2tlcl9fZGF5LS1oaWdobGlnaHRlZCB7XG4vLyAgYm9yZGVyLWNvbG9yOiAjMDA4OWVjO1xufVxuLnBpY2tlcl9fZGF5LS1oaWdobGlnaHRlZDpob3Zlcixcbi5waWNrZXItLWZvY3VzZWQgLnBpY2tlcl9fZGF5LS1oaWdobGlnaHRlZCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbi8vICBjb2xvcjogIzAwMDAwMDtcbi8vICBiYWNrZ3JvdW5kOiAjYjFkY2ZiO1xuLy8gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4ucGlja2VyX19kYXktLXNlbGVjdGVkLFxuLnBpY2tlcl9fZGF5LS1zZWxlY3RlZDpob3Zlcixcbi5waWNrZXItLWZvY3VzZWQgLnBpY2tlcl9fZGF5LS1zZWxlY3RlZCB7XG5cblxuLy8gIENpcmNsZSBiYWNrZ3JvdW5kXG4gICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHRyYW5zZm9ybTogc2NhbGUoLjc1KTtcbiAgYmFja2dyb3VuZDogIzAwODllYztcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4ucGlja2VyX19kYXktLWRpc2FibGVkLFxuLnBpY2tlcl9fZGF5LS1kaXNhYmxlZDpob3Zlcixcbi5waWNrZXItLWZvY3VzZWQgLnBpY2tlcl9fZGF5LS1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIGJvcmRlci1jb2xvcjogI2Y1ZjVmNTtcbiAgY29sb3I6ICNkZGRkZGQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5waWNrZXJfX2RheS0taGlnaGxpZ2h0ZWQucGlja2VyX19kYXktLWRpc2FibGVkLFxuLnBpY2tlcl9fZGF5LS1oaWdobGlnaHRlZC5waWNrZXJfX2RheS0tZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjYmJiYmJiO1xufVxuLyoqXG4gKiBUaGUgZm9vdGVyIGNvbnRhaW5pbmcgdGhlIFwidG9kYXlcIiwgXCJjbGVhclwiLCBhbmQgXCJjbG9zZVwiIGJ1dHRvbnMuXG4gKi9cbi5waWNrZXJfX2Zvb3RlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuLnBpY2tlcl9fYnV0dG9uLS10b2RheSxcbi5waWNrZXJfX2J1dHRvbi0tY2xlYXIsXG4ucGlja2VyX19idXR0b24tLWNsb3NlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiAuOGVtO1xuICBwYWRkaW5nOiAuNjZlbSAwO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgd2lkdGg6IDMzJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuLnBpY2tlcl9fYnV0dG9uLS10b2RheTpob3Zlcixcbi5waWNrZXJfX2J1dHRvbi0tY2xlYXI6aG92ZXIsXG4ucGlja2VyX19idXR0b24tLWNsb3NlOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZDogI2IxZGNmYjtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2IxZGNmYjtcbn1cbi5waWNrZXJfX2J1dHRvbi0tdG9kYXk6Zm9jdXMsXG4ucGlja2VyX19idXR0b24tLWNsZWFyOmZvY3VzLFxuLnBpY2tlcl9fYnV0dG9uLS1jbG9zZTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNiMWRjZmI7XG4gIGJvcmRlci1jb2xvcjogJGRhdGVwaWNrZXItZm9jdXM7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4ucGlja2VyX19idXR0b24tLXRvZGF5OmJlZm9yZSxcbi5waWNrZXJfX2J1dHRvbi0tY2xlYXI6YmVmb3JlLFxuLnBpY2tlcl9fYnV0dG9uLS1jbG9zZTpiZWZvcmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAwO1xufVxuLnBpY2tlcl9fYnV0dG9uLS10b2RheTpiZWZvcmUsXG4ucGlja2VyX19idXR0b24tLWNsZWFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBtYXJnaW4tcmlnaHQ6IC40NWVtO1xufVxuLnBpY2tlcl9fYnV0dG9uLS10b2RheTpiZWZvcmUge1xuICB0b3A6IC0wLjA1ZW07XG4gIHdpZHRoOiAwO1xuICBib3JkZXItdG9wOiAwLjY2ZW0gc29saWQgIzAwNTliYztcbiAgYm9yZGVyLWxlZnQ6IC42NmVtIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuLnBpY2tlcl9fYnV0dG9uLS1jbGVhcjpiZWZvcmUge1xuICB0b3A6IC0wLjI1ZW07XG4gIHdpZHRoOiAuNjZlbTtcbiAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICNlZTIyMDA7XG59XG4ucGlja2VyX19idXR0b24tLWNsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxEN1wiO1xuICB0b3A6IC0wLjFlbTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgZm9udC1zaXplOiAxLjFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAuMzVlbTtcbiAgY29sb3I6ICM3Nzc3Nzc7XG59XG4ucGlja2VyX19idXR0b24tLXRvZGF5W2Rpc2FibGVkXSxcbi5waWNrZXJfX2J1dHRvbi0tdG9kYXlbZGlzYWJsZWRdOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgYm9yZGVyLWNvbG9yOiAjZjVmNWY1O1xuICBjb2xvcjogI2RkZGRkZDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLnBpY2tlcl9fYnV0dG9uLS10b2RheVtkaXNhYmxlZF06YmVmb3JlIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2FhYWFhYTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENVU1RPTSBNQVRFUklBTElaRSBTVFlMRVNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ucGlja2VyX19ib3gge1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5waWNrZXJfX2RhdGUtZGlzcGxheSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItZGF0ZS1iZztcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4ucGlja2VyX19uYXYtLXByZXY6aG92ZXIsXG4ucGlja2VyX19uYXYtLW5leHQ6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kOiAkZGF0ZXBpY2tlci1zZWxlY3RlZC1vdXRmb2N1cztcbn1cblxuLnBpY2tlcl9fd2Vla2RheS1kaXNwbGF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItd2Vla2RheS1iZztcbiAgcGFkZGluZzogMTBweDtcbiAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC41O1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5waWNrZXJfX21vbnRoLWRpc3BsYXkge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDJyZW07XG59XG4ucGlja2VyX19kYXktZGlzcGxheSB7XG5cbiAgZm9udC1zaXplOiA0LjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4ucGlja2VyX195ZWFyLWRpc3BsYXkge1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgY29sb3I6ICRkYXRlcGlja2VyLXllYXI7XG59XG5cbi5waWNrZXJfX2JveCB7XG4gIHBhZGRpbmc6IDA7XG59XG4ucGlja2VyX19jYWxlbmRhci1jb250YWluZXIge1xuICBwYWRkaW5nOiAwIDFyZW07XG5cbiAgdGhlYWQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxufVxuXG4vLyBDYWxlbmRhclxuLnBpY2tlcl9fdGFibGUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAuNWVtO1xufVxuXG4ucGlja2VyX19kYXktLWluZm9jdXMge1xuICBjb2xvcjogIzU5NTk1OTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0uMztcbiAgcGFkZGluZzogLjc1cmVtIDA7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4vL1RvZGF5IHN0eWxlXG4ucGlja2VyX19kYXkucGlja2VyX19kYXktLXRvZGF5IHtcbiAgY29sb3I6ICRkYXRlcGlja2VyLXNlbGVjdGVkO1xufVxuXG4ucGlja2VyX19kYXkucGlja2VyX19kYXktLXRvZGF5LnBpY2tlcl9fZGF5LS1zZWxlY3RlZCB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vLyBUYWJsZSBIZWFkZXJcbi5waWNrZXJfX3dlZWtkYXkge1xuICBmb250LXNpemU6IC45cmVtO1xufVxuXG5cbi5waWNrZXJfX2RheS0tc2VsZWN0ZWQsXG4ucGlja2VyX19kYXktLXNlbGVjdGVkOmhvdmVyLFxuLnBpY2tlci0tZm9jdXNlZCAucGlja2VyX19kYXktLXNlbGVjdGVkIHtcbiAgLy8gQ2lyY2xlIGJhY2tncm91bmRcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2Zvcm06IHNjYWxlKC45KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItc2VsZWN0ZWQ7XG4gICYucGlja2VyX19kYXktLW91dGZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGF0ZXBpY2tlci1zZWxlY3RlZC1vdXRmb2N1cztcbiAgfVxuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnBpY2tlcl9fZm9vdGVyIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xufVxuXG4vLyBNYXRlcmlhbGl6ZSBtb2RpZmllZFxuLnBpY2tlcl9fY2xvc2UsIC5waWNrZXJfX3RvZGF5IHtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgY29sb3I6ICRkYXRlcGlja2VyLXNlbGVjdGVkO1xufVxuXG4vL21vbnRoIG5hdiBidXR0b25zXG4ucGlja2VyX19uYXYtLXByZXY6YmVmb3JlLFxuLnBpY2tlcl9fbmF2LS1uZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBib3JkZXItdG9wOiAuNWVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAuNWVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDAuNzVlbSBzb2xpZCAjNjc2NzY3O1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4ucGlja2VyX19uYXYtLW5leHQ6YmVmb3JlIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItbGVmdDogMC43NWVtIHNvbGlkICM2NzY3Njc7XG59XG5idXR0b24ucGlja2VyX190b2RheTpmb2N1cywgYnV0dG9uLnBpY2tlcl9fY2xlYXI6Zm9jdXMsIGJ1dHRvbi5waWNrZXJfX2Nsb3NlOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItc2VsZWN0ZWQtb3V0Zm9jdXM7XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgJEJBU0UtVElNRS1QSUNLRVJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFRoZSBsaXN0IG9mIHRpbWVzLlxuICovXG4ucGlja2VyX19saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMC43NWVtIDAgNC4yZW07XG4gIG1hcmdpbjogMDtcbn1cbi8qKlxuICogVGhlIHRpbWVzIG9uIHRoZSBjbG9jay5cbiAqL1xuLnBpY2tlcl9fbGlzdC1pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGRkZGQ7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkZGRkO1xuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IC43NWVtIDEuMjVlbTtcbn1cbkBtZWRpYSAobWluLWhlaWdodDogNDYuNzVlbSkge1xuICAucGlja2VyX19saXN0LWl0ZW0ge1xuICAgIHBhZGRpbmc6IC41ZW0gMWVtO1xuICB9XG59XG4vKiBIb3ZlcmVkIHRpbWUgKi9cbi5waWNrZXJfX2xpc3QtaXRlbTpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQ6ICNiMWRjZmI7XG4gIGJvcmRlci1jb2xvcjogIzAwODllYztcbiAgei1pbmRleDogMTA7XG59XG4vKiBIaWdobGlnaHRlZCBhbmQgaG92ZXJlZC9mb2N1c2VkIHRpbWUgKi9cbi5waWNrZXJfX2xpc3QtaXRlbS0taGlnaGxpZ2h0ZWQge1xuICBib3JkZXItY29sb3I6ICMwMDg5ZWM7XG4gIHotaW5kZXg6IDEwO1xufVxuLnBpY2tlcl9fbGlzdC1pdGVtLS1oaWdobGlnaHRlZDpob3Zlcixcbi5waWNrZXItLWZvY3VzZWQgLnBpY2tlcl9fbGlzdC1pdGVtLS1oaWdobGlnaHRlZCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQ6ICNiMWRjZmI7XG59XG4vKiBTZWxlY3RlZCBhbmQgaG92ZXJlZC9mb2N1c2VkIHRpbWUgKi9cbi5waWNrZXJfX2xpc3QtaXRlbS0tc2VsZWN0ZWQsXG4ucGlja2VyX19saXN0LWl0ZW0tLXNlbGVjdGVkOmhvdmVyLFxuLnBpY2tlci0tZm9jdXNlZCAucGlja2VyX19saXN0LWl0ZW0tLXNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZDogIzAwODllYztcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHotaW5kZXg6IDEwO1xufVxuLyogRGlzYWJsZWQgdGltZSAqL1xuLnBpY2tlcl9fbGlzdC1pdGVtLS1kaXNhYmxlZCxcbi5waWNrZXJfX2xpc3QtaXRlbS0tZGlzYWJsZWQ6aG92ZXIsXG4ucGlja2VyLS1mb2N1c2VkIC5waWNrZXJfX2xpc3QtaXRlbS0tZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICBib3JkZXItY29sb3I6ICNmNWY1ZjU7XG4gIGNvbG9yOiAjZGRkZGRkO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJvcmRlci1jb2xvcjogI2RkZGRkZDtcbiAgei1pbmRleDogYXV0bztcbn1cbi8qKlxuICogVGhlIGNsZWFyIGJ1dHRvblxuICovXG4ucGlja2VyLS10aW1lIC5waWNrZXJfX2J1dHRvbi0tY2xlYXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDgwJTtcbiAgbWFyZ2luOiAxZW0gYXV0byAwO1xuICBwYWRkaW5nOiAxZW0gMS4yNWVtO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogLjY3ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICM2NjY7XG59XG4ucGlja2VyLS10aW1lIC5waWNrZXJfX2J1dHRvbi0tY2xlYXI6aG92ZXIsXG4ucGlja2VyLS10aW1lIC5waWNrZXJfX2J1dHRvbi0tY2xlYXI6Zm9jdXMge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZDogI2IxZGNmYjtcbiAgYmFja2dyb3VuZDogI2VlMjIwMDtcbiAgYm9yZGVyLWNvbG9yOiAjZWUyMjAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBvdXRsaW5lOiBub25lO1xufVxuLnBpY2tlci0tdGltZSAucGlja2VyX19idXR0b24tLWNsZWFyOmJlZm9yZSB7XG4gIHRvcDogLTAuMjVlbTtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5waWNrZXItLXRpbWUgLnBpY2tlcl9fYnV0dG9uLS1jbGVhcjpob3ZlcjpiZWZvcmUsXG4ucGlja2VyLS10aW1lIC5waWNrZXJfX2J1dHRvbi0tY2xlYXI6Zm9jdXM6YmVmb3JlIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAkREVGQVVMVC1USU1FLVBJQ0tFUlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogVGhlIGZyYW1lIHRoZSBib3VuZHMgdGhlIHRpbWUgcGlja2VyLlxuICovXG4ucGlja2VyLS10aW1lIC5waWNrZXJfX2ZyYW1lIHtcbiAgbWluLXdpZHRoOiAyNTZweDtcbiAgbWF4LXdpZHRoOiAzMjBweDtcbn1cbi8qKlxuICogVGhlIHBpY2tlciBib3guXG4gKi9cbi5waWNrZXItLXRpbWUgLnBpY2tlcl9fYm94IHtcbiAgZm9udC1zaXplOiAxZW07XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgKG1pbi1oZWlnaHQ6IDQwLjEyNWVtKSB7XG4gIC5waWNrZXItLXRpbWUgLnBpY2tlcl9fYm94IHtcbiAgICBtYXJnaW4tYm90dG9tOiA1ZW07XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FDQUE7Ozs7R0FJRztBaUNKSCw0RUFBNEU7QUFRNUUsQUFBQSxJQUFJLENBQUM7RUFDSCxXQUFXLEVBQUUsVUFBVTtFQUN2QixvQkFBb0IsRUFBRSxJQUFJO0VBQzFCLHdCQUF3QixFQUFFLElBQUk7Q0FDL0I7O0FBTUQsQUFBQSxJQUFJLENBQUM7RUFDSCxNQUFNLEVBQUUsQ0FBQztDQUNWOztBQVlELEFBQUEsT0FBTztBQUNQLEtBQUs7QUFDTCxPQUFPO0FBQ1AsVUFBVTtBQUNWLE1BQU07QUFDTixNQUFNO0FBQ04sTUFBTTtBQUNOLE1BQU07QUFDTixJQUFJO0FBQ0osSUFBSTtBQUNKLEdBQUc7QUFDSCxPQUFPO0FBQ1AsT0FBTyxDQUFDO0VBQ04sT0FBTyxFQUFFLEtBQUs7Q0FDZjs7QUFPRCxBQUFBLEtBQUs7QUFDTCxNQUFNO0FBQ04sUUFBUTtBQUNSLEtBQUssQ0FBQztFQUNKLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLGNBQWMsRUFBRSxRQUFRO0NBQ3pCOztBQU9ELEFBQUEsS0FBSyxBQUFBLElBQUssRUFB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ckJILFFBQVEsQ0FBWTtFQUNuQixLQUFLLEVBMkNJLEdBQXVDO0NBMUNqRDs7QUFPSCxBQU5FLElBTUUsQ0FZRixJQUFJLEFBbEJILFFBQVEsQ0FBWTtFQUNuQixJQUFJLEVBd0NLLEdBQXVDO0NBdkNqRDs7QUFJSCxBQVpFLElBWUUsQ0FZRixJQUFJLEFBeEJILFVBQVUsQ0FBWTtFQUNyQixXQUFXLEVBOENGLFlBQXVDO0NBN0NqRDs7QUFVSCxBQVRFLElBU0UsQ0FZRixJQUFJLEFBckJILFFBQVEsQ0FBWTtFQUNuQixLQUFLLEVBMkNJLFlBQXVDO0NBMUNqRDs7QUFPSCxBQU5FLElBTUUsQ0FZRixJQUFJLEFBbEJILFFBQVEsQ0FBWTtFQUNuQixJQUFJLEVBd0NLLFlBQXVDO0NBdkNqRDs7QUFJSCxBQVpFLElBWUUsQ0FZRixJQUFJLEFBeEJILFVBQVUsQ0FBWTtFQUNyQixXQUFXLEVBOENGLFlBQXVDO0NBN0NqRDs7QUFVSCxBQVRFLElBU0UsQ0FZRixJQUFJLEFBckJILFFBQVEsQ0FBWTtFQUNuQixLQUFLLEVBMkNJLFlBQXVDO0NBMUNqRDs7QUFPSCxBQU5FLElBTUUsQ0FZRixJQUFJLEFBbEJILFFBQVEsQ0FBWTtFQUNuQixJQUFJLEVBd0NLLFlBQXVDO0NBdkNqRDs7QUFJSCxBQVpFLElBWUUsQ0FZRixJQUFJLEFBeEJILFVBQVUsQ0FBWTtFQUNyQixXQUFXLEVBOENGLEdBQXVDO0NBN0NqRDs7QUFVSCxBQVRFLElBU0UsQ0FZRixJQUFJLEFBckJILFFBQVEsQ0FBWTtFQUNuQixLQUFLLEVBMkNJLEdBQXVDO0NBMUNqRDs7QUFPSCxBQU5FLElBTUUsQ0FZRixJQUFJLEFBbEJILFFBQVEsQ0FBWTtFQUNuQixJQUFJLEVBd0NLLEdBQXVDO0NBdkNqRDs7QUFJSCxBQVpFLElBWUUsQ0FZRixJQUFJLEFBeEJILFVBQVUsQ0FBWTtFQUNyQixXQUFXLEVBOENGLFlBQXVDO0NBN0NqRDs7QUFVSCxBQVRFLElBU0UsQ0FZRixJQUFJLEFBckJILFFBQVEsQ0FBWTtFQUNuQixLQUFLLEVBMkNJLFlBQXVD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O0FBVkcsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUo1QyxBQUFBLFVBQVUsQ0FBQTtJQUtKLFNBQVMsRUFBRSxPQUF5QjtHQVN6Qzs7O0FBVkcsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUo1QyxBQUFBLFVBQVUsQ0FBQTtJQUtKLFNBQVMsRUFBRSxRQUF5QjtHQVN6Qzs7O0FBVkcsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUo1QyxBQUFBLFVBQVUsQ0FBQTtJQUtKLFNBQVMsRUFBRSxRQUF5QjtHQVN6Qzs7O0FBVkcsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUo1QyxBQUFBLFVBQVUsQ0FBQTtJQUtKLFNBQVMsRUFBRSxRQUF5QjtHQVN6Qzs7O0FBVkcsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUo1QyxBQUFBLFVBQVUsQ0FBQTtJQUtKLFNBQVMsRUFBRSxRQUF5QjtHQVN6Qzs7O0FBVkcsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUo1QyxBQUFBLFVBQVUsQ0FBQTtJQUtKLFNBQVMsRUFBRSxPQUF5QjtHQVN6Qzs7O0FBVkcsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUo1QyxBQUFBLFVBQVUsQ0FBQTtJQUtKLFNBQVMsRUFBRSxRQUF5QjtHQVN6Qzs7O0FBVkcsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUo1QyxBQUFBLFVBQVUsQ0FBQTtJQUtKLFNBQVMsRUFBRSxRQUF5QjtHQVN6Qzs7O0FBVkcsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUo1QyxBQUFBLFVBQVUsQ0FBQTtJQUtKLFNBQVMsRUFBRSxRQUF5QjtHQVN6Qzs7O0FBVkcsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFQUo1QyxBQUFBLFVBQVUsQ0FBQTtJQUtKLFNBQVMsRUFBRSxRQUF5QjtHQVN6Qzs7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Q0FBQSxBQUFBLElBQUMsQ0FBRCxRQUFDLEFBQUEsQ0E0REgsTUFBTSxBQUFBLE1BQU0sR0FBRyxLQUFLLEFBQUEsTUFBTTtBQTNEN0IsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELEtBQUMsQUFBQSxDQTBESCxNQUFNLEdBQUcsS0FBSyxBQUFBLE1BQU07QUExRHZCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxLQUFDLEFBQUEsQ0EyREgsTUFBTSxBQUFBLE1BQU0sR0FBRyxLQUFLLEFBQUEsTUFBTTtBQTFEN0IsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELEdBQUMsQUFBQSxDQXlESCxNQUFNLEdBQUcsS0FBSyxBQUFBLE1BQU07QUF6RHZCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxHQUFDLEFBQUEsQ0EwREgsTUFBTSxBQUFBLE1BQU0sR0FBRyxLQUFLLEFBQUEsTUFBTTtBQXpEN0IsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELElBQUMsQUFBQSxDQXdESCxNQUFNLEdBQUcsS0FBSyxBQUFBLE1BQU07QUF4RHZCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxJQUFDLEFBQUEsQ0F5REgsTUFBTSxBQUFBLE1BQU0sR0FBRyxLQUFLLEFBQUEsTUFBTTtBQXhEN0IsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELElBQUMsQUFBQSxDQXVESCxNQUFNLEdBQUcsS0FBSyxBQUFBLE1BQU07QUF2RHZCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxJQUFDLEFBQUEsQ0F3REgsTUFBTSxBQUFBLE1BQU0sR0FBRyxLQUFLLEFBQUEsTUFBTTtBQXZEN0IsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELFFBQUMsQUFBQSxDQXNESCxNQUFNLEdBQUcsS0FBSyxBQUFBLE1BQU07QUF0RHZCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxRQUFDLEFBQUEsQ0F1REgsTUFBTSxBQUFBLE1BQU0sR0FBRyxLQUFLLEFBQUEsTUFBTTtBQXREN0IsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELGNBQUMsQUFBQSxDQXFESCxNQUFNLEdBQUcsS0FBSyxBQUFBLE1BQU07QUFyRHZCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxjQUFDLEFBQUEsQ0FzREgsTUFBTSxBQUFBLE1BQU0sR0FBRyxLQUFLLEFBQUEsTUFBTTtBQXJEN0IsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELEdBQUMsQUFBQSxDQW9ESCxNQUFNLEdBQUcsS0FBSyxBQUFBLE1BQU07QUFwRHZCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxHQUFDLEFBQUEsQ0FxREgsTUFBTSxBQUFBLE1BQU0sR0FBRyxLQUFLLEFBQUEsTUFBTTtBQXBEN0IsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELE1BQUMsQUFBQSxDQW1ESCxNQUFNLEdBQUcsS0FBSyxBQUFBLE1BQU07QUFuRHZCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxNQUFDLEFBQUEsQ0FvREgsTUFBTSxBQUFBLE1BQU0sR0FBRyxLQUFLLEFBQUEsTUFBTTtBQW5EN0IsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELE1BQUMsQUFBQSxDQWtESCxNQUFNLEdBQUcsS0FBSyxBQUFBLE1BQU07QUFsRHZCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxNQUFDLEFBQUEsQ0FtREgsTUFBTSxBQUFBLE1BQU0sR0FBRyxLQUFLLEFBQUEsTUFBTTtBQWxEN0IsUUFBUSxBQUFBLHFCQUFxQixBQWlEMUIsTUFBTSxHQUFHLEtBQUssQUFBQSxNQUFNO0FBakR2QixRQUFRLEFBQUEscUJBQXFCLEFBa0QxQixNQUFNLEFBQUEsTUFBTSxHQUFHLEtBQUssQUFBQSxNQUFNLENBQUM7RUFDMUIsT0FBTyxFQUFFLGtCQUFrQjtFQUMzQixLQUFLLEV2QnlGTyxPQUFPO0V1QnhGbkIsT0FBTyxFQUFFLENBQUM7Q0FDWDs7QUFsRUgsQUFxRUUsS0FyRUcsQUFBQSxJQUFLLEVBQUEsQUFBQSxJQUFDLEFBQUEsRUFxRVIsUUFBUSxFQXJFWCxLQUFLLEFBQUEsSUFBSyxFQUFBLEFBQUEsSUFBQyxBQUFBLEVBc0VSLE1BQU0sQUFBQSxRQUFRO0FBckVqQixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsSUFBQyxBQUFBLENBb0VILFFBQVE7QUFwRVgsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELElBQUMsQUFBQSxDQXFFSCxNQUFNLEFBQUEsUUFBUTtBQXBFakIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELFFBQUMsQUFBQSxDQW1FSCxRQUFRO0FBbkVYLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxRQUFDLEFBQUEsQ0FvRUgsTUFBTSxBQUFBLFFBQVE7QUFuRWpCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxLQUFDLEFBQUEsQ0FrRUgsUUFBUTtBQWxFWCxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsS0FBQyxBQUFBLENBbUVILE1BQU0sQUFBQSxRQUFRO0FBbEVqQixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsR0FBQyxBQUFBLENBaUVILFFBQVE7QUFqRVgsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELEdBQUMsQUFBQSxDQWtFSCxNQUFNLEFBQUEsUUFBUTtBQWpFakIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELElBQUMsQUFBQSxDQWdFSCxRQUFRO0FBaEVYLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxJQUFDLEFBQUEsQ0FpRUgsTUFBTSxBQUFBLFFBQVE7QUFoRWpCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxJQUFDLEFBQUEsQ0ErREgsUUFBUTtBQS9EWCxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsSUFBQyxBQUFBLENBZ0VILE1BQU0sQUFBQSxRQUFRO0FBL0RqQixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsUUFBQyxBQUFBLENBOERILFFBQVE7QUE5RFgsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELFFBQUMsQUFBQSxDQStESCxNQUFNLEFBQUEsUUFBUTtBQTlEakIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELGNBQUMsQUFBQSxDQTZESCxRQUFRO0FBN0RYLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxjQUFDLEFBQUEsQ0E4REgsTUFBTSxBQUFBLFFBQVE7QUE3RGpCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxHQUFDLEFBQUEsQ0E0REgsUUFBUTtBQTVEWCxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsR0FBQyxBQUFBLENBNkRILE1BQU0sQUFBQSxRQUFRO0FBNURqQixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsTUFBQyxBQUFBLENBMkRILFFBQVE7QUEzRFgsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELE1BQUMsQUFBQSxDQTRESCxNQUFNLEFBQUEsUUFBUTtBQTNEakIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELE1BQUMsQUFBQSxDQTBESCxRQUFRO0FBMURYLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxNQUFDLEFBQUEsQ0EyREgsTUFBTSxBQUFBLFFBQVE7QUExRGpCLFFBQVEsQUFBQSxxQkFBcUIsQUF5RDFCLFFBQVE7QUF6RFgsUUFBUSxBQUFBLHFCQUFxQixBQTBEMUIsTUFBTSxBQUFBLFFBQVEsQ0FBQztFQUNkLGFBQWEsRXRCcUVNLEdBQUcsQ0FBQyxLQUFLLENENUloQixPQUFPO0V1QndFbkIsVUFBVSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ3ZCeEVULE9BQU87Q3VCeUVwQjs7QUF6RUgsQUE0RUUsS0E1RUcsQUFBQSxJQUFLLEVBQUEsQUFBQSxJQUFDLEFBQUEsRUE0RVIsUUFBUSxHQUFHLEtBQUssQUFBQSxNQUFNO0FBNUV6QixLQUFLLEFBQUEsSUFBSyxFQUFBLEFBQUEsSUFBQyxBQUFBLEVBNkVSLE1BQU0sQUFBQSxRQUFRLEdBQUcsS0FBSyxBQUFBLE1BQU07QUE1RS9CLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxJQUFDLEFBQUEsQ0EyRUgsUUFBUSxHQUFHLEtBQUssQUFBQSxNQUFNO0FBM0V6QixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsSUFBQyxBQUFBLENBNEVILE1BQU0sQUFBQSxRQUFRLEdBQUcsS0FBSyxBQUFBLE1BQU07QUEzRS9CLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxRQUFDLEFBQUEsQ0EwRUgsUUFBUSxHQUFHLEtBQUssQUFBQSxNQUFNO0FBMUV6QixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsUUFBQyxBQUFBLENBMkVILE1BQU0sQUFBQSxRQUFRLEdBQUcsS0FBSyxBQUFBLE1BQU07QUExRS9CLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxLQUFDLEFBQUEsQ0F5RUgsUUFBUSxHQUFHLEtBQUssQUFBQSxNQUFNO0FBekV6QixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsS0FBQyxBQUFBLENBMEVILE1BQU0sQUFBQSxRQUFRLEdBQUcsS0FBSyxBQUFBLE1BQU07QUF6RS9CLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxHQUFDLEFBQUEsQ0F3RUgsUUFBUSxHQUFHLEtBQUssQUFBQSxNQUFNO0FBeEV6QixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsR0FBQyxBQUFBLENBeUVILE1BQU0sQUFBQSxRQUFRLEdBQUcsS0FBSyxBQUFBLE1BQU07QUF4RS9CLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxJQUFDLEFBQUEsQ0F1RUgsUUFBUSxHQUFHLEtBQUssQUFBQSxNQUFNO0FBdkV6QixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsSUFBQyxBQUFBLENBd0VILE1BQU0sQUFBQSxRQUFRLEdBQUcsS0FBSyxBQUFBLE1BQU07QUF2RS9CLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxJQUFDLEFBQUEsQ0FzRUgsUUFBUSxHQUFHLEtBQUssQUFBQSxNQUFNO0FBdEV6QixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsSUFBQyxBQUFBLENBdUVILE1BQU0sQUFBQSxRQUFRLEdBQUcsS0FBSyxBQUFBLE1BQU07QUF0RS9CLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBRCxRQUFDLEFBQUEsQ0FxRUgsUUFBUSxHQUFHLEtBQUssQUFBQSxNQUFNO0FBckV6QixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsUUFBQyxBQUFBLENBc0VILE1BQU0sQUFBQSxRQUFR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 */