@font-face {
  font-family: LineAwesome;
  src: url(/fonts/line-awesome.eot?3f85d8035b4ccd91d2a1808dd22b7684);
  src: url(/fonts/line-awesome.eot?3f85d8035b4ccd91d2a1808dd22b7684?#iefix&v=1.1.) format("embedded-opentype"), url(/fonts/line-awesome.woff2?452a5b42cb4819f09d35bcf6cbdb24c1) format("woff2"), url(/fonts/line-awesome.woff?8b1290595e57e1d49d95ff3fa1129ecc) format("woff"), url(/fonts/line-awesome.ttf?4d42f5f0c62a8f51e876c14575354a6e) format("truetype"), url(/fonts/line-awesome.svg?131b7f1e91a652791f08f5ccfe702645#fa) format("svg");
  font-weight: normal;
  font-style: normal; }

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  @font-face {
    font-family: LineAwesome;
    src: url(/fonts/line-awesome.svg?131b7f1e91a652791f08f5ccfe702645#fa) format("svg"); } }

.fa {
  display: inline-block;
  font: normal normal normal 14px/1 "LineAwesome";
  font-size: inherit;
  text-rendering: auto;
  text-decoration: inherit;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased; }

/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -15%; }

.fa-2x {
  font-size: 2em; }

.fa-3x {
  font-size: 3em; }

.fa-4x {
  font-size: 4em; }

.fa-5x {
  font-size: 5em; }

.fa-fw {
  width: 1.28571em;
  text-align: center; }

.fa-ul {
  padding-left: 0;
  margin-left: 1.42857em;
  list-style-type: none; }
  .fa-ul > li {
    position: relative; }

.fa-li {
  position: absolute;
  left: -1.42857em;
  width: 1.42857em;
  top: 0.14286em;
  text-align: center; }
  .fa-li.fa-lg {
    left: -1.14286em; }

.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eee;
  border-radius: .1em; }

.fa-pull-left {
  float: left; }

.fa-pull-right {
  float: right; }

.fa.fa-pull-left {
  margin-right: .3em; }

.fa.fa-pull-right {
  margin-left: .3em; }

.fa.pull-left {
  margin-right: .3em; }

.fa.pull-right {
  margin-left: .3em; }

.fa-spin {
  -webkit-animation: la-spin 2s infinite linear;
  animation: la-spin 2s infinite linear; }

.fa-pulse {
  -webkit-animation: la-spin 1s infinite steps(8);
  animation: la-spin 1s infinite steps(8); }

@-webkit-keyframes la-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

@keyframes la-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg); }

.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg); }

.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg); }

.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1); }

.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1); }

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none; }

.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle; }

.fa-stack-1x, .fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center; }

.fa-stack-1x {
  line-height: inherit; }

.fa-stack-2x {
  font-size: 2em; }

.fa-inverse {
  color: #fff; }

.fa-500px:before {
  content: "\f100"; }

.fa-adjust:before {
  content: "\f101"; }

.fa-adn:before {
  content: "\f102"; }

.fa-align-center:before {
  content: "\f103"; }

.fa-align-justify:before {
  content: "\f104"; }

.fa-align-left:before {
  content: "\f105"; }

.fa-align-right:before {
  content: "\f106"; }

.fa-amazon:before {
  content: "\f107"; }

.fa-ambulance:before {
  content: "\f108"; }

.fa-anchor:before {
  content: "\f109"; }

.fa-android:before {
  content: "\f10a"; }

.fa-angellist:before {
  content: "\f10b"; }

.fa-angle-double-down:before {
  content: "\f10c"; }

.fa-angle-double-left:before {
  content: "\f10d"; }

.fa-angle-double-right:before {
  content: "\f10e"; }

.fa-angle-double-up:before {
  content: "\f10f"; }

.fa-angle-down:before {
  content: "\f110"; }

.fa-angle-left:before {
  content: "\f111"; }

.fa-angle-right:before {
  content: "\f112"; }

.fa-angle-up:before {
  content: "\f113"; }

.fa-apple:before {
  content: "\f114"; }

.fa-archive:before {
  content: "\f115"; }

.fa-area-chart:before {
  content: "\f116"; }

.fa-arrow-circle-down:before {
  content: "\f117"; }

.fa-arrow-circle-left:before {
  content: "\f118"; }

.fa-arrow-circle-o-down:before {
  content: "\f119"; }

.fa-arrow-circle-o-left:before {
  content: "\f11a"; }

.fa-arrow-circle-o-right:before {
  content: "\f11b"; }

.fa-arrow-circle-o-up:before {
  content: "\f11c"; }

.fa-arrow-circle-right:before {
  content: "\f11d"; }

.fa-arrow-circle-up:before {
  content: "\f11e"; }

.fa-arrow-down:before {
  content: "\f11f"; }

.fa-arrow-left:before {
  content: "\f120"; }

.fa-arrow-right:before {
  content: "\f121"; }

.fa-arrow-up:before {
  content: "\f122"; }

.fa-arrows:before {
  content: "\f123"; }

.fa-arrows-alt:before {
  content: "\f124"; }

.fa-arrows-h:before {
  content: "\f125"; }

.fa-arrows-v:before {
  content: "\f126"; }

.fa-asterisk:before {
  content: "\f127"; }

.fa-at:before {
  content: "\f128"; }

.fa-automobile:before {
  content: "\f129"; }

.fa-backward:before {
  content: "\f12a"; }

.fa-balance-scale:before {
  content: "\f12b"; }

.fa-ban:before {
  content: "\f12c"; }

.fa-bank:before {
  content: "\f12d"; }

.fa-bar-chart:before {
  content: "\f12e"; }

.fa-bar-chart-o:before {
  content: "\f12f"; }

.fa-barcode:before {
  content: "\f130"; }

.fa-bars:before {
  content: "\f131"; }

.fa-battery-0:before {
  content: "\f132"; }

.fa-battery-1:before {
  content: "\f133"; }

.fa-battery-2:before {
  content: "\f134"; }

.fa-battery-3:before {
  content: "\f135"; }

.fa-battery-4:before {
  content: "\f136"; }

.fa-battery-empty:before {
  content: "\f137"; }

.fa-battery-full:before {
  content: "\f138"; }

.fa-battery-half:before {
  content: "\f139"; }

.fa-battery-quarter:before {
  content: "\f13a"; }

.fa-battery-three-quarters:before {
  content: "\f13b"; }

.fa-bed:before {
  content: "\f13c"; }

.fa-beer:before {
  content: "\f13d"; }

.fa-behance:before {
  content: "\f13e"; }

.fa-behance-square:before {
  content: "\f13f"; }

.fa-bell:before {
  content: "\f140"; }

.fa-bell-o:before {
  content: "\f141"; }

.fa-bell-slash:before {
  content: "\f142"; }

.fa-bell-slash-o:before {
  content: "\f143"; }

.fa-bicycle:before {
  content: "\f144"; }

.fa-binoculars:before {
  content: "\f145"; }

.fa-birthday-cake:before {
  content: "\f146"; }

.fa-bitbucket:before {
  content: "\f147"; }

.fa-bitbucket-square:before {
  content: "\f148"; }

.fa-bitcoin:before {
  content: "\f149"; }

.fa-black-tie:before {
  content: "\f14a"; }

.fa-bold:before {
  content: "\f14b"; }

.fa-bolt:before {
  content: "\f14c"; }

.fa-bomb:before {
  content: "\f14d"; }

.fa-book:before {
  content: "\f14e"; }

.fa-bookmark:before {
  content: "\f14f"; }

.fa-bookmark-o:before {
  content: "\f150"; }

.fa-briefcase:before {
  content: "\f151"; }

.fa-btc:before {
  content: "\f152"; }

.fa-bug:before {
  content: "\f153"; }

.fa-building:before {
  content: "\f154"; }

.fa-building-o:before {
  content: "\f155"; }

.fa-bullhorn:before {
  content: "\f156"; }

.fa-bullseye:before {
  content: "\f157"; }

.fa-bus:before {
  content: "\f158"; }

.fa-buysellads:before {
  content: "\f159"; }

.fa-cab:before {
  content: "\f15a"; }

.fa-calculator:before {
  content: "\f15b"; }

.fa-calendar:before {
  content: "\f15c"; }

.fa-calendar-check-o:before {
  content: "\f15d"; }

.fa-calendar-minus-o:before {
  content: "\f15e"; }

.fa-calendar-o:before {
  content: "\f15f"; }

.fa-calendar-plus-o:before {
  content: "\f160"; }

.fa-calendar-times-o:before {
  content: "\f161"; }

.fa-camera:before {
  content: "\f162"; }

.fa-camera-retro:before {
  content: "\f163"; }

.fa-car:before {
  content: "\f164"; }

.fa-caret-down:before {
  content: "\f165"; }

.fa-caret-left:before {
  content: "\f166"; }

.fa-caret-right:before {
  content: "\f167"; }

.fa-caret-square-o-down:before {
  content: "\f168"; }

.fa-toggle-down:before {
  content: "\f168"; }

.fa-caret-square-o-left:before {
  content: "\f169"; }

.fa-toggle-left:before {
  content: "\f169"; }

.fa-caret-square-o-right:before {
  content: "\f16a"; }

.fa-toggle-right:before {
  content: "\f16a"; }

.fa-caret-square-o-up:before {
  content: "\f16b"; }

.fa-toggle-up:before {
  content: "\f16b"; }

.fa-caret-up:before {
  content: "\f16c"; }

.fa-cart-arrow-down:before {
  content: "\f16d"; }

.fa-cart-plus:before {
  content: "\f16e"; }

.fa-cc:before {
  content: "\f16f"; }

.fa-cc-amex:before {
  content: "\f170"; }

.fa-cc-diners-club:before {
  content: "\f171"; }

.fa-cc-discover:before {
  content: "\f172"; }

.fa-cc-jcb:before {
  content: "\f173"; }

.fa-cc-mastercard:before {
  content: "\f174"; }

.fa-cc-paypal:before {
  content: "\f175"; }

.fa-cc-stripe:before {
  content: "\f176"; }

.fa-cc-visa:before {
  content: "\f177"; }

.fa-certificate:before {
  content: "\f178"; }

.fa-chain:before {
  content: "\f179"; }

.fa-chain-broken:before {
  content: "\f17a"; }

.fa-check:before {
  content: "\f17b"; }

.fa-check-circle:before {
  content: "\f17c"; }

.fa-check-circle-o:before {
  content: "\f17d"; }

.fa-check-square:before {
  content: "\f17e"; }

.fa-check-square-o:before {
  content: "\f17f"; }

.fa-chevron-circle-down:before {
  content: "\f180"; }

.fa-chevron-circle-left:before {
  content: "\f181"; }

.fa-chevron-circle-right:before {
  content: "\f182"; }

.fa-chevron-circle-up:before {
  content: "\f183"; }

.fa-chevron-down:before {
  content: "\f184"; }

.fa-chevron-left:before {
  content: "\f185"; }

.fa-chevron-right:before {
  content: "\f186"; }

.fa-chevron-up:before {
  content: "\f187"; }

.fa-child:before {
  content: "\f188"; }

.fa-chrome:before {
  content: "\f189"; }

.fa-circle:before {
  content: "\f18a"; }

.fa-circle-o:before {
  content: "\f18b"; }

.fa-circle-o-notch:before {
  content: "\f18c"; }

.fa-circle-thin:before {
  content: "\f18d"; }

.fa-clipboard:before {
  content: "\f18e"; }

.fa-clock-o:before {
  content: "\f18f"; }

.fa-clone:before {
  content: "\f190"; }

.fa-close:before {
  content: "\f191"; }

.fa-cloud:before {
  content: "\f192"; }

.fa-cloud-download:before {
  content: "\f193"; }

.fa-cloud-upload:before {
  content: "\f194"; }

.fa-cny:before {
  content: "\f195"; }

.fa-code:before {
  content: "\f196"; }

.fa-code-fork:before {
  content: "\f197"; }

.fa-codepen:before {
  content: "\f198"; }

.fa-coffee:before {
  content: "\f199"; }

.fa-cog:before {
  content: "\f19a"; }

.fa-cogs:before {
  content: "\f19b"; }

.fa-columns:before {
  content: "\f19c"; }

.fa-comment:before {
  content: "\f19d"; }

.fa-comment-o:before {
  content: "\f19e"; }

.fa-commenting:before {
  content: "\f19f"; }

.fa-commenting-o:before {
  content: "\f1a0"; }

.fa-comments:before {
  content: "\f1a1"; }

.fa-comments-o:before {
  content: "\f1a2"; }

.fa-compass:before {
  content: "\f1a3"; }

.fa-compress:before {
  content: "\f1a4"; }

.fa-connectdevelop:before {
  content: "\f1a5"; }

.fa-contao:before {
  content: "\f1a6"; }

.fa-copy:before {
  content: "\f1a7"; }

.fa-copyright:before {
  content: "\f1a8"; }

.fa-creative-commons:before {
  content: "\f1a9"; }

.fa-credit-card:before {
  content: "\f1aa"; }

.fa-crop:before {
  content: "\f1ab"; }

.fa-crosshairs:before {
  content: "\f1ac"; }

.fa-css3:before {
  content: "\f1ad"; }

.fa-cube:before {
  content: "\f1ae"; }

.fa-cubes:before {
  content: "\f1af"; }

.fa-cut:before {
  content: "\f1b0"; }

.fa-cutlery:before {
  content: "\f1b1"; }

.fa-dashboard:before {
  content: "\f1b2"; }

.fa-dashcube:before {
  content: "\f1b3"; }

.fa-database:before {
  content: "\f1b4"; }

.fa-dedent:before {
  content: "\f1b5"; }

.fa-delicious:before {
  content: "\f1b6"; }

.fa-desktop:before {
  content: "\f1b7"; }

.fa-deviantart:before {
  content: "\f1b8"; }

.fa-diamond:before {
  content: "\f1b9"; }

.fa-digg:before {
  content: "\f1ba"; }

.fa-dollar:before {
  content: "\f1bb"; }

.fa-dot-circle-o:before {
  content: "\f1bc"; }

.fa-download:before {
  content: "\f1bd"; }

.fa-dribbble:before {
  content: "\f1be"; }

.fa-dropbox:before {
  content: "\f1bf"; }

.fa-drupal:before {
  content: "\f1c0"; }

.fa-edit:before {
  content: "\f1c1"; }

.fa-eject:before {
  content: "\f1c2"; }

.fa-ellipsis-h:before {
  content: "\f1c3"; }

.fa-ellipsis-v:before {
  content: "\f1c4"; }

.fa-empire:before {
  content: "\f1c5"; }

.fa-ge:before {
  content: "\f1c5"; }

.fa-envelope:before {
  content: "\f1c6"; }

.fa-envelope-o:before {
  content: "\f1c7"; }

.fa-envelope-square:before {
  content: "\f1c8"; }

.fa-eraser:before {
  content: "\f1c9"; }

.fa-eur:before {
  content: "\f1ca"; }

.fa-euro:before {
  content: "\f1cb"; }

.fa-exchange:before {
  content: "\f1cc"; }

.fa-exclamation:before {
  content: "\f1cd"; }

.fa-exclamation-circle:before {
  content: "\f1ce"; }

.fa-exclamation-triangle:before {
  content: "\f1cf"; }

.fa-expand:before {
  content: "\f1d0"; }

.fa-expeditedssl:before {
  content: "\f1d1"; }

.fa-external-link:before {
  content: "\f1d2"; }

.fa-external-link-square:before {
  content: "\f1d3"; }

.fa-eye:before {
  content: "\f1d4"; }

.fa-eye-slash:before {
  content: "\f1d5"; }

.fa-eyedropper:before {
  content: "\f1d6"; }

.fa-facebook:before {
  content: "\f1d7"; }

.fa-facebook-f:before {
  content: "\f1d7"; }

.fa-facebook-official:before {
  content: "\f1d8"; }

.fa-facebook-square:before {
  content: "\f1d9"; }

.fa-fast-backward:before {
  content: "\f1da"; }

.fa-fast-forward:before {
  content: "\f1db"; }

.fa-fax:before {
  content: "\f1dc"; }

.fa-female:before {
  content: "\f1dd"; }

.fa-fighter-jet:before {
  content: "\f1de"; }

.fa-file:before {
  content: "\f1df"; }

.fa-file-archive-o:before {
  content: "\f1e0"; }

.fa-file-audio-o:before {
  content: "\f1e1"; }

.fa-file-code-o:before {
  content: "\f1e2"; }

.fa-file-excel-o:before {
  content: "\f1e3"; }

.fa-file-image-o:before {
  content: "\f1e4"; }

.fa-file-movie-o:before {
  content: "\f1e5"; }

.fa-file-o:before {
  content: "\f1e6"; }

.fa-file-pdf-o:before {
  content: "\f1e7"; }

.fa-file-photo-o:before {
  content: "\f1e8"; }

.fa-file-picture-o:before {
  content: "\f1e9"; }

.fa-file-powerpoint-o:before {
  content: "\f1ea"; }

.fa-file-sound-o:before {
  content: "\f1eb"; }

.fa-file-text:before {
  content: "\f1ec"; }

.fa-file-text-o:before {
  content: "\f1ed"; }

.fa-file-video-o:before {
  content: "\f1ee"; }

.fa-file-word-o:before {
  content: "\f1ef"; }

.fa-file-zip-o:before {
  content: "\f1f0"; }

.fa-files-o:before {
  content: "\f1f1"; }

.fa-film:before {
  content: "\f1f2"; }

.fa-filter:before {
  content: "\f1f3"; }

.fa-fire:before {
  content: "\f1f4"; }

.fa-fire-extinguisher:before {
  content: "\f1f5"; }

.fa-firefox:before {
  content: "\f1f6"; }

.fa-flag:before {
  content: "\f1f7"; }

.fa-flag-checkered:before {
  content: "\f1f8"; }

.fa-flag-o:before {
  content: "\f1f9"; }

.fa-flash:before {
  content: "\f1fa"; }

.fa-flask:before {
  content: "\f1fb"; }

.fa-flickr:before {
  content: "\f1fc"; }

.fa-floppy-o:before {
  content: "\f1fd"; }

.fa-folder:before {
  content: "\f1fe"; }

.fa-folder-o:before {
  content: "\f1ff"; }

.fa-folder-open:before {
  content: "\f200"; }

.fa-folder-open-o:before {
  content: "\f201"; }

.fa-font:before {
  content: "\f202"; }

.fa-fonticons:before {
  content: "\f203"; }

.fa-forumbee:before {
  content: "\f204"; }

.fa-forward:before {
  content: "\f205"; }

.fa-foursquare:before {
  content: "\f206"; }

.fa-frown-o:before {
  content: "\f207"; }

.fa-futbol-o:before {
  content: "\f208"; }

.fa-soccer-ball-o:before {
  content: "\f208"; }

.fa-gamepad:before {
  content: "\f209"; }

.fa-gavel:before {
  content: "\f20a"; }

.fa-gbp:before {
  content: "\f20b"; }

.fa-gear:before {
  content: "\f20c"; }

.fa-gears:before {
  content: "\f20d"; }

.fa-genderless:before {
  content: "\f20e"; }

.fa-get-pocket:before {
  content: "\f20f"; }

.fa-gg:before {
  content: "\f210"; }

.fa-gg-circle:before {
  content: "\f211"; }

.fa-gift:before {
  content: "\f212"; }

.fa-git:before {
  content: "\f213"; }

.fa-git-square:before {
  content: "\f214"; }

.fa-github:before {
  content: "\f215"; }

.fa-github-alt:before {
  content: "\f216"; }

.fa-github-square:before {
  content: "\f217"; }

.fa-glass:before {
  content: "\f218"; }

.fa-globe:before {
  content: "\f219"; }

.fa-google:before {
  content: "\f21a"; }

.fa-google-plus:before {
  content: "\f21b"; }

.fa-google-plus-square:before {
  content: "\f21c"; }

.fa-google-wallet:before {
  content: "\f21d"; }

.fa-graduation-cap:before {
  content: "\f21e"; }

.fa-gratipay:before {
  content: "\f21f"; }

.fa-gittip:before {
  content: "\f21f"; }

.fa-group:before {
  content: "\f220"; }

.fa-h-square:before {
  content: "\f221"; }

.fa-hacker-news:before {
  content: "\f222"; }

.fa-hand-grab-o:before {
  content: "\f223"; }

.fa-hand-lizard-o:before {
  content: "\f224"; }

.fa-hand-o-down:before {
  content: "\f225"; }

.fa-hand-o-left:before {
  content: "\f226"; }

.fa-hand-o-right:before {
  content: "\f227"; }

.fa-hand-o-up:before {
  content: "\f228"; }

.fa-hand-paper-o:before {
  content: "\f229"; }

.fa-hand-peace-o:before {
  content: "\f22a"; }

.fa-hand-pointer-o:before {
  content: "\f22b"; }

.fa-hand-rock-o:before {
  content: "\f22c"; }

.fa-hand-scissors-o:before {
  content: "\f22d"; }

.fa-hand-spock-o:before {
  content: "\f22e"; }

.fa-hand-stop-o:before {
  content: "\f22f"; }

.fa-hdd-o:before {
  content: "\f230"; }

.fa-header:before {
  content: "\f231"; }

.fa-headphones:before {
  content: "\f232"; }

.fa-heart:before {
  content: "\f233"; }

.fa-heart-o:before {
  content: "\f234"; }

.fa-heartbeat:before {
  content: "\f235"; }

.fa-history:before {
  content: "\f236"; }

.fa-home:before {
  content: "\f237"; }

.fa-hospital-o:before {
  content: "\f238"; }

.fa-hotel:before {
  content: "\f239"; }

.fa-hourglass:before {
  content: "\f23a"; }

.fa-hourglass-1:before {
  content: "\f23b"; }

.fa-hourglass-2:before {
  content: "\f23c"; }

.fa-hourglass-3:before {
  content: "\f23d"; }

.fa-hourglass-end:before {
  content: "\f23e"; }

.fa-hourglass-half:before {
  content: "\f23f"; }

.fa-hourglass-o:before {
  content: "\f240"; }

.fa-hourglass-start:before {
  content: "\f241"; }

.fa-houzz:before {
  content: "\f242"; }

.fa-html5:before {
  content: "\f243"; }

.fa-i-cursor:before {
  content: "\f244"; }

.fa-ils:before {
  content: "\f245"; }

.fa-image:before {
  content: "\f246"; }

.fa-inbox:before {
  content: "\f247"; }

.fa-indent:before {
  content: "\f248"; }

.fa-industry:before {
  content: "\f249"; }

.fa-info:before {
  content: "\f24a"; }

.fa-info-circle:before {
  content: "\f24b"; }

.fa-inr:before {
  content: "\f24c"; }

.fa-instagram:before {
  content: "\f24d"; }

.fa-institution:before {
  content: "\f24e"; }

.fa-internet-explorer:before {
  content: "\f24f"; }

.fa-ioxhost:before {
  content: "\f250"; }

.fa-italic:before {
  content: "\f251"; }

.fa-joomla:before {
  content: "\f252"; }

.fa-jpy:before {
  content: "\f253"; }

.fa-jsfiddle:before {
  content: "\f254"; }

.fa-key:before {
  content: "\f255"; }

.fa-keyboard-o:before {
  content: "\f256"; }

.fa-krw:before {
  content: "\f257"; }

.fa-language:before {
  content: "\f258"; }

.fa-laptop:before {
  content: "\f259"; }

.fa-lastfm:before {
  content: "\f25a"; }

.fa-lastfm-square:before {
  content: "\f25b"; }

.fa-leaf:before {
  content: "\f25c"; }

.fa-leanpub:before {
  content: "\f25d"; }

.fa-legal:before {
  content: "\f25e"; }

.fa-lemon-o:before {
  content: "\f25f"; }

.fa-level-down:before {
  content: "\f260"; }

.fa-level-up:before {
  content: "\f261"; }

.fa-life-bouy:before {
  content: "\f262"; }

.fa-life-buoy:before {
  content: "\f263"; }

.fa-life-ring:before {
  content: "\f264"; }

.fa-support:before {
  content: "\f264"; }

.fa-life-saver:before {
  content: "\f265"; }

.fa-lightbulb-o:before {
  content: "\f266"; }

.fa-line-chart:before {
  content: "\f267"; }

.fa-link:before {
  content: "\f268"; }

.fa-linkedin:before {
  content: "\f269"; }

.fa-linkedin-square:before {
  content: "\f26a"; }

.fa-linux:before {
  content: "\f26b"; }

.fa-list:before {
  content: "\f26c"; }

.fa-list-alt:before {
  content: "\f26d"; }

.fa-list-ol:before {
  content: "\f26e"; }

.fa-list-ul:before {
  content: "\f26f"; }

.fa-location-arrow:before {
  content: "\f270"; }

.fa-lock:before {
  content: "\f271"; }

.fa-long-arrow-down:before {
  content: "\f272"; }

.fa-long-arrow-left:before {
  content: "\f273"; }

.fa-long-arrow-right:before {
  content: "\f274"; }

.fa-long-arrow-up:before {
  content: "\f275"; }

.fa-magic:before {
  content: "\f276"; }

.fa-magnet:before {
  content: "\f277"; }

.fa-mail-forward:before {
  content: "\f278"; }

.fa-mail-reply:before {
  content: "\f279"; }

.fa-mail-reply-all:before {
  content: "\f27a"; }

.fa-male:before {
  content: "\f27b"; }

.fa-map:before {
  content: "\f27c"; }

.fa-map-marker:before {
  content: "\f27d"; }

.fa-map-o:before {
  content: "\f27e"; }

.fa-map-pin:before {
  content: "\f27f"; }

.fa-map-signs:before {
  content: "\f280"; }

.fa-mars:before {
  content: "\f281"; }

.fa-mars-double:before {
  content: "\f282"; }

.fa-mars-stroke:before {
  content: "\f283"; }

.fa-mars-stroke-h:before {
  content: "\f284"; }

.fa-mars-stroke-v:before {
  content: "\f285"; }

.fa-maxcdn:before {
  content: "\f286"; }

.fa-meanpath:before {
  content: "\f287"; }

.fa-medium:before {
  content: "\f288"; }

.fa-medkit:before {
  content: "\f289"; }

.fa-meh-o:before {
  content: "\f28a"; }

.fa-mercury:before {
  content: "\f28b"; }

.fa-microphone:before {
  content: "\f28c"; }

.fa-microphone-slash:before {
  content: "\f28d"; }

.fa-minus:before {
  content: "\f28e"; }

.fa-minus-circle:before {
  content: "\f28f"; }

.fa-minus-square:before {
  content: "\f290"; }

.fa-minus-square-o:before {
  content: "\f291"; }

.fa-mobile:before {
  content: "\f292"; }

.fa-mobile-phone:before {
  content: "\f293"; }

.fa-money:before {
  content: "\f294"; }

.fa-moon-o:before {
  content: "\f295"; }

.fa-mortar-board:before {
  content: "\f296"; }

.fa-motorcycle:before {
  content: "\f297"; }

.fa-mouse-pointer:before {
  content: "\f298"; }

.fa-music:before {
  content: "\f299"; }

.fa-navicon:before {
  content: "\f29a"; }

.fa-neuter:before {
  content: "\f29b"; }

.fa-newspaper-o:before {
  content: "\f29c"; }

.fa-object-group:before {
  content: "\f29d"; }

.fa-object-ungroup:before {
  content: "\f29e"; }

.fa-odnoklassniki:before {
  content: "\f29f"; }

.fa-odnoklassniki-square:before {
  content: "\f2a0"; }

.fa-opencart:before {
  content: "\f2a1"; }

.fa-openid:before {
  content: "\f2a2"; }

.fa-opera:before {
  content: "\f2a3"; }

.fa-optin-monster:before {
  content: "\f2a4"; }

.fa-outdent:before {
  content: "\f2a5"; }

.fa-pagelines:before {
  content: "\f2a6"; }

.fa-paint-brush:before {
  content: "\f2a7"; }

.fa-paper-plane:before {
  content: "\f2a8"; }

.fa-send:before {
  content: "\f2a8"; }

.fa-paper-plane-o:before {
  content: "\f2a9"; }

.fa-send-o:before {
  content: "\f2a9"; }

.fa-paperclip:before {
  content: "\f2aa"; }

.fa-paragraph:before {
  content: "\f2ab"; }

.fa-paste:before {
  content: "\f2ac"; }

.fa-pause:before {
  content: "\f2ad"; }

.fa-paw:before {
  content: "\f2ae"; }

.fa-paypal:before {
  content: "\f2af"; }

.fa-pencil:before {
  content: "\f2b0"; }

.fa-pencil-square:before {
  content: "\f2b1"; }

.fa-pencil-square-o:before {
  content: "\f2b2"; }

.fa-phone:before {
  content: "\f2b3"; }

.fa-phone-square:before {
  content: "\f2b4"; }

.fa-photo:before {
  content: "\f2b5"; }

.fa-picture-o:before {
  content: "\f2b6"; }

.fa-pie-chart:before {
  content: "\f2b7"; }

.fa-pied-piper:before {
  content: "\f2b8"; }

.fa-pied-piper-alt:before {
  content: "\f2b9"; }

.fa-pinterest:before {
  content: "\f2ba"; }

.fa-pinterest-p:before {
  content: "\f2bb"; }

.fa-pinterest-square:before {
  content: "\f2bc"; }

.fa-plane:before {
  content: "\f2bd"; }

.fa-play:before {
  content: "\f2be"; }

.fa-play-circle:before {
  content: "\f2bf"; }

.fa-play-circle-o:before {
  content: "\f2c0"; }

.fa-plug:before {
  content: "\f2c1"; }

.fa-plus:before {
  content: "\f2c2"; }

.fa-plus-circle:before {
  content: "\f2c3"; }

.fa-plus-square:before {
  content: "\f2c4"; }

.fa-plus-square-o:before {
  content: "\f2c5"; }

.fa-power-off:before {
  content: "\f2c6"; }

.fa-print:before {
  content: "\f2c7"; }

.fa-puzzle-piece:before {
  content: "\f2c8"; }

.fa-qq:before {
  content: "\f2c9"; }

.fa-qrcode:before {
  content: "\f2ca"; }

.fa-question:before {
  content: "\f2cb"; }

.fa-question-circle:before {
  content: "\f2cc"; }

.fa-quote-left:before {
  content: "\f2cd"; }

.fa-quote-right:before {
  content: "\f2ce"; }

.fa-ra:before {
  content: "\f2cf"; }

.fa-random:before {
  content: "\f2d0"; }

.fa-rebel:before {
  content: "\f2d1"; }

.fa-recycle:before {
  content: "\f2d2"; }

.fa-reddit:before {
  content: "\f2d3"; }

.fa-reddit-square:before {
  content: "\f2d4"; }

.fa-refresh:before {
  content: "\f2d5"; }

.fa-registered:before {
  content: "\f2d6"; }

.fa-renren:before {
  content: "\f2d7"; }

.fa-reorder:before {
  content: "\f2d8"; }

.fa-repeat:before {
  content: "\f2d9"; }

.fa-reply:before {
  content: "\f2da"; }

.fa-reply-all:before {
  content: "\f2db"; }

.fa-retweet:before {
  content: "\f2dc"; }

.fa-rmb:before {
  content: "\f2dd"; }

.fa-road:before {
  content: "\f2de"; }

.fa-rocket:before {
  content: "\f2df"; }

.fa-rotate-left:before {
  content: "\f2e0"; }

.fa-rotate-right:before {
  content: "\f2e1"; }

.fa-rouble:before {
  content: "\f2e2"; }

.fa-rss:before {
  content: "\f2e3"; }

.fa-feed:before {
  content: "\f2e3"; }

.fa-rss-square:before {
  content: "\f2e4"; }

.fa-rub:before {
  content: "\f2e5"; }

.fa-ruble:before {
  content: "\f2e6"; }

.fa-rupee:before {
  content: "\f2e7"; }

.fa-safari:before {
  content: "\f2e8"; }

.fa-save:before {
  content: "\f2e9"; }

.fa-scissors:before {
  content: "\f2ea"; }

.fa-search:before {
  content: "\f2eb"; }

.fa-search-minus:before {
  content: "\f2ec"; }

.fa-search-plus:before {
  content: "\f2ed"; }

.fa-sellsy:before {
  content: "\f2ee"; }

.fa-server:before {
  content: "\f2ef"; }

.fa-share:before {
  content: "\f2f0"; }

.fa-share-alt:before {
  content: "\f2f1"; }

.fa-share-alt-square:before {
  content: "\f2f2"; }

.fa-share-square:before {
  content: "\f2f3"; }

.fa-share-square-o:before {
  content: "\f2f4"; }

.fa-shekel:before {
  content: "\f2f5"; }

.fa-sheqel:before {
  content: "\f2f6"; }

.fa-shield:before {
  content: "\f2f7"; }

.fa-ship:before {
  content: "\f2f8"; }

.fa-shirtsinbulk:before {
  content: "\f2f9"; }

.fa-shopping-cart:before {
  content: "\f2fa"; }

.fa-sign-in:before {
  content: "\f2fb"; }

.fa-sign-out:before {
  content: "\f2fc"; }

.fa-signal:before {
  content: "\f2fd"; }

.fa-simplybuilt:before {
  content: "\f2fe"; }

.fa-sitemap:before {
  content: "\f2ff"; }

.fa-skyatlas:before {
  content: "\f300"; }

.fa-skype:before {
  content: "\f301"; }

.fa-slack:before {
  content: "\f302"; }

.fa-sliders:before {
  content: "\f303"; }

.fa-slideshare:before {
  content: "\f304"; }

.fa-smile-o:before {
  content: "\f305"; }

.fa-sort:before {
  content: "\f306"; }

.fa-unsorted:before {
  content: "\f306"; }

.fa-sort-alpha-asc:before {
  content: "\f307"; }

.fa-sort-alpha-desc:before {
  content: "\f308"; }

.fa-sort-amount-asc:before {
  content: "\f309"; }

.fa-sort-amount-desc:before {
  content: "\f30a"; }

.fa-sort-asc:before {
  content: "\f30b"; }

.fa-sort-up:before {
  content: "\f30b"; }

.fa-sort-desc:before {
  content: "\f30c"; }

.fa-sort-down:before {
  content: "\f30c"; }

.fa-sort-numeric-asc:before {
  content: "\f30d"; }

.fa-sort-numeric-desc:before {
  content: "\f30e"; }

.fa-soundcloud:before {
  content: "\f30f"; }

.fa-space-shuttle:before {
  content: "\f310"; }

.fa-spinner:before {
  content: "\f311"; }

.fa-spoon:before {
  content: "\f312"; }

.fa-spotify:before {
  content: "\f313"; }

.fa-square:before {
  content: "\f314"; }

.fa-square-o:before {
  content: "\f315"; }

.fa-stack-exchange:before {
  content: "\f316"; }

.fa-stack-overflow:before {
  content: "\f317"; }

.fa-star:before {
  content: "\f318"; }

.fa-star-half:before {
  content: "\f319"; }

.fa-star-half-o:before {
  content: "\f31a"; }

.fa-star-half-full:before {
  content: "\f31a"; }

.fa-star-half-empty:before {
  content: "\f31a"; }

.fa-star-o:before {
  content: "\f31b"; }

.fa-steam:before {
  content: "\f31c"; }

.fa-steam-square:before {
  content: "\f31d"; }

.fa-step-backward:before {
  content: "\f31e"; }

.fa-step-forward:before {
  content: "\f31f"; }

.fa-stethoscope:before {
  content: "\f320"; }

.fa-sticky-note:before {
  content: "\f321"; }

.fa-sticky-note-o:before {
  content: "\f322"; }

.fa-stop:before {
  content: "\f323"; }

.fa-street-view:before {
  content: "\f324"; }

.fa-strikethrough:before {
  content: "\f325"; }

.fa-stumbleupon:before {
  content: "\f326"; }

.fa-stumbleupon-circle:before {
  content: "\f327"; }

.fa-subscript:before {
  content: "\f328"; }

.fa-subway:before {
  content: "\f329"; }

.fa-suitcase:before {
  content: "\f32a"; }

.fa-sun-o:before {
  content: "\f32b"; }

.fa-superscript:before {
  content: "\f32c"; }

.fa-table:before {
  content: "\f32d"; }

.fa-tablet:before {
  content: "\f32e"; }

.fa-tachometer:before {
  content: "\f32f"; }

.fa-tag:before {
  content: "\f330"; }

.fa-tags:before {
  content: "\f331"; }

.fa-tasks:before {
  content: "\f332"; }

.fa-taxi:before {
  content: "\f333"; }

.fa-television:before {
  content: "\f334"; }

.fa-tv:before {
  content: "\f334"; }

.fa-tencent-weibo:before {
  content: "\f335"; }

.fa-terminal:before {
  content: "\f336"; }

.fa-text-height:before {
  content: "\f337"; }

.fa-text-width:before {
  content: "\f338"; }

.fa-th:before {
  content: "\f339"; }

.fa-th-large:before {
  content: "\f33a"; }

.fa-th-list:before {
  content: "\f33b"; }

.fa-thumb-tack:before {
  content: "\f33c"; }

.fa-thumbs-down:before {
  content: "\f33d"; }

.fa-thumbs-o-down:before {
  content: "\f33e"; }

.fa-thumbs-o-up:before {
  content: "\f33f"; }

.fa-thumbs-up:before {
  content: "\f340"; }

.fa-ticket:before {
  content: "\f341"; }

.fa-times:before {
  content: "\f342"; }

.fa-remove:before {
  content: "\f342"; }

.fa-times-circle:before {
  content: "\f343"; }

.fa-times-circle-o:before {
  content: "\f344"; }

.fa-tint:before {
  content: "\f345"; }

.fa-toggle-off:before {
  content: "\f346"; }

.fa-toggle-on:before {
  content: "\f347"; }

.fa-trademark:before {
  content: "\f348"; }

.fa-train:before {
  content: "\f349"; }

.fa-transgender:before {
  content: "\f34a"; }

.fa-intersex:before {
  content: "\f34a"; }

.fa-transgender-alt:before {
  content: "\f34b"; }

.fa-trash:before {
  content: "\f34c"; }

.fa-trash-o:before {
  content: "\f34d"; }

.fa-tree:before {
  content: "\f34e"; }

.fa-trello:before {
  content: "\f34f"; }

.fa-tripadvisor:before {
  content: "\f350"; }

.fa-trophy:before {
  content: "\f351"; }

.fa-truck:before {
  content: "\f352"; }

.fa-try:before {
  content: "\f353"; }

.fa-tty:before {
  content: "\f354"; }

.fa-tumblr:before {
  content: "\f355"; }

.fa-tumblr-square:before {
  content: "\f356"; }

.fa-turkish-lira:before {
  content: "\f357"; }

.fa-twitch:before {
  content: "\f358"; }

.fa-twitter:before {
  content: "\f359"; }

.fa-twitter-square:before {
  content: "\f35a"; }

.fa-umbrella:before {
  content: "\f35b"; }

.fa-underline:before {
  content: "\f35c"; }

.fa-undo:before {
  content: "\f35d"; }

.fa-university:before {
  content: "\f35e"; }

.fa-unlink:before {
  content: "\f35f"; }

.fa-unlock:before {
  content: "\f360"; }

.fa-unlock-alt:before {
  content: "\f361"; }

.fa-upload:before {
  content: "\f362"; }

.fa-usd:before {
  content: "\f363"; }

.fa-user:before {
  content: "\f364"; }

.fa-user-md:before {
  content: "\f365"; }

.fa-user-plus:before {
  content: "\f366"; }

.fa-user-secret:before {
  content: "\f367"; }

.fa-user-times:before {
  content: "\f368"; }

.fa-users:before {
  content: "\f369"; }

.fa-venus:before {
  content: "\f36a"; }

.fa-venus-double:before {
  content: "\f36b"; }

.fa-venus-mars:before {
  content: "\f36c"; }

.fa-viacoin:before {
  content: "\f36d"; }

.fa-video-camera:before {
  content: "\f36e"; }

.fa-vimeo:before {
  content: "\f36f"; }

.fa-vimeo-square:before {
  content: "\f370"; }

.fa-vine:before {
  content: "\f371"; }

.fa-vk:before {
  content: "\f372"; }

.fa-volume-down:before {
  content: "\f373"; }

.fa-volume-off:before {
  content: "\f374"; }

.fa-volume-up:before {
  content: "\f375"; }

.fa-warning:before {
  content: "\f376"; }

.fa-wechat:before {
  content: "\f377"; }

.fa-weibo:before {
  content: "\f378"; }

.fa-weixin:before {
  content: "\f379"; }

.fa-whatsapp:before {
  content: "\f37a"; }

.fa-wheelchair:before {
  content: "\f37b"; }

.fa-wifi:before {
  content: "\f37c"; }

.fa-wikipedia-w:before {
  content: "\f37d"; }

.fa-windows:before {
  content: "\f37e"; }

.fa-won:before {
  content: "\f37f"; }

.fa-wordpress:before {
  content: "\f380"; }

.fa-wrench:before {
  content: "\f381"; }

.fa-xing:before {
  content: "\f382"; }

.fa-xing-square:before {
  content: "\f383"; }

.fa-y-combinator:before {
  content: "\f384"; }

.fa-y-combinator-square:before {
  content: "\f385"; }

.fa-yahoo:before {
  content: "\f386"; }

.fa-yc:before {
  content: "\f387"; }

.fa-yc-square:before {
  content: "\f388"; }

.fa-yelp:before {
  content: "\f389"; }

.fa-yen:before {
  content: "\f38a"; }

.fa-youtube:before {
  content: "\f38b"; }

.fa-youtube-play:before {
  content: "\f38c"; }

.fa-youtube-square:before {
  content: "\f38d"; }

.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; }
@charset "UTF-8";



@font-face {
  font-family: 'PT Sans';
  src: url(/fonts/PT_Sans-Web-Regular.ttf?f2eadd43911fbf66f2bf5c8b32f69724);
}

@font-face {
  font-family: 'PT Serif';
  src: url(/fonts/PT_Serif-Web-Regular.ttf?ae585d91ff895849f607a9bfbd439c6f);
}

@font-face {
  font-family: 'PT Serif Bold';
  src: url(/fonts/PT_Serif-Web-Bold.ttf?4b61d02c1a6ed6956666ffb0fed35eca);
}

@font-face {
  font-family: 'PT Serif Italic';
  src: url(/fonts/PT_Serif-Web-Italic.ttf?6d67303b40f64589d7c190a3d1a1ba01);
}

@font-face {
  font-family: 'PT Serif Bold Italic';
  src: url(/fonts/PT_Serif-Web-BoldItalic.ttf?4bb4d54a56d97e1d564ae9a5384199a9);
}

@font-face {
  font-family: 'LineAwesome';
  src: url(/fonts/line-awesome.ttf?4d42f5f0c62a8f51e876c14575354a6e);
}

/*!
 * Bootstrap v4.3.1 (https://getbootstrap.com/)
 * Copyright 2011-2019 The Bootstrap Authors
 * Copyright 2011-2019 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */

:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

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

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

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

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

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

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

a {
  color: #007bff;
  text-decoration: none;
  background-color: transparent;
}

a:hover {
  color: #0056b3;
  text-decoration: underline;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):hover,
a:not([href]):not([tabindex]):focus {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

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

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

select {
  word-wrap: normal;
}

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

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

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

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

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

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

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

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

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

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
}

h1,
.h1 {
  font-size: 2.5rem;
}

h2,
.h2 {
  font-size: 2rem;
}

h3,
.h3 {
  font-size: 1.75rem;
}

h4,
.h4 {
  font-size: 1.5rem;
}

h5,
.h5 {
  font-size: 1.25rem;
}

h6,
.h6 {
  font-size: 1rem;
}

.lead {
  font-size: 1.25rem;
  font-weight: 300;
}

.display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2;
}

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

small,
.small {
  font-size: 80%;
  font-weight: 400;
}

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

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

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

.list-inline-item {
  display: inline-block;
}

.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}

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

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #6c757d;
}

.blockquote-footer::before {
  content: "\2014\00A0";
}

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

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.figure-caption {
  font-size: 90%;
  color: #6c757d;
}

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-break: break-word;
}

a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem;
}

kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: 700;
}

pre {
  display: block;
  font-size: 87.5%;
  color: #212529;
}

pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

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

.container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container {
    max-width: 540px;
  }
}

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

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

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

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

.row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

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

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

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col,
.col-auto,
.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,
.col-sm,
.col-sm-auto,
.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,
.col-md,
.col-md-auto,
.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,
.col-lg,
.col-lg-auto,
.col-xl-1,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col {
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -ms-flex-positive: 1;
      flex-grow: 1;
  max-width: 100%;
}

.col-auto {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.col-1 {
  -ms-flex: 0 0 8.33333333%;
      flex: 0 0 8.33333333%;
  max-width: 8.33333333%;
}

.col-2 {
  -ms-flex: 0 0 16.66666667%;
      flex: 0 0 16.66666667%;
  max-width: 16.66666667%;
}

.col-3 {
  -ms-flex: 0 0 25%;
      flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  -ms-flex: 0 0 33.33333333%;
      flex: 0 0 33.33333333%;
  max-width: 33.33333333%;
}

.col-5 {
  -ms-flex: 0 0 41.66666667%;
      flex: 0 0 41.66666667%;
  max-width: 41.66666667%;
}

.col-6 {
  -ms-flex: 0 0 50%;
      flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  -ms-flex: 0 0 58.33333333%;
      flex: 0 0 58.33333333%;
  max-width: 58.33333333%;
}

.col-8 {
  -ms-flex: 0 0 66.66666667%;
      flex: 0 0 66.66666667%;
  max-width: 66.66666667%;
}

.col-9 {
  -ms-flex: 0 0 75%;
      flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  -ms-flex: 0 0 83.33333333%;
      flex: 0 0 83.33333333%;
  max-width: 83.33333333%;
}

.col-11 {
  -ms-flex: 0 0 91.66666667%;
      flex: 0 0 91.66666667%;
  max-width: 91.66666667%;
}

.col-12 {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%;
  max-width: 100%;
}

.order-first {
  -ms-flex-order: -1;
      order: -1;
}

.order-last {
  -ms-flex-order: 13;
      order: 13;
}

.order-0 {
  -ms-flex-order: 0;
      order: 0;
}

.order-1 {
  -ms-flex-order: 1;
      order: 1;
}

.order-2 {
  -ms-flex-order: 2;
      order: 2;
}

.order-3 {
  -ms-flex-order: 3;
      order: 3;
}

.order-4 {
  -ms-flex-order: 4;
      order: 4;
}

.order-5 {
  -ms-flex-order: 5;
      order: 5;
}

.order-6 {
  -ms-flex-order: 6;
      order: 6;
}

.order-7 {
  -ms-flex-order: 7;
      order: 7;
}

.order-8 {
  -ms-flex-order: 8;
      order: 8;
}

.order-9 {
  -ms-flex-order: 9;
      order: 9;
}

.order-10 {
  -ms-flex-order: 10;
      order: 10;
}

.order-11 {
  -ms-flex-order: 11;
      order: 11;
}

.order-12 {
  -ms-flex-order: 12;
      order: 12;
}

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .col-sm {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-positive: 1;
        flex-grow: 1;
    max-width: 100%;
  }

  .col-sm-auto {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-sm-1 {
    -ms-flex: 0 0 8.33333333%;
        flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-sm-2 {
    -ms-flex: 0 0 16.66666667%;
        flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-sm-3 {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%;
  }

  .col-sm-4 {
    -ms-flex: 0 0 33.33333333%;
        flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-sm-5 {
    -ms-flex: 0 0 41.66666667%;
        flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-sm-6 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%;
  }

  .col-sm-7 {
    -ms-flex: 0 0 58.33333333%;
        flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-sm-8 {
    -ms-flex: 0 0 66.66666667%;
        flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-sm-9 {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%;
  }

  .col-sm-10 {
    -ms-flex: 0 0 83.33333333%;
        flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-sm-11 {
    -ms-flex: 0 0 91.66666667%;
        flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-sm-12 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
  }

  .order-sm-first {
    -ms-flex-order: -1;
        order: -1;
  }

  .order-sm-last {
    -ms-flex-order: 13;
        order: 13;
  }

  .order-sm-0 {
    -ms-flex-order: 0;
        order: 0;
  }

  .order-sm-1 {
    -ms-flex-order: 1;
        order: 1;
  }

  .order-sm-2 {
    -ms-flex-order: 2;
        order: 2;
  }

  .order-sm-3 {
    -ms-flex-order: 3;
        order: 3;
  }

  .order-sm-4 {
    -ms-flex-order: 4;
        order: 4;
  }

  .order-sm-5 {
    -ms-flex-order: 5;
        order: 5;
  }

  .order-sm-6 {
    -ms-flex-order: 6;
        order: 6;
  }

  .order-sm-7 {
    -ms-flex-order: 7;
        order: 7;
  }

  .order-sm-8 {
    -ms-flex-order: 8;
        order: 8;
  }

  .order-sm-9 {
    -ms-flex-order: 9;
        order: 9;
  }

  .order-sm-10 {
    -ms-flex-order: 10;
        order: 10;
  }

  .order-sm-11 {
    -ms-flex-order: 11;
        order: 11;
  }

  .order-sm-12 {
    -ms-flex-order: 12;
        order: 12;
  }

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 768px) {
  .col-md {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-positive: 1;
        flex-grow: 1;
    max-width: 100%;
  }

  .col-md-auto {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-md-1 {
    -ms-flex: 0 0 8.33333333%;
        flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-md-2 {
    -ms-flex: 0 0 16.66666667%;
        flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-md-3 {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%;
  }

  .col-md-4 {
    -ms-flex: 0 0 33.33333333%;
        flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-md-5 {
    -ms-flex: 0 0 41.66666667%;
        flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-md-6 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%;
  }

  .col-md-7 {
    -ms-flex: 0 0 58.33333333%;
        flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-md-8 {
    -ms-flex: 0 0 66.66666667%;
        flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-md-9 {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%;
  }

  .col-md-10 {
    -ms-flex: 0 0 83.33333333%;
        flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-md-11 {
    -ms-flex: 0 0 91.66666667%;
        flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-md-12 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
  }

  .order-md-first {
    -ms-flex-order: -1;
        order: -1;
  }

  .order-md-last {
    -ms-flex-order: 13;
        order: 13;
  }

  .order-md-0 {
    -ms-flex-order: 0;
        order: 0;
  }

  .order-md-1 {
    -ms-flex-order: 1;
        order: 1;
  }

  .order-md-2 {
    -ms-flex-order: 2;
        order: 2;
  }

  .order-md-3 {
    -ms-flex-order: 3;
        order: 3;
  }

  .order-md-4 {
    -ms-flex-order: 4;
        order: 4;
  }

  .order-md-5 {
    -ms-flex-order: 5;
        order: 5;
  }

  .order-md-6 {
    -ms-flex-order: 6;
        order: 6;
  }

  .order-md-7 {
    -ms-flex-order: 7;
        order: 7;
  }

  .order-md-8 {
    -ms-flex-order: 8;
        order: 8;
  }

  .order-md-9 {
    -ms-flex-order: 9;
        order: 9;
  }

  .order-md-10 {
    -ms-flex-order: 10;
        order: 10;
  }

  .order-md-11 {
    -ms-flex-order: 11;
        order: 11;
  }

  .order-md-12 {
    -ms-flex-order: 12;
        order: 12;
  }

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 992px) {
  .col-lg {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-positive: 1;
        flex-grow: 1;
    max-width: 100%;
  }

  .col-lg-auto {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-lg-1 {
    -ms-flex: 0 0 8.33333333%;
        flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-lg-2 {
    -ms-flex: 0 0 16.66666667%;
        flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-lg-3 {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%;
  }

  .col-lg-4 {
    -ms-flex: 0 0 33.33333333%;
        flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-lg-5 {
    -ms-flex: 0 0 41.66666667%;
        flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-lg-6 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%;
  }

  .col-lg-7 {
    -ms-flex: 0 0 58.33333333%;
        flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-lg-8 {
    -ms-flex: 0 0 66.66666667%;
        flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-lg-9 {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%;
  }

  .col-lg-10 {
    -ms-flex: 0 0 83.33333333%;
        flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-lg-11 {
    -ms-flex: 0 0 91.66666667%;
        flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-lg-12 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
  }

  .order-lg-first {
    -ms-flex-order: -1;
        order: -1;
  }

  .order-lg-last {
    -ms-flex-order: 13;
        order: 13;
  }

  .order-lg-0 {
    -ms-flex-order: 0;
        order: 0;
  }

  .order-lg-1 {
    -ms-flex-order: 1;
        order: 1;
  }

  .order-lg-2 {
    -ms-flex-order: 2;
        order: 2;
  }

  .order-lg-3 {
    -ms-flex-order: 3;
        order: 3;
  }

  .order-lg-4 {
    -ms-flex-order: 4;
        order: 4;
  }

  .order-lg-5 {
    -ms-flex-order: 5;
        order: 5;
  }

  .order-lg-6 {
    -ms-flex-order: 6;
        order: 6;
  }

  .order-lg-7 {
    -ms-flex-order: 7;
        order: 7;
  }

  .order-lg-8 {
    -ms-flex-order: 8;
        order: 8;
  }

  .order-lg-9 {
    -ms-flex-order: 9;
        order: 9;
  }

  .order-lg-10 {
    -ms-flex-order: 10;
        order: 10;
  }

  .order-lg-11 {
    -ms-flex-order: 11;
        order: 11;
  }

  .order-lg-12 {
    -ms-flex-order: 12;
        order: 12;
  }

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 1200px) {
  .col-xl {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-positive: 1;
        flex-grow: 1;
    max-width: 100%;
  }

  .col-xl-auto {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-xl-1 {
    -ms-flex: 0 0 8.33333333%;
        flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-xl-2 {
    -ms-flex: 0 0 16.66666667%;
        flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-xl-3 {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%;
  }

  .col-xl-4 {
    -ms-flex: 0 0 33.33333333%;
        flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-xl-5 {
    -ms-flex: 0 0 41.66666667%;
        flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-xl-6 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%;
  }

  .col-xl-7 {
    -ms-flex: 0 0 58.33333333%;
        flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-xl-8 {
    -ms-flex: 0 0 66.66666667%;
        flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-xl-9 {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%;
  }

  .col-xl-10 {
    -ms-flex: 0 0 83.33333333%;
        flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-xl-11 {
    -ms-flex: 0 0 91.66666667%;
        flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-xl-12 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
  }

  .order-xl-first {
    -ms-flex-order: -1;
        order: -1;
  }

  .order-xl-last {
    -ms-flex-order: 13;
        order: 13;
  }

  .order-xl-0 {
    -ms-flex-order: 0;
        order: 0;
  }

  .order-xl-1 {
    -ms-flex-order: 1;
        order: 1;
  }

  .order-xl-2 {
    -ms-flex-order: 2;
        order: 2;
  }

  .order-xl-3 {
    -ms-flex-order: 3;
        order: 3;
  }

  .order-xl-4 {
    -ms-flex-order: 4;
        order: 4;
  }

  .order-xl-5 {
    -ms-flex-order: 5;
        order: 5;
  }

  .order-xl-6 {
    -ms-flex-order: 6;
        order: 6;
  }

  .order-xl-7 {
    -ms-flex-order: 7;
        order: 7;
  }

  .order-xl-8 {
    -ms-flex-order: 8;
        order: 8;
  }

  .order-xl-9 {
    -ms-flex-order: 9;
        order: 9;
  }

  .order-xl-10 {
    -ms-flex-order: 10;
        order: 10;
  }

  .order-xl-11 {
    -ms-flex-order: 11;
        order: 11;
  }

  .order-xl-12 {
    -ms-flex-order: 12;
        order: 12;
  }

  .offset-xl-0 {
    margin-left: 0;
  }

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

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

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

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

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

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

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

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

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

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

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

.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
}

.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #dee2e6;
}

.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #dee2e6;
}

.table tbody + tbody {
  border-top: 2px solid #dee2e6;
}

.table-sm th,
.table-sm td {
  padding: 0.3rem;
}

.table-bordered {
  border: 1px solid #dee2e6;
}

.table-bordered th,
.table-bordered td {
  border: 1px solid #dee2e6;
}

.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
  color: #212529;
  background-color: rgba(0, 0, 0, 0.075);
}

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #b8daff;
}

.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #7abaff;
}

.table-hover .table-primary:hover {
  background-color: #9fcdff;
}

.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: #9fcdff;
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: #d6d8db;
}

.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #b3b7bb;
}

.table-hover .table-secondary:hover {
  background-color: #c8cbcf;
}

.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: #c8cbcf;
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: #c3e6cb;
}

.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #8fd19e;
}

.table-hover .table-success:hover {
  background-color: #b1dfbb;
}

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

.table-info,
.table-info > th,
.table-info > td {
  background-color: #bee5eb;
}

.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #86cfda;
}

.table-hover .table-info:hover {
  background-color: #abdde5;
}

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

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #ffeeba;
}

.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #ffdf7e;
}

.table-hover .table-warning:hover {
  background-color: #ffe8a1;
}

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

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #f5c6cb;
}

.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #ed969e;
}

.table-hover .table-danger:hover {
  background-color: #f1b0b7;
}

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

.table-light,
.table-light > th,
.table-light > td {
  background-color: #fdfdfe;
}

.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #fbfcfc;
}

.table-hover .table-light:hover {
  background-color: #ececf6;
}

.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: #ececf6;
}

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #c6c8ca;
}

.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #95999c;
}

.table-hover .table-dark:hover {
  background-color: #b9bbbe;
}

.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: #b9bbbe;
}

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075);
}

.table .thead-dark th {
  color: #fff;
  background-color: #343a40;
  border-color: #454d55;
}

.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.table-dark {
  color: #fff;
  background-color: #343a40;
}

.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #454d55;
}

.table-dark.table-bordered {
  border: 0;
}

.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}

.table-dark.table-hover tbody tr:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.075);
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .table-responsive-sm > .table-bordered {
    border: 0;
  }
}

@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .table-responsive-md > .table-bordered {
    border: 0;
  }
}

@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .table-responsive-lg > .table-bordered {
    border: 0;
  }
}

@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.table-responsive > .table-bordered {
  border: 0;
}

.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}

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

.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.form-control:-ms-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control:disabled,
.form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}

select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.form-control-file,
.form-control-range {
  display: block;
  width: 100%;
}

.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5;
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  margin-bottom: 0;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}

.form-control-plaintext.form-control-sm,
.form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

select.form-control[size],
select.form-control[multiple] {
  height: auto;
}

textarea.form-control {
  height: auto;
}

.form-group {
  margin-bottom: 1rem;
}

.form-text {
  display: block;
  margin-top: 0.25rem;
}

.form-row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}

.form-row > .col,
.form-row > [class*="col-"] {
  padding-right: 5px;
  padding-left: 5px;
}

.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem;
}

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem;
}

.form-check-input:disabled ~ .form-check-label {
  color: #6c757d;
}

.form-check-label {
  margin-bottom: 0;
}

.form-check-inline {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
      align-items: center;
  padding-left: 0;
  margin-right: 0.75rem;
}

.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #28a745;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem;
}

.was-validated .form-control:valid,
.form-control.is-valid {
  border-color: #28a745;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center right calc(0.375em + 0.1875rem);
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:valid:focus,
.form-control.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .form-control:valid ~ .valid-feedback,
.was-validated .form-control:valid ~ .valid-tooltip,
.form-control.is-valid ~ .valid-feedback,
.form-control.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated textarea.form-control:valid,
textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:valid,
.custom-select.is-valid {
  border-color: #28a745;
  padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .custom-select:valid:focus,
.custom-select.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .custom-select:valid ~ .valid-feedback,
.was-validated .custom-select:valid ~ .valid-tooltip,
.custom-select.is-valid ~ .valid-feedback,
.custom-select.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control-file:valid ~ .valid-feedback,
.was-validated .form-control-file:valid ~ .valid-tooltip,
.form-control-file.is-valid ~ .valid-feedback,
.form-control-file.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-check-input:valid ~ .form-check-label,
.form-check-input.is-valid ~ .form-check-label {
  color: #28a745;
}

.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip,
.form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-control-input:valid ~ .custom-control-label,
.custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745;
}

.was-validated .custom-control-input:valid ~ .custom-control-label::before,
.custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #28a745;
}

.was-validated .custom-control-input:valid ~ .valid-feedback,
.was-validated .custom-control-input:valid ~ .valid-tooltip,
.custom-control-input.is-valid ~ .valid-feedback,
.custom-control-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before,
.custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57;
}

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before,
.custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before,
.custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #28a745;
}

.was-validated .custom-file-input:valid ~ .custom-file-label,
.custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745;
}

.was-validated .custom-file-input:valid ~ .valid-feedback,
.was-validated .custom-file-input:valid ~ .valid-tooltip,
.custom-file-input.is-valid ~ .valid-feedback,
.custom-file-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-file-input:valid:focus ~ .custom-file-label,
.custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #dc3545;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem;
}

.was-validated .form-control:invalid,
.form-control.is-invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");
  background-repeat: no-repeat;
  background-position: center right calc(0.375em + 0.1875rem);
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:invalid:focus,
.form-control.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .form-control:invalid ~ .invalid-feedback,
.was-validated .form-control:invalid ~ .invalid-tooltip,
.form-control.is-invalid ~ .invalid-feedback,
.form-control.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated textarea.form-control:invalid,
textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:invalid,
.custom-select.is-invalid {
  border-color: #dc3545;
  padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .custom-select:invalid:focus,
.custom-select.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .custom-select:invalid ~ .invalid-feedback,
.was-validated .custom-select:invalid ~ .invalid-tooltip,
.custom-select.is-invalid ~ .invalid-feedback,
.custom-select.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control-file:invalid ~ .invalid-feedback,
.was-validated .form-control-file:invalid ~ .invalid-tooltip,
.form-control-file.is-invalid ~ .invalid-feedback,
.form-control-file.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-check-input:invalid ~ .form-check-label,
.form-check-input.is-invalid ~ .form-check-label {
  color: #dc3545;
}

.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip,
.form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label,
.custom-control-input.is-invalid ~ .custom-control-label {
  color: #dc3545;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label::before,
.custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #dc3545;
}

.was-validated .custom-control-input:invalid ~ .invalid-feedback,
.was-validated .custom-control-input:invalid ~ .invalid-tooltip,
.custom-control-input.is-invalid ~ .invalid-feedback,
.custom-control-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before,
.custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e4606d;
  background-color: #e4606d;
}

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before,
.custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before,
.custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #dc3545;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label,
.custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #dc3545;
}

.was-validated .custom-file-input:invalid ~ .invalid-feedback,
.was-validated .custom-file-input:invalid ~ .invalid-tooltip,
.custom-file-input.is-invalid ~ .invalid-feedback,
.custom-file-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label,
.custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.form-inline {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  -ms-flex-align: center;
      align-items: center;
}

.form-inline .form-check {
  width: 100%;
}

@media (min-width: 576px) {
  .form-inline label {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    margin-bottom: 0;
  }

  .form-inline .form-group {
    display: -ms-flexbox;
    display: flex;
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-align: center;
        align-items: center;
    margin-bottom: 0;
  }

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

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

  .form-inline .input-group,
  .form-inline .custom-select {
    width: auto;
  }

  .form-inline .form-check {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    width: auto;
    padding-left: 0;
  }

  .form-inline .form-check-input {
    position: relative;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }

  .form-inline .custom-control {
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
  }

  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}

.btn {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}

.btn:hover {
  color: #212529;
  text-decoration: none;
}

.btn:focus,
.btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.btn.disabled,
.btn:disabled {
  opacity: 0.65;
}

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

.btn-primary {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-primary:hover {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
}

.btn-primary:focus,
.btn-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.btn-primary.disabled,
.btn-primary:disabled {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #0062cc;
  border-color: #005cbf;
}

.btn-primary:not(:disabled):not(.disabled):active:focus,
.btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-secondary:hover {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
}

.btn-secondary:focus,
.btn-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-secondary.disabled,
.btn-secondary:disabled {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-secondary:not(:disabled):not(.disabled):active,
.btn-secondary:not(:disabled):not(.disabled).active,
.show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #545b62;
  border-color: #4e555b;
}

.btn-secondary:not(:disabled):not(.disabled):active:focus,
.btn-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-success {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-success:hover {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
}

.btn-success:focus,
.btn-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-success.disabled,
.btn-success:disabled {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-success:not(:disabled):not(.disabled):active,
.btn-success:not(:disabled):not(.disabled).active,
.show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #1e7e34;
  border-color: #1c7430;
}

.btn-success:not(:disabled):not(.disabled):active:focus,
.btn-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-info {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-info:hover {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
}

.btn-info:focus,
.btn-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-info.disabled,
.btn-info:disabled {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-info:not(:disabled):not(.disabled):active,
.btn-info:not(:disabled):not(.disabled).active,
.show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #117a8b;
  border-color: #10707f;
}

.btn-info:not(:disabled):not(.disabled):active:focus,
.btn-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-warning {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-warning:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}

.btn-warning:focus,
.btn-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-warning.disabled,
.btn-warning:disabled {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-warning:not(:disabled):not(.disabled):active,
.btn-warning:not(:disabled):not(.disabled).active,
.show > .btn-warning.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500;
}

.btn-warning:not(:disabled):not(.disabled):active:focus,
.btn-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-danger {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-danger:hover {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
}

.btn-danger:focus,
.btn-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-danger.disabled,
.btn-danger:disabled {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-danger:not(:disabled):not(.disabled):active,
.btn-danger:not(:disabled):not(.disabled).active,
.show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #bd2130;
  border-color: #b21f2d;
}

.btn-danger:not(:disabled):not(.disabled):active:focus,
.btn-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-light:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}

.btn-light:focus,
.btn-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-light.disabled,
.btn-light:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-light:not(:disabled):not(.disabled):active,
.btn-light:not(:disabled):not(.disabled).active,
.show > .btn-light.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df;
}

.btn-light:not(:disabled):not(.disabled):active:focus,
.btn-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-dark {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:hover {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
}

.btn-dark:focus,
.btn-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

.btn-dark.disabled,
.btn-dark:disabled {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:not(:disabled):not(.disabled):active,
.btn-dark:not(:disabled):not(.disabled).active,
.show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #1d2124;
  border-color: #171a1d;
}

.btn-dark:not(:disabled):not(.disabled):active:focus,
.btn-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

.btn-outline-primary {
  color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:hover {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:focus,
.btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-primary.disabled,
.btn-outline-primary:disabled {
  color: #007bff;
  background-color: transparent;
}

.btn-outline-primary:not(:disabled):not(.disabled):active,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:not(:disabled):not(.disabled):active:focus,
.btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:hover {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:focus,
.btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.btn-outline-secondary.disabled,
.btn-outline-secondary:disabled {
  color: #6c757d;
  background-color: transparent;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active,
.btn-outline-secondary:not(:disabled):not(.disabled).active,
.show > .btn-outline-secondary.dropdown-toggle {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,
.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.btn-outline-success {
  color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:hover {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:focus,
.btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-success.disabled,
.btn-outline-success:disabled {
  color: #28a745;
  background-color: transparent;
}

.btn-outline-success:not(:disabled):not(.disabled):active,
.btn-outline-success:not(:disabled):not(.disabled).active,
.show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:not(:disabled):not(.disabled):active:focus,
.btn-outline-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:hover {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:focus,
.btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-info.disabled,
.btn-outline-info:disabled {
  color: #17a2b8;
  background-color: transparent;
}

.btn-outline-info:not(:disabled):not(.disabled):active,
.btn-outline-info:not(:disabled):not(.disabled).active,
.show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:not(:disabled):not(.disabled):active:focus,
.btn-outline-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:hover {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:focus,
.btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-warning.disabled,
.btn-outline-warning:disabled {
  color: #ffc107;
  background-color: transparent;
}

.btn-outline-warning:not(:disabled):not(.disabled):active,
.btn-outline-warning:not(:disabled):not(.disabled).active,
.show > .btn-outline-warning.dropdown-toggle {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:not(:disabled):not(.disabled):active:focus,
.btn-outline-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-danger {
  color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:hover {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:focus,
.btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.btn-outline-danger.disabled,
.btn-outline-danger:disabled {
  color: #dc3545;
  background-color: transparent;
}

.btn-outline-danger:not(:disabled):not(.disabled):active,
.btn-outline-danger:not(:disabled):not(.disabled).active,
.show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:not(:disabled):not(.disabled):active:focus,
.btn-outline-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:hover {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:focus,
.btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-light.disabled,
.btn-outline-light:disabled {
  color: #f8f9fa;
  background-color: transparent;
}

.btn-outline-light:not(:disabled):not(.disabled):active,
.btn-outline-light:not(:disabled):not(.disabled).active,
.show > .btn-outline-light.dropdown-toggle {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:not(:disabled):not(.disabled):active:focus,
.btn-outline-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-dark {
  color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:hover {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:focus,
.btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-outline-dark.disabled,
.btn-outline-dark:disabled {
  color: #343a40;
  background-color: transparent;
}

.btn-outline-dark:not(:disabled):not(.disabled):active,
.btn-outline-dark:not(:disabled):not(.disabled).active,
.show > .btn-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:not(:disabled):not(.disabled):active:focus,
.btn-outline-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-link {
  font-weight: 400;
  color: #007bff;
  text-decoration: none;
}

.btn-link:hover {
  color: #0056b3;
  text-decoration: underline;
}

.btn-link:focus,
.btn-link.focus {
  text-decoration: underline;
  box-shadow: none;
}

.btn-link:disabled,
.btn-link.disabled {
  color: #6c757d;
  pointer-events: none;
}

.btn-lg,
.btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.btn-sm,
.btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

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

.btn-block + .btn-block {
  margin-top: 0.5rem;
}

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

.fade {
  transition: opacity 0.15s linear;
}

@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}

.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}

.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}

.dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

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

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

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

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

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

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

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

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

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

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

.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}

.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}

.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem;
}

.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}

.dropright .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-toggle::after {
  vertical-align: 0;
}

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem;
}

.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}

.dropleft .dropdown-toggle::after {
  display: none;
}

.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}

.dropleft .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropleft .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-menu[x-placement^="top"],
.dropdown-menu[x-placement^="right"],
.dropdown-menu[x-placement^="bottom"],
.dropdown-menu[x-placement^="left"] {
  right: auto;
  bottom: auto;
}

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}

.dropdown-item:hover,
.dropdown-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #f8f9fa;
}

.dropdown-item.active,
.dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #007bff;
}

.dropdown-item.disabled,
.dropdown-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1.5rem;
  color: #212529;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: -ms-inline-flexbox;
  display: inline-flex;
  vertical-align: middle;
}

.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
}

.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 1;
}

.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
}

.btn-toolbar .input-group {
  width: auto;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-left: -1px;
}

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

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

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}

.dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after,
.dropright .dropdown-toggle-split::after {
  margin-left: 0;
}

.dropleft .dropdown-toggle-split::before {
  margin-right: 0;
}

.btn-sm + .dropdown-toggle-split,
.btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split,
.btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn-group-vertical {
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: center;
      justify-content: center;
}

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

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: -1px;
}

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

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

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0;
}

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

.input-group {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: stretch;
      align-items: stretch;
  width: 100%;
}

.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  width: 1%;
  margin-bottom: 0;
}

.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .form-control-plaintext + .form-control,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
  margin-left: -1px;
}

.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
  z-index: 3;
}

.input-group > .custom-file .custom-file-input:focus {
  z-index: 4;
}

.input-group > .form-control:not(:last-child),
.input-group > .custom-select:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group > .custom-file {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.input-group > .custom-file:not(:last-child) .custom-file-label,
.input-group > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group-prepend,
.input-group-append {
  display: -ms-flexbox;
  display: flex;
}

.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2;
}

.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
  z-index: 3;
}

.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
  margin-left: -1px;
}

.input-group-prepend {
  margin-right: -1px;
}

.input-group-append {
  margin-left: -1px;
}

.input-group-text {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.input-group-text input[type="radio"],
.input-group-text input[type="checkbox"] {
  margin-top: 0;
}

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px);
}

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px);
}

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: 1.75rem;
}

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

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.custom-control {
  position: relative;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem;
}

.custom-control-inline {
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-right: 1rem;
}

.custom-control-input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: #007bff;
  background-color: #007bff;
}

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #80bdff;
}

.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: #b3d7ff;
  border-color: #b3d7ff;
}

.custom-control-input:disabled ~ .custom-control-label {
  color: #6c757d;
}

.custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #e9ecef;
}

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
}

.custom-control-label::before {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background-color: #fff;
  border: #adb5bd solid 1px;
}

.custom-control-label::after {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: no-repeat 50% / 50% 50%;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #007bff;
  background-color: #007bff;
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-radio .custom-control-label::before {
  border-radius: 50%;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}

.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-switch {
  padding-left: 2.25rem;
}

.custom-switch .custom-control-label::before {
  left: -2.25rem;
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem;
}

.custom-switch .custom-control-label::after {
  top: calc(0.25rem + 2px);
  left: calc(-2.25rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #adb5bd;
  border-radius: 0.5rem;
  transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .custom-switch .custom-control-label::after {
    transition: none;
  }
}

.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #fff;
  transform: translateX(0.75rem);
}

.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.custom-select:focus {
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-select:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.custom-select[multiple],
.custom-select[size]:not([size="1"]) {
  height: auto;
  padding-right: 0.75rem;
  background-image: none;
}

.custom-select:disabled {
  color: #6c757d;
  background-color: #e9ecef;
}

.custom-select::-ms-expand {
  display: none;
}

.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem;
}

.custom-select-lg {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem;
}

.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin-bottom: 0;
}

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  opacity: 0;
}

.custom-file-input:focus ~ .custom-file-label {
  border-color: #80bdff;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-file-input:disabled ~ .custom-file-label {
  background-color: #e9ecef;
}

.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}

.custom-file-input ~ .custom-file-label[data-browse]::after {
  content: attr(data-browse);
}

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(1.5em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 0;
}

.custom-range {
  width: 100%;
  height: calc(1rem + 0.4rem);
  padding: 0;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.custom-range:focus {
  outline: none;
}

.custom-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range::-moz-focus-outer {
  border: 0;
}

.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
          appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-webkit-slider-thumb {
    transition: none;
  }
}

.custom-range::-webkit-slider-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}

.custom-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -moz-appearance: none;
       appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-moz-range-thumb {
    transition: none;
  }
}

.custom-range::-moz-range-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}

.custom-range::-ms-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: 0;
  margin-right: 0.2rem;
  margin-left: 0.2rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-ms-thumb {
    transition: none;
  }
}

.custom-range::-ms-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-ms-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
  border-width: 0.5rem;
}

.custom-range::-ms-fill-lower {
  background-color: #dee2e6;
  border-radius: 1rem;
}

.custom-range::-ms-fill-upper {
  margin-right: 15px;
  background-color: #dee2e6;
  border-radius: 1rem;
}

.custom-range:disabled::-webkit-slider-thumb {
  background-color: #adb5bd;
}

.custom-range:disabled::-webkit-slider-runnable-track {
  cursor: default;
}

.custom-range:disabled::-moz-range-thumb {
  background-color: #adb5bd;
}

.custom-range:disabled::-moz-range-track {
  cursor: default;
}

.custom-range:disabled::-ms-thumb {
  background-color: #adb5bd;
}

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .custom-control-label::before,
  .custom-file-label,
  .custom-select {
    transition: none;
  }
}

.nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
}

.nav-link:hover,
.nav-link:focus {
  text-decoration: none;
}

.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}

.nav-tabs .nav-item {
  margin-bottom: -1px;
}

.nav-tabs .nav-link {
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6;
}

.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #fff;
  border-color: #dee2e6 #dee2e6 #fff;
}

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

.nav-pills .nav-link {
  border-radius: 0.25rem;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #007bff;
}

.nav-fill .nav-item {
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  text-align: center;
}

.nav-justified .nav-item {
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -ms-flex-positive: 1;
      flex-grow: 1;
  text-align: center;
}

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

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

.navbar {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding: 0.5rem 1rem;
}

.navbar > .container,
.navbar > .container-fluid {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.navbar-brand {
  display: inline-block;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap;
}

.navbar-brand:hover,
.navbar-brand:focus {
  text-decoration: none;
}

.navbar-nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}

.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.navbar-collapse {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  -ms-flex-positive: 1;
      flex-grow: 1;
  -ms-flex-align: center;
      align-items: center;
}

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.navbar-toggler:hover,
.navbar-toggler:focus {
  text-decoration: none;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: no-repeat center center;
  background-size: 100% 100%;
}

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 576px) {
  .navbar-expand-sm {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    -ms-flex-pack: start;
        justify-content: flex-start;
  }

  .navbar-expand-sm .navbar-nav {
    -ms-flex-direction: row;
        flex-direction: row;
  }

  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }

  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }

  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }

  .navbar-expand-sm .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }

  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
}

@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 768px) {
  .navbar-expand-md {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    -ms-flex-pack: start;
        justify-content: flex-start;
  }

  .navbar-expand-md .navbar-nav {
    -ms-flex-direction: row;
        flex-direction: row;
  }

  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }

  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }

  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }

  .navbar-expand-md .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }

  .navbar-expand-md .navbar-toggler {
    display: none;
  }
}

@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 992px) {
  .navbar-expand-lg {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    -ms-flex-pack: start;
        justify-content: flex-start;
  }

  .navbar-expand-lg .navbar-nav {
    -ms-flex-direction: row;
        flex-direction: row;
  }

  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }

  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }

  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }

  .navbar-expand-lg .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }

  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}

@media (max-width: 1199.98px) {
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 1200px) {
  .navbar-expand-xl {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
    -ms-flex-pack: start;
        justify-content: flex-start;
  }

  .navbar-expand-xl .navbar-nav {
    -ms-flex-direction: row;
        flex-direction: row;
  }

  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }

  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }

  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }

  .navbar-expand-xl .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }

  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}

.navbar-expand {
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid {
  padding-right: 0;
  padding-left: 0;
}

.navbar-expand .navbar-nav {
  -ms-flex-direction: row;
      flex-direction: row;
}

.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}

.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

.navbar-expand .navbar-collapse {
  display: -ms-flexbox !important;
  display: flex !important;
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
}

.navbar-expand .navbar-toggler {
  display: none;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-brand:hover,
.navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7);
}

.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3);
}

.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border-color: rgba(0, 0, 0, 0.1);
}

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-text a {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-text a:hover,
.navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
  color: #fff;
}

.navbar-dark .navbar-brand:hover,
.navbar-dark .navbar-brand:focus {
  color: #fff;
}

.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75);
}

.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}

.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
}

.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1);
}

.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-text a {
  color: #fff;
}

.navbar-dark .navbar-text a:hover,
.navbar-dark .navbar-text a:focus {
  color: #fff;
}

.card {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
}

.card > hr {
  margin-right: 0;
  margin-left: 0;
}

.card > .list-group:first-child .list-group-item:first-child {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.card > .list-group:last-child .list-group-item:last-child {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.card-body {
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  padding: 1.25rem;
}

.card-title {
  margin-bottom: 0.75rem;
}

.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link:hover {
  text-decoration: none;
}

.card-link + .card-link {
  margin-left: 1.25rem;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-header + .list-group .list-group-item:first-child {
  border-top: 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
}

.card-img {
  width: 100%;
  border-radius: calc(0.25rem - 1px);
}

.card-img-top {
  width: 100%;
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card-img-bottom {
  width: 100%;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-deck {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

.card-deck .card {
  margin-bottom: 15px;
}

@media (min-width: 576px) {
  .card-deck {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px;
  }

  .card-deck .card {
    display: -ms-flexbox;
    display: flex;
    -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    -ms-flex-direction: column;
        flex-direction: column;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px;
  }
}

.card-group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

.card-group > .card {
  margin-bottom: 15px;
}

@media (min-width: 576px) {
  .card-group {
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
  }

  .card-group > .card {
    -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    margin-bottom: 0;
  }

  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }

  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }

  .card-group > .card:not(:last-child) .card-img-top,
  .card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }

  .card-group > .card:not(:last-child) .card-img-bottom,
  .card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }

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

  .card-group > .card:not(:first-child) .card-img-top,
  .card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }

  .card-group > .card:not(:first-child) .card-img-bottom,
  .card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}

.card-columns .card {
  margin-bottom: 0.75rem;
}

@media (min-width: 576px) {
  .card-columns {
    column-count: 3;
    column-gap: 1.25rem;
    orphans: 1;
    widows: 1;
  }

  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.accordion > .card {
  overflow: hidden;
}

.accordion > .card:not(:first-of-type) .card-header:first-child {
  border-radius: 0;
}

.accordion > .card:not(:first-of-type):not(:last-of-type) {
  border-bottom: 0;
  border-radius: 0;
}

.accordion > .card:first-of-type {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.accordion > .card:last-of-type {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.accordion > .card .card-header {
  margin-bottom: -1px;
}

.breadcrumb {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}

.breadcrumb-item + .breadcrumb-item::before {
  display: inline-block;
  padding-right: 0.5rem;
  color: #6c757d;
  content: "/";
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}

.breadcrumb-item.active {
  color: #6c757d;
}

.pagination {
  display: -ms-flexbox;
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #007bff;
  background-color: #fff;
  border: 1px solid #dee2e6;
}

.page-link:hover {
  z-index: 2;
  color: #0056b3;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.page-link:focus {
  z-index: 2;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.page-item.active .page-link {
  z-index: 1;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #fff;
  border-color: #dee2e6;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
}

.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none;
  }
}

a.badge:hover,
a.badge:focus {
  text-decoration: none;
}

.badge:empty {
  display: none;
}

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

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

.badge-primary {
  color: #fff;
  background-color: #007bff;
}

a.badge-primary:hover,
a.badge-primary:focus {
  color: #fff;
  background-color: #0062cc;
}

a.badge-primary:focus,
a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.badge-secondary {
  color: #fff;
  background-color: #6c757d;
}

a.badge-secondary:hover,
a.badge-secondary:focus {
  color: #fff;
  background-color: #545b62;
}

a.badge-secondary:focus,
a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.badge-success {
  color: #fff;
  background-color: #28a745;
}

a.badge-success:hover,
a.badge-success:focus {
  color: #fff;
  background-color: #1e7e34;
}

a.badge-success:focus,
a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.badge-info {
  color: #fff;
  background-color: #17a2b8;
}

a.badge-info:hover,
a.badge-info:focus {
  color: #fff;
  background-color: #117a8b;
}

a.badge-info:focus,
a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.badge-warning {
  color: #212529;
  background-color: #ffc107;
}

a.badge-warning:hover,
a.badge-warning:focus {
  color: #212529;
  background-color: #d39e00;
}

a.badge-warning:focus,
a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.badge-danger {
  color: #fff;
  background-color: #dc3545;
}

a.badge-danger:hover,
a.badge-danger:focus {
  color: #fff;
  background-color: #bd2130;
}

a.badge-danger:focus,
a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.badge-light {
  color: #212529;
  background-color: #f8f9fa;
}

a.badge-light:hover,
a.badge-light:focus {
  color: #212529;
  background-color: #dae0e5;
}

a.badge-light:focus,
a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.badge-dark {
  color: #fff;
  background-color: #343a40;
}

a.badge-dark:hover,
a.badge-dark:focus {
  color: #fff;
  background-color: #1d2124;
}

a.badge-dark:focus,
a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem;
}

@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
}

.alert-dismissible {
  padding-right: 4rem;
}

.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0.75rem 1.25rem;
  color: inherit;
}

.alert-primary {
  color: #004085;
  background-color: #cce5ff;
  border-color: #b8daff;
}

.alert-primary hr {
  border-top-color: #9fcdff;
}

.alert-primary .alert-link {
  color: #002752;
}

.alert-secondary {
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db;
}

.alert-secondary hr {
  border-top-color: #c8cbcf;
}

.alert-secondary .alert-link {
  color: #202326;
}

.alert-success {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
}

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

.alert-success .alert-link {
  color: #0b2e13;
}

.alert-info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb;
}

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

.alert-info .alert-link {
  color: #062c33;
}

.alert-warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
}

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

.alert-warning .alert-link {
  color: #533f03;
}

.alert-danger {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
}

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

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

.alert-light {
  color: #818182;
  background-color: #fefefe;
  border-color: #fdfdfe;
}

.alert-light hr {
  border-top-color: #ececf6;
}

.alert-light .alert-link {
  color: #686868;
}

.alert-dark {
  color: #1b1e21;
  background-color: #d6d8d9;
  border-color: #c6c8ca;
}

.alert-dark hr {
  border-top-color: #b9bbbe;
}

.alert-dark .alert-link {
  color: #040505;
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }

  to {
    background-position: 0 0;
  }
}

.progress {
  display: -ms-flexbox;
  display: flex;
  height: 1rem;
  overflow: hidden;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.progress-bar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #007bff;
  transition: width 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.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: 1rem 1rem;
}

.progress-bar-animated {
  animation: progress-bar-stripes 1s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    animation: none;
  }
}

.media {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: flex-start;
}

.media-body {
  -ms-flex: 1;
      flex: 1;
}

.list-group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
}

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit;
}

.list-group-item-action:hover,
.list-group-item-action:focus {
  z-index: 1;
  color: #495057;
  text-decoration: none;
  background-color: #f8f9fa;
}

.list-group-item-action:active {
  color: #212529;
  background-color: #e9ecef;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
}

.list-group-item:first-child {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

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

.list-group-item.disabled,
.list-group-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: #fff;
}

.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.list-group-horizontal {
  -ms-flex-direction: row;
      flex-direction: row;
}

.list-group-horizontal .list-group-item {
  margin-right: -1px;
  margin-bottom: 0;
}

.list-group-horizontal .list-group-item:first-child {
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0;
}

.list-group-horizontal .list-group-item:last-child {
  margin-right: 0;
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0;
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    -ms-flex-direction: row;
        flex-direction: row;
  }

  .list-group-horizontal-sm .list-group-item {
    margin-right: -1px;
    margin-bottom: 0;
  }

  .list-group-horizontal-sm .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }

  .list-group-horizontal-sm .list-group-item:last-child {
    margin-right: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
}

@media (min-width: 768px) {
  .list-group-horizontal-md {
    -ms-flex-direction: row;
        flex-direction: row;
  }

  .list-group-horizontal-md .list-group-item {
    margin-right: -1px;
    margin-bottom: 0;
  }

  .list-group-horizontal-md .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }

  .list-group-horizontal-md .list-group-item:last-child {
    margin-right: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
}

@media (min-width: 992px) {
  .list-group-horizontal-lg {
    -ms-flex-direction: row;
        flex-direction: row;
  }

  .list-group-horizontal-lg .list-group-item {
    margin-right: -1px;
    margin-bottom: 0;
  }

  .list-group-horizontal-lg .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }

  .list-group-horizontal-lg .list-group-item:last-child {
    margin-right: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
}

@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    -ms-flex-direction: row;
        flex-direction: row;
  }

  .list-group-horizontal-xl .list-group-item {
    margin-right: -1px;
    margin-bottom: 0;
  }

  .list-group-horizontal-xl .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }

  .list-group-horizontal-xl .list-group-item:last-child {
    margin-right: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
}

.list-group-flush .list-group-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0;
}

.list-group-flush .list-group-item:last-child {
  margin-bottom: -1px;
}

.list-group-flush:first-child .list-group-item:first-child {
  border-top: 0;
}

.list-group-flush:last-child .list-group-item:last-child {
  margin-bottom: 0;
  border-bottom: 0;
}

.list-group-item-primary {
  color: #004085;
  background-color: #b8daff;
}

.list-group-item-primary.list-group-item-action:hover,
.list-group-item-primary.list-group-item-action:focus {
  color: #004085;
  background-color: #9fcdff;
}

.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #004085;
  border-color: #004085;
}

.list-group-item-secondary {
  color: #383d41;
  background-color: #d6d8db;
}

.list-group-item-secondary.list-group-item-action:hover,
.list-group-item-secondary.list-group-item-action:focus {
  color: #383d41;
  background-color: #c8cbcf;
}

.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #383d41;
  border-color: #383d41;
}

.list-group-item-success {
  color: #155724;
  background-color: #c3e6cb;
}

.list-group-item-success.list-group-item-action:hover,
.list-group-item-success.list-group-item-action:focus {
  color: #155724;
  background-color: #b1dfbb;
}

.list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: #155724;
  border-color: #155724;
}

.list-group-item-info {
  color: #0c5460;
  background-color: #bee5eb;
}

.list-group-item-info.list-group-item-action:hover,
.list-group-item-info.list-group-item-action:focus {
  color: #0c5460;
  background-color: #abdde5;
}

.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #0c5460;
  border-color: #0c5460;
}

.list-group-item-warning {
  color: #856404;
  background-color: #ffeeba;
}

.list-group-item-warning.list-group-item-action:hover,
.list-group-item-warning.list-group-item-action:focus {
  color: #856404;
  background-color: #ffe8a1;
}

.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #856404;
  border-color: #856404;
}

.list-group-item-danger {
  color: #721c24;
  background-color: #f5c6cb;
}

.list-group-item-danger.list-group-item-action:hover,
.list-group-item-danger.list-group-item-action:focus {
  color: #721c24;
  background-color: #f1b0b7;
}

.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #721c24;
  border-color: #721c24;
}

.list-group-item-light {
  color: #818182;
  background-color: #fdfdfe;
}

.list-group-item-light.list-group-item-action:hover,
.list-group-item-light.list-group-item-action:focus {
  color: #818182;
  background-color: #ececf6;
}

.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #818182;
  border-color: #818182;
}

.list-group-item-dark {
  color: #1b1e21;
  background-color: #c6c8ca;
}

.list-group-item-dark.list-group-item-action:hover,
.list-group-item-dark.list-group-item-action:focus {
  color: #1b1e21;
  background-color: #b9bbbe;
}

.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #1b1e21;
  border-color: #1b1e21;
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .5;
}

.close:hover {
  color: #000;
  text-decoration: none;
}

.close:not(:disabled):not(.disabled):hover,
.close:not(:disabled):not(.disabled):focus {
  opacity: .75;
}

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

a.close.disabled {
  pointer-events: none;
}

.toast {
  max-width: 350px;
  overflow: hidden;
  font-size: 0.875rem;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  opacity: 0;
  border-radius: 0.25rem;
}

.toast:not(:last-child) {
  margin-bottom: 0.75rem;
}

.toast.showing {
  opacity: 1;
}

.toast.show {
  display: block;
  opacity: 1;
}

.toast.hide {
  display: none;
}

.toast-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  padding: 0.25rem 0.75rem;
  color: #6c757d;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.toast-body {
  padding: 0.75rem;
}

.modal-open {
  overflow: hidden;
}

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

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}

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

@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}

.modal.show .modal-dialog {
  transform: none;
}

.modal-dialog-scrollable {
  display: -ms-flexbox;
  display: flex;
  max-height: calc(100% - 1rem);
}

.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}

.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  min-height: calc(100% - 1rem);
}

.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  content: "";
}

.modal-dialog-centered.modal-dialog-scrollable {
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  height: 100%;
}

.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}

.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}

.modal-content {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}

.modal-backdrop.fade {
  opacity: 0;
}

.modal-backdrop.show {
  opacity: 0.5;
}

.modal-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: 0.3rem;
  border-top-right-radius: 0.3rem;
}

.modal-header .close {
  padding: 1rem 1rem;
  margin: -1rem -1rem -1rem auto;
}

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

.modal-body {
  position: relative;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  padding: 1rem;
}

.modal-footer {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: end;
      justify-content: flex-end;
  padding: 1rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.modal-footer > :not(:first-child) {
  margin-left: .25rem;
}

.modal-footer > :not(:last-child) {
  margin-right: .25rem;
}

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

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }

  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem);
  }

  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }

  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }

  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
  }

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

@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    max-width: 800px;
  }
}

@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}

.tooltip.show {
  opacity: 0.9;
}

.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}

.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top,
.bs-tooltip-auto[x-placement^="top"] {
  padding: 0.4rem 0;
}

.bs-tooltip-top .arrow,
.bs-tooltip-auto[x-placement^="top"] .arrow {
  bottom: 0;
}

.bs-tooltip-top .arrow::before,
.bs-tooltip-auto[x-placement^="top"] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

.bs-tooltip-right,
.bs-tooltip-auto[x-placement^="right"] {
  padding: 0 0.4rem;
}

.bs-tooltip-right .arrow,
.bs-tooltip-auto[x-placement^="right"] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-right .arrow::before,
.bs-tooltip-auto[x-placement^="right"] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

.bs-tooltip-bottom,
.bs-tooltip-auto[x-placement^="bottom"] {
  padding: 0.4rem 0;
}

.bs-tooltip-bottom .arrow,
.bs-tooltip-auto[x-placement^="bottom"] .arrow {
  top: 0;
}

.bs-tooltip-bottom .arrow::before,
.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}

.bs-tooltip-left,
.bs-tooltip-auto[x-placement^="left"] {
  padding: 0 0.4rem;
}

.bs-tooltip-left .arrow,
.bs-tooltip-auto[x-placement^="left"] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-left .arrow::before,
.bs-tooltip-auto[x-placement^="left"] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}

.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 0.3rem;
}

.popover .arrow::before,
.popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top,
.bs-popover-auto[x-placement^="top"] {
  margin-bottom: 0.5rem;
}

.bs-popover-top > .arrow,
.bs-popover-auto[x-placement^="top"] > .arrow {
  bottom: calc((0.5rem + 1px) * -1);
}

.bs-popover-top > .arrow::before,
.bs-popover-auto[x-placement^="top"] > .arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-top > .arrow::after,
.bs-popover-auto[x-placement^="top"] > .arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #fff;
}

.bs-popover-right,
.bs-popover-auto[x-placement^="right"] {
  margin-left: 0.5rem;
}

.bs-popover-right > .arrow,
.bs-popover-auto[x-placement^="right"] > .arrow {
  left: calc((0.5rem + 1px) * -1);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}

.bs-popover-right > .arrow::before,
.bs-popover-auto[x-placement^="right"] > .arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-right > .arrow::after,
.bs-popover-auto[x-placement^="right"] > .arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #fff;
}

.bs-popover-bottom,
.bs-popover-auto[x-placement^="bottom"] {
  margin-top: 0.5rem;
}

.bs-popover-bottom > .arrow,
.bs-popover-auto[x-placement^="bottom"] > .arrow {
  top: calc((0.5rem + 1px) * -1);
}

.bs-popover-bottom > .arrow::before,
.bs-popover-auto[x-placement^="bottom"] > .arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-bottom > .arrow::after,
.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #fff;
}

.bs-popover-bottom .popover-header::before,
.bs-popover-auto[x-placement^="bottom"] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid #f7f7f7;
}

.bs-popover-left,
.bs-popover-auto[x-placement^="left"] {
  margin-right: 0.5rem;
}

.bs-popover-left > .arrow,
.bs-popover-auto[x-placement^="left"] > .arrow {
  right: calc((0.5rem + 1px) * -1);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}

.bs-popover-left > .arrow::before,
.bs-popover-auto[x-placement^="left"] > .arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-left > .arrow::after,
.bs-popover-auto[x-placement^="left"] > .arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #fff;
}

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}

.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 0.5rem 0.75rem;
  color: #212529;
}

.carousel {
  position: relative;
}

.carousel.pointer-event {
  -ms-touch-action: pan-y;
      touch-action: pan-y;
}

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

.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  transform: translateX(-100%);
}

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1;
}

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: 0s 0.6s opacity;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-left,
  .carousel-fade .active.carousel-item-right {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  width: 15%;
  color: #fff;
  text-align: center;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
  .carousel-control-next {
    transition: none;
  }
}

.carousel-control-prev:hover,
.carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

.carousel-control-prev {
  left: 0;
}

.carousel-control-next {
  right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: no-repeat 50% / 100% 100%;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}

.carousel-indicators li {
  box-sizing: content-box;
  -ms-flex: 0 1 auto;
      flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #fff;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: .5;
  transition: opacity 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-indicators li {
    transition: none;
  }
}

.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}

.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: spinner-border .75s linear infinite;
}

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }

  50% {
    opacity: 1;
  }
}

.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  animation: spinner-grow .75s linear infinite;
}

.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}

.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.bg-primary {
  background-color: #007bff !important;
}

a.bg-primary:hover,
a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #0062cc !important;
}

.bg-secondary {
  background-color: #6c757d !important;
}

a.bg-secondary:hover,
a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #545b62 !important;
}

.bg-success {
  background-color: #28a745 !important;
}

a.bg-success:hover,
a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #1e7e34 !important;
}

.bg-info {
  background-color: #17a2b8 !important;
}

a.bg-info:hover,
a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #117a8b !important;
}

.bg-warning {
  background-color: #ffc107 !important;
}

a.bg-warning:hover,
a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #d39e00 !important;
}

.bg-danger {
  background-color: #dc3545 !important;
}

a.bg-danger:hover,
a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #bd2130 !important;
}

.bg-light {
  background-color: #f8f9fa !important;
}

a.bg-light:hover,
a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #dae0e5 !important;
}

.bg-dark {
  background-color: #343a40 !important;
}

a.bg-dark:hover,
a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #1d2124 !important;
}

.bg-white {
  background-color: #fff !important;
}

.bg-transparent {
  background-color: transparent !important;
}

.border {
  border: 1px solid #dee2e6 !important;
}

.border-top {
  border-top: 1px solid #dee2e6 !important;
}

.border-right {
  border-right: 1px solid #dee2e6 !important;
}

.border-bottom {
  border-bottom: 1px solid #dee2e6 !important;
}

.border-left {
  border-left: 1px solid #dee2e6 !important;
}

.border-0 {
  border: 0 !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-right-0 {
  border-right: 0 !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-left-0 {
  border-left: 0 !important;
}

.border-primary {
  border-color: #007bff !important;
}

.border-secondary {
  border-color: #6c757d !important;
}

.border-success {
  border-color: #28a745 !important;
}

.border-info {
  border-color: #17a2b8 !important;
}

.border-warning {
  border-color: #ffc107 !important;
}

.border-danger {
  border-color: #dc3545 !important;
}

.border-light {
  border-color: #f8f9fa !important;
}

.border-dark {
  border-color: #343a40 !important;
}

.border-white {
  border-color: #fff !important;
}

.rounded-sm {
  border-radius: 0.2rem !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-lg {
  border-radius: 0.3rem !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 50rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: -ms-flexbox !important;
  display: flex !important;
}

.d-inline-flex {
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }

  .d-sm-inline {
    display: inline !important;
  }

  .d-sm-inline-block {
    display: inline-block !important;
  }

  .d-sm-block {
    display: block !important;
  }

  .d-sm-table {
    display: table !important;
  }

  .d-sm-table-row {
    display: table-row !important;
  }

  .d-sm-table-cell {
    display: table-cell !important;
  }

  .d-sm-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }

  .d-sm-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }

  .d-md-inline {
    display: inline !important;
  }

  .d-md-inline-block {
    display: inline-block !important;
  }

  .d-md-block {
    display: block !important;
  }

  .d-md-table {
    display: table !important;
  }

  .d-md-table-row {
    display: table-row !important;
  }

  .d-md-table-cell {
    display: table-cell !important;
  }

  .d-md-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }

  .d-md-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

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

  .d-lg-inline {
    display: inline !important;
  }

  .d-lg-inline-block {
    display: inline-block !important;
  }

  .d-lg-block {
    display: block !important;
  }

  .d-lg-table {
    display: table !important;
  }

  .d-lg-table-row {
    display: table-row !important;
  }

  .d-lg-table-cell {
    display: table-cell !important;
  }

  .d-lg-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }

  .d-lg-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

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

  .d-xl-inline {
    display: inline !important;
  }

  .d-xl-inline-block {
    display: inline-block !important;
  }

  .d-xl-block {
    display: block !important;
  }

  .d-xl-table {
    display: table !important;
  }

  .d-xl-table-row {
    display: table-row !important;
  }

  .d-xl-table-cell {
    display: table-cell !important;
  }

  .d-xl-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }

  .d-xl-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

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

  .d-print-inline {
    display: inline !important;
  }

  .d-print-inline-block {
    display: inline-block !important;
  }

  .d-print-block {
    display: block !important;
  }

  .d-print-table {
    display: table !important;
  }

  .d-print-table-row {
    display: table-row !important;
  }

  .d-print-table-cell {
    display: table-cell !important;
  }

  .d-print-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }

  .d-print-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}

.embed-responsive::before {
  display: block;
  content: "";
}

.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-21by9::before {
  padding-top: 42.85714286%;
}

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

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

.embed-responsive-1by1::before {
  padding-top: 100%;
}

.flex-row {
  -ms-flex-direction: row !important;
      flex-direction: row !important;
}

.flex-column {
  -ms-flex-direction: column !important;
      flex-direction: column !important;
}

.flex-row-reverse {
  -ms-flex-direction: row-reverse !important;
      flex-direction: row-reverse !important;
}

.flex-column-reverse {
  -ms-flex-direction: column-reverse !important;
      flex-direction: column-reverse !important;
}

.flex-wrap {
  -ms-flex-wrap: wrap !important;
      flex-wrap: wrap !important;
}

.flex-nowrap {
  -ms-flex-wrap: nowrap !important;
      flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  -ms-flex-wrap: wrap-reverse !important;
      flex-wrap: wrap-reverse !important;
}

.flex-fill {
  -ms-flex: 1 1 auto !important;
      flex: 1 1 auto !important;
}

.flex-grow-0 {
  -ms-flex-positive: 0 !important;
      flex-grow: 0 !important;
}

.flex-grow-1 {
  -ms-flex-positive: 1 !important;
      flex-grow: 1 !important;
}

.flex-shrink-0 {
  -ms-flex-negative: 0 !important;
      flex-shrink: 0 !important;
}

.flex-shrink-1 {
  -ms-flex-negative: 1 !important;
      flex-shrink: 1 !important;
}

.justify-content-start {
  -ms-flex-pack: start !important;
      justify-content: flex-start !important;
}

.justify-content-end {
  -ms-flex-pack: end !important;
      justify-content: flex-end !important;
}

.justify-content-center {
  -ms-flex-pack: center !important;
      justify-content: center !important;
}

.justify-content-between {
  -ms-flex-pack: justify !important;
      justify-content: space-between !important;
}

.justify-content-around {
  -ms-flex-pack: distribute !important;
      justify-content: space-around !important;
}

.align-items-start {
  -ms-flex-align: start !important;
      align-items: flex-start !important;
}

.align-items-end {
  -ms-flex-align: end !important;
      align-items: flex-end !important;
}

.align-items-center {
  -ms-flex-align: center !important;
      align-items: center !important;
}

.align-items-baseline {
  -ms-flex-align: baseline !important;
      align-items: baseline !important;
}

.align-items-stretch {
  -ms-flex-align: stretch !important;
      align-items: stretch !important;
}

.align-content-start {
  -ms-flex-line-pack: start !important;
      align-content: flex-start !important;
}

.align-content-end {
  -ms-flex-line-pack: end !important;
      align-content: flex-end !important;
}

.align-content-center {
  -ms-flex-line-pack: center !important;
      align-content: center !important;
}

.align-content-between {
  -ms-flex-line-pack: justify !important;
      align-content: space-between !important;
}

.align-content-around {
  -ms-flex-line-pack: distribute !important;
      align-content: space-around !important;
}

.align-content-stretch {
  -ms-flex-line-pack: stretch !important;
      align-content: stretch !important;
}

.align-self-auto {
  -ms-flex-item-align: auto !important;
      -ms-grid-row-align: auto !important;
      align-self: auto !important;
}

.align-self-start {
  -ms-flex-item-align: start !important;
      align-self: flex-start !important;
}

.align-self-end {
  -ms-flex-item-align: end !important;
      align-self: flex-end !important;
}

.align-self-center {
  -ms-flex-item-align: center !important;
      -ms-grid-row-align: center !important;
      align-self: center !important;
}

.align-self-baseline {
  -ms-flex-item-align: baseline !important;
      align-self: baseline !important;
}

.align-self-stretch {
  -ms-flex-item-align: stretch !important;
      -ms-grid-row-align: stretch !important;
      align-self: stretch !important;
}

@media (min-width: 576px) {
  .flex-sm-row {
    -ms-flex-direction: row !important;
        flex-direction: row !important;
  }

  .flex-sm-column {
    -ms-flex-direction: column !important;
        flex-direction: column !important;
  }

  .flex-sm-row-reverse {
    -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important;
  }

  .flex-sm-column-reverse {
    -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important;
  }

  .flex-sm-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important;
  }

  .flex-sm-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
  }

  .flex-sm-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important;
  }

  .flex-sm-fill {
    -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important;
  }

  .flex-sm-grow-0 {
    -ms-flex-positive: 0 !important;
        flex-grow: 0 !important;
  }

  .flex-sm-grow-1 {
    -ms-flex-positive: 1 !important;
        flex-grow: 1 !important;
  }

  .flex-sm-shrink-0 {
    -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important;
  }

  .flex-sm-shrink-1 {
    -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important;
  }

  .justify-content-sm-start {
    -ms-flex-pack: start !important;
        justify-content: flex-start !important;
  }

  .justify-content-sm-end {
    -ms-flex-pack: end !important;
        justify-content: flex-end !important;
  }

  .justify-content-sm-center {
    -ms-flex-pack: center !important;
        justify-content: center !important;
  }

  .justify-content-sm-between {
    -ms-flex-pack: justify !important;
        justify-content: space-between !important;
  }

  .justify-content-sm-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
  }

  .align-items-sm-start {
    -ms-flex-align: start !important;
        align-items: flex-start !important;
  }

  .align-items-sm-end {
    -ms-flex-align: end !important;
        align-items: flex-end !important;
  }

  .align-items-sm-center {
    -ms-flex-align: center !important;
        align-items: center !important;
  }

  .align-items-sm-baseline {
    -ms-flex-align: baseline !important;
        align-items: baseline !important;
  }

  .align-items-sm-stretch {
    -ms-flex-align: stretch !important;
        align-items: stretch !important;
  }

  .align-content-sm-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
  }

  .align-content-sm-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
  }

  .align-content-sm-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important;
  }

  .align-content-sm-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
  }

  .align-content-sm-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
  }

  .align-content-sm-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
  }

  .align-self-sm-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important;
  }

  .align-self-sm-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important;
  }

  .align-self-sm-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important;
  }

  .align-self-sm-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important;
  }

  .align-self-sm-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
  }

  .align-self-sm-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important;
  }
}

@media (min-width: 768px) {
  .flex-md-row {
    -ms-flex-direction: row !important;
        flex-direction: row !important;
  }

  .flex-md-column {
    -ms-flex-direction: column !important;
        flex-direction: column !important;
  }

  .flex-md-row-reverse {
    -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important;
  }

  .flex-md-column-reverse {
    -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important;
  }

  .flex-md-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important;
  }

  .flex-md-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
  }

  .flex-md-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important;
  }

  .flex-md-fill {
    -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important;
  }

  .flex-md-grow-0 {
    -ms-flex-positive: 0 !important;
        flex-grow: 0 !important;
  }

  .flex-md-grow-1 {
    -ms-flex-positive: 1 !important;
        flex-grow: 1 !important;
  }

  .flex-md-shrink-0 {
    -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important;
  }

  .flex-md-shrink-1 {
    -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important;
  }

  .justify-content-md-start {
    -ms-flex-pack: start !important;
        justify-content: flex-start !important;
  }

  .justify-content-md-end {
    -ms-flex-pack: end !important;
        justify-content: flex-end !important;
  }

  .justify-content-md-center {
    -ms-flex-pack: center !important;
        justify-content: center !important;
  }

  .justify-content-md-between {
    -ms-flex-pack: justify !important;
        justify-content: space-between !important;
  }

  .justify-content-md-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
  }

  .align-items-md-start {
    -ms-flex-align: start !important;
        align-items: flex-start !important;
  }

  .align-items-md-end {
    -ms-flex-align: end !important;
        align-items: flex-end !important;
  }

  .align-items-md-center {
    -ms-flex-align: center !important;
        align-items: center !important;
  }

  .align-items-md-baseline {
    -ms-flex-align: baseline !important;
        align-items: baseline !important;
  }

  .align-items-md-stretch {
    -ms-flex-align: stretch !important;
        align-items: stretch !important;
  }

  .align-content-md-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
  }

  .align-content-md-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
  }

  .align-content-md-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important;
  }

  .align-content-md-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
  }

  .align-content-md-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
  }

  .align-content-md-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
  }

  .align-self-md-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important;
  }

  .align-self-md-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important;
  }

  .align-self-md-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important;
  }

  .align-self-md-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important;
  }

  .align-self-md-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
  }

  .align-self-md-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important;
  }
}

@media (min-width: 992px) {
  .flex-lg-row {
    -ms-flex-direction: row !important;
        flex-direction: row !important;
  }

  .flex-lg-column {
    -ms-flex-direction: column !important;
        flex-direction: column !important;
  }

  .flex-lg-row-reverse {
    -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important;
  }

  .flex-lg-column-reverse {
    -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important;
  }

  .flex-lg-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important;
  }

  .flex-lg-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
  }

  .flex-lg-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important;
  }

  .flex-lg-fill {
    -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important;
  }

  .flex-lg-grow-0 {
    -ms-flex-positive: 0 !important;
        flex-grow: 0 !important;
  }

  .flex-lg-grow-1 {
    -ms-flex-positive: 1 !important;
        flex-grow: 1 !important;
  }

  .flex-lg-shrink-0 {
    -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important;
  }

  .flex-lg-shrink-1 {
    -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important;
  }

  .justify-content-lg-start {
    -ms-flex-pack: start !important;
        justify-content: flex-start !important;
  }

  .justify-content-lg-end {
    -ms-flex-pack: end !important;
        justify-content: flex-end !important;
  }

  .justify-content-lg-center {
    -ms-flex-pack: center !important;
        justify-content: center !important;
  }

  .justify-content-lg-between {
    -ms-flex-pack: justify !important;
        justify-content: space-between !important;
  }

  .justify-content-lg-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
  }

  .align-items-lg-start {
    -ms-flex-align: start !important;
        align-items: flex-start !important;
  }

  .align-items-lg-end {
    -ms-flex-align: end !important;
        align-items: flex-end !important;
  }

  .align-items-lg-center {
    -ms-flex-align: center !important;
        align-items: center !important;
  }

  .align-items-lg-baseline {
    -ms-flex-align: baseline !important;
        align-items: baseline !important;
  }

  .align-items-lg-stretch {
    -ms-flex-align: stretch !important;
        align-items: stretch !important;
  }

  .align-content-lg-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
  }

  .align-content-lg-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
  }

  .align-content-lg-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important;
  }

  .align-content-lg-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
  }

  .align-content-lg-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
  }

  .align-content-lg-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
  }

  .align-self-lg-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important;
  }

  .align-self-lg-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important;
  }

  .align-self-lg-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important;
  }

  .align-self-lg-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important;
  }

  .align-self-lg-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
  }

  .align-self-lg-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important;
  }
}

@media (min-width: 1200px) {
  .flex-xl-row {
    -ms-flex-direction: row !important;
        flex-direction: row !important;
  }

  .flex-xl-column {
    -ms-flex-direction: column !important;
        flex-direction: column !important;
  }

  .flex-xl-row-reverse {
    -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important;
  }

  .flex-xl-column-reverse {
    -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important;
  }

  .flex-xl-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important;
  }

  .flex-xl-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
  }

  .flex-xl-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important;
  }

  .flex-xl-fill {
    -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important;
  }

  .flex-xl-grow-0 {
    -ms-flex-positive: 0 !important;
        flex-grow: 0 !important;
  }

  .flex-xl-grow-1 {
    -ms-flex-positive: 1 !important;
        flex-grow: 1 !important;
  }

  .flex-xl-shrink-0 {
    -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important;
  }

  .flex-xl-shrink-1 {
    -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important;
  }

  .justify-content-xl-start {
    -ms-flex-pack: start !important;
        justify-content: flex-start !important;
  }

  .justify-content-xl-end {
    -ms-flex-pack: end !important;
        justify-content: flex-end !important;
  }

  .justify-content-xl-center {
    -ms-flex-pack: center !important;
        justify-content: center !important;
  }

  .justify-content-xl-between {
    -ms-flex-pack: justify !important;
        justify-content: space-between !important;
  }

  .justify-content-xl-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
  }

  .align-items-xl-start {
    -ms-flex-align: start !important;
        align-items: flex-start !important;
  }

  .align-items-xl-end {
    -ms-flex-align: end !important;
        align-items: flex-end !important;
  }

  .align-items-xl-center {
    -ms-flex-align: center !important;
        align-items: center !important;
  }

  .align-items-xl-baseline {
    -ms-flex-align: baseline !important;
        align-items: baseline !important;
  }

  .align-items-xl-stretch {
    -ms-flex-align: stretch !important;
        align-items: stretch !important;
  }

  .align-content-xl-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
  }

  .align-content-xl-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
  }

  .align-content-xl-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important;
  }

  .align-content-xl-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
  }

  .align-content-xl-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
  }

  .align-content-xl-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
  }

  .align-self-xl-auto {
    -ms-flex-item-align: auto !important;
        -ms-grid-row-align: auto !important;
        align-self: auto !important;
  }

  .align-self-xl-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important;
  }

  .align-self-xl-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important;
  }

  .align-self-xl-center {
    -ms-flex-item-align: center !important;
        -ms-grid-row-align: center !important;
        align-self: center !important;
  }

  .align-self-xl-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
  }

  .align-self-xl-stretch {
    -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important;
  }
}

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

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

.float-none {
  float: none !important;
}

@media (min-width: 576px) {
  .float-sm-left {
    float: left !important;
  }

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

  .float-sm-none {
    float: none !important;
  }
}

@media (min-width: 768px) {
  .float-md-left {
    float: left !important;
  }

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

  .float-md-none {
    float: none !important;
  }
}

@media (min-width: 992px) {
  .float-lg-left {
    float: left !important;
  }

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

  .float-lg-none {
    float: none !important;
  }
}

@media (min-width: 1200px) {
  .float-xl-left {
    float: left !important;
  }

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

  .float-xl-none {
    float: none !important;
  }
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: -webkit-sticky !important;
  position: sticky !important;
}

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

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

@supports ((position: -webkit-sticky) or (position: sticky)) {
  .sticky-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}

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

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

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.mh-100 {
  max-height: 100% !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.vw-100 {
  width: 100vw !important;
}

.vh-100 {
  height: 100vh !important;
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

.m-0 {
  margin: 0 !important;
}

.mt-0,
.my-0 {
  margin-top: 0 !important;
}

.mr-0,
.mx-0 {
  margin-right: 0 !important;
}

.mb-0,
.my-0 {
  margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
  margin-left: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.mt-1,
.my-1 {
  margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.mt-2,
.my-2 {
  margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.mt-3,
.my-3 {
  margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
  margin-right: 1rem !important;
}

.mb-3,
.my-3 {
  margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
  margin-left: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.mt-4,
.my-4 {
  margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.mt-5,
.my-5 {
  margin-top: 3rem !important;
}

.mr-5,
.mx-5 {
  margin-right: 3rem !important;
}

.mb-5,
.my-5 {
  margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
  margin-left: 3rem !important;
}

.p-0 {
  padding: 0 !important;
}

.pt-0,
.py-0 {
  padding-top: 0 !important;
}

.pr-0,
.px-0 {
  padding-right: 0 !important;
}

.pb-0,
.py-0 {
  padding-bottom: 0 !important;
}

.pl-0,
.px-0 {
  padding-left: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.pt-1,
.py-1 {
  padding-top: 0.25rem !important;
}

.pr-1,
.px-1 {
  padding-right: 0.25rem !important;
}

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important;
}

.pl-1,
.px-1 {
  padding-left: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.pt-2,
.py-2 {
  padding-top: 0.5rem !important;
}

.pr-2,
.px-2 {
  padding-right: 0.5rem !important;
}

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2,
.px-2 {
  padding-left: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.pt-3,
.py-3 {
  padding-top: 1rem !important;
}

.pr-3,
.px-3 {
  padding-right: 1rem !important;
}

.pb-3,
.py-3 {
  padding-bottom: 1rem !important;
}

.pl-3,
.px-3 {
  padding-left: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.pt-4,
.py-4 {
  padding-top: 1.5rem !important;
}

.pr-4,
.px-4 {
  padding-right: 1.5rem !important;
}

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important;
}

.pl-4,
.px-4 {
  padding-left: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.pt-5,
.py-5 {
  padding-top: 3rem !important;
}

.pr-5,
.px-5 {
  padding-right: 3rem !important;
}

.pb-5,
.py-5 {
  padding-bottom: 3rem !important;
}

.pl-5,
.px-5 {
  padding-left: 3rem !important;
}

.m-n1 {
  margin: -0.25rem !important;
}

.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important;
}

.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important;
}

.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important;
}

.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important;
}

.m-n2 {
  margin: -0.5rem !important;
}

.mt-n2,
.my-n2 {
  margin-top: -0.5rem !important;
}

.mr-n2,
.mx-n2 {
  margin-right: -0.5rem !important;
}

.mb-n2,
.my-n2 {
  margin-bottom: -0.5rem !important;
}

.ml-n2,
.mx-n2 {
  margin-left: -0.5rem !important;
}

.m-n3 {
  margin: -1rem !important;
}

.mt-n3,
.my-n3 {
  margin-top: -1rem !important;
}

.mr-n3,
.mx-n3 {
  margin-right: -1rem !important;
}

.mb-n3,
.my-n3 {
  margin-bottom: -1rem !important;
}

.ml-n3,
.mx-n3 {
  margin-left: -1rem !important;
}

.m-n4 {
  margin: -1.5rem !important;
}

.mt-n4,
.my-n4 {
  margin-top: -1.5rem !important;
}

.mr-n4,
.mx-n4 {
  margin-right: -1.5rem !important;
}

.mb-n4,
.my-n4 {
  margin-bottom: -1.5rem !important;
}

.ml-n4,
.mx-n4 {
  margin-left: -1.5rem !important;
}

.m-n5 {
  margin: -3rem !important;
}

.mt-n5,
.my-n5 {
  margin-top: -3rem !important;
}

.mr-n5,
.mx-n5 {
  margin-right: -3rem !important;
}

.mb-n5,
.my-n5 {
  margin-bottom: -3rem !important;
}

.ml-n5,
.mx-n5 {
  margin-left: -3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mt-auto,
.my-auto {
  margin-top: auto !important;
}

.mr-auto,
.mx-auto {
  margin-right: auto !important;
}

.mb-auto,
.my-auto {
  margin-bottom: auto !important;
}

.ml-auto,
.mx-auto {
  margin-left: auto !important;
}

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }

  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important;
  }

  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important;
  }

  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important;
  }

  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important;
  }

  .m-sm-1 {
    margin: 0.25rem !important;
  }

  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important;
  }

  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important;
  }

  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important;
  }

  .m-sm-2 {
    margin: 0.5rem !important;
  }

  .mt-sm-2,
  .my-sm-2 {
    margin-top: 0.5rem !important;
  }

  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 0.5rem !important;
  }

  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 0.5rem !important;
  }

  .m-sm-3 {
    margin: 1rem !important;
  }

  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important;
  }

  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important;
  }

  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important;
  }

  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important;
  }

  .m-sm-4 {
    margin: 1.5rem !important;
  }

  .mt-sm-4,
  .my-sm-4 {
    margin-top: 1.5rem !important;
  }

  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 1.5rem !important;
  }

  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 1.5rem !important;
  }

  .m-sm-5 {
    margin: 3rem !important;
  }

  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important;
  }

  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important;
  }

  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important;
  }

  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !important;
  }

  .p-sm-0 {
    padding: 0 !important;
  }

  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important;
  }

  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important;
  }

  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important;
  }

  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important;
  }

  .p-sm-1 {
    padding: 0.25rem !important;
  }

  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important;
  }

  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important;
  }

  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important;
  }

  .p-sm-2 {
    padding: 0.5rem !important;
  }

  .pt-sm-2,
  .py-sm-2 {
    padding-top: 0.5rem !important;
  }

  .pr-sm-2,
  .px-sm-2 {
    padding-right: 0.5rem !important;
  }

  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-sm-2,
  .px-sm-2 {
    padding-left: 0.5rem !important;
  }

  .p-sm-3 {
    padding: 1rem !important;
  }

  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important;
  }

  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important;
  }

  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important;
  }

  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important;
  }

  .p-sm-4 {
    padding: 1.5rem !important;
  }

  .pt-sm-4,
  .py-sm-4 {
    padding-top: 1.5rem !important;
  }

  .pr-sm-4,
  .px-sm-4 {
    padding-right: 1.5rem !important;
  }

  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-sm-4,
  .px-sm-4 {
    padding-left: 1.5rem !important;
  }

  .p-sm-5 {
    padding: 3rem !important;
  }

  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important;
  }

  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important;
  }

  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important;
  }

  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !important;
  }

  .m-sm-n1 {
    margin: -0.25rem !important;
  }

  .mt-sm-n1,
  .my-sm-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-sm-n1,
  .mx-sm-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-sm-n1,
  .my-sm-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-sm-n1,
  .mx-sm-n1 {
    margin-left: -0.25rem !important;
  }

  .m-sm-n2 {
    margin: -0.5rem !important;
  }

  .mt-sm-n2,
  .my-sm-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-sm-n2,
  .mx-sm-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-sm-n2,
  .my-sm-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-sm-n2,
  .mx-sm-n2 {
    margin-left: -0.5rem !important;
  }

  .m-sm-n3 {
    margin: -1rem !important;
  }

  .mt-sm-n3,
  .my-sm-n3 {
    margin-top: -1rem !important;
  }

  .mr-sm-n3,
  .mx-sm-n3 {
    margin-right: -1rem !important;
  }

  .mb-sm-n3,
  .my-sm-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-sm-n3,
  .mx-sm-n3 {
    margin-left: -1rem !important;
  }

  .m-sm-n4 {
    margin: -1.5rem !important;
  }

  .mt-sm-n4,
  .my-sm-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-sm-n4,
  .mx-sm-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-sm-n4,
  .my-sm-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-sm-n4,
  .mx-sm-n4 {
    margin-left: -1.5rem !important;
  }

  .m-sm-n5 {
    margin: -3rem !important;
  }

  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -3rem !important;
  }

  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -3rem !important;
  }

  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-sm-n5,
  .mx-sm-n5 {
    margin-left: -3rem !important;
  }

  .m-sm-auto {
    margin: auto !important;
  }

  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important;
  }

  .mr-sm-auto,
  .mx-sm-auto {
    margin-right: auto !important;
  }

  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important;
  }

  .ml-sm-auto,
  .mx-sm-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }

  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important;
  }

  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important;
  }

  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important;
  }

  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important;
  }

  .m-md-1 {
    margin: 0.25rem !important;
  }

  .mt-md-1,
  .my-md-1 {
    margin-top: 0.25rem !important;
  }

  .mr-md-1,
  .mx-md-1 {
    margin-right: 0.25rem !important;
  }

  .mb-md-1,
  .my-md-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-md-1,
  .mx-md-1 {
    margin-left: 0.25rem !important;
  }

  .m-md-2 {
    margin: 0.5rem !important;
  }

  .mt-md-2,
  .my-md-2 {
    margin-top: 0.5rem !important;
  }

  .mr-md-2,
  .mx-md-2 {
    margin-right: 0.5rem !important;
  }

  .mb-md-2,
  .my-md-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-md-2,
  .mx-md-2 {
    margin-left: 0.5rem !important;
  }

  .m-md-3 {
    margin: 1rem !important;
  }

  .mt-md-3,
  .my-md-3 {
    margin-top: 1rem !important;
  }

  .mr-md-3,
  .mx-md-3 {
    margin-right: 1rem !important;
  }

  .mb-md-3,
  .my-md-3 {
    margin-bottom: 1rem !important;
  }

  .ml-md-3,
  .mx-md-3 {
    margin-left: 1rem !important;
  }

  .m-md-4 {
    margin: 1.5rem !important;
  }

  .mt-md-4,
  .my-md-4 {
    margin-top: 1.5rem !important;
  }

  .mr-md-4,
  .mx-md-4 {
    margin-right: 1.5rem !important;
  }

  .mb-md-4,
  .my-md-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-md-4,
  .mx-md-4 {
    margin-left: 1.5rem !important;
  }

  .m-md-5 {
    margin: 3rem !important;
  }

  .mt-md-5,
  .my-md-5 {
    margin-top: 3rem !important;
  }

  .mr-md-5,
  .mx-md-5 {
    margin-right: 3rem !important;
  }

  .mb-md-5,
  .my-md-5 {
    margin-bottom: 3rem !important;
  }

  .ml-md-5,
  .mx-md-5 {
    margin-left: 3rem !important;
  }

  .p-md-0 {
    padding: 0 !important;
  }

  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important;
  }

  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important;
  }

  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important;
  }

  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important;
  }

  .p-md-1 {
    padding: 0.25rem !important;
  }

  .pt-md-1,
  .py-md-1 {
    padding-top: 0.25rem !important;
  }

  .pr-md-1,
  .px-md-1 {
    padding-right: 0.25rem !important;
  }

  .pb-md-1,
  .py-md-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-md-1,
  .px-md-1 {
    padding-left: 0.25rem !important;
  }

  .p-md-2 {
    padding: 0.5rem !important;
  }

  .pt-md-2,
  .py-md-2 {
    padding-top: 0.5rem !important;
  }

  .pr-md-2,
  .px-md-2 {
    padding-right: 0.5rem !important;
  }

  .pb-md-2,
  .py-md-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-md-2,
  .px-md-2 {
    padding-left: 0.5rem !important;
  }

  .p-md-3 {
    padding: 1rem !important;
  }

  .pt-md-3,
  .py-md-3 {
    padding-top: 1rem !important;
  }

  .pr-md-3,
  .px-md-3 {
    padding-right: 1rem !important;
  }

  .pb-md-3,
  .py-md-3 {
    padding-bottom: 1rem !important;
  }

  .pl-md-3,
  .px-md-3 {
    padding-left: 1rem !important;
  }

  .p-md-4 {
    padding: 1.5rem !important;
  }

  .pt-md-4,
  .py-md-4 {
    padding-top: 1.5rem !important;
  }

  .pr-md-4,
  .px-md-4 {
    padding-right: 1.5rem !important;
  }

  .pb-md-4,
  .py-md-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-md-4,
  .px-md-4 {
    padding-left: 1.5rem !important;
  }

  .p-md-5 {
    padding: 3rem !important;
  }

  .pt-md-5,
  .py-md-5 {
    padding-top: 3rem !important;
  }

  .pr-md-5,
  .px-md-5 {
    padding-right: 3rem !important;
  }

  .pb-md-5,
  .py-md-5 {
    padding-bottom: 3rem !important;
  }

  .pl-md-5,
  .px-md-5 {
    padding-left: 3rem !important;
  }

  .m-md-n1 {
    margin: -0.25rem !important;
  }

  .mt-md-n1,
  .my-md-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-md-n1,
  .mx-md-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-md-n1,
  .my-md-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-md-n1,
  .mx-md-n1 {
    margin-left: -0.25rem !important;
  }

  .m-md-n2 {
    margin: -0.5rem !important;
  }

  .mt-md-n2,
  .my-md-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-md-n2,
  .mx-md-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-md-n2,
  .my-md-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-md-n2,
  .mx-md-n2 {
    margin-left: -0.5rem !important;
  }

  .m-md-n3 {
    margin: -1rem !important;
  }

  .mt-md-n3,
  .my-md-n3 {
    margin-top: -1rem !important;
  }

  .mr-md-n3,
  .mx-md-n3 {
    margin-right: -1rem !important;
  }

  .mb-md-n3,
  .my-md-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-md-n3,
  .mx-md-n3 {
    margin-left: -1rem !important;
  }

  .m-md-n4 {
    margin: -1.5rem !important;
  }

  .mt-md-n4,
  .my-md-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-md-n4,
  .mx-md-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-md-n4,
  .my-md-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-md-n4,
  .mx-md-n4 {
    margin-left: -1.5rem !important;
  }

  .m-md-n5 {
    margin: -3rem !important;
  }

  .mt-md-n5,
  .my-md-n5 {
    margin-top: -3rem !important;
  }

  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -3rem !important;
  }

  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-md-n5,
  .mx-md-n5 {
    margin-left: -3rem !important;
  }

  .m-md-auto {
    margin: auto !important;
  }

  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important;
  }

  .mr-md-auto,
  .mx-md-auto {
    margin-right: auto !important;
  }

  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important;
  }

  .ml-md-auto,
  .mx-md-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important;
  }

  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important;
  }

  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important;
  }

  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important;
  }

  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important;
  }

  .m-lg-1 {
    margin: 0.25rem !important;
  }

  .mt-lg-1,
  .my-lg-1 {
    margin-top: 0.25rem !important;
  }

  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 0.25rem !important;
  }

  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 0.25rem !important;
  }

  .m-lg-2 {
    margin: 0.5rem !important;
  }

  .mt-lg-2,
  .my-lg-2 {
    margin-top: 0.5rem !important;
  }

  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 0.5rem !important;
  }

  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 0.5rem !important;
  }

  .m-lg-3 {
    margin: 1rem !important;
  }

  .mt-lg-3,
  .my-lg-3 {
    margin-top: 1rem !important;
  }

  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 1rem !important;
  }

  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 1rem !important;
  }

  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 1rem !important;
  }

  .m-lg-4 {
    margin: 1.5rem !important;
  }

  .mt-lg-4,
  .my-lg-4 {
    margin-top: 1.5rem !important;
  }

  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 1.5rem !important;
  }

  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 1.5rem !important;
  }

  .m-lg-5 {
    margin: 3rem !important;
  }

  .mt-lg-5,
  .my-lg-5 {
    margin-top: 3rem !important;
  }

  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 3rem !important;
  }

  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 3rem !important;
  }

  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 3rem !important;
  }

  .p-lg-0 {
    padding: 0 !important;
  }

  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important;
  }

  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important;
  }

  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important;
  }

  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important;
  }

  .p-lg-1 {
    padding: 0.25rem !important;
  }

  .pt-lg-1,
  .py-lg-1 {
    padding-top: 0.25rem !important;
  }

  .pr-lg-1,
  .px-lg-1 {
    padding-right: 0.25rem !important;
  }

  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-lg-1,
  .px-lg-1 {
    padding-left: 0.25rem !important;
  }

  .p-lg-2 {
    padding: 0.5rem !important;
  }

  .pt-lg-2,
  .py-lg-2 {
    padding-top: 0.5rem !important;
  }

  .pr-lg-2,
  .px-lg-2 {
    padding-right: 0.5rem !important;
  }

  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-lg-2,
  .px-lg-2 {
    padding-left: 0.5rem !important;
  }

  .p-lg-3 {
    padding: 1rem !important;
  }

  .pt-lg-3,
  .py-lg-3 {
    padding-top: 1rem !important;
  }

  .pr-lg-3,
  .px-lg-3 {
    padding-right: 1rem !important;
  }

  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 1rem !important;
  }

  .pl-lg-3,
  .px-lg-3 {
    padding-left: 1rem !important;
  }

  .p-lg-4 {
    padding: 1.5rem !important;
  }

  .pt-lg-4,
  .py-lg-4 {
    padding-top: 1.5rem !important;
  }

  .pr-lg-4,
  .px-lg-4 {
    padding-right: 1.5rem !important;
  }

  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-lg-4,
  .px-lg-4 {
    padding-left: 1.5rem !important;
  }

  .p-lg-5 {
    padding: 3rem !important;
  }

  .pt-lg-5,
  .py-lg-5 {
    padding-top: 3rem !important;
  }

  .pr-lg-5,
  .px-lg-5 {
    padding-right: 3rem !important;
  }

  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 3rem !important;
  }

  .pl-lg-5,
  .px-lg-5 {
    padding-left: 3rem !important;
  }

  .m-lg-n1 {
    margin: -0.25rem !important;
  }

  .mt-lg-n1,
  .my-lg-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-lg-n1,
  .mx-lg-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-lg-n1,
  .my-lg-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-lg-n1,
  .mx-lg-n1 {
    margin-left: -0.25rem !important;
  }

  .m-lg-n2 {
    margin: -0.5rem !important;
  }

  .mt-lg-n2,
  .my-lg-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-lg-n2,
  .mx-lg-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-lg-n2,
  .my-lg-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-lg-n2,
  .mx-lg-n2 {
    margin-left: -0.5rem !important;
  }

  .m-lg-n3 {
    margin: -1rem !important;
  }

  .mt-lg-n3,
  .my-lg-n3 {
    margin-top: -1rem !important;
  }

  .mr-lg-n3,
  .mx-lg-n3 {
    margin-right: -1rem !important;
  }

  .mb-lg-n3,
  .my-lg-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-lg-n3,
  .mx-lg-n3 {
    margin-left: -1rem !important;
  }

  .m-lg-n4 {
    margin: -1.5rem !important;
  }

  .mt-lg-n4,
  .my-lg-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-lg-n4,
  .mx-lg-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-lg-n4,
  .my-lg-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-lg-n4,
  .mx-lg-n4 {
    margin-left: -1.5rem !important;
  }

  .m-lg-n5 {
    margin: -3rem !important;
  }

  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -3rem !important;
  }

  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -3rem !important;
  }

  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-lg-n5,
  .mx-lg-n5 {
    margin-left: -3rem !important;
  }

  .m-lg-auto {
    margin: auto !important;
  }

  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important;
  }

  .mr-lg-auto,
  .mx-lg-auto {
    margin-right: auto !important;
  }

  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important;
  }

  .ml-lg-auto,
  .mx-lg-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important;
  }

  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important;
  }

  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important;
  }

  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important;
  }

  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important;
  }

  .m-xl-1 {
    margin: 0.25rem !important;
  }

  .mt-xl-1,
  .my-xl-1 {
    margin-top: 0.25rem !important;
  }

  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 0.25rem !important;
  }

  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 0.25rem !important;
  }

  .m-xl-2 {
    margin: 0.5rem !important;
  }

  .mt-xl-2,
  .my-xl-2 {
    margin-top: 0.5rem !important;
  }

  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 0.5rem !important;
  }

  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 0.5rem !important;
  }

  .m-xl-3 {
    margin: 1rem !important;
  }

  .mt-xl-3,
  .my-xl-3 {
    margin-top: 1rem !important;
  }

  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 1rem !important;
  }

  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 1rem !important;
  }

  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 1rem !important;
  }

  .m-xl-4 {
    margin: 1.5rem !important;
  }

  .mt-xl-4,
  .my-xl-4 {
    margin-top: 1.5rem !important;
  }

  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 1.5rem !important;
  }

  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 1.5rem !important;
  }

  .m-xl-5 {
    margin: 3rem !important;
  }

  .mt-xl-5,
  .my-xl-5 {
    margin-top: 3rem !important;
  }

  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 3rem !important;
  }

  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 3rem !important;
  }

  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 3rem !important;
  }

  .p-xl-0 {
    padding: 0 !important;
  }

  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important;
  }

  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important;
  }

  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important;
  }

  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important;
  }

  .p-xl-1 {
    padding: 0.25rem !important;
  }

  .pt-xl-1,
  .py-xl-1 {
    padding-top: 0.25rem !important;
  }

  .pr-xl-1,
  .px-xl-1 {
    padding-right: 0.25rem !important;
  }

  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-xl-1,
  .px-xl-1 {
    padding-left: 0.25rem !important;
  }

  .p-xl-2 {
    padding: 0.5rem !important;
  }

  .pt-xl-2,
  .py-xl-2 {
    padding-top: 0.5rem !important;
  }

  .pr-xl-2,
  .px-xl-2 {
    padding-right: 0.5rem !important;
  }

  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-xl-2,
  .px-xl-2 {
    padding-left: 0.5rem !important;
  }

  .p-xl-3 {
    padding: 1rem !important;
  }

  .pt-xl-3,
  .py-xl-3 {
    padding-top: 1rem !important;
  }

  .pr-xl-3,
  .px-xl-3 {
    padding-right: 1rem !important;
  }

  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 1rem !important;
  }

  .pl-xl-3,
  .px-xl-3 {
    padding-left: 1rem !important;
  }

  .p-xl-4 {
    padding: 1.5rem !important;
  }

  .pt-xl-4,
  .py-xl-4 {
    padding-top: 1.5rem !important;
  }

  .pr-xl-4,
  .px-xl-4 {
    padding-right: 1.5rem !important;
  }

  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-xl-4,
  .px-xl-4 {
    padding-left: 1.5rem !important;
  }

  .p-xl-5 {
    padding: 3rem !important;
  }

  .pt-xl-5,
  .py-xl-5 {
    padding-top: 3rem !important;
  }

  .pr-xl-5,
  .px-xl-5 {
    padding-right: 3rem !important;
  }

  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 3rem !important;
  }

  .pl-xl-5,
  .px-xl-5 {
    padding-left: 3rem !important;
  }

  .m-xl-n1 {
    margin: -0.25rem !important;
  }

  .mt-xl-n1,
  .my-xl-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-xl-n1,
  .mx-xl-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-xl-n1,
  .my-xl-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-xl-n1,
  .mx-xl-n1 {
    margin-left: -0.25rem !important;
  }

  .m-xl-n2 {
    margin: -0.5rem !important;
  }

  .mt-xl-n2,
  .my-xl-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-xl-n2,
  .mx-xl-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-xl-n2,
  .my-xl-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-xl-n2,
  .mx-xl-n2 {
    margin-left: -0.5rem !important;
  }

  .m-xl-n3 {
    margin: -1rem !important;
  }

  .mt-xl-n3,
  .my-xl-n3 {
    margin-top: -1rem !important;
  }

  .mr-xl-n3,
  .mx-xl-n3 {
    margin-right: -1rem !important;
  }

  .mb-xl-n3,
  .my-xl-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-xl-n3,
  .mx-xl-n3 {
    margin-left: -1rem !important;
  }

  .m-xl-n4 {
    margin: -1.5rem !important;
  }

  .mt-xl-n4,
  .my-xl-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-xl-n4,
  .mx-xl-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-xl-n4,
  .my-xl-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-xl-n4,
  .mx-xl-n4 {
    margin-left: -1.5rem !important;
  }

  .m-xl-n5 {
    margin: -3rem !important;
  }

  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -3rem !important;
  }

  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -3rem !important;
  }

  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-xl-n5,
  .mx-xl-n5 {
    margin-left: -3rem !important;
  }

  .m-xl-auto {
    margin: auto !important;
  }

  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important;
  }

  .mr-xl-auto,
  .mx-xl-auto {
    margin-right: auto !important;
  }

  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important;
  }

  .ml-xl-auto,
  .mx-xl-auto {
    margin-left: auto !important;
  }
}

.text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}

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

.text-wrap {
  white-space: normal !important;
}

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

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

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

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

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

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }

  .text-sm-right {
    text-align: right !important;
  }

  .text-sm-center {
    text-align: center !important;
  }
}

@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }

  .text-md-right {
    text-align: right !important;
  }

  .text-md-center {
    text-align: center !important;
  }
}

@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }

  .text-lg-right {
    text-align: right !important;
  }

  .text-lg-center {
    text-align: center !important;
  }
}

@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }

  .text-xl-right {
    text-align: right !important;
  }

  .text-xl-center {
    text-align: center !important;
  }
}

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

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

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

.font-weight-light {
  font-weight: 300 !important;
}

.font-weight-lighter {
  font-weight: lighter !important;
}

.font-weight-normal {
  font-weight: 400 !important;
}

.font-weight-bold {
  font-weight: 700 !important;
}

.font-weight-bolder {
  font-weight: bolder !important;
}

.font-italic {
  font-style: italic !important;
}

.text-white {
  color: #fff !important;
}

.text-primary {
  color: #007bff !important;
}

a.text-primary:hover,
a.text-primary:focus {
  color: #0056b3 !important;
}

.text-secondary {
  color: #6c757d !important;
}

a.text-secondary:hover,
a.text-secondary:focus {
  color: #494f54 !important;
}

.text-success {
  color: #28a745 !important;
}

a.text-success:hover,
a.text-success:focus {
  color: #19692c !important;
}

.text-info {
  color: #17a2b8 !important;
}

a.text-info:hover,
a.text-info:focus {
  color: #0f6674 !important;
}

.text-warning {
  color: #ffc107 !important;
}

a.text-warning:hover,
a.text-warning:focus {
  color: #ba8b00 !important;
}

.text-danger {
  color: #dc3545 !important;
}

a.text-danger:hover,
a.text-danger:focus {
  color: #a71d2a !important;
}

.text-light {
  color: #f8f9fa !important;
}

a.text-light:hover,
a.text-light:focus {
  color: #cbd3da !important;
}

.text-dark {
  color: #343a40 !important;
}

a.text-dark:hover,
a.text-dark:focus {
  color: #121416 !important;
}

.text-body {
  color: #212529 !important;
}

.text-muted {
  color: #6c757d !important;
}

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}

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

.text-decoration-none {
  text-decoration: none !important;
}

.text-break {
  word-break: break-word !important;
  overflow-wrap: break-word !important;
}

.text-reset {
  color: inherit !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }

  a:not(.btn) {
    text-decoration: underline;
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
  blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }

@page {
    size: a3;
}

  body {
    min-width: 992px !important;
  }

  .container {
    min-width: 992px !important;
  }

  .navbar {
    display: none;
  }

  .badge {
    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 #dee2e6 !important;
  }

  .table-dark {
    color: inherit;
  }

  .table-dark th,
  .table-dark td,
  .table-dark thead th,
  .table-dark tbody + tbody {
    border-color: #dee2e6;
  }

  .table .thead-dark th {
    color: inherit;
    border-color: #dee2e6;
  }
}

/* Slider */

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before,
.slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */

.slick-loading .slick-list {
  background: #fff url(/images/ajax-loader.gif?c5cd7f5300576ab4c88202b42f6ded62) center center no-repeat;
}

/* Icons */

@font-face {
  font-family: "slick";
  src: url(/fonts/slick.eot?ced611daf7709cc778da928fec876475);
  src: url(/fonts/slick.eot?ced611daf7709cc778da928fec876475) format("embedded-opentype"), url(/fonts/slick.woff?b7c9e1e479de3b53f1e4e30ebac2403a) format("woff"), url(/fonts/slick.ttf?d41f55a78e6f49a5512878df1737e58a) format("truetype"), url(/fonts/slick.svg?f97e3bbf73254b0112091d0192f17aec) format("svg");
  font-weight: normal;
  font-style: normal;
}

/* Arrows */

.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}

[dir="rtl"] .slick-prev {
  left: auto;
  right: -25px;
}

.slick-prev:before {
  content: "←";
}

[dir="rtl"] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}

[dir="rtl"] .slick-next {
  left: -25px;
  right: auto;
}

.slick-next:before {
  content: "→";
}

[dir="rtl"] .slick-next:before {
  content: "←";
}

/* Dots */

.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}

.text-danger {
  color: #E73F4B !important;
}

.text-primary {
  color: #1EACD9 !important;
}

html,
body {
  margin: 0;
  min-height: 100%;
  padding: 0;
  background-color: #dedede;
  font-family: 'PT Sans', sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

#app {
  height: 100%;
}

.container-fluid {
  height: 100%;
  padding: 0 !important;
  background-color: #ffffff !important;
}

.spacer {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.display-none {
  display: none;
}

@media only screen and (max-width: 991px) {
  main {
    margin-top: 80px;
  }
}

@media only screen and (max-width: 991px) {
  .d-md {
    display: block;
  }

  .d-lg {
    display: none;
    transition: 0.2s;
  }
}

@media only screen and (min-width: 992px) {
  .d-md {
    display: none;
  }

  .d-lg {
    display: block;
    transition: 0.2s;
  }
}

.header-top {
  height: 120px;
}

.header-top .header-icon {
  font-size: 25px;
}

.header-top .header-icon-tag {
  font-size: 14px;
}

.header-top a {
  color: #000000;
  text-decoration: none;
}

.header-top a:hover {
  text-decoration: none;
}

.header-top .link-box {
  cursor: pointer;
}

.header-top .link-box:hover {
  color: #1EACD9 !important;
}

.header-top .link-box a:hover {
  color: #1EACD9 !important;
}

.header-top .link-box .item-counter {
  width: 15px;
  height: 15px;
  font-size: 9px;
  margin-left: 20px;
  padding: 1px;
  background-color: #E73F4B;
  color: #fff;
  border-radius: 50%;
}

.header-top .active {
  color: #1EACD9 !important;
}

.header-nav {
  height: 50px;
  background-color: #f2f2f2;
  transition: 0.2s;
}

.header-nav .links-area {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  padding: 0;
  height: 100%;
}

.header-nav .links-area .link-box {
  font-size: 17px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  height: 100%;
  margin-right: 30px;
}

.header-nav .links-area .link-box:hover {
  border-bottom: 3px solid #1EACD9;
  cursor: pointer;
}

.header-nav .links-area .link-box .link a {
  color: #000000;
}

.header-nav .links-area .link-box .link a:hover {
  color: #000000;
  text-decoration: none;
}

.header-nav .links-area .link-box .icon-area {
  display: none;
}

.header-nav .links-area .dropdown-content {
  background: #f2f2f2;
  min-width: 200px;
  top: 50px;
  display: none;
  position: absolute;
  z-index: 10;
}

.header-nav .links-area .dropdown-content a {
  color: black;
}

.header-nav .links-area .dropdown-content a:hover {
  text-decoration: none;
}

.header-nav .links-area .dropdown-content .link-box {
  width: 100%;
  padding: 10px;
}

.header-nav .links-area .dropdown-content .link-box:hover {
  background-color: #A3A3A3;
}

.header-nav .links-area .dropdown-link {
  position: relative;
}

.header-nav .links-area .dropdown-link:hover .dropdown-content {
  display: block;
}

.header-nav .links-area .custom-link {
  color: black !important;
}

.header-nav .links-area .custom-link:hover {
  text-decoration: none;
}

.header-nav .icon-area {
  padding: 0;
}

.header-nav .icon-area a {
  color: #000000;
}

.header-nav .icon-area a:hover {
  color: #1EACD9;
  text-decoration: none;
}

.header-nav .icon-area .icon-box {
  font-size: 17px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  height: 100%;
  margin-left: 30px;
}

.header-nav .icon-area .icon-box:hover {
  border-bottom: 3px solid #1EACD9;
  cursor: pointer;
}

.header-nav .icon-area .icon-box:nth-child(1) {
  margin-left: 0 !important;
}

.header-nav .active {
  border-bottom: 3px solid #1EACD9;
}

.sub-navbar-area {
  position: fixed;
  left: 0;
  top: 170px;
  min-height: 225px;
  z-index: 1;
}

.sub-navbar-area .sub-navbar {
  height: 100%;
  display: -ms-flexbox;
  display: flex;
  padding: 10px 0 !important;
  -ms-flex-pack: center;
      justify-content: center;
  background: #ffffff;
  box-shadow: 1px 13px 18px -16px rgba(0, 0, 0, 0.75);
}

.sub-navbar-area .title a {
  color: #000000;
  text-decoration: none;
}

.sub-navbar-area .title a:hover {
  color: #1EACD9;
  text-decoration: none;
}

.sub-navbar-area .img-box {
  width: 198px;
  height: 140px;
  border-radius: 5px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  background-color: #f8f8f8;
}

.sub-navbar-area .img-box:hover {
  border: 1px solid #1EACD9 !important;
}

.sticky {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
  height: 80px;
  background-color: transparent !important;
}

.sticky .header-nav {
  height: 80px !important;
  box-shadow: 0px 3px 6px -4px rgba(0, 0, 0, 0.75);
  transition: 0.4s;
}

.sticky .icon {
  font-size: 25px !important;
  transition: 0.4s;
}

.sticky .login-window {
  top: 80px !important;
  transition: 0.4s;
}

.sticky .sub-navbar-area {
  top: 80px !important;
  transition: 0.4s;
}

.login-window {
  position: absolute;
  background: #f8f8f8;
  z-index: 5;
  height: 300px;
  right: 30px;
  width: 400px;
  top: -15px;
  display: none;
}

.login-window .login-close {
  position: absolute;
  right: 10px;
  top: 8px;
  font-size: 20px;
  color: #000000;
  cursor: pointer;
}

.login-window .login-close:hover {
  color: #1EACD9;
}

@media only screen and (min-width: 992px) {
  .header-nav .search-area {
    display: none !important;
  }
}

@media only screen and (max-width: 991px) {
  .header-top {
    height: 80px;
    top: 0;
    box-shadow: 0px 3px 6px -4px rgba(0, 0, 0, 0.75);
    position: fixed;
    width: 100%;
    background: #ffffff;
    transition: 0.4s;
    z-index: 99;
  }

  .login-window {
    position: fixed;
    top: 80px;
  }

  .header-nav {
    max-height: calc(100% - 80px);
    overflow-y: auto;
    position: fixed;
    display: none;
    z-index: 98;
    height: auto;
    width: 50vh;
    background: #f8f8f8 !important;
    transition: 0.4s;
  }

  .header-nav .search-area {
    padding: 15px 20px !important;
    display: block !important;
    background: #1EACD9;
    color: #ffffff;
    font-size: 30px;
  }

  .header-nav .links-area {
    display: block !important;
  }

  .header-nav .links-area .link-box {
    background: #f2f2f2;
    width: 100%;
    margin-bottom: 1px;
    display: block !important;
  }

  .header-nav .links-area .link-box .link {
    float: left;
    padding: 25px !important;
  }

  .header-nav .links-area .link-box .icon-area {
    float: right;
    display: block !important;
    padding: 25px !important;
  }

  .header-nav .dropdown-content {
    padding: 30px;
    position: static !important;
  }

  .header-nav .dropdown-content .link-box {
    width: 100%;
    padding: 10px;
  }

  .header-nav .dropdown-content .link-box:hover {
    background-color: transparent !important;
  }

  .header-top .link-box .item-counter {
    width: 12px !important;
    height: 12px !important;
    font-size: 8px !important;
    margin-left: 14px !important;
    padding: 0 !important;
  }

  .nav-top-animation {
    display: block;
    transition: 0.4s;
  }

  .sub-navbar-area {
    position: static !important;
  }

  .sub-navbar-area .sub-navbar {
    padding: 10px 25px !important;
  }
}

@media only screen and (max-width: 576px) {
  .header-nav {
    width: 100% !important;
    position: fixed;
    max-height: calc(100% - 80px);
    overflow-y: auto;
  }

  .login-window {
    right: 0 !important;
    width: 100% !important;
  }

  .sub-navbar-area .img-box {
    width: auto !important;
  }
}

@media all and (-ms-high-contrast: none) {
  .hero-area .product-conf-area .product-box {
    width: 100%;
  }

  .steps-area .steps {
    width: 100%;
  }
}

@media only screen and (max-width: 991px) {
  .mobile-navbar-icon {
    color: #000000;
    width: 35px;
    height: 20px;
    position: relative;
    margin: 25px 5px;
  }

  .mobile-navbar-icon .line {
    display: block;
    background: #000000;
    width: 35px;
    height: 2px;
    position: absolute;
    left: 0;
    border-radius: 1px;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
  }

  .mobile-navbar-icon .line.line-1 {
    top: 0;
  }

  .mobile-navbar-icon .line.line-2 {
    top: 50%;
    width: 80%;
  }

  .mobile-navbar-icon .line.line-3 {
    top: 100%;
  }

  .mobile-navbar-icon.active .line-1 {
    transform: translateY(10px) translateX(0) rotate(45deg);
    -webkit-transform: translateY(10px) translateX(0) rotate(45deg);
    -moz-transform: translateY(10px) translateX(0) rotate(45deg);
  }

  .mobile-navbar-icon.active .line-2 {
    width: 0 !important;
    transition: 0.2s;
  }

  .mobile-navbar-icon.active .line-3 {
    transform: translateY(-10px) translateX(0) rotate(-45deg);
    -webkit-transform: translateY(-10px) translateX(0) rotate(-45deg);
    -moz-transform: translateY(-10px) translateX(0) rotate(-45deg);
  }
}

.hero-area {
  position: relative;
}

.hero-area .hero-bg {
  position: absolute;
  height: 100%;
  width: 100%;
  background-size: cover;
}

.hero-area .hero-bg img {
  height: 100%;
}

.hero-area .product-conf-area {
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}

.hero-area .product-conf-area .product-box {
  background-color: #f8f8f8;
  border: 1px solid #f8f8f8;
  border-radius: 8px;
}

.hero-area .product-conf-area .form-control {
  height: 48px !important;
}

.hero-area .product-conf-area select {
  -webkit-appearance: none;
  -webkit-border-radius: 0 !important;
  background: url(/images/arrow-down.png?75cce1533c263d247e79d4c47abae399) no-repeat bottom 15px right 8px #fff;
}

.hero-area .product-conf-area label {
  font-size: 16px;
}

.hero-area .product-conf-area button {
  font-family: 'PT Serif', sans-serif;
  border-radius: 0 !important;
  background-color: #1EACD9 !important;
  border: 2px solid #1EACD9 !important;
  padding: 8px 20px;
}

.hero-area .product-conf-area button:hover {
  background-color: #ffffff !important;
  border: 2px solid #1EACD9 !important;
  color: #1EACD9 !important;
}

.hero-area .hero-text .hero-text-lg,
.hero-area .hero-text .hero-text-sm {
  font-size: 28px;
  background: rgba(255, 255, 255, 0.7);
  font-family: 'PT Serif Italic', sans-serif;
  padding: 9px 30px;
}

.hero-area .hero-text .hero-text-lg {
  color: #E73F4B;
  font-size: 35px;
  font-family: 'PT Serif Bold Italic', sans-serif;
  letter-spacing: 1px;
  padding: 9px 30px;
}

.hero-area.hero-area-lg {
  height: 520px;
}

.hero-area.hero-area-lg .hero-text .hero-text-lg {
  margin-top: 6px;
}

.hero-area.hero-area-md {
  height: 440px;
}

.hero-area.hero-area-md .hero-text .hero-text-sm {
  padding: 2px 30px 9px 30px !important;
}

.sub-hero {
  height: 150px;
  background-color: #f2f2f2;
}

.sub-hero .heading {
  font-family: 'PT Serif Italic', sans-serif;
  font-size: 18px;
}

.sub-hero .heading.danger {
  color: #E73F4B;
}

.sub-hero .steps-area {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.sub-hero .steps-area .steps .step-icon {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center !important;
      align-items: center !important;
  -ms-flex-pack: center !important;
      justify-content: center !important;
  color: #E73F4B;
  width: 40px;
  height: 40px;
  margin: auto;
}

.sub-hero .steps-area .steps .step-icon.large {
  font-size: 25px;
  font-weight: bold;
}

.sub-hero .steps-area .steps .border {
  border: 1px solid #E73F4B !important;
}

.sub-hero .steps-area .steps .step-name {
  margin: 0.5rem;
  text-align: center;
}

.hero-bottom-sm {
  height: 280px;
  background-image: url(/images/bedroom.png?d1255487baae8b6d02797f444fb3143b);
  background-size: cover;
}

.hero-bottom-sm .title {
  font-family: 'PT Serif', sans-serif;
  font-size: 20px;
}

.hero-bottom-sm .title .is-italic {
  font-family: 'PT Serif bold Italic', sans-serif !important;
}

.hero-bottom-sm .content {
  background: rgba(0, 0, 0, 0.6);
  color: #ffffff;
}

.hero-bottom-sm .content .icon-box {
  height: 50px;
}

.hero-bottom-sm .content .icon-box img {
  height: 100%;
}

.hero-bottom-lg {
  height: 500px;
  background-image: url(/images/instruction_banner.png?c5a4c2c2a2448b41e81612fb54ed2223);
  background-size: cover;
}

.hero-bottom-lg .content {
  background: rgba(0, 0, 0, 0.6);
  color: #ffffff;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  height: 100%;
}

.hero-bottom-lg .content .container {
  padding: 0 6rem;
}

.hero-bottom-lg .content .container .title {
  font-family: 'PT Serif', sans-serif;
  font-size: 36px;
  text-align: center;
}

.hero-bottom-lg .content .container .icon-box {
  padding: 0 2rem;
}

.hero-bottom-lg .content .container .icon-box .icon-area {
  font-size: 18px;
  text-align: center;
}

.hero-bottom-lg .content .container .icon-box .icon-area .icon {
  height: 50px;
  font-size: 35px;
  color: #1EACD9;
}

@media only screen and (max-width: 991px) {
  .hero-area.hero-area-lg {
    height: 700px;
  }

  .hero-area.hero-area-lg .hero-bg {
    height: 420px;
    transition: 0.4s;
  }

  .hero-area.hero-area-lg .hero-text-area {
    margin-top: 65px !important;
  }

  .sub-hero .steps-area {
    padding: 0 !important;
  }

  .hero-bottom-lg {
    height: 465px;
  }

  .hero-bottom-lg .content .container {
    padding: 0 15px;
  }

  .hero-bottom-lg .content .container .title {
    font-size: 28px;
  }
}

@media only screen and (max-width: 576px) {
  .hero-area.hero-area-lg .hero-bg {
    height: 350px !important;
    transition: 0.4s;
  }

  .hero-area.hero-area-lg .hero-text-area {
    margin-top: 100px !important;
  }

  .hero-area .product-conf-area {
    padding: 100px 15px !important;
    transition: 0.4s;
  }

  .hero-area .product-conf-area .product-box .product-size .form-group {
    margin-top: 20px;
  }

  .hero-area .product-conf-area .product-box .product-size .label-area {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
  }

  .hero-area .product-conf-area button {
    width: 100%;
    margin-top: 15px;
  }

  .hero-area .hero-text-area {
    padding: 0 25px;
  }

  .hero-area .hero-text-area .hero-text-sm {
    font-size: 18px;
    padding: 8px 30px;
  }

  .hero-area .hero-text-area .hero-text-lg {
    font-size: 24px;
  }

  .sub-hero {
    height: 420px;
    padding: 1rem;
  }

  .sub-hero .heading {
    text-align: center;
  }

  .sub-hero .steps-area {
    padding: 0 15px !important;
    display: block !important;
  }

  .sub-hero .steps-area .steps .step-name {
    text-align: left !important;
  }

  .sub-hero.main-page {
    margin-top: 100px;
  }

  .hero-bottom-sm {
    height: 550px;
  }

  .hero-bottom-lg {
    height: 600px;
  }

  .hero-bottom-lg .content .container .title {
    font-size: 23px;
    padding: 0 15px;
    margin-bottom: 3rem;
    text-align: left !important;
  }

  .hero-bottom-lg .content .container .icon-box .icon {
    padding-top: 8px;
  }

  .hero-bottom-lg .content .container .icon-box .icon-area {
    text-align: left !important;
  }
}

@media all and (-ms-high-contrast: none) {
  .ie-margin-l-0 {
    margin-left: 0 !important;
  }
}

.info-area {
  position: relative;
}

.info-area .info-btn {
  margin-top: 68px;
  width: 50px;
  color: #ffffff;
  height: 50px;
  font-size: 25px;
  font-family: 'PT Serif Bold Italic', sans-serif;
  background-color: #1EACD9;
  cursor: pointer;
  display: inline-block;
}

.info-area .info-box {
  position: absolute;
  right: 0;
  z-index: 1;
  top: -40px;
}

.info-area .details {
  color: #ffffff;
  background-color: #1EACD9;
  height: 195px;
  width: 250px;
  float: right;
  display: none;
}

.info-area .details button {
  border-radius: 0 !important;
  background-color: #1EACD9 !important;
  border: 2px solid #ffffff !important;
  padding: 8px 20px;
  text-transform: capitalize;
}

.info-area .details button:hover {
  background-color: #ffffff !important;
  border: 2px solid #1EACD9 !important;
  color: #1EACD9 !important;
}

.slider-top {
  margin-top: 5rem;
  margin-bottom: 5rem;
}

.slider-top .text-area {
  padding: 0 5rem 0 3rem;
}

.slider-top .text-area .heading {
  font-size: 30px;
  font-family: 'PT Serif Italic', sans-serif;
  letter-spacing: 1px;
}

.slider-top .text-area .heading strong {
  font-family: 'PT Serif Bold Italic', sans-serif;
}

.slider-top .text-area .details {
  font-size: 13px;
  line-height: 25px;
  color: #A3A3A3;
}

.slider-top .text-area .btn-outline-primary {
  border: 1px solid #1EACD9;
  color: #1EACD9;
  font-family: 'PT Serif', sans-serif;
  font-weight: bold;
  border-radius: 0 !important;
  padding: 15px 30px;
}

.slider-top .text-area .btn-outline-primary:hover {
  background-color: #1EACD9 !important;
  color: #ffffff !important;
}

.product-slider {
  height: 550px;
}

.product-slider .slider-col {
  max-width: 100%;
  text-align: center;
}

.product-slider .slider-col .rounded {
  border-radius: 0.5rem !important;
}

.product-slider h6 {
  font-family: 'PT Serif', sans-serif;
  font-weight: bold;
}

.product-slider .config-button {
  border-radius: 0 !important;
  background-color: #ffffff !important;
  border: 1px solid #1EACD9 !important;
  color: #1EACD9 !important;
  padding: 8px 20px;
  font-family: 'PT Serif', sans-serif;
}

.product-slider .config-button:hover {
  background-color: #1EACD9 !important;
  border: 1px solid #1EACD9 !important;
  color: #ffffff !important;
}

.product-slider .slider-btn {
  font-size: 25px;
  color: #1EACD9;
}

.product-slider .slick-prev {
  left: -30px !important;
}

.product-slider .slick-next {
  right: -20px !important;
}

.configuration-slider {
  height: 480px;
}

.configuration-slider .slider-col {
  max-width: 100%;
  text-align: center;
}

.configuration-slider .config-button {
  border-radius: 0 !important;
  background-color: #ffffff !important;
  border: 1px solid #1EACD9 !important;
  color: #1EACD9 !important;
  padding: 8px 20px;
  font-family: 'PT Serif', sans-serif;
}

.configuration-slider .config-button:hover {
  background-color: #1EACD9 !important;
  border: 1px solid #1EACD9 !important;
  color: #ffffff !important;
}

.configuration-slider .config-slider-nav {
  border-bottom: 1px solid #dee2e6;
  border-top: 1px solid #dee2e6;
}

.configuration-slider .config-slider-nav .slick-slide {
  background-color: #f2f2f2;
  border-right: 1px solid #dee2e6;
  color: #1EACD9;
}

.configuration-slider .config-slider-nav .slick-current {
  background-color: #1EACD9 !important;
  color: white !important;
}

.configuration-slider .config-slider-nav .slick-prev {
  left: 8px !important;
  z-index: 1;
}

.configuration-slider .config-slider-nav .slick-next {
  right: 15px !important;
}

.configuration-slider .slider-img-area .slider-img {
  width: 100%;
  height: 400px;
  background-repeat: no-repeat;
  background-size: contain, cover;
}

.configuration-slider .input-area {
  position: absolute;
  width: 100%;
  bottom: -15px;
}

.configuration-slider .input-area .input-form-area {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  background-color: #f8f8f8;
  width: 75%;
  height: 135px;
}

.configuration-slider .input-area .form-control {
  border-radius: 0 !important;
  height: 45px !important;
}

.configuration-slider .input-area label {
  font-size: 12px;
}

.configuration-slider .input-area button {
  margin-top: 31px;
  width: 100%;
  height: 45px;
  font-family: 'PT Serif', sans-serif;
  border-radius: 0 !important;
  background-color: #1EACD9 !important;
  border: 2px solid #1EACD9 !important;
  padding: 8px 20px;
}

.configuration-slider .input-area button:hover {
  background-color: #ffffff !important;
  border: 2px solid #1EACD9 !important;
  color: #1EACD9 !important;
}

.testimonial-slider {
  margin: 5rem 8rem 3rem 8rem;
}

.testimonial-slider .profile-area {
  width: 100%;
  height: 100%;
}

.testimonial-slider .profile-area .testimonial {
  position: absolute;
  width: 100%;
  text-align: center;
  bottom: 10px;
  padding: 0 10rem;
  z-index: 1;
}

.testimonial-slider .profile-area .testimonial h3 {
  font-size: 35px;
  font-family: 'PT Serif', sans-serif;
}

.testimonial-slider .profile-area .testimonial h3 strong {
  font-family: 'PT Serif Bold Italic', sans-serif !important;
}

.testimonial-slider .profile-area .profile-pic {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}

.testimonial-slider .profile-area .profile-pic img {
  width: 350px;
  height: 350px;
  mask-image: linear-gradient(to bottom, black, rgba(0, 0, 0, 0));
  -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(black), to(rgba(0, 0, 0, 0)));
}

.testimonial-slider .profile-area .profile-details {
  margin: 5rem 0;
}

.testimonial-slider .profile-area .profile-details .title {
  color: #A3A3A3;
  font-weight: bold;
  text-align: right;
}

.slick-prev,
.slick-next {
  top: 42% !important;
}

.slick-prev:before,
.slick-next:before {
  font-size: 28px;
  font-family: 'LineAwesome', sans-serif;
  color: #1EACD9;
}

.slick-prev::before {
  content: "\f273";
}

.slick-next::before {
  content: "\f274";
}

@media only screen and (max-width: 991px) {
  .slider-top .text-area {
    padding: 0 15px !important;
    transition: 0.4s;
  }

  .input-area .input-form-area {
    height: 185px !important;
    width: 90% !important;
  }

  .input-area .input-form-area .button-area {
    text-align: center;
  }

  .input-area .input-form-area .button-area button {
    margin-top: 15px !important;
    width: 50%;
  }

  .testimonial-slider {
    padding-top: 3rem;
    margin: 5rem 0 0 0 !important;
  }

  .testimonial-slider .profile-area .testimonial {
    padding: 0 !important;
    bottom: -40px;
    transition: all 0.4s;
  }

  .testimonial-slider .profile-area .profile-pic img {
    width: 300px;
    height: 300px;
  }

  .testimonial-slider .profile-details .title {
    text-align: left !important;
  }
}

@media only screen and (max-width: 576px) {
  .slider-top {
    padding: 0 30px !important;
  }

  .slider-top .btn-outline-primary {
    width: 100%;
  }

  .product-slider {
    height: 600px;
  }

  .input-area .input-form-area button {
    width: 95% !important;
  }
}

@media all and (-ms-high-contrast: none) {
  .input-area .input-form-area .row-ie {
    width: 100%;
  }
}

.primary-title {
  margin: 5rem auto;
  padding: 0 15rem;
}

.primary-title .title-area h3 {
  text-align: center;
  font-family: 'PT Serif', sans-serif;
}

.primary-title .title-area h1 {
  text-align: center;
  font-family: 'PT Serif Bold', sans-serif;
}

.primary-title .title-area .sub-title {
  color: #A3A3A3;
  text-align: center;
}

.function-page-container {
  background-color: #f2f2f2;
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.function-page-container .primary-title {
  margin: 7rem auto;
}

.function-page-container h2 {
  color: #1EACD9;
  font-size: 1.25rem;
  line-height: 3rem;
}

.function-page-container a {
  color: #000000;
}

.function-page-container a:hover {
  color: #1EACD9;
}

.search .search-header {
  text-align: center;
  padding: 7rem 0;
}

.search .search-header .title {
  font-family: 'PT Serif', sans-serif;
}

.search .search-header .title strong {
  font-family: 'PT Serif Bold', sans-serif !important;
}

.search .search-header .input-area .btn-area {
  position: absolute;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  height: 100%;
  font-size: 5rem;
  right: 0;
  display: -ms-flexbox;
  display: flex;
}

.search .search-header .input-area .btn-area .fa {
  cursor: pointer;
}

.search .search-header .input-area input {
  border: 0;
  border-bottom: 3px solid #000000;
  width: 100%;
  font-size: 6rem;
  text-align: center;
  padding-right: 5.2rem;
}

.search .search-header .input-area input:focus {
  outline: none !important;
}

.search .search-header .button-emk {
  padding: 1rem;
  font-size: 20px;
}

.products .box-left {
  height: 380px !important;
  padding: 0;
  background-image: url("https://images.unsplash.com/photo-1523755231516-e43fd2e8dca5?auto=format&fit=crop&w=750&q=80");
  background-size: cover;
  background-position: 50% 50%;
  position: relative;
}

.products .box-right {
  height: 580px !important;
}

.products .box-right .bg-area {
  position: relative;
  padding: 0;
  background-image: url("https://images.unsplash.com/photo-1499933374294-4584851497cc?auto=format&fit=crop&w=750&q=80");
  background-size: cover;
}

.products h3 {
  font-family: 'PT Serif Italic', sans-serif;
  font-size: 24px;
  color: #ffffff;
  padding: 10px;
}

.products .btn-area {
  position: absolute;
  bottom: 15px;
  right: 15px;
}

.products .btn-area button {
  background-color: #1EACD9;
  border: 2px solid #ffffff;
  color: #ffffff;
  font-family: 'PT Serif', sans-serif;
  border-radius: 0 !important;
  padding: 8px 20px;
}

.products .btn-area button:hover {
  background-color: #ffffff;
  border: 2px solid #1EACD9;
  color: #1EACD9;
}

.selection {
  margin-top: 5rem;
  margin-bottom: 5rem;
}

.selection h3 {
  text-align: center;
  font-family: 'PT Serif', sans-serif;
  line-height: 46px !important;
}

.selection .title-area {
  padding: 0 15rem;
  text-align: center;
}

.selection .sub-title {
  color: #A3A3A3;
  text-align: center;
  font-size: 20px;
}

.selection select {
  -webkit-appearance: none;
  -webkit-border-radius: 0 !important;
  font-size: 1.75rem;
  border: none;
  padding: 0;
  cursor: pointer;
  background: transparent !important;
}

.selection.product-selection h3 span {
  color: #E73F4B;
  border-bottom: 2px solid #E73F4B;
}

.selection.product-selection select {
  font-family: 'PT Serif Bold Italic', sans-serif;
  color: red;
  border-bottom: 2px solid red;
}

.selection.instruction-selection {
  background-color: #f2f2f2;
}

.selection.instruction-selection h3 span {
  color: #1EACD9;
  border-bottom: 2px solid #1EACD9;
}

.selection.instruction-selection select {
  font-family: 'PT Serif', sans-serif;
  color: #1EACD9;
  border-bottom: 2px solid #1EACD9;
}

.selection.instruction-selection .products {
  background-color: #ffffff;
  text-align: center;
  border-radius: 5px;
  margin-top: 1rem;
}

.selection.instruction-selection .products a {
  color: #1EACD9;
}

.instruction-faq {
  padding: 0 10rem;
  margin-bottom: 2rem;
}

.instruction-faq .title {
  font-size: 20px;
  color: #1EACD9;
}

.contact-area {
  background-color: #1EACD9;
  color: white;
  height: 80px;
}

.contact-area .contact-element-area {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.contact-area .contact-element-area .contact-element {
  margin-right: 2rem;
}

.contact-area .contact-element-area .contact-element .fa-lg {
  font-size: 2rem;
  vertical-align: -25%;
}

.contact-area.contact-top .contact-element-area .contact-element {
  width: 100%;
  text-align: end;
}

.contact-area.contact-top a {
  color: #ffffff;
  text-decoration: underline !important;
}

.contact-area.contact-bottom .contact-element-area {
  -ms-flex-pack: center;
      justify-content: center;
}

.contact-area .button-area {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.contact-area .button-area button {
  border-radius: 0 !important;
  background-color: #1EACD9 !important;
  border: 2px solid #ffffff !important;
  padding: 8px 20px;
  text-transform: capitalize;
}

.contact-area .button-area button:hover {
  background-color: #ffffff !important;
  border: 2px solid #1EACD9 !important;
  color: #1EACD9 !important;
}

.contact-area .button-area .link-button {
  border-radius: 0 !important;
  background-color: #1EACD9 !important;
  border: 2px solid #ffffff !important;
  padding: 8px 20px;
  text-transform: uppercase !important;
}

.contact-area .button-area .link-button:hover {
  background-color: #ffffff !important;
  border: 2px solid #1EACD9 !important;
  color: #1EACD9 !important;
}

.contact-form-area {
  margin: 3rem auto 5rem auto;
  padding: 0 10rem;
}

.contact-form-area textarea.form-control {
  height: 100% !important;
}

.contact-form-area .upload-area {
  margin-top: 1rem;
}

.contact-form-area .upload-area .input-area {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.contact-form-area .upload-area .input-area small {
  color: #A3A3A3;
}

.contact-form-area .upload-area .button-area {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.faq-area .faq-elements .spacer {
  margin-top: -130px;
  padding-bottom: 130px;
  display: block;
}

.faq-area .faq-elements section {
  background-color: #f2f2f2;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
}

.faq-area .faq-elements section:last-child {
  margin-bottom: 5rem;
}

.faq-area .faq-elements section .title {
  font-family: 'PT Serif', sans-serif;
  font-size: 28px;
}

.faq-area .faq-elements section .title .fa {
  cursor: pointer;
  color: #1EACD9;
  font-size: 35px;
}

.faq-area .faq-elements section .question {
  color: #1EACD9;
  margin-top: 2rem;
  font-size: 20px;
}

.faq-area .faq-elements section .question a {
  color: #1EACD9;
}

.faq-area .faq-elements section .question a:hover {
  text-decoration: none;
}

.faq-area .faq-elements section .question .icon-box {
  width: 3%;
}

.faq-area .faq-elements section .question .text-box {
  width: 95%;
}

.faq-area .faq-elements section .answer {
  line-height: 30px;
  font-size: 20px;
  padding-left: 3%;
}

.faq-area .faq-elements section article {
  margin-top: 1rem;
}

.faq-area .faq-nav .border {
  border: 1px solid #1EACD9 !important;
}

.faq-area .faq-nav ol li {
  margin-top: 15px;
}

.faq-area .faq-nav ol a {
  color: #000000;
}

.faq-area .faq-nav ol a:hover,
.faq-area .faq-nav ol a:active {
  color: #1EACD9;
  text-decoration: none;
}

.testimonial-area {
  background: #F9F9F9;
  padding: 3rem 15px;
}

.testimonial-area .btn-area {
  position: absolute;
  bottom: 30px;
  text-align: center;
  width: 100%;
  z-index: 1;
}

.testimonial-area .testimonial-collage:after {
  position: absolute;
  bottom: 5px;
  left: 27px;
  right: 27px;
  content: '';
  height: 150px;
  display: block;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 100%);
}

.testimonial-area .testimonial-collage .flex-column {
  max-width: 32%;
}

.testimonial-area .testimonial-collage .img-area {
  margin: 5px;
  position: relative;
}

.testimonial-area .testimonial-collage .img-area .testimonial {
  display: none;
  background: rgba(231, 63, 75, 0.8);
  color: #ffffff;
  position: absolute;
  top: 10px;
  right: 10px;
  bottom: 10px;
  left: 10px;
  padding: 1rem;
  transition: 0.4s;
}

.testimonial-area .testimonial-collage .img-area .testimonial .icon {
  font-size: 60px;
  margin-top: -35px;
}

.testimonial-area .testimonial-collage .img-area .testimonial .text {
  line-height: 28px;
  margin-top: 10px;
}

.testimonial-area .testimonial-collage .img-area:hover .testimonial {
  display: block !important;
  transition: 0.4s;
}

.user-container {
  min-height: calc(100vh - 300px);
}

.user-container .navigation-area ul {
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
}

.user-container .navigation-area ul a {
  color: #000000;
}

@media only screen and (max-width: 991px) {
  .primary-title {
    padding: 5rem 15px;
    margin: auto;
  }

  .products .box-right {
    height: 380px !important;
  }

  .products h3 {
    text-align: center;
    padding-top: 40px;
    transition: 0.2s;
  }

  .products .btn-area {
    right: 0;
    width: 100%;
    text-align: center;
    padding-bottom: 25px;
    transition: 0.2s;
  }

  .selection .title-area {
    padding: 0 2rem !important;
  }

  .selection.product-selection .custom-container {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
  }

  .instruction-faq {
    padding: 0 3rem;
  }

  .contact-form-area {
    padding: 0 2rem;
    margin-top: 0 !important;
  }

  .contact-form-area .button-area {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    margin-top: 1rem;
  }

  .contact-form-area .button-area button {
    width: 100% !important;
  }

  .testimonial-area .testimonial-collage:after {
    left: 0 !important;
    right: 0 !important;
  }

  .faq-area {
    padding: 0 !important;
  }

  .faq-area .faq-elements section .question .icon-box {
    width: 10% !important;
  }

  .faq-area .faq-elements section .question .text-box {
    width: 90% !important;
  }

  .faq-area .faq-elements section .answer {
    padding-left: 10% !important;
  }

  .contact-element-area .contact-element .fa-lg {
    font-size: 1.5rem !important;
    vertical-align: -20% !important;
  }
}

@media only screen and (max-width: 576px) {
  .products {
    padding: 0 35px !important;
  }

  .products .box-right,
  .products .box-left {
    margin-top: 40px !important;
  }

  .products .btn-area button {
    width: 90%;
    height: 50px;
  }

  .selection .sub-title {
    text-align: left !important;
    padding: 0 1.8rem !important;
  }

  .contact-area.contact-top {
    height: 120px;
  }

  .contact-area.contact-top .text-area {
    text-align: center;
  }

  .contact-area.contact-top .contact-element-area .contact-element {
    text-align: center;
  }

  .contact-area.contact-bottom {
    height: 220px;
  }

  .contact-area.contact-bottom .contact-element-area {
    display: block;
  }

  .contact-area.contact-bottom .contact-element-area .contact-element {
    margin-right: 0;
    text-align: center;
  }

  .contact-area.contact-bottom .contact-element-area .contact-element:nth-child(1) {
    padding-top: 40px;
  }

  .contact-area.contact-bottom .contact-element-area .contact-element:nth-child(2) {
    margin-top: 15px;
  }

  .contact-area .button-area {
    margin-bottom: 30px;
  }

  .contact-form-area {
    padding: 0 !important;
  }

  .faq-area {
    padding: 20px;
  }

  .faq-area .faq-elements section .title {
    font-size: 22px;
  }
}

footer .payment {
  background-color: #f2f2f2;
  height: 80px;
}

footer .payment .payment-icon {
  width: 150px;
  text-align: center;
}

footer .payment .payment-icon img {
  height: 25px;
}

footer .link-area .link-cat .title {
  font-family: 'PT Serif Bold Italic', sans-serif;
  font-size: 18px;
}

footer .link-area .link-cat .icon-area {
  display: none;
}

footer .link-area .link-cat ul {
  list-style: none;
  font-size: 14px;
}

footer .link-area .link-cat ul li {
  line-height: 25px;
}

footer .link-area .link-cat ul li a {
  color: #A3A3A3;
}

footer .link-area .link-cat ul li a:hover {
  color: #000000;
}

footer .text-area {
  background-color: #f2f2f2;
}

footer .text-area .title {
  font-family: 'PT Serif Bold Italic', sans-serif;
  font-size: 18px;
}

footer .text-area .text {
  font-size: 14px;
  color: #A3A3A3;
  line-height: 25px;
}

@media only screen and (max-width: 991px) {
  .link-area .link-cat .title {
    float: left;
  }

  .link-area .link-cat .icon-area {
    display: block !important;
    float: right;
    color: #1EACD9;
    font-weight: bold;
    transition: 0.4s;
  }

  .link-area .link-cat .icon-area.rotate {
    transform: rotate(45deg);
    transition: 0.4s;
  }
}

.form-control {
  border-radius: 0 !important;
  height: 48px !important;
}

.button-emk {
  font-family: 'PT Serif', sans-serif;
  color: #ffffff !important;
  background-color: #1EACD9 !important;
  border: 2px solid #1EACD9 !important;
  border-radius: 0 !important;
  padding: 8px 20px;
  font-weight: bold;
}

.button-emk:hover {
  background-color: #ffffff !important;
  border: 2px solid #1EACD9 !important;
  color: #1EACD9 !important;
}

.button-emk.has-border {
  border: 2px solid #ffffff !important;
}

.button-emk.has-border:hover {
  border: 2px solid #1EACD9 !important;
}

.button-emk-white {
  border-radius: 0 !important;
  background-color: #ffffff !important;
  border: 2px solid #1EACD9 !important;
  color: #1EACD9 !important;
  padding: 8px 20px;
  font-family: 'PT Serif', sans-serif;
}

.button-emk-white:hover {
  background-color: #1EACD9 !important;
  border: 2px solid #1EACD9 !important;
  color: #ffffff !important;
}

.contact-file-attachment .inputfile {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}

.contact-file-attachment label {
  cursor: pointer;
}

.emk-checkbox .checkbox-area {
  padding-right: 1rem;
  padding-left: 1rem;
}

.emk-checkbox .checkbox-area .custom-checkbox {
  display: none;
}

.emk-checkbox .checkbox-area .custom-checkbox + label::before {
  width: 35px;
  height: 35px;
  border: 7px solid #fff;
  background-color: #f7f7f7;
  display: block;
  content: "";
  cursor: pointer;
}

.emk-checkbox .checkbox-area .custom-checkbox:checked + label::before {
  background-color: #1EACD9;
}

.emk-checkbox .detail-area {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.emk-checkbox .detail-area .details .title {
  font-size: 20px;
  font-family: 'PT Serif', sans-serif;
}

.emk-checkbox .detail-area .details .infos {
  color: #A3A3A3;
}

.success-checkmark {
  width: 80px;
  height: 115px;
  margin: 0 auto;
}

.success-checkmark .check-icon {
  width: 80px;
  height: 80px;
  position: relative;
  border-radius: 50%;
  box-sizing: content-box;
}

.success-checkmark .check-icon::before {
  top: 3px;
  left: -2px;
  width: 30px;
  transform-origin: 100% 50%;
  border-radius: 100px 0 0 100px;
}

.success-checkmark .check-icon::after {
  top: 0;
  left: 30px;
  width: 60px;
  transform-origin: 0 50%;
  border-radius: 0 100px 100px 0;
  animation: rotate-circle 4.25s ease-in;
}

.success-checkmark .check-icon::before,
.success-checkmark .check-icon::after {
  content: '';
  height: 100px;
  position: absolute;
  background: transparent;
  transform: rotate(-45deg);
}

.success-checkmark .check-icon .icon-line {
  height: 5px;
  background-color: #4CAF50;
  display: block;
  border-radius: 2px;
  position: absolute;
  z-index: 10;
}

.success-checkmark .check-icon .icon-line.line-tip {
  top: 46px;
  left: 14px;
  width: 25px;
  transform: rotate(45deg);
  animation: icon-line-tip 0.75s;
}

.success-checkmark .check-icon .icon-line.line-long {
  top: 38px;
  right: 8px;
  width: 47px;
  transform: rotate(-45deg);
  animation: icon-line-long 0.75s;
}

.success-checkmark .check-icon .icon-circle {
  top: -4px;
  left: -4px;
  z-index: 10;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  position: absolute;
  box-sizing: content-box;
}

.success-checkmark .check-icon .icon-fix {
  top: 8px;
  width: 5px;
  left: 26px;
  z-index: 1;
  height: 85px;
  position: absolute;
  transform: rotate(-45deg);
  background-color: transparent;
}

@keyframes rotate-circle {
  0% {
    transform: rotate(-45deg);
  }

  5% {
    transform: rotate(-45deg);
  }

  12% {
    transform: rotate(-405deg);
  }

  100% {
    transform: rotate(-405deg);
  }
}

@keyframes icon-line-tip {
  0% {
    width: 0;
    left: 1px;
    top: 19px;
  }

  54% {
    width: 0;
    left: 1px;
    top: 19px;
  }

  70% {
    width: 50px;
    left: -8px;
    top: 37px;
  }

  84% {
    width: 17px;
    left: 21px;
    top: 48px;
  }

  100% {
    width: 25px;
    left: 14px;
    top: 45px;
  }
}

@keyframes icon-line-long {
  0% {
    width: 0;
    right: 46px;
    top: 54px;
  }

  65% {
    width: 0;
    right: 46px;
    top: 54px;
  }

  84% {
    width: 55px;
    right: 0px;
    top: 35px;
  }

  100% {
    width: 47px;
    right: 8px;
    top: 38px;
  }
}

.alert-wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.alert-wrapper .alert {
  background: #f2f2f2 !important;
  border-radius: 0 !important;
  text-align: center;
  border: 0;
  width: 60%;
}

.alert-wrapper .alert.alert-danger {
  color: #E73F4B !important;
}

.configurator-wrapper .header {
  background-color: #f2f2f2;
  height: 150px;
  margin-top: 1rem;
  margin-bottom: 2rem;
}

.configurator-wrapper .header .steps-container {
  height: 100%;
}

.configurator-wrapper .header .steps-container .steps {
  height: 100%;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.configurator-wrapper .header .steps-container .steps .step-box {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  width: 90px;
  margin-left: -25px;
  margin-right: -25px;
}

.configurator-wrapper .header .steps-container .steps .step-box .step-icon {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center !important;
      align-items: center !important;
  -ms-flex-pack: center !important;
      justify-content: center !important;
  color: #E73F4B;
  background: #f2f2f2;
  width: 40px;
  height: 40px;
  margin: auto;
  border: 1px solid #E73F4B !important;
}

.configurator-wrapper .header .steps-container .steps .step-box .step-icon.active {
  color: #fff;
  background: #E73F4B;
}

.configurator-wrapper .header .steps-container .steps .border-area {
  width: 150px;
}

.configurator-wrapper .header .steps-container .steps .border-area hr {
  margin-top: -5px;
}

.configurator-wrapper .header .steps-container .steps .border-area hr.active {
  border-color: #E73F4B !important;
}

@media only screen and (max-width: 991px) {
  .configurator-wrapper .header {
    height: 90px;
  }

  .configurator-wrapper .header .steps-container {
    width: 90%;
  }

  .configurator-wrapper .header .steps-container .steps .step-name {
    display: none;
  }

  .configurator-wrapper .header .steps-container .steps .border-area hr {
    margin-top: 14px !important;
  }
}

.configurator-wrapper .page-title {
  font-size: 30px;
  font-family: 'PT Serif', sans-serif;
  margin-bottom: 5rem;
}

.configurator-wrapper .configurator .price-box {
  background-color: #1EACD9;
  color: #fff;
  padding: 0.5rem 1rem;
}

.configurator-wrapper .configurator .measurement-area,
.configurator-wrapper .configurator .sidebar-right {
  margin-bottom: 5rem;
}

.configurator-wrapper .configurator .measurement-area .title,
.configurator-wrapper .configurator .sidebar-right .title {
  color: #1EACD9;
  font-size: 20px;
}

.configurator-wrapper .configurator .measurement-area .btn-emk-config,
.configurator-wrapper .configurator .sidebar-right .btn-emk-config {
  font-family: 'PT Serif', sans-serif;
  color: #ffffff !important;
  background-color: #1EACD9 !important;
  border: 2px solid #1EACD9 !important;
  border-radius: 0 !important;
  padding: 5px 10px;
  cursor: pointer;
}

.configurator-wrapper .configurator .measurement-area .btn-emk-config:hover,
.configurator-wrapper .configurator .sidebar-right .btn-emk-config:hover {
  background-color: #ffffff !important;
  border: 2px solid #1EACD9 !important;
  color: #1EACD9 !important;
}

.configurator-wrapper .configurator .measurement-area .btn-emk-config-danger,
.configurator-wrapper .configurator .sidebar-right .btn-emk-config-danger {
  font-family: 'PT Serif', sans-serif;
  color: #ffffff !important;
  background-color: #E73F4B !important;
  border: 2px solid #E73F4B !important;
  border-radius: 0 !important;
  padding: 5px 10px;
  cursor: pointer;
}

.configurator-wrapper .configurator .measurement-area .btn-emk-config-danger:hover,
.configurator-wrapper .configurator .sidebar-right .btn-emk-config-danger:hover {
  background-color: #fff !important;
  border: 2px solid #E73F4B !important;
  color: #E73F4B !important;
}

.configurator-wrapper .configurator .measurement-area .info-btn,
.configurator-wrapper .configurator .sidebar-right .info-btn {
  font-size: 25px;
  margin-left: 0.4rem;
  cursor: pointer;
}

.configurator-wrapper .configurator .measurement-area .input-area,
.configurator-wrapper .configurator .sidebar-right .input-area {
  background-color: #f2f2f2;
  padding: 0.5rem 1rem;
}

.configurator-wrapper .configurator .measurement-area form .form-control,
.configurator-wrapper .configurator .sidebar-right form .form-control {
  border-radius: 0 !important;
  height: 40px !important;
}

.configurator-wrapper .configurator .measurement-area form .input-group-append .input-group-text,
.configurator-wrapper .configurator .sidebar-right form .input-group-append .input-group-text {
  border-radius: 0 !important;
  background-color: #fff !important;
}

.configurator-wrapper .configurator .measurement-area .add-element-btn,
.configurator-wrapper .configurator .sidebar-right .add-element-btn {
  background-color: #f2f2f2;
  padding: 1rem;
  text-align: center;
  color: #1EACD9;
  cursor: pointer;
}

.configurator-wrapper .configurator .measurement-area .add-element-btn .btn:focus,
.configurator-wrapper .configurator .sidebar-right .add-element-btn .btn:focus {
  outline: none !important;
  box-shadow: none !important;
}

.configurator-wrapper .configurator .measurement-area .card,
.configurator-wrapper .configurator .sidebar-right .card {
  border-radius: 0 !important;
  border: 0;
}

.configurator-wrapper .configurator .measurement-area .card .card-header,
.configurator-wrapper .configurator .sidebar-right .card .card-header {
  border: 0;
  cursor: pointer;
}

.configurator-wrapper .configurator .measurement-area .card .card-header h6,
.configurator-wrapper .configurator .sidebar-right .card .card-header h6 {
  color: #1EACD9;
}

.configurator-wrapper .configurator .measurement-area .card .card-body .element,
.configurator-wrapper .configurator .sidebar-right .card .card-body .element {
  min-height: 55px;
  z-index: 992;
}

.configurator-wrapper .configurator .measurement-area .card .card-body .col-3,
.configurator-wrapper .configurator .sidebar-right .card .card-body .col-3 {
  margin-bottom: 8px;
}

.configurator-wrapper .configurator .measurement-area .card .card-body .name-container,
.configurator-wrapper .configurator .sidebar-right .card .card-body .name-container {
  background-color: #1EACD9;
  color: white;
  padding: 0.25rem;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.configurator-wrapper .configurator .measurement-area .card .card-body .img-container,
.configurator-wrapper .configurator .sidebar-right .card .card-body .img-container {
  min-height: 55px;
}

.configurator-wrapper .configurator .measurement-area .card .collapse,
.configurator-wrapper .configurator .measurement-area .card .card-body,
.configurator-wrapper .configurator .sidebar-right .card .collapse,
.configurator-wrapper .configurator .sidebar-right .card .card-body {
  background: #f2f2f2;
}

.configurator-wrapper .configurator .measurement-area .emk-checkbox,
.configurator-wrapper .configurator .sidebar-right .emk-checkbox {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.configurator-wrapper .configurator .measurement-area .emk-checkbox .checkbox-area,
.configurator-wrapper .configurator .sidebar-right .emk-checkbox .checkbox-area {
  padding-top: .9rem;
  padding-left: 0 !important;
}

.configurator-wrapper .configurator-modal .modal-dialog {
  width: 270px;
}

.configurator-wrapper .configurator-modal .modal-title {
  font-size: 1.2rem;
  color: #1EACD9;
}

.configurator-wrapper .configurator-modal .form-group label {
  color: #1EACD9;
}

.configurator-wrapper .configurator-modal .btn {
  border-radius: 0 !important;
  padding: 2px 5px;
}

.configurator-wrapper .configurator-modal .btn .fa {
  font-size: 28px;
}

.configurator-wrapper .configurator-modal .btn.btn-primary {
  background-color: #1EACD9 !important;
  border-color: #1EACD9 !important;
}

.configurator-wrapper .configurator-modal select {
  -webkit-appearance: none;
  -webkit-border-radius: 0 !important;
  background: url(/images/arrow-down.png?75cce1533c263d247e79d4c47abae399) no-repeat bottom 15px right 8px #fff;
  text-align: center;
  text-align-last: center;
}

.configurator-wrapper .configurator-modal .modal-content {
  background-color: #f2f2f2 !important;
  border-radius: 0 !important;
  border: none !important;
}

.configurator-wrapper .configurator-modal .modal-body {
  padding: 1rem 2rem !important;
}

.configurator-wrapper .configurator-modal .modal-footer {
  -ms-flex-pack: center !important;
      justify-content: center !important;
  border-top: none !important;
  padding-top: 0 !important;
}

.configurator-wrapper .configurator-modal .modal-header {
  padding: 1rem 2rem 0 2rem !important;
  border-bottom: none !important;
}

.configurator-wrapper .configurator-modal .custom-radio-group {
  /* HIDE RADIO */
  /* IMAGE STYLES */
  /* CHECKED STYLES */
}

.configurator-wrapper .configurator-modal .custom-radio-group img {
  height: 55px;
}

.configurator-wrapper .configurator-modal .custom-radio-group [type=radio] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.configurator-wrapper .configurator-modal .custom-radio-group [type=radio] + .flip-card {
  cursor: pointer;
}

.configurator-wrapper .configurator-modal .custom-radio-group [type=radio]:checked + .flip-card {
  outline: 2px solid #1EACD9;
}

.configurator-wrapper .removeSubmodule {
  background-color: red;
  color: white;
  padding: 0 3px;
}

.configurator-wrapper .removeSubmodule:hover {
  text-decoration: none;
  background-color: #dd0000;
}

.configurator-wrapper .configurator {
  position: relative;
}

.configurator-wrapper .configurator .graphic-box {
  position: relative;
  background: #919191;
  height: 450px;
  margin-bottom: 2rem;
}

.configurator-wrapper .configurator .graphic-box .msg-overlay {
  background: #04040469;
  z-index: 994;
  height: 100%;
  width: 100%;
  position: absolute;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.configurator-wrapper .configurator .graphic-box .msg-overlay .msg-box {
  width: 75%;
  background-color: #f8f8f8;
  text-align: center;
  padding: 1.2rem;
}

.configurator-wrapper .configurator .graphic-box .msg-overlay .msg-box .btn {
  border-radius: 0 !important;
  padding: 2px 5px;
}

.configurator-wrapper .configurator .graphic-box .msg-overlay .msg-box .btn .fa {
  font-size: 25px;
}

.configurator-wrapper .configurator .graphic-box .msg-overlay .msg-box .btn.btn-primary {
  background-color: #1EACD9 !important;
  border-color: #1EACD9 !important;
}

.configurator-wrapper .configurator .graphic-box .bg-area {
  height: 70%;
  background-color: #CCCCCC;
}

.configurator-wrapper .configurator .graphic-box .sketch-wrapper {
  min-height: 61%;
  position: absolute;
  width: 100%;
  max-height: 100%;
  bottom: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}

.configurator-wrapper .configurator .graphic-box .sketch-wrapper .sketch {
  position: relative;
  min-width: 50%;
}

.configurator-wrapper .configurator .graphic-box .sketch-wrapper .sketch .height-area {
  top: 2rem;
  width: 25px;
  bottom: 3rem;
  left: 4rem;
  position: absolute;
}

.configurator-wrapper .configurator .graphic-box .sketch-wrapper .sketch .height-area .height-unit {
  top: 45%;
  left: -1.5rem;
  font-size: 12px;
  min-width: 30px;
  background: #CCCCCC;
  text-align: center;
  position: absolute;
}

.configurator-wrapper .configurator .graphic-box .sketch-wrapper .sketch .width-area {
  position: absolute;
  bottom: 2rem;
  right: 9.5rem;
  left: 6rem;
}

.configurator-wrapper .configurator .graphic-box .sketch-wrapper .sketch .width-area .width-unit {
  position: absolute;
  min-width: 30px;
  text-align: center;
  background: #919191;
  margin-top: -8px;
  padding: 0 5px;
  font-size: 12px;
}

.configurator-wrapper .configurator .graphic-box .sketch-wrapper .sketch .depth-area {
  position: absolute;
  right: 5.8rem;
  bottom: 3.7rem;
}

.configurator-wrapper .configurator .graphic-box .sketch-wrapper .sketch .depth-area .depth-border {
  width: 60px;
  transform: rotate(-52deg);
}

.configurator-wrapper .configurator .graphic-box .sketch-wrapper .sketch .depth-area .depth-unit {
  position: absolute;
  font-size: 12px;
  background: #919191;
  bottom: -0.5rem;
  right: 0.5rem;
}

.configurator-wrapper .configurator .graphic-box .sketch-wrapper .sketch .element-area {
  top: 2rem;
  right: 7rem;
  left: 6rem;
  bottom: 3rem;
  position: absolute;
}

.configurator-wrapper .configurator .graphic-box .sketch-wrapper .sketch .element-area-side {
  border-left: 40px solid #f7f7f7;
  border-top: 25px solid transparent;
  border-bottom: 50px solid transparent;
  height: 100%;
}

.configurator-wrapper .configurator .graphic-box .sketch-wrapper .sketch .side-area {
  position: relative;
  width: 40px;
  background-size: cover;
  background-color: whitesmoke;
}

.configurator-wrapper .configurator .graphic-box .sketch-wrapper .sketch .side-area .top {
  border-color: transparent #CCCCCC;
  border-style: solid;
  border-width: 21px 0px 0px 38px;
  height: 0;
  width: 0;
  transform: rotate(180deg);
}

.configurator-wrapper .configurator .graphic-box .sketch-wrapper .sketch .side-area .bottom {
  border-color: transparent #919191;
  border-style: solid;
  border-width: 0 0 55px 40px;
  height: 0;
  width: 0;
  transform: rotate(180deg);
  position: absolute;
  bottom: 0;
}

.configurator-wrapper .configurator .sidebar {
  position: absolute;
  top: 0;
  left: 2rem;
  height: 450px;
  width: 100px;
  background-color: #f2f2f2;
  text-align: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.configurator-wrapper .configurator .sidebar .icon-area {
  padding: 1rem 0;
}

.configurator-wrapper .configurator .sidebar .icon-area .fa {
  font-size: 40px;
  cursor: pointer;
  transition: 0.2s;
}

.configurator-wrapper .configurator .sidebar .icon-area .title {
  font-size: 13px;
  cursor: pointer;
}

.configurator-wrapper .configurator .sidebar .icon-area:hover {
  color: #A3A3A3;
}

.configurator-wrapper .configurator .sidebar .icon-area a {
  color: black;
}

.configurator-wrapper .configurator .sidebar .icon-area a:hover {
  text-decoration: none;
}

@media only screen and (max-width: 1390px) {
  .configurator-wrapper .configurator .sidebar {
    display: none !important;
  }
}

.configurator-wrapper .sketch .wardrobe {
  width: 100%;
  height: 100%;
  background: #fff;
  border: 1px solid #dee2e6;
  background-size: cover;
}

.configurator-wrapper .sketch .wardrobe .divider {
  border-right: 1px solid #dee2e6;
  height: 100%;
  float: left;
  position: relative;
}

.configurator-wrapper .sketch .wardrobe .divider :last-child {
  border: none;
}

.configurator-wrapper .sketch .wardrobe .divider .covering {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  background-size: cover;
}

.configurator-wrapper .sketch .wardrobe .divider .covering .handle {
  width: 15px;
  position: absolute;
  height: 30px;
}

.configurator-wrapper .sketch .wardrobe .divider .covering .handle.right {
  right: 0;
}

.configurator-wrapper .sketch .wardrobe .divider .covering .handle.left {
  left: 5px;
}

.configurator-wrapper .sketch .wardrobe .divider .covering.door {
  background-color: #986546;
}

.configurator-wrapper .sketch .wardrobe .divider .covering.glass {
  background-color: #00bcd426;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper {
  height: 100%;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .group {
  position: relative;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .group .covering {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  z-index: 993;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  background-size: cover;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .group .covering .handle {
  width: 15px;
  position: absolute;
  height: 30px;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .group .covering .handle.right {
  right: 0;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .group .covering .handle.left {
  left: 5px;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .group .covering.door {
  background-color: #986546;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .group .covering.glass {
  background-color: #00bcd426;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .element {
  z-index: 992 !important;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .drawer {
  border: 1px solid #000000 !important;
  width: 100% !important;
  height: 35px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .drawer:hover {
  border: 2px solid #1eacd973 !important;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .drawer:hover .board,
.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .drawer:hover .drawer-handle {
  border: 2px solid #1eacd973 !important;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .drawer .board,
.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .drawer .drawer-handle {
  width: 40%;
  border: 1px solid #000000;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .shelves {
  min-height: 40px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .shelves .board {
  width: 100%;
  border: 1px solid #000000 !important;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .shelves:hover {
  border: 2px solid #1eacd973 !important;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .shelves:hover .board {
  border: 2px solid #1eacd973 !important;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .clothes-rail {
  min-height: 80px;
  height: 100%;
  position: relative;
  border: 1px dotted #353535;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .clothes-rail:hover {
  border: 2px solid #1eacd973 !important;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .clothes-rail:hover .board,
.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .clothes-rail:hover .rail {
  border: 2px solid #1eacd973 !important;
}

.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .clothes-rail .board,
.configurator-wrapper .sketch .wardrobe .elements-wrapper .element .clothes-rail .rail {
  position: absolute;
  top: 10px;
  width: 100%;
  border: 1px solid #000000;
}

.configurator-wrapper .configurator .drawer {
  height: 35px;
  min-width: 100px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  border: 1px solid #000000 !important;
}

.configurator-wrapper .configurator .drawer .board,
.configurator-wrapper .configurator .drawer .drawer-handle {
  width: 40%;
  border: 1px solid #000000;
}

.configurator-wrapper .configurator .shelves {
  min-height: 40px;
  min-width: 100px !important;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.configurator-wrapper .configurator .shelves .board {
  width: 100%;
  border: 1px solid #000000 !important;
}

.configurator-wrapper .configurator .clothes-rail {
  min-height: 30px;
  min-width: 100px;
  position: relative;
}

.configurator-wrapper .configurator .clothes-rail .board,
.configurator-wrapper .configurator .clothes-rail .rail {
  top: 10px;
  position: absolute;
  width: 100%;
  border: 1px solid #000000;
}

.configurator-wrapper .over {
  border: solid 3px #1eacd973 !important;
}

.configurator-wrapper .acc-icon-rotate {
  transform: rotate(180deg);
  transition: 0.2s;
}

.selectedHandle {
  border: 1px solid #1EACD9;
}

.cursor-pointer {
  cursor: pointer;
}

.checkout-wrapper .header-btn-area {
  margin: 3rem 0;
}

@media only screen and (max-width: 991px) {
  .checkout-wrapper .header-btn-area {
    display: none;
  }
}

.checkout-wrapper .header {
  background-color: #f2f2f2;
  height: 150px;
  margin-top: 1rem;
  margin-bottom: 2rem;
}

.checkout-wrapper .header .steps-container {
  height: 100%;
}

.checkout-wrapper .header .steps-container .steps {
  height: 100%;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.checkout-wrapper .header .steps-container .steps .step-box {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  width: 90px;
  margin-left: -25px;
  margin-right: -25px;
}

.checkout-wrapper .header .steps-container .steps .step-box .step-icon {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center !important;
      align-items: center !important;
  -ms-flex-pack: center !important;
      justify-content: center !important;
  color: #E73F4B;
  background: #f2f2f2;
  width: 40px;
  height: 40px;
  margin: auto;
  border: 1px solid #E73F4B !important;
}

.checkout-wrapper .header .steps-container .steps .step-box .step-icon.active {
  color: #fff;
  background: #E73F4B;
}

.checkout-wrapper .header .steps-container .steps .border-area {
  width: 150px;
}

.checkout-wrapper .header .steps-container .steps .border-area hr {
  margin-top: -5px;
}

.checkout-wrapper .header .steps-container .steps .border-area hr.active {
  border-color: #E73F4B !important;
}

@media only screen and (max-width: 991px) {
  .checkout-wrapper .header {
    height: 90px;
  }

  .checkout-wrapper .header .steps-container {
    width: 90%;
  }

  .checkout-wrapper .header .steps-container .steps .step-name {
    display: none;
  }

  .checkout-wrapper .header .steps-container .steps .border-area hr {
    margin-top: 14px !important;
  }
}

.checkout-wrapper .page-title {
  font-size: 30px;
  font-family: 'PT Serif', sans-serif;
}

.checkout-wrapper .service-container,
.checkout-wrapper .price-container,
.checkout-wrapper .payment-icon-container,
.checkout-wrapper .confirmation-container {
  background-color: #f2f2f2;
  padding: 1rem;
  margin-bottom: 1.5rem;
}

.checkout-wrapper .product-container {
  padding: 1rem;
  margin-bottom: 1.5rem;
}

.checkout-wrapper .product-container .product-title,
.checkout-wrapper .product-container .price {
  font-family: 'PT Serif', sans-serif;
  font-size: 20px;
}

.checkout-wrapper .product-container .select-amount {
  height: 40px !important;
  -webkit-appearance: none;
  -webkit-border-radius: 0 !important;
  background: url(/images/arrow-down.png?75cce1533c263d247e79d4c47abae399) no-repeat bottom 10px right 8px #fff;
}

.checkout-wrapper .product-container .select-amount.disabled {
  background: url(/images/arrow-down.png?75cce1533c263d247e79d4c47abae399) no-repeat bottom 10px right 8px #dad7d7 !important;
}

.checkout-wrapper .product-container .icon-container {
  text-align: right;
  font-size: 25px;
  color: #1EACD9;
}

.checkout-wrapper .product-container .icon-container .fa {
  cursor: pointer;
}

.checkout-wrapper .product-container .icon-container .fa:hover {
  color: #A3A3A3;
}

.checkout-wrapper .product-container.has-bg {
  background-color: #f2f2f2 !important;
}

.checkout-wrapper .product-container .product-info-header {
  background-color: #fff;
  margin-top: 0.5rem;
  padding: 0.5rem;
  display: -ms-flexbox;
  display: flex;
  cursor: pointer;
}

.checkout-wrapper .product-container .product-info {
  background: #fff;
}

.checkout-wrapper .confirmation-container {
  min-height: 500px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  text-align: center;
}

.checkout-wrapper .confirmation-container .fa {
  font-size: 30px;
}

.checkout-wrapper .service-container .checkbox-area {
  padding-right: 3rem;
  padding-left: 1.5rem;
}

.checkout-wrapper .service-container .checkbox-area .custom-checkbox {
  display: none;
}

.checkout-wrapper .service-container .checkbox-area .custom-checkbox + label::before {
  width: 35px;
  height: 35px;
  border: 7px solid #fff;
  background-color: #f7f7f7;
  display: block;
  content: "";
  cursor: pointer;
}

.checkout-wrapper .service-container .checkbox-area .custom-checkbox:checked + label::before {
  background-color: #E73F4B;
}

.checkout-wrapper .service-container .detail-area {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.checkout-wrapper .service-container .detail-area .details .title {
  font-size: 20px;
  font-family: 'PT Serif', sans-serif;
}

.checkout-wrapper .service-container .detail-area .details .infos {
  color: #A3A3A3;
}

.checkout-wrapper .payment-icon-container {
  -ms-flex-align: center;
      align-items: center;
}

.checkout-wrapper .payment-icon-container .icons img {
  margin-right: 3rem;
}

.checkout-wrapper .payment-icon-container .icons img:last-child {
  margin-right: 0 !important;
}

.checkout-wrapper .price-container {
  padding: 2rem 3rem;
}

.checkout-wrapper .price-container .text-light {
  color: #A3A3A3 !important;
}

.checkout-wrapper .price-container hr {
  border: 1.5px solid #A3A3A3 !important;
}

.checkout-wrapper .price-container .total-price {
  font-weight: bold;
  margin-top: -5px;
}

.checkout-wrapper .price-container .checkbox-area {
  padding-right: 1rem;
  margin-top: 1rem;
}

.checkout-wrapper .price-container .checkbox-area .custom-checkbox {
  display: none;
}

.checkout-wrapper .price-container .checkbox-area .custom-checkbox + label::before {
  width: 35px;
  height: 35px;
  border: 7px solid #fff;
  background-color: #f7f7f7;
  display: block;
  content: "";
  cursor: pointer;
}

.checkout-wrapper .price-container .checkbox-area .custom-checkbox:checked + label::before {
  background-color: #E73F4B;
}

.checkout-wrapper .payment-container .payment-box {
  display: -ms-flexbox;
  display: flex;
  border-top: 1px solid #A3A3A3;
}

.checkout-wrapper .payment-container .payment-box .checkbox-area {
  padding-right: 1rem;
  margin-top: 1rem;
}

.checkout-wrapper .payment-container .payment-box .checkbox-area .custom-checkbox {
  display: none;
}

.checkout-wrapper .payment-container .payment-box .checkbox-area .custom-checkbox + label::before {
  width: 35px;
  height: 35px;
  border: 7px solid #fff;
  background-color: #f7f7f7;
  display: block;
  content: "";
  cursor: pointer;
}

.checkout-wrapper .payment-container .payment-box .checkbox-area .custom-checkbox:checked + label::before {
  background-color: #E73F4B;
}

.checkout-wrapper .payment-container .payment-box .detail-box {
  margin-top: 1.5rem;
}

.checkout-wrapper .payment-container .payment-box .detail-box .text-light {
  color: #A3A3A3 !important;
}

.checkout-wrapper .payment-container .payment-box .icon-area {
  font-size: 45px;
  padding-left: 3rem;
}

.checkout-wrapper .button-area {
  margin-bottom: 2rem;
}

@media only screen and (max-width: 1200px) {
  .checkout-wrapper .payment-icon-container .icons img {
    margin-right: 1rem;
  }
}

@media only screen and (min-width: 992px) {
  .checkout-wrapper .payment-container .payment-box-xs {
    display: none;
  }
}

@media only screen and (max-width: 991px) {
  .checkout-wrapper .service-container .detail-area .details .infos {
    display: none;
  }

  .checkout-wrapper .price-container {
    padding: 1rem;
  }

  .checkout-wrapper .page-title {
    text-align: center;
    padding: 1.5rem 0;
  }

  .checkout-wrapper .service-container .checkbox-area {
    padding-right: 2rem;
  }

  .checkout-wrapper .confirmation-container {
    min-height: 350px;
  }

  .checkout-wrapper .payment-container .payment-box {
    display: none !important;
  }

  .checkout-wrapper .payment-container .payment-box-xs .payment-icon-box-xs {
    background-color: #f8f8f8;
    height: 70px;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex;
  }
}

@media only screen and (max-width: 576px) {
  .checkout-wrapper .button-area {
    text-align: center !important;
  }

  .checkout-wrapper .button-area .btn {
    width: 75% !important;
    padding: 15px 20px !important;
  }
}

.checkout-wrapper .login-container {
  background-color: #f2f2f2;
  margin-bottom: 2rem;
  padding: 2rem 1rem;
}

.checkout-wrapper .login-container .form-container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.checkout-wrapper .login-container .button-emk {
  padding: 0.6rem !important;
}

.checkout-wrapper .register-box {
  background-color: #f2f2f2;
  margin-bottom: 3rem;
  padding: 1rem;
}

.checkout-wrapper .register-box .title {
  font-size: 22px;
  font-family: 'PT Serif', sans-serif;
  margin: 0.8rem 0 1.2rem 0;
}

.checkout-wrapper .register-box .checkbox-area {
  padding-right: 1rem;
  margin-top: 2rem;
}

.checkout-wrapper .register-box .checkbox-area .custom-checkbox {
  display: none;
}

.checkout-wrapper .register-box .checkbox-area .custom-checkbox + label::before {
  width: 38px;
  height: 38px;
  border: 6px solid #fff;
  background-color: #f7f7f7;
  display: block;
  content: "";
  cursor: pointer;
}

.checkout-wrapper .register-box .checkbox-area .custom-checkbox:checked + label::before {
  background-color: #E73F4B;
}

.checkout-wrapper .register-box .checkbox-label {
  margin-top: 2.5rem;
}

.checkout-wrapper .detail-wrapper {
  padding: 0 5rem;
  margin-bottom: 6rem;
}

.checkout-wrapper .detail-wrapper .col-md-6 {
  padding: 0 3rem;
}

.checkout-wrapper .detail-header {
  display: -ms-flexbox;
  display: flex;
}

.checkout-wrapper .detail-header .title {
  font-size: 25px;
  font-family: 'PT Serif', sans-serif;
}

.checkout-wrapper .detail-header .icon-area {
  text-align: center;
  font-size: 25px;
}

.checkout-wrapper .detail-header .icon-area a {
  color: #1EACD9;
}

.checkout-wrapper .detail-header .icon-area a:hover {
  text-decoration: none;
}

@media only screen and (max-width: 991px) {
  .checkout-wrapper .detail-wrapper {
    padding: 0 !important;
    margin-bottom: 0 !important;
  }

  .checkout-wrapper .detail-wrapper .col-md-6 {
    padding: 0 1rem !important;
  }
}

.checkout-wrapper .button-emk-white,
.checkout-wrapper .button-emk {
  width: 210px !important;
  padding: 0.7rem 0;
}

.checkout-wrapper .has-border {
  border: 1px solid #A3A3A3;
}

.checkout-wrapper .spacer {
  margin-bottom: 5rem;
}

.checkout-wrapper a {
  color: #1EACD9;
}

.checkout-wrapper a:hover {
  text-decoration: none;
}

@media only screen and (max-width: 991px) {
  .checkout-wrapper .button-emk-white,
  .checkout-wrapper .button-emk {
    width: auto !important;
    padding: 8px 20px !important;
  }

  .custom-container {
    padding: 0 !important;
  }
}

.site-emk .sidebar ul li.active a {
  color: #1EACD9;
}

.custom-modal {
  min-height: 150px;
  width: 300px;
  z-index: 9992;
  background: #f2f2f2;
  padding: 1rem;
  position: absolute;
}

.custom-modal .btn-primary {
  background-color: #1EACD9 !important;
  border-color: #1EACD9 !important;
}

.custom-modal select {
  -webkit-appearance: none;
  -webkit-border-radius: 0 !important;
  background: url(/images/arrow-down.png?75cce1533c263d247e79d4c47abae399) no-repeat bottom 15px right 8px #fff;
}

.custom-modal .custom-radio-group {
  /* HIDE RADIO */
  /* IMAGE STYLES */
  /* CHECKED STYLES */
}

.custom-modal .custom-radio-group img {
  height: 50px;
}

.custom-modal .custom-radio-group [type=radio] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.custom-modal .custom-radio-group [type=radio] + img {
  cursor: pointer;
}

.custom-modal .custom-radio-group [type=radio]:checked + img {
  outline: 2px solid #1EACD9;
}

.flip-card {
  background-color: transparent;
  min-width: 55px;
  min-height: 55px;
  perspective: 1000px;
}

.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.6s;
  transform-style: preserve-3d;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
}

.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}

.flip-card-front,
.flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.flip-card-front {
  background-color: #bbb;
  color: black;
}

.flip-card-back {
  background-color: #1EACD9;
  color: white;
  transform: rotateY(180deg);
  min-height: 55px;
  width: 60px;
  padding: .3rem;
  line-height: 12px;
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3MvcmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3N0eWxlcy5zY3NzIiwic291cmNlcyI6WyIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9yZXNvdXJjZXMvYXNzZXRzL3Nhc3Mvc3R5bGVzLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvYm9vdHN0cmFwLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvX2Z1bmN0aW9ucy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL192YXJpYWJsZXMuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9fbWl4aW5zLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvdmVuZG9yL19yZnMuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX2RlcHJlY2F0ZS5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fYmFkZ2Uuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX3Jlc2l6ZS5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fc2l6ZS5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL192aXNpYmlsaXR5LnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL19hbGVydC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL19ib3gtc2hhZG93LnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fZmxvYXQuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9fcm9vdC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL19yZWJvb3Quc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9fdHlwZS5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL19pbWFnZXMuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9fY29kZS5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL19ncmlkLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvX3RhYmxlcy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL19mb3Jtcy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL19idXR0b25zLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvX3RyYW5zaXRpb25zLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvX2Ryb3Bkb3duLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvX2J1dHRvbi1ncm91cC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL19pbnB1dC1ncm91cC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL19jdXN0b20tZm9ybXMuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9fbmF2LnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvX25hdmJhci5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL19jYXJkLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvX2JyZWFkY3J1bWIuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9fcGFnaW5hdGlvbi5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL19iYWRnZS5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL19qdW1ib3Ryb24uc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9fYWxlcnQuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9fcHJvZ3Jlc3Muc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9fbWVkaWEuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL19jbG9zZS5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL190b2FzdHMuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9fbW9kYWwuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9fdG9vbHRpcC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL19wb3BvdmVyLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvX2Nhcm91c2VsLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvX3NwaW5uZXJzLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvX3V0aWxpdGllcy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy91dGlsaXRpZXMvX2JhY2tncm91bmQuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy91dGlsaXRpZXMvX2JvcmRlcnMuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy91dGlsaXRpZXMvX2NsZWFyZml4LnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvdXRpbGl0aWVzL19kaXNwbGF5LnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvdXRpbGl0aWVzL19lbWJlZC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL3V0aWxpdGllcy9fZmxleC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL3V0aWxpdGllcy9fZmxvYXQuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy91dGlsaXRpZXMvX292ZXJmbG93LnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL3V0aWxpdGllcy9fc2NyZWVucmVhZGVycy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL3V0aWxpdGllcy9fc2hhZG93cy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL3V0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvdXRpbGl0aWVzL19zdHJldGNoZWQtbGluay5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL3V0aWxpdGllcy9fc3BhY2luZy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL3V0aWxpdGllcy9fdGV4dC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL3V0aWxpdGllcy9fdmlzaWJpbGl0eS5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL19wcmludC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL19mdW5jdGlvbnMuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvX21peGlucy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL19kZXByZWNhdGUuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9faW1hZ2Uuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX2JhZGdlLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL19yZXNpemUuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX3NjcmVlbi1yZWFkZXIuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX3NpemUuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX3RleHQtaGlkZS5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fdmlzaWJpbGl0eS5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL19saXN0cy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fYm94LXNoYWRvdy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNjc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Nzcy9taXhpbnMvX2Zsb2F0LnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9yZXNvdXJjZXMvYXNzZXRzL3Nhc3MvX3ZhcmlhYmxlcy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3Mvbm9kZV9tb2R1bGVzL3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9ub2RlX21vZHVsZXMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2stdGhlbWUuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL3Jlc291cmNlcy9hc3NldHMvc2Fzcy93ZWIvX2FsbC5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3MvcmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3dlYi9fY29sb3JzLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9yZXNvdXJjZXMvYXNzZXRzL3Nhc3Mvd2ViL3RoZW1lL19hbGwuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL3Jlc291cmNlcy9hc3NldHMvc2Fzcy93ZWIvdGhlbWUvX21haW4uc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL3Jlc291cmNlcy9hc3NldHMvc2Fzcy93ZWIvdGhlbWUvX21haW4tbW9iaWxlLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9yZXNvdXJjZXMvYXNzZXRzL3Nhc3Mvd2ViL3RoZW1lL19oZWFkZXIuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL3Jlc291cmNlcy9hc3NldHMvc2Fzcy93ZWIvdGhlbWUvX25hdmJhci5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3MvcmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3dlYi90aGVtZS9faGVyby5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3MvcmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3dlYi90aGVtZS9faW5mby1ib3guc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL3Jlc291cmNlcy9hc3NldHMvc2Fzcy93ZWIvdGhlbWUvX3NsaWRlci5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3MvcmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3dlYi90aGVtZS9fcGFnZS1jb250ZW50LnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9yZXNvdXJjZXMvYXNzZXRzL3Nhc3Mvd2ViL3RoZW1lL19mb290ZXIuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL3Jlc291cmNlcy9hc3NldHMvc2Fzcy93ZWIvdGhlbWUvX2Zvcm0uc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL3Jlc291cmNlcy9hc3NldHMvc2Fzcy93ZWIvdGhlbWUvX2FuaW1hdGlvbi5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3MvcmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3dlYi90aGVtZS9fYWxlcnQuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL3Jlc291cmNlcy9hc3NldHMvc2Fzcy93ZWIvdGhlbWUvY29uZmlndXJhdG9yL19hbGwuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL3Jlc291cmNlcy9hc3NldHMvc2Fzcy93ZWIvdGhlbWUvX2hlYWRlci1zdGVwcy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3MvcmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3dlYi90aGVtZS9jb25maWd1cmF0b3IvX21haW4uc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL3Jlc291cmNlcy9hc3NldHMvc2Fzcy93ZWIvdGhlbWUvY29uZmlndXJhdG9yL19ncmFwaGljLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9yZXNvdXJjZXMvYXNzZXRzL3Nhc3Mvd2ViL3RoZW1lL2NvbmZpZ3VyYXRvci9fc2lkZWJhci5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3MvcmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3dlYi90aGVtZS9jb25maWd1cmF0b3IvdGhlbWUvX3dhcmRyb2JlLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9yZXNvdXJjZXMvYXNzZXRzL3Nhc3Mvd2ViL3RoZW1lL2NoZWNrb3V0L19hbGwuc2NzcyIsIi92YXIvd3d3L3Zob3N0cy9lbWsubHUvaHRkb2NzL3Jlc291cmNlcy9hc3NldHMvc2Fzcy93ZWIvdGhlbWUvY2hlY2tvdXQvX2hlYWRlci5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3MvcmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3dlYi90aGVtZS9faGVhZGVyLXN0ZXBzLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9yZXNvdXJjZXMvYXNzZXRzL3Nhc3Mvd2ViL3RoZW1lL2NoZWNrb3V0L19tYWluLnNjc3MiLCIvdmFyL3d3dy92aG9zdHMvZW1rLmx1L2h0ZG9jcy9yZXNvdXJjZXMvYXNzZXRzL3Nhc3Mvd2ViL3RoZW1lL2NoZWNrb3V0L191c2VyLWNvbmZpZy5zY3NzIiwiL3Zhci93d3cvdmhvc3RzL2Vtay5sdS9odGRvY3MvcmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3NpdGUvX2FsbC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEZvbnRzXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdQVCBTYW5zJztcbiAgc3JjOiB1cmwoLi4vZm9udHMvUFRfU2Fucy1XZWItUmVndWxhci50dGYpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZic7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1BUX1NlcmlmLVdlYi1SZWd1bGFyLnR0Zik7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1BUIFNlcmlmIEJvbGQnO1xuICBzcmM6IHVybCguLi9mb250cy9QVF9TZXJpZi1XZWItQm9sZC50dGYpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZiBJdGFsaWMnO1xuICBzcmM6IHVybCguLi9mb250cy9QVF9TZXJpZi1XZWItSXRhbGljLnR0Zik7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1BUIFNlcmlmIEJvbGQgSXRhbGljJztcbiAgc3JjOiB1cmwoLi4vZm9udHMvUFRfU2VyaWYtV2ViLUJvbGRJdGFsaWMudHRmKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGluZUF3ZXNvbWUnO1xuICBzcmM6IHVybCh+bGluZS1hd2Vzb21lL2ZvbnRzL2xpbmUtYXdlc29tZS50dGYpO1xufVxuXG5cbi8vIEJvb3RzdHJhcFxuQGltcG9ydCBcIn5ib290c3RyYXAtc2Nzcy9ib290c3RyYXAuc2Nzc1wiO1xuXG4vLyBSZXF1aXJlZFxuQGltcG9ydCBcIn5ib290c3RyYXAtc2Nzcy9fZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC1zY3NzL192YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwLXNjc3MvX21peGluc1wiO1xuXG4vLyBWYXJpYWJsZXNcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcblxuLy9JY29uc1xuQGltcG9ydCBcIn5saW5lLWF3ZXNvbWUvY3NzL2xpbmUtYXdlc29tZS5jc3NcIjtcblxuLy9TbGlja1NsaWRlclxuQGltcG9ydCBcIn5zbGljay1jYXJvdXNlbC9zbGljay9zbGlja1wiO1xuQGltcG9ydCBcIn5zbGljay1jYXJvdXNlbC9zbGljay9zbGljay10aGVtZVwiO1xuXG4vL0N1c3RvbSBTdHlsZXNcbkBpbXBvcnQgXCJ3ZWIvYWxsXCI7XG5AaW1wb3J0IFwic2l0ZS9hbGxcIjtcblxuLmN1c3RvbS1tb2RhbCB7XG4gIG1pbi1oZWlnaHQ6IDE1MHB4O1xuICB3aWR0aDogMzAwcHg7XG4gIHotaW5kZXg6IDk5OTI7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gIHBhZGRpbmc6IDFyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAuYnRuLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxRUFDRDkgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICMxRUFDRDkgIWltcG9ydGFudDtcbiAgfVxuXG4gIHNlbGVjdCB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvaWNvbnMvYXJyb3ctZG93bi5wbmcpIG5vLXJlcGVhdCBib3R0b20gMTVweCByaWdodCA4cHggI2ZmZjtcbiAgfVxuXG4gIC5jdXN0b20tcmFkaW8tZ3JvdXAge1xuXG4gICAgaW1nIHtcbiAgICAgIGhlaWdodDogNTBweDtcbiAgICB9XG5cbiAgICAvKiBISURFIFJBRElPICovXG4gICAgW3R5cGU9cmFkaW9dIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICB9XG5cbiAgICAvKiBJTUFHRSBTVFlMRVMgKi9cbiAgICBbdHlwZT1yYWRpb10gKyBpbWcge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIC8qIENIRUNLRUQgU1RZTEVTICovXG4gICAgW3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBpbWcge1xuICAgICAgb3V0bGluZTogMnB4IHNvbGlkICMxRUFDRDk7XG4gICAgfVxuICB9XG59XG5cbi5mbGlwLWNhcmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbWluLXdpZHRoOiA1NXB4O1xuICBtaW4taGVpZ2h0OiA1NXB4O1xuICBwZXJzcGVjdGl2ZTogMTAwMHB4O1xufVxuXG4uZmxpcC1jYXJkLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICBib3gtc2hhZG93OiAwIDRweCA4cHggMCByZ2JhKDAsMCwwLDAuMik7XG59XG5cbi5mbGlwLWNhcmQ6aG92ZXIgLmZsaXAtY2FyZC1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpO1xufVxuXG4uZmxpcC1jYXJkLWZyb250LCAuZmxpcC1jYXJkLWJhY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmZsaXAtY2FyZC1mcm9udCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiYmI7XG4gIGNvbG9yOiBibGFjaztcbn1cblxuLmZsaXAtY2FyZC1iYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7XG4gIG1pbi1oZWlnaHQ6IDU1cHg7XG4gIHdpZHRoOiA2MHB4O1xuICBwYWRkaW5nOiAuM3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEycHg7XG59IiwiLyohXG4gKiBCb290c3RyYXAgdjQuMy4xIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICogQ29weXJpZ2h0IDIwMTEtMjAxOSBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcbiAqIENvcHlyaWdodCAyMDExLTIwMTkgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuXG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwicm9vdFwiO1xuQGltcG9ydCBcInJlYm9vdFwiO1xuQGltcG9ydCBcInR5cGVcIjtcbkBpbXBvcnQgXCJpbWFnZXNcIjtcbkBpbXBvcnQgXCJjb2RlXCI7XG5AaW1wb3J0IFwiZ3JpZFwiO1xuQGltcG9ydCBcInRhYmxlc1wiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcInRyYW5zaXRpb25zXCI7XG5AaW1wb3J0IFwiZHJvcGRvd25cIjtcbkBpbXBvcnQgXCJidXR0b24tZ3JvdXBcIjtcbkBpbXBvcnQgXCJpbnB1dC1ncm91cFwiO1xuQGltcG9ydCBcImN1c3RvbS1mb3Jtc1wiO1xuQGltcG9ydCBcIm5hdlwiO1xuQGltcG9ydCBcIm5hdmJhclwiO1xuQGltcG9ydCBcImNhcmRcIjtcbkBpbXBvcnQgXCJicmVhZGNydW1iXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImJhZGdlXCI7XG5AaW1wb3J0IFwianVtYm90cm9uXCI7XG5AaW1wb3J0IFwiYWxlcnRcIjtcbkBpbXBvcnQgXCJwcm9ncmVzc1wiO1xuQGltcG9ydCBcIm1lZGlhXCI7XG5AaW1wb3J0IFwibGlzdC1ncm91cFwiO1xuQGltcG9ydCBcImNsb3NlXCI7XG5AaW1wb3J0IFwidG9hc3RzXCI7XG5AaW1wb3J0IFwibW9kYWxcIjtcbkBpbXBvcnQgXCJ0b29sdGlwXCI7XG5AaW1wb3J0IFwicG9wb3ZlclwiO1xuQGltcG9ydCBcImNhcm91c2VsXCI7XG5AaW1wb3J0IFwic3Bpbm5lcnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJwcmludFwiO1xuIiwiLy8gQm9vdHN0cmFwIGZ1bmN0aW9uc1xuLy9cbi8vIFV0aWxpdHkgbWl4aW5zIGFuZCBmdW5jdGlvbnMgZm9yIGV2YWx1YXRpbmcgc291cmNlIGNvZGUgYWNyb3NzIG91ciB2YXJpYWJsZXMsIG1hcHMsIGFuZCBtaXhpbnMuXG5cbi8vIEFzY2VuZGluZ1xuLy8gVXNlZCB0byBldmFsdWF0ZSBTYXNzIG1hcHMgbGlrZSBvdXIgZ3JpZCBicmVha3BvaW50cy5cbkBtaXhpbiBfYXNzZXJ0LWFzY2VuZGluZygkbWFwLCAkbWFwLW5hbWUpIHtcbiAgJHByZXYta2V5OiBudWxsO1xuICAkcHJldi1udW06IG51bGw7XG4gIEBlYWNoICRrZXksICRudW0gaW4gJG1hcCB7XG4gICAgQGlmICRwcmV2LW51bSA9PSBudWxsIG9yIHVuaXQoJG51bSkgPT0gXCIlXCIge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIFVzZWQgdG8gZW5zdXJlIHRoZSBtaW4td2lkdGggb2YgdGhlIGxvd2VzdCBicmVha3BvaW50IHN0YXJ0cyBhdCAwLlxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCwgJG1hcC1uYW1lOiBcIiRncmlkLWJyZWFrcG9pbnRzXCIpIHtcbiAgJHZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcbiAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gIEBpZiAkZmlyc3QtdmFsdWUgIT0gMCB7XG4gICAgQHdhcm4gXCJGaXJzdCBicmVha3BvaW50IGluICN7JG1hcC1uYW1lfSBtdXN0IHN0YXJ0IGF0IDAsIGJ1dCBzdGFydHMgYXQgI3skZmlyc3QtdmFsdWV9LlwiO1xuICB9XG59XG5cbi8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vIFVzZWQgb24gb3VyIFNWRyBpY29uIGJhY2tncm91bmRzIGZvciBjdXN0b20gZm9ybXMuXG4vL1xuLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXG4vLyBAcGFyYW0ge1N0cmluZ30gJHNlYXJjaCAtIFN1YnN0cmluZyB0byByZXBsYWNlXG4vLyBAcGFyYW0ge1N0cmluZ30gJHJlcGxhY2UgKCcnKSAtIE5ldyB2YWx1ZVxuLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6IFwiXCIpIHtcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XG5cbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuQGZ1bmN0aW9uIGNvbG9yLXlpcSgkY29sb3IsICRkYXJrOiAkeWlxLXRleHQtZGFyaywgJGxpZ2h0OiAkeWlxLXRleHQtbGlnaHQpIHtcbiAgJHI6IHJlZCgkY29sb3IpO1xuICAkZzogZ3JlZW4oJGNvbG9yKTtcbiAgJGI6IGJsdWUoJGNvbG9yKTtcblxuICAkeWlxOiAoKCRyICogMjk5KSArICgkZyAqIDU4NykgKyAoJGIgKiAxMTQpKSAvIDEwMDA7XG5cbiAgQGlmICgkeWlxID49ICR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQpIHtcbiAgICBAcmV0dXJuICRkYXJrO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRsaWdodDtcbiAgfVxufVxuXG4vLyBSZXRyaWV2ZSBjb2xvciBTYXNzIG1hcHNcbkBmdW5jdGlvbiBjb2xvcigka2V5OiBcImJsdWVcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiB0aGVtZS1jb2xvcigka2V5OiBcInByaW1hcnlcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJHRoZW1lLWNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiBncmF5KCRrZXk6IFwiMTAwXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRncmF5cywgJGtleSk7XG59XG5cbi8vIFJlcXVlc3QgYSB0aGVtZSBjb2xvciBsZXZlbFxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvci1uYW1lOiBcInByaW1hcnlcIiwgJGxldmVsOiAwKSB7XG4gICRjb2xvcjogdGhlbWUtY29sb3IoJGNvbG9yLW5hbWUpO1xuICAkY29sb3ItYmFzZTogaWYoJGxldmVsID4gMCwgJGJsYWNrLCAkd2hpdGUpO1xuICAkbGV2ZWw6IGFicygkbGV2ZWwpO1xuXG4gIEByZXR1cm4gbWl4KCRjb2xvci1iYXNlLCAkY29sb3IsICRsZXZlbCAqICR0aGVtZS1jb2xvci1pbnRlcnZhbCk7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuXG4kZ3JheXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRncmF5czogbWFwLW1lcmdlKFxuICAoXG4gICAgXCIxMDBcIjogJGdyYXktMTAwLFxuICAgIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gICAgXCI0MDBcIjogJGdyYXktNDAwLFxuICAgIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gICAgXCI3MDBcIjogJGdyYXktNzAwLFxuICAgIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgICBcIjkwMFwiOiAkZ3JheS05MDBcbiAgKSxcbiAgJGdyYXlzXG4pO1xuXG4kYmx1ZTogICAgIzAwN2JmZiAhZGVmYXVsdDtcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XG4keWVsbG93OiAgI2ZmYzEwNyAhZGVmYXVsdDtcbiRncmVlbjogICAjMjhhNzQ1ICFkZWZhdWx0O1xuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgIzE3YTJiOCAhZGVmYXVsdDtcblxuJGNvbG9yczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICAgIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICAgIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICAgIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICAgIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gICAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICAgIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbiAgKSxcbiAgJGNvbG9yc1xuKTtcblxuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG5cbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gICAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICAgIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICAgIFwiZGFya1wiOiAgICAgICAkZGFya1xuICApLFxuICAkdGhlbWUtY29sb3JzXG4pO1xuXG4vLyBTZXQgYSBzcGVjaWZpYyBqdW1wIHBvaW50IGZvciByZXF1ZXN0aW5nIGNvbG9yIGp1bXBzXG4kdGhlbWUtY29sb3ItaW50ZXJ2YWw6ICAgICAgOCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogIDE1MCAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBZSVEgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4keWlxLXRleHQtZGFyazogICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHlpcS10ZXh0LWxpZ2h0OiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnk6ICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCwgbm8gbG9uZ2VyIGFmZmVjdHMgYW55IGNvbXBpbGVkIENTU1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zOiAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6ICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc3BhY2VyczogbWFwLW1lcmdlKFxuICAoXG4gICAgMDogMCxcbiAgICAxOiAoJHNwYWNlciAqIC4yNSksXG4gICAgMjogKCRzcGFjZXIgKiAuNSksXG4gICAgMzogJHNwYWNlcixcbiAgICA0OiAoJHNwYWNlciAqIDEuNSksXG4gICAgNTogKCRzcGFjZXIgKiAzKVxuICApLFxuICAkc3BhY2Vyc1xuKTtcblxuLy8gVGhpcyB2YXJpYWJsZSBhZmZlY3RzIHRoZSBgLmgtKmAgYW5kIGAudy0qYCBjbGFzc2VzLlxuJHNpemVzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc2l6ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDI1OiAyNSUsXG4gICAgNTA6IDUwJSxcbiAgICA3NTogNzUlLFxuICAgIDEwMDogMTAwJSxcbiAgICBhdXRvOiBhdXRvXG4gICksXG4gICRzaXplc1xuKTtcblxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbi8vIERhcmtlbiBwZXJjZW50YWdlIGZvciBsaW5rcyB3aXRoIGAudGV4dC0qYCBjbGFzcyAoZS5nLiBgLnRleHQtc3VjY2Vzc2ApXG4kZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlOiAxNSUgIWRlZmF1bHQ7XG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuXG4kcm91bmRlZC1waWxsOiAgICAgICAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcblxuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcbiRjYXJldC12ZXJ0aWNhbC1hbGlnbjogICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbiRjYXJldC1zcGFjaW5nOiAgICAgICAgICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuXG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiBqb2luKFxuICAoXG4gICAgKDIxIDkpLFxuICAgICgxNiA5KSxcbiAgICAoNCAzKSxcbiAgICAoMSAxKSxcbiAgKSxcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvc1xuKTtcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXNpemU6ICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5Mi1zaXplOiAgICAgICAgICAgICAgIDUuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5My1zaXplOiAgICAgICAgICAgICAgIDQuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAgICAgICAgICAgICAgIDMuNXJlbSAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkyLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkzLXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXk0LXdlaWdodDogICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICAgICAgICAgJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICA4MCUgIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtc21hbGwtZm9udC1zaXplOiAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbiRoci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMmVtICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGtiZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAtLjFyZW0gMCByZ2JhKCRibGFjaywgLjI1KSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctc206ICAgICAgIC4zcmVtICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICR0YWJsZS1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1oZWFkLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcblxuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYmc6ICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYWNjZW50LWJnOiAgICAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1jb2xvcjogICAgICAkdGFibGUtZGFyay1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogICAgIGxpZ2h0ZW4oJHRhYmxlLWRhcmstYmcsIDcuNSUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctbGV2ZWw6ICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItbGV2ZWw6ICAgICAgICAgIC02ICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsIC4yNSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAgICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybXNcblxuJGxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICogMiAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtbGluZS1oZWlnaHQgKiAxZW19ICsgI3skaW5wdXQtcGFkZGluZy15ICogMn0pICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtfSArICN7JGlucHV0LXBhZGRpbmcteX0pICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyOiAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtbGluZS1oZWlnaHQgKiAuMjVlbX0gKyAjeyRpbnB1dC1wYWRkaW5nLXkgLyAyfSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtfSArICN7JGlucHV0LXBhZGRpbmcteSAqIDJ9ICsgI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtbGluZS1oZWlnaHQtc20gKiAxZW19ICsgI3skaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAqIDJ9ICsgI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtbGluZS1oZWlnaHQtbGcgKiAxZW19ICsgI3skaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAqIDJ9ICsgI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyOiAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTogICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDogICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg6ICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14OiAgICAgIC4zMTI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1ncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZvcm1zLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtZ3V0dGVyOiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZzogICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnOiAgcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC41KSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93OiAgIG5vbmUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3I6ICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdzogICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjogICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9JyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjYgMi45NzQgNy4yNSA4IDIuMTkzeicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA0JyUzZSUzY3BhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3J9JyBkPSdNMCAyaDQnLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogICBub25lICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNlJTNjY2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAxLjc1ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplIC8gMiAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplOiAgICAgICAgICAgICAgICAgIGNhbGMoI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemV9IC0gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDR9KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0OiAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgOHB4IDEwcHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA1JyUzZSUzY3BhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kOiAgICAgICAgICAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3Igbm8tcmVwZWF0IHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgLyAkY3VzdG9tLXNlbGVjdC1iZy1zaXplICFkZWZhdWx0OyAvLyBVc2VkIHNvIHdlIGNhbiBoYXZlIG11bHRpcGxlIGJhY2tncm91bmQgZWxlbWVudHMgKGUuZy4sIGFycm93IGFuZCBmZWVkYmFjayBpY29uKVxuXG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ6IGNhbGMoKDFlbSArICN7MiAqICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteX0pICogMyAvIDQgKyAjeyRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nfSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICAgIGNlbnRlciByaWdodCAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTogICAgICAgICAgICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICAgICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBJRS9FZGdlXG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWhlaWdodC1pbm5lcjogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I6ICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdzogICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk6ICAgICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJveC1zaGFkb3c6ICAgICAgICAgICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgICAkY3VzdG9tLWZpbGUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICAkaW5wdXQtZ3JvdXAtYWRkb24tYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICBlbjogXCJCcm93c2VcIlxuKSAhZGVmYXVsdDtcblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgIHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgIHRoZW1lLWNvbG9yKFwiZGFuZ2VyXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHZpZXdCb3g9Jy0yIC0yIDcgNyclM2UlM2NwYXRoIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBkPSdNMCAwbDMgM20wLTNMMCAzJy8lM2UlM2NjaXJjbGUgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeD0nMycgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeT0nMycgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeD0nMycgY3k9JzMnIHI9Jy41Jy8lM2UlM2Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJ2YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcbiAgICApLFxuICAgIFwiaW52YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkXG4gICAgKSxcbiAgKSxcbiAgJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbik7XG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuXG4vLyBOYXZzXG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kbmF2LWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcblxuXG4vLyBOYXZiYXJcblxuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMiAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAvIDIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM2UlM2NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNlJTNjcGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBjYWxjKCN7JGRyb3Bkb3duLWJvcmRlci1yYWRpdXN9IC0gI3skZHJvcGRvd24tYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkbmF2LWRpdmlkZXItbWFyZ2luLXkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJGdyYXktOTAwLCA1JSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG5cbi8vIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBDYXJkc1xuXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgY2FsYygjeyRjYXJkLWJvcmRlci1yYWRpdXN9IC0gI3skY2FyZC1ib3JkZXItd2lkdGh9KSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAvIDIgIWRlZmF1bHQ7XG4kY2FyZC1kZWNrLW1hcmdpbjogICAgICAgICAgICAgICAgICAkY2FyZC1ncm91cC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgICAgICAgICAgICAgIDMgIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLWdhcDogICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1tYXJnaW46ICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cblxuLy8gVG9vbHRpcHNcblxuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICR0b29sdGlwLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIFBvcG92ZXJzXG5cbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gVG9hc3RzXG5cbiR0b2FzdC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjEpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuMjVyZW0gLjc1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIEJhZGdlc1xuXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjRlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kYmFkZ2UtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuXG4kYmFkZ2UtcGlsbC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNmVtICFkZWZhdWx0O1xuLy8gVXNlIGEgaGlnaGVyIHRoYW4gbm9ybWFsIHZhbHVlIHRvIGVuc3VyZSBjb21wbGV0ZWx5IHJvdW5kZWQgZWRnZXMgd2hlblxuLy8gY3VzdG9taXppbmcgcGFkZGluZyBvciBmb250LXNpemUgb24gbGFiZWxzLlxuJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1czogICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG5cblxuLy8gTW9kYWxzXG5cbi8vIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgICAgICAxLjc1cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYWxlcnQtYmctbGV2ZWw6ICAgICAgICAgICAgICAgICAgICAtMTAgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLWxldmVsOiAgICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1sZXZlbDogICAgICAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICBpbnNldCAwIC4xcmVtIC4xcmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcblxuXG4vLyBMaXN0IGdyb3VwXG5cbiRsaXN0LWdyb3VwLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG5cbi8vIEZpZ3VyZXNcblxuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgOTAlICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBDYXJvdXNlbFxuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBkPSdNNS4yNSAwbC00IDQgNCA0IDEuNS0xLjUtMi41LTIuNSAyLjUtMi41LTEuNS0xLjV6Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZD0nTTIuNzUgMGwtMS41IDEuNSAyLjUgMi41LTIuNSAyLjUgMS41IDEuNSA0LTQtNC00eicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcblxuXG4vLyBTcGlubmVyc1xuXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAuMjVlbSAhZGVmYXVsdDtcblxuJHNwaW5uZXItd2lkdGgtc206ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcblxuXG4vLyBDbG9zZVxuXG4kY2xvc2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgIDAgMXB4IDAgJHdoaXRlICFkZWZhdWx0O1xuXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgODcuNSUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy8gVXRpbGl0aWVzXG5cbiRkaXNwbGF5czogbm9uZSwgaW5saW5lLCBpbmxpbmUtYmxvY2ssIGJsb2NrLCB0YWJsZSwgdGFibGUtcm93LCB0YWJsZS1jZWxsLCBmbGV4LCBpbmxpbmUtZmxleCAhZGVmYXVsdDtcbiRvdmVyZmxvd3M6IGF1dG8sIGhpZGRlbiAhZGVmYXVsdDtcbiRwb3NpdGlvbnM6IHN0YXRpYywgcmVsYXRpdmUsIGFic29sdXRlLCBmaXhlZCwgc3RpY2t5ICFkZWZhdWx0O1xuXG5cbi8vIFByaW50aW5nXG5cbiRwcmludC1wYWdlLXNpemU6ICAgICAgICAgICAgICAgICAgIGEzICFkZWZhdWx0O1xuJHByaW50LWJvZHktbWluLXdpZHRoOiAgICAgICAgICAgICAgbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKSAhZGVmYXVsdDtcbiIsIi8vIFRvZ2dsZXNcbi8vXG4vLyBVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZ2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgY2VydGFpbiB0aGVtZSBmZWF0dXJlcy5cblxuLy8gVmVuZG9yXG5AaW1wb3J0IFwidmVuZG9yL3Jmc1wiO1xuXG4vLyBEZXByZWNhdGVcbkBpbXBvcnQgXCJtaXhpbnMvZGVwcmVjYXRlXCI7XG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy9icmVha3BvaW50c1wiO1xuQGltcG9ydCBcIm1peGlucy9ob3ZlclwiO1xuQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xuQGltcG9ydCBcIm1peGlucy9iYWRnZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2NyZWVuLXJlYWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9zaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1lbXBoYXNpc1wiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWhpZGVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC10cnVuY2F0ZVwiO1xuQGltcG9ydCBcIm1peGlucy92aXNpYmlsaXR5XCI7XG5cbi8vIC8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uc1wiO1xuQGltcG9ydCBcIm1peGlucy9jYXJldFwiO1xuQGltcG9ydCBcIm1peGlucy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3RzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LWRpdmlkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtcm93XCI7XG5cbi8vIC8vIFNraW5zXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tncm91bmQtdmFyaWFudFwiO1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JveC1zaGFkb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JhZGllbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RyYW5zaXRpb25cIjtcblxuLy8gLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWQtZnJhbWV3b3JrXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZmxvYXRcIjtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuXG4vLyBTQ1NTIFJGUyBtaXhpblxuLy9cbi8vIEF1dG9tYXRlZCBmb250LXJlc2l6aW5nXG4vL1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmc1xuXG4vLyBDb25maWd1cmF0aW9uXG5cbi8vIEJhc2UgZm9udCBzaXplXG4kcmZzLWJhc2UtZm9udC1zaXplOiAxLjI1cmVtICFkZWZhdWx0O1xuJHJmcy1mb250LXNpemUtdW5pdDogcmVtICFkZWZhdWx0O1xuXG4vLyBCcmVha3BvaW50IGF0IHdoZXJlIGZvbnQtc2l6ZSBzdGFydHMgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XG4kcmZzLWJyZWFrcG9pbnQtdW5pdDogcHggIWRlZmF1bHQ7XG5cbi8vIFJlc2l6ZSBmb250LXNpemUgYmFzZWQgb24gc2NyZWVuIGhlaWdodCBhbmQgd2lkdGhcbiRyZnMtdHdvLWRpbWVuc2lvbmFsOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRmFjdG9yIG9mIGRlY3JlYXNlXG4kcmZzLWZhY3RvcjogMTAgIWRlZmF1bHQ7XG5cbkBpZiB0eXBlLW9mKCRyZnMtZmFjdG9yKSAhPSBcIm51bWJlclwiIG9yICRyZnMtZmFjdG9yIDw9IDEge1xuICBAZXJyb3IgXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cIjtcbn1cblxuLy8gR2VuZXJhdGUgZW5hYmxlIG9yIGRpc2FibGUgY2xhc3Nlcy4gUG9zc2liaWxpdGllczogZmFsc2UsIFwiZW5hYmxlXCIgb3IgXCJkaXNhYmxlXCJcbiRyZnMtY2xhc3M6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyAxIHJlbSA9ICRyZnMtcmVtLXZhbHVlIHB4XG4kcmZzLXJlbS12YWx1ZTogMTYgIWRlZmF1bHQ7XG5cbi8vIFNhZmFyaSBpZnJhbWUgcmVzaXplIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2lzc3Vlcy8xNFxuJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4OiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gRGlzYWJsZSBSRlMgYnkgc2V0dGluZyAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB0byBmYWxzZVxuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIENhY2hlICRyZnMtYmFzZS1mb250LXNpemUgdW5pdFxuJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0OiB1bml0KCRyZnMtYmFzZS1mb250LXNpemUpO1xuXG4vLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRyZnMtYmFzZS1mb250LXNpemUgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInB4XCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJyZW1cIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6ICRyZnMtYmFzZS1mb250LXNpemUgLyAoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xufVxuXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXG4kcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZTogdW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJweFwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJyZW1cIiBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcImVtXCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gUmVzcG9uc2l2ZSBmb250LXNpemUgbWl4aW5cbkBtaXhpbiByZnMoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICAvLyBDYWNoZSAkZnMgdW5pdFxuICAkZnMtdW5pdDogaWYodHlwZS1vZigkZnMpID09IFwibnVtYmVyXCIsIHVuaXQoJGZzKSwgZmFsc2UpO1xuXG4gIC8vIEFkZCAhaW1wb3J0YW50IHN1ZmZpeCBpZiBuZWVkZWRcbiAgJHJmcy1zdWZmaXg6IGlmKCRpbXBvcnRhbnQsIFwiICFpbXBvcnRhbnRcIiwgXCJcIik7XG5cbiAgLy8gSWYgJGZzIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICRmcyBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gIEBpZiBub3QgJGZzLXVuaXQgb3IgJGZzLXVuaXQgIT0gXCJcIiBhbmQgJGZzLXVuaXQgIT0gXCJweFwiIGFuZCAkZnMtdW5pdCAhPSBcInJlbVwiIG9yICRmcyA9PSAwIHtcbiAgICBmb250LXNpemU6ICN7JGZzfSN7JHJmcy1zdWZmaXh9O1xuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBWYXJpYWJsZXMgZm9yIHN0b3Jpbmcgc3RhdGljIGFuZCBmbHVpZCByZXNjYWxpbmdcbiAgICAkcmZzLXN0YXRpYzogbnVsbDtcbiAgICAkcmZzLWZsdWlkOiBudWxsO1xuXG4gICAgLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkZnMgZm9yIGNhbGN1bGF0aW9uc1xuICAgIEBpZiAkZnMtdW5pdCA9PSBcInB4XCIge1xuICAgICAgJGZzOiAkZnMgLyAoJGZzICogMCArIDEpO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkZnMtdW5pdCA9PSBcInJlbVwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xuICAgIH1cblxuICAgIC8vIFNldCBkZWZhdWx0IGZvbnQtc2l6ZVxuICAgIEBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSB7XG4gICAgICAkcmZzLXN0YXRpYzogI3skZnMgLyAkcmZzLXJlbS12YWx1ZX1yZW0jeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSBweCB7XG4gICAgICAkcmZzLXN0YXRpYzogI3skZnN9cHgjeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGVycm9yIFwiYCN7JHJmcy1mb250LXNpemUtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtZm9udC1zaXplLXVuaXQuIFVzZSBgcHhgIG9yIGByZW1gLlwiO1xuICAgIH1cblxuICAgIC8vIE9ubHkgYWRkIG1lZGlhIHF1ZXJ5IGlmIGZvbnQtc2l6ZSBpcyBiaWdnZXIgYXMgdGhlIG1pbmltdW0gZm9udC1zaXplXG4gICAgLy8gSWYgJHJmcy1mYWN0b3IgPT0gMSwgbm8gcmVzY2FsaW5nIHdpbGwgdGFrZSBwbGFjZVxuICAgIEBpZiAkZnMgPiAkcmZzLWJhc2UtZm9udC1zaXplIGFuZCAkZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplcyB7XG4gICAgICAkbWluLXdpZHRoOiBudWxsO1xuICAgICAgJHZhcmlhYmxlLXVuaXQ6IG51bGw7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSBtaW5pbXVtIGZvbnQtc2l6ZSBmb3IgZ2l2ZW4gZm9udC1zaXplXG4gICAgICAkZnMtbWluOiAkcmZzLWJhc2UtZm9udC1zaXplICsgKCRmcyAtICRyZnMtYmFzZS1mb250LXNpemUpIC8gJHJmcy1mYWN0b3I7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gZ2l2ZW4gZm9udC1zaXplIGFuZCBtaW5pbXVtIGZvbnQtc2l6ZSBmb3IgZ2l2ZW4gZm9udC1zaXplXG4gICAgICAkZnMtZGlmZjogJGZzIC0gJGZzLW1pbjtcblxuICAgICAgLy8gQmFzZSBmb250LXNpemUgZm9ybWF0dGluZ1xuICAgICAgLy8gTm8gbmVlZCB0byBjaGVjayBpZiB0aGUgdW5pdCBpcyB2YWxpZCwgYmVjYXVzZSB3ZSBkaWQgdGhhdCBiZWZvcmVcbiAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAjeyRmcy1taW4gLyAkcmZzLXJlbS12YWx1ZX1yZW0sICN7JGZzLW1pbn1weCk7XG5cbiAgICAgIC8vIElmIHR3by1kaW1lbnNpb25hbCwgdXNlIHNtYWxsZXN0IG9mIHNjcmVlbiB3aWR0aCBhbmQgaGVpZ2h0XG4gICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgJHZhcmlhYmxlLXdpZHRoOiAjeyRmcy1kaWZmICogMTAwIC8gJHJmcy1icmVha3BvaW50fSN7JHZhcmlhYmxlLXVuaXR9O1xuXG4gICAgICAvLyBTZXQgdGhlIGNhbGN1bGF0ZWQgZm9udC1zaXplLlxuICAgICAgJHJmcy1mbHVpZDogY2FsYygjeyRtaW4td2lkdGh9ICsgI3skdmFyaWFibGUtd2lkdGh9KSAjeyRyZnMtc3VmZml4fTtcbiAgICB9XG5cbiAgICAvLyBSZW5kZXJpbmdcbiAgICBAaWYgJHJmcy1mbHVpZCA9PSBudWxsIHtcbiAgICAgIC8vIE9ubHkgcmVuZGVyIHN0YXRpYyBmb250LXNpemUgaWYgbm8gZmx1aWQgZm9udC1zaXplIGlzIGF2YWlsYWJsZVxuICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJG1xLXZhbHVlOiBudWxsO1xuXG4gICAgICAvLyBSRlMgYnJlYWtwb2ludCBmb3JtYXR0aW5nXG4gICAgICBAaWYgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gZW0gb3IgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcmVtIHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludCAvICRyZnMtcmVtLXZhbHVlfSN7JHJmcy1icmVha3BvaW50LXVuaXR9O1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgge1xuICAgICAgICAkbXEtdmFsdWU6ICN7JHJmcy1icmVha3BvaW50fXB4O1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbiAgICAgIH1cblxuICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJkaXNhYmxlXCIge1xuICAgICAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LFxuICAgICAgICAvLyB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIGZvbnQgc2l6ZVxuICAgICAgICAmLFxuICAgICAgICAuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAmLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICAgIH1cblxuICAgICAgQGlmICRyZnMtdHdvLWRpbWVuc2lvbmFsIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSksIChtYXgtaGVpZ2h0OiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImVuYWJsZVwiIHtcbiAgICAgICAgICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmICRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAgICAgICAgICAgbWluLXdpZHRoOiAwdnc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImVuYWJsZVwiIHtcbiAgICAgICAgICAgIC5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmICRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAgICAgICAgICAgbWluLXdpZHRoOiAwdnc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZSBmb250LXNpemUgJiByZXNwb25zaXZlLWZvbnQtc2l6ZSBtaXhpbiB1c2VzIFJGUyB0byByZXNjYWxlIGZvbnQgc2l6ZXNcbkBtaXhpbiBmb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cblxuQG1peGluIHJlc3BvbnNpdmUtZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG4iLCIvLyBEZXByZWNhdGUgbWl4aW5cbi8vXG4vLyBUaGlzIG1peGluIGNhbiBiZSB1c2VkIHRvIGRlcHJlY2F0ZSBtaXhpbnMgb3IgZnVuY3Rpb25zLlxuLy8gYCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXNgIGlzIGEgZ2xvYmFsIHZhcmlhYmxlLCBgJGlnbm9yZS13YXJuaW5nYCBpcyBhIHZhcmlhYmxlIHRoYXQgY2FuIGJlIHBhc3NlZCB0b1xuLy8gc29tZSBkZXByZWNhdGVkIG1peGlucyB0byBzdXBwcmVzcyB0aGUgd2FybmluZyAoZm9yIGV4YW1wbGUgaWYgdGhlIG1peGluIGlzIHN0aWxsIGJlIHVzZWQgaW4gdGhlIGN1cnJlbnQgdmVyc2lvbiBvZiBCb290c3RyYXApXG5AbWl4aW4gZGVwcmVjYXRlKCRuYW1lLCAkZGVwcmVjYXRlLXZlcnNpb24sICRyZW1vdmUtdmVyc2lvbiwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICBAaWYgKCRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXMgIT0gZmFsc2UgYW5kICRpZ25vcmUtd2FybmluZyAhPSB0cnVlKSB7XG4gICAgQHdhcm4gXCIjeyRuYW1lfSBoYXMgYmVlbiBkZXByZWNhdGVkIGFzIG9mICN7JGRlcHJlY2F0ZS12ZXJzaW9ufS4gSXQgd2lsbCBiZSByZW1vdmVkIGVudGlyZWx5IGluICN7JHJlbW92ZS12ZXJzaW9ufS5cIjtcbiAgfVxufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiAhPSBudWxsIGFuZCAkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3ZlciBtaXhpbiBhbmQgYCRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnlgIGFyZSBkZXByZWNhdGVkLlxuLy9cbi8vIE9yaWdpbmFsbHkgYWRkZWQgZHVyaW5nIG91ciBhbHBoYXMgYW5kIG1haW50YWluZWQgZHVyaW5nIGJldGFzLCB0aGlzIG1peGluIHdhc1xuLy8gZGVzaWduZWQgdG8gcHJldmVudCBgOmhvdmVyYCBzdGlja2luZXNzIG9uIGlPUy1hbiBpc3N1ZSB3aGVyZSBob3ZlciBzdHlsZXNcbi8vIHdvdWxkIHBlcnNpc3QgYWZ0ZXIgaW5pdGlhbCB0b3VjaC5cbi8vXG4vLyBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgd2UndmUga2VwdCB0aGVzZSBtaXhpbnMgYW5kIHVwZGF0ZWQgdGhlbSB0b1xuLy8gYWx3YXlzIHJldHVybiB0aGVpciByZWd1bGFyIHBzZXVkby1jbGFzc2VzIGluc3RlYWQgb2YgYSBzaGltbWVkIG1lZGlhIHF1ZXJ5LlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1MTk1XG5cbkBtaXhpbiBob3ZlciB7XG4gICY6aG92ZXIgeyBAY29udGVudDsgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGxhaW4taG92ZXItZm9jdXMge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMtYWN0aXZlIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgLy8gSUU5LTExIGRvbid0IHN1cHBvcnQgZHBweFxuICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW1nLXJldGluYSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJnLCAxMCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJhZGdlLWZvY3VzLXdpZHRoIHJnYmEoJGJnLCAuNSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSZXNpemUgYW55dGhpbmdcblxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuQG1peGluIHNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuIiwiLy8gU2l6aW5nIHNob3J0Y3V0c1xuXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQ6ICR3aWR0aCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBzaXplKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFR5cG9ncmFwaHlcblxuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlICE9IDAge1xuICAgIGEjeyRwYXJlbnR9IHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbkBtaXhpbiB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuXG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWhpZGUoKWBcIiwgXCJ2NC4xLjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVmlzaWJpbGl0eVxuXG5AbWl4aW4gaW52aXNpYmxlKCR2aXNpYmlsaXR5KSB7XG4gIHZpc2liaWxpdHk6ICR2aXNpYmlsaXR5ICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBpbnZpc2libGUoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cblxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDcuNSUpLCAkaG92ZXItYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTAlKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSksICRhY3RpdmUtYm9yZGVyOiBkYXJrZW4oJGJvcmRlciwgMTIuNSUpKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgdGhlIGdyYWRpZW50IGZvciB0aGUgcHJlc3NlZC9hY3RpdmUgc3RhdGVcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyBhbmQgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyAhPSBub25lIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiBjb2xvci15aXEoJGNvbG9yKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsICRhY3RpdmUtYm9yZGVyOiAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIC8vIE1hbnVhbGx5IGRlY2xhcmUgdG8gcHJvdmlkZSBhbiBvdmVycmlkZSB0byB0aGUgYnJvd3NlciBkZWZhdWx0XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMsIDApO1xufVxuIiwiQG1peGluIGNhcmV0LWRvd24ge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtcmlnaHQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KCRkaXJlY3Rpb246IGRvd24pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd247XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cDtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXJpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWxlZnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjplbXB0eTo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICAucGFnZS1saW5rIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIH1cblxuICAucGFnZS1pdGVtIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAkbmF2LWRpdmlkZXItY29sb3IsICRtYXJnaW4teTogJG5hdi1kaXZpZGVyLW1hcmdpbi15KSB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAkbWFyZ2luLXkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcjtcbn1cbiIsIi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3JgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCkge1xuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yLCAkaWNvbikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZSk7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogY29sb3IteWlxKCRjb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkaWNvbjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tc2VsZWN0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDtcbiAgICAgICAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZCwgJGljb24gJGN1c3RvbS1zZWxlY3QtYmcgbm8tcmVwZWF0ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb24gLyAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLmZvcm0tY29udHJvbC1maWxlIHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogbGlnaHRlbigkY29sb3IsIDEwJSk7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcobGlnaHRlbigkY29sb3IsIDEwJSkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBjdXN0b20gZmlsZVxuICAuY3VzdG9tLWZpbGUtaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRib3JkZXI6IG51bGwpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJixcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgQGlmICRib3JkZXIgIT0gbnVsbCB7XG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgdGgsXG4gICAgICB0Ym9keSArIHRib2R5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciB7XG4gICAgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuXG4gICAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0sXG4gIGJ1dHRvbiN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJnLWdyYWRpZW50LXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteCAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cbiIsIkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgJHJlc3VsdDogKCk7XG5cbiAgICBAaWYgKGxlbmd0aCgkc2hhZG93KSA9PSAxKSB7XG4gICAgICAvLyBXZSBjYW4gcGFzcyBgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtgXG4gICAgICAkcmVzdWx0OiAkc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gRmlsdGVyIHRvIGF2b2lkIGludmFsaWQgcHJvcGVydGllcyBmb3IgZXhhbXBsZSBgYm94LXNoYWRvdzogbm9uZSwgMXB4IDFweCBibGFjaztgXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkc2hhZG93KSB7XG4gICAgICAgIEBpZiBudGgoJHNoYWRvdywgJGkpICE9IFwibm9uZVwiIHtcbiAgICAgICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRzaGFkb3csICRpKSwgXCJjb21tYVwiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAaWYgKGxlbmd0aCgkcmVzdWx0KSA+IDApIHtcbiAgICAgIGJveC1zaGFkb3c6ICRyZXN1bHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcikge1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteDtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gICAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSB7XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBDb21tb24gcHJvcGVydGllcyBmb3IgYWxsIGJyZWFrcG9pbnRzXG4gICVncmlkLWNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICAgIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29sI3skaW5maXh9LFxuICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgLy8gUmVzZXQgZWFybGllciBncmlkIHRpZXJzXG4gICAgICB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1maXJzdCB7IG9yZGVyOiAtMTsgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tbGFzdCB7IG9yZGVyOiAkY29sdW1ucyArIDE7IH1cblxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5vcmRlciN7JGluZml4fS0jeyRpfSB7IG9yZGVyOiAkaTsgfVxuICAgICAgfVxuXG4gICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AbWl4aW4gZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZmxvYXQtbGVmdGAgbWl4aW5cIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbkBtaXhpbiBmbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZsb2F0LXJpZ2h0YCBtaXhpblwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuQG1peGluIGZsb2F0LW5vbmUge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZsb2F0LW5vbmVgIG1peGluXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCI6cm9vdCB7XG4gIC8vIEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRicCwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLWJyZWFrcG9pbnQtI3skYnB9OiAjeyR2YWx1ZX07XG4gIH1cblxuICAvLyBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS1mb250LWZhbWlseS1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBhdC1ydWxlLW5vLXZlbmRvci1wcmVmaXgsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIDEuIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG4vLyAyLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMy4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuLy8gNC4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4vLyA1LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDJcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDNcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyA0XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApOyAvLyA1XG59XG5cbi8vIFNoaW0gZm9yIFwibmV3XCIgSFRNTDUgc3RydWN0dXJhbCBlbGVtZW50cyB0byBkaXNwbGF5IGNvcnJlY3RseSAoSUUxMCwgb2xkZXIgYnJvd3NlcnMpXG4vLyBUT0RPOiByZW1vdmUgaW4gdjVcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmFydGljbGUsIGFzaWRlLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gU2V0IGFuIGV4cGxpY2l0IGluaXRpYWwgdGV4dC1hbGlnbiB2YWx1ZSBzbyB0aGF0IHdlIGNhbiBsYXRlciB1c2Vcbi8vICAgIHRoZSBgaW5oZXJpdGAgdmFsdWUgb24gdGhpbmdzIGxpa2UgYDx0aD5gIGVsZW1lbnRzLlxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIDNcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmc7IC8vIDJcbn1cblxuLy8gU3VwcHJlc3MgdGhlIGZvY3VzIG91dGxpbmUgb24gZWxlbWVudHMgdGhhdCBjYW5ub3QgYmUgYWNjZXNzZWQgdmlhIGtleWJvYXJkLlxuLy8gVGhpcyBwcmV2ZW50cyBhbiB1bndhbnRlZCBmb2N1cyBvdXRsaW5lIGZyb20gYXBwZWFyaW5nIGFyb3VuZCBlbGVtZW50cyB0aGF0XG4vLyBtaWdodCBzdGlsbCByZXNwb25kIHRvIHBvaW50ZXIgZXZlbnRzLlxuLy9cbi8vIENyZWRpdDogaHR0cHM6Ly9naXRodWIuY29tL3N1aXRjc3MvYmFzZVxuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXMge1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gQ29udGVudCBncm91cGluZ1xuLy9cbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4vLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICBoZWlnaHQ6IDA7IC8vIDFcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbn1cblxuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cblxuLy8gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vXG4vLyBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBBYmJyZXZpYXRpb25zXG4vL1xuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAzLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyA0LiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4vLyA1LiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0sXG5hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdIHsgLy8gMVxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgY3Vyc29yOiBoZWxwOyAvLyAzXG4gIGJvcmRlci1ib3R0b206IDA7IC8vIDRcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyA1XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXI7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcbn1cblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoODAlKTsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoNzUlKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vL1xuLy8gTGlua3Ncbi8vXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZilcbi8vIHdoaWNoIGhhdmUgbm90IGJlZW4gbWFkZSBleHBsaWNpdGx5IGtleWJvYXJkLWZvY3VzYWJsZSAod2l0aG91dCB0YWJpbmRleCkuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuICBvdmVyZmxvdzogYXV0bztcbn1cblxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuZmlndXJlIHtcbiAgLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcbi8vXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG59XG5cbnN2ZyB7XG4gIC8vIFdvcmthcm91bmQgZm9yIHRoZSBTVkcgb3ZlcmZsb3cgYnVnIGluIElFMTAvMTEgaXMgc3RpbGwgcmVxdWlyZWQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI2ODc4XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuLy9cbi8vIFRhYmxlc1xuLy9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG59XG5cbnRoIHtcbiAgLy8gTWF0Y2hlcyBkZWZhdWx0IGA8dGQ+YCBhbGlnbm1lbnQgYnkgaW5oZXJpdGluZyBmcm9tIHRoZSBgPGJvZHk+YCwgb3IgdGhlXG4gIC8vIGNsb3Nlc3QgcGFyZW50IHdpdGggYSBzZXQgYHRleHQtYWxpZ25gLlxuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xufVxuXG5cbi8vXG4vLyBGb3Jtc1xuLy9cblxubGFiZWwge1xuICAvLyBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206ICRsYWJlbC1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBSZW1vdmUgdGhlIGRlZmF1bHQgYGJvcmRlci1yYWRpdXNgIHRoYXQgbWFjT1MgQ2hyb21lIGFkZHMuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MDkzXG5idXR0b24ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIFdvcmsgYXJvdW5kIGEgRmlyZWZveC9JRSBidWcgd2hlcmUgdGhlIHRyYW5zcGFyZW50IGBidXR0b25gIGJhY2tncm91bmRcbi8vIHJlc3VsdHMgaW4gYSBsb3NzIG9mIHRoZSBkZWZhdWx0IGBidXR0b25gIGZvY3VzIHN0eWxlcy5cbi8vXG4vLyBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2UvXG5idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiAxcHggZG90dGVkO1xuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlXG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcbn1cblxuLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB3b3JkLXdyYXAgaW4gU2FmYXJpLlxuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDk5MFxuc2VsZWN0IHtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG5cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sIC8vIDFcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG59XG5cbi8vIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCBidXR0b24gZWxlbWVudHMuXG5AaWYgJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9ucyB7XG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLVxuICBwYWRkaW5nOiAwOyAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtXG59XG5cblxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCBhcHBlYXJhbmNlIG9mIHRlbXBvcmFsIGlucHV0cyB0byBhdm9pZCBhIE1vYmlsZSBTYWZhcmlcbiAgLy8gYnVnIHdoZXJlIHNldHRpbmcgYSBjdXN0b20gbGluZS1oZWlnaHQgcHJldmVudHMgdGV4dCBmcm9tIGJlaW5nIHZlcnRpY2FsbHlcbiAgLy8gY2VudGVyZWQgd2l0aGluIHRoZSBpbnB1dC5cbiAgLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk4NDhcbiAgLy8gYW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTEyNjZcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94O1xufVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAvLyBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgLy8gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4gIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAgLy8gYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuICBtaW4td2lkdGg6IDA7XG4gIC8vIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBAaW5jbHVkZSBmb250LXNpemUoMS41cmVtKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG59XG5cbi8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLy8gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuICAvLyBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcbiAgLy8gYmUgYWRkZWQgdG8gYC5mb3JtLWNvbnRyb2xgIGFzIGl0J3Mgbm90IHNwZWNpZmljIGVub3VnaC4gRm9yIGRldGFpbHMsIHNlZVxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbi8vXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbi8vXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG59XG5cbi8vXG4vLyBDb3JyZWN0IGVsZW1lbnQgZGlzcGxheXNcbi8vXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRVxufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuLy8gTmVlZGVkIGZvciBwcm9wZXIgZGlzcGxheSBpbiBJRSAxMC0uXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5cbi8vXG4vLyBIZWFkaW5nc1xuLy9cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRoZWFkaW5ncy1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcbn1cblxuaDEsIC5oMSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTsgfVxuaDIsIC5oMiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTsgfVxuaDMsIC5oMyB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTsgfVxuaDQsIC5oNCB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTsgfVxuaDUsIC5oNSB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTsgfVxuaDYsIC5oNiB7IEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTsgfVxuXG4ubGVhZCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGxlYWQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIFR5cGUgZGlzcGxheSBjbGFzc2VzXG4uZGlzcGxheS0xIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5MS1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5MS13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTIge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkyLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkyLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMyB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTMtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTMtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS00IHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5NC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5NC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cblxuXG4vL1xuLy8gSG9yaXpvbnRhbCBydWxlc1xuLy9cblxuaHIge1xuICBtYXJnaW4tdG9wOiAkaHItbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRoci1tYXJnaW4teTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAkaHItYm9yZGVyLXdpZHRoIHNvbGlkICRoci1ib3JkZXItY29sb3I7XG59XG5cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuXG5zbWFsbCxcbi5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc21hbGwtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRtYXJrLWJnO1xufVxuXG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg5MCUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9udC1zaXplKTtcbn1cblxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemUpO1xuICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZDtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZDtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyIC8gMjtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIElubGluZSBjb2RlXG5jb2RlIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcblxuICAvLyBTdHJlYW1saW5lIHRoZSBzdHlsZSB3aGVuIGluc2lkZSBhbmNob3JzIHRvIGF2b2lkIGJyb2tlbiB1bmRlcmxpbmUgYW5kIG1vcmVcbiAgYSA+ICYge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFVzZXIgaW5wdXQgdHlwaWNhbGx5IGVudGVyZWQgdmlhIGtleWJvYXJkXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRrYmQtYm94LXNoYWRvdyk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxMDAlKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCk7XG4gIH1cbn1cblxuLy8gRmx1aWQgY29udGFpbmVyXG4vL1xuLy8gVXRpbGl6ZXMgdGhlIG1peGluIG1lYW50IGZvciBmaXhlZCB3aWR0aCBjb250YWluZXJzLCBidXQgd2l0aCAxMDAlIHdpZHRoIGZvclxuLy8gZmx1aWQsIGZ1bGwgd2lkdGggbGF5b3V0cy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgfVxufVxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4gYW5kIGNsZWFyIHRoZSBmbG9hdHMgb2YgeW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvL1xuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXG4vL1xuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgY29sb3I6ICR0YWJsZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnOyAvLyBSZXNldCBmb3IgbmVzdGluZyB3aXRoaW4gcGFyZW50cyB3aXRoIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBib3JkZXItdG9wOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBib3JkZXItYm90dG9tOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXItdG9wOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29uZGVuc2VkIHRhYmxlIHcvIGhhbGYgcGFkZGluZ1xuLy9cblxuLnRhYmxlLXNtIHtcbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXNtO1xuICB9XG59XG5cblxuLy8gQm9yZGVyIHZlcnNpb25zXG4vL1xuLy8gQWRkIG9yIHJlbW92ZSBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIHRoZWFkIHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAyICogJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWJvcmRlcmxlc3Mge1xuICB0aCxcbiAgdGQsXG4gIHRoZWFkIHRoLFxuICB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8gWmVicmEtc3RyaXBpbmdcbi8vXG4vLyBEZWZhdWx0IHplYnJhLXN0cmlwZSBzdHlsZXMgKGFsdGVybmF0aW5nIGdyYXkgYW5kIHRyYW5zcGFyZW50IGJhY2tncm91bmRzKVxuXG4udGFibGUtc3RyaXBlZCB7XG4gIHRib2R5IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWFjY2VudC1iZztcbiAgfVxufVxuXG5cbi8vIEhvdmVyIGVmZmVjdFxuLy9cbi8vIFBsYWNlZCBoZXJlIHNpbmNlIGl0IGhhcyB0byBjb21lIGFmdGVyIHRoZSBwb3RlbnRpYWwgemVicmEgc3RyaXBpbmdcblxuLnRhYmxlLWhvdmVyIHtcbiAgdGJvZHkgdHIge1xuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGFibGUgYmFja2dyb3VuZHNcbi8vXG4vLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCRjb2xvciwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYmctbGV2ZWwpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYWN0aXZlLWJnKTtcblxuXG4vLyBEYXJrIHN0eWxlc1xuLy9cbi8vIFNhbWUgdGFibGUgbWFya3VwLCBidXQgaW52ZXJ0ZWQgY29sb3Igc2NoZW1lOiBkYXJrIGJhY2tncm91bmQgYW5kIGxpZ2h0IHRleHQuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICAudGhlYWQtZGFyayB7XG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGhlYWQtbGlnaHQge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYmc7XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYWNjZW50LWJnO1xuICAgIH1cbiAgfVxuXG4gICYudGFibGUtaG92ZXIge1xuICAgIHRib2R5IHRyIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLnRhYmxlLXJlc3BvbnNpdmUtKmAgY2xhc3NlcyBmb3IgY29uZmlndXJpbmcgdGhlIHNjcmVlblxuLy8gc2l6ZSBvZiB3aGVyZSB5b3VyIHRhYmxlIHdpbGwgb3ZlcmZsb3cuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgICAgICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXIgb24gaG9yaXpvbnRhbCBzY3JvbGwgZHVlIHRvIHVzZSBvZiBgZGlzcGxheTogYmxvY2s7YFxuICAgICAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIFRleHR1YWwgZm9ybSBjb250cm9sc1xuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMsIDApO1xuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcblxuICAvLyBVbnN0eWxlIHRoZSBjYXJldCBvbiBgPHNlbGVjdD5gcyBpbiBJRTEwKy5cbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXMoKTtcblxuICAvLyBQbGFjZWhvbGRlclxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNi5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkLFxuICAmW3JlYWRvbmx5XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJjpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICAvLyBTdXBwcmVzcyB0aGUgbmVzdGVkIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UsIGFzIGl0IGxvb2tzIGJhZCBhbmQgY2Fubm90IGJlIG1hZGUgdG9cbiAgICAvLyBtYXRjaCB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgbmF0aXZlIHdpZGdldC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vL1xuLy8gTGFiZWxzXG4vL1xuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15fSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXl9ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBgPGxhYmVsPi88bGVnZW5kPmAgZGVmYXVsdFxuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LWxnfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktbGd9ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LXNtfSArICN7JGlucHV0LWJvcmRlci13aWR0aH0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktc219ICsgI3skaW5wdXQtYm9yZGVyLXdpZHRofSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6ICRpbnB1dC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkaW5wdXQtcGFkZGluZy15O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1wbGFpbnRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmLmZvcm0tY29udHJvbC1zbSxcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFJlcGVhdGVkIGluIGBfaW5wdXRfZ3JvdXAuc2Nzc2AgdG8gYXZvaWQgU2FzcyBleHRlbmQgaXNzdWVzLlxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5mb3JtLWNvbnRyb2wtbGcge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmW3NpemVdLFxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG59XG5cbi5mb3JtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xufVxuXG5cbi8vIEZvcm0gZ3JpZFxuLy9cbi8vIFNwZWNpYWwgcmVwbGFjZW1lbnQgZm9yIG91ciBncmlkIHN5c3RlbSdzIGAucm93YCBmb3IgdGlnaHRlciBmb3JtIGxheW91dHMuXG5cbi5mb3JtLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcblxuICA+IC5jb2wsXG4gID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG5cbiAgJjpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IGA8bGFiZWw+YCBib3R0b20gbWFyZ2luXG59XG5cbi5mb3JtLWNoZWNrLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg7XG5cbiAgLy8gVW5kbyAuZm9ybS1jaGVjay1pbnB1dCBkZWZhdWx0cyBhbmQgYWRkIHNvbWUgYG1hcmdpbi1yaWdodGAuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIHZhbGlkYXRpb25cbi8vXG4vLyBQcm92aWRlIGZlZWRiYWNrIHRvIHVzZXJzIHdoZW4gZm9ybSBmaWVsZCB2YWx1ZXMgYXJlIHZhbGlkIG9yIGludmFsaWQuIFdvcmtzXG4vLyBwcmltYXJpbHkgZm9yIGNsaWVudC1zaWRlIHZhbGlkYXRpb24gdmlhIHNjb3BlZCBgOmludmFsaWRgIGFuZCBgOnZhbGlkYFxuLy8gcHNldWRvLWNsYXNzZXMgYnV0IGFsc28gaW5jbHVkZXMgYC5pcy1pbnZhbGlkYCBhbmQgYC5pcy12YWxpZGAgY2xhc3NlcyBmb3Jcbi8vIHNlcnZlciBzaWRlIHZhbGlkYXRpb24uXG5cbkBlYWNoICRzdGF0ZSwgJGRhdGEgaW4gJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMge1xuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCBtYXAtZ2V0KCRkYXRhLCBjb2xvciksIG1hcC1nZXQoJGRhdGEsIGljb24pKTtcbn1cblxuLy8gSW5saW5lIGZvcm1zXG4vL1xuLy8gTWFrZSBmb3JtcyBhcHBlYXIgaW5saW5lKC1ibG9jaykgYnkgYWRkaW5nIHRoZSBgLmZvcm0taW5saW5lYCBjbGFzcy4gSW5saW5lXG4vLyBmb3JtcyBiZWdpbiBzdGFja2VkIG9uIGV4dHJhIHNtYWxsIChtb2JpbGUpIGRldmljZXMgYW5kIHRoZW4gZ28gaW5saW5lIHdoZW5cbi8vIHZpZXdwb3J0cyByZWFjaCA8NzY4cHguXG4vL1xuLy8gUmVxdWlyZXMgd3JhcHBpbmcgaW5wdXRzIGFuZCBsYWJlbHMgd2l0aCBgLmZvcm0tZ3JvdXBgIGZvciBwcm9wZXIgZGlzcGxheSBvZlxuLy8gZGVmYXVsdCBIVE1MIGZvcm0gY29udHJvbHMgYW5kIG91ciBjdXN0b20gZm9ybSBjb250cm9scyAoZS5nLiwgaW5wdXQgZ3JvdXBzKS5cblxuLmZvcm0taW5saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gUHJldmVudCBzaG9ydGVyIGVsZW1lbnRzIGZyb20gZ3Jvd2luZyB0byBzYW1lIGhlaWdodCBhcyBvdGhlcnMgKGUuZy4sIHNtYWxsIGJ1dHRvbnMgZ3Jvd2luZyB0byBub3JtYWwgc2l6ZWQgYnV0dG9uIGhlaWdodClcblxuICAvLyBCZWNhdXNlIHdlIHVzZSBmbGV4LCB0aGUgaW5pdGlhbCBzaXppbmcgb2YgY2hlY2tib3hlcyBpcyBjb2xsYXBzZWQgYW5kXG4gIC8vIGRvZXNuJ3Qgb2NjdXB5IHRoZSBmdWxsLXdpZHRoICh3aGljaCBpcyB3aGF0IHdlIHdhbnQgZm9yIHhzIGdyaWQgdGllciksXG4gIC8vIHNvIHdlIGZvcmNlIHRoYXQgaGVyZS5cbiAgLmZvcm0tY2hlY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBJbmxpbmUtYmxvY2sgYWxsIHRoZSB0aGluZ3MgZm9yIFwiaW5saW5lXCJcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gQWxsb3cgZm9sa3MgdG8gKm5vdCogdXNlIGAuZm9ybS1ncm91cGBcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBhdXRvOyAvLyBQcmV2ZW50IGxhYmVscyBmcm9tIHN0YWNraW5nIGFib3ZlIGlucHV0cyBpbiBgLmZvcm0tZ3JvdXBgXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3RhdGljIGNvbnRyb2xzIGJlaGF2ZSBsaWtlIHJlZ3VsYXIgb25lc1xuICAgIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAsXG4gICAgLmN1c3RvbS1zZWxlY3Qge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIG9uIHJhZGlvcy9jaGVja2JveGVzIHRoYXQgd2VyZSB1c2VkIGZvciBzdGFja2luZywgYW5kXG4gICAgLy8gdGhlbiB1bmRvIHRoZSBmbG9hdGluZyBvZiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgdG8gbWF0Y2guXG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGJ0bi1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LCAkYnRuLXBhZGRpbmcteCwgJGJ0bi1mb250LXNpemUsICRidG4tbGluZS1oZWlnaHQsICRidG4tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXG59XG5cblxuLy9cbi8vIEJ1dHRvbiBTaXplc1xuLy9cblxuLmJ0bi1sZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGJ0bi1mb250LXNpemUtbGcsICRidG4tbGluZS1oZWlnaHQtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5idG4tc20ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1zbSwgJGJ0bi1wYWRkaW5nLXgtc20sICRidG4tZm9udC1zaXplLXNtLCAkYnRuLWxpbmUtaGVpZ2h0LXNtLCAkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG5cbi8vXG4vLyBCbG9jayBidXR0b25cbi8vXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xuICArIC5idG4tYmxvY2sge1xuICAgIG1hcmdpbi10b3A6ICRidG4tYmxvY2stc3BhY2luZy15O1xuICB9XG59XG5cbi8vIFNwZWNpZmljaXR5IG92ZXJyaWRlc1xuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAmLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmNvbGxhcHNlIHtcbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xufVxuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3ByaWdodCxcbi5kcm9wZG93bixcbi5kcm9wbGVmdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQ7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15IDA7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkcm9wZG93bi1mb250LXNpemUpO1xuICBjb2xvcjogJGRyb3Bkb3duLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcbn1cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tbGVmdCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tcmlnaHQge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XG4gIH1cbn1cblxuLmRyb3ByaWdodCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZHJvcGRvd24tc3BhY2VyO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQocmlnaHQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGxlZnQge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChsZWZ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIFdoZW4gZW5hYmxlZCBQb3BwZXIuanMsIHJlc2V0IGJhc2ljIGRyb3Bkb3duIHBvc2l0aW9uXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmRyb3Bkb3duLW1lbnUge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0sXG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgYm90dG9tOiBhdXRvO1xuICB9XG59XG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnLCAkZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSk7XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXG5cbiAgLy8gUHJldmVudCBkcm9wZG93biBvdmVyZmxvdyBpZiB0aGVyZSdzIG5vIHBhZGRpbmdcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtc20pO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcblxuICAgIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAgIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wcmlnaHQgJjo6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3BsZWZ0ICY6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3ggYW5kIHJhZGlvIG9wdGlvbnNcbi8vXG4vLyBJbiBvcmRlciB0byBzdXBwb3J0IHRoZSBicm93c2VyJ3MgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrLCBwb3dlcmVkIGJ5IHRoZVxuLy8gYHJlcXVpcmVkYCBhdHRyaWJ1dGUsIHdlIGhhdmUgdG8gXCJoaWRlXCIgdGhlIGlucHV0cyB2aWEgYGNsaXBgLiBXZSBjYW5ub3QgdXNlXG4vLyBgZGlzcGxheTogbm9uZTtgIG9yIGB2aXNpYmlsaXR5OiBoaWRkZW47YCBhcyB0aGF0IGFsc28gaGlkZXMgdGhlIHBvcG92ZXIuXG4vLyBTaW1wbHkgdmlzdWFsbHkgaGlkaW5nIHRoZSBpbnB1dHMgdmlhIGBvcGFjaXR5YCB3b3VsZCBsZWF2ZSB0aGVtIGNsaWNrYWJsZSBpblxuLy8gY2VydGFpbiBjYXNlcyB3aGljaCBpcyBwcmV2ZW50ZWQgYnkgdXNpbmcgYGNsaXBgIGFuZCBgcG9pbnRlci1ldmVudHNgLlxuLy8gVGhpcyB3YXksIHdlIGVuc3VyZSBhIERPTSBlbGVtZW50IGlzIHZpc2libGUgdG8gcG9zaXRpb24gdGhlIHBvcG92ZXIgZnJvbS5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTI3OTQgYW5kXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xNDU1OSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cblxuLmJ0bi1ncm91cC10b2dnbGUge1xuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIHZhbHVlXG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmN1c3RvbS1zZWxlY3QsXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAvLyBBZGQgd2lkdGggMSUgYW5kIGZsZXgtYmFzaXMgYXV0byB0byBlbnN1cmUgdGhhdCBidXR0b24gd2lsbCBub3Qgd3JhcCBvdXRcbiAgICAvLyB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFIEVkZ2UrIGFuZCBGaXJlZm94LiBDaHJvbWUgZG9lcyBub3QgcmVxdWlyZSB0aGlzLlxuICAgIHdpZHRoOiAxJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgKyAuZm9ybS1jb250cm9sLFxuICAgICsgLmN1c3RvbS1zZWxlY3QsXG4gICAgKyAuY3VzdG9tLWZpbGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGN1c3RvbSBmaWxlIGlucHV0IGFib3ZlIHRoZSBsYWJlbFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMge1xuICAgIHotaW5kZXg6IDQ7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7IEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7IH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cblxuICAvLyBDdXN0b20gZmlsZSBpbnB1dHMgaGF2ZSBtb3JlIGNvbXBsZXggbWFya3VwLCB0aHVzIHJlcXVpcmluZyBkaWZmZXJlbnRcbiAgLy8gYm9yZGVyLXJhZGl1cyBvdmVycmlkZXMuXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHsgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTsgfVxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsIHsgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApOyB9XG4gIH1cbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcbi8vXG4vLyBXaGlsZSBpdCByZXF1aXJlcyBvbmUgZXh0cmEgbGF5ZXIgb2YgSFRNTCBmb3IgZWFjaCwgZGVkaWNhdGVkIHByZXBlbmQgYW5kXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxuLy8gMykgc3VwcG9ydCBIVE1MNSBmb3JtIHZhbGlkYXRpb24uXG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cblxuICAuYnRuICsgLmJ0bixcbiAgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7IG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cbi5pbnB1dC1ncm91cC1hcHBlbmQgeyBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7IH1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBBbGxvdyB1c2Ugb2YgPGxhYmVsPiBlbGVtZW50cyBieSBvdmVycmlkaW5nIG91ciBkZWZhdWx0IG1hcmdpbi1ib3R0b21cbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gTnVrZSBkZWZhdWx0IG1hcmdpbnMgZnJvbSBjaGVja2JveGVzIGFuZCByYWRpb3MgdG8gdmVydGljYWxseSBjZW50ZXIgd2l0aGluLlxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LWxnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZCByb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cbiIsIi8vIEVtYmVkZGVkIGljb25zIGZyb20gT3BlbiBJY29uaWMuXG4vLyBSZWxlYXNlZCB1bmRlciBNSVQgYW5kIGNvcHlyaWdodCAyMDE0IFdheWJ1cnkuXG4vLyBodHRwczovL3VzZWljb25pYy5jb20vb3BlblxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEJhc2UgY2xhc3MgdGFrZXMgY2FyZSBvZiBhbGwgdGhlIGtleSBiZWhhdmlvcmFsIGFzcGVjdHMuXG5cbi5jdXN0b20tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICBvcGFjaXR5OiAwO1xuXG4gICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyB0aGUgbWl4aW4gaXMgbm90IHVzZWQgaGVyZSB0byBtYWtlIHN1cmUgdGhlcmUgaXMgZmVlZGJhY2tcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ3VzdG9tIGNvbnRyb2wgaW5kaWNhdG9yc1xuLy9cbi8vIEJ1aWxkIHRoZSBjdXN0b20gY29udHJvbHMgb3V0IG9mIHBzZXVkby1lbGVtZW50cy5cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gIC8vIEJhY2tncm91bmQtY29sb3IgYW5kICh3aGVuIGVuYWJsZWQpIGdyYWRpZW50XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlIC0gJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKSAvIDI7XG4gICAgbGVmdDogLSgkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICBib3JkZXI6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yIHNvbGlkICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgfVxuXG4gIC8vIEZvcmVncm91bmQgKGljb24pXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMjtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemV9O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gc3dpdGNoZXNcbi8vXG4vLyBUd2VhayBhIGZldyB0aGluZ3MgZm9yIHN3aXRjaGVzXG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXI7XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLXdpZHRoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogY2FsYygjeygoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMil9ICsgI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDJ9KTtcbiAgICAgIGxlZnQ6IGNhbGMoI3stKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcil9ICsgI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDJ9KTtcbiAgICAgIHdpZHRoOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGhlaWdodDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gLjE1cyBlYXNlLWluLW91dCwgJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkY3VzdG9tLXN3aXRjaC13aWR0aCAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU2VsZWN0XG4vL1xuLy8gUmVwbGFjZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBzZWxlY3Qgd2l0aCBhIGN1c3RvbSBvbmUsIG1vc3RseSBwdWxsZWQgZnJvbVxuLy8gaHR0cHM6Ly9wcmltZXIuZ2l0aHViLmlvLy5cbi8vXG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tc2VsZWN0LWJnO1xuICBib3JkZXI6ICRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3csICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICAvLyBGb3IgdmlzdWFsIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgcGxhdGZvcm1zL2Jyb3dzZXJzLFxuICAgICAgLy8gc3VwcHJlc3MgdGhlIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmN1c3RvbS1zZWxlY3Qtc20ge1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTtcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc20pO1xufVxuXG4uY3VzdG9tLXNlbGVjdC1sZyB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZyk7XG59XG5cblxuLy8gRmlsZVxuLy9cbi8vIEN1c3RvbSBmaWxlIGlucHV0LlxuXG4uY3VzdG9tLWZpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgJjpkaXNhYmxlZCB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgQGVhY2ggJGxhbmcsICR2YWx1ZSBpbiAkY3VzdG9tLWZpbGUtdGV4dCB7XG4gICAgJjpsYW5nKCN7JGxhbmd9KSB+IC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIH4gLmN1c3RvbS1maWxlLWxhYmVsW2RhdGEtYnJvd3NlXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1icm93c2UpO1xuICB9XG59XG5cbi5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLWZpbGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1iZztcbiAgYm9yZGVyOiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI7XG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICAgIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRjdXN0b20tZmlsZS1idXR0b24tY29sb3I7XG4gICAgY29udGVudDogXCJCcm93c2VcIjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBib3JkZXItbGVmdDogaW5oZXJpdDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgMCk7XG4gIH1cbn1cblxuLy8gUmFuZ2Vcbi8vXG4vLyBTdHlsZSByYW5nZSBpbnB1dHMgdGhlIHNhbWUgYWNyb3NzIGJyb3dzZXJzLiBWZW5kb3Itc3BlY2lmaWMgcnVsZXMgZm9yIHBzZXVkb1xuLy8gZWxlbWVudHMgY2Fubm90IGJlIG1peGVkLiBBcyBzdWNoLCB0aGVyZSBhcmUgbm8gc2hhcmVkIHN0eWxlcyBmb3IgZm9jdXMgb3Jcbi8vIGFjdGl2ZSBzdGF0ZXMgb24gcHJlZml4ZWQgc2VsZWN0b3JzLlxuXG4uY3VzdG9tLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygjeyRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0fSArICN7JGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMn0pO1xuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcblxuICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGVmZmVjdC5cbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tcy10aHVtYiAgICAgICAgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gIH1cblxuICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBtYXJnaW4tdG9wOiAoJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQgLSAkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCkgLyAyOyAvLyBXZWJraXQgc3BlY2lmaWNcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XG4gICAgfVxuICB9XG5cbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbXMtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMDsgLy8gRWRnZSBzcGVjaWZpY1xuICAgIG1hcmdpbi1yaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBtYXJnaW4tbGVmdDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tcy10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQgLyAyO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLXVwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IC8vIGFyYml0cmFyeT9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWJnO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbXMtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG4gIH1cbn1cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uY3VzdG9tLWZpbGUtbGFiZWwsXG4uY3VzdG9tLXNlbGVjdCB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBLaWNrc3RhcnQgYW55IG5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggYSBzZXQgb2Ygc3R5bGUgcmVzZXRzLiBXb3JrcyB3aXRoXG4vLyBgPG5hdj5gcyBvciBgPHVsPmBzLlxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5uYXYtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbmF2LWxpbmstcGFkZGluZy15ICRuYXYtbGluay1wYWRkaW5nLXg7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLm5hdi1saW5rIHtcbiAgICBib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG5hdi10YWJzLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdi1waWxscy1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLy8gQ29udGVudHNcbi8vXG4vLyBOYXZiYXJcbi8vIE5hdmJhciBicmFuZFxuLy8gTmF2YmFyIG5hdlxuLy8gTmF2YmFyIHRleHRcbi8vIE5hdmJhciBkaXZpZGVyXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy8gTmF2YmFyIHBvc2l0aW9uXG4vLyBOYXZiYXIgdGhlbWVzXG5cblxuLy8gTmF2YmFyXG4vL1xuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxuXG4ubmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6ICRuYXZiYXItcGFkZGluZy15ICRuYXZiYXItcGFkZGluZy14O1xuXG4gIC8vIEJlY2F1c2UgZmxleCBwcm9wZXJ0aWVzIGFyZW4ndCBpbmhlcml0ZWQsIHdlIG5lZWQgdG8gcmVkZWNsYXJlIHRoZXNlIGZpcnN0XG4gIC8vIGZldyBwcm9wZXJ0aWVzIHNvIHRoYXQgY29udGVudCBuZXN0ZWQgd2l0aGluIGJlaGF2ZSBwcm9wZXJseS5cbiAgPiAuY29udGFpbmVyLFxuICA+IC5jb250YWluZXItZmx1aWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIGJyYW5kXG4vL1xuLy8gVXNlZCBmb3IgYnJhbmQsIHByb2plY3QsIG9yIHNpdGUgbmFtZXMuXG5cbi5uYXZiYXItYnJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci1icmFuZC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdlxuLy9cbi8vIEN1c3RvbSBuYXZiYXIgbmF2aWdhdGlvbiAoZG9lc24ndCByZXF1aXJlIGAubmF2YCwgYnV0IGRvZXMgbWFrZSB1c2Ugb2YgYC5uYXYtbGlua2ApLlxuXG4ubmF2YmFyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8vIGNhbm5vdCB1c2UgYGluaGVyaXRgIHRvIGdldCB0aGUgYC5uYXZiYXJgcyB2YWx1ZVxuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIHRleHRcbi8vXG4vL1xuXG4ubmF2YmFyLXRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cbi8vIHRoZSBkZWZhdWx0IGZsZXhib3ggcm93IG9yaWVudGF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS41ZW07XG4gIGhlaWdodDogMS41ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cblxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGb3IgbmVzdGluZyBjb250YWluZXJzLCBoYXZlIHRvIHJlZGVjbGFyZSBmb3IgYWxpZ25tZW50IHB1cnBvc2VzXG4gICAgICAgID4gLmNvbnRhaW5lcixcbiAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC8vIENoYW5nZXMgZmxleC1iYXNlcyB0byBhdXRvIGJlY2F1c2Ugb2YgYW4gSUUxMCBidWdcbiAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIHRoZW1lc1xuLy9cbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cblxuLy8gRGFyayBsaW5rcyBhZ2FpbnN0IGEgbGlnaHQgYmFja2dyb3VuZFxuLm5hdmJhci1saWdodCB7XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gV2hpdGUgbGlua3MgYWdhaW5zdCBhIGRhcmsgYmFja2dyb3VuZFxuLm5hdmJhci1kYXJrIHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1icmFuZC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZztcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcblxuICA+IGhyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICA+IC5saXN0LWdyb3VwOmZpcnN0LWNoaWxkIHtcbiAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXA6bGFzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbiAgY29sb3I6ICRjYXJkLWNvbG9yO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206ICRjYXJkLXNwYWNlci15O1xufVxuXG4uY2FyZC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IC0kY2FyZC1zcGFjZXIteSAvIDI7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAwIDApO1xuICB9XG5cbiAgKyAubGlzdC1ncm91cCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1mb290ZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItdG9wOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBIZWFkZXIgbmF2c1xuLy9cblxuLmNhcmQtaGVhZGVyLXRhYnMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIG1hcmdpbi1ib3R0b206IC0kY2FyZC1zcGFjZXIteTtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14IC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG59XG5cbi8vIENhcmQgaW1hZ2Vcbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6ICRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc7XG59XG5cbi5jYXJkLWltZyB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIENhcmQgaW1hZ2UgY2Fwc1xuLmNhcmQtaW1nLXRvcCB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbi5jYXJkLWRlY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJkLWRlY2stbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNhcmQtZGVjay1tYXJnaW47XG5cbiAgICAuY2FyZCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZC1kZWNrLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBkZWZhdWx0XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENhcmQgZ3JvdXBzXG4vL1xuXG4uY2FyZC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAvLyB0byBkaXNwbGF5IHByb3Blcmx5LlxuICA+IC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1ncm91cC1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gICAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgICA+IC5jYXJkIHtcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgZmxleDogMSAwIDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgKyAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDb2x1bW5zXG4vL1xuXG4uY2FyZC1jb2x1bW5zIHtcbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWNvbHVtbnMtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGNvbHVtbi1jb3VudDogJGNhcmQtY29sdW1ucy1jb3VudDtcbiAgICBjb2x1bW4tZ2FwOiAkY2FyZC1jb2x1bW5zLWdhcDtcbiAgICBvcnBoYW5zOiAxO1xuICAgIHdpZG93czogMTtcblxuICAgIC5jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gRG9uJ3QgbGV0IHRoZW0gdmVydGljYWxseSBzcGFuIG11bHRpcGxlIGNvbHVtbnNcbiAgICAgIHdpZHRoOiAxMDAlOyAvLyBEb24ndCBsZXQgdGhlaXIgd2lkdGggY2hhbmdlXG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIEFjY29yZGlvblxuLy9cblxuLmFjY29yZGlvbiB7XG4gID4gLmNhcmQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgLmNhcmQtaGVhZGVyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0kY2FyZC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy15ICRicmVhZGNydW1iLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICAvLyBUaGUgc2VwYXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYnMgKGJ5IGRlZmF1bHQsIGEgZm9yd2FyZC1zbGFzaDogXCIvXCIpXG4gICsgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBTdXBwcmVzcyB1bmRlcmxpbmluZyBvZiB0aGUgc2VwYXJhdG9yIGluIG1vZGVybiBicm93c2Vyc1xuICAgICAgcGFkZGluZy1yaWdodDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuICAgICAgY29sb3I6ICRicmVhZGNydW1iLWRpdmlkZXItY29sb3I7XG4gICAgICBjb250ZW50OiAkYnJlYWRjcnVtYi1kaXZpZGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIElFOS0xMSBoYWNrIHRvIHByb3Blcmx5IGhhbmRsZSBoeXBlcmxpbmsgdW5kZXJsaW5lcyBmb3IgYnJlYWRjcnVtYnMgYnVpbHRcbiAgLy8gd2l0aG91dCBgPHVsPmBzLiBUaGUgYDo6YmVmb3JlYCBwc2V1ZG8tZWxlbWVudCBnZW5lcmF0ZXMgYW4gZWxlbWVudFxuICAvLyAqd2l0aGluKiB0aGUgLmJyZWFkY3J1bWItaXRlbSBhbmQgdGhlcmVieSBpbmhlcml0cyB0aGUgYHRleHQtZGVjb3JhdGlvbmAuXG4gIC8vXG4gIC8vIFRvIHRyaWNrIElFIGludG8gc3VwcHJlc3NpbmcgdGhlIHVuZGVybGluZSwgd2UgZ2l2ZSB0aGUgcHNldWRvLWVsZW1lbnQgYW5cbiAgLy8gdW5kZXJsaW5lIGFuZCB0aGVuIGltbWVkaWF0ZWx5IHJlbW92ZSBpdC5cbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjtcbiAgfVxufVxuIiwiLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWdpbmF0aW9uLXBhZGRpbmcteSAkcGFnaW5hdGlvbi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1sZWZ0OiAtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoO1xuICBsaW5lLWhlaWdodDogJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gIGJvcmRlcjogJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYuZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC8vIE9waW5pb25hdGVkOiByZW1vdmUgdGhlIFwiaGFuZFwiIGN1cnNvciBzZXQgcHJldmlvdXNseSBmb3IgLnBhZ2UtbGlua1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkbGluZS1oZWlnaHQtbGcsICRib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRsaW5lLWhlaWdodC1zbSwgJGJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZy15ICRiYWRnZS1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmFkZ2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYmFkZ2UtdHJhbnNpdGlvbik7XG5cbiAgQGF0LXJvb3QgYSN7Jn0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi8vIFBpbGwgYmFkZ2VzXG4vL1xuLy8gTWFrZSB0aGVtIGV4dHJhIHJvdW5kZWQgd2l0aCBhIG1vZGlmaWVyIHRvIHJlcGxhY2UgdjMncyBiYWRnZXMuXG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBwYWRkaW5nLWxlZnQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ29sb3JzXG4vL1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgYmFkZ2VzIGdldCBkYXJrZXIgb24gOmhvdmVyKS5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5iYWRnZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuIiwiLmp1bWJvdHJvbiB7XG4gIHBhZGRpbmc6ICRqdW1ib3Ryb24tcGFkZGluZyAoJGp1bWJvdHJvbi1wYWRkaW5nIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgY29sb3I6ICRqdW1ib3Ryb24tY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRqdW1ib3Ryb24tYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtbGcpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBwYWRkaW5nOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMikgJGp1bWJvdHJvbi1wYWRkaW5nO1xuICB9XG59XG5cbi5qdW1ib3Ryb24tZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYWxlcnQtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGVydC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbi5hbGVydC1oZWFkaW5nIHtcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xufVxuXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAkY2xvc2UtZm9udC1zaXplICsgJGFsZXJ0LXBhZGRpbmcteCAqIDI7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBzdHlsZXNcbi8vXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmFsZXJ0LSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCh0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsICRhbGVydC1iZy1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJvcmRlci1sZXZlbCksIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWNvbG9yLWxldmVsKSk7XG4gIH1cbn1cbiIsIi8vIERpc2FibGUgYW5pbWF0aW9uIGlmIHRyYW5zaXRpb25zIGFyZSBkaXNhYmxlZFxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICBAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgICBmcm9tIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogJHByb2dyZXNzLWhlaWdodCAwOyB9XG4gICAgdG8geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbiAgfVxufVxuXG4ucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuICBAaW5jbHVkZSBmb250LXNpemUoJHByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRwcm9ncmVzcy1oZWlnaHQgJHByb2dyZXNzLWhlaWdodDtcbn1cblxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgICBhbmltYXRpb246IHByb2dyZXNzLWJhci1zdHJpcGVzICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZztcblxuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2ZvY3VzIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1ob3Zlci1iZztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkgJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg7XG4gIC8vIFBsYWNlIHRoZSBib3JkZXIgb24gdGhlIGxpc3QgaXRlbXMgYW5kIG5lZ2F0aXZlIG1hcmdpbiB1cCBmb3IgYmV0dGVyIHN0eWxpbmdcbiAgbWFyZ2luLWJvdHRvbTogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcbiAgYm9yZGVyOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZsdXNoIGxpc3QgaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGxpc3QgZ3JvdXAgaXRlbXMgZWRnZS10by1lZGdlLiBNb3N0XG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cblxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vL1xuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgLTkpLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIDYpKTtcbn1cbiIsIi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjbG9zZS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgb3BhY2l0eTogLjU7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXG4vLyBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XCIjXCJgLlxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmJ1dHRvbi5jbG9zZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcbmEuY2xvc2UuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiIsIi50b2FzdCB7XG4gIG1heC13aWR0aDogJHRvYXN0LW1heC13aWR0aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gY2hlYXAgcm91bmRlZCBjb3JuZXJzIG9uIG5lc3RlZCBpdGVtc1xuICBAaW5jbHVkZSBmb250LXNpemUoJHRvYXN0LWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkdG9hc3QtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWJvcmRlci1jb2xvcjtcbiAgYm94LXNoYWRvdzogJHRvYXN0LWJveC1zaGFkb3c7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgb3BhY2l0eTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9hc3QtYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkdG9hc3QtcGFkZGluZy14O1xuICB9XG5cbiAgJi5zaG93aW5nIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b2FzdC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy15ICR0b2FzdC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9hc3QtaGVhZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlci1ib3R0b206ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I7XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteDsgLy8gYXBwbHkgdG8gYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbFxufVxuIiwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLm1vZGFsLW9wZW4ge1xuICAvLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubW9kYWwge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgZGlzcGxheTogZmxleDsgLy8gSUUxMC8xMVxuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luICogMn0pO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDJ9KTsgLy8gSUUxMC8xMVxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubW9kYWwtaGVhZGVyLFxuICAubW9kYWwtZm9vdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luICogMn0pO1xuXG4gIC8vIEVuc3VyZSBgbW9kYWwtZGlhbG9nLWNlbnRlcmVkYCBleHRlbmRzIHRoZSBmdWxsIGhlaWdodCBvZiB0aGUgdmlldyAoSUUxMC8xMSlcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgLy8gSUUxMFxuICAgIGhlaWdodDogY2FsYygxMDB2aCAtICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyfSk7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC8vIEVuc3VyZSBgLm1vZGFsLWJvZHlgIHNob3dzIHNjcm9sbGJhciAoSUUxMC8xMSlcbiAgJi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBY3R1YWwgbW9kYWxcbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxuICAvLyBjb3VudGVyYWN0IHRoZSBwb2ludGVyLWV2ZW50czogbm9uZTsgaW4gdGhlIC5tb2RhbC1kaWFsb2dcbiAgY29sb3I6ICRtb2RhbC1jb250ZW50LWNvbG9yO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgLy8gc28gdGhlIGNsb3NlIGJ0biBhbHdheXMgc3RheXMgb24gdGhlIHVwcGVyIHJpZ2h0IGNvcm5lclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIFB1dCBtb2RhbCBoZWFkZXIgZWxlbWVudHMgKHRpdGxlIGFuZCBkaXNtaXNzKSBvbiBvcHBvc2l0ZSBlbmRzXG4gIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuXG4gIC5jbG9zZSB7XG4gICAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICAgIC8vIGF1dG8gb24gdGhlIGxlZnQgZm9yY2UgaWNvbiB0byB0aGUgcmlnaHQgZXZlbiB3aGVuIHRoZXJlIGlzIG5vIC5tb2RhbC10aXRsZVxuICAgIG1hcmdpbjogKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteCkgKC0kbW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiBzaG91bGQgdGhlcmUgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gRWFzaWx5IHBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICA+IDpub3QoOmZpcnN0LWNoaWxkKSB7IG1hcmdpbi1sZWZ0OiAuMjVyZW07IH1cbiAgPiA6bm90KDpsYXN0LWNoaWxkKSB7IG1hcmdpbi1yaWdodDogLjI1cmVtOyB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyfSk7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMn0pO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtICN7JG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDJ9KTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyfSk7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cCk7XG4gIH1cblxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyxcbiAgLm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7IG1heC13aWR0aDogJG1vZGFsLXhsOyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAkdG9vbHRpcC1tYXJnaW47XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHRvb2x0aXAtZm9udC1zaXplKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6ICR0b29sdGlwLW9wYWNpdHk7IH1cblxuICAuYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC10b3Age1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLXJpZ2h0IHtcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG5cbiAgLmFycm93IHtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC1ib3R0b20ge1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAuYXJyb3cge1xuICAgIHRvcDogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWxlZnQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtbGVmdDtcbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG59XG4iLCIucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcG9wb3Zlci1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHBvcG92ZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHBvcG92ZXItYm94LXNoYWRvdyk7XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgIG1hcmdpbjogMCAkYm9yZGVyLXJhZGl1cy1sZztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItdG9wIHtcbiAgbWFyZ2luLWJvdHRvbTogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICBib3R0b206IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG5cbiAgPiAuYXJyb3cge1xuICAgIGxlZnQ6IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJGJvcmRlci1yYWRpdXMtbGcgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYm90dG9tIHtcbiAgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICB0b3A6IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aCAvIDI7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItaGVhZGVyLWJnO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgcmlnaHQ6IGNhbGMoKCN7JHBvcG92ZXItYXJyb3ctaGVpZ2h0fSArICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgKiAtMSk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJGJvcmRlci1yYWRpdXMtbGcgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItbGVmdDtcbiAgfVxufVxuXG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgZGFya2VuKCRwb3BvdmVyLWhlYWRlci1iZywgNSUpO1xuICAkb2Zmc2V0LWJvcmRlci13aWR0aDogY2FsYygjeyRib3JkZXItcmFkaXVzLWxnfSAtICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSk7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRvZmZzZXQtYm9yZGVyLXdpZHRoKTtcblxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wb3BvdmVyLWJvZHkge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteSAkcG9wb3Zlci1ib2R5LXBhZGRpbmcteDtcbiAgY29sb3I6ICRwb3BvdmVyLWJvZHktY29sb3I7XG59XG4iLCIvLyBOb3RlcyBvbiB0aGUgY2xhc3Nlczpcbi8vXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcbi8vICAgIHdlJ3JlIHByZXZlbnRpbmcgYWxsIGFjdGlvbnMgaW5zdGVhZFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXJpZ2h0IGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hlcmVcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cbi8vIDQuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdGhlIGN1cnJlbnRcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxuLy8gNS4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXG5cbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1sZWZ0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tcmlnaHQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgdHJhbnNpdGlvbnNcbi8vXG5cbi5jYXJvdXNlbC1mYWRlIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHotaW5kZXg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIG9wYWNpdHkpO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5O1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcbiAgbGVmdDogMDtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSk7XG4gIH1cbn1cblxuLy8gSWNvbnMgZm9yIHdpdGhpblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgaGVpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoO1xuICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gMTAwJSAxMDAlO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnO1xufVxuXG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIG9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxuLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBvdmVycmlkZSA8b2w+IGRlZmF1bHRcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBsaSB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg7XG4gICAgaGVpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIC8vIFVzZSB0cmFuc3BhcmVudCBib3JkZXJzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgIGJvcmRlci10b3A6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6IC41O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uKTtcbiAgfVxuXG4gIC5hY3RpdmUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy9cbi8vXG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyO1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMjtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCIvL1xuLy8gUm90YXRpbmcgYm9yZGVyXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBib3JkZXI6ICRzcGlubmVyLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IHNwaW5uZXItYm9yZGVyIC43NXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xuICBib3JkZXItd2lkdGg6ICRzcGlubmVyLWJvcmRlci13aWR0aC1zbTtcbn1cblxuLy9cbi8vIEdyb3dpbmcgY2lyY2xlXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItZ3JvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uc3Bpbm5lci1ncm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDA7XG4gIGFuaW1hdGlvbjogc3Bpbm5lci1ncm93IC43NXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4uc3Bpbm5lci1ncm93LXNtIHtcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodC1zbTtcbn1cbiIsIkBpbXBvcnQgXCJ1dGlsaXRpZXMvYWxpZ25cIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvYmFja2dyb3VuZFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9ib3JkZXJzXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2Rpc3BsYXlcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZW1iZWRcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZmxleFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9mbG9hdFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9vdmVyZmxvd1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9wb3NpdGlvblwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9zY3JlZW5yZWFkZXJzXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NoYWRvd3NcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvc2l6aW5nXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3N0cmV0Y2hlZC1saW5rXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NwYWNpbmdcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvdGV4dFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy92aXNpYmlsaXR5XCI7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLmFsaWduLWJhc2VsaW5lICAgIHsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH0gLy8gQnJvd3NlciBkZWZhdWx0XG4uYWxpZ24tdG9wICAgICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1taWRkbGUgICAgICB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuLmFsaWduLWJvdHRvbSAgICAgIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC1ib3R0b20geyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtdG9wICAgIHsgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgYmctdmFyaWFudChcIi5iZy0jeyRjb2xvcn1cIiwgJHZhbHVlKTtcbn1cblxuQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgQGluY2x1ZGUgYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRjb2xvcn1cIiwgJHZhbHVlKTtcbiAgfVxufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBCb3JkZXJcbi8vXG5cbi5ib3JkZXIgICAgICAgICB7IGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wICAgICB7IGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbSAgeyBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0ICAgIHsgYm9yZGVyLWxlZnQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG5cbi5ib3JkZXItMCAgICAgICAgeyBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AtMCAgICB7IGJvcmRlci10b3A6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodC0wICB7IGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbS0wIHsgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQtMCAgIHsgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJvcmRlci0jeyRjb2xvcn0ge1xuICAgIGJvcmRlci1jb2xvcjogJHZhbHVlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJvcmRlci13aGl0ZSB7XG4gIGJvcmRlci1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi8vXG4vLyBCb3JkZXItcmFkaXVzXG4vL1xuXG4ucm91bmRlZC1zbSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtdG9wIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXJpZ2h0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGVmdCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxnIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGcgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXBpbGwge1xuICBib3JkZXItcmFkaXVzOiAkcm91bmRlZC1waWxsICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLTAge1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4iLCIuY2xlYXJmaXgge1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIGNvbW1vbiBgZGlzcGxheWAgdmFsdWVzXG4vL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAgIC5kI3skaW5maXh9LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgdG9nZ2xpbmcgYGRpc3BsYXlgIGluIHByaW50XG4vL1xuXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAuZC1wcmludC0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuQGVhY2ggJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvIGluICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Mge1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teDogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMSk7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAyKTtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS0jeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14fWJ5I3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teX0ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teSAvICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14KTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBGbGV4IHZhcmlhdGlvblxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIGFkZGl0aW9uYWwgZmxleCBhbGlnbm1lbnQgb3B0aW9ucy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsZXgjeyRpbmZpeH0tcm93ICAgICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4gICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXJvdy1yZXZlcnNlICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4tcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuZmxleCN7JGluZml4fS13cmFwICAgICAgICAgeyBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LW5vd3JhcCAgICAgICB7IGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZmlsbCAgICAgICAgIHsgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMCAgICAgICB7IGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0xICAgICAgIHsgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMCAgICAgeyBmbGV4LXNocmluazogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTEgICAgIHsgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDsgfVxuXG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1zdGFydCAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1lbmQgICAgIHsgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1hcm91bmQgIHsgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdHJldGNoIHsgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1hdXRvICAgICB7IGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxvYXQjeyRpbmZpeH0tbGVmdCAgeyBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tbm9uZSAgeyBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkdmFsdWUgaW4gJG92ZXJmbG93cyB7XG4gIC5vdmVyZmxvdy0jeyR2YWx1ZX0geyBvdmVyZmxvdzogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb21tb24gdmFsdWVzXG5AZWFjaCAkcG9zaXRpb24gaW4gJHBvc2l0aW9ucyB7XG4gIC5wb3NpdGlvbi0jeyRwb3NpdGlvbn0geyBwb3NpdGlvbjogJHBvc2l0aW9uICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gU2hvcnRoYW5kXG5cbi5maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5zdGlja3ktdG9wIHtcbiAgQHN1cHBvcnRzIChwb3NpdGlvbjogc3RpY2t5KSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gIH1cbn1cbiIsIi8vXG4vLyBTY3JlZW5yZWFkZXJzXG4vL1xuXG4uc3Itb25seSB7XG4gIEBpbmNsdWRlIHNyLW9ubHkoKTtcbn1cblxuLnNyLW9ubHktZm9jdXNhYmxlIHtcbiAgQGluY2x1ZGUgc3Itb25seS1mb2N1c2FibGUoKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy9cbi8vIFN0cmV0Y2hlZCBsaW5rXG4vL1xuXG4uc3RyZXRjaGVkLWxpbmsge1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIC8vIEp1c3QgaW4gY2FzZSBgcG9pbnRlci1ldmVudHM6IG5vbmVgIGlzIHNldCBvbiBhIHBhcmVudFxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy8gSUUxMCBidWdmaXgsIHNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNjk0Nzk2Ny9pZTEwLWhvdmVyLXBzZXVkby1jbGFzcy1kb2VzbnQtd29yay13aXRob3V0LWJhY2tncm91bmQtY29sb3JcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gTWFyZ2luIGFuZCBQYWRkaW5nXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIEBlYWNoICRwcm9wLCAkYWJicmV2IGluIChtYXJnaW46IG0sIHBhZGRpbmc6IHApIHtcbiAgICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgICAgLiN7JGFiYnJldn0jeyRpbmZpeH0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC4jeyRhYmJyZXZ9dCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS10b3A6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fXIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tcmlnaHQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tYm90dG9tOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1sI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWxlZnQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbnMgKGUuZy4sIHdoZXJlIGAubWItbjFgIGlzIG5lZ2F0aXZlIHZlcnNpb24gb2YgYC5tYi0xYClcbiAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICBAaWYgJHNpemUgIT0gMCB7XG4gICAgICAgIC5tI3skaW5maXh9LW4jeyRzaXplfSB7IG1hcmdpbjogLSRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAubXQjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tciN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tbCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlsc1xuICAgIC5tI3skaW5maXh9LWF1dG8geyBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5tdCN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1yI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYiN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1sI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVGV4dFxuLy9cblxuLnRleHQtbW9ub3NwYWNlIHsgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWltcG9ydGFudDsgfVxuXG4vLyBBbGlnbm1lbnRcblxuLnRleHQtanVzdGlmeSAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdyYXAgICAgIHsgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG4udGV4dC1ub3dyYXAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfVxuLnRleHQtdHJ1bmNhdGUgeyBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlOyB9XG5cbi8vIFJlc3BvbnNpdmUgYWxpZ25tZW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC50ZXh0I3skaW5maXh9LWxlZnQgICB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LXJpZ2h0ICB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1jZW50ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG5cbi50ZXh0LWxvd2VyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXVwcGVyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi50ZXh0LWNhcGl0YWxpemUgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50OyB9XG5cbi8vIFdlaWdodCBhbmQgaXRhbGljc1xuXG4uZm9udC13ZWlnaHQtbGlnaHQgICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWxpZ2h0ZXIgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LW5vcm1hbCAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZCAgICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtYm9sZGVyICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LWl0YWxpYyAgICAgICAgIHsgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7IH1cblxuLy8gQ29udGV4dHVhbCBjb2xvcnNcblxuLnRleHQtd2hpdGUgeyBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudChcIi50ZXh0LSN7JGNvbG9yfVwiLCAkdmFsdWUpO1xufVxuXG4udGV4dC1ib2R5IHsgY29sb3I6ICRib2R5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW11dGVkIHsgY29sb3I6ICR0ZXh0LW11dGVkICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYmxhY2stNTAgeyBjb2xvcjogcmdiYSgkYmxhY2ssIC41KSAhaW1wb3J0YW50OyB9XG4udGV4dC13aGl0ZS01MCB7IGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjUpICFpbXBvcnRhbnQ7IH1cblxuLy8gTWlzY1xuXG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogdHJ1ZSk7XG59XG5cbi50ZXh0LWRlY29yYXRpb24tbm9uZSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBJRSAmIDwgRWRnZSAxOFxuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG59XG5cbi8vIFJlc2V0XG5cbi50ZXh0LXJlc2V0IHsgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuLy9cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzc1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6XG4vLyBodHRwczovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYgJGVuYWJsZS1wcmludC1zdHlsZXMge1xuICBAbWVkaWEgcHJpbnQge1xuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCBvdXQgYGNvbG9yYCBhbmQgYGJhY2tncm91bmRgXG4gICAgICAvL2NvbG9yOiAkYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlclxuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICY6bm90KC5idG4pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9hW2hyZWZdOjphZnRlciB7XG4gICAgLy8gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIC8vfVxuXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL1xuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICAgIC8vXG5cbiAgICAvL2FbaHJlZl49XCIjXCJdOjphZnRlcixcbiAgICAvL2FbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTo6YWZ0ZXIge1xuICAgIC8vIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy99XG5cbiAgICBwcmUge1xuICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkZ3JheS01MDA7IC8vIEJvb3RzdHJhcCBjdXN0b20gY29kZTsgdXNpbmcgYCRib3JkZXItd2lkdGhgIGluc3RlYWQgb2YgMXB4XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBQcmludGluZyBUYWJsZXM6XG4gICAgLy8gaHR0cDovL2Nzcy1kaXNjdXNzLmluY3V0aW8uY29tL3dpa2kvUHJpbnRpbmdfVGFibGVzXG4gICAgLy9cblxuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gU3BlY2lmeSBhIHNpemUgYW5kIG1pbi13aWR0aCB0byBtYWtlIHByaW50aW5nIGNsb3NlciBhY3Jvc3MgYnJvd3NlcnMuXG4gICAgLy8gV2UgZG9uJ3Qgc2V0IG1hcmdpbiBoZXJlIGJlY2F1c2UgaXQgYnJlYWtzIGBzaXplYCBpbiBDaHJvbWUuIFdlIGFsc29cbiAgICAvLyBkb24ndCB1c2UgYCFpbXBvcnRhbnRgIG9uIGBzaXplYCBhcyBpdCBicmVha3MgaW4gQ2hyb21lLlxuICAgIEBwYWdlIHtcbiAgICAgIHNpemU6ICRwcmludC1wYWdlLXNpemU7XG4gICAgfVxuICAgIGJvZHkge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xuXG4gICAgICB0ZCxcbiAgICAgIHRoIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0zMDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtZGFyayB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG4gIH1cbn1cbiIsIi8vIEJvb3RzdHJhcCBmdW5jdGlvbnNcbi8vXG4vLyBVdGlsaXR5IG1peGlucyBhbmQgZnVuY3Rpb25zIGZvciBldmFsdWF0aW5nIHNvdXJjZSBjb2RlIGFjcm9zcyBvdXIgdmFyaWFibGVzLCBtYXBzLCBhbmQgbWl4aW5zLlxuXG4vLyBBc2NlbmRpbmdcbi8vIFVzZWQgdG8gZXZhbHVhdGUgU2FzcyBtYXBzIGxpa2Ugb3VyIGdyaWQgYnJlYWtwb2ludHMuXG5AbWl4aW4gX2Fzc2VydC1hc2NlbmRpbmcoJG1hcCwgJG1hcC1uYW1lKSB7XG4gICRwcmV2LWtleTogbnVsbDtcbiAgJHByZXYtbnVtOiBudWxsO1xuICBAZWFjaCAka2V5LCAkbnVtIGluICRtYXAge1xuICAgIEBpZiAkcHJldi1udW0gPT0gbnVsbCBvciB1bml0KCRudW0pID09IFwiJVwiIHtcbiAgICAgIC8vIERvIG5vdGhpbmdcbiAgICB9IEBlbHNlIGlmIG5vdCBjb21wYXJhYmxlKCRwcmV2LW51bSwgJG51bSkge1xuICAgICAgQHdhcm4gXCJQb3RlbnRpYWxseSBpbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aG9zZSB1bml0IG1ha2VzIGl0IGluY29tcGFyYWJsZSB0byAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9IEBlbHNlIGlmICRwcmV2LW51bSA+PSAkbnVtIHtcbiAgICAgIEB3YXJuIFwiSW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hpY2ggaXNuJ3QgZ3JlYXRlciB0aGFuICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH1cbiAgICAkcHJldi1rZXk6ICRrZXk7XG4gICAgJHByZXYtbnVtOiAkbnVtO1xuICB9XG59XG5cbi8vIFN0YXJ0cyBhdCB6ZXJvXG4vLyBVc2VkIHRvIGVuc3VyZSB0aGUgbWluLXdpZHRoIG9mIHRoZSBsb3dlc3QgYnJlYWtwb2ludCBzdGFydHMgYXQgMC5cbkBtaXhpbiBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRtYXAsICRtYXAtbmFtZTogXCIkZ3JpZC1icmVha3BvaW50c1wiKSB7XG4gICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICBAaWYgJGZpcnN0LXZhbHVlICE9IDAge1xuICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiAjeyRtYXAtbmFtZX0gbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgfVxufVxuXG4vLyBSZXBsYWNlIGAkc2VhcmNoYCB3aXRoIGAkcmVwbGFjZWAgaW4gYCRzdHJpbmdgXG4vLyBVc2VkIG9uIG91ciBTVkcgaWNvbiBiYWNrZ3JvdW5kcyBmb3IgY3VzdG9tIGZvcm1zLlxuLy9cbi8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBJbml0aWFsIHN0cmluZ1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8gQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlICgnJykgLSBOZXcgdmFsdWVcbi8vIEByZXR1cm4ge1N0cmluZ30gLSBVcGRhdGVkIHN0cmluZ1xuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuLy8gQ29sb3IgY29udHJhc3RcbkBmdW5jdGlvbiBjb2xvci15aXEoJGNvbG9yLCAkZGFyazogJHlpcS10ZXh0LWRhcmssICRsaWdodDogJHlpcS10ZXh0LWxpZ2h0KSB7XG4gICRyOiByZWQoJGNvbG9yKTtcbiAgJGc6IGdyZWVuKCRjb2xvcik7XG4gICRiOiBibHVlKCRjb2xvcik7XG5cbiAgJHlpcTogKCgkciAqIDI5OSkgKyAoJGcgKiA1ODcpICsgKCRiICogMTE0KSkgLyAxMDAwO1xuXG4gIEBpZiAoJHlpcSA+PSAkeWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkKSB7XG4gICAgQHJldHVybiAkZGFyaztcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAkbGlnaHQ7XG4gIH1cbn1cblxuLy8gUmV0cmlldmUgY29sb3IgU2FzcyBtYXBzXG5AZnVuY3Rpb24gY29sb3IoJGtleTogXCJibHVlXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRjb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gdGhlbWUtY29sb3IoJGtleTogXCJwcmltYXJ5XCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCR0aGVtZS1jb2xvcnMsICRrZXkpO1xufVxuXG5AZnVuY3Rpb24gZ3JheSgka2V5OiBcIjEwMFwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkZ3JheXMsICRrZXkpO1xufVxuXG4vLyBSZXF1ZXN0IGEgdGhlbWUgY29sb3IgbGV2ZWxcbkBmdW5jdGlvbiB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3ItbmFtZTogXCJwcmltYXJ5XCIsICRsZXZlbDogMCkge1xuICAkY29sb3I6IHRoZW1lLWNvbG9yKCRjb2xvci1uYW1lKTtcbiAgJGNvbG9yLWJhc2U6IGlmKCRsZXZlbCA+IDAsICRibGFjaywgJHdoaXRlKTtcbiAgJGxldmVsOiBhYnMoJGxldmVsKTtcblxuICBAcmV0dXJuIG1peCgkY29sb3ItYmFzZSwgJGNvbG9yLCAkbGV2ZWwgKiAkdGhlbWUtY29sb3ItaW50ZXJ2YWwpO1xufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5cbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcblxuJGdyYXlzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kZ3JheXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gICAgXCIzMDBcIjogJGdyYXktMzAwLFxuICAgIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gICAgXCI2MDBcIjogJGdyYXktNjAwLFxuICAgIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gICAgXCI5MDBcIjogJGdyYXktOTAwXG4gICksXG4gICRncmF5c1xuKTtcblxuJGJsdWU6ICAgICMwMDdiZmYgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzI4YTc0NSAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMxN2EyYjggIWRlZmF1bHQ7XG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRjb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gICAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gICAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gICAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gICAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gICAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICAgIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gICAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4gICksXG4gICRjb2xvcnNcbik7XG5cbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gICAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gICAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICAgIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gICAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gICAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgICBcImRhcmtcIjogICAgICAgJGRhcmtcbiAgKSxcbiAgJHRoZW1lLWNvbG9yc1xuKTtcblxuLy8gU2V0IGEgc3BlY2lmaWMganVtcCBwb2ludCBmb3IgcmVxdWVzdGluZyBjb2xvciBqdW1wc1xuJHRoZW1lLWNvbG9yLWludGVydmFsOiAgICAgIDglICFkZWZhdWx0O1xuXG4vLyBUaGUgeWlxIGxpZ2h0bmVzcyB2YWx1ZSB0aGF0IGRldGVybWluZXMgd2hlbiB0aGUgbGlnaHRuZXNzIG9mIGNvbG9yIGNoYW5nZXMgZnJvbSBcImRhcmtcIiB0byBcImxpZ2h0XCIuIEFjY2VwdGFibGUgdmFsdWVzIGFyZSBiZXR3ZWVuIDAgYW5kIDI1NS5cbiR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQ6ICAxNTAgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJHlpcS10ZXh0LWRhcms6ICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR5aXEtdGV4dC1saWdodDogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5OiAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQsIG5vIGxvbmdlciBhZmZlY3RzIGFueSBjb21waWxlZCBDU1NcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9uczogICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNwYWNlcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDA6IDAsXG4gICAgMTogKCRzcGFjZXIgKiAuMjUpLFxuICAgIDI6ICgkc3BhY2VyICogLjUpLFxuICAgIDM6ICRzcGFjZXIsXG4gICAgNDogKCRzcGFjZXIgKiAxLjUpLFxuICAgIDU6ICgkc3BhY2VyICogMylcbiAgKSxcbiAgJHNwYWNlcnNcbik7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNpemVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAyNTogMjUlLFxuICAgIDUwOiA1MCUsXG4gICAgNzU6IDc1JSxcbiAgICAxMDA6IDEwMCUsXG4gICAgYXV0bzogYXV0b1xuICApLFxuICAkc2l6ZXNcbik7XG5cblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4vLyBEYXJrZW4gcGVyY2VudGFnZSBmb3IgbGlua3Mgd2l0aCBgLnRleHQtKmAgY2xhc3MgKGUuZy4gYC50ZXh0LXN1Y2Nlc3NgKVxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogMTUlICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcblxuJHJvdW5kZWQtcGlsbDogICAgICAgICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogam9pbihcbiAgKFxuICAgICgyMSA5KSxcbiAgICAoMTYgOSksXG4gICAgKDQgMyksXG4gICAgKDEgMSksXG4gICksXG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Ncbik7XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgODAlICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkdGFibGUtaG92ZXItYmcgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWFjY2VudC1iZzogICAgICAgIHJnYmEoJHdoaXRlLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItY29sb3I6ICAgICAgJHRhYmxlLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1iZzogICAgICAgICByZ2JhKCR3aGl0ZSwgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ib3JkZXItY29sb3I6ICAgICBsaWdodGVuKCR0YWJsZS1kYXJrLWJnLCA3LjUlKSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLWxldmVsOiAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWxldmVsOiAgICAgICAgICAtNiAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICByZ2JhKCRjb21wb25lbnQtYWN0aXZlLWJnLCAuMjUpICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAkbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAkbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9uc1xuLy9cbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1zbTogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1sZzogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJ0bi1ibG9jay1zcGFjaW5nLXk6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEZvcm1zXG5cbiRsYWJlbC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDI1JSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtfSArICN7JGlucHV0LXBhZGRpbmcteSAqIDJ9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbX0gKyAjeyRpbnB1dC1wYWRkaW5nLXl9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW19ICsgI3skaW5wdXQtcGFkZGluZy15IC8gMn0pICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodCAqIDFlbX0gKyAjeyRpbnB1dC1wYWRkaW5nLXkgKiAyfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0LXNtICogMWVtfSArICN7JGlucHV0LWJ0bi1wYWRkaW5nLXktc20gKiAyfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0LWxnICogMWVtfSArICN7JGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgKiAyfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6ICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBub25lICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG5vbmUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2IDIuOTc0IDcuMjUgOCAyLjE5M3onLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZTogICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNCclM2UlM2NwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3c6ICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogMS43NSAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAvIDIgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgICAgICAgICBjYWxjKCN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplfSAtICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0fSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNSclM2UlM2NwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDogICAgICAgICAgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yIG5vLXJlcGVhdCByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyIC8gJGN1c3RvbS1zZWxlY3QtYmctc2l6ZSAhZGVmYXVsdDsgLy8gVXNlZCBzbyB3ZSBjYW4gaGF2ZSBtdWx0aXBsZSBiYWNrZ3JvdW5kIGVsZW1lbnRzIChlLmcuLCBhcnJvdyBhbmQgZmVlZGJhY2sgaWNvbilcblxuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0OiBjYWxjKCgxZW0gKyAjezIgKiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXl9KSAqIDMgLyA0ICsgI3skY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZ30pICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgICBjZW50ZXIgcmlnaHQgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtc206ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc6ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgIGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gSUUvRWRnZVxuJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWhlaWdodDogICAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICB0aGVtZS1jb2xvcihcImRhbmdlclwiKSAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyB2aWV3Qm94PSctMiAtMiA3IDcnJTNlJTNjcGF0aCBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgZD0nTTAgMGwzIDNtMC0zTDAgMycvJTNlJTNjY2lyY2xlIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3g9JzMnIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3k9JzMnIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3g9JzMnIGN5PSczJyByPScuNScvJTNlJTNjL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwidmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkXG4gICAgKSxcbiAgICBcImludmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICAgICksXG4gICksXG4gICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4pO1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG5cblxuLy8gTmF2c1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG5hdi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgLyAyICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNlJTNjcGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzZSUzY3BhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgY2FsYygjeyRkcm9wZG93bi1ib3JkZXItcmFkaXVzfSAtICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH0pICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJG5hdi1kaXZpZGVyLW1hcmdpbi15ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcblxuXG4vLyBKdW1ib3Ryb25cblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gQ2FyZHNcblxuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIGNhbGMoI3skY2FyZC1ib3JkZXItcmFkaXVzfSAtICN7JGNhcmQtYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyICFkZWZhdWx0O1xuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgICAgICAgICAgJGNhcmQtZ3JvdXAtbWFyZ2luICFkZWZhdWx0O1xuXG4kY2FyZC1jb2x1bW5zLWNvdW50OiAgICAgICAgICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICFkZWZhdWx0O1xuXG5cbi8vIFRvb2x0aXBzXG5cbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBQb3BvdmVyc1xuXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIGZhZGUtaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIFRvYXN0c1xuXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjI1cmVtIC43NXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uICFkZWZhdWx0O1xuJGJhZGdlLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gQ2Fyb3VzZWxcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41LTIuNS0yLjUgMi41LTIuNS0xLjUtMS41eicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjUgMi41IDIuNS0yLjUgMi41IDEuNSAxLjUgNC00LTQtNHonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG5cblxuLy8gU3Bpbm5lcnNcblxuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoOiAgLjI1ZW0gIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vIFV0aWxpdGllc1xuXG4kZGlzcGxheXM6IG5vbmUsIGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLXJvdywgdGFibGUtY2VsbCwgZmxleCwgaW5saW5lLWZsZXggIWRlZmF1bHQ7XG4kb3ZlcmZsb3dzOiBhdXRvLCBoaWRkZW4gIWRlZmF1bHQ7XG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSAhZGVmYXVsdDtcblxuXG4vLyBQcmludGluZ1xuXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICAgICAgICAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogICAgICAgICAgICAgIG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iLCIvLyBUb2dnbGVzXG4vL1xuLy8gVXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGdsb2JhbCB2YXJpYWJsZXMgdG8gZW5hYmxlIGNlcnRhaW4gdGhlbWUgZmVhdHVyZXMuXG5cbi8vIFZlbmRvclxuQGltcG9ydCBcInZlbmRvci9yZnNcIjtcblxuLy8gRGVwcmVjYXRlXG5AaW1wb3J0IFwibWl4aW5zL2RlcHJlY2F0ZVwiO1xuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJtaXhpbnMvYnJlYWtwb2ludHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaG92ZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYmFkZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NjcmVlbi1yZWFkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtZW1waGFzaXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1oaWRlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtdHJ1bmNhdGVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmlzaWJpbGl0eVwiO1xuXG4vLyAvLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0XCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2FyZXRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0c1wiO1xuQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zvcm1zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xuXG4vLyAvLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ib3gtc2hhZG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xuQGltcG9ydCBcIm1peGlucy90cmFuc2l0aW9uXCI7XG5cbi8vIC8vIExheW91dFxuQGltcG9ydCBcIm1peGlucy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zsb2F0XCI7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgZm9udC1yZXNpemluZ1xuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnNcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIGZvbnQgc2l6ZVxuJHJmcy1iYXNlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtZm9udC1zaXplLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG4vLyBSZXNpemUgZm9udC1zaXplIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gXCJudW1iZXJcIiBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMgdG8gZmFsc2VcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtZm9udC1zaXplIHVuaXRcbiRyZnMtYmFzZS1mb250LXNpemUtdW5pdDogdW5pdCgkcmZzLWJhc2UtZm9udC1zaXplKTtcblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtZm9udC1zaXplIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJweFwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicHhcIiB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicmVtXCIgb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udC1zaXplIG1peGluXG5AbWl4aW4gcmZzKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgLy8gQ2FjaGUgJGZzIHVuaXRcbiAgJGZzLXVuaXQ6IGlmKHR5cGUtb2YoJGZzKSA9PSBcIm51bWJlclwiLCB1bml0KCRmcyksIGZhbHNlKTtcblxuICAvLyBBZGQgIWltcG9ydGFudCBzdWZmaXggaWYgbmVlZGVkXG4gICRyZnMtc3VmZml4OiBpZigkaW1wb3J0YW50LCBcIiAhaW1wb3J0YW50XCIsIFwiXCIpO1xuXG4gIC8vIElmICRmcyBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkZnMgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICBAaWYgbm90ICRmcy11bml0IG9yICRmcy11bml0ICE9IFwiXCIgYW5kICRmcy11bml0ICE9IFwicHhcIiBhbmQgJGZzLXVuaXQgIT0gXCJyZW1cIiBvciAkZnMgPT0gMCB7XG4gICAgZm9udC1zaXplOiAjeyRmc30jeyRyZnMtc3VmZml4fTtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gVmFyaWFibGVzIGZvciBzdG9yaW5nIHN0YXRpYyBhbmQgZmx1aWQgcmVzY2FsaW5nXG4gICAgJHJmcy1zdGF0aWM6IG51bGw7XG4gICAgJHJmcy1mbHVpZDogbnVsbDtcblxuICAgIC8vIFJlbW92ZSBweC11bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJGZzLXVuaXQgPT0gXCJyZW1cIiB7XG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgZGVmYXVsdCBmb250LXNpemVcbiAgICBAaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0ge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzIC8gJHJmcy1yZW0tdmFsdWV9cmVtI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcHgge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzfXB4I3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbiAgICB9XG5cbiAgICAvLyBPbmx5IGFkZCBtZWRpYSBxdWVyeSBpZiBmb250LXNpemUgaXMgYmlnZ2VyIGFzIHRoZSBtaW5pbXVtIGZvbnQtc2l6ZVxuICAgIC8vIElmICRyZnMtZmFjdG9yID09IDEsIG5vIHJlc2NhbGluZyB3aWxsIHRha2UgcGxhY2VcbiAgICBAaWYgJGZzID4gJHJmcy1iYXNlLWZvbnQtc2l6ZSBhbmQgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMge1xuICAgICAgJG1pbi13aWR0aDogbnVsbDtcbiAgICAgICR2YXJpYWJsZS11bml0OiBudWxsO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLW1pbjogJHJmcy1iYXNlLWZvbnQtc2l6ZSArICgkZnMgLSAkcmZzLWJhc2UtZm9udC1zaXplKSAvICRyZnMtZmFjdG9yO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGdpdmVuIGZvbnQtc2l6ZSBhbmQgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgIC8vIE5vIG5lZWQgdG8gY2hlY2sgaWYgdGhlIHVuaXQgaXMgdmFsaWQsIGJlY2F1c2Ugd2UgZGlkIHRoYXQgYmVmb3JlXG4gICAgICAkbWluLXdpZHRoOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3skZnMtbWluIC8gJHJmcy1yZW0tdmFsdWV9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBJZiB0d28tZGltZW5zaW9uYWwsIHVzZSBzbWFsbGVzdCBvZiBzY3JlZW4gd2lkdGggYW5kIGhlaWdodFxuICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICR2YXJpYWJsZS13aWR0aDogI3skZnMtZGlmZiAqIDEwMCAvICRyZnMtYnJlYWtwb2ludH0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZS5cbiAgICAgICRyZnMtZmx1aWQ6IGNhbGMoI3skbWluLXdpZHRofSArICN7JHZhcmlhYmxlLXdpZHRofSkgI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuXG4gICAgLy8gUmVuZGVyaW5nXG4gICAgQGlmICRyZnMtZmx1aWQgPT0gbnVsbCB7XG4gICAgICAvLyBPbmx5IHJlbmRlciBzdGF0aWMgZm9udC1zaXplIGlmIG5vIGZsdWlkIGZvbnQtc2l6ZSBpcyBhdmFpbGFibGVcbiAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRtcS12YWx1ZTogbnVsbDtcblxuICAgICAgLy8gUkZTIGJyZWFrcG9pbnQgZm9ybWF0dGluZ1xuICAgICAgQGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IGVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0ID09IHJlbSB7XG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnQgLyAkcmZzLXJlbS12YWx1ZX0jeyRyZnMtYnJlYWtwb2ludC11bml0fTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4IHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludH1weDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcbiAgICAgICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSxcbiAgICAgICAgLy8gd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBmb250IHNpemVcbiAgICAgICAgJixcbiAgICAgICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgJi5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pLCAobWF4LWhlaWdodDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUaGUgZm9udC1zaXplICYgcmVzcG9uc2l2ZS1mb250LXNpemUgbWl4aW4gdXNlcyBSRlMgdG8gcmVzY2FsZSBmb250IHNpemVzXG5AbWl4aW4gZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuIiwiLy8gRGVwcmVjYXRlIG1peGluXG4vL1xuLy8gVGhpcyBtaXhpbiBjYW4gYmUgdXNlZCB0byBkZXByZWNhdGUgbWl4aW5zIG9yIGZ1bmN0aW9ucy5cbi8vIGAkZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzYCBpcyBhIGdsb2JhbCB2YXJpYWJsZSwgYCRpZ25vcmUtd2FybmluZ2AgaXMgYSB2YXJpYWJsZSB0aGF0IGNhbiBiZSBwYXNzZWQgdG9cbi8vIHNvbWUgZGVwcmVjYXRlZCBtaXhpbnMgdG8gc3VwcHJlc3MgdGhlIHdhcm5pbmcgKGZvciBleGFtcGxlIGlmIHRoZSBtaXhpbiBpcyBzdGlsbCBiZSB1c2VkIGluIHRoZSBjdXJyZW50IHZlcnNpb24gb2YgQm9vdHN0cmFwKVxuQG1peGluIGRlcHJlY2F0ZSgkbmFtZSwgJGRlcHJlY2F0ZS12ZXJzaW9uLCAkcmVtb3ZlLXZlcnNpb24sICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgQGlmICgkZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzICE9IGZhbHNlIGFuZCAkaWdub3JlLXdhcm5pbmcgIT0gdHJ1ZSkge1xuICAgIEB3YXJuIFwiI3skbmFtZX0gaGFzIGJlZW4gZGVwcmVjYXRlZCBhcyBvZiAjeyRkZXByZWNhdGUtdmVyc2lvbn0uIEl0IHdpbGwgYmUgcmVtb3ZlZCBlbnRpcmVseSBpbiAjeyRyZW1vdmUtdmVyc2lvbn0uXCI7XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XG4vLyB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2YgYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG92ZXIgbWl4aW4gYW5kIGAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5YCBhcmUgZGVwcmVjYXRlZC5cbi8vXG4vLyBPcmlnaW5hbGx5IGFkZGVkIGR1cmluZyBvdXIgYWxwaGFzIGFuZCBtYWludGFpbmVkIGR1cmluZyBiZXRhcywgdGhpcyBtaXhpbiB3YXNcbi8vIGRlc2lnbmVkIHRvIHByZXZlbnQgYDpob3ZlcmAgc3RpY2tpbmVzcyBvbiBpT1MtYW4gaXNzdWUgd2hlcmUgaG92ZXIgc3R5bGVzXG4vLyB3b3VsZCBwZXJzaXN0IGFmdGVyIGluaXRpYWwgdG91Y2guXG4vL1xuLy8gRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHdlJ3ZlIGtlcHQgdGhlc2UgbWl4aW5zIGFuZCB1cGRhdGVkIHRoZW0gdG9cbi8vIGFsd2F5cyByZXR1cm4gdGhlaXIgcmVndWxhciBwc2V1ZG8tY2xhc3NlcyBpbnN0ZWFkIG9mIGEgc2hpbW1lZCBtZWRpYSBxdWVyeS5cbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTE5NVxuXG5AbWl4aW4gaG92ZXIge1xuICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzLWFjdGl2ZSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS5cblxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTF4KTtcblxuICAvLyBBdXRvcHJlZml4ZXIgdGFrZXMgY2FyZSBvZiBhZGRpbmcgLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvIGFuZCAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvLFxuICAvLyBidXQgZG9lc24ndCBjb252ZXJ0IGRwcHg9PmRwaS5cbiAgLy8gVGhlcmUncyBubyBzdWNoIHRoaW5nIGFzIHVucHJlZml4ZWQgbWluLWRldmljZS1waXhlbC1yYXRpbyBzaW5jZSBpdCdzIG5vbnN0YW5kYXJkLlxuICAvLyBDb21wYXRpYmlsaXR5IGluZm86IGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIC8vIElFOS0xMSBkb24ndCBzdXBwb3J0IGRwcHhcbiAgICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkgeyAvLyBTdGFuZGFyZGl6ZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMngpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYGltZy1yZXRpbmEoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIkBtaXhpbiBiYWRnZS12YXJpYW50KCRiZykge1xuICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiZywgMTAlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRiYWRnZS1mb2N1cy13aWR0aCByZ2JhKCRiZywgLjUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmVzaXplIGFueXRoaW5nXG5cbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUGVyIENTUzMgVUksIGByZXNpemVgIG9ubHkgYXBwbGllcyB3aGVuIGBvdmVyZmxvd2AgaXNuJ3QgYHZpc2libGVgXG4gIHJlc2l6ZTogJGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcbn1cbiIsIi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXG4vL1xuLy8gU2VlOiBodHRwczovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50L1xuLy8gU2VlOiBodHRwczovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIFNpemluZyBzaG9ydGN1dHNcblxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0OiAkd2lkdGgpIHtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgc2l6ZSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSAhPSAwIHtcbiAgICBhI3skcGFyZW50fSB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1oaWRlKClgXCIsIFwidjQuMS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFZpc2liaWxpdHlcblxuQG1peGluIGludmlzaWJsZSgkdmlzaWJpbGl0eSkge1xuICB2aXNpYmlsaXR5OiAkdmlzaWJpbGl0eSAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW52aXNpYmxlKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCJAbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG5cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA3LjUlKSwgJGhvdmVyLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEwJSksICRhY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpLCAkYWN0aXZlLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEyLjUlKSkge1xuICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRidG4tYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICAgfVxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogY29sb3IteWlxKCRjb2xvciksICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLCAkYWN0aXZlLWJvcmRlcjogJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBib3gtc2hhZG93OiAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAvLyBNYW51YWxseSBkZWNsYXJlIHRvIHByb3ZpZGUgYW4gb3ZlcnJpZGUgdG8gdGhlIGJyb3dzZXIgZGVmYXVsdFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLCAwKTtcbn1cbiIsIkBtaXhpbiBjYXJldC1kb3duIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0IHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LWxlZnQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXA7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1sZWZ0O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogJG5hdi1kaXZpZGVyLWNvbG9yLCAkbWFyZ2luLXk6ICRuYXYtZGl2aWRlci1tYXJnaW4teSkge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogJG1hcmdpbi15IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XG59XG4iLCIvLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvciwgJGljb24pIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGljb247XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQsICRpY29uICRjdXN0b20tc2VsZWN0LWJnIG5vLXJlcGVhdCAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uIC8gJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC5mb3JtLWNvbnRyb2wtZmlsZSB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAxMCUpO1xuICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKGxpZ2h0ZW4oJGNvbG9yLCAxMCUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY3VzdG9tIGZpbGVcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkYm9yZGVyOiBudWxsKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIge1xuICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcblxuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG4iLCJAbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICRyZXN1bHQ6ICgpO1xuXG4gICAgQGlmIChsZW5ndGgoJHNoYWRvdykgPT0gMSkge1xuICAgICAgLy8gV2UgY2FuIHBhc3MgYEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7YFxuICAgICAgJHJlc3VsdDogJHNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEZpbHRlciB0byBhdm9pZCBpbnZhbGlkIHByb3BlcnRpZXMgZm9yIGV4YW1wbGUgYGJveC1zaGFkb3c6IG5vbmUsIDFweCAxcHggYmxhY2s7YFxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJHNoYWRvdykge1xuICAgICAgICBAaWYgbnRoKCRzaGFkb3csICRpKSAhPSBcIm5vbmVcIiB7XG4gICAgICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIG50aCgkc2hhZG93LCAkaSksIFwiY29tbWFcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGlmIChsZW5ndGgoJHJlc3VsdCkgPiAwKSB7XG4gICAgICBib3gtc2hhZG93OiAkcmVzdWx0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3IpIHtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXg7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xuICAlZ3JpZC1jb2x1bW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgLy8gQWxsb3cgY29sdW1ucyB0byBzdHJldGNoIGZ1bGwgd2lkdGggYmVsb3cgdGhlaXIgYnJlYWtwb2ludHNcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbCN7JGluZml4fSxcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xuICAgICAgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cbiAgICAgIH1cblxuICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuXG4vLyBGb3IgZWFjaCBicmVha3BvaW50LCBkZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgdGhlIGNvbnRhaW5lciBpbiBhIG1lZGlhIHF1ZXJ5XG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkbWF4LXdpZHRocyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGd1dHRlciAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGd1dHRlciAvIDI7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgZmxleDogMCAwIHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG4gIC8vIEFkZCBhIGBtYXgtd2lkdGhgIHRvIGVuc3VyZSBjb250ZW50IHdpdGhpbiBlYWNoIGNvbHVtbiBkb2VzIG5vdCBibG93IG91dFxuICAvLyB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRTEwKyBhbmQgRmlyZWZveC4gQ2hyb21lIGFuZCBTYWZhcmlcbiAgLy8gZG8gbm90IGFwcGVhciB0byByZXF1aXJlIHRoaXMuXG4gIG1heC13aWR0aDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogJHNpemUgLyAkY29sdW1ucztcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQG1peGluIGZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZsb2F0LWxlZnRgIG1peGluXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG5AbWl4aW4gZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmbG9hdC1yaWdodGAgbWl4aW5cIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbkBtaXhpbiBmbG9hdC1ub25lIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmbG9hdC1ub25lYCBtaXhpblwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiXG4vLyBCb2R5XG4kYm9keS1iZzogI2Y1ZjhmYTtcblxuLy8gQm9yZGVyc1xuJGxhcmF2ZWwtYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvZHktYmcsIDEwJSk7XG4kbGlzdC1ncm91cC1ib3JkZXI6ICRsYXJhdmVsLWJvcmRlci1jb2xvcjtcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICRsYXJhdmVsLWJvcmRlci1jb2xvcjtcbiRwYW5lbC1kZWZhdWx0LWJvcmRlcjogJGxhcmF2ZWwtYm9yZGVyLWNvbG9yO1xuJHBhbmVsLWlubmVyLWJvcmRlcjogJGxhcmF2ZWwtYm9yZGVyLWNvbG9yO1xuXG4vLyBCcmFuZHNcbiRicmFuZC1wcmltYXJ5OiAjMUVBQ0Q5O1xuJGJyYW5kLWluZm86ICM4ZWI0Y2I7XG4kYnJhbmQtc3VjY2VzczogIzJhYjI3YjtcbiRicmFuZC13YXJuaW5nOiAjY2JiOTU2O1xuJGJyYW5kLWRhbmdlcjogI0U3M0Y0QjtcbiRicmFuZC1ncmF5OiAjZGVkZWRlO1xuJGJyYW5kLWdyYXktZGFyazogI0EzQTNBMztcbiRicmFuZC1ncmF5LWxpZ2h0OiAjZjJmMmYyO1xuJGJyYW5kLWdyYXktbGlnaHQtMDE6ICNmOGY4Zjg7XG4kYnJhbmQtZ3JheS1saWdodC0wMjogI0Y5RjlGOTtcbiRicmFuZC13aGl0ZTogI2ZmZmZmZjtcbiRicmFuZC1kYXJrOiAjMDAwMDAwO1xuXG4vLyBUeXBvZ3JhcGh5XG4kaWNvbi1mb250LXBhdGg6IFwifmJvb3RzdHJhcC1zYXNzL2Fzc2V0cy9mb250cy9ib290c3RyYXAvXCI7XG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogXCJSYWxld2F5XCIsIHNhbnMtc2VyaWY7XG4kZm9udC1zaXplLWJhc2U6IDE0cHg7XG4kbGluZS1oZWlnaHQtYmFzZTogMS42O1xuJHRleHQtY29sb3I6ICM2MzZiNmY7XG5cbi8vIE5hdmJhclxuJG5hdmJhci1kZWZhdWx0LWJnOiAjZmZmO1xuXG4vLyBCdXR0b25zXG4kYnRuLWRlZmF1bHQtY29sb3I6ICR0ZXh0LWNvbG9yO1xuXG4vLyBJbnB1dHNcbiRpbnB1dC1ib3JkZXI6IGxpZ2h0ZW4oJHRleHQtY29sb3IsIDQwJSk7XG4kaW5wdXQtYm9yZGVyLWZvY3VzOiBsaWdodGVuKCRicmFuZC1wcmltYXJ5LCAyNSUpO1xuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiBsaWdodGVuKCR0ZXh0LWNvbG9yLCAzMCUpO1xuXG4vLyBQYW5lbHNcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICNmZmY7XG5cbi8vQm9yZGVyc1xuJGJyYW5kLWJvcmRlci1saWdodDogI2RlZTJlNjtcbiIsIi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8gRGVmYXVsdCBWYXJpYWJsZXNcblxuLy8gU2xpY2sgaWNvbiBlbnRpdHkgY29kZXMgb3V0cHV0cyB0aGUgZm9sbG93aW5nXG4vLyBcIlxcMjE5MFwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaQXCJcbi8vIFwiXFwyMTkyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpJcIlxuLy8gXCJcXDIwMjJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKAolwiXG5cbiRzbGljay1mb250LXBhdGg6IFwiLi9mb250cy9cIiAhZGVmYXVsdDtcbiRzbGljay1mb250LWZhbWlseTogXCJzbGlja1wiICFkZWZhdWx0O1xuJHNsaWNrLWxvYWRlci1wYXRoOiBcIi4vXCIgIWRlZmF1bHQ7XG4kc2xpY2stYXJyb3ctY29sb3I6IHdoaXRlICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvcjogYmxhY2sgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yLWFjdGl2ZTogJHNsaWNrLWRvdC1jb2xvciAhZGVmYXVsdDtcbiRzbGljay1wcmV2LWNoYXJhY3RlcjogXCJcXDIxOTBcIiAhZGVmYXVsdDtcbiRzbGljay1uZXh0LWNoYXJhY3RlcjogXCJcXDIxOTJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3QtY2hhcmFjdGVyOiBcIlxcMjAyMlwiICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1zaXplOiA2cHggIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1kZWZhdWx0OiAwLjc1ICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktb24taG92ZXI6IDEgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlOiAwLjI1ICFkZWZhdWx0O1xuXG5AZnVuY3Rpb24gc2xpY2staW1hZ2UtdXJsKCR1cmwpIHtcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGltYWdlLXVybCkge1xuICAgICAgICBAcmV0dXJuIGltYWdlLXVybCgkdXJsKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stbG9hZGVyLXBhdGggKyAkdXJsKTtcbiAgICB9XG59XG5cbkBmdW5jdGlvbiBzbGljay1mb250LXVybCgkdXJsKSB7XG4gICAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhmb250LXVybCkge1xuICAgICAgICBAcmV0dXJuIGZvbnQtdXJsKCR1cmwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gdXJsKCRzbGljay1mb250LXBhdGggKyAkdXJsKTtcbiAgICB9XG59XG5cbi8qIFNsaWRlciAqL1xuXG4uc2xpY2stbGlzdCB7XG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmYgc2xpY2staW1hZ2UtdXJsKFwiYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgIH1cbn1cblxuLyogSWNvbnMgKi9cbkBpZiAkc2xpY2stZm9udC1mYW1pbHkgPT0gXCJzbGlja1wiIHtcbiAgICBAZm9udC1mYWNlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgICAgICAgc3JjOiBzbGljay1mb250LXVybChcInNsaWNrLmVvdFwiKTtcbiAgICAgICAgc3JjOiBzbGljay1mb250LXVybChcInNsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgfVxufVxuXG4vKiBBcnJvd3MgKi9cblxuLnNsaWNrLXByZXYsXG4uc2xpY2stbmV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGNvbG9yOiAkc2xpY2stYXJyb3ctY29sb3I7XG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIH1cbn1cblxuLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IC0yNXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAtMjVweDtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zbGljay1uZXh0IHtcbiAgICByaWdodDogLTI1cHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgbGVmdDogLTI1cHg7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogRG90cyAqL1xuXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLnNsaWNrLWRvdHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0yNXB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAkc2xpY2stZG90LWNoYXJhY3RlcjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRzbGljay1kb3Qtc2l6ZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRzbGljay1kb3QtY29sb3I7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICRzbGljay1kb3QtY29sb3ItYWN0aXZlO1xuICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgXCJjb2xvcnNcIjtcbkBpbXBvcnQgXCJ0aGVtZS9hbGxcIjtcbiIsIi50ZXh0LWRhbmdlciB7XG4gIGNvbG9yOiAkYnJhbmQtZGFuZ2VyICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXByaW1hcnkge1xuICBjb2xvcjogJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbn0iLCJAaW1wb3J0IFwibWFpblwiO1xuQGltcG9ydCBcIm1haW4tbW9iaWxlXCI7XG5AaW1wb3J0IFwiaGVhZGVyXCI7XG5AaW1wb3J0IFwibmF2YmFyXCI7XG5AaW1wb3J0IFwiaGVyb1wiO1xuQGltcG9ydCBcImluZm8tYm94XCI7XG5AaW1wb3J0IFwic2xpZGVyXCI7XG5AaW1wb3J0IFwicGFnZS1jb250ZW50XCI7XG5AaW1wb3J0IFwiZm9vdGVyXCI7XG5AaW1wb3J0IFwiZm9ybVwiO1xuQGltcG9ydCBcImFuaW1hdGlvblwiO1xuQGltcG9ydCBcImFsZXJ0XCI7XG5cbkBpbXBvcnQgXCJjb25maWd1cmF0b3IvYWxsXCI7XG5AaW1wb3J0IFwiY2hlY2tvdXQvYWxsXCI7IiwiaHRtbCxcbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmF5O1xuICBmb250LWZhbWlseTogJ1BUIFNhbnMnLCBzYW5zLXNlcmlmO1xuXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4jYXBwIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC13aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uc3BhY2VyIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmRpc3BsYXktbm9uZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIC8vbWF4LXdpZHRoOiAxNDQwcHggIWltcG9ydGFudDtcblxuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgbWFpbiB7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbiAgfVxufSIsIkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcblxuICAuZC1tZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuZC1sZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiAwLjJzO1xuICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuXG4gIC5kLW1kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmQtbGcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zaXRpb246IDAuMnM7XG4gIH1cblxufSIsIi5oZWFkZXItdG9wIHtcbiAgaGVpZ2h0OiAxMjBweDtcblxuICAuaGVhZGVyLWljb24ge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgfVxuXG4gIC5oZWFkZXItaWNvbi10YWcge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAkYnJhbmQtZGFyaztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAubGluay1ib3gge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuaXRlbS1jb3VudGVyIHtcbiAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIHBhZGRpbmc6IDFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIH1cblxuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmhlYWRlci1uYXYge1xuICBoZWlnaHQ6IDUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmF5LWxpZ2h0O1xuICB0cmFuc2l0aW9uOiAwLjJzO1xuXG4gIC5saW5rcy1hcmVhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAubGluay1ib3gge1xuICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cblxuICAgICAgLmxpbmsge1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJGJyYW5kLWRhcms7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtZGFyaztcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmljb24tYXJlYSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy9kcm9wZG93blxuICAgIC5kcm9wZG93bi1jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1ncmF5LWxpZ2h0O1xuICAgICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICAgIHRvcDogNTBweDtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAxMDtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiBibGFjaztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmxpbmstYm94IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWdyYXktZGFyaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5kcm9wZG93bi1saW5rIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbGluazpob3ZlciAuZHJvcGRvd24tY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuY3VzdG9tLWxpbmsge1xuICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmljb24tYXJlYSB7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICRicmFuZC1kYXJrO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmljb24tYm94IHtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hY3RpdmUge1xuICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkYnJhbmQtcHJpbWFyeTtcbiAgfVxufVxuXG4uc3ViLW5hdmJhci1hcmVhIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDE3MHB4O1xuICBtaW4taGVpZ2h0OiAyMjVweDtcbiAgei1pbmRleDogMTtcblxuICAuc3ViLW5hdmJhciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMTBweCAwICFpbXBvcnRhbnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogJGJyYW5kLXdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDFweCAxM3B4IDE4cHggLTE2cHggcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgfVxuXG4gIC50aXRsZSB7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJGJyYW5kLWRhcms7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW1nLWJveCB7XG4gICAgd2lkdGg6IDE5OHB4O1xuICAgIGhlaWdodDogMTQwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZ3JheS1saWdodC0wMTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxufVxuXG4vL1N0aWNreSBTdHlsZXNcbi5zdGlja3kge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTtcbiAgLy96LWluZGV4OiA5OTk5O1xuICBoZWlnaHQ6IDgwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgLmhlYWRlci1uYXYge1xuICAgIGhlaWdodDogODBweCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDBweCAzcHggNnB4IC00cHggcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgICB0cmFuc2l0aW9uOiAwLjRzO1xuICB9XG5cbiAgLmljb24ge1xuICAgIGZvbnQtc2l6ZTogMjVweCAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IDAuNHM7XG4gIH1cblxuICAvL0xvZ2luIHdpbmRvd1xuICAubG9naW4td2luZG93IHtcbiAgICB0b3A6IDgwcHggIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiAwLjRzO1xuICB9XG5cbiAgLnN1Yi1uYXZiYXItYXJlYSB7XG4gICAgdG9wOiA4MHB4ICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogMC40cztcbiAgfVxufVxuXG4vL0xvZ2luIFdpbmRvd1xuLmxvZ2luLXdpbmRvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogJGJyYW5kLWdyYXktbGlnaHQtMDE7XG4gIHotaW5kZXg6IDU7XG4gIGhlaWdodDogMzAwcHg7XG4gIHJpZ2h0OiAzMHB4O1xuICB3aWR0aDogNDAwcHg7XG4gIHRvcDogLTE1cHg7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgLmxvZ2luLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgdG9wOiA4cHg7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGNvbG9yOiAkYnJhbmQtZGFyaztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAuaGVhZGVyLW5hdiB7XG4gICAgLnNlYXJjaC1hcmVhIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuaGVhZGVyLXRvcCB7XG4gICAgaGVpZ2h0OiA4MHB4O1xuICAgIHRvcDogMDtcbiAgICBib3gtc2hhZG93OiAwcHggM3B4IDZweCAtNHB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICRicmFuZC13aGl0ZTtcbiAgICB0cmFuc2l0aW9uOiAwLjRzO1xuICAgIHotaW5kZXg6IDk5O1xuICB9XG5cbiAgLmxvZ2luLXdpbmRvdyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogODBweDtcbiAgfVxuXG4gIC5oZWFkZXItbmF2IHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHotaW5kZXg6IDk4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogNTB2aDtcbiAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtZ3JheS1saWdodC0wMSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IDAuNHM7XG5cbiAgICAuc2VhcmNoLWFyZWEge1xuICAgICAgcGFkZGluZzogMTVweCAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG4gICAgICBjb2xvcjogJGJyYW5kLXdoaXRlO1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgIH1cblxuICAgIC5saW5rcy1hcmVhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICAgIC5saW5rLWJveCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1ncmF5LWxpZ2h0O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgICAgIC5saW5rIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nOiAyNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbi1hcmVhIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nOiAyNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuXG4gICAgICAubGluay1ib3gge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMTBweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAuaGVhZGVyLXRvcCB7XG4gICAgLmxpbmstYm94IHtcbiAgICAgIC5pdGVtLWNvdW50ZXIge1xuICAgICAgICB3aWR0aDogMTJweCAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDEycHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiA4cHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uYXYtdG9wLWFuaW1hdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdHJhbnNpdGlvbjogMC40cztcbiAgfVxuXG4gIC5zdWItbmF2YmFyLWFyZWEge1xuICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcblxuICAgIC5zdWItbmF2YmFyIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjVweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4vL01vYmlsZVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzZweCkge1xuICAuaGVhZGVyLW5hdiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gODBweCk7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuXG4gIC5sb2dpbi13aW5kb3cge1xuICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5zdWItbmF2YmFyLWFyZWEge1xuXG4gICAgLmltZy1ib3gge1xuICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLy9JRSBTdHlsZXMgbW9kaWZpY2F0aW9uXG5AbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmhlcm8tYXJlYSAucHJvZHVjdC1jb25mLWFyZWEgLnByb2R1Y3QtYm94IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5zdGVwcy1hcmVhIHtcbiAgICAuc3RlcHMge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbn0iLCIkY29sb3I6ICNlY2YwZjE7XG5cbiRoZWlnaHQtaWNvbjogMjBweDtcbiR3aWR0aC1saW5lOiAzNXB4O1xuJGhlaWdodC1saW5lOiAycHg7XG5cbiR0cmFuc2l0aW9uLXRpbWU6IDAuNHM7XG4kcm90YXRpb246IDQ1ZGVnO1xuJHRyYW5zbGF0ZVk6ICgkaGVpZ2h0LWljb24gLyAyKTtcbiR0cmFuc2xhdGVYOiAwO1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG5cbiAgLm1vYmlsZS1uYXZiYXItaWNvbiB7XG4gICAgY29sb3I6ICRicmFuZC1kYXJrO1xuICAgIHdpZHRoOiAkd2lkdGgtbGluZTtcbiAgICBoZWlnaHQ6ICRoZWlnaHQtaWNvbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAyNXB4IDVweDtcblxuICAgIC5saW5lIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZDogJGJyYW5kLWRhcms7XG4gICAgICB3aWR0aDogJHdpZHRoLWxpbmU7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQtbGluZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAoJGhlaWdodC1saW5lIC8gMik7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgJHRyYW5zaXRpb24tdGltZTtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsICR0cmFuc2l0aW9uLXRpbWU7XG4gICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi10aW1lO1xuXG4gICAgICAmLmxpbmUtMSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cbiAgICAgICYubGluZS0yIHtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICB9XG4gICAgICAmLmxpbmUtMyB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAubGluZS0xIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR0cmFuc2xhdGVZKSB0cmFuc2xhdGVYKCR0cmFuc2xhdGVYKSByb3RhdGUoJHJvdGF0aW9uKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHRyYW5zbGF0ZVkpIHRyYW5zbGF0ZVgoJHRyYW5zbGF0ZVgpIHJvdGF0ZSgkcm90YXRpb24pO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgkdHJhbnNsYXRlWSkgdHJhbnNsYXRlWCgkdHJhbnNsYXRlWCkgcm90YXRlKCRyb3RhdGlvbik7XG4gICAgICB9XG4gICAgICAubGluZS0yIHtcbiAgICAgICAgLy9vcGFjaXR5OjA7XG4gICAgICAgIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zaXRpb246IDAuMnM7XG4gICAgICB9XG4gICAgICAubGluZS0zIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR0cmFuc2xhdGVZICogLTEpIHRyYW5zbGF0ZVgoJHRyYW5zbGF0ZVgpIHJvdGF0ZSgkcm90YXRpb24gKiAtMSk7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR0cmFuc2xhdGVZICogLTEpIHRyYW5zbGF0ZVgoJHRyYW5zbGF0ZVgpIHJvdGF0ZSgkcm90YXRpb24gKiAtMSk7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR0cmFuc2xhdGVZICogLTEpIHRyYW5zbGF0ZVgoJHRyYW5zbGF0ZVgpIHJvdGF0ZSgkcm90YXRpb24gKiAtMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmhlcm8tYXJlYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy9iYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nLzE0NDBfNTIwLnBuZyk7XG5cbiAgLmhlcm8tYmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuICAgIGltZyB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLnByb2R1Y3QtY29uZi1hcmVhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgLnByb2R1Y3QtYm94IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmF5LWxpZ2h0LTAxO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLWdyYXktbGlnaHQtMDE7XG4gICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgfVxuXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBoZWlnaHQ6IDQ4cHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2ljb25zL2Fycm93LWRvd24ucG5nKSBuby1yZXBlYXQgYm90dG9tIDE1cHggcmlnaHQgOHB4ICNmZmY7XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmJywgc2Fucy1zZXJpZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogOHB4IDIwcHg7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhlcm8tdGV4dCB7XG4gICAgLmhlcm8tdGV4dC1sZywgLmhlcm8tdGV4dC1zbSB7XG4gICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gICAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmIEl0YWxpYycsIHNhbnMtc2VyaWY7XG4gICAgICBwYWRkaW5nOiA5cHggMzBweDtcbiAgICB9XG5cbiAgICAuaGVyby10ZXh0LWxnIHtcbiAgICAgIGNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICAgICAgZm9udC1zaXplOiAzNXB4O1xuICAgICAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZiBCb2xkIEl0YWxpYycsIHNhbnMtc2VyaWY7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgcGFkZGluZzogOXB4IDMwcHg7XG4gICAgfVxuICB9XG5cbiAgLy9IZXJvLUFyZWEgTEFSR0VcbiAgJi5oZXJvLWFyZWEtbGcge1xuICAgIGhlaWdodDogNTIwcHg7XG5cbiAgICAuaGVyby10ZXh0IHtcbiAgICAgIC5oZXJvLXRleHQtbGcge1xuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy9IZXJvLUFyZWEgU01BTExcbiAgJi5oZXJvLWFyZWEtbWQge1xuICAgIGhlaWdodDogNDQwcHg7XG5cbiAgICAuaGVyby10ZXh0IHtcbiAgICAgIC5oZXJvLXRleHQtc20ge1xuICAgICAgICBwYWRkaW5nOiAycHggMzBweCA5cHggMzBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cbi5zdWItaGVybyB7XG4gIGhlaWdodDogMTUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmF5LWxpZ2h0O1xuXG4gIC5oZWFkaW5nIHtcbiAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmIEl0YWxpYycsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuXG4gICAgJi5kYW5nZXIge1xuICAgICAgY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gICAgfVxuICB9XG5cbiAgLnN0ZXBzLWFyZWEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5zdGVwcyB7XG4gICAgICAuc3RlcC1pY29uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJGJyYW5kLWRhbmdlcjtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgICAgICYubGFyZ2Uge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYm9yZGVyIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLWRhbmdlciAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAuc3RlcC1uYW1lIHtcbiAgICAgICAgbWFyZ2luOiAwLjVyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmhlcm8tYm90dG9tLXNtIHtcbiAgaGVpZ2h0OiAyODBweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4vaW1nL3NhbXBsZS9iZWRyb29tLnBuZyk7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgLnRpdGxlIHtcbiAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDIwcHg7XG5cbiAgICAuaXMtaXRhbGljIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnUFQgU2VyaWYgYm9sZCBJdGFsaWMnLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmNvbnRlbnQge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICBjb2xvcjogJGJyYW5kLXdoaXRlO1xuXG4gICAgLmljb24tYm94IHtcbiAgICAgIGhlaWdodDogNTBweDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaGVyby1ib3R0b20tbGcge1xuICBoZWlnaHQ6IDUwMHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi9pbWcvc2FtcGxlL2luc3RydWN0aW9uX2Jhbm5lci5wbmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gIC5jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgY29sb3I6ICRicmFuZC13aGl0ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAwIDZyZW07XG5cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnUFQgU2VyaWYnLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgLmljb24tYm94IHtcbiAgICAgICAgcGFkZGluZzogMCAycmVtO1xuXG4gICAgICAgIC5pY29uLWFyZWEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDM1cHg7XG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vVGFibGV0XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5oZXJvLWFyZWEge1xuICAgICYuaGVyby1hcmVhLWxnIHtcbiAgICAgIGhlaWdodDogNzAwcHg7XG5cbiAgICAgIC5oZXJvLWJnIHtcbiAgICAgICAgaGVpZ2h0OiA0MjBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogMC40cztcbiAgICAgIH1cblxuICAgICAgLmhlcm8tdGV4dC1hcmVhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNjVweCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zdWItaGVybyB7XG4gICAgLnN0ZXBzLWFyZWEge1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5oZXJvLWJvdHRvbS1sZyB7XG4gICAgaGVpZ2h0OiA0NjVweDtcblxuICAgIC5jb250ZW50IHtcbiAgICAgIC5jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy9Nb2JpbGVcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTc2cHgpIHtcblxuICAuaGVyby1hcmVhIHtcblxuICAgICYuaGVyby1hcmVhLWxnIHtcbiAgICAgIC5oZXJvLWJnIHtcbiAgICAgICAgaGVpZ2h0OiAzNTBweCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xuICAgICAgfVxuXG4gICAgICAuaGVyby10ZXh0LWFyZWEge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMDBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LWNvbmYtYXJlYSB7XG4gICAgICBwYWRkaW5nOiAxMDBweCAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICB0cmFuc2l0aW9uOiAwLjRzO1xuXG4gICAgICAucHJvZHVjdC1ib3gge1xuICAgICAgICAucHJvZHVjdC1zaXplIHtcblxuICAgICAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmxhYmVsLWFyZWEge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oZXJvLXRleHQtYXJlYSB7XG4gICAgICBwYWRkaW5nOiAwIDI1cHg7XG5cbiAgICAgIC5oZXJvLXRleHQtc20ge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIHBhZGRpbmc6IDhweCAzMHB4O1xuICAgICAgfVxuXG4gICAgICAuaGVyby10ZXh0LWxnIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zdWItaGVybyB7XG4gICAgaGVpZ2h0OiA0MjBweDtcbiAgICBwYWRkaW5nOiAxcmVtO1xuXG4gICAgLmhlYWRpbmcge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5zdGVwcy1hcmVhIHtcbiAgICAgIHBhZGRpbmc6IDAgMTVweCAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgICAgLnN0ZXBzIHtcbiAgICAgICAgLnN0ZXAtbmFtZSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5tYWluLXBhZ2Uge1xuICAgICAgbWFyZ2luLXRvcDogMTAwcHg7XG4gICAgfVxuICB9XG5cbiAgLmhlcm8tYm90dG9tLXNtIHtcbiAgICBoZWlnaHQ6IDU1MHB4O1xuICB9XG5cbiAgLmhlcm8tYm90dG9tLWxnIHtcbiAgICBoZWlnaHQ6IDYwMHB4O1xuXG4gICAgLmNvbnRlbnQge1xuICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyM3B4O1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uLWJveCB7XG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDhweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuaWNvbi1hcmVhIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy9JRSBTdHlsZXMgbW9kaWZpY2F0aW9uXG5AbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6bm9uZSlcbntcbiAgLmllLW1hcmdpbi1sLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxufSIsIi5pbmZvLWFyZWEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmluZm8tYnRuIHtcbiAgICBtYXJnaW4tdG9wOiA2OHB4O1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGNvbG9yOiAkYnJhbmQtd2hpdGU7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmIEJvbGQgSXRhbGljJywgc2Fucy1zZXJpZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgLmluZm8tYm94IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICB0b3A6LTQwcHg7XG4gIH1cblxuICAuZGV0YWlscyB7XG4gICAgY29sb3I6ICRicmFuZC13aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBoZWlnaHQ6IDE5NXB4O1xuICAgIHdpZHRoOiAyNTBweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIGJ1dHRvbiB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJGJyYW5kLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA4cHggMjBweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59IiwiLnNsaWRlci10b3Age1xuICBtYXJnaW4tdG9wOiA1cmVtO1xuICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuXG4gIC50ZXh0LWFyZWEge1xuICAgIHBhZGRpbmc6IDAgNXJlbSAwIDNyZW07XG5cbiAgICAuaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmIEl0YWxpYycsIHNhbnMtc2VyaWY7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuXG4gICAgICBzdHJvbmcge1xuICAgICAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmIEJvbGQgSXRhbGljJywgc2Fucy1zZXJpZjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZGV0YWlscyB7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgIGNvbG9yOiAkYnJhbmQtZ3JheS1kYXJrO1xuICAgIH1cblxuICAgIC5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRicmFuZC1wcmltYXJ5O1xuICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZicsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDE1cHggMzBweDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnByb2R1Y3Qtc2xpZGVyIHtcbiAgaGVpZ2h0OiA1NTBweDtcblxuICAuc2xpZGVyLWNvbCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC5yb3VuZGVkIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIGg2IHtcbiAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC5jb25maWctYnV0dG9uIHtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA4cHggMjBweDtcbiAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmJywgc2Fucy1zZXJpZjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGJyYW5kLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLnNsaWRlci1idG4ge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gIH1cblxuICAvL1NsaWNrU2xpZGVyXG4gIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAtMzBweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAtMjBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vQ29uZmlndXJhdGlvbiBTbGlkZXJcbi5jb25maWd1cmF0aW9uLXNsaWRlciB7XG4gIGhlaWdodDogNDgwcHg7XG5cbiAgLnNsaWRlci1jb2wge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuY29uZmlnLWJ1dHRvbiB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC13aGl0ZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogOHB4IDIwcHg7XG4gICAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZicsIHNhbnMtc2VyaWY7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICRicmFuZC13aGl0ZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5jb25maWctc2xpZGVyLW5hdiB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRicmFuZC1ib3JkZXItbGlnaHQ7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRicmFuZC1ib3JkZXItbGlnaHQ7XG5cbiAgICAvL1NsaWNrU2xpZGVyXG4gICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmF5LWxpZ2h0O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGJyYW5kLWJvcmRlci1saWdodDtcbiAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICB9XG5cbiAgICAuc2xpY2stY3VycmVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNsaWNrLXByZXYge1xuICAgICAgbGVmdDogOHB4ICFpbXBvcnRhbnQ7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLnNsaWRlci1pbWctYXJlYSB7XG5cbiAgICAuc2xpZGVyLWltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNDAwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluLCBjb3ZlcjtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtYXJlYSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvdHRvbTogLTE1cHg7XG5cbiAgICAuaW5wdXQtZm9ybS1hcmVhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZ3JheS1saWdodC0wMTtcbiAgICAgIHdpZHRoOiA3NSU7XG4gICAgICBoZWlnaHQ6IDEzNXB4O1xuICAgIH1cblxuICAgIC8vZm9ybSBzdHlsZXNcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogNDVweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG5cbiAgICBidXR0b24ge1xuICAgICAgbWFyZ2luLXRvcDogMzFweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZicsIHNhbnMtc2VyaWY7XG4gICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDhweCAyMHB4O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vL1Rlc3RpbW9uaWFscy1TbGlkZXJcbi50ZXN0aW1vbmlhbC1zbGlkZXIge1xuICBtYXJnaW46IDVyZW0gOHJlbSAzcmVtIDhyZW07XG5cbiAgLnByb2ZpbGUtYXJlYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLnRlc3RpbW9uaWFsIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgcGFkZGluZzogMCAxMHJlbTtcbiAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAzNXB4O1xuICAgICAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmJywgc2Fucy1zZXJpZjtcblxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUFQgU2VyaWYgQm9sZCBJdGFsaWMnLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZmlsZS1waWMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMzUwcHg7XG4gICAgICAgIGhlaWdodDogMzUwcHg7XG5cbiAgICAgICAgbWFzay1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAxKSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gICAgICAgIC13ZWJraXQtbWFzay1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbShyZ2JhKDAsIDAsIDAsIDEpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9maWxlLWRldGFpbHMge1xuICAgICAgbWFyZ2luOiA1cmVtIDA7XG5cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtZ3JheS1kYXJrO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vU2xpY2sgU2xpZGVyIE1vZGlmaWNhdGlvbnNcbi5zbGljay1wcmV2LCAuc2xpY2stbmV4dCB7XG4gIHRvcDogNDIlICFpbXBvcnRhbnQ7XG59XG5cbi5zbGljay1wcmV2OmJlZm9yZSwgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBmb250LWZhbWlseTogJ0xpbmVBd2Vzb21lJywgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xufVxuXG4uc2xpY2stcHJldjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzNcIjtcbn1cblxuLnNsaWNrLW5leHQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjc0XCI7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnNsaWRlci10b3Age1xuICAgIC50ZXh0LWFyZWEge1xuICAgICAgcGFkZGluZzogMCAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICB0cmFuc2l0aW9uOiAwLjRzO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1hcmVhIHtcbiAgICAuaW5wdXQtZm9ybS1hcmVhIHtcbiAgICAgIGhlaWdodDogMTg1cHggIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcblxuICAgICAgLmJ1dHRvbi1hcmVhIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGVzdGltb25pYWwtc2xpZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICBtYXJnaW46IDVyZW0gMCAwIDAgIWltcG9ydGFudDtcblxuICAgIC5wcm9maWxlLWFyZWEge1xuICAgICAgLnRlc3RpbW9uaWFsIHtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3R0b206IC00MHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC40cztcbiAgICAgIH1cblxuICAgICAgLnByb2ZpbGUtcGljIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9maWxlLWRldGFpbHMge1xuICAgICAgLnRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5zbGlkZXItdG9wIHtcbiAgICBwYWRkaW5nOiAwIDMwcHggIWltcG9ydGFudDtcblxuICAgIC5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0LXNsaWRlciB7XG4gICAgaGVpZ2h0OiA2MDBweDtcbiAgfVxuXG4gIC5pbnB1dC1hcmVhIHtcbiAgICAuaW5wdXQtZm9ybS1hcmVhIHtcbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiA5NSUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy9JRSBTdHlsZXMgbW9kaWZpY2F0aW9uXG5AbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLmlucHV0LWFyZWEge1xuICAgIC5pbnB1dC1mb3JtLWFyZWEge1xuICAgICAgLnJvdy1pZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5wcmltYXJ5LXRpdGxlIHtcbiAgbWFyZ2luOiA1cmVtIGF1dG87XG4gIHBhZGRpbmc6IDAgMTVyZW07XG5cbiAgLnRpdGxlLWFyZWEge1xuICAgIGgzIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtZmFtaWx5OiAnUFQgU2VyaWYnLCBzYW5zLXNlcmlmO1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtZmFtaWx5OiAnUFQgU2VyaWYgQm9sZCcsIHNhbnMtc2VyaWY7XG4gICAgfVxuICAgIC5zdWItdGl0bGUge1xuICAgICAgY29sb3I6ICRicmFuZC1ncmF5LWRhcms7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi5mdW5jdGlvbi1wYWdlLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmF5LWxpZ2h0O1xuICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG5cbiAgLnByaW1hcnktdGl0bGUge1xuICAgIG1hcmdpbjogN3JlbSBhdXRvO1xuICB9XG5cbiAgaDIge1xuICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogJGJyYW5kLWRhcms7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICB9XG4gIH1cbn1cblxuLnNlYXJjaCB7XG4gIC5zZWFyY2gtaGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogN3JlbSAwO1xuXG4gICAgLnRpdGxlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnUFQgU2VyaWYnLCBzYW5zLXNlcmlmO1xuXG4gICAgICBzdHJvbmcge1xuICAgICAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmIEJvbGQnLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmlucHV0LWFyZWEge1xuXG4gICAgICAuYnRuLWFyZWEge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgLmZhIHtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaW5wdXQge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkYnJhbmQtZGFyaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZvbnQtc2l6ZTogNnJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1LjJyZW07XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbi1lbWsge1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG4gIH1cbn1cblxuLnByb2R1Y3RzIHtcbiAgLmJveC1sZWZ0IHtcbiAgICBoZWlnaHQ6IDM4MHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwczovL2ltYWdlcy51bnNwbGFzaC5jb20vcGhvdG8tMTUyMzc1NTIzMTUxNi1lNDNmZDJlOGRjYTU/YXV0bz1mb3JtYXQmZml0PWNyb3Amdz03NTAmcT04MFwiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmJveC1yaWdodCB7XG4gICAgaGVpZ2h0OiA1ODBweCAhaW1wb3J0YW50O1xuXG4gICAgLmJnLWFyZWEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHBzOi8vaW1hZ2VzLnVuc3BsYXNoLmNvbS9waG90by0xNDk5OTMzMzc0Mjk0LTQ1ODQ4NTE0OTdjYz9hdXRvPWZvcm1hdCZmaXQ9Y3JvcCZ3PTc1MCZxPTgwXCIpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICB9XG4gIH1cblxuICBoMyB7XG4gICAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZiBJdGFsaWMnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBjb2xvcjogJGJyYW5kLXdoaXRlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gIH1cblxuICAuYnRuLWFyZWEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDE1cHg7XG4gICAgcmlnaHQ6IDE1cHg7XG5cbiAgICBidXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkYnJhbmQtd2hpdGU7XG4gICAgICBjb2xvcjogJGJyYW5kLXdoaXRlO1xuICAgICAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZicsIHNhbnMtc2VyaWY7XG4gICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA4cHggMjBweDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC13aGl0ZTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNlbGVjdGlvbiB7XG4gIG1hcmdpbi10b3A6IDVyZW07XG4gIG1hcmdpbi1ib3R0b206IDVyZW07XG5cbiAgaDMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmJywgc2Fucy1zZXJpZjtcbiAgICBsaW5lLWhlaWdodDogNDZweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRpdGxlLWFyZWEge1xuICAgIHBhZGRpbmc6IDAgMTVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLnN1Yi10aXRsZSB7XG4gICAgY29sb3I6ICRicmFuZC1ncmF5LWRhcms7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuXG4gIHNlbGVjdCB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8vcHJvZHVjdHNcbiAgJi5wcm9kdWN0LXNlbGVjdGlvbiB7XG4gICAgaDMge1xuICAgICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGJyYW5kLWRhbmdlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZiBCb2xkIEl0YWxpYycsIHNhbnMtc2VyaWY7XG4gICAgICBjb2xvcjogcmVkO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHJlZDtcbiAgICB9XG4gIH1cblxuICAvL2luc3RydWN0aW9uc1xuICAmLmluc3RydWN0aW9uLXNlbGVjdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWdyYXktbGlnaHQ7XG5cbiAgICBoMyB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8uc2VsZWN0IHtcbiAgICAvLyAgaGVpZ2h0OiA0MHB4O1xuICAgIC8vICB3aWR0aDogMTAwJTtcbiAgICAvLyAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvLyAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgLy8gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAvL1xuICAgIC8vICAmOmFmdGVyIHtcbiAgICAvLyAgICBjb250ZW50OiBcIuKWvFwiO1xuICAgIC8vICAgIHBhZGRpbmc6IDEycHggOHB4O1xuICAgIC8vICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyAgICByaWdodDogMTBweDtcbiAgICAvLyAgICB0b3A6IDA7XG4gICAgLy8gICAgei1pbmRleDogMTtcbiAgICAvLyAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLy8gICAgd2lkdGg6IDEwJTtcbiAgICAvLyAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLy8gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLy8gIH1cbiAgICAvL31cblxuICAgIHNlbGVjdCB7XG4gICAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmJywgc2Fucy1zZXJpZjtcbiAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYnJhbmQtcHJpbWFyeTtcbiAgICB9XG5cbiAgICAucHJvZHVjdHMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXdoaXRlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmluc3RydWN0aW9uLWZhcSB7XG4gIHBhZGRpbmc6IDAgMTByZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICB9XG59XG5cbi8vQ29udGFjdEJhci1CbHVlXG4uY29udGFjdC1hcmVhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgaGVpZ2h0OiA4MHB4O1xuXG4gIC5jb250YWN0LWVsZW1lbnQtYXJlYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmNvbnRhY3QtZWxlbWVudCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG5cbiAgICAgIC5mYS1sZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IC0yNSU7XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmNvbnRhY3QtdG9wIHtcbiAgICAuY29udGFjdC1lbGVtZW50LWFyZWEge1xuICAgICAgLmNvbnRhY3QtZWxlbWVudCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBlbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGJyYW5kLXdoaXRlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAmLmNvbnRhY3QtYm90dG9tIHtcbiAgICAuY29udGFjdC1lbGVtZW50LWFyZWEge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLmJ1dHRvbi1hcmVhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBidXR0b24ge1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC13aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogOHB4IDIwcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC13aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGluay1idXR0b24ge1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC13aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogOHB4IDIwcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuLmNvbnRhY3QtZm9ybS1hcmVhIHtcbiAgbWFyZ2luOiAzcmVtIGF1dG8gNXJlbSBhdXRvO1xuICBwYWRkaW5nOiAwIDEwcmVtO1xuXG4gIHRleHRhcmVhIHtcbiAgICAmLmZvcm0tY29udHJvbCB7XG4gICAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAudXBsb2FkLWFyZWEge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgICAuaW5wdXQtYXJlYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgc21hbGwge1xuICAgICAgICBjb2xvcjogJGJyYW5kLWdyYXktZGFyaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnV0dG9uLWFyZWEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi5mYXEtYXJlYSB7XG4gIC5mYXEtZWxlbWVudHMge1xuICAgIC5zcGFjZXIge1xuICAgICAgbWFyZ2luLXRvcDogLTEzMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDEzMHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgc2VjdGlvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZ3JheS1saWdodDtcbiAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXJlbTtcbiAgICAgIH1cblxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZicsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcblxuICAgICAgICAuZmEge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgZm9udC1zaXplOiAzNXB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5xdWVzdGlvbiB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uLWJveCB7XG4gICAgICAgICAgd2lkdGg6IDMlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQtYm94IHtcbiAgICAgICAgICB3aWR0aDogOTUlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5hbnN3ZXIge1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMlO1xuICAgICAgfVxuXG4gICAgICBhcnRpY2xlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZmFxLW5hdiB7XG4gICAgLmJvcmRlciB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIG9sIHtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtZGFyaztcblxuICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udGVzdGltb25pYWwtYXJlYSB7XG4gIGJhY2tncm91bmQ6ICRicmFuZC1ncmF5LWxpZ2h0LTAyO1xuICBwYWRkaW5nOiAzcmVtIDE1cHg7XG5cbiAgLmJ0bi1hcmVhIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgLnRlc3RpbW9uaWFsLWNvbGxhZ2Uge1xuICAgIC8vLXdlYmtpdC1tYXNrOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKGJsYWNrKSwgdG8ocmdiYSgwLCAwLCAwLCAwLjEpKSk7XG4gICAgLy9tYXNrOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKGJsYWNrKSwgdG8ocmdiYSgwLCAwLCAwLCAwLjEpKSk7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogNXB4O1xuICAgICAgbGVmdDogMjdweDtcbiAgICAgIHJpZ2h0OiAyN3B4O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCB3aGl0ZSAxMDAlKTtcbiAgICB9XG5cbiAgICAuZmxleC1jb2x1bW4ge1xuICAgICAgbWF4LXdpZHRoOiAzMiU7XG4gICAgfVxuXG4gICAgLmltZy1hcmVhIHtcbiAgICAgIG1hcmdpbjogNXB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAudGVzdGltb25pYWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzMSwgNjMsIDc1LCAwLjgpO1xuICAgICAgICBjb2xvcjogJGJyYW5kLXdoaXRlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogMC40cztcblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0zNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC50ZXN0aW1vbmlhbCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuLy9Vc2VyIENvbnRhaW5lclxuLnVzZXItY29udGFpbmVyIHtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDMwMHB4KTtcblxuICAubmF2aWdhdGlvbi1hcmVhIHtcbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGJyYW5kLWRhcms7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vVGFibGV0XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG5cbiAgLnByaW1hcnktdGl0bGUge1xuICAgIHBhZGRpbmc6IDVyZW0gMTVweDtcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cblxuICAucHJvZHVjdHMge1xuICAgIC5ib3gtcmlnaHQge1xuICAgICAgaGVpZ2h0OiAzODBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgdHJhbnNpdGlvbjogMC4ycztcbiAgICB9XG5cbiAgICAuYnRuLWFyZWEge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgICAgdHJhbnNpdGlvbjogMC4ycztcbiAgICB9XG5cbiAgfVxuXG4gIC5zZWxlY3Rpb24ge1xuICAgIC50aXRsZS1hcmVhIHtcbiAgICAgIHBhZGRpbmc6IDAgMnJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYucHJvZHVjdC1zZWxlY3Rpb24ge1xuICAgICAgLmN1c3RvbS1jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnN0cnVjdGlvbi1mYXEge1xuICAgIHBhZGRpbmc6IDAgM3JlbTtcbiAgfVxuXG4gIC5jb250YWN0LWZvcm0tYXJlYSB7XG4gICAgcGFkZGluZzogMCAycmVtO1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcblxuICAgIC5idXR0b24tYXJlYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuXG4gICAgICBidXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50ZXN0aW1vbmlhbC1hcmVhIHtcbiAgICAudGVzdGltb25pYWwtY29sbGFnZSB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICByaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mYXEtYXJlYSB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgLmZhcS1lbGVtZW50cyB7XG4gICAgICBzZWN0aW9uIHtcbiAgICAgICAgLnF1ZXN0aW9uIHtcbiAgICAgICAgICAuaWNvbi1ib3gge1xuICAgICAgICAgICAgd2lkdGg6IDEwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICAudGV4dC1ib3gge1xuICAgICAgICAgICAgd2lkdGg6IDkwJSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hbnN3ZXIge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY29udGFjdC1lbGVtZW50LWFyZWEge1xuICAgIC5jb250YWN0LWVsZW1lbnQge1xuICAgICAgLmZhLWxnIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IC0yMCUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG4vL01vYmlsZVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzZweCkge1xuICAucHJvZHVjdHMge1xuICAgIHBhZGRpbmc6IDAgMzVweCAhaW1wb3J0YW50O1xuXG4gICAgLmJveC1yaWdodCwgLmJveC1sZWZ0IHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYnRuLWFyZWEge1xuICAgICAgYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgLnNlbGVjdGlvbiB7XG4gICAgLnN1Yi10aXRsZSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwIDEuOHJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5jb250YWN0LWFyZWEge1xuXG4gICAgJi5jb250YWN0LXRvcCB7XG4gICAgICBoZWlnaHQ6IDEyMHB4O1xuXG4gICAgICAudGV4dC1hcmVhIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICAuY29udGFjdC1lbGVtZW50LWFyZWEge1xuICAgICAgICAuY29udGFjdC1lbGVtZW50IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNvbnRhY3QtYm90dG9tIHtcbiAgICAgIGhlaWdodDogMjIwcHg7XG5cbiAgICAgIC5jb250YWN0LWVsZW1lbnQtYXJlYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIC5jb250YWN0LWVsZW1lbnQge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5idXR0b24tYXJlYSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5jb250YWN0LWZvcm0tYXJlYSB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZhcS1hcmVhIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIC5mYXEtZWxlbWVudHMge1xuICAgICAgc2VjdGlvbiB7XG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiZm9vdGVyIHtcbiAgLnBheW1lbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmF5LWxpZ2h0O1xuICAgIGhlaWdodDogODBweDtcblxuICAgIC5wYXltZW50LWljb24ge1xuICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmxpbmstYXJlYSB7XG5cbiAgICAubGluay1jYXQge1xuICAgICAgLnRpdGxlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZiBCb2xkIEl0YWxpYycsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIH1cblxuICAgICAgLmljb24tYXJlYSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjVweDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ncmF5LWRhcms7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLWRhcms7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRleHQtYXJlYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWdyYXktbGlnaHQ7O1xuXG4gICAgLnRpdGxlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnUFQgU2VyaWYgQm9sZCBJdGFsaWMnLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cblxuICAgIC50ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGNvbG9yOiAkYnJhbmQtZ3JheS1kYXJrO1xuICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmxpbmstYXJlYSB7XG4gICAgLmxpbmstY2F0IHtcblxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB9XG5cbiAgICAgIC5pY29uLWFyZWEge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHRyYW5zaXRpb246IDAuNHM7XG5cbiAgICAgICAgJi5yb3RhdGUge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmZvcm0tY29udHJvbCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiA0OHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5idXR0b24tZW1rIHtcbiAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZicsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAkYnJhbmQtd2hpdGUgIWltcG9ydGFudDs7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogOHB4IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC13aGl0ZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmLmhhcy1ib3JkZXIge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC13aGl0ZSAhaW1wb3J0YW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4uYnV0dG9uLWVtay13aGl0ZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXdoaXRlICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAkYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiA4cHggMjBweDtcbiAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZicsIHNhbnMtc2VyaWY7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkYnJhbmQtd2hpdGUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vL0NvbnRhY3RQYWdlXG4uY29udGFjdC1maWxlLWF0dGFjaG1lbnQge1xuICAuaW5wdXRmaWxlIHtcbiAgICB3aWR0aDogMC4xcHg7XG4gICAgaGVpZ2h0OiAwLjFweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgbGFiZWwge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4uZW1rLWNoZWNrYm94IHtcbiAgLmNoZWNrYm94LWFyZWEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuXG4gICAgLmN1c3RvbS1jaGVja2JveCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5jdXN0b20tY2hlY2tib3ggKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgYm9yZGVyOiA3cHggc29saWQgJHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNoZWNrYm94OmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIH1cbiAgfVxuXG4gIC5kZXRhaWwtYXJlYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmRldGFpbHMge1xuICAgICAgLnRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmJywgc2Fucy1zZXJpZjtcbiAgICAgIH1cbiAgICAgIC5pbmZvcyB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtZ3JheS1kYXJrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8vY2hlY2sgQW5pbWF0aW9uXG4uc3VjY2Vzcy1jaGVja21hcmsge1xuICB3aWR0aDogODBweDtcbiAgaGVpZ2h0OiAxMTVweDtcbiAgbWFyZ2luOiAwIGF1dG87XG5cbiAgLmNoZWNrLWljb24ge1xuICAgIHdpZHRoOiA4MHB4O1xuICAgIGhlaWdodDogODBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIC8vYm9yZGVyOiA0cHggc29saWQgIzRDQUY1MDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDNweDtcbiAgICAgIGxlZnQ6IC0ycHg7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHggMCAwIDEwMHB4O1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgNTAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAxMDBweCAxMDBweCAwO1xuICAgICAgYW5pbWF0aW9uOiByb3RhdGUtY2lyY2xlIDQuMjVzIGVhc2UtaW47XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgfVxuXG4gICAgLmljb24tbGluZSB7XG4gICAgICBoZWlnaHQ6IDVweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0Q0FGNTA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDEwO1xuXG4gICAgICAmLmxpbmUtdGlwIHtcbiAgICAgICAgdG9wOiA0NnB4O1xuICAgICAgICBsZWZ0OiAxNHB4O1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICBhbmltYXRpb246IGljb24tbGluZS10aXAgMC43NXM7XG4gICAgICB9XG5cbiAgICAgICYubGluZS1sb25nIHtcbiAgICAgICAgdG9wOiAzOHB4O1xuICAgICAgICByaWdodDogOHB4O1xuICAgICAgICB3aWR0aDogNDdweDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgYW5pbWF0aW9uOiBpY29uLWxpbmUtbG9uZyAwLjc1cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaWNvbi1jaXJjbGUge1xuICAgICAgdG9wOiAtNHB4O1xuICAgICAgbGVmdDogLTRweDtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgIC8vYm9yZGVyOiA0cHggc29saWQgcmdiYSg3NiwgMTc1LCA4MCwgLjUpO1xuICAgIH1cblxuICAgIC5pY29uLWZpeCB7XG4gICAgICB0b3A6IDhweDtcbiAgICAgIHdpZHRoOiA1cHg7XG4gICAgICBsZWZ0OiAyNnB4O1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGhlaWdodDogODVweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGUtY2lyY2xlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIH1cbiAgNSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIH1cbiAgMTIlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDA1ZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDA1ZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGljb24tbGluZS10aXAge1xuICAwJSB7XG4gICAgd2lkdGg6IDA7XG4gICAgbGVmdDogMXB4O1xuICAgIHRvcDogMTlweDtcbiAgfVxuICA1NCUge1xuICAgIHdpZHRoOiAwO1xuICAgIGxlZnQ6IDFweDtcbiAgICB0b3A6IDE5cHg7XG4gIH1cbiAgNzAlIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBsZWZ0OiAtOHB4O1xuICAgIHRvcDogMzdweDtcbiAgfVxuICA4NCUge1xuICAgIHdpZHRoOiAxN3B4O1xuICAgIGxlZnQ6IDIxcHg7XG4gICAgdG9wOiA0OHB4O1xuICB9XG4gIDEwMCUge1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGxlZnQ6IDE0cHg7XG4gICAgdG9wOiA0NXB4O1xuICB9XG59XG5cbkBrZXlmcmFtZXMgaWNvbi1saW5lLWxvbmcge1xuICAwJSB7XG4gICAgd2lkdGg6IDA7XG4gICAgcmlnaHQ6IDQ2cHg7XG4gICAgdG9wOiA1NHB4O1xuICB9XG4gIDY1JSB7XG4gICAgd2lkdGg6IDA7XG4gICAgcmlnaHQ6IDQ2cHg7XG4gICAgdG9wOiA1NHB4O1xuICB9XG4gIDg0JSB7XG4gICAgd2lkdGg6IDU1cHg7XG4gICAgcmlnaHQ6IDBweDtcbiAgICB0b3A6IDM1cHg7XG4gIH1cbiAgMTAwJSB7XG4gICAgd2lkdGg6IDQ3cHg7XG4gICAgcmlnaHQ6IDhweDtcbiAgICB0b3A6IDM4cHg7XG4gIH1cbn0iLCIuYWxlcnQtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIC5hbGVydCB7XG4gICAgYmFja2dyb3VuZDogJGJyYW5kLWdyYXktbGlnaHQgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlcjogMDtcbiAgICB3aWR0aDogNjAlO1xuXG4gICAgJi5hbGVydC1kYW5nZXIge1xuICAgICAgY29sb3I6ICRicmFuZC1kYW5nZXIgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn0iLCIuY29uZmlndXJhdG9yLXdyYXBwZXIge1xuICBAaW1wb3J0IFwiLi4vaGVhZGVyLXN0ZXBzXCI7XG4gIEBpbXBvcnQgXCJtYWluXCI7XG4gIEBpbXBvcnQgXCJncmFwaGljXCI7XG4gIEBpbXBvcnQgXCJzaWRlYmFyXCI7XG4gIEBpbXBvcnQgXCJ0aGVtZS93YXJkcm9iZVwiO1xufVxuXG4uc2VsZWN0ZWRIYW5kbGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMUVBQ0Q5O1xufVxuXG4uY3Vyc29yLXBvaW50ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59IiwiLmhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmF5LWxpZ2h0O1xuICBoZWlnaHQ6IDE1MHB4O1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gIC5zdGVwcy1jb250YWluZXIge1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC5zdGVwcyB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgIC5zdGVwLWJveCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0yNXB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0yNXB4O1xuXG4gICAgICAgIC5zdGVwLWljb24ge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLWdyYXktbGlnaHQ7XG4gICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRTczRjRCICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLWRhbmdlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuYm9yZGVyLWFyZWEge1xuICAgICAgICB3aWR0aDogMTUwcHg7XG5cbiAgICAgICAgaHIge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRicmFuZC1kYW5nZXIgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuaGVhZGVyIHtcbiAgICBoZWlnaHQ6IDkwcHg7XG5cbiAgICAuc3RlcHMtY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiA5MCU7XG5cbiAgICAgIC5zdGVwcyB7XG4gICAgICAgIC5zdGVwLW5hbWUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuYm9yZGVyLWFyZWEge1xuICAgICAgICAgIGhyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIucGFnZS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZicsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbi1ib3R0b206IDVyZW07XG59XG5cbi5jb25maWd1cmF0b3Ige1xuICAucHJpY2UtYm94IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICB9XG5cbiAgLm1lYXN1cmVtZW50LWFyZWEsIC5zaWRlYmFyLXJpZ2h0IHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuXG4gICAgLnRpdGxlIHtcbiAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG5cbiAgICAuYnRuLWVtay1jb25maWcge1xuICAgICAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZicsIHNhbnMtc2VyaWY7XG4gICAgICBjb2xvcjogJGJyYW5kLXdoaXRlICFpbXBvcnRhbnQ7O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC13aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkYnJhbmQtcHJpbWFyeSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuLWVtay1jb25maWctZGFuZ2VyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnUFQgU2VyaWYnLCBzYW5zLXNlcmlmO1xuICAgICAgY29sb3I6ICRicmFuZC13aGl0ZSAhaW1wb3J0YW50OztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1kYW5nZXIgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC1kYW5nZXIgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZC1kYW5nZXIgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICRicmFuZC1kYW5nZXIgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaW5mby1idG4ge1xuICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNHJlbTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAuaW5wdXQtYXJlYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZ3JheS1saWdodDtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgIH1cblxuICAgIGZvcm0ge1xuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgIH1cblxuICAgICAgLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gICAgICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYWRkLWVsZW1lbnQtYnRuIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmF5LWxpZ2h0O1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgLmJ0biB7XG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXI6IDA7XG5cbiAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIGg2IHtcbiAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNhcmQtYm9keSB7XG4gICAgICAgIC5lbGVtZW50IHtcbiAgICAgICAgICAvL2JhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDU1cHg7XG4gICAgICAgICAgei1pbmRleDogOTkyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbC0zIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgIH1cblxuICAgICAgICAubmFtZS1jb250YWluZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBwYWRkaW5nOiAwLjI1cmVtO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1nLWNvbnRhaW5lciB7XG4gICAgICAgICAgbWluLWhlaWdodDogNTVweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29sbGFwc2UsIC5jYXJkLWJvZHkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtZ3JheS1saWdodDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZW1rLWNoZWNrYm94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAuY2hlY2tib3gtYXJlYSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAuOXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jb25maWd1cmF0b3ItbW9kYWwge1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICB3aWR0aDogMjcwcHg7XG4gIH1cblxuICAubW9kYWwtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgfVxuXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBsYWJlbCB7XG4gICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgfVxuICB9XG5cbiAgLmJ0biB7XG4gICAgYm9yZGVyLXJhZGl1czogMCFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMnB4IDVweDtcblxuICAgIC5mYSB7XG4gICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgfVxuXG4gICAgJi5idG4tcHJpbWFyeSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUVBQ0Q5ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItY29sb3I6ICMxRUFDRDkgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG5cbiAgc2VsZWN0IHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pY29ucy9hcnJvdy1kb3duLnBuZykgbm8tcmVwZWF0IGJvdHRvbSAxNXB4IHJpZ2h0IDhweCAjZmZmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduLWxhc3Q6IGNlbnRlcjtcbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIHBhZGRpbmc6IDFyZW0gMnJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1vZGFsLWZvb3RlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBib3JkZXItdG9wOiBub25lICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tb2RhbC1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDFyZW0gMnJlbSAwIDJyZW0gIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuY3VzdG9tLXJhZGlvLWdyb3VwIHtcblxuICAgIGltZyB7XG4gICAgICBoZWlnaHQ6IDU1cHg7XG4gICAgfVxuXG4gICAgLyogSElERSBSQURJTyAqL1xuICAgIFt0eXBlPXJhZGlvXSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLyogSU1BR0UgU1RZTEVTICovXG4gICAgW3R5cGU9cmFkaW9dICsgLmZsaXAtY2FyZCB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgLyogQ0hFQ0tFRCBTVFlMRVMgKi9cbiAgICBbdHlwZT1yYWRpb106Y2hlY2tlZCArIC5mbGlwLWNhcmQge1xuICAgICAgb3V0bGluZTogMnB4IHNvbGlkICMxRUFDRDk7XG4gICAgfVxuICB9XG59XG5cbi5yZW1vdmVTdWJtb2R1bGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMCAzcHg7XG5cbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZDAwMDA7XG4gIH1cbn1cblxuXG4iLCIuY29uZmlndXJhdG9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5ncmFwaGljLWJveCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6ICM5MTkxOTE7XG4gICAgaGVpZ2h0OiA0NTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgLm1zZy1vdmVybGF5IHtcbiAgICAgIGJhY2tncm91bmQ6ICMwNDA0MDQ2OTtcbiAgICAgIHotaW5kZXg6IDk5NDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgLm1zZy1ib3gge1xuICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZ3JheS1saWdodC0wMTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAxLjJyZW07XG5cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMCFpbXBvcnRhbnQ7XG4gICAgICAgICAgcGFkZGluZzogMnB4IDVweDtcblxuICAgICAgICAgIC5mYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5idG4tcHJpbWFyeSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUVBQ0Q5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICMxRUFDRDkgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5iZy1hcmVhIHtcbiAgICAgIGhlaWdodDogNzAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0NDQ0NDQztcbiAgICB9XG5cbiAgICAuc2tldGNoLXdyYXBwZXIge1xuICAgICAgbWluLWhlaWdodDogNjElO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAuc2tldGNoIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtaW4td2lkdGg6IDUwJTtcblxuICAgICAgICAuaGVpZ2h0LWFyZWEge1xuICAgICAgICAgIHRvcDogMnJlbTtcbiAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICBib3R0b206IDNyZW07XG4gICAgICAgICAgbGVmdDogNHJlbTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgICAuaGVpZ2h0LXVuaXQge1xuICAgICAgICAgICAgdG9wOiA0NSU7XG4gICAgICAgICAgICBsZWZ0OiAtMS41cmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgbWluLXdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI0NDQ0NDQztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAud2lkdGgtYXJlYSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogMnJlbTtcbiAgICAgICAgICByaWdodDogOS41cmVtO1xuICAgICAgICAgIGxlZnQ6IDZyZW07XG5cbiAgICAgICAgICAud2lkdGgtdW5pdCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDMwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjOTE5MTkxO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLThweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXB0aC1hcmVhIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDUuOHJlbTtcbiAgICAgICAgICBib3R0b206IDMuN3JlbTtcblxuICAgICAgICAgIC5kZXB0aC1ib3JkZXIge1xuICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNTJkZWcpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5kZXB0aC11bml0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM5MTkxOTE7XG4gICAgICAgICAgICBib3R0b206IC0wLjVyZW07XG4gICAgICAgICAgICByaWdodDogMC41cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5lbGVtZW50LWFyZWEge1xuICAgICAgICAgIHRvcDogMnJlbTtcbiAgICAgICAgICByaWdodDogN3JlbTtcbiAgICAgICAgICBsZWZ0OiA2cmVtO1xuICAgICAgICAgIGJvdHRvbTogM3JlbTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cblxuICAgICAgICAuZWxlbWVudC1hcmVhLXNpZGUge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiA0MHB4IHNvbGlkICNmN2Y3Zjc7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiA1MHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zaWRlLWFyZWEge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlc21va2U7XG5cbiAgICAgICAgICAudG9wIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI0NDQ0NDQztcbiAgICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDIxcHggMHB4IDBweCAzOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5ib3R0b20ge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjOTE5MTkxO1xuICAgICAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAwIDU1cHggNDBweDtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuY29uZmlndXJhdG9yIHtcbiAgLnNpZGViYXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMnJlbTtcbiAgICBoZWlnaHQ6IDQ1MHB4O1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZ3JheS1saWdodDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmljb24tYXJlYSB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgICAgIC5mYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjJzO1xuICAgICAgfVxuXG4gICAgICAudGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtZ3JheS1kYXJrO1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM5MHB4KSB7XG4gIC5jb25maWd1cmF0b3Ige1xuICAgIC5zaWRlYmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn0iLCIuc2tldGNoIHtcbiAgLndhcmRyb2JlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuICAgIC5kaXZpZGVyIHtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5jb3ZlcmluZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICAvL3otaW5kZXg6IDk5MTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuICAgICAgICAuaGFuZGxlIHtcbiAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuXG4gICAgICAgICAgJi5yaWdodCB7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmxlZnQge1xuICAgICAgICAgICAgbGVmdDogNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuZG9vciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzk4NjU0NjtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZ2xhc3Mge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGJjZDQyNjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5lbGVtZW50cy13cmFwcGVyIHtcbiAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgLmdyb3VwIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5jb3ZlcmluZyB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgei1pbmRleDogOTkzO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgICAgICAgLmhhbmRsZSB7XG4gICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcblxuICAgICAgICAgICAgJi5yaWdodCB7XG4gICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmxlZnQge1xuICAgICAgICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5kb29yIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5ODY1NDY7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5nbGFzcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiY2Q0MjY7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5lbGVtZW50IHtcbiAgICAgICAgei1pbmRleDogOTkyICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLmRyYXdlciB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzFlYWNkOTczICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIC5ib2FyZCwgLmRyYXdlci1oYW5kbGUge1xuICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjMWVhY2Q5NzMgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuYm9hcmQsIC5kcmF3ZXItaGFuZGxlIHtcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zaGVsdmVzIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgIC5ib2FyZCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDAwMDAgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMxZWFjZDk3MyAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAuYm9hcmQge1xuICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjMWVhY2Q5NzMgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2xvdGhlcy1yYWlsIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiA4MHB4O1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgYm9yZGVyOiAxcHggZG90dGVkICMzNTM1MzU7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMxZWFjZDk3MyAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAuYm9hcmQsIC5yYWlsIHtcbiAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzFlYWNkOTczICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmJvYXJkLCAucmFpbCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDAwMDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jb25maWd1cmF0b3Ige1xuICAuZHJhd2VyIHtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgbWluLXdpZHRoOiAxMDBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMCAhaW1wb3J0YW50O1xuXG4gICAgLmJvYXJkLCAuZHJhd2VyLWhhbmRsZSB7XG4gICAgICB3aWR0aDogNDAlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICB9XG4gIH1cblxuICAuc2hlbHZlcyB7XG4gICAgbWluLWhlaWdodDogNDBweDtcbiAgICBtaW4td2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmJvYXJkIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5jbG90aGVzLXJhaWwge1xuICAgIG1pbi1oZWlnaHQ6IDMwcHg7XG4gICAgbWluLXdpZHRoOiAxMDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuYm9hcmQsIC5yYWlsIHtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICB9XG4gIH1cbn1cblxuLm92ZXIge1xuICBib3JkZXI6IHNvbGlkIDNweCAjMWVhY2Q5NzMgIWltcG9ydGFudDtcbn1cblxuLmFjYy1pY29uLXJvdGF0ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zaXRpb246IDAuMnM7XG59IiwiLmNoZWNrb3V0LXdyYXBwZXIge1xuICBAaW1wb3J0IFwiaGVhZGVyXCI7XG4gIEBpbXBvcnQgXCIuLi9oZWFkZXItc3RlcHNcIjtcbiAgQGltcG9ydCBcIm1haW5cIjtcbiAgQGltcG9ydCBcInVzZXItY29uZmlnXCI7XG5cbiAgLmJ1dHRvbi1lbWstd2hpdGUsIC5idXR0b24tZW1rIHtcbiAgICB3aWR0aDogMjEwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwLjdyZW0gMDtcbiAgfVxuXG4gIC5oYXMtYm9yZGVyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtZ3JheS1kYXJrO1xuICB9XG5cbiAgLnNwYWNlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXJlbTtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5jaGVja291dC13cmFwcGVyIHtcbiAgICAuYnV0dG9uLWVtay13aGl0ZSwgLmJ1dHRvbi1lbWsge1xuICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDhweCAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxufSIsIi5oZWFkZXItYnRuLWFyZWEge1xuICBtYXJnaW46IDNyZW0gMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuaGVhZGVyLWJ0bi1hcmVhIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59IiwiLmhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmF5LWxpZ2h0O1xuICBoZWlnaHQ6IDE1MHB4O1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gIC5zdGVwcy1jb250YWluZXIge1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC5zdGVwcyB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgIC5zdGVwLWJveCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0yNXB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0yNXB4O1xuXG4gICAgICAgIC5zdGVwLWljb24ge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLWdyYXktbGlnaHQ7XG4gICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRTczRjRCICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLWRhbmdlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuYm9yZGVyLWFyZWEge1xuICAgICAgICB3aWR0aDogMTUwcHg7XG5cbiAgICAgICAgaHIge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRicmFuZC1kYW5nZXIgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuaGVhZGVyIHtcbiAgICBoZWlnaHQ6IDkwcHg7XG5cbiAgICAuc3RlcHMtY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiA5MCU7XG5cbiAgICAgIC5zdGVwcyB7XG4gICAgICAgIC5zdGVwLW5hbWUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuYm9yZGVyLWFyZWEge1xuICAgICAgICAgIGhyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE0cHggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIucGFnZS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC1mYW1pbHk6ICdQVCBTZXJpZicsIHNhbnMtc2VyaWY7XG59XG5cbi5zZXJ2aWNlLWNvbnRhaW5lciwgLnByaWNlLWNvbnRhaW5lciwgLnBheW1lbnQtaWNvbi1jb250YWluZXIsIC5jb25maXJtYXRpb24tY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWdyYXktbGlnaHQ7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLnByb2R1Y3QtY29udGFpbmVyIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXG4gIC5wcm9kdWN0LXRpdGxlLCAucHJpY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnUFQgU2VyaWYnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuXG4gIC5zZWxlY3QtYW1vdW50IHtcbiAgICBoZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pY29ucy9hcnJvdy1kb3duLnBuZykgbm8tcmVwZWF0IGJvdHRvbSAxMHB4IHJpZ2h0IDhweCAjZmZmO1xuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2ljb25zL2Fycm93LWRvd24ucG5nKSBuby1yZXBlYXQgYm90dG9tIDEwcHggcmlnaHQgOHB4ICNkYWQ3ZDcgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaWNvbi1jb250YWluZXIge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG5cbiAgICAuZmEge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRicmFuZC1ncmF5LWRhcms7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5oYXMtYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmF5LWxpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHJvZHVjdC1pbmZvLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAucHJvZHVjdC1pbmZvIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIH1cbn1cblxuLmNvbmZpcm1hdGlvbi1jb250YWluZXIge1xuICBtaW4taGVpZ2h0OiA1MDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAuZmEge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgfVxufVxuXG4uc2VydmljZS1jb250YWluZXIge1xuICAuY2hlY2tib3gtYXJlYSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcblxuICAgIC5jdXN0b20tY2hlY2tib3gge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNoZWNrYm94ICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICB3aWR0aDogMzVweDtcbiAgICAgIGhlaWdodDogMzVweDtcbiAgICAgIGJvcmRlcjogN3B4IHNvbGlkICR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jaGVja2JveDpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICAgIH1cbiAgfVxuXG4gIC5kZXRhaWwtYXJlYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmRldGFpbHMge1xuICAgICAgLnRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmJywgc2Fucy1zZXJpZjtcbiAgICAgIH1cbiAgICAgIC5pbmZvcyB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtZ3JheS1kYXJrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucGF5bWVudC1pY29uLWNvbnRhaW5lciB7XG4gIC8vZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAuaWNvbnMge1xuICAgIGltZyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDNyZW07XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucHJpY2UtY29udGFpbmVyIHtcbiAgcGFkZGluZzogMnJlbSAzcmVtO1xuXG4gIC50ZXh0LWxpZ2h0IHtcbiAgICBjb2xvcjogJGJyYW5kLWdyYXktZGFyayAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHIge1xuICAgIGJvcmRlcjogMS41cHggc29saWQgJGJyYW5kLWdyYXktZGFyayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRvdGFsLXByaWNlIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICB9XG5cbiAgLmNoZWNrYm94LWFyZWEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgIC5jdXN0b20tY2hlY2tib3gge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNoZWNrYm94ICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICB3aWR0aDogMzVweDtcbiAgICAgIGhlaWdodDogMzVweDtcbiAgICAgIGJvcmRlcjogN3B4IHNvbGlkICR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jaGVja2JveDpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICAgIH1cbiAgfVxufVxuXG4ucGF5bWVudC1jb250YWluZXIge1xuICAucGF5bWVudC1ib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRicmFuZC1ncmF5LWRhcms7XG5cbiAgICAuY2hlY2tib3gtYXJlYSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgICAgLmN1c3RvbS1jaGVja2JveCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5jdXN0b20tY2hlY2tib3ggKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgYm9yZGVyOiA3cHggc29saWQgJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuXG4gICAgICAuY3VzdG9tLWNoZWNrYm94OmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWRhbmdlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZGV0YWlsLWJveCB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG5cbiAgICAgIC50ZXh0LWxpZ2h0IHtcbiAgICAgICAgY29sb3I6ICRicmFuZC1ncmF5LWRhcmsgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5pY29uLWFyZWEge1xuICAgICAgZm9udC1zaXplOiA0NXB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgIH1cbiAgfVxufVxuXG4uYnV0dG9uLWFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAucGF5bWVudC1pY29uLWNvbnRhaW5lciB7XG4gICAgLmljb25zIHtcbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGF5bWVudC1jb250YWluZXIge1xuICAgIC5wYXltZW50LWJveC14cyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5zZXJ2aWNlLWNvbnRhaW5lciB7XG4gICAgLmRldGFpbC1hcmVhIHtcbiAgICAgIC5kZXRhaWxzIHtcbiAgICAgICAgLmluZm9zIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnByaWNlLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuXG4gIC5wYWdlLXRpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMS41cmVtIDA7XG4gIH1cblxuICAuc2VydmljZS1jb250YWluZXIge1xuICAgIC5jaGVja2JveC1hcmVhIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gICAgfVxuICB9XG5cbiAgLmNvbmZpcm1hdGlvbi1jb250YWluZXIge1xuICAgIG1pbi1oZWlnaHQ6IDM1MHB4O1xuICB9XG5cbiAgLnBheW1lbnQtY29udGFpbmVyIHtcbiAgICAucGF5bWVudC1ib3gge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wYXltZW50LWJveC14cyB7XG4gICAgICAucGF5bWVudC1pY29uLWJveC14cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmF5LWxpZ2h0LTAxO1xuICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU3NnB4KSB7XG5cbiAgLmJ1dHRvbi1hcmVhIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcblxuICAgIC5idG4ge1xuICAgICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMTVweCAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59IiwiLmxvZ2luLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmF5LWxpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBwYWRkaW5nOiAycmVtIDFyZW07XG5cbiAgLmZvcm0tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuYnV0dG9uLWVtayB7XG4gICAgLy93aWR0aDogMjEwcHg7XG4gICAgcGFkZGluZzogMC42cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnJlZ2lzdGVyLWJveCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmF5LWxpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuXG4gIC50aXRsZSB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIGZvbnQtZmFtaWx5OiAnUFQgU2VyaWYnLCBzYW5zLXNlcmlmO1xuICAgIG1hcmdpbjogMC44cmVtIDAgMS4ycmVtIDA7XG4gIH1cblxuICAuY2hlY2tib3gtYXJlYSB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuXG4gICAgLmN1c3RvbS1jaGVja2JveCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5jdXN0b20tY2hlY2tib3ggKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgaGVpZ2h0OiAzOHB4O1xuICAgICAgYm9yZGVyOiA2cHggc29saWQgJHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNoZWNrYm94OmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gICAgfVxuICB9XG5cbiAgLmNoZWNrYm94LWxhYmVsIHtcbiAgICBtYXJnaW4tdG9wOiAyLjVyZW07XG4gIH1cbn1cblxuLmRldGFpbC13cmFwcGVyIHtcbiAgcGFkZGluZzogMCA1cmVtO1xuICBtYXJnaW4tYm90dG9tOiA2cmVtO1xuXG4gIC5jb2wtbWQtNiB7XG4gICAgcGFkZGluZzogMCAzcmVtO1xuICB9XG59XG5cbi5kZXRhaWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcblxuICAudGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBmb250LWZhbWlseTogJ1BUIFNlcmlmJywgc2Fucy1zZXJpZjtcbiAgfVxuXG4gIC5pY29uLWFyZWEge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDI1cHg7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuZGV0YWlsLXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAuY29sLW1kLTYge1xuICAgICAgcGFkZGluZzogMCAxcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59IiwiLnNpdGUtZW1rIHtcblxuICAuc2lkZWJhciB7XG4gICAgdWwge1xuICAgICAgbGkge1xuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn0iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQTRDQSxPQUFPLENBQVAsdUNBQU87QUEzQ1AsVUFBVTtFQUNSLFdB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SUFBSTtFQUNYLFNBQVMsRUFBRSxJQUFJO0NBQ2hCOztBQUdDLEFBQUEsTUFBTSxDQUFjO0VDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQTRCO0VBSXRDLFNBQVMsRUFBRSxXQUE0QjtDREFoQzs7QUFGRCxBQUFBLE1BQU0sQ0FBYztFQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUE0QjtFQUl0QyxTQUFTLEVBQUUsWUFBNEI7Q0RBaEM7O0FBRkQsQUFBQSxNQUFNLENBQWM7RUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7RUFJdEMsU0FBUyxFQUFFLEdBQTRCO0NEQWhDOztBQUZELEFBQUEsTUFBTSxDQUFjO0VDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQTRCO0VBSXRDLFNBQVMsRUFBRSxZQUE0QjtDREFoQzs7QUFGRCxBQUFBLE1BQU0sQ0FBYztFQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUE0QjtFQUl0QyxTQUFTLEVBQUUsWUFBNEI7Q0RBaEM7O0FBRkQsQUFBQSxNQUFNLENBQWM7RUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7RUFJdEMsU0FBUyxFQUFFLEdBQTRCO0NEQWhDOztBQUZELEFBQUEsTUFBTSxDQUFjO0VDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQTRCO0VBSXRDLFNBQVMsRUFBRSxZQUE0QjtDREFoQzs7QUFGRCxBQUFBLE1BQU0sQ0FBYztFQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUE0QjtFQUl0QyxTQUFTLEVBQUUsWUFBNEI7Q0RBaEM7O0FBRkQsQUFBQSxNQUFNLENBQWM7RUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7RUFJdEMsU0FBUyxFQUFFLEdBQTRCO0NEQWhDOztBQUZELEFBQUEsT0FBTyxDQUFhO0VDRjFCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FB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O0dEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBNEI7SUFJdEMsU0FBUyxFQUFFLFlBQTRCO0dEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCO0dEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBNEI7SUFJdEMsU0FBUyxFQUFFLFlBQTRCO0dEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBNEI7SUFJdEMsU0FBUyxFQUFFLFlBQTRCO0dEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCO0dEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBNEI7SUFJdEMsU0FBUyxFQUFFLFlBQTRCO0dEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBNEI7SUFJdEMsU0FBUyxFQUFFLFlBQTRCO0dEQWhDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7SUFJdEMsU0FBUyxFQUFFLEdBQTRCO0dEQWhDO0VBRkQsQUFBQSxVQUFVLENBQVU7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBNEI7SUFJdEMsU0FBUyxFQUFFLFlBQTRCO0dEQWhDO0VBRkQsQUFBQSxVQUFVLENBQVU7SUNGMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBNEI7SUFJdEMsU0FBUyxFQUFFLFlBQTRC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QUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEI7R0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUE0QjtJQUl0QyxTQUFTLEVBQUUsWUFBNEI7R0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUE0QjtJQUl0QyxTQUFTLEVBQUUsWUFBNEI7R0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEI7R0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUE0QjtJQUl0QyxTQUFTLEVBQUUsWUFBNEI7R0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUE0QjtJQUl0QyxTQUFTLEVBQUUsWUFBNEI7R0RBaEM7RUFGRCxBQUFBLFNBQVMsQ0FBVztJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUE0QjtJQUl0QyxTQUFTLEVBQUUsR0FBNEI7R0RBaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUE0QjtJQUl0QyxTQUFTLEVBQUUsWUFBNEI7R0RBaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUE0QjtJQUl0QyxTQUFTLEVBQUUsWUFBNEI7R0RBaEM7RUFGRCxBQUFBLFVBQVUsQ0FBVTtJQ0YxQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUE0QjtJQUl0QyxTQUFTLEVBQUUsSUFBNEI7R0RBaEM7RUFHSCxB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 */