@charset "UTF-8";
/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@import url("https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Montserrat:wght@100;400;500&display=swap");
@font-face {
  font-family: 'FontAwesome';
  src: url("../components/font-awesome/fonts/fontawesome-webfont.eot?v=4.7.0");
  src: url("../components/font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.7.0") format("embedded-opentype"), url("../components/font-awesome/fonts/fontawesome-webfont.woff2?v=4.7.0") format("woff2"), url("../components/font-awesome/fonts/fontawesome-webfont.woff?v=4.7.0") format("woff"), url("../components/font-awesome/fonts/fontawesome-webfont.ttf?v=4.7.0") format("truetype"), url("../components/font-awesome/fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular") format("svg");
  font-weight: normal;
  font-style: normal; }

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

/* 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: 2.14286em;
  list-style-type: none; }
  .fa-ul > li {
    position: relative; }

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

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

/* Deprecated as of 4.4.0 */
.pull-right {
  float: right; }

.pull-left {
  float: left; }

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

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

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

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

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

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

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: ""; }

.fa-music:before {
  content: ""; }

.fa-search:before {
  content: ""; }

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

.fa-heart:before {
  content: ""; }

.fa-star:before {
  content: ""; }

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

.fa-user:before {
  content: ""; }

.fa-film:before {
  content: ""; }

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

.fa-th:before {
  content: ""; }

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

.fa-check:before {
  content: ""; }

.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: ""; }

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

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

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

.fa-signal:before {
  content: ""; }

.fa-gear:before,
.fa-cog:before {
  content: ""; }

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

.fa-home:before {
  content: ""; }

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

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

.fa-road:before {
  content: ""; }

.fa-download:before {
  content: ""; }

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

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

.fa-inbox:before {
  content: ""; }

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

.fa-rotate-right:before,
.fa-repeat:before {
  content: ""; }

.fa-refresh:before {
  content: ""; }

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

.fa-lock:before {
  content: ""; }

.fa-flag:before {
  content: ""; }

.fa-headphones:before {
  content: ""; }

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

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

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

.fa-qrcode:before {
  content: ""; }

.fa-barcode:before {
  content: ""; }

.fa-tag:before {
  content: ""; }

.fa-tags:before {
  content: ""; }

.fa-book:before {
  content: ""; }

.fa-bookmark:before {
  content: ""; }

.fa-print:before {
  content: ""; }

.fa-camera:before {
  content: ""; }

.fa-font:before {
  content: ""; }

.fa-bold:before {
  content: ""; }

.fa-italic:before {
  content: ""; }

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

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

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

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

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

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

.fa-list:before {
  content: ""; }

.fa-dedent:before,
.fa-outdent:before {
  content: ""; }

.fa-indent:before {
  content: ""; }

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

.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: ""; }

.fa-pencil:before {
  content: ""; }

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

.fa-adjust:before {
  content: ""; }

.fa-tint:before {
  content: ""; }

.fa-edit:before,
.fa-pencil-square-o:before {
  content: ""; }

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

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

.fa-arrows:before {
  content: ""; }

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

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

.fa-backward:before {
  content: ""; }

.fa-play:before {
  content: ""; }

.fa-pause:before {
  content: ""; }

.fa-stop:before {
  content: ""; }

.fa-forward:before {
  content: ""; }

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

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

.fa-eject:before {
  content: ""; }

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

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

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

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

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

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

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

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

.fa-crosshairs:before {
  content: ""; }

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

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

.fa-ban:before {
  content: ""; }

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

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

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

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

.fa-mail-forward:before,
.fa-share:before {
  content: ""; }

.fa-expand:before {
  content: ""; }

.fa-compress:before {
  content: ""; }

.fa-plus:before {
  content: ""; }

.fa-minus:before {
  content: ""; }

.fa-asterisk:before {
  content: ""; }

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

.fa-gift:before {
  content: ""; }

.fa-leaf:before {
  content: ""; }

.fa-fire:before {
  content: ""; }

.fa-eye:before {
  content: ""; }

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

.fa-warning:before,
.fa-exclamation-triangle:before {
  content: ""; }

.fa-plane:before {
  content: ""; }

.fa-calendar:before {
  content: ""; }

.fa-random:before {
  content: ""; }

.fa-comment:before {
  content: ""; }

.fa-magnet:before {
  content: ""; }

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

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

.fa-retweet:before {
  content: ""; }

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

.fa-folder:before {
  content: ""; }

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

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

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

.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: ""; }

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

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

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

.fa-key:before {
  content: ""; }

.fa-gears:before,
.fa-cogs:before {
  content: ""; }

.fa-comments:before {
  content: ""; }

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

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

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

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

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

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

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

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

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

.fa-trophy:before {
  content: ""; }

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

.fa-upload:before {
  content: ""; }

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

.fa-phone:before {
  content: ""; }

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

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

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

.fa-twitter:before {
  content: ""; }

.fa-facebook-f:before,
.fa-facebook:before {
  content: ""; }

.fa-github:before {
  content: ""; }

.fa-unlock:before {
  content: ""; }

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

.fa-feed:before,
.fa-rss:before {
  content: ""; }

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

.fa-bullhorn:before {
  content: ""; }

.fa-bell:before {
  content: ""; }

.fa-certificate:before {
  content: ""; }

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

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

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

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

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

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

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

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

.fa-globe:before {
  content: ""; }

.fa-wrench:before {
  content: ""; }

.fa-tasks:before {
  content: ""; }

.fa-filter:before {
  content: ""; }

.fa-briefcase:before {
  content: ""; }

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

.fa-group:before,
.fa-users:before {
  content: ""; }

.fa-chain:before,
.fa-link:before {
  content: ""; }

.fa-cloud:before {
  content: ""; }

.fa-flask:before {
  content: ""; }

.fa-cut:before,
.fa-scissors:before {
  content: ""; }

.fa-copy:before,
.fa-files-o:before {
  content: ""; }

.fa-paperclip:before {
  content: ""; }

.fa-save:before,
.fa-floppy-o:before {
  content: ""; }

.fa-square:before {
  content: ""; }

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: ""; }

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

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

.fa-strikethrough:before {
  content: ""; }

.fa-underline:before {
  content: ""; }

.fa-table:before {
  content: ""; }

.fa-magic:before {
  content: ""; }

.fa-truck:before {
  content: ""; }

.fa-pinterest:before {
  content: ""; }

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

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

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

.fa-money:before {
  content: ""; }

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

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

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

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

.fa-columns:before {
  content: ""; }

.fa-unsorted:before,
.fa-sort:before {
  content: ""; }

.fa-sort-down:before,
.fa-sort-desc:before {
  content: ""; }

.fa-sort-up:before,
.fa-sort-asc:before {
  content: ""; }

.fa-envelope:before {
  content: ""; }

.fa-linkedin:before {
  content: ""; }

.fa-rotate-left:before,
.fa-undo:before {
  content: ""; }

.fa-legal:before,
.fa-gavel:before {
  content: ""; }

.fa-dashboard:before,
.fa-tachometer:before {
  content: ""; }

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

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

.fa-flash:before,
.fa-bolt:before {
  content: ""; }

.fa-sitemap:before {
  content: ""; }

.fa-umbrella:before {
  content: ""; }

.fa-paste:before,
.fa-clipboard:before {
  content: ""; }

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

.fa-exchange:before {
  content: ""; }

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

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

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

.fa-stethoscope:before {
  content: ""; }

.fa-suitcase:before {
  content: ""; }

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

.fa-coffee:before {
  content: ""; }

.fa-cutlery:before {
  content: ""; }

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

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

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

.fa-ambulance:before {
  content: ""; }

.fa-medkit:before {
  content: ""; }

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

.fa-beer:before {
  content: ""; }

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

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

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

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

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

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

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

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

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

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

.fa-desktop:before {
  content: ""; }

.fa-laptop:before {
  content: ""; }

.fa-tablet:before {
  content: ""; }

.fa-mobile-phone:before,
.fa-mobile:before {
  content: ""; }

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

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

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

.fa-spinner:before {
  content: ""; }

.fa-circle:before {
  content: ""; }

.fa-mail-reply:before,
.fa-reply:before {
  content: ""; }

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

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

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

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

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

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

.fa-gamepad:before {
  content: ""; }

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

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

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

.fa-terminal:before {
  content: ""; }

.fa-code:before {
  content: ""; }

.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: ""; }

.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: ""; }

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

.fa-crop:before {
  content: ""; }

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

.fa-unlink:before,
.fa-chain-broken:before {
  content: ""; }

.fa-question:before {
  content: ""; }

.fa-info:before {
  content: ""; }

.fa-exclamation:before {
  content: ""; }

.fa-superscript:before {
  content: ""; }

.fa-subscript:before {
  content: ""; }

.fa-eraser:before {
  content: ""; }

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

.fa-microphone:before {
  content: ""; }

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

.fa-shield:before {
  content: ""; }

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

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

.fa-rocket:before {
  content: ""; }

.fa-maxcdn:before {
  content: ""; }

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

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

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

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

.fa-html5:before {
  content: ""; }

.fa-css3:before {
  content: ""; }

.fa-anchor:before {
  content: ""; }

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

.fa-bullseye:before {
  content: ""; }

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

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

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

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

.fa-ticket:before {
  content: ""; }

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

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

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

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

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

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

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

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

.fa-compass:before {
  content: ""; }

.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: ""; }

.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: ""; }

.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: ""; }

.fa-euro:before,
.fa-eur:before {
  content: ""; }

.fa-gbp:before {
  content: ""; }

.fa-dollar:before,
.fa-usd:before {
  content: ""; }

.fa-rupee:before,
.fa-inr:before {
  content: ""; }

.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: ""; }

.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: ""; }

.fa-won:before,
.fa-krw:before {
  content: ""; }

.fa-bitcoin:before,
.fa-btc:before {
  content: ""; }

.fa-file:before {
  content: ""; }

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

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

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

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

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

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

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

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

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

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

.fa-youtube:before {
  content: ""; }

.fa-xing:before {
  content: ""; }

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

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

.fa-dropbox:before {
  content: ""; }

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

.fa-instagram:before {
  content: ""; }

.fa-flickr:before {
  content: ""; }

.fa-adn:before {
  content: ""; }

.fa-bitbucket:before {
  content: ""; }

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

.fa-tumblr:before {
  content: ""; }

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

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

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

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

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

.fa-apple:before {
  content: ""; }

.fa-windows:before {
  content: ""; }

.fa-android:before {
  content: ""; }

.fa-linux:before {
  content: ""; }

.fa-dribbble:before {
  content: ""; }

.fa-skype:before {
  content: ""; }

.fa-foursquare:before {
  content: ""; }

.fa-trello:before {
  content: ""; }

.fa-female:before {
  content: ""; }

.fa-male:before {
  content: ""; }

.fa-gittip:before,
.fa-gratipay:before {
  content: ""; }

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

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

.fa-archive:before {
  content: ""; }

.fa-bug:before {
  content: ""; }

.fa-vk:before {
  content: ""; }

.fa-weibo:before {
  content: ""; }

.fa-renren:before {
  content: ""; }

.fa-pagelines:before {
  content: ""; }

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

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

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

.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: ""; }

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

.fa-wheelchair:before {
  content: ""; }

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

.fa-turkish-lira:before,
.fa-try:before {
  content: ""; }

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

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

.fa-slack:before {
  content: ""; }

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

.fa-wordpress:before {
  content: ""; }

.fa-openid:before {
  content: ""; }

.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: ""; }

.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: ""; }

.fa-yahoo:before {
  content: ""; }

.fa-google:before {
  content: ""; }

.fa-reddit:before {
  content: ""; }

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

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

.fa-stumbleupon:before {
  content: ""; }

.fa-delicious:before {
  content: ""; }

.fa-digg:before {
  content: ""; }

.fa-pied-piper-pp:before {
  content: ""; }

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

.fa-drupal:before {
  content: ""; }

.fa-joomla:before {
  content: ""; }

.fa-language:before {
  content: ""; }

.fa-fax:before {
  content: ""; }

.fa-building:before {
  content: ""; }

.fa-child:before {
  content: ""; }

.fa-paw:before {
  content: ""; }

.fa-spoon:before {
  content: ""; }

.fa-cube:before {
  content: ""; }

.fa-cubes:before {
  content: ""; }

.fa-behance:before {
  content: ""; }

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

.fa-steam:before {
  content: ""; }

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

.fa-recycle:before {
  content: ""; }

.fa-automobile:before,
.fa-car:before {
  content: ""; }

.fa-cab:before,
.fa-taxi:before {
  content: ""; }

.fa-tree:before {
  content: ""; }

.fa-spotify:before {
  content: ""; }

.fa-deviantart:before {
  content: ""; }

.fa-soundcloud:before {
  content: ""; }

.fa-database:before {
  content: ""; }

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

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

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

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

.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: ""; }

.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: ""; }

.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: ""; }

.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: ""; }

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

.fa-vine:before {
  content: ""; }

.fa-codepen:before {
  content: ""; }

.fa-jsfiddle:before {
  content: ""; }

.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: ""; }

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

.fa-ra:before,
.fa-resistance:before,
.fa-rebel:before {
  content: ""; }

.fa-ge:before,
.fa-empire:before {
  content: ""; }

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

.fa-git:before {
  content: ""; }

.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
  content: ""; }

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

.fa-qq:before {
  content: ""; }

.fa-wechat:before,
.fa-weixin:before {
  content: ""; }

.fa-send:before,
.fa-paper-plane:before {
  content: ""; }

.fa-send-o:before,
.fa-paper-plane-o:before {
  content: ""; }

.fa-history:before {
  content: ""; }

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

.fa-header:before {
  content: ""; }

.fa-paragraph:before {
  content: ""; }

.fa-sliders:before {
  content: ""; }

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

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

.fa-bomb:before {
  content: ""; }

.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: ""; }

.fa-tty:before {
  content: ""; }

.fa-binoculars:before {
  content: ""; }

.fa-plug:before {
  content: ""; }

.fa-slideshare:before {
  content: ""; }

.fa-twitch:before {
  content: ""; }

.fa-yelp:before {
  content: ""; }

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

.fa-wifi:before {
  content: ""; }

.fa-calculator:before {
  content: ""; }

.fa-paypal:before {
  content: ""; }

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

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

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

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

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

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

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

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

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

.fa-trash:before {
  content: ""; }

.fa-copyright:before {
  content: ""; }

.fa-at:before {
  content: ""; }

.fa-eyedropper:before {
  content: ""; }

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

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

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

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

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

.fa-lastfm:before {
  content: ""; }

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

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

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

.fa-bicycle:before {
  content: ""; }

.fa-bus:before {
  content: ""; }

.fa-ioxhost:before {
  content: ""; }

.fa-angellist:before {
  content: ""; }

.fa-cc:before {
  content: ""; }

.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: ""; }

.fa-meanpath:before {
  content: ""; }

.fa-buysellads:before {
  content: ""; }

.fa-connectdevelop:before {
  content: ""; }

.fa-dashcube:before {
  content: ""; }

.fa-forumbee:before {
  content: ""; }

.fa-leanpub:before {
  content: ""; }

.fa-sellsy:before {
  content: ""; }

.fa-shirtsinbulk:before {
  content: ""; }

.fa-simplybuilt:before {
  content: ""; }

.fa-skyatlas:before {
  content: ""; }

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

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

.fa-diamond:before {
  content: ""; }

.fa-ship:before {
  content: ""; }

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

.fa-motorcycle:before {
  content: ""; }

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

.fa-heartbeat:before {
  content: ""; }

.fa-venus:before {
  content: ""; }

.fa-mars:before {
  content: ""; }

.fa-mercury:before {
  content: ""; }

.fa-intersex:before,
.fa-transgender:before {
  content: ""; }

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

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

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

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

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

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

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

.fa-neuter:before {
  content: ""; }

.fa-genderless:before {
  content: ""; }

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

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

.fa-whatsapp:before {
  content: ""; }

.fa-server:before {
  content: ""; }

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

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

.fa-hotel:before,
.fa-bed:before {
  content: ""; }

.fa-viacoin:before {
  content: ""; }

.fa-train:before {
  content: ""; }

.fa-subway:before {
  content: ""; }

.fa-medium:before {
  content: ""; }

.fa-yc:before,
.fa-y-combinator:before {
  content: ""; }

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

.fa-opencart:before {
  content: ""; }

.fa-expeditedssl:before {
  content: ""; }

.fa-battery-4:before,
.fa-battery:before,
.fa-battery-full:before {
  content: ""; }

.fa-battery-3:before,
.fa-battery-three-quarters:before {
  content: ""; }

.fa-battery-2:before,
.fa-battery-half:before {
  content: ""; }

.fa-battery-1:before,
.fa-battery-quarter:before {
  content: ""; }

.fa-battery-0:before,
.fa-battery-empty:before {
  content: ""; }

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

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

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

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

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

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

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

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

.fa-clone:before {
  content: ""; }

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

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

.fa-hourglass-1:before,
.fa-hourglass-start:before {
  content: ""; }

.fa-hourglass-2:before,
.fa-hourglass-half:before {
  content: ""; }

.fa-hourglass-3:before,
.fa-hourglass-end:before {
  content: ""; }

.fa-hourglass:before {
  content: ""; }

.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
  content: ""; }

.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
  content: ""; }

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

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

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

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

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

.fa-trademark:before {
  content: ""; }

.fa-registered:before {
  content: ""; }

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

.fa-gg:before {
  content: ""; }

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

.fa-tripadvisor:before {
  content: ""; }

.fa-odnoklassniki:before {
  content: ""; }

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

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

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

.fa-safari:before {
  content: ""; }

.fa-chrome:before {
  content: ""; }

.fa-firefox:before {
  content: ""; }

.fa-opera:before {
  content: ""; }

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

.fa-tv:before,
.fa-television:before {
  content: ""; }

.fa-contao:before {
  content: ""; }

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

.fa-amazon:before {
  content: ""; }

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

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

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

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

.fa-industry:before {
  content: ""; }

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

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

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

.fa-map:before {
  content: ""; }

.fa-commenting:before {
  content: ""; }

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

.fa-houzz:before {
  content: ""; }

.fa-vimeo:before {
  content: ""; }

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

.fa-fonticons:before {
  content: ""; }

.fa-reddit-alien:before {
  content: ""; }

.fa-edge:before {
  content: ""; }

.fa-credit-card-alt:before {
  content: ""; }

.fa-codiepie:before {
  content: ""; }

.fa-modx:before {
  content: ""; }

.fa-fort-awesome:before {
  content: ""; }

.fa-usb:before {
  content: ""; }

.fa-product-hunt:before {
  content: ""; }

.fa-mixcloud:before {
  content: ""; }

.fa-scribd:before {
  content: ""; }

.fa-pause-circle:before {
  content: ""; }

.fa-pause-circle-o:before {
  content: ""; }

.fa-stop-circle:before {
  content: ""; }

.fa-stop-circle-o:before {
  content: ""; }

.fa-shopping-bag:before {
  content: ""; }

.fa-shopping-basket:before {
  content: ""; }

.fa-hashtag:before {
  content: ""; }

.fa-bluetooth:before {
  content: ""; }

.fa-bluetooth-b:before {
  content: ""; }

.fa-percent:before {
  content: ""; }

.fa-gitlab:before {
  content: ""; }

.fa-wpbeginner:before {
  content: ""; }

.fa-wpforms:before {
  content: ""; }

.fa-envira:before {
  content: ""; }

.fa-universal-access:before {
  content: ""; }

.fa-wheelchair-alt:before {
  content: ""; }

.fa-question-circle-o:before {
  content: ""; }

.fa-blind:before {
  content: ""; }

.fa-audio-description:before {
  content: ""; }

.fa-volume-control-phone:before {
  content: ""; }

.fa-braille:before {
  content: ""; }

.fa-assistive-listening-systems:before {
  content: ""; }

.fa-asl-interpreting:before,
.fa-american-sign-language-interpreting:before {
  content: ""; }

.fa-deafness:before,
.fa-hard-of-hearing:before,
.fa-deaf:before {
  content: ""; }

.fa-glide:before {
  content: ""; }

.fa-glide-g:before {
  content: ""; }

.fa-signing:before,
.fa-sign-language:before {
  content: ""; }

.fa-low-vision:before {
  content: ""; }

.fa-viadeo:before {
  content: ""; }

.fa-viadeo-square:before {
  content: ""; }

.fa-snapchat:before {
  content: ""; }

.fa-snapchat-ghost:before {
  content: ""; }

.fa-snapchat-square:before {
  content: ""; }

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

.fa-first-order:before {
  content: ""; }

.fa-yoast:before {
  content: ""; }

.fa-themeisle:before {
  content: ""; }

.fa-google-plus-circle:before,
.fa-google-plus-official:before {
  content: ""; }

.fa-fa:before,
.fa-font-awesome:before {
  content: ""; }

.fa-handshake-o:before {
  content: ""; }

.fa-envelope-open:before {
  content: ""; }

.fa-envelope-open-o:before {
  content: ""; }

.fa-linode:before {
  content: ""; }

.fa-address-book:before {
  content: ""; }

.fa-address-book-o:before {
  content: ""; }

.fa-vcard:before,
.fa-address-card:before {
  content: ""; }

.fa-vcard-o:before,
.fa-address-card-o:before {
  content: ""; }

.fa-user-circle:before {
  content: ""; }

.fa-user-circle-o:before {
  content: ""; }

.fa-user-o:before {
  content: ""; }

.fa-id-badge:before {
  content: ""; }

.fa-drivers-license:before,
.fa-id-card:before {
  content: ""; }

.fa-drivers-license-o:before,
.fa-id-card-o:before {
  content: ""; }

.fa-quora:before {
  content: ""; }

.fa-free-code-camp:before {
  content: ""; }

.fa-telegram:before {
  content: ""; }

.fa-thermometer-4:before,
.fa-thermometer:before,
.fa-thermometer-full:before {
  content: ""; }

.fa-thermometer-3:before,
.fa-thermometer-three-quarters:before {
  content: ""; }

.fa-thermometer-2:before,
.fa-thermometer-half:before {
  content: ""; }

.fa-thermometer-1:before,
.fa-thermometer-quarter:before {
  content: ""; }

.fa-thermometer-0:before,
.fa-thermometer-empty:before {
  content: ""; }

.fa-shower:before {
  content: ""; }

.fa-bathtub:before,
.fa-s15:before,
.fa-bath:before {
  content: ""; }

.fa-podcast:before {
  content: ""; }

.fa-window-maximize:before {
  content: ""; }

.fa-window-minimize:before {
  content: ""; }

.fa-window-restore:before {
  content: ""; }

.fa-times-rectangle:before,
.fa-window-close:before {
  content: ""; }

.fa-times-rectangle-o:before,
.fa-window-close-o:before {
  content: ""; }

.fa-bandcamp:before {
  content: ""; }

.fa-grav:before {
  content: ""; }

.fa-etsy:before {
  content: ""; }

.fa-imdb:before {
  content: ""; }

.fa-ravelry:before {
  content: ""; }

.fa-eercast:before {
  content: ""; }

.fa-microchip:before {
  content: ""; }

.fa-snowflake-o:before {
  content: ""; }

.fa-superpowers:before {
  content: ""; }

.fa-wpexplorer:before {
  content: ""; }

.fa-meetup:before {
  content: ""; }

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

/*variables */
/* breakpoints */
.main-section .calendar_month table {
  margin-bottom: 20px;
  width: 100%; }
  .main-section .calendar_month table th {
    padding: 20px 0;
    border-bottom: 1px solid #ddd;
    font-size: 20px;
    line-height: 20px;
    color: #555;
    text-align: center;
    color: #555; }
  .main-section .calendar_month table td {
    padding: 0;
    background: #fff;
    border: 1px solid #ddd;
    font-size: 20px;
    line-height: 20px; }
    .main-section .calendar_month table td a {
      display: block;
      padding: 30px 0;
      background: #fff;
      text-align: center;
      color: #555; }
      .main-section .calendar_month table td a:hover {
        background: #d5e8f1;
        color: #125a95;
        text-decoration: none; }
    .main-section .calendar_month table td.other_month a:hover, .main-section .calendar_month table td.today a:hover {
      background: #d5e8f1;
      color: #125a95;
      text-decoration: none; }
    .main-section .calendar_month table td a:active, .main-section .calendar_month table td.other_month a:active {
      background-color: #d1e3ee;
      color: #3d7cb1;
      text-decoration: none; }
    .main-section .calendar_month table td.today a {
      background-color: #d1e3ee;
      color: #3d7cb1; }
      .main-section .calendar_month table td.today a:active {
        background-color: #d1e3ee;
        color: #3d7cb1;
        text-decoration: none; }
    .main-section .calendar_month table td.other_month a {
      background: #eee;
      color: #999; }

/* DATE PICKER */
.ui-datepicker {
  display: none;
  margin-top: 2px;
  padding: 10px;
  background-color: #444;
  -webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }

.ui-datepicker-header {
  padding-bottom: 5px;
  font-size: 12px;
  color: #fff; }
  .ui-datepicker-header:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  .ui-datepicker-header a {
    display: block;
    padding: 5px 10px;
    background-color: none;
    color: #666;
    cursor: pointer;
    text-decoration: none;
    -webkit-border-radius: 13px;
    -moz-border-radius: 13px;
    border-radius: 13px; }
    .ui-datepicker-header a:hover {
      background-color: #68a1c6;
      color: #fff; }

.ui-datepicker-prev {
  float: left; }

.ui-datepicker-next {
  float: right; }

.ui-datepicker-title {
  padding: 5px 0;
  text-align: center;
  color: #fff; }

.ui-datepicker-calendar {
  margin: 0; }
  .ui-datepicker-calendar th {
    padding: 0;
    font-size: 11px;
    font-weight: normal;
    color: #999;
    text-align: center; }
  .ui-datepicker-calendar td {
    padding: 0;
    border: 1px solid #333;
    font-size: 11px;
    text-align: center; }
    .ui-datepicker-calendar td a {
      display: block;
      padding: 5px 10px;
      background-color: #444;
      border-top: 1px solid #555;
      color: #fff; }
      .ui-datepicker-calendar td a:hover {
        background-color: #68a1c6;
        border-color: #3d7cb1;
        color: #fff;
        text-decoration: none; }
    .ui-datepicker-calendar td.ui-datepicker-current-day a {
      background-color: #68a1c6;
      border-color: #3d7cb1;
      color: #fff;
      text-decoration: none; }
    .ui-datepicker-calendar td.ui-datepicker-other-month a {
      background: #3b3b3b;
      border-top: 1px solid #444;
      color: #777; }

/* INLINE DATE PICKER */
.ui-datepicker-inline {
  -webkit-box-shadow: none;
  -moz-box-shadow: none; }
  .ui-datepicker-inline .ui-datepicker-calendar {
    width: 100%; }
    .ui-datepicker-inline .ui-datepicker-calendar td a {
      padding: 10px 5px; }

/* SIDEBAR DATE PICKER */
.sidebar .ui-datepicker {
  display: block;
  margin-bottom: 20px; }

.sidebar .ui-datepicker-header a {
  padding: 5px 15px; }

.sidebar .ui-datepicker-calendar th, .sidebar .ui-datepicker-calendar td {
  font-size: 13px; }

form {
  margin-bottom: 20px; }
  form h3 {
    margin-bottom: 0; }
  form p {
    margin-bottom: 10px;
    zoom: 1; }
    form p:after {
      content: ".";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    form p label {
      display: block;
      float: left;
      width: 130px; }
      form p label.required {
        font-weight: bold;
        color: #333; }
      form p label small {
        font-weight: normal;
        font-size: 12px; }
  form input {
    width: 55%; }
    form input[type=checkbox], form input[type=radio] {
      width: auto; }
  form ul {
    list-style: none;
    margin: 0 0 10px 0;
    padding: 0; }
  form textarea {
    width: 524px;
    height: 200px; }
  form table {
    margin: 10px 0;
    font-size: 13px; }
    form table th {
      padding: 2px 5px 2px 0;
      font-weight: bold;
      color: #777; }
    form table td {
      padding: 2px 5px 2px 0; }
  form .submit button {
    display: block;
    float: right; }
  form .submit .alt_button {
    display: block;
    float: left; }
  form .submit button.delete {
    margin-right: 10px; }

/* HELP TEXT */
.help_text {
  display: block;
  font-size: 12px;
  line-height: 16px;
  color: #999; }
  .help_text a {
    color: #68a1c6; }

form p .help_text {
  margin: 5px 0 0 130px; }

/* ERRORS */
.errors, .error {
  color: #af4949; }

.errorlist {
  list-style: none;
  margin-bottom: 0;
  font-size: 13px;
  line-height: 20px;
  color: #af4949; }

form p .errors {
  display: block;
  padding: 10px 0;
  border: none;
  background: none;
  font-size: 12px;
  line-height: 16px;
  color: #af4949; }

form .errorlist {
  margin-left: 130px; }

/* INPUTS */
input {
  margin: 0;
  padding: 7px;
  color: #222;
  border: 1.5px #222 solid;
  background: #fff;
  font-size: 14px;
  line-height: 15px;
  color: #555;
  box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.15);
  border-radius: 4px; }

textarea {
  margin: 0;
  padding: 7px;
  border: 1px solid #bbb;
  background: #fff;
  font-family: 'Helvetica Neue', arial, sans-serif;
  font-size: 14px;
  line-height: 15px;
  color: #555;
  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.15);
  -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.15);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }
  textarea:focus {
    padding: 6px;
    border: 2px solid #999; }

input:focus {
  padding: 6px;
  border: 2px solid #999; }

input[type=file] {
  padding: 0;
  width: auto;
  border: none;
  background: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none; }

textarea {
  line-height: 18px; }

/* BUTTONS */
button {
  border: none;
  font-size: initial;
  color: #dedede;
  background: #34495E; }

/* CUSTOM INPUTS */
#id_point {
  margin: 10px 0 0 130px; }

#id_point_map_wrapper {
  margin: 0 0 0 130px; }

#id_point_map_center {
  width: 23px;
  height: 32px;
  background: url(../../images/maps/marker.png) no-repeat;
  overflow: hidden;
  text-indent: -1000px; }

/* AUTO COMPLETE */
.ui-autocomplete {
  list-style: none;
  margin: 5px 0 0 0;
  padding: 7px;
  width: 350px;
  background-color: #fff;
  border: 1px solid #ccc;
  font-size: 14px;
  line-height: 20px;
  color: #555;
  -webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }
  .ui-autocomplete li a {
    display: block;
    padding: 3px 5px;
    font-weight: bold;
    color: #777; }
  .ui-autocomplete .ui-state-hover {
    background-color: #FFFCCC;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px; }

/* SIDEBAR INPUT */
div.sidebar textarea {
  width: 95%;
  height: 110px; }

div.sidebar select {
  width: 100%; }

/* FILTERED SELECT */
form .filtered-select .selector-available, form .filtered-select .selector-chosen {
  font-size: 12px; }

form .filtered-select .selector-available h2, form .filtered-select .selector-chosen h2 {
  border: none;
  background-color: #eee;
  color: #777; }

form .filtered-select .selector-filter {
  margin-bottom: 5px;
  padding: 0;
  border: none; }
  form .filtered-select .selector-filter input {
    padding: 5px;
    width: 258px; }
    form .filtered-select .selector-filter input:focus {
      padding: 4px; }

.accordion {
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid #ddd;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }
  .accordion .ui-accordion-header {
    margin: 0;
    border-top: 1px solid #eee;
    font-size: 13px; }
    .accordion .ui-accordion-header:first-child {
      border-top: none; }
    .accordion .ui-accordion-header a {
      display: block;
      padding: 3px 10px 3px 25px;
      background: url(../images/arrows/grey_right.gif) 10px 50% no-repeat;
      font-weight: bold;
      color: #999; }
      .accordion .ui-accordion-header a:hover {
        text-decoration: none;
        color: #18629d; }
  .accordion .ui-state-active a {
    background-image: url(../images/arrows/grey_down.gif);
    color: #777; }
  .accordion .ui-accordion-content {
    padding: 10px;
    border-top: 1px solid #eee; }
    .accordion .ui-accordion-content table {
      margin: 0;
      padding: 0;
      width: 100%; }
      .accordion .ui-accordion-content table th {
        padding: 2px 0;
        width: 100px;
        font-size: 13px;
        line-height: 18px;
        font-weight: bold;
        color: #333; }
      .accordion .ui-accordion-content table td {
        padding: 2px 0;
        font-size: 13px;
        line-height: 18px;
        color: #555; }
    .accordion .ui-accordion-content ul {
      list-style: none;
      margin: 0;
      padding: 0;
      font-size: 13px;
      line-height: 17px; }
    .accordion .ui-accordion-content li {
      margin-bottom: 10px; }
      .accordion .ui-accordion-content li a {
        font-weight: bold; }
      .accordion .ui-accordion-content li small {
        font-size: 12px;
        white-space: nowrap;
        color: #999; }

.pagination {
  margin-bottom: 20px;
  overflow: hidden; }
  .pagination a, .pagination span {
    display: block;
    float: left;
    margin: 0 1px 0 0;
    padding: 8px 25px;
    border: none;
    font-weight: normal;
    font-size: 12px;
    line-height: 13px;
    color: #777;
    text-align: center;
    cursor: pointer;
    background: #eee;
    border: 1px solid #ccc;
    background: -webkit-gradient(linear, center top, center bottom, left, right);
    background: -moz-linear-gradient(top center, #eee, #ccc);
    -webkit-box-shadow: inset 0 1px 0 white;
    -moz-box-shadow: inset 0 1px 0 white; }
  .pagination a:hover, .pagination span:hover {
    text-decoration: none; }
  .pagination a:active {
    outline: none;
    -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5); }
  .pagination span {
    color: #999;
    background: #eee;
    border-color: #ddd;
    -webkit-box-shadow: none;
    -moz-box-shadow: none; }
    .pagination span:active {
      outline: none;
      -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);
      -moz-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5); }
  .pagination .next {
    -moz-border-radius: 0 4px 4px 0;
    border-radius: 0 4px 4px 0; }
  .pagination .previous {
    -moz-border-radius: 4px 0 0 4px;
    border-radius: 4px 0 0 4px; }

.module {
  margin-bottom: 20px;
  border: 1px solid #F8BE58; }
  .module h2 {
    margin: 0; }
    .module h2 a {
      display: block;
      margin-bottom: 1px;
      padding: 5px 0;
      background-color: #ED3833;
      font-size: 13px;
      font-weight: bold;
      line-height: 18px;
      color: #777;
      text-align: center; }
    .module h2.last a {
      margin-bottom: 0; }
    .module h2 a:hover {
      background-color: #ED3833;
      color: #fff;
      text-decoration: none; }
  .module h3 {
    margin: 0 10px; }
  .module ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  .module li {
    border-bottom: 1px solid #F8BE58;
    font-weight: bold; }
    .module li.last {
      border: none; }
    .module li a {
      display: block;
      padding: 10px;
      overflow: hidden; }
      .module li a:hover {
        background: #ED3833;
        color: #fff;
        text-decoration: none; }
      .module li a img.thumbnail {
        display: block;
        float: right;
        margin: 0 0 0 10px; }
      .module li a small {
        display: block;
        font-size: 12px;
        color: #999; }
      .module li a:hover small {
        color: #fff; }
      .module li a strong {
        display: block;
        font-size: 12px;
        color: #777; }
    .module li.last a.button {
      padding: 3px 15px;
      width: auto;
      background: #fff url(../images/button_bg.gif) left bottom repeat-x;
      border: 1px solid #ccc;
      color: #777;
      text-align: center;
      cursor: pointer; }
    .module li.last a:hover.button {
      background: #ED3833;
      border-color: #ED3833;
      color: #fff;
      text-decoration: none; }
  .module .body {
    padding: 9px;
    overflow: hidden; }
    .module .body h3 {
      margin: 0; }
    .module .body img {
      margin: 10px 0; }
    .module .body .thumbnail {
      float: right;
      margin: 0 0 10px 10px; }
      .module .body .thumbnail img {
        margin: 0; }
    .module .body blockquote {
      margin: 0;
      padding: 0; }
      .module .body blockquote p {
        font-size: 14px;
        font-weight: bold; }
        .module .body blockquote p.cite {
          margin: -5px 0 0 0;
          font-size: 12px;
          font-weight: normal;
          color: #777; }
  .module .footer {
    margin-bottom: 1px;
    padding: 5px 0;
    border-top: 1px solid #F8BE58;
    font-size: 13px;
    line-height: 17px;
    text-align: center; }
    .module .footer a {
      font-weight: bold;
      color: #777; }
      .module .footer a:hover {
        color: #ED3833;
        text-decoration: none; }

.module_photos {
  padding: 5px 0;
  background: #eee;
  border: none; }
  .module_photos h2 a {
    background: none;
    color: #555; }
    .module_photos h2 a:hover {
      background: none;
      text-decoration: underline;
      color: #555; }
  .module_photos ul {
    margin: 11px;
    padding: 0;
    overflow: hidden; }
    .module_photos ul li {
      float: left;
      margin: 0;
      padding: 0;
      border: none; }
      .module_photos ul li a {
        display: block;
        float: left;
        padding: 0; }
        .module_photos ul li a:hover {
          background: #777; }
        .module_photos ul li a img {
          display: block;
          margin: 1px; }
  .module_photos .footer {
    border: none; }
    .module_photos .footer a {
      color: #777; }

.module .radar a img {
  margin: 10px 0 10px 2px;
  padding: 5px;
  margin: auto;
  border: 1px solid #F8BE58; }

.module .radar a:hover img {
  padding: 6px;
  border: none;
  background: #ED3833; }

.module .radar ul li {
  display: block;
  font-size: 13px;
  font-weight: bold; }
  .module .radar ul li small {
    display: block;
    font-size: 12px;
    color: #777; }

.inline {
  margin-top: 5px;
  margin-bottom: 15px;
  padding: 15px;
  background-color: #FCFCFC;
  border-top: 1px solid #F0F0F0;
  border-bottom: 1px solid #F0F0F0; }

.inline-left {
  float: left;
  margin-right: 20px;
  width: 180px;
  clear: left; }

.inline-right {
  float: right;
  margin-left: 20px;
  width: 180px;
  clear: right; }

.inline p, .inline ol, .inline ul {
  margin-bottom: 10px;
  font-size: 12px;
  line-height: 18px; }

.inline .type {
  margin-bottom: 0;
  font-size: 11px;
  color: #68a1c6; }

.inline h3, .inline .title, .inline .name, .inline .topic {
  margin-bottom: 5px;
  font-size: 14px;
  font-weight: bold;
  line-height: 17px;
  color: #39b44a; }

.inline .more {
  margin-bottom: 0; }

.inline .button, .inline #comment_form button, #comment_form .inline button {
  font-size: 12px; }

.inline label {
  display: inline; }

.inline form {
  margin-bottom: 0; }
  .inline form .submit {
    margin-bottom: 0; }
    .inline form .submit .button, .inline form .submit #comment_form button, #comment_form .inline form .submit button {
      padding: 8px 25px;
      width: auto; }
    .inline form .submit .alt_button {
      display: inline;
      float: none;
      padding: 8px 10px;
      background: none;
      font-size: 12px;
      color: #68a1c6; }

/* AUDIO CLIP SET */
.inline_audio_clip_set .audio_clip_list {
  padding-left: 0;
  font-size: 13px;
  line-height: 18px; }
  .inline_audio_clip_set .audio_clip_list li {
    margin-bottom: 10px; }

/* BUSINESS AD */
.ad_inline h6 {
  line-height: 16px; }

.ad_inline .thumbnail {
  margin-bottom: 5px; }

/* CATEGORY */
.category_inline .thumbnail {
  margin-bottom: 20px;
  display: block; }
  .category_inline .thumbnail:last-child {
    margin-bottom: 0; }

/* CHAT */
.inline_chat form {
  margin: 10px 0 0 0; }
  .inline_chat form p {
    margin: 0;
    padding: 0; }

/* DOCUMENT */
.inline_document .thumbnail {
  margin-bottom: 5px; }

.inline_document .download {
  margin-bottom: 0;
  font-size: 11px;
  font-weight: bold; }
  .inline_document .download a {
    padding: 3px 10px;
    background: #999;
    color: #fff;
    -webkit-border-radius: 9px;
    -moz-border-radius: 9px; }
    .inline_document .download a:hover {
      background: #326a99; }

/* EMBEDDED */
.inline_embedded {
  width: 300px; }
  .inline_embedded .caption {
    margin-top: 10px; }

/* EVENT TIME */
.inline_event_time .event_info {
  list-style: none;
  padding-left: 0;
  font-size: 13px;
  line-height: 16px;
  color: #555; }
  .inline_event_time .event_info li {
    margin-bottom: 5px; }

/* FEATURE */
.inline_feature .thumbnail {
  margin-bottom: 5px; }

/* ON THE STREET */
.inline_onthestreet .question {
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 18px;
  color: #333; }

.inline_onthestreet .thumbnail {
  margin-bottom: 10px; }

.inline_onthestreet blockquote {
  margin-bottom: 10px;
  padding: 0; }
  .inline_onthestreet blockquote p {
    margin-bottom: 5px;
    font-size: 14px;
    line-height: 18px; }
  .inline_onthestreet blockquote cite {
    font-size: 12px;
    color: #999; }

/* MOVIE */
.inline_movie .thumbnail {
  margin-bottom: 5px; }

/* PHOTO */
.inline_photo .thumbnail {
  margin-bottom: 5px; }
  .inline_photo .thumbnail img {
    width: 100%; }

.inline_photo .byline, .inline_photo .credit {
  margin-bottom: 5px;
  font-weight: bold;
  color: #777; }

.inline_photo.inline_weight_lead {
  padding: 0; }
  .inline_photo.inline_weight_lead .photo_meta {
    padding: 15px; }

/* PODCAST EPISODE */
.inline_podcast .show {
  margin-bottom: 0;
  font-size: 13px;
  line-height: 18px; }
  .inline_podcast .show a {
    color: #999; }

.inline_podcast .episode {
  margin-bottom: 10px;
  font-size: 16px;
  line-height: 18px; }

.inline_podcast .player {
  margin-bottom: 10px; }

/* POLL */
.inline_poll .question {
  margin-bottom: 5px;
  font-size: 18px;
  line-height: 22px;
  color: #555; }

.inline_poll form ul {
  list-style: none;
  padding: 0;
  color: #555; }
  .inline_poll form ul li {
    font-weight: bold; }

/* POLL RESULTS */
.inline_poll_results .question {
  margin-bottom: 10px;
  font-size: 16px;
  line-height: 20px;
  color: #555; }
  .inline_poll_results .question a {
    color: #39b44a; }

.inline_poll_results .results {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 12px;
  font-weight: bold; }
  .inline_poll_results .results li {
    position: relative;
    margin-bottom: 5px;
    padding-bottom: 15px;
    border: none; }
    .inline_poll_results .results li .total {
      font-size: 11px;
      font-weight: normal;
      color: #68a1c6; }
    .inline_poll_results .results li .bar {
      position: absolute;
      bottom: 0;
      left: 0;
      height: 15px;
      background-color: #69c67a; }
      .inline_poll_results .results li .bar .percent {
        position: absolute;
        top: -2px;
        right: -35px;
        width: 30px;
        font-weight: bold;
        color: #39b44a;
        text-align: left; }

.inline_poll_results .total_votes {
  color: #68a1c6; }

.inline_weight_lead.inline_poll_results .question, .inline_weight_large.inline_poll_results .question {
  font-size: 20px;
  line-height: 25px; }

.inline_weight_lead.inline_poll_results .results, .inline_weight_large.inline_poll_results .results {
  font-size: 15px; }

.inline_weight_lead.inline_poll_results .results li, .inline_weight_large.inline_poll_results .results li {
  padding-bottom: 30px; }

.inline_weight_lead.inline_poll_results .results li .bar, .inline_weight_large.inline_poll_results .results li .bar {
  height: 25px; }

.inline_weight_lead.inline_poll_results .results li .bar .percent, .inline_weight_large.inline_poll_results .results li .bar .percent {
  top: 2px; }

/* RECURRING INLINE */
.recurring_inline h3 {
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 18px;
  color: #555; }

.recurring_inline ul {
  padding-left: 0;
  list-style: none;
  font-size: 13px;
  line-height: 18px; }

.recurring_inline li {
  margin-bottom: 10px; }

/* TEXT ININE */
.text_inline ul {
  padding-left: 15px; }
  .text_inline ul li {
    margin-bottom: 10px; }

/* VIDEO */
.inline_video .thumbnail {
  margin-bottom: 5px; }

.inline_video.inline_weight_lead {
  padding: 0; }
  .inline_video.inline_weight_lead .caption {
    padding: 15px; }

.inline_video.inline_weight_large .title, .inline_video.inline_weight_medium .title {
  margin: 15px 0 5px 0; }

/* VIDEO SET */
.inline_video_set .thumbnail {
  margin-bottom: 5px; }

/* WEIGHT: LEAD */
.inline_weight_lead {
  float: none;
  width: auto;
  margin: 0 0 15px 0; }
  .inline_weight_lead .title {
    font-size: 20px;
    line-height: 25px; }
  .inline_weight_lead .type {
    display: none; }
  .inline_weight_lead textarea {
    width: 628px;
    height: 50px; }

/* WEIGHT: LARGE */
.inline_weight_large {
  float: none;
  width: auto;
  margin: 0 0 15px 0; }
  .inline_weight_large .title {
    font-size: 20px;
    line-height: 25px; }
  .inline_weight_large textarea {
    width: 628px;
    height: 50px; }

/* WEIGHT: MEDIUM */
.inline_weight_medium {
  width: 410px; }
  .inline_weight_medium textarea {
    width: 400px;
    height: 50px; }

.wmd-panel {
  margin-left: 25%;
  margin-right: 25%;
  width: 50%;
  min-width: 500px; }

.wmd-button-bar {
  position: relative;
  padding: 5px;
  background-color: #f5f5f5;
  zoom: 1; }
  .wmd-button-bar:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }

.wmd-preview {
  margin: 10px 0;
  padding: 10px;
  border: 1px dashed #ddd;
  zoom: 1; }
  .wmd-preview:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }

.wmd-button-row {
  list-style: none;
  margin: 0;
  padding: 0 0;
  font-size: 12px;
  line-height: 20px;
  color: #777;
  overflow: visible; }
  .wmd-button-row li {
    float: left;
    display: block;
    margin: 0 5px;
    font-weight: bold;
    cursor: pointer; }
    .wmd-button-row li:hover {
      color: #555; }
    .wmd-button-row li a {
      color: #777;
      text-decoration: none; }
    .wmd-button-row li.wmd-spacer {
      width: 10px;
      height: 20px; }

.wmd-bold-button {
  left: 0px;
  background-position: 0px 0; }

.wmd-italic-button {
  left: 25px;
  background-position: -20px 0; }

.wmd-spacer1 {
  left: 50px; }

.wmd-link-button {
  left: 75px;
  background-position: -40px 0; }

.wmd-quote-button {
  left: 100px;
  background-position: -60px 0; }

.wmd-code-button {
  left: 125px;
  background-position: -80px 0; }

.wmd-image-button {
  left: 150px;
  background-position: -100px 0; }

.wmd-spacer2 {
  left: 175px; }

.wmd-olist-button {
  left: 200px;
  background-position: -120px 0; }

.wmd-ulist-button {
  left: 225px;
  background-position: -140px 0; }

.wmd-heading-button {
  left: 250px;
  background-position: -160px 0; }

.wmd-hr-button {
  left: 275px;
  background-position: -180px 0; }

.wmd-spacer3 {
  left: 300px; }

.wmd-undo-button {
  left: 325px;
  background-position: -200px 0; }

.wmd-redo-button {
  left: 350px;
  background-position: -220px 0; }

.wmd-help-button {
  right: 0px;
  background-position: -240px 0; }

.wmd-prompt-background {
  background-color: #000; }

.wmd-prompt-dialog {
  background-color: #fff;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px; }
  .wmd-prompt-dialog > div {
    font-size: 0.8em;
    font-family: arial, helvetica, sans-serif; }

.wmd-embed-help {
  padding: 10px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  width: 180px;
  background-color: #3d7cb1;
  position: absolute;
  z-index: 1001;
  top: 30px;
  right: 0px; }
  .wmd-embed-help p {
    font-size: 12px;
    border-bottom: none;
    margin-bottom: .2em;
    padding-bottom: 0px;
    color: #fff; }

.wmd-embed {
  background-color: transparent;
  color: #888;
  padding: 0px; }

.try_embed {
  font-size: 12px;
  border-bottom: none;
  color: #fff;
  font-weight: bold;
  padding-right: 16px;
  background: url(../../images/arrows/white_right.gif) no-repeat;
  background-position: right center; }

.oembed {
  margin: 0px auto 1em auto;
  padding: 0px; }
  .oembed .credit {
    font-weight: normal; }

.oembed-video .credit, .oembed-photo .credit {
  margin: 0px;
  padding: 0px;
  font-size: 12px; }

.oembed-video p small {
  color: #777; }

.oembed-link {
  float: none; }
  .oembed-link .credit {
    font-size: 14px;
    line-height: 18px; }

.wmd-preview .oembed-video {
  margin: 0 auto 10px auto;
  padding: 70px 10px;
  background: #333;
  text-align: center; }
  .wmd-preview .oembed-video h3 {
    font-size: 20px;
    color: #fff; }
  .wmd-preview .oembed-video p, .wmd-preview .oembed-video a {
    color: #fff; }

body.entry_detail .wmd-preview p {
  border-bottom: 0px; }

.list .comment .oembed, #comment_form .oembed, #answers .oembed, .comment_text .oembed {
  float: right;
  margin: 0 0 10px 10px;
  clear: right; }

.list .comment .oembed-link, #comment_form .oembed-link, #answers .oembed-link, .comment_text .oembed-link {
  float: none; }

.list .comment .oembed-video p, .list .comment .oembed-photo p {
  font-size: 12px; }

#answers .list .oembed-video p, #answers .list .oembed-photo p {
  font-size: 12px; }

.comment_text {
  zoom: 1; }
  .comment_text:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }

.galleries .wmd-preview, .galleries .wmd-button-bar {
  width: 600px; }

#comment_form .wmd-image-button {
  display: none; }

/* .list .comment ul, .wmd-preview ul, #answers ul { list-style-type: disc; margin-left: 15px; } */
/* RESET */
/* #toolbar, #header, #nav, #subnav, #comments, .sidebar, #footer { display: none; } */
#page, #body, #body .wrapper, .content, .content_title {
  margin: 0;
  padding: 0;
  width: 100% !important;
  min-width: 0; }

#sql_debug {
  display: none; }

/* POPUP STYLES */
body {
  padding: 0px !important;
  background: #fff !important; }

form textarea {
  width: 435px; }

.content_title {
  padding: 0 0 10px 0 !important;
  border-bottom: 1px solid #ddd; }

.content_title h2 {
  margin-top: 0;
  font-size: 20px;
  line-height: 25px; }

.content_title .feed {
  display: none; }

.content {
  padding: 20px 0 !important; }

.inline {
  margin-top: 5px;
  margin-bottom: 15px;
  padding: 15px;
  background-color: #FCFCFC;
  border-top: 1px solid #F0F0F0;
  border-bottom: 1px solid #F0F0F0; }

.inline-left {
  float: left;
  margin-right: 20px;
  width: 180px;
  clear: left; }

.inline-right {
  float: right;
  margin-left: 20px;
  width: 180px;
  clear: right; }

.inline p, .inline ol, .inline ul {
  margin-bottom: 10px;
  font-size: 12px;
  line-height: 18px; }

.inline .type {
  margin-bottom: 0;
  font-size: 11px;
  color: #68a1c6; }

.inline h3, .inline .title, .inline .name, .inline .topic {
  margin-bottom: 5px;
  font-size: 14px;
  font-weight: bold;
  line-height: 17px;
  color: #39b44a; }

.inline .more {
  margin-bottom: 0; }

.inline .button, .inline #comment_form button, #comment_form .inline button {
  font-size: 12px; }

.inline label {
  display: inline; }

.inline form {
  margin-bottom: 0; }
  .inline form .submit {
    margin-bottom: 0; }
    .inline form .submit .button, .inline form .submit #comment_form button, #comment_form .inline form .submit button {
      padding: 8px 25px;
      width: auto; }
    .inline form .submit .alt_button {
      display: inline;
      float: none;
      padding: 8px 10px;
      background: none;
      font-size: 12px;
      color: #68a1c6; }

/* AUDIO CLIP SET */
.inline_audio_clip_set .audio_clip_list {
  padding-left: 0;
  font-size: 13px;
  line-height: 18px; }
  .inline_audio_clip_set .audio_clip_list li {
    margin-bottom: 10px; }

/* BUSINESS AD */
.ad_inline h6 {
  line-height: 16px; }

.ad_inline .thumbnail {
  margin-bottom: 5px; }

/* CATEGORY */
.category_inline .thumbnail {
  margin-bottom: 20px;
  display: block; }
  .category_inline .thumbnail:last-child {
    margin-bottom: 0; }

/* CHAT */
.inline_chat form {
  margin: 10px 0 0 0; }
  .inline_chat form p {
    margin: 0;
    padding: 0; }

/* DOCUMENT */
.inline_document .thumbnail {
  margin-bottom: 5px; }

.inline_document .download {
  margin-bottom: 0;
  font-size: 11px;
  font-weight: bold; }
  .inline_document .download a {
    padding: 3px 10px;
    background: #999;
    color: #fff;
    -webkit-border-radius: 9px;
    -moz-border-radius: 9px; }
    .inline_document .download a:hover {
      background: #326a99; }

/* EMBEDDED */
.inline_embedded {
  width: 300px; }
  .inline_embedded .caption {
    margin-top: 10px; }

/* EVENT TIME */
.inline_event_time .event_info {
  list-style: none;
  padding-left: 0;
  font-size: 13px;
  line-height: 16px;
  color: #555; }
  .inline_event_time .event_info li {
    margin-bottom: 5px; }

/* FEATURE */
.inline_feature .thumbnail {
  margin-bottom: 5px; }

/* ON THE STREET */
.inline_onthestreet .question {
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 18px;
  color: #333; }

.inline_onthestreet .thumbnail {
  margin-bottom: 10px; }

.inline_onthestreet blockquote {
  margin-bottom: 10px;
  padding: 0; }
  .inline_onthestreet blockquote p {
    margin-bottom: 5px;
    font-size: 14px;
    line-height: 18px; }
  .inline_onthestreet blockquote cite {
    font-size: 12px;
    color: #999; }

/* MOVIE */
.inline_movie .thumbnail {
  margin-bottom: 5px; }

/* PHOTO */
.inline_photo .thumbnail {
  margin-bottom: 5px; }
  .inline_photo .thumbnail img {
    width: 100%; }

.inline_photo .byline, .inline_photo .credit {
  margin-bottom: 5px;
  font-weight: bold;
  color: #777; }

.inline_photo.inline_weight_lead {
  padding: 0; }
  .inline_photo.inline_weight_lead .photo_meta {
    padding: 15px; }

/* PODCAST EPISODE */
.inline_podcast .show {
  margin-bottom: 0;
  font-size: 13px;
  line-height: 18px; }
  .inline_podcast .show a {
    color: #999; }

.inline_podcast .episode {
  margin-bottom: 10px;
  font-size: 16px;
  line-height: 18px; }

.inline_podcast .player {
  margin-bottom: 10px; }

/* POLL */
.inline_poll .question {
  margin-bottom: 5px;
  font-size: 18px;
  line-height: 22px;
  color: #555; }

.inline_poll form ul {
  list-style: none;
  padding: 0;
  color: #555; }
  .inline_poll form ul li {
    font-weight: bold; }

/* POLL RESULTS */
.inline_poll_results .question {
  margin-bottom: 10px;
  font-size: 16px;
  line-height: 20px;
  color: #555; }
  .inline_poll_results .question a {
    color: #39b44a; }

.inline_poll_results .results {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 12px;
  font-weight: bold; }
  .inline_poll_results .results li {
    position: relative;
    margin-bottom: 5px;
    padding-bottom: 15px;
    border: none; }
    .inline_poll_results .results li .total {
      font-size: 11px;
      font-weight: normal;
      color: #68a1c6; }
    .inline_poll_results .results li .bar {
      position: absolute;
      bottom: 0;
      left: 0;
      height: 15px;
      background-color: #69c67a; }
      .inline_poll_results .results li .bar .percent {
        position: absolute;
        top: -2px;
        right: -35px;
        width: 30px;
        font-weight: bold;
        color: #39b44a;
        text-align: left; }

.inline_poll_results .total_votes {
  color: #68a1c6; }

.inline_weight_lead.inline_poll_results .question, .inline_weight_large.inline_poll_results .question {
  font-size: 20px;
  line-height: 25px; }

.inline_weight_lead.inline_poll_results .results, .inline_weight_large.inline_poll_results .results {
  font-size: 15px; }

.inline_weight_lead.inline_poll_results .results li, .inline_weight_large.inline_poll_results .results li {
  padding-bottom: 30px; }

.inline_weight_lead.inline_poll_results .results li .bar, .inline_weight_large.inline_poll_results .results li .bar {
  height: 25px; }

.inline_weight_lead.inline_poll_results .results li .bar .percent, .inline_weight_large.inline_poll_results .results li .bar .percent {
  top: 2px; }

/* RECURRING INLINE */
.recurring_inline h3 {
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 18px;
  color: #555; }

.recurring_inline ul {
  padding-left: 0;
  list-style: none;
  font-size: 13px;
  line-height: 18px; }

.recurring_inline li {
  margin-bottom: 10px; }

/* TEXT ININE */
.text_inline ul {
  padding-left: 15px; }
  .text_inline ul li {
    margin-bottom: 10px; }

/* VIDEO */
.inline_video .thumbnail {
  margin-bottom: 5px; }

.inline_video.inline_weight_lead {
  padding: 0; }
  .inline_video.inline_weight_lead .caption {
    padding: 15px; }

.inline_video.inline_weight_large .title, .inline_video.inline_weight_medium .title {
  margin: 15px 0 5px 0; }

/* VIDEO SET */
.inline_video_set .thumbnail {
  margin-bottom: 5px; }

/* WEIGHT: LEAD */
.inline_weight_lead {
  float: none;
  width: auto;
  margin: 0 0 15px 0; }
  .inline_weight_lead .title {
    font-size: 20px;
    line-height: 25px; }
  .inline_weight_lead .type {
    display: none; }
  .inline_weight_lead textarea {
    width: 628px;
    height: 50px; }

/* WEIGHT: LARGE */
.inline_weight_large {
  float: none;
  width: auto;
  margin: 0 0 15px 0; }
  .inline_weight_large .title {
    font-size: 20px;
    line-height: 25px; }
  .inline_weight_large textarea {
    width: 628px;
    height: 50px; }

/* WEIGHT: MEDIUM */
.inline_weight_medium {
  width: 410px; }
  .inline_weight_medium textarea {
    width: 400px;
    height: 50px; }

/* PHOTOS AND GALLERIES */
body.gallery_detail #page {
  background-color: #111; }

body.gallery_detail #subnav {
  margin-bottom: 0;
  background-color: #333; }

body.gallery_detail #body {
  padding-top: 10px; }

body.gallery_detail .content_title {
  border: none; }
  body.gallery_detail .content_title h2 {
    color: #fff; }
  body.gallery_detail .content_title p {
    color: #999; }
  body.gallery_detail .content_title a {
    color: #fff; }
  body.gallery_detail .content_title .back a {
    color: #777; }
  body.gallery_detail .content_title .vote_box {
    margin-top: 0;
    display: none; }

body.gallery_detail .object_tools {
  display: none; }

body.gallery_detail .content {
  width: 990px; }

body.gallery_detail .list .item {
  margin-bottom: 50px; }
  body.gallery_detail .list .item .thumbnail {
    float: none;
    margin: 0; }
    body.gallery_detail .list .item .thumbnail img {
      display: block;
      margin: 0; }
  body.gallery_detail .list .item .caption {
    padding: 20px;
    background-color: #222;
    font-size: 15px;
    line-height: 20px;
    color: #bbb; }

body.gallery_detail #comments {
  padding: 20px;
  background-color: #fff;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }

.gallery_photo_detail .previous_next {
  padding: 10px;
  width: 300px;
  margin-bottom: 10px;
  background: #fff;
  overflow: hidden; }
  .gallery_photo_detail .previous_next div {
    float: left;
    width: 120px; }
  .gallery_photo_detail .previous_next .previous {
    margin-right: 10px;
    padding-left: 20px;
    background: url(../../images/arrows/less_than.gif) 0 50% no-repeat; }
  .gallery_photo_detail .previous_next .next {
    margin-left: 10px;
    padding-right: 20px;
    background: url(../../images/arrows/greater_than.gif) 100% 50% no-repeat; }
  .gallery_photo_detail .previous_next .no_photo {
    margin: 0;
    padding: 30px 10px 0 10px;
    height: 70px;
    background: #eee;
    font-size: 13px;
    line-height: 18px;
    font-weight: bold;
    text-align: center;
    color: #777; }
  .gallery_photo_detail .previous_next a img {
    display: block; }

.photo_grid {
  overflow: hidden; }
  .photo_grid .item {
    float: left;
    margin: 0 10px 10px 0; }
    .photo_grid .item .thumbnail {
      margin: 0; }
    .photo_grid .item .photo_info {
      display: none; }

table.photos td {
  padding: 0 20px 20px 0;
  width: 210px; }
  table.photos td .thumbnail {
    margin-left: 0; }
  table.photos td.last {
    padding-right: 0; }
  table.photos td .caption {
    margin-bottom: 0;
    font-size: 13px;
    line-height: 18px;
    color: #777; }
  table.photos td ul {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 12px;
    line-height: 18px;
    color: #999; }

/* AUDIO */
.audio_list .related {
  margin: 0;
  font-size: 13px;
  color: #999; }
  .audio_list .related strong {
    color: #777; }

.audio_player {
  margin-bottom: 20px;
  padding: 5px;
  width: 580px;
  height: 35px;
  background: #ddd; }

ul.playlist {
  list-style: none;
  padding-left: 3px;
  font-size: 12px;
  line-height: 15px; }
  ul.playlist li {
    margin: 5px 0;
    padding: 0;
    background: none; }
    ul.playlist li a {
      color: #4e9bda; }
      ul.playlist li a.active {
        color: #125a95;
        font-weight: bold; }

/* VIDEO */
video {
  background: #111; }

body.video_detail .video {
  margin-bottom: 20px; }

body.video_list #video_details {
  margin-bottom: 20px;
  padding: 10px 5px 5px 5px; }
  body.video_list #video_details p {
    margin-bottom: 5px; }
    body.video_list #video_details p.caption {
      margin: 8px 0;
      color: #666;
      font-weight: normal; }
  body.video_list #video_details ul.byline {
    list-style: none;
    margin: 5px 0 0 0;
    padding: 0;
    font-size: 12px;
    line-height: 20px;
    color: #666;
    overflow: hidden; }
    body.video_list #video_details ul.byline li {
      float: left;
      margin: 0 10px 0 0;
      overflow: hidden; }

ul.video_list {
  list-style: none;
  margin: 25px 0 0 0;
  padding: 0;
  font-size: 14px;
  line-height: 18px;
  color: #666;
  overflow: hidden; }

h3 + ul.video_list {
  margin-top: 5px; }

ul.video_list li {
  width: 205px;
  height: 250px;
  float: left;
  margin: 0 21px 0 0; }
  ul.video_list li.last {
    margin-right: 0; }
  ul.video_list li a.thumbnail img {
    padding: 4px;
    margin: auto;
    border: 1px solid #ddd; }
  ul.video_list li a.thumbnail:hover img {
    padding: 5px;
    border: none;
    background: #18629d; }
  ul.video_list li a.title {
    display: block;
    padding-bottom: 4px;
    margin-bottom: 2px;
    font-weight: bold; }
  ul.video_list li span.date {
    display: block;
    font-size: 12px; }
  ul.video_list li .hidden {
    display: none; }

div.video_list .item .thumbnail {
  float: left;
  margin: 0 10px 0 0; }

.module_video {
  padding: 0;
  border: none;
  background-color: #111; }
  .module_video h2 a {
    margin-bottom: 0;
    background-color: #111;
    color: #fff; }
    .module_video h2 a:hover {
      background-color: #111; }
  .module_video .body {
    padding: 0; }
    .module_video .body p {
      margin: 10px;
      color: #999;
      font-size: 13px;
      line-height: 16px; }
      .module_video .body p a {
        color: #68a1c6; }

body.event_archive_day .content_title h2 {
  padding-right: 360px; }

body.event_archive_month .content .month_calendar {
  border: none; }
  body.event_archive_month .content .month_calendar table th {
    padding: 15px 0;
    font-size: 20px;
    line-height: 25px; }
  body.event_archive_month .content .month_calendar table td {
    font-size: 20px;
    line-height: 25px; }
    body.event_archive_month .content .month_calendar table td a {
      padding: 25px 0; }

body.news_archive_day .calendar {
  width: auto; }

.event_related_info ul.subscribe li span {
  display: block;
  padding: 10px 0; }
  .event_related_info ul.subscribe li span small {
    display: block;
    font-size: 12px;
    color: #999999; }

.event_related_info ul.subscribe li a {
  display: inline; }

.event_search_form {
  display: block;
  margin-bottom: 20px;
  padding: 20px;
  border: 1px solid #ddd;
  background: #eee; }
  .event_search_form p {
    margin-bottom: 0; }
    .event_search_form p select {
      margin-right: 5px;
      font-size: 15px;
      width: 120px; }
    .event_search_form p input {
      width: 47%; }
    .event_search_form p .button, .event_search_form p #comment_form button, #comment_form .event_search_form p button {
      margin-right: 5px;
      width: auto; }
      .event_search_form p .button:hover, .event_search_form p #comment_form button:hover, #comment_form .event_search_form p button:hover {
        background: #18629d; }
    .event_search_form p .advanced {
      font-size: 13px;
      color: #777; }
  .event_search_form .advanced_filters {
    margin: 0;
    padding: 0;
    list-style: none; }
    .event_search_form .advanced_filters p {
      margin-top: 10px;
      font-size: 13px;
      color: #777;
      overflow: hidden; }
      .event_search_form .advanced_filters p label {
        float: left;
        padding-right: 10px;
        width: 120px;
        font-weight: bold;
        color: #555;
        text-align: right; }
      .event_search_form .advanced_filters p a {
        color: #777; }
    .event_search_form .advanced_filters .date_span input {
      width: 100px; }
    .event_search_form .advanced_filters .checkbox {
      font-weight: bold;
      color: #555; }
      .event_search_form .advanced_filters .checkbox input {
        width: auto; }
    .event_search_form .advanced_filters .hide {
      margin: 10px 0 0 130px; }
    .event_search_form .advanced_filters li {
      padding: 0 0 10px 0; }
      .event_search_form .advanced_filters li label {
        display: inline-block;
        width: 100px;
        font-weight: normal; }
    .event_search_form .advanced_filters .short-width input {
      width: 85px; }
    .event_search_form .advanced_filters .checkbox label {
      width: 350px; }
    .event_search_form .advanced_filters .checkbox input {
      width: auto; }
  .event_search_form input[type=submit] {
    margin-top: 10px;
    padding: 5px 15px;
    width: auto;
    background: #fff url(../../images/button_bg.gif) repeat-x left bottom;
    border: 1px solid #ccc;
    font: bold 13px/14px 'Helvetica Neue', Arial, sans-serif;
    color: #777;
    cursor: pointer; }
    .event_search_form input[type=submit]:hover {
      background: #125a95;
      border-color: #125a95;
      color: #fff; }

.reminder_form .errorlist {
  list-style: none;
  margin: 0 0 0 140px;
  padding: 0;
  font-size: 13px;
  color: red; }

.reminder_form p {
  margin-bottom: 10px;
  overflow: hidden;
  font-size: 13px; }
  .reminder_form p label {
    float: left;
    padding-right: 10px;
    width: 130px;
    font-weight: bold;
    color: #666; }
  .reminder_form p input {
    padding: 3px;
    width: 200px;
    font-size: 13px;
    border: 1px solid #ccc; }
  .reminder_form p select {
    padding: 3px;
    width: 200px;
    font-size: 13px; }
  .reminder_form p.submit {
    margin-left: 140px; }
    .reminder_form p.submit input {
      padding: 4px 15px;
      width: auto;
      background: #18629d;
      border: none;
      color: #fff; }

table.event_list {
  margin-bottom: 5px;
  width: 100%;
  border-bottom: 1px solid #eee; }
  table.event_list tr {
    border-bottom: 1px solid #eee; }
    table.event_list tr.last {
      border: none; }
  table.event_list th {
    padding: 0 0 0 10px;
    font-size: 10px;
    background-color: #f5f5f5;
    color: #999;
    text-transform: uppercase; }
  table.event_list td {
    font-size: 13px;
    line-height: 20px; }
    table.event_list td.title {
      padding: 10px 10px 10px 0; }
      table.event_list td.title h4 {
        margin: 0;
        padding: 0;
        font-size: 14px;
        font-weight: bold;
        line-height: 20px; }
      table.event_list td.title .thumbnail {
        float: left;
        margin-right: 10px; }
      table.event_list td.title h5 {
        margin: 0;
        padding: 0;
        border: none;
        font-size: 14px;
        font-weight: normal;
        line-height: 20px;
        color: #555;
        text-transform: none; }
        table.event_list td.title h5 a {
          color: #555; }
      table.event_list td.title p {
        margin-bottom: 0; }
    table.event_list td.time {
      padding: 10px 10px 10px 0;
      width: 110px;
      text-align: right;
      color: #555; }
    table.event_list td.city {
      padding: 10px;
      width: 120px;
      border-left: 1px solid #eee;
      font-weight: normal;
      color: #777; }
    table.event_list td.cost, table.event_list td.category {
      padding: 10px;
      width: 80px;
      border-left: 1px solid #eee;
      font-weight: normal; }

/* USER SUBMITTED EVENTS */
body.user_submitted_events .help_text {
  margin-left: 0; }

body.user_submitted_events .empty-row, body.user_submitted_events .hidden {
  display: none; }

body.user_submitted_events .event_form .small {
  width: 15%; }

body.user_submitted_events .quiet {
  font-size: 11px;
  padding: 0 0 3px 5px;
  margin: 0;
  color: #777; }

body.user_submitted_events #selected-place {
  display: none;
  font-style: 12px; }
  body.user_submitted_events #selected-place .address, body.user_submitted_events #selected-place .phone {
    color: #777; }

body.user_submitted_events #selected-place-info {
  display: block;
  float: left; }

body.user_submitted_events #clear-place-selection {
  float: right; }

body.user_submitted_events a.quiet, body.user_submitted_events .request-promoter-status a {
  font-size: 11px; }

body.user_submitted_events .promoter-status {
  font-size: 11px;
  float: right;
  display: block; }

body.user_submitted_events .request-promoter-status {
  display: block;
  width: inherit;
  position: relative; }
  body.user_submitted_events .request-promoter-status a {
    position: absolute;
    right: 0px; }

body.user_submitted_events .trusted {
  color: #080; }

body.user_submitted_events .denied {
  color: #900; }

body.user_submitted_events .event_form label {
  float: none;
  width: auto;
  font-size: 14px; }

body.user_submitted_events .event_form .error {
  display: block;
  font-weight: bold; }

body.user_submitted_events .event_form .cost_range th {
  color: #555; }

body.user_submitted_events .event_form .cost_range td {
  vertical-align: middle; }

body.user_submitted_events .event_form input.small {
  width: 55px; }

body.user_submitted_events .event_times-fieldset, body.user_submitted_events .recurring_event_times-fieldset {
  margin-bottom: 10px;
  padding: 10px;
  background-color: #eee; }

body.user_submitted_events .event_times-fieldset h4, body.user_submitted_events .recurring_event_times-fieldset h4 {
  font-size: 13px;
  border-bottom: 1px solid #ddd;
  color: #777; }

body.user_submitted_events .event_times-fieldset th, body.user_submitted_events .recurring_event_times-fieldset th {
  font-size: 12px;
  line-height: 15px; }

body.user_submitted_events .event_times-fieldset td {
  width: 160px;
  vertical-align: bottom; }

body.user_submitted_events .recurring_event_times-fieldset td {
  width: 115px;
  vertical-align: bottom; }

body.user_submitted_events .recurring_event_times-fieldset .time_field {
  width: 160px; }

body.user_submitted_events .event_times-fieldset .required, body.user_submitted_events .recurring_event_times-fieldset .required {
  color: #333;
  font-weight: bold; }

body.user_submitted_events .event_times-fieldset .error, body.user_submitted_events .recurring_event_times-fieldset .error {
  font-size: 11px;
  line-height: 13px; }

body.user_submitted_events .event_times-fieldset input, body.user_submitted_events .recurring_event_times-fieldset input {
  width: 70px; }

body.user_submitted_events .event_times-fieldset .calendarField, body.user_submitted_events .recurring_event_times-fieldset .calendarField {
  width: 75px; }

body.user_submitted_events .event_times-fieldset td.del-row, body.user_submitted_events .recurring_event_times-fieldset td.del-row {
  padding: 0px;
  width: 15px;
  font-weight: bold;
  font-size: 16px;
  vertical-align: middle; }

body.user_submitted_events .event_times-fieldset td.del-row a, body.user_submitted_events .recurring_event_times-fieldset td.del-row a {
  padding: 2px 5px 5px 5px; }

body.user_submitted_events .event_times-fieldset td.del-row a:hover, body.user_submitted_events .recurring_event_times-fieldset td.del-row a:hover {
  background: #ccc; }

h3#songs {
  margin-top: 20px; }

table.sound_clips {
  width: 100%; }
  table.sound_clips th, table.sound_clips td {
    padding: 3px 10px;
    border-bottom: 1px solid #efefef; }
  table.sound_clips th {
    background: #efefef; }

body {
  font-family: "Roboto", sans-serif;
  background: #fff;
  margin: 0 auto; }

main {
  display: block; }

h1, h2, h3, h4, h5, h6 {
  color: #555;
  font-family: 'Lato', sans-serif; }

.container {
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto; }
  .container:after {
    content: " ";
    display: block;
    clear: both; }

main.container {
  padding: 1em; }
  @media (min-width: 769px) {
    main.container {
      padding: 0; } }

.pull-right {
  float: right; }

a {
  color: #ED3833;
  text-decoration: none; }

a:hover {
  font-weight: bold;
  text-decoration: underline; }

.divider-background {
  background: #34495E; }

.secondary-divider-background {
  background: #F8BE58; }

.top-menu-background {
  background: #34495E; }

.main-menu-background {
  background: #F8BE58; }

@media (max-width: 768px) {
  .hidden-mobile-sm {
    display: none; } }

.button, #comment_form button, .alt_button {
  padding: 10px;
  background: #dedede;
  color: #222;
  border-radius: 8px;
  color: #222; }

a.alt_button:hover {
  text-decoration: none; }

/* HEADER */
.ellington_menu.no-hover ul li:hover {
  background: initial !important; }

.ellington_menu {
  width: 100%; }
  .ellington_menu ul {
    list-style: none;
    margin: 0px;
    padding: 0;
    height: 100%;
    float: left;
    position: relative;
    background: #34495E;
    width: 100%;
    display: none;
    z-index: 999; }
    .ellington_menu ul li {
      background: #34495E; }
      .ellington_menu ul li a {
        display: block;
        color: #fff;
        text-decoration: none;
        font-weight: 700;
        font-size: 14px;
        line-height: 32px;
        padding-right: 10px; }
      .ellington_menu ul li ul {
        display: block; }
        .ellington_menu ul li ul li {
          padding-left: 1em; }
    .ellington_menu ul li:not(:first-child) a {
      padding: 0 15px; }
    @media (max-width: 768px) {
      .ellington_menu ul a {
        padding: 0 15px; } }
    .ellington_menu ul li:hover {
      background: #e69100; }
    .ellington_menu ul a.social-media {
      padding: 0 10px !important; }
  @media (min-width: 769px) {
    .ellington_menu {
      height: 2em; }
      .ellington_menu .pull-right {
        float: right; }
      .ellington_menu ul {
        display: block;
        background: transparent;
        width: auto; }
        .ellington_menu ul li {
          background: transparent;
          position: relative;
          float: left;
          margin: 0;
          padding: 0; }
          .ellington_menu ul li .current-menu-item {
            background: #34495E; }
          .ellington_menu ul li ul {
            display: none;
            position: absolute;
            top: 100%;
            left: 0;
            z-index: 999;
            background: #34495E;
            padding: 0; }
            .ellington_menu ul li ul a {
              line-height: 120%;
              padding: 10px 15px; }
            .ellington_menu ul li ul li {
              float: none;
              width: 200px;
              background: #34495E; }
            .ellington_menu ul li ul ul {
              top: 0;
              left: 100%;
              z-index: 999; }
        .ellington_menu ul li:hover > ul {
          display: block; } }
  .ellington_menu .social-networks {
    width: auto;
    display: block;
    float: right; }
    .ellington_menu .social-networks a {
      display: inline-block;
      padding: 0;
      color: #fff;
      vertical-align: sub; }
      .ellington_menu .social-networks a i {
        vertical-align: middle;
        margin-right: 10px;
        color: #fff; }
        @media (min-width: 769px) {
          .ellington_menu .social-networks a i {
            font-size: 20px; } }

.top-menu-background .ellington_menu_toggle {
  background: #34495E; }

@media (max-width: 768px) {
  .main-menu-background {
    background: #fff;
    padding: 1.8rem 0 0; } }

.main-menu-background .ellington_menu_toggle {
  margin-top: 5px;
  margin-right: 10px; }

.ellington_menu_toggle {
  outline: 0;
  color: #fff;
  font-size: 30px;
  border-radius: 0.2em;
  border: 2px solid black;
  float: right;
  display: none; }
  @media (max-width: 768px) {
    .ellington_menu_toggle {
      display: block; } }

.header {
  background: #fff;
  margin-bottom: 1.5em; }

.banner {
  display: none;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  float: none;
  margin-top: 2em;
  margin-bottom: 2em; }
  @media (min-width: 769px) {
    .banner {
      display: block; } }
  .banner .logo {
    width: 32.20339%;
    float: left;
    margin-right: 1.69492%; }
  .banner .right-top-menu {
    width: 23.72881%;
    float: right;
    margin-right: 0; }

#logo {
  display: none; }
  @media (min-width: 769px) {
    #logo {
      display: block; } }
  #logo img {
    width: 350px; }

#logo-mobile {
  display: inline-block;
  margin-left: 1em;
  width: 71%; }
  #logo-mobile img {
    width: 100%; }
  @media (min-width: 769px) {
    #logo-mobile {
      display: none; } }

/* BODY */
.hero {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0; }

.card, .card-transparent {
  background: #fff; }
  .card img, .card-transparent img {
    position: relative;
    width: 100%;
    vertical-align: middle; }
  .card .overlay, .card-transparent .overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 0; }
    .card .overlay h1, .card-transparent .overlay h1, .card .overlay h2, .card-transparent .overlay h2, .card .overlay h3, .card-transparent .overlay h3, .card .overlay h4, .card-transparent .overlay h4, .card .overlay h5, .card-transparent .overlay h5, .card .overlay h6, .card-transparent .overlay h6, .card .overlay span, .card-transparent .overlay span, .card .overlay p, .card-transparent .overlay p {
      position: absolute;
      bottom: 0;
      left: 0;
      margin: 10px;
      padding: 4px 20px;
      margin: 0px;
      background: #34495E;
      color: white; }

.card-transparent {
  background: transparent; }

.main-story {
  width: 46%;
  float: left;
  margin-right: 0; }
  @media (max-width: 768px) {
    .main-story {
      width: 100%;
      float: left;
      margin-left: 0;
      margin-right: 0; } }
  .main-story .article-tease {
    margin-left: 1em;
    margin-right: 1em; }

.secondary-items {
  width: 52%;
  float: right;
  margin-right: .5; }
  .secondary-items .card, .secondary-items .card-transparent {
    position: relative;
    margin-bottom: 2.54237%; }
    @media (min-width: 1200px) {
      .secondary-items .card, .secondary-items .card-transparent {
        width: 47.36842%;
        float: left;
        width: auto !important; }
        .secondary-items .card:nth-child(2n + 1), .secondary-items .card-transparent:nth-child(2n + 1) {
          margin-left: 0;
          margin-right: -100%;
          clear: both;
          margin-left: 0; }
        .secondary-items .card:nth-child(2n + 2), .secondary-items .card-transparent:nth-child(2n + 2) {
          margin-left: 52.63158%;
          margin-right: -100%;
          clear: none; } }
  @media (max-width: 768px) {
    .secondary-items {
      width: 91.52542%;
      float: left;
      margin-right: 1.69492%;
      margin-left: 1em;
      margin-top: 1em; } }

.main-section-container {
  width: 74.57627%;
  float: left;
  margin-right: 1.69492%; }
  @media (max-width: 768px) {
    .main-section-container {
      width: 100%;
      float: left;
      margin-left: 0;
      margin-right: 0; } }
  .main-section-container .main-section {
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0; }

@media (min-width: 769px) {
  .main-section {
    width: 74.57627%;
    float: left;
    margin-right: 1.69492%; } }

@media (max-width: 768px) {
  .main-section img {
    width: 100%; } }

.main-section .card, .main-section .card-transparent {
  width: 23.72881%;
  float: right;
  margin-right: 0;
  margin-bottom: 1em;
  margin-right: 0.5em; }
  @media (max-width: 768px) {
    .main-section .card, .main-section .card-transparent {
      width: 100%;
      float: left;
      margin-left: 0;
      margin-right: 0;
      margin-bottom: 0px; } }
  .main-section .card .card-image, .main-section .card-transparent .card-image {
    padding: 1em; }
    @media (min-width: 769px) {
      .main-section .card .card-image, .main-section .card-transparent .card-image {
        width: 100%;
        float: left;
        margin-left: 0;
        margin-right: 0;
        padding: 0; } }
  .main-section .card .card-content, .main-section .card-transparent .card-content {
    padding-left: 1em;
    padding-right: 1em;
    padding-bottom: 1em;
    text-align: center; }
    @media (max-width: 768px) {
      .main-section .card .card-content, .main-section .card-transparent .card-content {
        padding: 0px; }
        .main-section .card .card-content h3, .main-section .card-transparent .card-content h3 {
          margin-top: 0px; } }
    @media (min-width: 769px) {
      .main-section .card .card-content, .main-section .card-transparent .card-content {
        width: 100%;
        float: right;
        margin-right: 0;
        padding: 0; } }

.condensed-section .card, .condensed-section .card-transparent {
  margin-bottom: 1em; }
  @media (min-width: 1200px) {
    .condensed-section .card, .condensed-section .card-transparent {
      width: 32.20339%;
      float: right;
      margin-right: 0; } }
  .condensed-section .card .card-image, .condensed-section .card-transparent .card-image {
    padding: 1em;
    margin-right: 0px; }
    @media (min-width: 769px) {
      .condensed-section .card .card-image, .condensed-section .card-transparent .card-image {
        width: 38.77551%;
        float: left;
        margin-right: 2.04082%;
        padding: 0; } }
  .condensed-section .card .card-content, .condensed-section .card-transparent .card-content {
    padding-left: 1em;
    padding-right: 1em;
    padding-bottom: 1em; }
    .condensed-section .card .card-content .date, .condensed-section .card-transparent .card-content .date {
      float: right;
      font-size: 12px;
      margin-right: 1.69492%; }
    .condensed-section .card .card-content h3, .condensed-section .card-transparent .card-content h3 {
      margin: 0px;
      font-size: 16px; }
    @media (max-width: 768px) {
      .condensed-section .card .card-content h3, .condensed-section .card-transparent .card-content h3 {
        margin-top: 0px; } }
    @media (min-width: 769px) {
      .condensed-section .card .card-content, .condensed-section .card-transparent .card-content {
        width: 59.18367%;
        float: right;
        margin-right: 0;
        padding: 0; } }

.todays-photos {
  width: 74.57627%;
  float: left;
  margin-right: 1.69492%; }
  @media (max-width: 768px) {
    .todays-photos {
      width: 100%;
      float: left;
      margin-left: 0;
      margin-right: 0; } }
  .todays-photos .card, .todays-photos .card-transparent {
    width: 32.20339%;
    float: right;
    margin-right: 0;
    margin-bottom: 1em;
    margin-right: 0.5em; }
    @media (max-width: 768px) {
      .todays-photos .card, .todays-photos .card-transparent {
        width: 100%;
        float: left;
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 0px; } }
    .todays-photos .card .card-image, .todays-photos .card-transparent .card-image {
      padding: 1em; }
      @media (min-width: 769px) {
        .todays-photos .card .card-image, .todays-photos .card-transparent .card-image {
          width: 100%;
          float: left;
          margin-left: 0;
          margin-right: 0;
          padding: 0; } }
    .todays-photos .card .card-content, .todays-photos .card-transparent .card-content {
      padding-left: 1em;
      padding-right: 1em;
      padding-bottom: 1em;
      text-align: center; }
      @media (max-width: 768px) {
        .todays-photos .card .card-content, .todays-photos .card-transparent .card-content {
          padding: 0px; }
          .todays-photos .card .card-content h3, .todays-photos .card-transparent .card-content h3 {
            margin-top: 0px; } }
      @media (min-width: 769px) {
        .todays-photos .card .card-content, .todays-photos .card-transparent .card-content {
          width: 100%;
          float: right;
          margin-right: 0;
          padding: 0; } }

.video-player iframe {
  height: 480px; }

.video-widget iframe {
  height: 135px; }

.video-player iframe, .video-widget iframe {
  width: 100%; }
  @media (max-width: 768px) {
    .video-player iframe, .video-widget iframe {
      height: 180px; } }
  @media (min-width: 768px) and (max-width: 970px) {
    .video-player iframe, .video-widget iframe {
      height: 480px; } }

.video-info {
  padding: 1.25em; }
  .video-info .video-title {
    font-size: 18px;
    font-weight: bold; }
  .video-info .video-description {
    font-size: 14px; }
  .video-info .video-date {
    float: right;
    font-size: 12px; }

.sidebar {
  float: left;
  width: 100%;
  margin-bottom: 20px; }
  @media (min-width: 769px) {
    .sidebar {
      width: 23.72881%;
      float: right;
      margin-right: 0; } }
  .sidebar h3 {
    margin-bottom: 0.3em; }
  .sidebar .top-stories, .sidebar .poll {
    padding: 1em; }
  .sidebar .top-stories ul {
    list-style: none;
    margin: 0px;
    padding: 0; }
    .sidebar .top-stories ul li {
      margin-top: 1em; }
  .sidebar .top-stories p {
    margin: 0;
    color: #777;
    font-size: 15px; }
  .sidebar .card h1, .sidebar .card-transparent h1, .sidebar .card h2, .sidebar .card-transparent h2, .sidebar .card h3, .sidebar .card-transparent h3, .sidebar .card h4, .sidebar .card-transparent h4, .sidebar .card h5, .sidebar .card-transparent h5, .sidebar .card h6, .sidebar .card-transparent h6 {
    margin: 0; }
  .sidebar .poll ul {
    list-style: none;
    margin: 0px;
    padding: 0; }
    .sidebar .poll ul li {
      margin-top: 0.5em;
      font-size: 14px; }
  .sidebar .poll .bar {
    background: #34495E;
    display: block;
    min-width: 2px;
    height: 15px; }
  .sidebar #adblock_sidebar_ad_1_inner {
    padding-bottom: 10px; }
  .sidebar #adblock_sidebar_ad_3_inner {
    padding-top: 10px; }

/* Footer */
footer {
  background: #F8BE58; }
  footer .container {
    padding: 1em; }
  footer .copyright {
    text-align: center;
    font-size: 14px;
    color: #777;
    margin-top: 5px; }
  footer .column {
    color: #fff; }
    footer .column a {
      color: #fff; }
  footer h4 {
    font-size: 18px;
    color: #fff;
    border-bottom: 2px #fff solid; }
  footer ul {
    list-style: none;
    margin: 0px;
    padding: 0; }
    footer ul a {
      font-size: 15px;
      text-transform: capitalize; }
  @media (min-width: 768px) and (max-width: 970px) {
    footer .column {
      width: 23.72881%;
      float: left; }
      footer .column:nth-child(4n + 1) {
        margin-left: 0;
        margin-right: -100%;
        clear: both;
        margin-left: 0; }
      footer .column:nth-child(4n + 2) {
        margin-left: 25.42373%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(4n + 3) {
        margin-left: 50.84746%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(4n + 4) {
        margin-left: 76.27119%;
        margin-right: -100%;
        clear: none; } }
  @media (min-width: 769px) {
    footer .column {
      width: 32.20339%;
      float: left; }
      footer .column:nth-child(3n + 1) {
        margin-left: 0;
        margin-right: -100%;
        clear: both;
        margin-left: 0; }
      footer .column:nth-child(3n + 2) {
        margin-left: 33.89831%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(3n + 3) {
        margin-left: 67.79661%;
        margin-right: -100%;
        clear: none; } }

.main-section .header, .sub_header {
  background: none;
  margin: 0; }

.content_info, .content_title {
  padding-bottom: 0.5em;
  border-bottom: 1px #777 solid;
  margin-top: 0.5em; }
  .content_info .vote_box, .content_title .vote_box {
    float: right;
    padding: 0px 5px 0px 5px;
    border: 1px solid #dedede;
    background-color: #f7f7f7;
    text-align: center;
    border-radius: 4px; }
    .content_info .vote_box form, .content_title .vote_box form {
      margin-bottom: 0px; }

.vote_form.single .upvote,
.vote_form.single .downvote {
  display: block;
  float: left;
  padding: 0;
  width: 38px;
  height: 28px;
  border: none;
  overflow: hidden;
  cursor: pointer;
  box-shadow: none;
  border-radius: 0;
  font-size: 25px;
  background: transparent;
  color: #fff; }

.vote_form.single .voted {
  color: #34495E; }

.datetime, .byline {
  font-size: 1em;
  display: inline;
  margin: 0;
  color: #777; }

.datetime {
  display: block;
  margin-top: 5px; }
  @media (min-width: 769px) {
    .datetime {
      float: right;
      display: inline;
      margin-top: 0px; } }

ul.object_tools {
  list-style: none;
  margin: 0px;
  padding: 0;
  width: 100%;
  display: inline-block;
  margin-top: 5px; }
  ul.object_tools li {
    display: inline-block;
    margin-right: 5.26316%;
    min-height: 30px;
    color: #ED3833;
    float: left; }
    ul.object_tools li small {
      display: block;
      margin-top: 3px; }
  ul.object_tools i.fa {
    margin-right: 5px; }

#comments {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #F8BE58;
  clear: both;
  position: relative; }

#comment_status_form {
  float: right; }

#comment_form p.avatar {
  float: left;
  margin-right: 10px; }

#comment_form button {
  border: none;
  font-size: initial;
  color: #dedede;
  background: #34495E; }

.message {
  border: 1px #F8BE58 solid;
  color: #fff;
  padding: 10px;
  margin-top: 10px;
  background: #34495E;
  margin-bottom: 10px; }
  .message h1, .message h2, .message h3, .message h4, .message h5, .message h6, .message a {
    color: #fff;
    margin: 0; }

.message_info {
  background: #34495E; }

.message_error {
  background: #f44336; }

.message_success {
  background: #4caf50; }

ul.tabs {
  list-style: none;
  margin: 0px;
  padding: 0; }
  ul.tabs li {
    display: inline-block;
    padding: 10px;
    background: #c5c4c4;
    border-radius: 5px 5px 0px 0px;
    font-size: 15px; }
    ul.tabs li a {
      color: #222; }

.tab_content {
  display: none;
  background: #c5c4c4;
  padding: 5px 20px 5px 20px; }

.tab_content_on {
  display: block; }

#photo_add_container {
  display: none; }

.comment_textarea {
  display: inline-block;
  width: 90%; }
  .comment_textarea textarea {
    width: 100%; }
  .comment_textarea .photo_add_button {
    float: right; }

#login {
  width: 48.97959%;
  float: left;
  margin-right: 2.04082%; }

.social_registration {
  width: 40.67797%;
  float: right;
  margin-right: 0; }
  .social_registration button {
    margin-top: 1em; }
  .social_registration h4 {
    margin: 1em 0px 0px 0px; }

.signin_form ul {
  list-style: none;
  margin: 0px;
  padding: 0; }

form p label {
  display: block; }

form p.submit {
  text-align: right; }

.menu_wrapper {
  display: none;
  background: white;
  border-radius: 3px;
  padding: 1em;
  border: 1px solid #ccc;
  z-index: 9; }

.photo_source a {
  background: #c5c4c4;
  border-radius: 5px;
  padding: 10px 15px 10px 15px; }

.list .item {
  background: #fff;
  padding: 10px;
  margin-bottom: 1em; }
  .list .item ul {
    list-style: none;
    margin: 0px;
    padding: 0;
    text-align: right; }
    .list .item ul li {
      margin-right: 1.69492%;
      display: inline-block;
      color: #ED3833;
      font-size: 12px; }

table.category_list {
  background: #fff;
  width: 100%; }
  table.category_list th {
    padding: 5px 20px 5px 0;
    border-bottom: 1px solid #c5c4c4;
    font-weight: bold;
    color: #777; }
  table.category_list td {
    text-align: center;
    padding: 5px 20px 5px 0;
    border-bottom: 1px solid #c5c4c4; }

ul.title_info {
  list-style: none;
  margin: 0px;
  padding: 0; }

.story_lead_photo img {
  width: 100%; }

.social-networks {
  color: #fff; }

.events .object_tools {
  margin-top: 20px;
  border-top: 1px solid #F8BE58;
  border-bottom: 1px solid #F8BE58;
  padding: 10px 0px 10px 0px; }

.searchbar {
  width: 200px;
  display: inline-block; }
  @media (max-width: 768px) {
    .searchbar {
      display: none; } }

.donate {
  border: 1px solid #f8be58;
  margin-top: 10px;
  margin-bottom: 10px; }

.donate-text {
  padding: 10px;
  text-align: center; }

.donate-button {
  background-color: #f8be58;
  border: none;
  border-radius: 16px;
  color: white;
  padding: 8px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 16px;
  margin: 4px 2px 0 5px; }

.eltiempolatino_redesign body {
  background: white !important;
  font-family: 'Montserrat', sans-serif;
  color: #282828; }
  .eltiempolatino_redesign body * {
    box-sizing: border-box; }
  .eltiempolatino_redesign body img {
    object-fit: cover;
    width: 100%; }
  .eltiempolatino_redesign body a {
    color: inherit; }
  .eltiempolatino_redesign body .banner {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center; }
  .eltiempolatino_redesign body #logo img {
    width: 100%;
    max-width: 380px; }
  .eltiempolatino_redesign body .ellington_menu ul li a {
    color: #282828;
    font-size: .7rem;
    text-transform: uppercase;
    font-weight: 500; }
  .eltiempolatino_redesign body .top-menu-background {
    background: #f0f5f1;
    padding: 5px; }
    .eltiempolatino_redesign body .top-menu-background .searchbar {
      display: flex; }
    .eltiempolatino_redesign body .top-menu-background form {
      margin-bottom: 0; }
  .eltiempolatino_redesign body .ellington_menu {
    height: auto;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center; }
  .eltiempolatino_redesign body #css-only-modals {
    position: fixed;
    width: 100%;
    pointer-events: none;
    right: 0;
    top: 0;
    z-index: 10000000;
    text-align: center;
    white-space: nowrap;
    display: block;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center; }
  .eltiempolatino_redesign body .css-only-modal {
    overflow: hidden;
    position: absolute;
    top: calc(50% - 100px);
    left: calc( 50% - 240px);
    padding: 45px;
    box-shadow: 0 0 40px rgba(0, 0, 0, 0.6); }
  .eltiempolatino_redesign body .css-only-modal-close {
    background: white;
    padding: 10px 12px;
    top: 10px;
    right: 10px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
    border-radius: 9px; }
  .eltiempolatino_redesign body .fa-times {
    transition: all .5s ease;
    transform: scale(1); }
  .eltiempolatino_redesign body:hover .fa-times {
    transform: scale(0.9) translate(4px, 4px); }
  .eltiempolatino_redesign body .main-story .article-tease {
    margin: 0; }
  .eltiempolatino_redesign body h1, .eltiempolatino_redesign body h2, .eltiempolatino_redesign body h3, .eltiempolatino_redesign body h4, .eltiempolatino_redesign body h5, .eltiempolatino_redesign body h6 {
    font-family: 'DM Serif Display', serif !important;
    color: black; }
    .eltiempolatino_redesign body h1 a, .eltiempolatino_redesign body h2 a, .eltiempolatino_redesign body h3 a, .eltiempolatino_redesign body h4 a, .eltiempolatino_redesign body h5 a, .eltiempolatino_redesign body h6 a {
      line-height: 1.8rem; }
  .eltiempolatino_redesign body h2 {
    font-size: 2rem; }
  .eltiempolatino_redesign body .main-story {
    background: rgba(0, 0, 0, 0.04);
    padding: 1.4rem;
    margin-bottom: 50px; }
  .eltiempolatino_redesign body .card .overlay h3, .eltiempolatino_redesign body .card-transparent .overlay h3 {
    background: rgba(0, 0, 0, 0.8);
    color: white;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    padding: 20px;
    width: 100%;
    box-sizing: border-box; }
  .eltiempolatino_redesign body .article-tease a {
    color: black;
    font-weight: 400;
    font-style: italic;
    margin-top: 16px;
    display: inline-flex; }
  .eltiempolatino_redesign body .nacional, .eltiempolatino_redesign body .lifestyle, .eltiempolatino_redesign body .global, .eltiempolatino_redesign body .Local, .eltiempolatino_redesign body .sidebar {
    border-top: 1px solid lightgrey; }
    .eltiempolatino_redesign body .nacional::after, .eltiempolatino_redesign body .lifestyle::after, .eltiempolatino_redesign body .global::after, .eltiempolatino_redesign body .Local::after, .eltiempolatino_redesign body .sidebar::after {
      content: '';
      display: block;
      clear: both; }
  .eltiempolatino_redesign body .sidebar * {
    box-sizing: border-box; }
  .eltiempolatino_redesign body .condensed-section .card, .eltiempolatino_redesign body .condensed-section .card-transparent {
    float: left;
    width: calc( (100% / 3) - 1rem);
    float: left;
    margin-right: 1rem; }
    .eltiempolatino_redesign body .condensed-section .card .card-content, .eltiempolatino_redesign body .condensed-section .card-transparent .card-content {
      min-height: 110px; }
  .eltiempolatino_redesign body .main-section .card, .eltiempolatino_redesign body .main-section .card-transparent {
    width: calc( 25% - 1rem);
    min-height: 380px;
    float: left;
    margin-right: 0;
    margin-bottom: 1rem;
    margin-right: 1rem; }
  .eltiempolatino_redesign body .main-section .card .card-content, .eltiempolatino_redesign body .main-section .card-transparent .card-content {
    width: 100%;
    float: right;
    margin-right: 0;
    padding: 0 0px;
    box-sizing: border-box; }
    .eltiempolatino_redesign body .main-section .card .card-content h3, .eltiempolatino_redesign body .main-section .card-transparent .card-content h3 {
      font-size: 1.1rem;
      text-align: left;
      width: 100%;
      padding: 0; }
  .eltiempolatino_redesign body footer {
    background: #282828;
    line-height: 1.6rem; }
    .eltiempolatino_redesign body footer h4 {
      border-bottom: 1px rgba(255, 255, 255, 0.3) solid;
      padding: 0 0 10px; }
    .eltiempolatino_redesign body footer li {
      margin: 0 0 5px; }
    .eltiempolatino_redesign body footer div {
      font-size: 1rem; }

@media (max-width: 768px) {
  .eltiempolatino_redesign body {
    background: blue; } }

@media screen and (max-width: 768px) {
  .eltiempolatino_redesign body {
    overflow-x: hidden;
    width: 100%;
    min-height: 100vh;
    background: red; }
    .eltiempolatino_redesign body .css-only-modal {
      width: 90%;
      left: 5%; }
    .eltiempolatino_redesign body .nacional, .eltiempolatino_redesign body .lifestyle, .eltiempolatino_redesign body .global, .eltiempolatino_redesign body .Local, .eltiempolatino_redesign body .sidebar {
      margin-top: 1.4rem; }
    .eltiempolatino_redesign body .condensed-section .card, .eltiempolatino_redesign body .condensed-section .card-transparent {
      width: 100%;
      float: none; }
      .eltiempolatino_redesign body .condensed-section .card .card-content, .eltiempolatino_redesign body .condensed-section .card-transparent .card-content {
        min-height: 0; }
        .eltiempolatino_redesign body .condensed-section .card .card-content a, .eltiempolatino_redesign body .condensed-section .card-transparent .card-content a {
          font-size: 1.5rem; }
    .eltiempolatino_redesign body .main-section .card .card-image, .eltiempolatino_redesign body .main-section .card-transparent .card-image {
      padding: 0; }
    .eltiempolatino_redesign body .main-section .card, .eltiempolatino_redesign body .main-section .card-transparent {
      width: 100%;
      min-height: 0;
      float: none; }
    .eltiempolatino_redesign body footer h4 {
      color: white; }
    .eltiempolatino_redesign body footer div.row {
      display: flex;
      flex-flow: column; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmNzcyIsInNvdXJjZXMiOlsic3R5bGVzLnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9fc3VzeS5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9fc3VzeS5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9fc3Uuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvc3UvX3V0aWxpdGllcy5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9zdS9fc2V0dGluZ3Muc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvc3UvX3ZhbGlkYXRpb24uc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvc3UvX2dyaWQuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L19mbG9hdC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvX3NoYXJlZC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvX3N1cHBvcnQuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L3N1cHBvcnQvX3N1cHBvcnQuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L3N1cHBvcnQvX3ByZWZpeC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc3VwcG9ydC9fYmFja2dyb3VuZC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc3VwcG9ydC9fYm94LXNpemluZy5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc3VwcG9ydC9fcmVtLnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9zdXBwb3J0L19jbGVhcmZpeC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc2hhcmVkL19pbnNwZWN0LnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9zaGFyZWQvX291dHB1dC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc2hhcmVkL19kaXJlY3Rpb24uc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L3NoYXJlZC9fYmFja2dyb3VuZC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc2hhcmVkL19jb250YWluZXIuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L3NoYXJlZC9fbWFyZ2lucy5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc2hhcmVkL19wYWRkaW5nLnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9mbG9hdC9fY29udGFpbmVyLnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9mbG9hdC9fc3Bhbi5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvZmxvYXQvX2VuZC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvZmxvYXQvX2lzb2xhdGUuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fc2V0dGluZ3Muc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fdmFsaWRhdGlvbi5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19ncmlkcy5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19ib3gtc2l6aW5nLnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L2xhbmd1YWdlL3N1c3kvX2NvbnRleHQuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fYmFja2dyb3VuZC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19jb250YWluZXIuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fc3Bhbi5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19ndXR0ZXJzLnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L2xhbmd1YWdlL3N1c3kvX2lzb2xhdGUuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fZ2FsbGVyeS5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19yb3dzLnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L2xhbmd1YWdlL3N1c3kvX21hcmdpbnMuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fcGFkZGluZy5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19ibGVlZC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19icmVha3BvaW50LXBsdWdpbi5zY3NzIiwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvX2JyZWFrcG9pbnQuc2NzcyIsIi4uL2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvX3NldHRpbmdzLnNjc3MiLCIuLi9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L19jb250ZXh0LnNjc3MiLCIuLi9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L19oZWxwZXJzLnNjc3MiLCIuLi9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L19wYXJzZXJzLnNjc3MiLCIuLi9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L3BhcnNlcnMvX3F1ZXJ5LnNjc3MiLCIuLi9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L3BhcnNlcnMvX3NpbmdsZS5zY3NzIiwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL3NpbmdsZS9fZGVmYXVsdC5zY3NzIiwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL19kb3VibGUuc2NzcyIsIi4uL2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvcGFyc2Vycy9kb3VibGUvX2RlZmF1bHQtcGFpci5zY3NzIiwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL2RvdWJsZS9fZG91YmxlLXN0cmluZy5zY3NzIiwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL2RvdWJsZS9fZGVmYXVsdC5zY3NzIiwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL190cmlwbGUuc2NzcyIsIi4uL2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvcGFyc2Vycy90cmlwbGUvX2RlZmF1bHQuc2NzcyIsIi4uL2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvcGFyc2Vycy9fcmVzb2x1dGlvbi5zY3NzIiwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL3Jlc29sdXRpb24vX3Jlc29sdXRpb24uc2NzcyIsIi4uL2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvX25vLXF1ZXJ5LnNjc3MiLCIuLi9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L19yZXNwb25kLXRvLnNjc3MiLCIuLi9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L19sZWdhY3ktc2V0dGluZ3Muc2NzcyIsIi4uL2NvbXBvbmVudHMvZm9udC1hd2Vzb21lL3Njc3MvZm9udC1hd2Vzb21lLnNjc3MiLCIuLi9jb21wb25lbnRzL2ZvbnQtYXdlc29tZS9zY3NzL192YXJpYWJsZXMuc2NzcyIsIi4uL2NvbXBvbmVudHMvZm9udC1hd2Vzb21lL3Njc3MvX21peGlucy5zY3NzIiwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvc2Nzcy9fcGF0aC5zY3NzIiwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvc2Nzcy9fY29yZS5zY3NzIiwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvc2Nzcy9fbGFyZ2VyLnNjc3MiLCIuLi9jb21wb25lbnRzL2ZvbnQtYXdlc29tZS9zY3NzL19maXhlZC13aWR0aC5zY3NzIiwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvc2Nzcy9fbGlzdC5zY3NzIiwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvc2Nzcy9fYm9yZGVyZWQtcHVsbGVkLnNjc3MiLCIuLi9jb21wb25lbnRzL2ZvbnQtYXdlc29tZS9zY3NzL19hbmltYXRlZC5zY3NzIiwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvc2Nzcy9fcm90YXRlZC1mbGlwcGVkLnNjc3MiLCIuLi9jb21wb25lbnRzL2ZvbnQtYXdlc29tZS9zY3NzL19zdGFja2VkLnNjc3MiLCIuLi9jb21wb25lbnRzL2ZvbnQtYXdlc29tZS9zY3NzL19pY29ucy5zY3NzIiwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvc2Nzcy9fc2NyZWVuLXJlYWRlci5zY3NzIiwiX3ZhcmlhYmxlcy5zY3NzIiwiX21peGluZ3Muc2NzcyIsImxpYi9jYWxlbmRhcnMuc2NzcyIsImxpYi9mb3Jtcy5zY3NzIiwibGliL2FjY29yZGlvbi5zY3NzIiwibGliL3BhZ2luYXRpb24uc2NzcyIsImxpYi9tb2R1bGVzLnNjc3MiLCJsaWIvaW5saW5lcy5zY3NzIiwibGliL3dtZC5zY3NzIiwibGliL3BvcHVwcy5jc3MiLCJhcHBzL21lZGlhLnNjc3MiLCJhcHBzL2V2ZW50cy5zY3NzIiwiX21lbnUuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeVwiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnRcIjtcbiRmYS1mb250LXBhdGg6IFwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvZm9udHNcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2ZvbnQtYXdlc29tZS9zY3NzL2ZvbnQtYXdlc29tZS5zY3NzXCI7XG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1ETStTZXJpZitEaXNwbGF5Oml0YWxAMDsxJmZhbWlseT1Nb250c2VycmF0OndnaHRAMTAwOzQwMDs1MDAmZGlzcGxheT1zd2FwJyk7XG5AaW1wb3J0IFwiX3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIl9taXhpbmdzXCI7XG5cbkBpbXBvcnQgXCIuL2xpYi9jYWxlbmRhcnNcIjtcbkBpbXBvcnQgXCIuL2xpYi9mb3Jtc1wiO1xuQGltcG9ydCBcIi4vbGliL2FjY29yZGlvblwiO1xuQGltcG9ydCBcIi4vbGliL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCIuL2xpYi9tb2R1bGVzXCI7XG5AaW1wb3J0IFwiLi9saWIvaW5saW5lc1wiO1xuQGltcG9ydCBcIi4vbGliL3dtZFwiO1xuQGltcG9ydCBcIi4vbGliL3BvcHVwc1wiO1xuQGltcG9ydCBcIi4vbGliL2lubGluZXNcIjtcblxuQGltcG9ydCBcIi4vYXBwcy9tZWRpYVwiO1xuQGltcG9ydCBcIi4vYXBwcy9ldmVudHNcIjtcblxuXG5cbiRzdXN5OiAoXG4gIGNvbHVtbnM6ICR0b3RhbC1jb2x1bW5zLFxuICBjb250YWluZXI6IDExNDBweCxcbiAgZ3V0dGVyczogMC4yNSxcbiAgZ3V0dGVyLXBvc2l0aW9uOiBhZnRlcixcbiAgZ2xvYmFsLWJveC1zaXppbmc6IGJvcmRlci1ib3gvLyxcbiAgLy9kZWJ1ZzogKGltYWdlOiBzaG93LWNvbHVtbnMpXG4pO1xuXG5ib2R5e1xuICBmb250LWZhbWlseTogJGZvbnQtc3RhY2s7XG4gIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG5tYWlue1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNntcbiAgY29sb3I6ICR0ZXh0LXRpdGxlLWNvbG9yO1xuICBmb250LWZhbWlseTogJ0xhdG8nLCBzYW5zLXNlcmlmO1xufVxuXG4gLmNvbnRhaW5lcntcbiAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiB9IFxuXG4gbWFpbi5jb250YWluZXJ7XG4gICAgcGFkZGluZzogMWVtO1xuICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbm9uLW1vYmlsZS10YWJsZXQpe1xuICAgICBwYWRkaW5nOiAwO1xuICAgfVxuIH1cblxuIC5wdWxsLXJpZ2h0e1xuICAgZmxvYXQ6IHJpZ2h0O1xuIH1cblxuIGF7XG4gICBjb2xvcjogJGxpbmstY29sb3I7XG4gICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gfVxuIGE6aG92ZXJ7XG4gICBmb250LXdlaWdodDogYm9sZDtcbiAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuIH1cblxuIC5kaXZpZGVyLWJhY2tncm91bmR7XG4gICAgYmFja2dyb3VuZDogJGRpdmlkZXItYmFja2dyb3VuZDtcbiB9XG4gLnNlY29uZGFyeS1kaXZpZGVyLWJhY2tncm91bmR7XG4gICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1kaXZpZGVyLWJhY2tncm91bmQ7XG4gfVxuXG4gLnRvcC1tZW51LWJhY2tncm91bmR7XG4gICAgYmFja2dyb3VuZDogJGRpdmlkZXItYmFja2dyb3VuZDtcbiB9XG5cbiAubWFpbi1tZW51LWJhY2tncm91bmR7XG4gICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1kaXZpZGVyLWJhY2tncm91bmQ7XG4gfVxuXG4uaGlkZGVuLW1vYmlsZS1zbXtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbW9iaWxlLXNtYWxsKXtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5idXR0b24sIC5hbHRfYnV0dG9ue1xuICBwYWRkaW5nOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWRlZmF1bHQtYmFja2dyb3VuZDtcbiAgY29sb3I6ICRidXR0b24tZGVmYXVsdC1mb250LWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGNvbG9yOiAkYnV0dG9uLWRlZmF1bHQtZm9udC1jb2xvcjtcbn1cbmEuYWx0X2J1dHRvbjpob3ZlcntcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKiBIRUFERVIgKi8gXG5cbkBpbXBvcnQgXCIuL19tZW51LnNjc3NcIjsgXG5cbi5oZWFkZXJ7XG4gIGJhY2tncm91bmQ6ICRoZWFkZXItYmFja2dyb3VuZDtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG59XG5cblxuLmJhbm5lcntcbiAgZGlzcGxheTogbm9uZTtcbiAgQGluY2x1ZGUgc3BhbigxMik7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5vbi1tb2JpbGUtdGFibGV0KXtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLXRvcDogMmVtOyAgICBcbiAgbWFyZ2luLWJvdHRvbTogMmVtOyAgICBcbiAgLmxvZ297XG4gICAgQGluY2x1ZGUgc3Bhbig0KTtcbiAgfVxuICAucmlnaHQtdG9wLW1lbnV7XG4gICAgQGluY2x1ZGUgc3BhbigzIGxhc3QpO1xuICB9XG59XG5cblxuI2xvZ297XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5vbi1tb2JpbGUtdGFibGV0KXtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBpbWd7XG4gICAgd2lkdGg6IDM1MHB4O1xuICB9XG59XG5cbiNsb2dvLW1vYmlsZXtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMWVtO1xuICB3aWR0aDogNzElO1xuICBpbWd7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbm9uLW1vYmlsZS10YWJsZXQpe1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLyogQk9EWSAqL1xuXG4uaGVyb3tcbiAgIEBpbmNsdWRlIHNwYW4oMTIgbmVzdCk7XG59IFxuXG4uY2FyZHtcbiAgYmFja2dyb3VuZDogJGNhcmQtYmFja2dyb3VuZDtcbiAgaW1ne1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG4gIC5vdmVybGF5e1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHNwYW4sIHB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgcGFkZGluZzogNHB4IDIwcHg7XG4gICAgICBtYXJnaW46IDBweDtcbiAgICAgIGJhY2tncm91bmQ6ICMzNDQ5NUU7XG4gICAgICBjb2xvcjogd2hpdGU7XG5cbiAgICB9XG4gIH1cbn1cblxuLmNhcmQtdHJhbnNwYXJlbnR7XG4gIEBleHRlbmQgLmNhcmQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4ubWFpbi1zdG9yeXtcbiAgd2lkdGg6IDQ2JTtcbiAgZmxvYXQ6IGxlZnQ7XG4gICBAaW5jbHVkZSBicmVha3BvaW50KCRtb2JpbGUtc21hbGwpe1xuICAgICBAaW5jbHVkZSBzcGFuKGZ1bGwpO1xuICAgfVxuICAuYXJ0aWNsZS10ZWFzZXtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgIH1cbiAgIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnNlY29uZGFyeS1pdGVtc3tcbiAgd2lkdGg6IDUyJTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IC41O1xuICAuY2FyZHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wLWxhcmdlKXtcblx0ICAgIEBpbmNsdWRlIGdhbGxlcnkoMiBvZiA0KTtcblx0ICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiBzcGFuKDAuNSk7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbW9iaWxlLXNtYWxsKXtcbiAgICAgQGluY2x1ZGUgc3BhbigxMSk7XG4gICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXIoMWVtKTtcbiAgICAgbWFyZ2luLXRvcDogZ3V0dGVyKDFlbSk7XG4gIH1cbn1cblxuLm1haW4tc2VjdGlvbi1jb250YWluZXJ7XG4gICAgQGluY2x1ZGUgc3Bhbig5IG9mIDEyKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtb2JpbGUtc21hbGwpe1xuICAgICAgQGluY2x1ZGUgc3BhbigxMik7XG4gICAgfVxuICAgIC5tYWluLXNlY3Rpb257XG4gICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICB9XG59XG5cbi5tYWluLXNlY3Rpb257XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbm9uLW1vYmlsZS10YWJsZXQpe1xuICAgICAgICAgQGluY2x1ZGUgc3Bhbig5IG9mIDEyKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbW9iaWxlLXNtYWxsKXtcbiAgICAgICAgaW1ne1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG4gICAgfVxuICAgIC5jYXJke1xuICAgICAgQGluY2x1ZGUgc3BhbigzIG9mIDEyIGxhc3QpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbW9iaWxlLXNtYWxsKXtcbiAgICAgICAgQGluY2x1ZGUgc3BhbigxMik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgIH1cbiAgICAgIG1hcmdpbi1yaWdodDogMC41ZW07XG4gICAgICAuY2FyZC1pbWFnZXtcbiAgICAgICAgcGFkZGluZzogMWVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRub24tbW9iaWxlLXRhYmxldCl7XG4gICAgICAgICAgQGluY2x1ZGUgc3BhbigxMik7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNhcmQtY29udGVudHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDFlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtb2JpbGUtc21hbGwpe1xuICAgICAgICAgIGgze1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbm9uLW1vYmlsZS10YWJsZXQpe1xuICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTAgb2YgMTAgbGFzdCk7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiB9XG5cbiAuY29uZGVuc2VkLXNlY3Rpb257XG4gICAgLmNhcmR7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRkZXNrdG9wLWxhcmdlKXtcblx0ICAgICAgQGluY2x1ZGUgc3Bhbig0IG9mIDEyIGxhc3QpO1xuICAgICAgfVxuICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgLmNhcmQtaW1hZ2V7XG4gICAgICAgIHBhZGRpbmc6IDFlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbm9uLW1vYmlsZS10YWJsZXQpe1xuICAgICAgICAgIEBpbmNsdWRlIHNwYW4oNCBvZiAxMCk7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgICAgIH1cbiAgICAgIC5jYXJkLWNvbnRlbnR7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMWVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG4gICAgICAgIC5kYXRle1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXIoKTtcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgbWFyZ2luOiAwcHg7XG5cdCAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1vYmlsZS1zbWFsbCl7XG4gICAgICAgICAgaDN7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5vbi1tb2JpbGUtdGFibGV0KXtcbiAgICAgICAgICBAaW5jbHVkZSBzcGFuKDYgb2YgMTAgbGFzdCk7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiB9XG5cbiAudG9kYXlzLXBob3Rvc3tcbiAgQGluY2x1ZGUgc3Bhbig5IG9mIDEyKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbW9iaWxlLXNtYWxsKXtcbiAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgfVxuXG4gIC5jYXJke1xuICAgIEBpbmNsdWRlIHNwYW4oNCBvZiAxMiBsYXN0KTtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbW9iaWxlLXNtYWxsKXtcbiAgICAgIEBpbmNsdWRlIHNwYW4oMTIpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIH1cbiAgICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xuICAgIC5jYXJkLWltYWdle1xuICAgICAgcGFkZGluZzogMWVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbm9uLW1vYmlsZS10YWJsZXQpe1xuICAgICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNhcmQtY29udGVudHtcbiAgICAgIHBhZGRpbmctbGVmdDogMWVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMWVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1vYmlsZS1zbWFsbCl7XG4gICAgICAgIGgze1xuICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgfVxuICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRub24tbW9iaWxlLXRhYmxldCl7XG4gICAgICAgIEBpbmNsdWRlIHNwYW4oMTAgb2YgMTAgbGFzdCk7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiAudmlkZW8tcGxheWVyIGlmcmFtZXtcbiAgICAgaGVpZ2h0OiA0ODBweDtcbiB9XG4gIFxuIC52aWRlby13aWRnZXQgaWZyYW1le1xuICAgICBoZWlnaHQ6IDEzNXB4O1xuIH1cblxuIC52aWRlby1wbGF5ZXIsIC52aWRlby13aWRnZXR7XG4gICBpZnJhbWV7XG4gICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1vYmlsZS1zbWFsbCl7XG4gICAgIGhlaWdodDogMTgwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1vYmlsZS1sYXJnZSl7XG4gICAgIGhlaWdodDogNDgwcHg7XG4gICAgfVxuXG4gICB9XG4gfVxuIFxuIC52aWRlby1pbmZve1xuICAgcGFkZGluZzogMS4yNWVtO1xuICAgLnZpZGVvLXRpdGxle1xuICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgfVxuICAgLnZpZGVvLWRlc2NyaXB0aW9ue1xuICAgICBmb250LXNpemU6IDE0cHg7XG4gICB9XG4gICAudmlkZW8tZGF0ZXtcbiAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICBmb250LXNpemU6IDEycHg7XG4gICB9XG4gfVxuLnNpZGViYXJ7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbm9uLW1vYmlsZS10YWJsZXQpe1xuICAgIEBpbmNsdWRlIHNwYW4oMyBsYXN0KTtcbiAgfVxuICBoM3tcbiAgICBtYXJnaW4tYm90dG9tOiAwLjNlbTtcbiAgfVxuICAudG9wLXN0b3JpZXMsIC5wb2xse1xuICAgIHBhZGRpbmc6IDFlbTtcbiAgfVxuICAudG9wLXN0b3JpZXN7XG4gICAgdWx7XG4gICAgICBAaW5jbHVkZSBjbGVhcl9saXN0X3N0eWxlO1xuICAgICAgbGl7XG4gICAgICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgcHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGNvbG9yOiAkdGV4dC1zb2Z0LWNvbG9yO1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgIH1cbiAgfVxuICAuY2FyZCB7XG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNntcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbiAgLnBvbGx7XG4gICAgdWx7XG4gICAgICBAaW5jbHVkZSBjbGVhcl9saXN0X3N0eWxlO1xuICAgICAgbGl7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNWVtO1xuICAgICAgICBmb250LXNpemU6IDE0cHhcbiAgICAgIH1cbiAgICB9XG4gICAgLmJhcntcbiAgICAgIGJhY2tncm91bmQ6ICRwb2xsLWJhci1jb2xvcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWluLXdpZHRoOiAycHg7XG4gICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgfVxuICB9XG4gICNhZGJsb2NrX3NpZGViYXJfYWRfMV9pbm5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIH1cbiAgI2FkYmxvY2tfc2lkZWJhcl9hZF8zX2lubmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgfVxufVxuXG4vKiBGb290ZXIgKi9cbmZvb3RlcntcblxuICAvL2JvcmRlci10b3A6IDFlbSAkZGl2aWRlci1iYWNrZ3JvdW5kIHNvbGlkO1xuICBiYWNrZ3JvdW5kOiAkZm9vdGVyLWJhY2tncm91bmQ7XG4gIC5jb250YWluZXJ7XG4gICAgcGFkZGluZzogMWVtO1xuICB9XG4gIC5jb3B5cmlnaHR7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjb2xvcjogJHRleHQtc29mdC1jb2xvcjtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cbiAgLmNvbHVtbntcbiAgICBjb2xvcjogJG1lbnUtY29sb3I7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJG1lbnUtY29sb3I7XG4gICAgfVxuICB9XG4gIGg0e1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBjb2xvcjogJG1lbnUtY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4ICRtZW51LWNvbG9yIHNvbGlkO1xuICB9XG4gIHVse1xuICAgIEBpbmNsdWRlIGNsZWFyX2xpc3Rfc3R5bGU7XG4gICAgYSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbW9iaWxlLWxhcmdlKXtcbiAgICAuY29sdW1ue1xuICAgICAgQGluY2x1ZGUgZ2FsbGVyeSgzIG9mIDEyKTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbm9uLW1vYmlsZS10YWJsZXQpe1xuICAgIC5jb2x1bW57XG4gICAgICBAaW5jbHVkZSBnYWxsZXJ5KDQgb2YgMTIpO1xuICAgIH1cbiAgfVxuXG59XG5cbi8vU3RvcnkgZGV0YWlsXG4ubWFpbi1zZWN0aW9uIC5oZWFkZXIsIC5zdWJfaGVhZGVye1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDA7XG59XG5cbi5jb250ZW50X2luZm8sIC5jb250ZW50X3RpdGxle1xuICBwYWRkaW5nLWJvdHRvbTogMC41ZW07XG4gIGJvcmRlci1ib3R0b206IDFweCAkdGV4dC1zb2Z0LWNvbG9yIHNvbGlkO1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbiAgLnZvdGVfYm94e1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwYWRkaW5nOiAwcHggNXB4IDBweCA1cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHZvdGluZy1ib3gtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR2b3RpbmctYm94LWJhY2tncm91bmQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBmb3Jte1xuICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIH1cbiAgfVxufVxuXG4udm90ZV9mb3JtLnNpbmdsZSAudXB2b3RlLFxuLnZvdGVfZm9ybS5zaW5nbGUgLmRvd252b3RlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAzOHB4O1xuICAgIGhlaWdodDogMjhweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJHZvdGluZy1ib3gtdm90ZS1jb2xvcjtcbn1cblxuLnZvdGVfZm9ybS5zaW5nbGUgLnZvdGVke1xuICBjb2xvcjogJHZvdGluZy1ib3gtdm90ZWQtY29sb3I7XG59XG5cbi5kYXRldGltZSwgLmJ5bGluZXtcbiAgZm9udC1zaXplOiAxZW07XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogJHRleHQtc29mdC1jb2xvcjtcbn1cblxuLmRhdGV0aW1le1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRub24tbW9iaWxlLXRhYmxldCl7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG4gIH1cbn1cblxudWwub2JqZWN0X3Rvb2xze1xuICBAaW5jbHVkZSBjbGVhcl9saXN0X3N0eWxlO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIGxpe1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlcig0KTtcbiAgICBtaW4taGVpZ2h0OiAzMHB4O1xuICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBzbWFsbHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgIH1cbiAgfVxuICBpLmZhe1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICB9XG59XG5cbiNjb21tZW50c3tcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2Vjb25kYXJ5LWRpdmlkZXItYmFja2dyb3VuZDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNjb21tZW50X3N0YXR1c19mb3Jte1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbiNjb21tZW50X2Zvcm17XG4gIHAuYXZhdGFye1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgfVxuICBidXR0b257XG4gICAgQGV4dGVuZCAuYnV0dG9uO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXNpemU6IGluaXRpYWw7XG4gICAgY29sb3I6ICRidXR0b24taGlnaGxpZ2h0LWZvbnQtY29sb3I7XG4gICAgYmFja2dyb3VuZDogJGJ1dHRvbi1oaWdobGlnaHQtYmFja2dyb3VuZDtcbiAgfVxufVxuXG4ubWVzc2FnZSB7XG4gIGJvcmRlcjogMXB4ICRzZWNvbmRhcnktZGl2aWRlci1iYWNrZ3JvdW5kIHNvbGlkO1xuICBjb2xvcjogJG1lbnUtY29sb3I7XG4gIHBhZGRpbmc6IDEwcHg7IFxuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAkbWVzc2FnZS1pbmZvLWJhY2tncm91bmQ7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGgxLCBoMiwgaDMsIGg0LCBoNSAsaDYsIGF7XG4gICAgY29sb3I6ICRtZW51LWNvbG9yO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufSAgXG5cbi5tZXNzYWdlX2luZm97XG4gIGJhY2tncm91bmQ6ICRtZXNzYWdlLWluZm8tYmFja2dyb3VuZDtcbn1cbi5tZXNzYWdlX2Vycm9ye1xuICBiYWNrZ3JvdW5kOiAkbWVzc2FnZS1lcnJvci1iYWNrZ3JvdW5kO1xufVxuXG4ubWVzc2FnZV9zdWNjZXNze1xuICBiYWNrZ3JvdW5kOiAkbWVzc2FnZS1zdWNjZXNzLWJhY2tncm91bmQ7XG59XG51bC50YWJzIHtcbiAgQGluY2x1ZGUgY2xlYXJfbGlzdF9zdHlsZTtcbiAgbGl7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogJHRhYnMtYmFja2dyb3VuZDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDBweCAwcHg7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGF7XG4gICAgICBjb2xvcjogJHRhYnMtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLnRhYl9jb250ZW50e1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kOiAkdGFicy1jb250ZW50LWJhY2tncm91bmQ7XG4gIHBhZGRpbmc6IDVweCAyMHB4IDVweCAyMHB4O1xufSBcbi50YWJfY29udGVudF9vbntcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiNwaG90b19hZGRfY29udGFpbmVye1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY29tbWVudF90ZXh0YXJlYXtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogOTAlO1xuICB0ZXh0YXJlYXtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAucGhvdG9fYWRkX2J1dHRvbntcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbiNsb2dpbntcbiAgQGluY2x1ZGUgc3Bhbig1IG9mIDEwKTtcbn1cbi5zb2NpYWxfcmVnaXN0cmF0aW9ue1xuICBAaW5jbHVkZSBzcGFuKDUgb3IgMTAgbGFzdCk7XG4gIGJ1dHRvbntcbiAgICBtYXJnaW4tdG9wOiAxZW07XG4gIH1cbiAgaDR7XG4gICAgbWFyZ2luOiAxZW0gMHB4IDBweCAwcHg7XG4gIH1cbn1cbi5zaWduaW5fZm9ybXtcbiAgdWx7XG4gICAgQGluY2x1ZGUgY2xlYXJfbGlzdF9zdHlsZTtcbiAgfVxufVxuXG5mb3JtIHtcbiAgcCB7XG4gICAgbGFiZWx7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbiAgcC5zdWJtaXR7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLm1lbnVfd3JhcHBlcntcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgcGFkZGluZzogMWVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICB6LWluZGV4OiA5O1xufVxuXG4ucGhvdG9fc291cmNle1xuICBhe1xuICAgIGJhY2tncm91bmQ6ICR0YWJzLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIHBhZGRpbmc6IDEwcHggMTVweCAxMHB4IDE1cHg7XG4gIH1cbn1cblxuLmxpc3R7XG4gIC5pdGVte1xuICAgIGJhY2tncm91bmQ6ICRjYXJkLWJhY2tncm91bmQ7XG4gICAgcGFkZGluZzogMTBweDsgXG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIHVse1xuICAgICAgQGluY2x1ZGUgY2xlYXJfbGlzdF9zdHlsZTtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgbGl7XG4gICAgICAgIG1hcmdpbi1yaWdodDogZ3V0dGVyKCk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbnRhYmxlLmNhdGVnb3J5X2xpc3R7XG4gIGJhY2tncm91bmQ6ICRjYXJkLWJhY2tncm91bmQ7XG4gIHdpZHRoOiAxMDAlO1xuICB0aHtcbiAgICBwYWRkaW5nOiA1cHggMjBweCA1cHggMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHRhYnMtY29udGVudC1iYWNrZ3JvdW5kO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAkdGV4dC1zb2Z0LWNvbG9yO1xuICB9XG4gIHRke1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgXG4gICAgcGFkZGluZzogNXB4IDIwcHggNXB4IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR0YWJzLWNvbnRlbnQtYmFja2dyb3VuZDtcbiAgfVxufVxuXG4vL2V2ZW50c1xudWwudGl0bGVfaW5mb3tcbiAgQGluY2x1ZGUgY2xlYXJfbGlzdF9zdHlsZTtcbn1cblxuLnN0b3J5X2xlYWRfcGhvdG97XG4gICAgaW1ne1xuXHR3aWR0aDogMTAwJTtcbiAgICB9XG59XG4uc29jaWFsLW5ldHdvcmtze1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG4uZXZlbnRzIC5vYmplY3RfdG9vbHN7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2Vjb25kYXJ5LWRpdmlkZXItYmFja2dyb3VuZDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZWNvbmRhcnktZGl2aWRlci1iYWNrZ3JvdW5kO1xuICBwYWRkaW5nOiAxMHB4IDBweCAxMHB4IDBweDtcbn1cblxuLnNlYXJjaGJhcntcbiAgIHdpZHRoOiAyMDBweDsgXG4gICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1vYmlsZS1zbWFsbCl7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uZG9uYXRle1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjhiZTU4O1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uZG9uYXRlLXRleHQge1xuICBwYWRkaW5nOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5kb25hdGUtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4YmU1ODtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDhweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxNnB4O1xuICBtYXJnaW46IDRweCAycHggMCA1cHg7XG59XG5cblxuXG5cblxuXG5cblxuXG4vLyBUZXN0aW5nXG5cbi5lbHRpZW1wb2xhdGlub19yZWRlc2lnbiBib2R5e1xuICBiYWNrZ3JvdW5kOiB3aGl0ZSAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xuICBjb2xvcjojMjgyODI4O1xuICBcbiAgLy8gVGVuZ28gaGFjZXIgZXN0YSBndWFycmFkYSBwb3JxdWUgZWwgY8OzZGlnbyBlc3TDoSBmYXRhbC4gU29ycnkgbm90IHNvcnJ5LlxuICAqe1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbiAgaW1ne1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHdpZHRoOjEwMCU7XG4gIH1cbiAgXG5cbiAgYXtcbiAgICBjb2xvcjppbmhlcml0O1xuICB9XG5cbiAgLmJhbm5lcntcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgI2xvZ28gaW1ne1xuICAgIHdpZHRoOjEwMCU7XG4gICAgbWF4LXdpZHRoOiAzODBweDtcbiAgfVxuICAuZWxsaW5ndG9uX21lbnUgdWwgbGkgYXtcbiAgICBjb2xvcjojMjgyODI4O1xuICAgIGZvbnQtc2l6ZTogLjdyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG4gIC50b3AtbWVudS1iYWNrZ3JvdW5ke1xuICAgIGJhY2tncm91bmQ6ICNmMGY1ZjE7XG4gICAgcGFkZGluZzogNXB4O1xuXG4gICAgLnNlYXJjaGJhcntcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICAgIGZvcm17XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICBmb3JtIGlucHV0e1xuXG4gICAgfVxuICB9XG4gIC5lbGxpbmd0b25fbWVudXtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgI2Nzcy1vbmx5LW1vZGFsc3tcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDEwMDAwMDAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC41KTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoM3B4KTtcbiAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigzcHgpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgLmNzcy1vbmx5LW1vZGFse1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMDBweCk7XG4gICAgbGVmdDogY2FsYyggNTAlIC0gMjQwcHgpO1xuICAgIHBhZGRpbmc6IDQ1cHg7XG4gICAgYm94LXNoYWRvdzogMCAwIDQwcHggcmdiYSgwLDAsMCwwLjYpO1xuICB9XG4gIC5jc3Mtb25seS1tb2RhbC1jbG9zZXtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBwYWRkaW5nOiAxMHB4IDEycHg7XG4gICAgdG9wOiAxMHB4O1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMCwwLDAsMC41KTtcbiAgICBib3JkZXItcmFkaXVzOiA5cHg7XG4gIH1cbiAgICBcbiAgLmZhLXRpbWVze1xuICAgIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gICY6aG92ZXIgLmZhLXRpbWVze1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLjkpIHRyYW5zbGF0ZSg0cHgsNHB4KTtcbiAgfVxuICAubWFpbi1zdG9yeSAuYXJ0aWNsZS10ZWFzZXtcbiAgICBtYXJnaW46MDtcbiAgfVxuICBoMSAsIGgyICwgaDMgLCBoNCAsIGg1ICwgaDZ7XG4gICAgZm9udC1mYW1pbHk6ICdETSBTZXJpZiBEaXNwbGF5Jywgc2VyaWYgIWltcG9ydGFudDtcbiAgICBjb2xvcjpibGFjaztcbiAgICBhe1xuICAgICAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcbiAgICB9XG4gIH1cbiAgaDJ7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgLmNhcmQtY29udGVudHtcblxuICAgXG4gIH1cbiAgLm1haW4tc3Rvcnl7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuMDQpO1xuICAgIHBhZGRpbmc6IDEuNHJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIFxuICB9XG4gIC5jYXJkIC5vdmVybGF5IGgze1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDIwcHgpO1xuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDIwcHgpO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuICAuYXJ0aWNsZS10ZWFzZSBhe1xuICAgIGNvbG9yOmJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIH1cblxuICAubmFjaW9uYWwgLCAubGlmZXN0eWxlICwgLmdsb2JhbCAsIC5Mb2NhbCAsIC5zaWRlYmFye1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBsaWdodGdyZXk7XG4gICAgJjo6YWZ0ZXJ7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICB9XG4gIC5zaWRlYmFyICp7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG5cbiAgLmNvbmRlbnNlZC1zZWN0aW9ue1xuICAgIC8vIGJvcmRlci10b3A6IDFweCBzb2xpZCBsaWdodGdyZXk7XG5cbiAgICAuY2FyZHtcbiAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICB3aWR0aDogY2FsYyggKDEwMCUgLyAzKSAtIDFyZW0pO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICAuY2FyZC1jb250ZW50e1xuICAgICAgICBtaW4taGVpZ2h0OiAxMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG5cbiAgLm1haW4tc2VjdGlvbntcbiAgICAvLyBib3JkZXItdG9wOiAxcHggc29saWQgbGlnaHRncmV5O1xuICAgIC5jYXJke1xuICAgICAgd2lkdGg6IGNhbGMoIDI1JSAtIDFyZW0pO1xuICAgICAgbWluLWhlaWdodDogMzgwcHg7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgfVxuICAgIC5jYXJkIC5jYXJkLWNvbnRlbnR7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIHBhZGRpbmc6IDAgMHB4O1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgICAgaDN7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBmb290ZXJ7XG4gICAgYmFja2dyb3VuZDogIzI4MjgyODtcbiAgICBsaW5lLWhlaWdodDogMS42cmVtO1xuXG4gICAgaDR7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggcmdiYSgyNTUsMjU1LDI1NSwuMykgc29saWQ7XG4gICAgICBwYWRkaW5nOiAwIDAgMTBweDtcbiAgICB9XG4gICAgLmNvbHtcblxuICAgIH1cbiAgICAvLyBpbWd7XG4gICAgLy8gICB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XG4gICAgLy8gICBtYXgtd2lkdGg6MTAwcHg7XG4gICAgLy8gfVxuICAgIGxpe1xuICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgIH1cblxuICAgIGRpdntcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG5cbiAgfVxuXG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQoJG1vYmlsZS1zbWFsbCl7XG4gIC5lbHRpZW1wb2xhdGlub19yZWRlc2lnbiBib2R5e1xuICAgIGJhY2tncm91bmQ6IGJsdWU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjhweCl7XG4gIC5lbHRpZW1wb2xhdGlub19yZWRlc2lnbiBib2R5e1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICBiYWNrZ3JvdW5kOiByZWQ7XG5cblxuICAgIC5jc3Mtb25seS1tb2RhbHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBsZWZ0OiA1JTtcbiAgICB9XG4gICAgLm5hY2lvbmFsICwgLmxpZmVzdHlsZSAsIC5nbG9iYWwgLCAuTG9jYWwgLCAuc2lkZWJhcntcbiAgICAgIG1hcmdpbi10b3A6MS40cmVtO1xuICAgIH1cbiAgICAuY29uZGVuc2VkLXNlY3Rpb24gLmNhcmR7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgLmNhcmQtY29udGVudHtcbiAgICAgICAgbWluLWhlaWdodDogMDtcblxuICAgICAgICBhe1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICB9XG4gICAgICAgXG4gICAgICB9XG4gICAgfVxuICAgIC5tYWluLXNlY3Rpb24gLmNhcmQgLmNhcmQtaW1hZ2V7XG4gICAgICBwYWRkaW5nOjA7XG4gICAgfVxuICAgIC5tYWluLXNlY3Rpb24gLmNhcmR7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG4gICAgZm9vdGVye1xuXG4gICAgICBoNHtcbiAgICAgICAgY29sb3I6d2hpdGU7XG4gICAgICB9XG4gICAgICBkaXYucm93e1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG59IiwiLy8gU3VzeVxuLy8gPT09PVxuXG5AaW1wb3J0ICdzdXN5L2xhbmd1YWdlL3N1c3knO1xuIiwiLy8gU3VzeSBOZXh0IFN5bnRheFxuLy8gPT09PT09PT09PT09PT09PVxuXG4kc3VzeS12ZXJzaW9uOiAyLjE7XG5cbkBpbXBvcnQgXCIuLi9zdVwiO1xuQGltcG9ydCBcIi4uL291dHB1dC9mbG9hdFwiO1xuXG5AaW1wb3J0IFwic3VzeS9zZXR0aW5nc1wiO1xuQGltcG9ydCBcInN1c3kvdmFsaWRhdGlvblwiO1xuQGltcG9ydCBcInN1c3kvZ3JpZHNcIjtcbkBpbXBvcnQgXCJzdXN5L2JveC1zaXppbmdcIjtcbkBpbXBvcnQgXCJzdXN5L2NvbnRleHRcIjtcbkBpbXBvcnQgXCJzdXN5L2JhY2tncm91bmRcIjtcbkBpbXBvcnQgXCJzdXN5L2NvbnRhaW5lclwiO1xuQGltcG9ydCBcInN1c3kvc3BhblwiO1xuQGltcG9ydCBcInN1c3kvZ3V0dGVyc1wiO1xuQGltcG9ydCBcInN1c3kvaXNvbGF0ZVwiO1xuQGltcG9ydCBcInN1c3kvZ2FsbGVyeVwiO1xuQGltcG9ydCBcInN1c3kvcm93c1wiO1xuQGltcG9ydCBcInN1c3kvbWFyZ2luc1wiO1xuQGltcG9ydCBcInN1c3kvcGFkZGluZ1wiO1xuQGltcG9ydCBcInN1c3kvYmxlZWRcIjtcbkBpbXBvcnQgXCJzdXN5L2JyZWFrcG9pbnQtcGx1Z2luXCI7XG4iLCIvLyBTdVxuLy8gPT1cblxuQGltcG9ydCBcInN1L3V0aWxpdGllc1wiO1xuQGltcG9ydCBcInN1L3NldHRpbmdzXCI7XG5AaW1wb3J0IFwic3UvdmFsaWRhdGlvblwiO1xuQGltcG9ydCBcInN1L2dyaWRcIjtcbiIsIi8vIE1hcCBGdW5jdGlvbnNcbi8vID09PT09PT09PT09PT1cblxuXG4vLyBUcnVuY2F0ZSBMaXN0XG4vLyAtLS0tLS0tLS0tLS0tXG4vLyAtIFJldHVybiBhIGxpc3QsIHRydW5jYXRlZCB0byBhIGdpdmVuIGxlbmd0aFxuQGZ1bmN0aW9uIF9zdXN5LXRydW5jYXRlLWxpc3QoXG4gICRsaXN0LFxuICAkbGVuZ3RoXG4pIHtcbiAgJF9yZXR1cm46ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRsaXN0KSB7XG4gICAgJF9yZXR1cm46IGlmKCRpIDw9ICRsZW5ndGgsIGFwcGVuZCgkX3JldHVybiwgbnRoKCRsaXN0LCAkaSkpLCAkX3JldHVybik7XG4gIH1cblxuICBAcmV0dXJuICRfcmV0dXJuO1xufVxuXG5cbi8vIERlZXAgR2V0XG4vLyAtLS0tLS0tLVxuLy8gLSBSZXR1cm4gYSB2YWx1ZSBkZWVwIGluIG5lc3RlZCBtYXBzXG5AZnVuY3Rpb24gX3N1c3ktZGVlcC1nZXQoXG4gICRtYXAsXG4gICRrZXlzLi4uXG4pIHtcbiAgJF9yZXR1cm46ICRtYXA7XG5cbiAgQGVhY2ggJGtleSBpbiAka2V5cyB7XG4gICAgQGlmIHR5cGUtb2YoJF9yZXR1cm4pID09IG1hcCB7XG4gICAgICAkX3JldHVybjogbWFwLWdldCgkX3JldHVybiwgJGtleSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cblxuXG4vLyBEZWVwIFNldFxuLy8gLS0tLS0tLS1cbi8vIC0gU2V0IGEgdmFsdWUgZGVlcCBpbiBuZXN0ZWQgbWFwc1xuQGZ1bmN0aW9uIF9zdXN5LWRlZXAtc2V0KFxuICAkbWFwLFxuICAka2V5cy12YWx1ZS4uLlxuKSB7XG4gICRfdmFsdWU6IG50aCgka2V5cy12YWx1ZSwgLTEpO1xuICAkX2tleXM6IF9zdXN5LXRydW5jYXRlLWxpc3QoJGtleXMtdmFsdWUsIGxlbmd0aCgka2V5cy12YWx1ZSkgLSAxKTtcbiAgJF9sZW5ndGg6IGxlbmd0aCgkX2tleXMpO1xuICAkX3JldHVybjogKCk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkX2xlbmd0aCB7XG4gICAgJF9uOiAwIC0gJGk7XG4gICAgJF9sZXZlbDogX3N1c3ktdHJ1bmNhdGUtbGlzdCgkX2tleXMsICRfbGVuZ3RoICsgJF9uKTtcbiAgICAkX2xldmVsOiBfc3VzeS1kZWVwLWdldCgkbWFwLCAkX2xldmVsLi4uKTtcbiAgICAkX21lcmdlOiBudGgoJF9rZXlzLCAkX24pO1xuICAgICRfbWVyZ2U6ICgkX21lcmdlOiAkX3ZhbHVlKTtcbiAgICAkX3JldHVybjogaWYoJF9sZXZlbCwgbWFwLW1lcmdlKCRfbGV2ZWwsICRfbWVyZ2UpLCAkX21lcmdlKTtcbiAgICAkX3ZhbHVlOiAkX3JldHVybjtcbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG5cblxuLy8gRGVlcCBNZXJnZVxuLy8gLS0tLS0tLS0tLVxuLy8gUmV0dXJuIDIgb2JqZWN0cyBvZiBhbnkgZGVwdGgsIG1lcmdlZFxuQGZ1bmN0aW9uIF9zdXN5LWRlZXAtbWVyZ2UoXG4gICRtYXAxLFxuICAkbWFwMlxuKSB7XG5cbiAgQGlmIHR5cGUtb2YoJG1hcDEpICE9IG1hcCBvciB0eXBlLW9mKCRtYXAyKSAhPSBtYXAge1xuICAgICRtYXAxOiAkbWFwMjtcbiAgfSBAZWxzZSB7XG4gICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAyIHtcbiAgICAgICRfbmV3OiAoJGtleTogX3N1c3lfZGVlcC1tZXJnZShtYXAtZ2V0KCRtYXAxLCAka2V5KSwgJHZhbHVlKSk7XG4gICAgICAkbWFwMTogbWFwLW1lcmdlKCRtYXAxLCAkX25ldyk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbWFwMTtcbn1cblxuXG4vLyBEZWVwIEhhcy1LZXlcbi8vIC0tLS0tLS0tLS0tLVxuLy8gLSBSZXR1cm4gdHJ1ZSBpZiBhIGRlZXAga2V5IGV4aXN0c1xuQGZ1bmN0aW9uIF9zdXN5LWRlZXAtaGFzLWtleShcbiAgJG1hcCxcbiAgJGtleXMuLi5cbikge1xuICAkX3JldHVybjogbnVsbDtcbiAgJF9zdG9wOiBmYWxzZTtcblxuICBAZWFjaCAka2V5IGluICRrZXlzIHtcbiAgICBAaWYgbm90KCRfc3RvcCkge1xuICAgICAgJF9yZXR1cm46IG1hcC1oYXMta2V5KCRtYXAsICRrZXkpO1xuICAgIH1cblxuICAgIEBpZiAkX3JldHVybiB7XG4gICAgICAkbWFwOiBtYXAtZ2V0KCRtYXAsICRrZXkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJF9zdG9wOiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG4iLCIvLyBTZXR0aW5nc1xuLy8gPT09PT09PT1cblxuLy8gVmVyc2lvblxuLy8gLS0tLS0tLVxuJHN1LXZlcnNpb246IDEuMTtcblxuXG4vLyBEZWZhdWx0IFNldHRpbmdzXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG4vLyBQUklWQVRFOiBUaGUgYmFzaWMgc2V0dGluZ3NcbiRzdXN5LWRlZmF1bHRzOiAoXG4gIGNvbHVtbnM6IDQsXG4gIGd1dHRlcnM6IC4yNSxcbik7XG5cblxuLy8gVXNlciBTZXR0aW5nc1xuLy8gLS0tLS0tLS0tLS0tLVxuLy8gLSBEZWZpbmUgdGhlICRzdXN5IHZhcmlhYmxlIHdpdGggYSBtYXAgb2YgeW91ciBvd24gc2V0dGluZ3MuXG4vLyAtIFNldCBFSVRIRVIgJGNvbHVtbi13aWR0aCBPUiAkY29udGFpbmVyXG4vLyAtIFVzZSAkY29sdW1uLXdpZHRoIGZvciBzdGF0aWMgbGF5b3V0c1xuJHN1c3k6ICgpICFkZWZhdWx0O1xuXG5cbi8vIFN1c3kgRGVmYXVsdHNcbi8vIC0tLS0tLS0tLS0tLS1cbi8vIFBSSVZBVEU6IEFkZCBkZWZhdWx0cyB0byBTdXN5XG5AbWl4aW4gc3VzeS1kZWZhdWx0cyhcbiAgJGRlZmF1bHRzXG4pIHtcbiAgJHN1c3ktZGVmYXVsdHM6IG1hcC1tZXJnZSgkc3VzeS1kZWZhdWx0cywgJGRlZmF1bHRzKSAhZ2xvYmFsO1xufVxuXG5cbi8vIFN1c3kgU2V0XG4vLyAtLS0tLS0tLVxuLy8gQ2hhbmdlIG9uZSBzZXR0aW5nXG4vLyAtICRrZXkgICA6IHNldHRpbmcgbmFtZVxuLy8gLSAkdmFsdWUgOiBzZXR0aW5nIHZhbHVlXG5AbWl4aW4gc3VzeS1zZXQoXG4gICRrZXktdmFsdWUuLi5cbikge1xuICAkc3VzeTogX3N1c3ktZGVlcC1zZXQoJHN1c3ksICRrZXktdmFsdWUuLi4pICFnbG9iYWw7XG59XG5cblxuLy8gU3VzeSBHZXRcbi8vIC0tLS0tLS0tXG4vLyBSZXR1cm4gb25lIHNldHRpbmcgZnJvbSBhIGdyaWRcbi8vIC0gJGtleSAgICAgOiA8a2V5d29yZD5cbi8vIC0gJGxheW91dCAgOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gc3VzeS1nZXQoXG4gICRrZXksXG4gICRsYXlvdXQ6IG1hcC1tZXJnZSgkc3VzeS1kZWZhdWx0cywgJHN1c3kpXG4pIHtcbiAgJGxheW91dDogcGFyc2UtZ3JpZCgkbGF5b3V0KTtcbiAgJF9vcHRpb25zOiAkbGF5b3V0ICRzdXN5ICRzdXN5LWRlZmF1bHRzO1xuICAkX2JyZWFrOiBmYWxzZTtcbiAgJF9yZXR1cm46IG51bGw7XG5cbiAgQGVhY2ggJG9wdCBpbiAkX29wdGlvbnMge1xuICAgIEBpZiB0eXBlLW9mKCRvcHQpID09IG1hcCBhbmQgbm90KCRfYnJlYWspIHtcbiAgICAgICRfa2V5c2V0OiBfc3VzeS1kZWVwLWhhcy1rZXkoJG9wdCwgJGtleS4uLik7XG4gICAgICBAaWYgJF9rZXlzZXQge1xuICAgICAgICAkX3JldHVybjogX3N1c3ktZGVlcC1nZXQoJG9wdCwgJGtleS4uLik7XG4gICAgICAgICRfYnJlYWs6IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cbiIsIi8vIE1hdGggVmFsaWRhdGlvblxuLy8gPT09PT09PT09PT09PT09XG5cblxuLy8gVmFsaWQgQ29sdW1uc1xuLy8gLS0tLS0tLS0tLS0tLVxuLy8gQ2hlY2sgdGhhdCBhIGNvbHVtbiBzZXR0aW5nIGlzIHZhbGlkLlxuQGZ1bmN0aW9uIHZhbGlkLWNvbHVtbnMoXG4gICRjb2x1bW5zLFxuICAkc2lsZW50OiBmYWxzZVxuKSB7XG4gICR0eXBlOiB0eXBlLW9mKCRjb2x1bW5zKTtcbiAgJHJldHVybjogbnVsbDtcblxuICBAaWYgJHR5cGUgPT0gbnVtYmVyIGFuZCB1bml0bGVzcygkY29sdW1ucykge1xuICAgICRyZXR1cm46ICRjb2x1bW5zO1xuICB9IEBlbHNlIGlmICR0eXBlID09IGxpc3Qge1xuICAgICRmYWlsOiBudWxsO1xuICAgIEBlYWNoICRjb2wgaW4gJGNvbHVtbnMge1xuICAgICAgQGlmIHR5cGUtb2YoJGNvbCkgPT0gbnVtYmVyIHtcbiAgICAgICAgJGZhaWw6ICRmYWlsIG9yIGlmKHVuaXRsZXNzKCRjb2wpLCBudWxsLCB0cnVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkZmFpbDogdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJHJldHVybjogaWYoJGZhaWwsICRyZXR1cm4sICRjb2x1bW5zKTtcbiAgfVxuXG4gIEBpZiAkcmV0dXJuICE9ICRjb2x1bW5zIGFuZCBub3QoJHNpbGVudCkge1xuICAgICRyZXR1cm46IG51bGw7XG4gICAgJHdhcm46ICckY29sdW1ucyBtdXN0IGJlIGEgdW5pdGxlc3MgbnVtYmVyIG9yIGxpc3Qgb2YgdW5pdGxlc3MgbnVtYmVycy4nO1xuICAgIEB3YXJuICR3YXJuICsgJyBDdXJyZW50IHZhbHVlIFsjeyR0eXBlfV06ICN7JGNvbHVtbnN9JztcbiAgfVxuXG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuXG4vLyBWYWxpZCBHdXR0ZXJzXG4vLyAtLS0tLS0tLS0tLS0tXG4vLyBDaGVjayB0aGF0IGEgZ3V0dGVyIHNldHRpbmcgaXMgdmFsaWQuXG5AZnVuY3Rpb24gdmFsaWQtZ3V0dGVycyhcbiAgJGd1dHRlcnMsXG4gICRzaWxlbnQ6IGZhbHNlXG4pIHtcbiAgJHR5cGU6IHR5cGUtb2YoJGd1dHRlcnMpO1xuICAkcmV0dXJuOiBudWxsO1xuXG4gIEBpZiAkdHlwZSA9PSBudW1iZXIgYW5kIHVuaXRsZXNzKCRndXR0ZXJzKSB7XG4gICAgJHJldHVybjogJGd1dHRlcnM7XG4gIH0gQGVsc2UgaWYgbm90KCRzaWxlbnQpIHtcbiAgICAkd2FybjogJyRndXR0ZXJzIG11c3QgYmUgYSB1bml0bGVzcyBudW1iZXIuJztcbiAgICBAd2FybiAkd2FybiArICcgQ3VycmVudCB2YWx1ZSBbI3skdHlwZX1dOiAjeyRndXR0ZXJzfSc7XG4gIH1cblxuICBAcmV0dXJuICRyZXR1cm47XG59XG4iLCIvLyBDb2x1bW4gbWF0aFxuLy8gPT09PT09PT09PT1cblxuXG4vLyBJcyBTeW1tZXRyaWNhbFxuLy8gLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybnMgdHJ1ZSBpZiBhIGdyaWQgaXMgc3ltbWV0cmljYWwuXG4vLyAtIFskY29sdW1uc10gICA6IDxudW1iZXI+IHwgPGxpc3Q+XG5AZnVuY3Rpb24gaXMtc3ltbWV0cmljYWwoXG4gICRjb2x1bW5zOiBzdXN5LWdldChjb2x1bW5zKVxuKSB7XG4gICRjb2x1bW5zOiB2YWxpZC1jb2x1bW5zKCRjb2x1bW5zKTtcbiAgQHJldHVybiBpZih0eXBlLW9mKCRjb2x1bW5zKSA9PSBudW1iZXIsICRjb2x1bW5zLCBudWxsKTtcbn1cblxuXG4vLyBTdXN5IENvdW50XG4vLyAtLS0tLS0tLS0tXG4vLyBGaW5kIHRoZSBudW1iZXIgb2YgY29sdW1ucyBpbiBhIGdpdmVuIGxheW91dFxuLy8gLSBbJGNvbHVtbnNdICAgOiA8bnVtYmVyPiB8IDxsaXN0PlxuQGZ1bmN0aW9uIHN1c3ktY291bnQoXG4gICRjb2x1bW5zOiBzdXN5LWdldChjb2x1bW5zKVxuKSB7XG4gICRjb2x1bW5zOiB2YWxpZC1jb2x1bW5zKCRjb2x1bW5zKTtcbiAgQHJldHVybiBpcy1zeW1tZXRyaWNhbCgkY29sdW1ucykgb3IgbGVuZ3RoKCRjb2x1bW5zKTtcbn1cblxuXG4vLyBTdXN5IFN1bVxuLy8gLS0tLS0tLS1cbi8vIEZpbmQgdGhlIHRvdGFsIHN1bSBvZiBjb2x1bW4tdW5pdHMgaW4gYSBsYXlvdXRcbi8vIC0gWyRjb2x1bW5zXSAgIDogPG51bWJlcj4gfCA8bGlzdD5cbi8vIC0gWyRndXR0ZXJzXSAgIDogPHJhdGlvPlxuLy8gLSBbJHNwcmVhZF0gICAgOiBmYWxzZS9uYXJyb3cgfCB3aWRlIHwgd2lkZXJcbkBmdW5jdGlvbiBzdXN5LXN1bShcbiAgJGNvbHVtbnMgIDogc3VzeS1nZXQoY29sdW1ucyksXG4gICRndXR0ZXJzICA6IHN1c3ktZ2V0KGd1dHRlcnMpLFxuICAkc3ByZWFkICAgOiBmYWxzZVxuKSB7XG4gICRjb2x1bW5zOiB2YWxpZC1jb2x1bW5zKCRjb2x1bW5zKTtcbiAgJGd1dHRlcnM6IHZhbGlkLWd1dHRlcnMoJGd1dHRlcnMpO1xuXG4gICRzcHJlYWQ6IGlmKCRzcHJlYWQgPT0gd2lkZSwgMCwgaWYoJHNwcmVhZCA9PSB3aWRlciwgMSwgLTEpKTtcbiAgJGd1dHRlci1zdW06IChzdXN5LWNvdW50KCRjb2x1bW5zKSArICRzcHJlYWQpICogJGd1dHRlcnM7XG4gICRjb2x1bW4tc3VtOiBpcy1zeW1tZXRyaWNhbCgkY29sdW1ucyk7XG5cbiAgQGlmIG5vdCgkY29sdW1uLXN1bSkge1xuICAgIEBlYWNoICRjb2x1bW4gaW4gJGNvbHVtbnMge1xuICAgICAgJGNvbHVtbi1zdW06ICgkY29sdW1uLXN1bSBvciAwKSArICRjb2x1bW47XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkY29sdW1uLXN1bSArICRndXR0ZXItc3VtO1xufVxuXG5cbi8vIFN1c3kgU2xpY2Vcbi8vIC0tLS0tLS0tLS1cbi8vIFJldHVybiBhIHN1YnNldCBvZiBjb2x1bW5zIGF0IGEgZ2l2ZW4gbG9jYXRpb24uXG4vLyAtICRzcGFuICAgICAgICA6IDxudW1iZXI+XG4vLyAtICRsb2NhdGlvbiAgICA6IDxudW1iZXI+XG4vLyAtIFskY29sdW1uc10gICA6IDxudW1iZXI+IHwgPGxpc3Q+XG5AZnVuY3Rpb24gc3VzeS1zbGljZShcbiAgJHNwYW4sXG4gICRsb2NhdGlvbixcbiAgJGNvbHVtbnM6IHN1c3ktZ2V0KGNvbHVtbnMpXG4pIHtcbiAgJGNvbHVtbnM6IHZhbGlkLWNvbHVtbnMoJGNvbHVtbnMpO1xuICAkc3ViLWNvbHVtbnM6ICRzcGFuO1xuXG4gIEBpZiBub3QoaXMtc3ltbWV0cmljYWwoJGNvbHVtbnMpKSB7XG4gICAgJGxvY2F0aW9uOiAkbG9jYXRpb24gb3IgMTtcbiAgICAkc3ViLWNvbHVtbnM6ICgpO1xuICAgIEBmb3IgJGkgZnJvbSAkbG9jYXRpb24gdG8gKCRsb2NhdGlvbiArICRzcGFuKSB7XG4gICAgICAkc3ViLWNvbHVtbnM6IGFwcGVuZCgkc3ViLWNvbHVtbnMsIG50aCgkY29sdW1ucywgJGkpKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdWItY29sdW1ucztcbn1cblxuXG4vLyBTdXN5XG4vLyAtLS0tXG4vLyBGaW5kIHRoZSBzdW0gb2YgYSBjb2x1bW4tc3Bhbi5cbi8vIC0gJHNwYW4gICAgICAgIDogPG51bWJlcj5cbi8vIC0gJGxvY2F0aW9uICAgIDogPG51bWJlcj5cbi8vIC0gWyRjb2x1bW5zXSAgIDogPG51bWJlcj4gfCA8bGlzdD5cbi8vIC0gWyRndXR0ZXJzXSAgIDogPHJhdGlvPlxuLy8gLSBbJHNwcmVhZF0gICAgOiBmYWxzZS9uYXJyb3cgfCB3aWRlIHwgd2lkZXJcbkBmdW5jdGlvbiBzdXN5KFxuICAkc3BhbixcbiAgJGxvY2F0aW9uICAgICA6IGZhbHNlLFxuICAkY29sdW1ucyAgICAgIDogc3VzeS1nZXQoY29sdW1ucyksXG4gICRndXR0ZXJzICAgICAgOiBzdXN5LWdldChndXR0ZXJzKSxcbiAgJHNwcmVhZCAgICAgICA6IGZhbHNlXG4pIHtcbiAgJGNvbHVtbnM6IHZhbGlkLWNvbHVtbnMoJGNvbHVtbnMpO1xuICAkZ3V0dGVyczogdmFsaWQtZ3V0dGVycygkZ3V0dGVycyk7XG4gICRzcGFuOiBzdXN5LXNsaWNlKCRzcGFuLCAkbG9jYXRpb24sICRjb2x1bW5zKTtcblxuICBAcmV0dXJuIHN1c3ktc3VtKCRzcGFuLCAkZ3V0dGVycywgJHNwcmVhZCk7XG59XG4iLCIvLyBGbG9hdCBBUElcbi8vID09PT09PT09PVxuXG5AaW1wb3J0IFwic2hhcmVkXCI7XG5cbkBpbXBvcnQgXCJmbG9hdC9jb250YWluZXJcIjtcbkBpbXBvcnQgXCJmbG9hdC9zcGFuXCI7XG5AaW1wb3J0IFwiZmxvYXQvZW5kXCI7XG5AaW1wb3J0IFwiZmxvYXQvaXNvbGF0ZVwiO1xuIiwiLy8gU2hhcmVkIEFQSVxuLy8gPT09PT09PT09PVxuXG5AaW1wb3J0IFwic3VwcG9ydFwiO1xuXG5AaW1wb3J0IFwic2hhcmVkL2luc3BlY3RcIjtcbkBpbXBvcnQgXCJzaGFyZWQvb3V0cHV0XCI7XG5AaW1wb3J0IFwic2hhcmVkL2RpcmVjdGlvblwiO1xuQGltcG9ydCBcInNoYXJlZC9iYWNrZ3JvdW5kXCI7XG5AaW1wb3J0IFwic2hhcmVkL2NvbnRhaW5lclwiO1xuQGltcG9ydCBcInNoYXJlZC9tYXJnaW5zXCI7XG5AaW1wb3J0IFwic2hhcmVkL3BhZGRpbmdcIjtcblxuXG5cbiIsIi8vIFN1c3kgQnJvd3NlciBTdXBwb3J0XG4vLyA9PT09PT09PT09PT09PT09PT09PVxuXG5AaW1wb3J0IFwic3VwcG9ydC9zdXBwb3J0XCI7XG5AaW1wb3J0IFwic3VwcG9ydC9wcmVmaXhcIjtcbkBpbXBvcnQgXCJzdXBwb3J0L2JhY2tncm91bmRcIjtcbkBpbXBvcnQgXCJzdXBwb3J0L2JveC1zaXppbmdcIjtcbkBpbXBvcnQgXCJzdXBwb3J0L3JlbVwiO1xuQGltcG9ydCBcInN1cHBvcnQvY2xlYXJmaXhcIjtcbiIsIi8vIEJyb3dzZXIgU3VwcG9ydFxuLy8gPT09PT09PT09PT09PT09XG5cbi8vIFN1c3kgU3VwcG9ydCBEZWZhdWx0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AaW5jbHVkZSBzdXN5LWRlZmF1bHRzKChcbiAgdXNlLWN1c3RvbTogKFxuICAgIGNsZWFyZml4OiBmYWxzZSxcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB0cnVlLFxuICAgIGJhY2tncm91bmQtb3B0aW9uczogZmFsc2UsXG4gICAgYnJlYWtwb2ludDogdHJ1ZSxcbiAgICBib3gtc2l6aW5nOiB0cnVlLFxuICAgIHJlbTogdHJ1ZSxcbiAgKSxcbikpO1xuXG5cbi8vIFN1c3kgU3VwcG9ydCBbbWl4aW5dXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2VuZCBwcm9wZXJ0eS12YWx1ZSBwYWlycyB0byB0aGUgcHJvcGVyIHN1cHBvcnQgbW9kdWxlcy5cbi8vIC0gJHByb3AgIDogPGNzcyBwcm9wZXJ0eT5cbi8vIC0gJHZhbCAgIDogPGNzcyB2YWx1ZT5cbkBtaXhpbiBzdXN5LXN1cHBvcnQoXG4gICRwcm9wLFxuICAkdmFsXG4pIHtcbiAgLy8gQmFja2dyb3VuZCBTdXBwb3J0XG4gIEBpZiAkcHJvcCA9PSBiYWNrZ3JvdW5kLWltYWdlIHtcbiAgICBAaW5jbHVkZSBzdXN5LWJhY2tncm91bmQtaW1hZ2UoJHZhbCk7XG4gIH0gQGVsc2UgaWYgJHByb3AgPT0gYmFja2dyb3VuZC1zaXplIHtcbiAgICBAaW5jbHVkZSBzdXN5LWJhY2tncm91bmQtc2l6ZSgkdmFsKTtcbiAgfSBAZWxzZSBpZiAkcHJvcCA9PSBiYWNrZ3JvdW5kLW9yaWdpbiB7XG4gICAgQGluY2x1ZGUgc3VzeS1iYWNrZ3JvdW5kLW9yaWdpbigkdmFsKTtcbiAgfSBAZWxzZSBpZiAkcHJvcCA9PSBiYWNrZ3JvdW5kLWNsaXAge1xuICAgIEBpbmNsdWRlIHN1c3ktYmFja2dyb3VuZC1jbGlwKCR2YWwpO1xuICB9XG5cbiAgLy8gQm94LVNpemluZyBTdXBwb3J0XG4gIEBlbHNlIGlmICRwcm9wID09IGJveC1zaXppbmcge1xuICAgIEBpbmNsdWRlIHN1c3ktYm94LXNpemluZygkdmFsKTtcbiAgfVxuXG4gIC8vIFJlbSBTdXBwb3J0XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBzdXN5LXJlbSgkcHJvcCwgJHZhbCk7XG4gIH1cbn1cblxuXG4vLyBTdXN5IFN1cHBvcnQgW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENoZWNrIGZvciBzdXBwb3J0IG9mIGEgZmVhdHVyZS5cbi8vIC0gJGZlYXR1cmUgICAgICAgOiA8c3RyaW5nPlxuLy8gICAgICAgICAgICAgICAgICAgIC0gZS5nIFwicmVtXCIgb3IgXCJib3gtc2l6aW5nXCJcbi8vIC0gJHJlcXVpcmVtZW50cyAgOiA8bWFwPlxuLy8gICAgICAgICAgICAgICAgICAgIC0gZS5nICh2YXJpYWJsZTogcmVtLXdpdGgtcHgtZmFsbGJhY2ssIG1peGluOiByZW0pXG4vLyAtICR3YXJuICAgICAgICAgIDogPGJvb2w+XG5AZnVuY3Rpb24gc3VzeS1zdXBwb3J0KFxuICAkZmVhdHVyZSxcbiAgJHJlcXVpcmVtZW50czogKCksXG4gICR3YXJuOiB0cnVlXG4pIHtcbiAgJF9zdXBwb3J0OiBzdXN5LWdldCh1c2UtY3VzdG9tICRmZWF0dXJlKTtcblxuICBAaWYgJF9zdXBwb3J0IHtcbiAgICAkX2ZhaWw6IGZhbHNlO1xuXG4gICAgQGVhY2ggJF90eXBlLCAkX3JlcSBpbiAkcmVxdWlyZW1lbnRzIHtcbiAgICAgIEBlYWNoICRfaSBpbiAkX3JlcSB7XG5cbiAgICAgICAgJF9wYXNzIDogbnVsbDtcblxuICAgICAgICAvLyBzYXNzIDMuNSBvciBncmVhdGVyXG4gICAgICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoJ2dldC1mdW5jdGlvbicpIHtcbiAgICAgICAgICAkX3Bhc3M6IGNhbGwoZ2V0LWZ1bmN0aW9uKHVucXVvdGUoXCIjeyRfdHlwZX0tZXhpc3RzXCIpKSwgJF9pKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBzYXNzIDMuNCBvciBsZXNzXG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAkX3Bhc3M6IGNhbGwodW5xdW90ZShcIiN7JF90eXBlfS1leGlzdHNcIiksICRfaSk7XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgbm90KCRfcGFzcykge1xuICAgICAgICAgICRfZmFpbDogdHJ1ZTtcbiAgICAgICAgICBAaWYgJHdhcm4ge1xuICAgICAgICAgICAgQHdhcm4gXCJZb3UgcmVxdWVzdGVkIGN1c3RvbSBzdXBwb3J0IG9mICN7JGZlYXR1cmV9LCBidXQgdGhlICN7JF9pfSAjeyRfdHlwZX0gaXMgbm90IGF2YWlsYWJsZS5cIjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkX3N1cHBvcnQ6IGlmKCRfZmFpbCwgZmFsc2UsICRfc3VwcG9ydCk7XG4gIH1cblxuICBAcmV0dXJuICRfc3VwcG9ydDtcbn1cbiIsIi8vIFN1c3kgUHJlZml4XG4vLyA9PT09PT09PT09PVxuXG4vLyBQcmVmaXhcbi8vIC0tLS0tLVxuLy8gT3V0cHV0IHNpbXBsZSBwcmVmaXhlZCBwcm9wZXJ0aWVzLlxuLy8gLSAkcHJvcCAgICAgIDogPGNzcyBwcm9wZXJ0eT5cbi8vIC0gJHZhbCAgICAgICA6IDxjc3MgdmFsdWU+XG4vLyAtIFskcHJlZml4XSAgOiA8YnJvd3NlciBwcmVmaXggbGlzdD5cbkBtaXhpbiBzdXN5LXByZWZpeChcbiAgJHByb3AsXG4gICR2YWwsXG4gICRwcmVmaXg6IG9mZmljaWFsXG4pIHtcbiAgQGVhY2ggJGZpeCBpbiAkcHJlZml4IHtcbiAgICAkZml4OiBpZigkZml4ID09IG9mZmljaWFsIG9yIG5vdCgkZml4KSwgJHByb3AsICctI3skZml4fS0jeyRwcm9wfScpO1xuICAgIEBpbmNsdWRlIHN1c3ktcmVtKCRmaXgsICR2YWwpO1xuICB9XG59XG4iLCIvLyBCYWNrZ3JvdW5kIFByb3BlcnRpZXNcbi8vID09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBTdXN5IEJhY2tncm91bmQgSW1hZ2Vcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2hlY2sgZm9yIGFuIGV4aXN0aW5nIHN1cHBvcnQgbWl4aW4sIG9yIHByb3ZpZGUgYSBzaW1wbGUgZmFsbGJhY2suXG4vLyAtICRpbWFnZTogPGJhY2tncm91bmQtaW1hZ2U+XG5AbWl4aW4gc3VzeS1iYWNrZ3JvdW5kLWltYWdlKFxuICAkaW1hZ2Vcbikge1xuICBAaWYgc3VzeS1zdXBwb3J0KGJhY2tncm91bmQtaW1hZ2UsIChtaXhpbjogYmFja2dyb3VuZC1pbWFnZSksICR3YXJuOiBmYWxzZSkge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UoJGltYWdlLi4uKTtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJGltYWdlO1xuICB9XG59XG5cbi8vIFN1c3kgQmFja2dyb3VuZCBTaXplXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENoZWNrIGZvciBhbiBleGlzdGluZyBzdXBwb3J0IG1peGluLCBvciBwcm92aWRlIGEgc2ltcGxlIGZhbGxiYWNrLlxuLy8gLSAkaW1hZ2U6IDxiYWNrZ3JvdW5kLXNpemU+XG5AbWl4aW4gc3VzeS1iYWNrZ3JvdW5kLXNpemUoXG4gICRzaXplXG4pIHtcbiAgQGlmIHN1c3ktc3VwcG9ydChiYWNrZ3JvdW5kLW9wdGlvbnMsIChtaXhpbjogYmFja2dyb3VuZC1zaXplKSkge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtc2l6ZSgkc2l6ZSk7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHNpemU7XG4gIH1cbn1cblxuLy8gU3VzeSBCYWNrZ3JvdW5kIE9yaWdpblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2hlY2sgZm9yIGFuIGV4aXN0aW5nIHN1cHBvcnQgbWl4aW4sIG9yIHByb3ZpZGUgYSBzaW1wbGUgZmFsbGJhY2suXG4vLyAtICRpbWFnZTogPGJhY2tncm91bmQtb3JpZ2luPlxuQG1peGluIHN1c3ktYmFja2dyb3VuZC1vcmlnaW4oXG4gICRvcmlnaW5cbikge1xuICBAaWYgc3VzeS1zdXBwb3J0KGJhY2tncm91bmQtb3B0aW9ucywgKG1peGluOiBiYWNrZ3JvdW5kLW9yaWdpbikpIHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLW9yaWdpbigkb3JpZ2luKTtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46ICRvcmlnaW47XG4gIH1cbn1cblxuLy8gU3VzeSBCYWNrZ3JvdW5kIENsaXBcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDaGVjayBmb3IgYW4gZXhpc3Rpbmcgc3VwcG9ydCBtaXhpbiwgb3IgcHJvdmlkZSBhIHNpbXBsZSBmYWxsYmFjay5cbi8vIC0gJGltYWdlOiA8YmFja2dyb3VuZC1jbGlwPlxuQG1peGluIHN1c3ktYmFja2dyb3VuZC1jbGlwKFxuICAkY2xpcFxuKSB7XG4gIEBpZiBzdXN5LXN1cHBvcnQoYmFja2dyb3VuZC1vcHRpb25zLCAobWl4aW46IGJhY2tncm91bmQtY2xpcCkpIHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNsaXAoJGNsaXApO1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6ICRjbGlwO1xuICB9XG59XG4iLCIvLyBCb3ggU2l6aW5nXG4vLyA9PT09PT09PT09XG5cbi8vIEJveCBTaXppbmdcbi8vIC0tLS0tLS0tLS1cbi8vIENoZWNrIGZvciBhbiBleGlzdGluZyBzdXBwb3J0IG1peGluLCBvciBwcm92aWRlIGEgc2ltcGxlIGZhbGxiYWNrLlxuLy8gLSAkbW9kZWw6IDxib3gtc2l6aW5nPlxuQG1peGluIHN1c3ktYm94LXNpemluZyhcbiAgJG1vZGVsOiBjb250ZW50LWJveFxuKSB7XG4gIEBpZiAkbW9kZWwge1xuICAgIEBpZiBzdXN5LXN1cHBvcnQoYm94LXNpemluZywgKG1peGluOiBib3gtc2l6aW5nKSwgJHdhcm46IGZhbHNlKSB7XG4gICAgICBAaW5jbHVkZSBib3gtc2l6aW5nKCRtb2RlbCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcHJlZml4OiAobW96LCB3ZWJraXQsIG9mZmljaWFsKTtcbiAgICAgIEBpbmNsdWRlIHN1c3ktcHJlZml4KGJveC1zaXppbmcsICRtb2RlbCwgJHByZWZpeCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyByZW0gU3VwcG9ydFxuLy8gPT09PT09PT09PT1cblxuLy8gcmVtXG4vLyAtLS1cbi8vIENoZWNrIGZvciBhbiBleGlzdGluZyBzdXBwb3J0IG1peGluLCBvciBvdXRwdXQgZGlyZWN0bHkuXG4vLyAtICRwcm9wICA6IDxjc3MgcHJvcGVydHk+XG4vLyAtICR2YWwgICA6IDxjc3MgdmFsdWU+XG5AbWl4aW4gc3VzeS1yZW0oXG4gICRwcm9wLFxuICAkdmFsXG4pIHtcbiAgJF9yZXFzOiAoXG4gICAgdmFyaWFibGU6IHJoeXRobS11bml0IHJlbS13aXRoLXB4LWZhbGxiYWNrLFxuICAgIG1peGluOiByZW0sXG4gICk7XG4gIEBpZiBzdXN5LXN1cHBvcnQocmVtLCAkX3JlcXMsICR3YXJuOiBmYWxzZSkgYW5kICRyaHl0aG0tdW5pdCA9PSByZW0ge1xuICAgIEBpbmNsdWRlIHJlbSgkcHJvcCwgJHZhbCk7XG4gIH0gQGVsc2Uge1xuICAgICN7JHByb3B9OiAkdmFsO1xuICB9XG59XG4iLCIvLyBTdXN5IEZhbGxiYWNrIENsZWFyZml4XG4vLyA9PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gQ2xlYXJmaXhcbi8vIC0tLS0tLS0tXG4vLyBDaGVjayBmb3IgYW4gZXhpc3Rpbmcgc3VwcG9ydCBtaXhpbiwgb3IgcHJvdmlkZSBhIHNpbXBsZSBmYWxsYmFjay5cbkBtaXhpbiBzdXN5LWNsZWFyZml4IHtcbiAgQGlmIHN1c3ktc3VwcG9ydChjbGVhcmZpeCwgKG1peGluOiBjbGVhcmZpeCkpIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfSBAZWxzZSB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICB9XG59XG4iLCIvLyBEZWJ1Z2dpbmdcbi8vID09PT09PT09PVxuXG4vLyBTdXN5IEluc3BlY3Rcbi8vIC0tLS0tLS0tLS0tLVxuLy8gT3V0cHV0IGFyZ3VtZW50cyBwYXNzZWQgdG8gYSBpbnNwZWN0LlxuLy8gLSAkbWl4aW4gIDogPHN1c3kgbWl4aW4+XG4vLyAtICRpbnNwZWMgICA6IDxtaXhpbiBhcmd1bWVudHM+XG5cbkBtaXhpbiBzdXN5LWluc3BlY3QoXG4gICRtaXhpbixcbiAgJGluc3BlY3Rcbikge1xuICAkc2hvdzogZmFsc2U7XG5cbiAgQGVhY2ggJGl0ZW0gaW4gJGluc3BlY3Qge1xuICAgIEBpZiBpbmRleCgkaXRlbSwgaW5zcGVjdCkge1xuICAgICAgJHNob3c6IHRydWU7XG4gICAgfVxuICB9XG5cbiAgQGlmICRzaG93IG9yIHN1c3ktZ2V0KGRlYnVnIGluc3BlY3QpIHtcbiAgICAtc3VzeS0jeyRtaXhpbn06IGluc3BlY3QoJGluc3BlY3QpO1xuICB9XG59XG4iLCIvLyBPdXRwdXRcbi8vID09PT09PVxuXG4vLyBPdXRwdXRcbi8vIC0tLS0tLVxuLy8gT3V0cHV0IENTUyB3aXRoIHByb3BlciBicm93c2VyIHN1cHBvcnQuXG4vLyAtICRzdHlsZXMgIDogPG1hcCBvZiBjc3MgcHJvcGVydHktdmFsdWUgcGFpcnM+XG5AbWl4aW4gb3V0cHV0KFxuICAkc3R5bGVzXG4pIHtcbiAgQGVhY2ggJHByb3AsICR2YWwgaW4gJHN0eWxlcyB7XG4gICAgQGluY2x1ZGUgc3VzeS1zdXBwb3J0KCRwcm9wLCAkdmFsKTtcbiAgfVxufVxuIiwiLy8gRGlyZWN0aW9uIEhlbHBlcnNcbi8vID09PT09PT09PT09PT09PT09XG5cbi8vIFN1c3kgRmxvdyBEZWZhdWx0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAtIFBSSVZBVEVcbkBpbmNsdWRlIHN1c3ktZGVmYXVsdHMoKFxuICBmbG93OiBsdHIsXG4pKTtcblxuLy8gR2V0IERpcmVjdGlvblxuLy8gLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHRoZSAnZnJvbScgb3IgJ3RvJyBkaXJlY3Rpb24gb2YgYSBsdHIgb3IgcnRsIGZsb3cuXG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG4vLyAtIFska2V5XSAgIDogZnJvbSB8IHRvXG5AZnVuY3Rpb24gZ2V0LWRpcmVjdGlvbihcbiAgJGZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpLFxuICAka2V5OiBmcm9tXG4pIHtcbiAgJHJldHVybjogaWYoJGZsb3cgPT0gcnRsLCAoZnJvbTogcmlnaHQsIHRvOiBsZWZ0KSwgKGZyb206IGxlZnQsIHRvOiByaWdodCkpO1xuICBAcmV0dXJuIG1hcC1nZXQoJHJldHVybiwgJGtleSk7XG59XG5cbi8vIFRvXG4vLyAtLVxuLy8gUmV0dXJuIHRoZSAndG8nIGRpcmVjdGlvbiBvZiBhIGZsb3dcbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBmdW5jdGlvbiB0byhcbiAgJGZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpXG4pIHtcbiAgQHJldHVybiBnZXQtZGlyZWN0aW9uKCRmbG93LCB0byk7XG59XG5cbi8vIEZyb21cbi8vIC0tLS1cbi8vIFJldHVybiB0aGUgJ2Zyb20nIGRpcmVjdGlvbiBvZiBhIGZsb3dcbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBmdW5jdGlvbiBmcm9tKFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdylcbikge1xuICBAcmV0dXJuIGdldC1kaXJlY3Rpb24oJGZsb3csIGZyb20pO1xufVxuIiwiLy8gR3JpZCBCYWNrZ3JvdW5kIEFQSVxuLy8gPT09PT09PT09PT09PT09PT09PVxuLy8gLSBTdWItcGl4ZWwgcm91bmRpbmcgY2FuIGxlYWQgdG8gc2V2ZXJhbCBwaXhlbHMgdmFyaWF0aW9uIGJldHdlZW4gYnJvd3NlcnMuXG5cbi8vIEdyaWQgQmFja2dyb3VuZCBPdXRwdXRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gJGltYWdlOiBiYWNrZ3JvdW5kLWltYWdlXG4vLyAtICRzaXplOiBiYWNrZ3JvdW5kLXNpemVcbi8vIC0gJGNsaXA6IGJhY2tncm91bmQtY2xpcFxuLy8gLSBbJGZsb3ddOiBsdHIgfCBydGxcbkBtaXhpbiBiYWNrZ3JvdW5kLWdyaWQtb3V0cHV0IChcbiAgJGltYWdlLFxuICAkc2l6ZTogbnVsbCxcbiAgJGNsaXA6IG51bGwsXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gICRvdXRwdXQ6IChcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkaW1hZ2UsXG4gICAgYmFja2dyb3VuZC1zaXplOiAkc2l6ZSxcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogJGNsaXAsXG4gICAgYmFja2dyb3VuZC1jbGlwOiAkY2xpcCxcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBmcm9tKCRmbG93KSB0b3AsXG4gICk7XG5cbiAgQGluY2x1ZGUgb3V0cHV0KCRvdXRwdXQpO1xufVxuIiwiLy8gU2hhcmVkIENvbnRhaW5lciBBUElcbi8vID09PT09PT09PT09PT09PT09PT09XG5cbi8vIENvbnRhaW5lciBPdXRwdXRcbi8vIC0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gWyR3aWR0aF0gICAgICAgICA6IDxsZW5ndGg+XG4vLyAtIFskanVzdGlmeV0gICAgICAgOiBsZWZ0IHwgY2VudGVyIHwgcmlnaHRcbi8vIC0gWyRtYXRoXSAgICAgICAgICA6IGZsdWlkIHwgc3RhdGljXG5AbWl4aW4gY29udGFpbmVyLW91dHB1dChcbiAgJHdpZHRoLFxuICAkanVzdGlmeTogYXV0byBhdXRvLFxuICAkcHJvcGVydHk6IG1heC13aWR0aFxuKSB7XG4gICRvdXRwdXQ6IChcbiAgICAjeyRwcm9wZXJ0eX06ICR3aWR0aCBvciAxMDAlLFxuICAgIG1hcmdpbi1sZWZ0OiBudGgoJGp1c3RpZnksIDEpLFxuICAgIG1hcmdpbi1yaWdodDogbnRoKCRqdXN0aWZ5LCAyKSxcbiAgKTtcblxuICBAaW5jbHVkZSBvdXRwdXQoJG91dHB1dCk7XG59XG4iLCIvLyBNYXJnaW5zIEFQSVxuLy8gPT09PT09PT09PT1cblxuLy8gTWFyZ2luIE91dHB1dFxuLy8gLS0tLS0tLS0tLS0tLVxuLy8gLSAkYmVmb3JlICA6IDxsZW5ndGg+XG4vLyAtICRhZnRlciAgIDogPGxlbmd0aD5cbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBtaXhpbiBtYXJnaW4tb3V0cHV0KFxuICAkYmVmb3JlLFxuICAkYWZ0ZXIsXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gICR0bzogdG8oJGZsb3cpO1xuICAkZnJvbTogZnJvbSgkZmxvdyk7XG5cbiAgJG91dHB1dDogKFxuICAgIG1hcmdpbi0jeyRmcm9tfTogJGJlZm9yZSxcbiAgICBtYXJnaW4tI3skdG99OiAkYWZ0ZXIsXG4gICk7XG5cbiAgQGluY2x1ZGUgb3V0cHV0KCRvdXRwdXQpO1xufVxuIiwiLy8gUGFkZGluZyBBUElcbi8vID09PT09PT09PT09XG5cbi8vIFBhZGRpbmcgT3V0cHV0XG4vLyAtLS0tLS0tLS0tLS0tLVxuLy8gLSAkYmVmb3JlICA6IDxsZW5ndGg+XG4vLyAtICRhZnRlciAgIDogPGxlbmd0aD5cbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBtaXhpbiBwYWRkaW5nLW91dHB1dChcbiAgJGJlZm9yZSxcbiAgJGFmdGVyLFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdylcbikge1xuICAkdG86IHRvKCRmbG93KTtcbiAgJGZyb206IGZyb20oJGZsb3cpO1xuXG4gICRvdXRwdXQ6IChcbiAgICBwYWRkaW5nLSN7JGZyb219OiAkYmVmb3JlLFxuICAgIHBhZGRpbmctI3skdG99OiAkYWZ0ZXIsXG4gICk7XG5cbiAgQGluY2x1ZGUgb3V0cHV0KCRvdXRwdXQpO1xufVxuIiwiLy8gRmxvYXQgQ29udGFpbmVyIEFQSVxuLy8gPT09PT09PT09PT09PT09PT09PVxuXG4vLyBGbG9hdCBDb250YWluZXJcbi8vIC0tLS0tLS0tLS0tLS0tLVxuLy8gLSBbJHdpZHRoXSAgICAgICAgIDogPGxlbmd0aD5cbi8vIC0gWyRqdXN0aWZ5XSAgICAgICA6IGxlZnQgfCBjZW50ZXIgfCByaWdodFxuLy8gLSBbJG1hdGhdICAgOiBmbHVpZCB8IHN0YXRpY1xuQG1peGluIGZsb2F0LWNvbnRhaW5lcihcbiAgJHdpZHRoLFxuICAkanVzdGlmeTogYXV0byBhdXRvLFxuICAkcHJvcGVydHk6IG1heC13aWR0aFxuKSB7XG4gIEBpbmNsdWRlIHN1c3ktY2xlYXJmaXg7XG4gIEBpbmNsdWRlIGNvbnRhaW5lci1vdXRwdXQoJHdpZHRoLCAkanVzdGlmeSwgJHByb3BlcnR5KTtcbn1cbiIsIi8vIEZsb2F0IFNwYW4gQVBJXG4vLyA9PT09PT09PT09PT09PVxuXG4vLyBGbG9hdCBTcGFuIE91dHB1dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gJHdpZHRoICAgICAgICAgICAgIDogPGxlbmd0aD5cbi8vIC0gWyRmbG9hdF0gICAgICAgICAgIDogZnJvbSB8IHRvXG4vLyAtIFskbWFyZ2luLWJlZm9yZV0gICA6IDxsZW5ndGg+XG4vLyAtIFskbWFyZ2luLWFmdGVyXSAgICA6IDxsZW5ndGg+XG4vLyAtIFskcGFkZGluZy1iZWZvcmVdICA6IDxsZW5ndGg+XG4vLyAtIFskcGFkZGluZy1hZnRlcl0gICA6IDxsZW5ndGg+XG4vLyAtIFskZmxvd10gICAgICAgICAgICA6IGx0ciB8IHJ0bFxuQG1peGluIGZsb2F0LXNwYW4tb3V0cHV0KFxuICAkd2lkdGgsXG4gICRmbG9hdCAgICAgICAgICAgIDogZnJvbSxcbiAgJG1hcmdpbi1iZWZvcmUgICAgOiBudWxsLFxuICAkbWFyZ2luLWFmdGVyICAgICA6IG51bGwsXG4gICRwYWRkaW5nLWJlZm9yZSAgIDogbnVsbCxcbiAgJHBhZGRpbmctYWZ0ZXIgICAgOiBudWxsLFxuICAkZmxvdyAgICAgICAgICAgICA6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpXG4pIHtcbiAgJHRvICAgICA6IHRvKCRmbG93KTtcbiAgJGZyb20gICA6IGZyb20oJGZsb3cpO1xuXG4gICRvdXRwdXQ6IChcbiAgICB3aWR0aDogJHdpZHRoLFxuICAgIGZsb2F0OiBpZigkZmxvYXQgPT0gdG8sICR0bywgbnVsbCkgb3IgaWYoJGZsb2F0ID09IGZyb20sICRmcm9tLCBudWxsKSxcbiAgICBtYXJnaW4tI3skZnJvbX06ICRtYXJnaW4tYmVmb3JlLFxuICAgIG1hcmdpbi0jeyR0b306ICRtYXJnaW4tYWZ0ZXIsXG4gICAgcGFkZGluZy0jeyRmcm9tfTogJHBhZGRpbmctYmVmb3JlLFxuICAgIHBhZGRpbmctI3skdG99OiAkcGFkZGluZy1hZnRlcixcbiAgKTtcblxuICBAaW5jbHVkZSBvdXRwdXQoJG91dHB1dCk7XG59XG4iLCIvLyBGbG9hdCBFbmRzIEFQSVxuLy8gPT09PT09PT09PT09PT1cblxuLy8gU3VzeSBFbmQgRGVmYXVsdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4vLyAtIFBSSVZBVEVcbkBpbmNsdWRlIHN1c3ktZGVmYXVsdHMoKFxuICBsYXN0LWZsb3c6IHRvLFxuKSk7XG5cbi8vIEZsb2F0IExhc3Rcbi8vIC0tLS0tLS0tLS1cbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBtaXhpbiBmbG9hdC1sYXN0KFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdyksXG4gICRsYXN0LWZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGxhc3QtZmxvdyksXG4gICRtYXJnaW46IDBcbikge1xuICAkdG86IHRvKCRmbG93KTtcblxuICAkb3V0cHV0OiAoXG4gICAgZmxvYXQ6IGlmKCRsYXN0LWZsb3cgPT0gdG8sICR0bywgbnVsbCksXG4gICAgbWFyZ2luLSN7JHRvfTogJG1hcmdpbixcbiAgKTtcblxuICBAaW5jbHVkZSBvdXRwdXQoJG91dHB1dCk7XG59XG5cbi8vIEZsb2F0IEZpcnN0XG4vLyAtLS0tLS0tLS0tLVxuLy8gLSBbJGZsb3ddICA6IGx0ciB8IHJ0bFxuQG1peGluIGZsb2F0LWZpcnN0KFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdylcbikge1xuICAkb3V0cHV0OiAoXG4gICAgbWFyZ2luLSN7ZnJvbSgkZmxvdyl9OiAwLFxuICApO1xuXG4gIEBpbmNsdWRlIG91dHB1dCgkb3V0cHV0KTtcbn1cbiIsIi8vIEZsb2F0IElzb2xhdGlvbiBBUElcbi8vID09PT09PT09PT09PT09PT09PT1cblxuLy8gSXNvbGF0ZSBPdXRwdXRcbi8vIC0tLS0tLS0tLS0tLS0tXG4vLyAtICRwdXNoICAgIDogPGxlbmd0aD5cbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBtaXhpbiBpc29sYXRlLW91dHB1dChcbiAgJHB1c2gsXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gICR0bzogdG8oJGZsb3cpO1xuICAkZnJvbTogZnJvbSgkZmxvdyk7XG5cbiAgJG91dHB1dDogKFxuICAgIGZsb2F0OiAkZnJvbSxcbiAgICBtYXJnaW4tI3skZnJvbX06ICRwdXNoLFxuICAgIG1hcmdpbi0jeyR0b306IC0xMDAlLFxuICApO1xuXG4gIEBpbmNsdWRlIG91dHB1dCgkb3V0cHV0KTtcbn1cbiIsIi8vIFN1c3kgU2V0dGluZ3Ncbi8vID09PT09PT09PT09PT1cblxuLy8gU3VzeSBMYW5ndWFnZSBEZWZhdWx0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gLSBQUklWQVRFXG5AaW5jbHVkZSBzdXN5LWRlZmF1bHRzKChcbiAgY29udGFpbmVyOiBhdXRvLFxuICBtYXRoOiBmbHVpZCxcbiAgb3V0cHV0OiBmbG9hdCxcbiAgY29udGFpbmVyLXBvc2l0aW9uOiBjZW50ZXIsXG4gIGd1dHRlci1wb3NpdGlvbjogYWZ0ZXIsXG4gIGdsb2JhbC1ib3gtc2l6aW5nOiBjb250ZW50LWJveCxcbiAgZGVidWc6IChcbiAgICBpbWFnZTogaGlkZSxcbiAgICBjb2xvcjogcmdiYSgjNjZmLCAuMjUpLFxuICAgIG91dHB1dDogYmFja2dyb3VuZCxcbiAgICB0b2dnbGU6IHRvcCByaWdodCxcbiAgKSxcbikpO1xuXG5cbi8vIFZhbGlkIEtleXdvcmQgVmFsdWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gLSBQUklWQVRFOiBET05UJ1QgVE9VQ0hcbiRzdXN5LWtleXdvcmRzOiAoXG4gIGNvbnRhaW5lcjogYXV0byxcbiAgbWF0aDogc3RhdGljIGZsdWlkLFxuICBvdXRwdXQ6IGlzb2xhdGUgZmxvYXQsXG4gIGNvbnRhaW5lci1wb3NpdGlvbjogbGVmdCBjZW50ZXIgcmlnaHQsXG4gIGZsb3c6IGx0ciBydGwsXG4gIGd1dHRlci1wb3NpdGlvbjogYmVmb3JlIGFmdGVyIHNwbGl0IGluc2lkZSBpbnNpZGUtc3RhdGljLFxuICBib3gtc2l6aW5nOiBib3JkZXItYm94IGNvbnRlbnQtYm94LFxuICBzcGFuOiBmdWxsLFxuICBlZGdlOiBmaXJzdCBhbHBoYSBsYXN0IG9tZWdhIGZ1bGwsXG4gIHNwcmVhZDogbmFycm93IHdpZGUgd2lkZXIsXG4gIGd1dHRlci1vdmVycmlkZTogbm8tZ3V0dGVycyBuby1ndXR0ZXIsXG4gIHJvbGU6IG5lc3QsXG4gIGNsZWFyOiBicmVhayBub2JyZWFrLFxuICBkZWJ1ZyBpbWFnZTogc2hvdyBoaWRlIHNob3ctY29sdW1ucyBzaG93LWJhc2VsaW5lLFxuICBkZWJ1ZyBvdXRwdXQ6IGJhY2tncm91bmQgb3ZlcmxheSxcbik7XG5cblxuLy8gUGFyc2UgU3VzeSBLZXl3b3JkcyBhbmQgTWFwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGZ1bmN0aW9uIHBhcnNlLXNldHRpbmdzKFxuICAkc2hvcnQ6ICRzdXN5XG4pIHtcbiAgJF9yZXR1cm46ICgpO1xuXG4gIEBpZiB0eXBlLW9mKCRzaG9ydCkgPT0gbWFwIHtcbiAgICAkX3JldHVybjogJHNob3J0O1xuICB9IEBlbHNlIHtcbiAgICBAZWFjaCAkaXRlbSBpbiAkc2hvcnQge1xuICAgICAgLy8gc3RyaW5nc1xuICAgICAgQGlmIHR5cGUtb2YoJGl0ZW0pID09IHN0cmluZyB7XG4gICAgICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkc3VzeS1rZXl3b3JkcyB7XG4gICAgICAgICAgQGlmIGluZGV4KCR2YWx1ZSwgJGl0ZW0pIHtcbiAgICAgICAgICAgICRfa2V5LXZhbHVlOiBhcHBlbmQoJGtleSwgJGl0ZW0pO1xuICAgICAgICAgICAgJF9yZXR1cm46IF9zdXN5LWRlZXAtc2V0KCRfcmV0dXJuLCAkX2tleS12YWx1ZS4uLik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAvLyBtYXBzXG4gICAgICB9IEBlbHNlIGlmIHR5cGUtb2YoJGl0ZW0pID09IG1hcCB7XG4gICAgICAgICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sICRpdGVtKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRfcmV0dXJuO1xufVxuXG5cbi8vIFBhcnNlIENvbHVtbnMgJiBHdXR0ZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGZ1bmN0aW9uIHBhcnNlLWxheW91dChcbiAgJHNob3J0XG4pIHtcbiAgJF9yZXR1cm46ICgpO1xuICAkX2NvbHVtbnM6ICgpO1xuICAkX2d1dHRlcnM6IG51bGw7XG5cbiAgQGlmIG5vdCh1bml0bGVzcyhudGgobnRoKCRzaG9ydCwgMSksIDEpKSkge1xuICAgICRfZ3V0dGVyczogbnRoKCRzaG9ydCwgMSk7XG4gIH0gQGVsc2Uge1xuICAgICRfY29sdW1uczogKGNvbHVtbnM6IG50aCgkc2hvcnQsIDEpKTtcbiAgICAkX2d1dHRlcnM6IGlmKGxlbmd0aCgkc2hvcnQpID4gMSwgbnRoKCRzaG9ydCwgMiksICRfZ3V0dGVycyk7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkX2d1dHRlcnMpID09IGxpc3QgYW5kIGxlbmd0aCgkX2d1dHRlcnMpID4gMCB7XG4gICAgJF9ndXR0ZXJzOiAoXG4gICAgICBndXR0ZXJzOiBudGgoJF9ndXR0ZXJzLCAyKSAvIG50aCgkX2d1dHRlcnMsIDEpLFxuICAgICAgY29sdW1uLXdpZHRoOiBudGgoJF9ndXR0ZXJzLCAxKSxcbiAgICApO1xuICB9IEBlbHNlIHtcbiAgICAkX2d1dHRlcnM6IGlmKCRfZ3V0dGVycywgKGd1dHRlcnM6ICRfZ3V0dGVycyksICgpKTtcbiAgfVxuXG4gICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sICRfY29sdW1ucyk7XG4gICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sICRfZ3V0dGVycyk7XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cblxuXG4vLyBQYXJzZSBHcmlkL0NvbnRleHRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuQGZ1bmN0aW9uIHBhcnNlLWdyaWQoXG4gICRzaG9ydDogJHN1c3lcbikge1xuICAkX3JldHVybjogcGFyc2Utc2V0dGluZ3MoJHNob3J0KTtcbiAgJF9sYXlvdXQ6ICgpO1xuXG4gIEBpZiB0eXBlLW9mKCRzaG9ydCkgPT0gbWFwIHtcbiAgICAkX3JldHVybjogJHNob3J0O1xuICB9IEBlbHNlIHtcbiAgICBAZWFjaCAkaXRlbSBpbiAkc2hvcnQge1xuICAgICAgLy8gbnVtYmVyIG9yIGxpc3RcbiAgICAgIEBpZiB0eXBlLW9mKCRpdGVtKSA9PSBudW1iZXIgb3IgdHlwZS1vZigkaXRlbSkgPT0gbGlzdCB7XG4gICAgICAgIEBpZiB0eXBlLW9mKCRpdGVtKSA9PSBsaXN0IG9yIHVuaXRsZXNzKCRpdGVtKSB7XG4gICAgICAgICAgJF9sYXlvdXQ6IGFwcGVuZCgkX2xheW91dCwgJGl0ZW0pO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAoY29udGFpbmVyOiAkaXRlbSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJF9sYXlvdXQ6IGlmKGxlbmd0aCgkX2xheW91dCkgPiAwLCBwYXJzZS1sYXlvdXQoJF9sYXlvdXQpLCAkX2xheW91dCk7XG4gIH1cblxuICBAcmV0dXJuIG1hcC1tZXJnZSgkX3JldHVybiwgJF9sYXlvdXQpO1xufVxuXG5cbi8vIFBhcnNlIFNwYW5cbi8vIC0tLS0tLS0tLS1cbkBmdW5jdGlvbiBwYXJzZS1zcGFuKFxuICAkc2hvcnQsXG4gICRrZXk6IHNwYW5cbikge1xuICAkX3JldHVybjogKCk7XG5cbiAgQGlmIHR5cGUtb2YoJHNob3J0KSA9PSBtYXAge1xuICAgICRfcmV0dXJuOiAkc2hvcnQ7XG4gIH0gQGVsc2Uge1xuICAgICRfYXQ6IGluZGV4KCRzaG9ydCwgYXQpO1xuXG4gICAgQGlmICRfYXQge1xuICAgICAgJF9sb2NpOiAkX2F0ICsgMTtcbiAgICAgICRfbG9jYXRpb246IG50aCgkc2hvcnQsICRfbG9jaSk7XG4gICAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAobG9jYXRpb246ICRfbG9jYXRpb24pKTtcbiAgICAgICRzaG9ydDogc2V0LW50aCgkc2hvcnQsICRfYXQsIG51bGwpO1xuICAgICAgJHNob3J0OiBzZXQtbnRoKCRzaG9ydCwgJF9sb2NpLCBudWxsKTtcbiAgICB9XG5cbiAgICAkX2k6IDE7XG4gICAgJF9zcGFuOiAoKTtcblxuICAgIEB3aGlsZSAkX2kgPD0gbGVuZ3RoKCRzaG9ydCkge1xuICAgICAgJF90aGlzOiBudGgoJHNob3J0LCAkX2kpO1xuXG4gICAgICBAaWYgdHlwZS1vZigkX3RoaXMpID09IG51bWJlciB7XG4gICAgICAgICRfc3BhbjogYXBwZW5kKCRfc3BhbiwgJF90aGlzKTtcbiAgICAgICAgJHNob3J0OiBzZXQtbnRoKCRzaG9ydCwgJF9pLCBudWxsKTtcbiAgICAgIH0gQGVsc2UgaWYgJF90aGlzID09IG9mIHtcbiAgICAgICAgJHNob3J0OiBzZXQtbnRoKCRzaG9ydCwgJF9pLCBudWxsKTtcbiAgICAgICAgJF9pOiBsZW5ndGgoJHNob3J0KSArIDE7XG4gICAgICB9XG5cbiAgICAgICRfaTogJF9pICsgMTtcbiAgICB9XG5cbiAgICBAaWYgbGVuZ3RoKCRfc3BhbikgPiAwIHtcbiAgICAgICRfc3BhbjogaWYobGVuZ3RoKCRfc3BhbikgPT0gMSwgbnRoKCRfc3BhbiwgMSksICRfc3Bhbik7XG4gICAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAoJGtleTogJF9zcGFuKSk7XG4gICAgfVxuXG4gICAgJF9yZXR1cm46IG1hcC1tZXJnZSgkX3JldHVybiwgcGFyc2UtZ3JpZCgkc2hvcnQpKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG5cblxuLy8gUGFyc2UgR3V0dGVyc1xuLy8gLS0tLS0tLS0tLS0tLVxuQGZ1bmN0aW9uIHBhcnNlLWd1dHRlcnMoXG4gICRzaG9ydDogJHN1c3lcbikge1xuICAkX2d1dHRlcnM6IHBhcnNlLXNwYW4oJHNob3J0LCBndXR0ZXItb3ZlcnJpZGUpO1xuICAkX3NwYW46IHN1c3ktZ2V0KGd1dHRlci1vdmVycmlkZSwgJF9ndXR0ZXJzKTtcblxuICBAaWYgJF9zcGFuIGFuZCBub3QobWFwLWdldCgkX2d1dHRlcnMsIGNvbHVtbnMpKSB7XG4gICAgJF9jb250ZXh0OiAoKTtcbiAgICAkX25ldzogKCk7XG5cbiAgICBAZWFjaCAkaXRlbSBpbiAkX3NwYW4ge1xuICAgICAgQGlmIHR5cGUtb2YoJGl0ZW0pID09IG51bWJlciBhbmQgdW5pdGxlc3MoJGl0ZW0pIHtcbiAgICAgICAgJF9jb250ZXh0OiBhcHBlbmQoJF9jb250ZXh0LCAkaXRlbSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJF9uZXc6IGFwcGVuZCgkX25ldywgJGl0ZW0pO1xuICAgICAgfVxuICAgIH1cblxuICAgICRfY29udGV4dDogcGFyc2UtZ3JpZCgkX2NvbnRleHQpO1xuICAgICRfbmV3OiBpZihsZW5ndGgoJF9uZXcpID09IDAsIG51bGwsICRfbmV3KTtcbiAgICAkX25ldzogaWYobGVuZ3RoKCRfbmV3KSA9PSAxLCBudGgoJF9uZXcsIDEpLCAkX25ldyk7XG4gICAgJF9uZXc6IChndXR0ZXItb3ZlcnJpZGU6IGlmKCRfbmV3ICE9ICRfc3BhbiwgJF9uZXcsICRfc3BhbikpO1xuXG4gICAgJF9ndXR0ZXJzOiBtYXAtbWVyZ2UoJF9ndXR0ZXJzLCAkX25ldyk7XG4gICAgJF9ndXR0ZXJzOiBtYXAtbWVyZ2UoJF9ndXR0ZXJzLCAkX2NvbnRleHQpO1xuICB9XG5cbiAgQHJldHVybiAkX2d1dHRlcnM7XG59XG4iLCIvLyBWYWxpZGF0aW9uXG4vLyA9PT09PT09PT09XG5cblxuLy8gVmFsaWRhdGUgQ29sdW1uIE1hdGhcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AZnVuY3Rpb24gdmFsaWQtY29sdW1uLW1hdGgoXG4gICRtYXRoLFxuICAkY29sdW1uLXdpZHRoXG4pIHtcbiAgQGlmICRtYXRoID09IHN0YXRpYyBhbmQgbm90KCRjb2x1bW4td2lkdGgpIHtcbiAgICBAZXJyb3IgJ1N0YXRpYyBtYXRoIHJlcXVpcmVzIGEgdmFsaWQgY29sdW1uLXdpZHRoIHNldHRpbmcuJztcbiAgfVxuXG4gIEByZXR1cm4gJGNvbHVtbi13aWR0aDtcbn1cbiIsIi8vIEdyaWQgU3ludGF4XG4vLyA9PT09PT09PT09PVxuXG5cbi8vIExheW91dFxuLy8gLS0tLS0tXG4vLyBTZXQgYSBuZXcgbGF5b3V0IHVzaW5nIGEgc2hvcnRoYW5kXG4vLyAtICRsYXlvdXQ6IDxzZXR0aW5ncz5cbi8vIC0gJGNsZWFuOiBib29sZWFuXG5AbWl4aW4gbGF5b3V0KFxuICAkbGF5b3V0LFxuICAkY2xlYW46IGZhbHNlXG4pIHtcbiAgJGluc3BlY3QgIDogJGxheW91dDtcbiAgJHN1c3kgICAgIDogX2dldC1sYXlvdXQoJGxheW91dCwgJGNsZWFuKSAhZ2xvYmFsO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChsYXlvdXQsICRpbnNwZWN0KTtcbn1cblxuXG4vLyBVc2UgR3JpZFxuLy8gLS0tLS0tLS1cbi8vIFVzZSBhbiBhcmJpdHJhcnkgbGF5b3V0IGZvciBhIHNlY3Rpb24gb2YgY29kZVxuLy8gLSAkbGF5b3V0OiA8c2V0dGluZ3M+XG4vLyAtICRjbGVhbjogYm9vbGVhblxuQG1peGluIHdpdGgtbGF5b3V0KFxuICAkbGF5b3V0LFxuICAkY2xlYW46IGZhbHNlXG4pIHtcbiAgJGluc3BlY3QgIDogJGxheW91dDtcbiAgJG9sZCAgICAgIDogJHN1c3k7XG4gICRzdXN5ICAgICA6IF9nZXQtbGF5b3V0KCRsYXlvdXQsICRjbGVhbikgIWdsb2JhbDtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3Qod2l0aC1sYXlvdXQsICRpbnNwZWN0KTtcblxuICBAY29udGVudDtcblxuICAkc3VzeTogJG9sZCAhZ2xvYmFsO1xufVxuXG5cbi8vIExheW91dFxuLy8gLS0tLS0tXG4vLyBSZXR1cm4gYSBwYXJzZWQgbGF5b3V0IG1hcCBiYXNlZCBvbiBzaG9ydGhhbmQgc3ludGF4XG4vLyAtICRsYXlvdXQ6IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBsYXlvdXQoXG4gICRsYXlvdXQ6ICRzdXN5XG4pIHtcbiAgQHJldHVybiBwYXJzZS1ncmlkKCRsYXlvdXQpO1xufVxuXG5cbi8vIEdldCBMYXlvdXRcbi8vIC0tLS0tLS0tLS1cbi8vIFJldHVybiBhIG5ldyBsYXlvdXQgYmFzZWQgb24gY3VycmVudCBhbmQgZ2l2ZW4gc2V0dGluZ3Ncbi8vIC0gJGxheW91dDogPHNldHRpbmdzPlxuLy8gLSAkY2xlYW46IGJvb2xlYW5cbkBmdW5jdGlvbiBfZ2V0LWxheW91dChcbiAgJGxheW91dCxcbiAgJGNsZWFuOiBmYWxzZVxuKSB7XG4gICRsYXlvdXQ6IGxheW91dCgkbGF5b3V0KTtcbiAgQHJldHVybiBpZigkY2xlYW4sICRsYXlvdXQsIF9zdXN5LWRlZXAtbWVyZ2UoJHN1c3ksICRsYXlvdXQpKTtcbn1cbiIsIi8vIFN1c3kgQm94IFNpemluZ1xuLy8gPT09PT09PT09PT09PT09PT1cblxuLy8gR2xvYmFsIEJveCBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTZXQgYSBib3ggbW9kZWwgZ2xvYmFsbHkgb24gYWxsIGVsZW1lbnRzLlxuLy8gLSBbJGJveF06IGJvcmRlci1ib3ggfCBjb250ZW50LWJveFxuLy8gLSBbJGluaGVyaXRdOiB0cnVlIHwgZmFsc2VcbkBtaXhpbiBnbG9iYWwtYm94LXNpemluZyhcbiAgJGJveDogc3VzeS1nZXQoZ2xvYmFsLWJveC1zaXppbmcpLFxuICAkaW5oZXJpdDogZmFsc2Vcbikge1xuICAkaW5zcGVjdDogJGJveDtcblxuICBAaWYgJGluaGVyaXQge1xuICAgIEBhdC1yb290IHtcbiAgICAgICBodG1sIHsgQGluY2x1ZGUgb3V0cHV0KChib3gtc2l6aW5nOiAkYm94KSk7IH1cbiAgICAgICAqLCAqOmJlZm9yZSwgKjphZnRlciB7IGJveC1zaXppbmc6IGluaGVyaXQ7IH1cbiAgICAgfVxuICB9IEBlbHNlIHtcbiAgICAqLCAqOmJlZm9yZSwgKjphZnRlciB7IEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogJGJveCkpOyB9XG4gIH1cblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QoZ2xvYmFsLWJveC1zaXppbmcsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgdXBkYXRlLWJveC1tb2RlbCgkYm94KTtcbn1cblxuLy8gQm9yZGVyIEJveCBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4vLyBBIGxlZ2FjeSBzaG9ydGN1dC4uLlxuLy8gLSBbJGluaGVyaXRdOiB0cnVlIHwgZmFsc2VcbkBtaXhpbiBib3JkZXItYm94LXNpemluZyhcbiAgJGluaGVyaXQ6IGZhbHNlXG4pIHtcbiAgQGluY2x1ZGUgZ2xvYmFsLWJveC1zaXppbmcoYm9yZGVyLWJveCwgJGluaGVyaXQpO1xufVxuXG4vLyBVcGRhdGUgQm94IE1vZGVsXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG4vLyBQUklWQVRFOiBVcGRhdGVzIGdsb2JhbCBib3ggbW9kZWwgc2V0dGluZ1xuQG1peGluIHVwZGF0ZS1ib3gtbW9kZWwoXG4gICRib3hcbikge1xuICBAaWYgJGJveCAhPSBzdXN5LWdldChnbG9iYWwtYm94LXNpemluZykge1xuICBAaW5jbHVkZSBzdXN5LXNldChnbG9iYWwtYm94LXNpemluZywgJGJveCk7XG4gIH1cbn1cbiIsIi8vIENvbnRleHQgU3ludGF4XG4vLyA9PT09PT09PT09PT09PVxuXG4vLyBOZXN0ZWQgW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiBhIHN1YnNldCBncmlkIGZvciBuZXN0ZWQgY29udGV4dC5cbi8vIC0gJGNvbnRleHQgICA6IDxzcGFuPlxuQGZ1bmN0aW9uIG5lc3RlZChcbiAgJGNvbnRleHRcbikge1xuICAkY29udGV4dCAgICA6IHBhcnNlLXNwYW4oJGNvbnRleHQpO1xuICAkc3BhbiAgICAgICA6IHN1c3ktZ2V0KHNwYW4sICRjb250ZXh0KTtcbiAgJGxvY2F0aW9uICAgOiBnZXQtbG9jYXRpb24oJGNvbnRleHQpO1xuICAkY29sdW1ucyAgICA6IHN1c3ktZ2V0KGNvbHVtbnMsICRjb250ZXh0KTtcblxuICBAcmV0dXJuIHN1c3ktc2xpY2UoJHNwYW4sICRsb2NhdGlvbiwgJGNvbHVtbnMpO1xufVxuXG4vLyBOZXN0ZWQgW21peGluXVxuLy8gLS0tLS0tLS0tLS0tLS1cbi8vIFVzZSBhIHN1YnNldCBncmlkIGZvciBhIG5lc3RlZCBjb250ZXh0XG4vLyAtICRjb250ZXh0ICAgOiA8c3Bhbj5cbi8vIC0gQGNvbnRlbnQgICA6IDxjb250ZW50PlxuQG1peGluIG5lc3RlZChcbiAgJGNvbnRleHRcbikge1xuICAkaW5zcGVjdCAgOiAkY29udGV4dDtcbiAgJGNvbnRleHQgIDogcGFyc2Utc3BhbigkY29udGV4dCk7XG4gICRvbGQgICAgICA6IHN1c3ktZ2V0KGNvbHVtbnMpO1xuICAkc3VzeSAgICAgOiBtYXAtbWVyZ2UoJHN1c3ksIChjb2x1bW5zOiBuZXN0ZWQoJGNvbnRleHQpKSkgIWdsb2JhbDtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QobmVzdGVkLCAkaW5zcGVjdCk7XG4gIEBjb250ZW50O1xuXG4gICRzdXN5ICAgICA6IG1hcC1tZXJnZSgkc3VzeSwgKGNvbHVtbnM6ICRvbGQpKSAhZ2xvYmFsO1xufVxuIiwiLy8gQmFja2dyb3VuZCBHcmlkIFN5bnRheFxuLy8gPT09PT09PT09PT09PT09PT09PT09PVxuXG4kc3VzeS1vdmVybGF5LWdyaWQtaGVhZC1leGlzdHM6IGZhbHNlO1xuXG5cbi8vIFNob3cgR3JpZC9zXG4vLyAtLS0tLS0tLS0tLVxuLy8gU2hvdyBncmlkIG9uIGFueSBlbGVtZW50IHVzaW5nIGVpdGhlciBiYWNrZ3JvdW5kIG9yIG92ZXJsYXkuXG4vLyAtIFskZ3JpZF0gIDogPHNldHRpbmdzPlxuQG1peGluIHNob3ctZ3JpZChcbiAgJGdyaWQ6ICRzdXN5XG4pIHtcbiAgJGluc3BlY3Q6ICRncmlkO1xuICAkX291dHB1dDogZGVidWctZ2V0KG91dHB1dCwgJGdyaWQpO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChzaG93LWdyaWQsICRpbnNwZWN0KTtcbiAgQGlmICRfb3V0cHV0ID09IG92ZXJsYXkgYW5kIHN1c3ktZ2V0KGRlYnVnIGltYWdlLCAkZ3JpZCkgIT0gaGlkZSB7XG4gICAgQGluY2x1ZGUgb3ZlcmxheS1ncmlkKCRncmlkKTtcbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC1ncmlkKCRncmlkKTtcbiAgfVxufVxuXG5AbWl4aW4gc2hvdy1ncmlkcyhcbiAgJGdyaWQ6ICRzdXN5XG4pIHtcbiAgQGluY2x1ZGUgc2hvdy1ncmlkKCRncmlkKTtcbn1cblxuLy8gQmFja2dyb3VuZCBHcmlkXG4vLyAtLS0tLS0tLS0tLS0tLS1cbi8vIFNob3cgYSBncmlkIGJhY2tncm91bmQgb24gYW55IGVsZW1lbnQuXG4vLyAtIFskZ3JpZF0gIDogPHNldHRpbmdzPlxuQG1peGluIGJhY2tncm91bmQtZ3JpZChcbiAgJGdyaWQ6ICRzdXN5XG4pIHtcbiAgJGluc3BlY3QgIDogJGdyaWQ7XG4gICRfb3V0cHV0ICA6IGdldC1iYWNrZ3JvdW5kKCRncmlkKTtcblxuICBAaWYgbGVuZ3RoKCRfb3V0cHV0KSA+IDAge1xuICAgICRfZmxvdzogc3VzeS1nZXQoZmxvdywgJGdyaWQpO1xuXG4gICAgJF9pbWFnZTogKCk7XG4gICAgQGVhY2ggJG5hbWUsICRsYXllciBpbiBtYXAtZ2V0KCRfb3V0cHV0LCBpbWFnZSkge1xuICAgICAgJF9kaXJlY3Rpb246IGlmKCRuYW1lID09IGJhc2VsaW5lLCB0byBib3R0b20sIHRvIHRvKCRfZmxvdykpO1xuICAgICAgJF9pbWFnZTogYXBwZW5kKCRfaW1hZ2UsIGxpbmVhci1ncmFkaWVudCgkX2RpcmVjdGlvbiwgJGxheWVyKSwgY29tbWEpO1xuICAgIH1cbiAgICAkX291dHB1dDogbWFwLW1lcmdlKCRfb3V0cHV0LCAoaW1hZ2U6ICRfaW1hZ2UpKTtcblxuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtZ3JpZC1vdXRwdXQoJF9vdXRwdXQuLi4pO1xuICAgIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChiYWNrZ3JvdW5kLWdyaWQsICRpbnNwZWN0KTtcbiAgfVxufVxuXG5cbi8vIE92ZXJsYXkgR3JpZFxuLy8gLS0tLS0tLS0tLS0tXG4vLyBHZW5lcmF0ZSBhbiBpY29uIHRvIHRyaWdnZXIgZ3JpZC1vdmVybGF5cyBvbiBhbnkgZ2l2ZW4gZWxlbWVudHMuXG4vLyAkZ3JpZHMuLi4gIDogPHNlbGVjdG9yPiBbPHNldHRpbmdzPl0gWywgPHNlbGVjdG9yPl0qXG5AbWl4aW4gb3ZlcmxheS1ncmlkIChcbiAgJGdyaWQ6ICRzdXN5XG4pIHtcbiAgQGlmIG5vdCgkc3VzeS1vdmVybGF5LWdyaWQtaGVhZC1leGlzdHMpIHtcbiAgICBAYXQtcm9vdCBoZWFkIHsgQGluY2x1ZGUgb3ZlcmxheS1oZWFkKCRncmlkKTsgfVxuICAgIEBhdC1yb290IGhlYWQ6YmVmb3JlIHsgQGluY2x1ZGUgb3ZlcmxheS10cmlnZ2VyOyB9XG4gICAgQGF0LXJvb3QgaGVhZDpob3ZlciB7IEBpbmNsdWRlIG92ZXJsYXktdHJpZ2dlci1ob3ZlcjsgfVxuICAgICRzdXN5LW92ZXJsYXktZ3JpZC1oZWFkLWV4aXN0czogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgaGVhZDpob3ZlciB+ICYsXG4gIGhlYWQ6aG92ZXIgfiBib2R5ICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmlkLW92ZXJsYXktYmFzZTtcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtZ3JpZCgkZ3JpZCk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gW1ByaXZhdGVdIE92ZXJsYXkgVHJpZ2dlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIG92ZXJsYXktdHJpZ2dlciB7XG4gIGNvbnRlbnQ6IFwifHx8XCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgZm9udDoge1xuICAgIGZhbWlseTogc2Fucy1zZXJpZjtcbiAgICBzaXplOiAxNnB4O1xuICAgIHdlaWdodDogYm9sZDtcbiAgfVxufVxuXG5cbi8vIFtQcml2YXRlXSBPdmVybGF5IFRyaWdnZXIgSG92ZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBvdmVybGF5LXRyaWdnZXItaG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKHdoaXRlLCAuNSk7XG4gIGNvbG9yOiByZWQ7XG59XG5cblxuLy8gW1ByaXZhdGVdIE92ZXJsYXkgSGVhZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gPGhlYWQ+IHN0eWxlcyB0byBjcmVhdGUgZ3JpZCBvdmVybGF5IHRvZ2dsZVxuQG1peGluIG92ZXJsYXktaGVhZCAoXG4gICRncmlkOiAkc3VzeVxuKSB7XG4gICRfdG9nZ2xlOiBkZWJ1Zy1nZXQodG9nZ2xlLCAkZ3JpZCk7XG4gICRfaG9yejogbnVsbDtcbiAgJF92ZXJ0OiBudWxsO1xuXG4gIEBlYWNoICRzaWRlIGluICRfdG9nZ2xlIHtcbiAgICAkX2hvcno6IGlmKCRzaWRlID09IGxlZnQgb3IgJHNpZGUgPT0gcmlnaHQsICRzaWRlLCAkX2hvcnopO1xuICAgICRfdmVydDogaWYoJHNpZGUgPT0gdG9wIG9yICRzaWRlID09IGJvdHRvbSwgJHNpZGUsICRfdmVydCk7XG4gIH1cblxuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGZpeGVkO1xuICAjeyRfaG9yen06IDEwcHg7XG4gICN7JF92ZXJ0fTogMTBweDtcbiAgei1pbmRleDogOTk5O1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZDogcmdiYSh3aGl0ZSwgLjI1KTtcbn1cblxuXG4vLyBbUHJpdmF0ZV0gR3JpZCBPdmVybGF5IEJhc2Vcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQmFzZSBzdHlsZXMgZm9yIGdlbmVyYXRpbmcgYSBncmlkIG92ZXJsYXlcbkBtaXhpbiBncmlkLW92ZXJsYXktYmFzZSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICB6LWluZGV4OiA5OTg7XG59XG5cblxuLy8gR2V0IFN5bW1ldHJpY2FsIEJhY2tncm91bmRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAtICRncmlkOiA8bWFwPlxuQGZ1bmN0aW9uIGdldC1iYWNrZ3JvdW5kLXN5bShcbiAgJGdyaWRcbikge1xuICAkZ3JpZCAgICAgICAgICAgOiBwYXJzZS1ncmlkKCRncmlkKTtcbiAgJF9ndXR0ZXJzICAgICAgIDogc3VzeS1nZXQoZ3V0dGVycywgJGdyaWQpO1xuICAkX2NvbHVtbi13aWR0aCAgOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRncmlkKTtcbiAgJF9tYXRoICAgICAgICAgIDogc3VzeS1nZXQobWF0aCwgJGdyaWQpO1xuXG4gICRfY29sb3IgICAgICAgICA6IGRlYnVnLWdldChjb2xvcik7XG4gICRfdHJhbnMgICAgICAgICA6IHRyYW5zcGFyZW50O1xuICAkX2xpZ2h0ICAgICAgICAgOiBsaWdodGVuKCRfY29sb3IsIDE1JSk7XG5cbiAgJF9lbmQgICAgICAgICAgIDogMSArICRfZ3V0dGVycztcbiAgJF9hZnRlciAgICAgICAgIDogcGVyY2VudGFnZSgxLyRfZW5kKTtcbiAgJF9zdG9wcyAgICAgICAgIDogKCk7XG4gICRfc2l6ZSAgICAgICAgICA6IHNwYW4oMSAkZ3JpZCB3aWRlKTtcblxuICBAaWYgaXMtaW5zaWRlKCRncmlkKSB7XG4gICAgJF9zdG9wczogJF9jb2xvciwgJF9saWdodDtcbiAgfSBAZWxzZSBpZiBpcy1zcGxpdCgkZ3JpZCkge1xuICAgICRfc3BsaXQ6ICRfZ3V0dGVycy8yO1xuICAgICRfYmVmb3JlOiBwZXJjZW50YWdlKCRfc3BsaXQvJF9lbmQpO1xuICAgICRfYWZ0ZXI6IHBlcmNlbnRhZ2UoKDEgKyAkX3NwbGl0KS8kX2VuZCk7XG4gICAgJF9zdG9wczogJF90cmFucyAkX2JlZm9yZSwgJF9jb2xvciAkX2JlZm9yZSwgJF9saWdodCAkX2FmdGVyLCAkX3RyYW5zICRfYWZ0ZXI7XG4gIH0gQGVsc2Uge1xuICAgICRfc3RvcHM6ICRfY29sb3IsICRfbGlnaHQgJF9hZnRlciwgJF90cmFucyAkX2FmdGVyO1xuICB9XG5cbiAgQGlmICRfbWF0aCA9PSBzdGF0aWMge1xuICAgICRfc2l6ZTogdmFsaWQtY29sdW1uLW1hdGgoJF9tYXRoLCAkX2NvbHVtbi13aWR0aCkgKiAkX2VuZDtcbiAgfVxuXG4gICRfb3V0cHV0OiAoXG4gICAgaW1hZ2U6IChjb2x1bW5zOiAkX3N0b3BzKSxcbiAgICBzaXplOiAkX3NpemUsXG4gICk7XG5cbiAgQHJldHVybiAkX291dHB1dDtcbn1cblxuXG4vLyBHZXQgQXN5bW1ldHJpY2FsIEluc2lkZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gJGdyaWQ6IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBnZXQtYXN5bS1pbnNpZGUoXG4gICRncmlkXG4pIHtcbiAgJGdyaWQgICAgIDogcGFyc2UtZ3JpZCgkZ3JpZCk7XG4gICRfY29sdW1ucyA6IHN1c3ktZ2V0KGNvbHVtbnMsICRncmlkKTtcblxuICAkX2NvbG9yICAgOiBkZWJ1Zy1nZXQoY29sb3IpO1xuICAkX2xpZ2h0ICAgOiBsaWdodGVuKCRfY29sb3IsIDE1JSk7XG4gICRfc3RvcHMgICA6ICgpO1xuXG4gIEBmb3IgJGxvY2F0aW9uIGZyb20gMSB0aHJvdWdoIHN1c3ktY291bnQoJF9jb2x1bW5zKSB7XG4gICAgJHRoaXMtc3RvcDogKCk7XG5cbiAgICBAaWYgJGxvY2F0aW9uID09IDEge1xuICAgICAgJHRoaXMtc3RvcDogYXBwZW5kKCR0aGlzLXN0b3AsICRfY29sb3IsIGNvbW1hKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRzdGFydDogcGFyc2Utc3BhbigxIGF0ICRsb2NhdGlvbiAkZ3JpZCk7XG4gICAgICAkc3RhcnQ6IGdldC1pc29sYXRpb24oJHN0YXJ0KTtcbiAgICAgICR0aGlzLXN0b3A6IGFwcGVuZCgkdGhpcy1zdG9wLCAkX2NvbG9yICRzdGFydCwgY29tbWEpO1xuICAgIH1cblxuICAgIEBpZiAkbG9jYXRpb24gPT0gc3VzeS1jb3VudCgkX2NvbHVtbnMpIHtcbiAgICAgICR0aGlzLXN0b3A6IGFwcGVuZCgkdGhpcy1zdG9wLCAkX2xpZ2h0LCBjb21tYSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkX2VuZDogcGFyc2Utc3BhbigxIGF0ICgkbG9jYXRpb24gKyAxKSAkZ3JpZCk7XG4gICAgICAkX2VuZDogZ2V0LWlzb2xhdGlvbigkX2VuZCk7XG4gICAgICAkdGhpcy1zdG9wOiBhcHBlbmQoJHRoaXMtc3RvcCwgJF9saWdodCAkX2VuZCwgY29tbWEpO1xuICAgIH1cblxuICAgICRfc3RvcHM6IGpvaW4oJF9zdG9wcywgJHRoaXMtc3RvcCwgY29tbWEpO1xuICB9XG5cbiAgQHJldHVybiAkX3N0b3BzO1xufVxuXG5cbi8vIEdldCBBc3ltbWV0cmljYWwgU3BsaXRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gJGdyaWQ6IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBnZXQtYXN5bS1zcGxpdChcbiAgJGdyaWRcbikge1xuICAkZ3JpZCAgICAgOiBwYXJzZS1ncmlkKCRncmlkKTtcbiAgJF9jb2x1bW5zIDogc3VzeS1nZXQoY29sdW1ucywgJGdyaWQpO1xuXG4gICRfY29sb3IgICA6IGRlYnVnLWdldChjb2xvcik7XG4gICRfbGlnaHQgICA6IGxpZ2h0ZW4oJF9jb2xvciwgMTUlKTtcbiAgJF9zdG9wcyAgIDogKCk7XG5cbiAgQGZvciAkbG9jYXRpb24gZnJvbSAxIHRocm91Z2ggc3VzeS1jb3VudCgkX2NvbHVtbnMpIHtcbiAgICAkdGhpcy1zdG9wOiAoKTtcblxuICAgICRzdGFydDogcGFyc2Utc3BhbigxIGF0ICRsb2NhdGlvbiAkZ3JpZCk7XG4gICAgJHN0YXJ0OiBnZXQtaXNvbGF0aW9uKCRzdGFydCk7XG4gICAgJHRoaXMtc3RvcDogYXBwZW5kKCR0aGlzLXN0b3AsIHRyYW5zcGFyZW50ICRzdGFydCwgY29tbWEpO1xuICAgICR0aGlzLXN0b3A6IGFwcGVuZCgkdGhpcy1zdG9wLCAkX2NvbG9yICRzdGFydCwgY29tbWEpO1xuXG4gICAgJF9lbmQ6ICRzdGFydCArIHNwYW4oMSBhdCAkbG9jYXRpb24gJGdyaWQpO1xuICAgICR0aGlzLXN0b3A6IGFwcGVuZCgkdGhpcy1zdG9wLCAkX2xpZ2h0ICRfZW5kLCBjb21tYSk7XG4gICAgJHRoaXMtc3RvcDogYXBwZW5kKCR0aGlzLXN0b3AsIHRyYW5zcGFyZW50ICRfZW5kLCBjb21tYSk7XG5cbiAgICAkX3N0b3BzOiBqb2luKCRfc3RvcHMsICR0aGlzLXN0b3AsIGNvbW1hKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9zdG9wcztcbn1cblxuXG4vLyBHZXQgQXN5bW1ldHJpY2FsIE91dHNpZGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gLSAkZ3JpZDogPHNldHRpbmdzPlxuQGZ1bmN0aW9uIGdldC1hc3ltLW91dHNpZGUoXG4gICRncmlkXG4pIHtcbiAgJGdyaWQgICAgIDogcGFyc2UtZ3JpZCgkZ3JpZCk7XG4gICRfY29sdW1ucyA6IHN1c3ktZ2V0KGNvbHVtbnMsICRncmlkKTtcblxuICAkX2NvbG9yICAgOiBkZWJ1Zy1nZXQoY29sb3IpO1xuICAkX2xpZ2h0ICAgOiBsaWdodGVuKCRfY29sb3IsIDE1JSk7XG4gICRfdHJhbnMgICA6IHRyYW5zcGFyZW50O1xuICAkX3N0b3BzICAgOiAoKTtcblxuICBAZm9yICRsb2NhdGlvbiBmcm9tIDEgdGhyb3VnaCBzdXN5LWNvdW50KCRfY29sdW1ucykge1xuICAgICR0aGlzLXN0b3A6ICgpO1xuXG4gICAgQGlmICRsb2NhdGlvbiA9PSAxIHtcbiAgICAgICR0aGlzLXN0b3A6IGFwcGVuZCgkdGhpcy1zdG9wLCAkX2NvbG9yLCBjb21tYSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkc3RhcnQ6IHBhcnNlLXNwYW4oMSBhdCAkbG9jYXRpb24gJGdyaWQpO1xuICAgICAgJHN0YXJ0OiBnZXQtaXNvbGF0aW9uKCRzdGFydCk7XG4gICAgICAkdGhpcy1zdG9wOiBhcHBlbmQoJHRoaXMtc3RvcCwgJF9jb2xvciAkc3RhcnQsIGNvbW1hKTtcbiAgICB9XG5cbiAgICBAaWYgJGxvY2F0aW9uID09IHN1c3ktY291bnQoJF9jb2x1bW5zKSB7XG4gICAgICAkdGhpcy1zdG9wOiBhcHBlbmQoJHRoaXMtc3RvcCwgJF9saWdodCwgY29tbWEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJGd1dHRlcjogZ2V0LXNwYW4td2lkdGgoZmlyc3QgJGxvY2F0aW9uICRncmlkKTtcblxuICAgICAgJF9lbmQ6IHBhcnNlLXNwYW4oMSBhdCAoJGxvY2F0aW9uICsgMSkgJGdyaWQpO1xuICAgICAgJF9lbmQ6IGdldC1pc29sYXRpb24oJF9lbmQpO1xuXG4gICAgICAkZ3V0dGVyOiAkX2xpZ2h0ICRndXR0ZXIsICRfdHJhbnMgJGd1dHRlciwgJF90cmFucyAkX2VuZDtcbiAgICAgICR0aGlzLXN0b3A6IGpvaW4oJHRoaXMtc3RvcCwgJGd1dHRlciwgY29tbWEpO1xuICAgIH1cblxuICAgICRfc3RvcHM6IGpvaW4oJF9zdG9wcywgJHRoaXMtc3RvcCwgY29tbWEpO1xuICB9XG5cbiAgQHJldHVybiAkX3N0b3BzO1xufVxuXG5cbi8vIEdldCBBc3ltbWV0cmljYWwgQmFja2dyb3VuZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAtICRncmlkOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gZ2V0LWJhY2tncm91bmQtYXN5bShcbiAgJGdyaWRcbikge1xuICAkX3N0b3BzOiAoKTtcblxuICBAaWYgaXMtaW5zaWRlKCRncmlkKSB7XG4gICAgJF9zdG9wczogZ2V0LWFzeW0taW5zaWRlKCRncmlkKTtcbiAgfSBAZWxzZSBpZiBpcy1zcGxpdCgkZ3JpZCkge1xuICAgICRfc3RvcHM6IGdldC1hc3ltLXNwbGl0KCRncmlkKTtcbiAgfSBAZWxzZSB7XG4gICAgJF9zdG9wczogZ2V0LWFzeW0tb3V0c2lkZSgkZ3JpZCk7XG4gIH1cblxuICBAcmV0dXJuIChpbWFnZTogKGNvbHVtbnM6ICRfc3RvcHMpKTtcbn1cblxuXG4vLyBHZXQgQmFja2dyb3VuZFxuLy8gLS0tLS0tLS0tLS0tLS1cbi8vIC0gJGdyaWQ6IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBnZXQtYmFja2dyb3VuZChcbiAgJGdyaWRcbikge1xuICAkZ3JpZCAgICAgOiBwYXJzZS1ncmlkKCRncmlkKTtcbiAgJF9zaG93ICAgIDogc3VzeS1nZXQoZGVidWcgaW1hZ2UsICRncmlkKTtcbiAgJF9yZXR1cm4gIDogKCk7XG5cbiAgQGlmICRfc2hvdyBhbmQgJF9zaG93ICE9ICdoaWRlJyB7XG4gICAgJF9jb2x1bW5zOiBzdXN5LWdldChjb2x1bW5zLCAkZ3JpZCk7XG5cbiAgICBAaWYgJF9zaG93ICE9ICdzaG93LWJhc2VsaW5lJyB7XG4gICAgICAkX3N5bTogaXMtc3ltbWV0cmljYWwoJF9jb2x1bW5zKTtcbiAgICAgICRfcmV0dXJuOiBpZigkX3N5bSwgZ2V0LWJhY2tncm91bmQtc3ltKCRncmlkKSwgZ2V0LWJhY2tncm91bmQtYXN5bSgkZ3JpZCkpO1xuICAgICAgJF9yZXR1cm46IG1hcC1tZXJnZSgkX3JldHVybiwgKGNsaXA6IGNvbnRlbnQtYm94KSk7XG4gICAgfVxuXG4gICAgQGlmICRfc2hvdyAhPSAnc2hvdy1jb2x1bW5zJ1xuICAgICAgYW5kIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoYmFzZS1saW5lLWhlaWdodClcbiAgICAgIGFuZCB0eXBlLW9mKCRiYXNlLWxpbmUtaGVpZ2h0KSA9PSAnbnVtYmVyJ1xuICAgICAgYW5kIG5vdCB1bml0bGVzcygkYmFzZS1saW5lLWhlaWdodCkge1xuICAgICAgJF9jb2xvcjogdmFyaWFibGUtZXhpc3RzKCdncmlkLWJhY2tncm91bmQtYmFzZWxpbmUtY29sb3InKTtcbiAgICAgICRfY29sb3I6IGlmKCRfY29sb3IsICRncmlkLWJhY2tncm91bmQtYmFzZWxpbmUtY29sb3IsICMwMDApO1xuXG4gICAgICAkX2ltYWdlOiBtYXAtZ2V0KCRfcmV0dXJuLCBpbWFnZSk7XG4gICAgICAkX3NpemU6IG1hcC1nZXQoJF9yZXR1cm4sIHNpemUpO1xuICAgICAgJF9iYXNlbGluZTogKGJhc2VsaW5lOiAoJF9jb2xvciAxcHgsIHRyYW5zcGFyZW50IDFweCkpO1xuICAgICAgJF9iYXNlbGluZS1zaXplOiAxMDAlICRiYXNlLWxpbmUtaGVpZ2h0O1xuXG4gICAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAoXG4gICAgICAgIGltYWdlOiBpZigkX2ltYWdlLCBtYXAtbWVyZ2UoJF9pbWFnZSwgJF9iYXNlbGluZSksICRfYmFzZWxpbmUpLFxuICAgICAgICBzaXplOiBpZigkX3NpemUsICgkX3NpemUsICRfYmFzZWxpbmUtc2l6ZSksICRfYmFzZWxpbmUtc2l6ZSksXG4gICAgICApKTtcblxuICAgICAgQGlmICRfc2hvdyA9PSAnc2hvdycge1xuICAgICAgICAkX2NsaXA6IG1hcC1nZXQoJF9yZXR1cm4sIGNsaXApO1xuICAgICAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAoY2xpcDogam9pbigkX2NsaXAsIGJvcmRlci1ib3gsIGNvbW1hKSkpO1xuICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJF9zaG93ID09ICdzaG93LWJhc2VsaW5lJyB7XG4gICAgICBAd2FybiAnUGxlYXNlIHByb3ZpZGUgYSAkYmFzZS1saW5lLWhlaWdodCB3aXRoIHRoZSBkZXNpcmVkIGhlaWdodCBhbmQgdW5pdHMnO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBtYXAtZ2V0KCRfcmV0dXJuLCBpbWFnZSkge1xuICAgICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sIChmbG93OiBzdXN5LWdldChmbG93LCAkZ3JpZCkpKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG5cblxuLy8gR2V0IERlYnVnXG4vLyAtLS0tLS0tLS1cbi8vIFJldHVybiB0aGUgdmFsdWUgb2YgYSBkZWJ1ZyBzZXR0aW5nXG4vLyAtICRrZXk6IDxzZXR0aW5nPlxuQGZ1bmN0aW9uIGRlYnVnLWdldChcbiAgJGtleSxcbiAgJGdyaWQ6ICRzdXN5XG4pIHtcbiAgJGtleTogam9pbihkZWJ1ZywgJGtleSwgc3BhY2UpO1xuICBAcmV0dXJuIHN1c3ktZ2V0KCRrZXksICRncmlkKTtcbn1cbiIsIi8vIENvbnRhaW5lciBTeW50YXhcbi8vID09PT09PT09PT09PT09PT1cblxuLy8gQ29udGFpbmVyIFttaXhpbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTZXQgYSBjb250YWluZXIgZWxlbWVudFxuLy8gLSBbJGxheW91dF0gIDogPHNldHRpbmdzPlxuQG1peGluIGNvbnRhaW5lcihcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkaW5zcGVjdCAgICA6ICRsYXlvdXQ7XG4gICRsYXlvdXQgICAgIDogcGFyc2UtZ3JpZCgkbGF5b3V0KTtcblxuICAkX3dpZHRoICAgICA6IGdldC1jb250YWluZXItd2lkdGgoJGxheW91dCk7XG4gICRfanVzdGlmeSAgIDogcGFyc2UtY29udGFpbmVyLXBvc2l0aW9uKHN1c3ktZ2V0KGNvbnRhaW5lci1wb3NpdGlvbiwgJGxheW91dCkpO1xuICAkX3Byb3BlcnR5ICA6IGlmKHN1c3ktZ2V0KG1hdGgsICRsYXlvdXQpID09IHN0YXRpYywgd2lkdGgsIG1heC13aWR0aCk7XG5cbiAgJF9ib3ggICAgICAgOiBzdXN5LWdldChib3gtc2l6aW5nLCAkbGF5b3V0KTtcblxuICBAaWYgJF9ib3gge1xuICAgIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogJF9ib3gpKTtcbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChjb250YWluZXIsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgZmxvYXQtY29udGFpbmVyKCRfd2lkdGgsICRfanVzdGlmeSwgJF9wcm9wZXJ0eSk7XG4gIEBpbmNsdWRlIHNob3ctZ3JpZCgkbGF5b3V0KTtcbn1cblxuLy8gQ29udGFpbmVyIFtmdW5jdGlvbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gY29udGFpbmVyIHdpZHRoXG4vLyAtIFskbGF5b3V0XSAgOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gY29udGFpbmVyKFxuICAkbGF5b3V0OiAkc3VzeVxuKSB7XG4gICRsYXlvdXQ6IHBhcnNlLWdyaWQoJGxheW91dCk7XG4gIEByZXR1cm4gZ2V0LWNvbnRhaW5lci13aWR0aCgkbGF5b3V0KTtcbn1cblxuLy8gR2V0IENvbnRhaW5lciBXaWR0aFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2FsY3VsYXRlIHRoZSBjb250YWluZXIgd2lkdGhcbi8vIC0gWyRsYXlvdXRdOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gZ2V0LWNvbnRhaW5lci13aWR0aChcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkbGF5b3V0ICAgICAgICAgOiBwYXJzZS1ncmlkKCRsYXlvdXQpO1xuICAkX3dpZHRoICAgICAgICAgOiBzdXN5LWdldChjb250YWluZXIsICRsYXlvdXQpO1xuICAkX2NvbHVtbi13aWR0aCAgOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRsYXlvdXQpO1xuICAkX21hdGggICAgICAgICAgOiBzdXN5LWdldChtYXRoLCAkbGF5b3V0KTtcblxuICBAaWYgbm90KCRfd2lkdGgpIG9yICRfd2lkdGggPT0gYXV0byB7XG4gICAgQGlmIHZhbGlkLWNvbHVtbi1tYXRoKCRfbWF0aCwgJF9jb2x1bW4td2lkdGgpIHtcbiAgICAgICRfY29sdW1ucyAgIDogc3VzeS1nZXQoY29sdW1ucywgJGxheW91dCk7XG4gICAgICAkX2d1dHRlcnMgICA6IHN1c3ktZ2V0KGd1dHRlcnMsICRsYXlvdXQpO1xuICAgICAgJF9zcHJlYWQgICAgOiBpZihpcy1zcGxpdCgkbGF5b3V0KSwgd2lkZSwgbmFycm93KTtcbiAgICAgICRfd2lkdGggICAgIDogc3VzeS1zdW0oJF9jb2x1bW5zLCAkX2d1dHRlcnMsICRfc3ByZWFkKSAqICRfY29sdW1uLXdpZHRoO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJF93aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRfd2lkdGg7XG59XG5cbi8vIFBhcnNlIENvbnRhaW5lciBQb3NpdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQYXJzZSB0aGUgJGNvbnRhaW5lci1wb3NpdGlvbiBpbnRvIG1hcmdpbiB2YWx1ZXMuXG4vLyAtIFskanVzdGlmeV0gICA6IGxlZnQgfCBjZW50ZXIgfCByaWdodCB8IDxsZW5ndGg+IFs8bGVuZ3RoPl1cbkBmdW5jdGlvbiBwYXJzZS1jb250YWluZXItcG9zaXRpb24oXG4gICRqdXN0aWZ5OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBjb250YWluZXItcG9zaXRpb24pXG4pIHtcbiAgJF9yZXR1cm46IGlmKCRqdXN0aWZ5ID09IGxlZnQsIDAsIGF1dG8pIGlmKCRqdXN0aWZ5ID09IHJpZ2h0LCAwLCBhdXRvKTtcblxuICBAaWYgbm90KGluZGV4KGxlZnQgcmlnaHQgY2VudGVyLCAkanVzdGlmeSkpIHtcbiAgICAkX3JldHVybjogbnRoKCRqdXN0aWZ5LCAxKTtcbiAgICAkX3JldHVybjogJF9yZXR1cm4gaWYobGVuZ3RoKCRqdXN0aWZ5KSA+IDEsIG50aCgkanVzdGlmeSwgMiksICRfcmV0dXJuKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG4iLCIvLyBTcGFuIFN5bnRheFxuLy8gPT09PT09PT09PT1cblxuLy8gU3BhbiBbbWl4aW5dXG4vLyAtLS0tLS0tLS0tLS1cbi8vIFNldCBhIHNwYW5uaW5nIGVsZW1lbnQgdXNpbmcgc2hvcnRoYW5kIHN5bnRheC5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AbWl4aW4gc3BhbihcbiAgJHNwYW5cbikge1xuICAkaW5zcGVjdDogJHNwYW47XG4gICRzcGFuOiBwYXJzZS1zcGFuKCRzcGFuKTtcbiAgJG91dHB1dDogc3Bhbi1tYXRoKCRzcGFuKTtcbiAgJG5lc3Rpbmc6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcbiAgJGNsZWFyOiBzdXN5LWdldChjbGVhciwgJHNwYW4pO1xuXG4gICRib3g6IHN1c3ktZ2V0KGJveC1zaXppbmcsICRzcGFuKTtcbiAgJGNvbnRlbnQtYm94OiBpZihzdXN5LWdldChnbG9iYWwtYm94LXNpemluZykgIT0gJ2JvcmRlci1ib3gnLCB0cnVlLCBmYWxzZSk7XG4gICRib3g6ICRib3ggb3IgaWYoaXMtaW5zaWRlKCRzcGFuKSBhbmQgJGNvbnRlbnQtYm94LCBib3JkZXItYm94LCBudWxsKTtcblxuICBAaWYgJGNsZWFyID09IGJyZWFrIHtcbiAgICBAaW5jbHVkZSBicmVhaztcbiAgfSBAZWxzZSBpZiAkY2xlYXIgPT0gbm9icmVhayB7XG4gICAgQGluY2x1ZGUgbm9icmVhaztcbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChzcGFuLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogJGJveCkpO1xuICBAaW5jbHVkZSBmbG9hdC1zcGFuLW91dHB1dCgkb3V0cHV0Li4uKTtcblxuICBAaWYgdmFsaWQtY29sdW1ucygkbmVzdGluZywgc2lsZW50KSB7XG4gICAgQGluY2x1ZGUgbmVzdGVkKCRzcGFuKSB7IEBjb250ZW50OyB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIFNwYW4gW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gdGhlIHdpZHRoIG9mIGEgc3Bhbi5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AZnVuY3Rpb24gc3BhbihcbiAgJHNwYW5cbikge1xuICBAcmV0dXJuIGdldC1zcGFuLXdpZHRoKCRzcGFuKTtcbn1cblxuLy8gU3BhbiBNYXRoXG4vLyAtLS0tLS0tLS1cbi8vIEdldCBhbGwgdGhlIHNwYW4gcmVzdWx0cy5cbi8vIC0gJHNwYW46IDxtYXA+XG5AZnVuY3Rpb24gc3Bhbi1tYXRoKFxuICAkc3BhblxuKSB7XG4gICRuZXN0ICAgICAgICAgICAgIDogaWYoc3VzeS1nZXQocm9sZSwgJHNwYW4pID09IG5lc3QsIHRydWUsIGZhbHNlKTtcbiAgJHNwbGl0LW5lc3QgICAgICAgOiBpZihpcy1zcGxpdCgkc3BhbikgYW5kICRuZXN0LCB0cnVlLCBmYWxzZSk7XG4gICRlZGdlICAgICAgICAgICAgIDogZ2V0LWVkZ2UoJHNwYW4pO1xuICAkbG9jYXRpb24gICAgICAgICA6IGdldC1sb2NhdGlvbigkc3Bhbik7XG5cbiAgJGZsb2F0ICAgICAgICAgICAgOiBmcm9tO1xuICAkcGFkZGluZy1iZWZvcmUgICA6IG51bGw7XG4gICRwYWRkaW5nLWFmdGVyICAgIDogbnVsbDtcbiAgJG1hcmdpbi1iZWZvcmUgICAgOiBudWxsO1xuICAkbWFyZ2luLWFmdGVyICAgICA6IG51bGw7XG5cbiAgLy8gY2FsY3VsYXRlIHdpZHRoc1xuICAkc3ByZWFkOiBpbmRleChtYXAtdmFsdWVzKCRzcGFuKSwgc3ByZWFkKTtcbiAgJHNwYW46IGlmKCRzcGxpdC1uZXN0IGFuZCBub3QoJHNwcmVhZCksIG1hcC1tZXJnZSgkc3BhbiwgKHNwcmVhZDogd2lkZSkpLCAkc3Bhbik7XG4gICR3aWR0aDogZ2V0LXNwYW4td2lkdGgoJHNwYW4pO1xuICAkZ3V0dGVyczogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuXG4gIC8vIGFwcGx5IGd1dHRlcnNcbiAgQGlmIGlzLWluc2lkZSgkc3Bhbikge1xuICAgIEBpZiBub3Qoc3VzeS1nZXQocm9sZSwgJHNwYW4pKSB7XG4gICAgICAkcGFkZGluZy1iZWZvcmU6IG1hcC1nZXQoJGd1dHRlcnMsIGJlZm9yZSk7XG4gICAgICAkcGFkZGluZy1hZnRlcjogbWFwLWdldCgkZ3V0dGVycywgYWZ0ZXIpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGlmIG5vdCgkc3BsaXQtbmVzdCkge1xuICAgICAgJG1hcmdpbi1iZWZvcmU6IG1hcC1nZXQoJGd1dHRlcnMsIGJlZm9yZSk7XG4gICAgICAkbWFyZ2luLWFmdGVyOiBtYXAtZ2V0KCRndXR0ZXJzLCBhZnRlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gc3BlY2lhbCBtYXJnaW4gaGFuZGxpbmdcbiAgQGlmIHN1c3ktZ2V0KG91dHB1dCwgJHNwYW4pID09IGlzb2xhdGUgYW5kICRsb2NhdGlvbiB7XG4gICAgJG1hcmdpbi1iZWZvcmU6IGdldC1pc29sYXRpb24oJHNwYW4pO1xuICAgICRtYXJnaW4tYWZ0ZXI6IC0xMDAlO1xuICB9IEBlbHNlIGlmICRlZGdlIHtcbiAgICAkaXMtc3BsaXQ6IGlzLXNwbGl0KCRzcGFuKTtcbiAgICAkcG9zOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKTtcblxuICAgIEBpZiAkZWRnZSA9PSBsYXN0IHtcbiAgICAgICRmbG9hdDogc3VzeS1nZXQobGFzdC1mbG93LCAkc3Bhbik7XG4gICAgfVxuXG4gICAgQGlmIG5vdCgkaXMtc3BsaXQpIHtcbiAgICAgIEBpZiAkZWRnZSA9PSBmdWxsIG9yICgkZWRnZSA9PSBmaXJzdCBhbmQgJHBvcyA9PSBiZWZvcmUpIHtcbiAgICAgICAgJG1hcmdpbi1iZWZvcmU6IDA7XG4gICAgICB9XG4gICAgICBAaWYgJGVkZ2UgPT0gZnVsbCBvciAoJGVkZ2UgPT0gbGFzdCBhbmQgJHBvcyA9PSBhZnRlcikge1xuICAgICAgICAkbWFyZ2luLWFmdGVyOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgQHJldHVybiAoXG4gICAgd2lkdGggICAgICAgICAgIDogJHdpZHRoLFxuICAgIGZsb2F0ICAgICAgICAgICA6ICRmbG9hdCxcbiAgICBtYXJnaW4tYmVmb3JlICAgOiAkbWFyZ2luLWJlZm9yZSxcbiAgICBtYXJnaW4tYWZ0ZXIgICAgOiAkbWFyZ2luLWFmdGVyLFxuICAgIHBhZGRpbmctYmVmb3JlICA6ICRwYWRkaW5nLWJlZm9yZSxcbiAgICBwYWRkaW5nLWFmdGVyICAgOiAkcGFkZGluZy1hZnRlcixcbiAgICBmbG93ICAgICAgICAgICAgOiBzdXN5LWdldChmbG93LCAkc3BhbiksXG4gICk7XG59XG5cbi8vIEdldCBTcGFuIFdpZHRoXG4vLyAtLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHNwYW4gd2lkdGguXG4vLyAtICRzcGFuOiA8bWFwPlxuQGZ1bmN0aW9uIGdldC1zcGFuLXdpZHRoKFxuICAkc3BhblxuKSB7XG4gICRzcGFuICAgICA6IHBhcnNlLXNwYW4oJHNwYW4pO1xuXG4gICRuICAgICAgICA6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcbiAgJGxvY2F0aW9uIDogZ2V0LWxvY2F0aW9uKCRzcGFuKTtcbiAgJGNvbHVtbnMgIDogc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pO1xuICAkZ3V0dGVycyAgOiBzdXN5LWdldChndXR0ZXJzLCAkc3Bhbik7XG4gICRzcHJlYWQgICA6IHN1c3ktZ2V0KHNwcmVhZCwgJHNwYW4pO1xuXG4gICRjb250ZXh0ICA6IG51bGw7XG4gICRzcGFuLXN1bSA6IG51bGw7XG4gICR3aWR0aCAgICA6IG51bGw7XG5cbiAgQGlmICRuID09ICdmdWxsJyB7XG4gICAgJHBvczogc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkc3Bhbik7XG4gICAgJHJvbGU6IHN1c3ktZ2V0KHJvbGUsICRzcGFuKTtcbiAgICAkbjogaWYoJHBvcyA9PSBzcGxpdCBhbmQgJHJvbGUgIT0gbmVzdCwgc3VzeS1jb3VudCgkY29sdW1ucyksIDEwMCUpO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJG4pICE9IG51bWJlciB7XG4gICAgQHdhcm4gXCIoI3t0eXBlLW9mKCRuKX0pICN7JG59IGlzIG5vdCBhIHZhbGlkIHNwYW4uXCI7XG4gIH0gQGVsc2UgaWYgdW5pdGxlc3MoJG4pIHtcbiAgICAkY29udGV4dDogc3VzeS1zdW0oJGNvbHVtbnMsICRndXR0ZXJzLCBpZihpcy1zcGxpdCgkc3BhbiksIHdpZGUsIG5hcnJvdykpO1xuICAgICRzcHJlYWQ6IGlmKGlzLWluc2lkZSgkc3BhbiksICRzcHJlYWQgb3Igd2lkZSwgJHNwcmVhZCk7XG4gICAgJHNwYW4tc3VtOiBzdXN5KCRuLCAkbG9jYXRpb24sICRjb2x1bW5zLCAkZ3V0dGVycywgJHNwcmVhZCk7XG5cbiAgICAkX21hdGg6IHN1c3ktZ2V0KG1hdGgsICRzcGFuKTtcbiAgICAkX2NvbHVtbi13aWR0aDogc3VzeS1nZXQoY29sdW1uLXdpZHRoLCAkc3Bhbik7XG4gICAgQGlmICRfbWF0aCA9PSBzdGF0aWMge1xuICAgICAgJHdpZHRoOiAkc3Bhbi1zdW0gKiB2YWxpZC1jb2x1bW4tbWF0aCgkX21hdGgsICRfY29sdW1uLXdpZHRoKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZSgkc3Bhbi1zdW0gLyAkY29udGV4dCk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAkd2lkdGg6ICRuO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG4iLCIvLyBHdXR0ZXIgU3ludGF4XG4vLyA9PT09PT09PT09PT09XG5cblxuLy8gR3V0dGVyc1xuLy8gLS0tLS0tLVxuLy8gU2V0IGd1dHRlcnMgb24gYW4gZWxlbWVudC5cbi8vIC0gWyRzcGFuXSAgIDogPHNldHRpbmdzPlxuQG1peGluIGd1dHRlcnMoXG4gICRzcGFuOiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0ICA6ICRzcGFuO1xuICAkc3BhbiAgICAgOiBwYXJzZS1ndXR0ZXJzKCRzcGFuKTtcbiAgJF9ndXR0ZXJzIDogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuXG4gICRfb3V0cHV0OiAoXG4gICAgYmVmb3JlOiBtYXAtZ2V0KCRfZ3V0dGVycywgYmVmb3JlKSxcbiAgICBhZnRlcjogbWFwLWdldCgkX2d1dHRlcnMsIGFmdGVyKSxcbiAgICBmbG93OiBzdXN5LWdldChmbG93LCAkc3BhbiksXG4gICk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGd1dHRlcnMsICRpbnNwZWN0KTtcblxuICBAaWYgaXMtaW5zaWRlKCRzcGFuKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZy1vdXRwdXQoJF9vdXRwdXQuLi4pO1xuICB9IEBlbHNlIHtcbiAgICBAaW5jbHVkZSBtYXJnaW4tb3V0cHV0KCRfb3V0cHV0Li4uKTtcbiAgfVxufVxuXG5AbWl4aW4gZ3V0dGVyKFxuICAkc3BhbjogJHN1c3lcbikge1xuICBAaW5jbHVkZSBndXR0ZXJzKCRzcGFuKTtcbn1cblxuXG4vLyBHdXR0ZXJcbi8vIC0tLS0tLVxuLy8gUmV0dXJuIHRoZSB3aWR0aCBvZiBhIGd1dHRlci5cbi8vIC0gWyRzcGFuXSAgIDogPHNldHRpbmdzPlxuQGZ1bmN0aW9uIGd1dHRlcihcbiAgJHNwYW46ICRzdXN5XG4pIHtcbiAgJHNwYW46IHBhcnNlLWd1dHRlcnMoJHNwYW4pO1xuXG4gICRfZ3V0dGVyczogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuICAkX2d1dHRlcnM6IG1hcC1nZXQoJF9ndXR0ZXJzLCBiZWZvcmUpIG9yIG1hcC1nZXQoJF9ndXR0ZXJzLCBhZnRlcik7XG5cbiAgQHJldHVybiAkX2d1dHRlcnM7XG59XG5cbkBmdW5jdGlvbiBndXR0ZXJzKFxuICAkc3BhbjogJHN1c3lcbikge1xuICBAcmV0dXJuIGd1dHRlcigkc3Bhbik7XG59XG5cblxuLy8gR2V0IEd1dHRlciBXaWR0aFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIGd1dHRlciB3aWR0aC5cbi8vIC0gWyRjb250ZXh0XTogPGNvbnRleHQ+XG5AZnVuY3Rpb24gZ2V0LWd1dHRlci13aWR0aChcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGNvbnRleHQgIDogcGFyc2UtZ3V0dGVycygkY29udGV4dCk7XG5cbiAgJF9ndXR0ZXJzIDogc3VzeS1nZXQoZ3V0dGVycywgJGNvbnRleHQpO1xuICAkX2d1dHRlciAgOiBzdXN5LWdldChndXR0ZXItb3ZlcnJpZGUsICRjb250ZXh0KTtcblxuICBAaWYgJF9ndXR0ZXJzIGFuZCAoJF9ndXR0ZXJzID4gMCkgYW5kIG5vdCgkX2d1dHRlcikge1xuICAgICRfY29sdW1uLXdpZHRoOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRjb250ZXh0KTtcbiAgICAkX21hdGg6IGd1dHRlci1tYXRoKCRjb250ZXh0KTtcbiAgICBAaWYgJF9tYXRoID09IHN0YXRpYyB7XG4gICAgICAkX2d1dHRlcjogJF9ndXR0ZXJzICogdmFsaWQtY29sdW1uLW1hdGgoJF9tYXRoLCAkX2NvbHVtbi13aWR0aCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkX2NvbHVtbnMgOiBzdXN5LWdldChjb2x1bW5zLCAkY29udGV4dCk7XG4gICAgICAkX3NwcmVhZCAgOiBpZihpcy1zcGxpdCgkY29udGV4dCksIHdpZGUsIHN1c3ktZ2V0KHNwcmVhZCwgJGNvbnRleHQpKTtcbiAgICAgICRfZ3V0dGVyICA6IHBlcmNlbnRhZ2UoJF9ndXR0ZXJzIC8gc3VzeS1zdW0oJF9jb2x1bW5zLCAkX2d1dHRlcnMsICRfc3ByZWFkKSk7XG4gICAgfVxuICB9XG5cbiAgJF9ndXR0ZXI6IGlmKCRfZ3V0dGVyID09ICduby1ndXR0ZXJzJyBvciAkX2d1dHRlciA9PSAnbm8tZ3V0dGVyJywgbnVsbCwgJF9ndXR0ZXIpO1xuXG4gIEByZXR1cm4gJF9ndXR0ZXI7XG59XG5cblxuLy8gR2V0IEd1dHRlcnNcbi8vIC0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gYmVmb3JlIGFuZCBhZnRlciBndXR0ZXIgdmFsdWVzLlxuLy8gLSBbJGNvbnRleHRdOiA8Y29udGV4dD5cbkBmdW5jdGlvbiBnZXQtZ3V0dGVycyhcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGNvbnRleHQgICAgICAgICAgICA6IHBhcnNlLWd1dHRlcnMoJGNvbnRleHQpO1xuXG4gICRfZ3V0dGVyLXBvc2l0aW9uICAgOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRjb250ZXh0KTtcbiAgJF9ndXR0ZXIgICAgICAgICAgICA6IGdldC1ndXR0ZXItd2lkdGgoJGNvbnRleHQpO1xuXG4gICRfcmV0dXJuICAgICAgICAgICAgOiAoYmVmb3JlOiBudWxsLCBhZnRlcjogbnVsbCk7XG5cbiAgQGlmIGlzLXNwbGl0KCRjb250ZXh0KSBhbmQgJF9ndXR0ZXIge1xuICAgICRfZ3V0dGVyOiAkX2d1dHRlciAvIDI7XG4gICAgJF9yZXR1cm46IG1hcC1tZXJnZSgkX3JldHVybiwgKGJlZm9yZTogJF9ndXR0ZXIsIGFmdGVyOiAkX2d1dHRlcikpO1xuICB9IEBlbHNlIHtcbiAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAoJF9ndXR0ZXItcG9zaXRpb246ICRfZ3V0dGVyKSk7XG4gIH1cblxuICBAcmV0dXJuICRfcmV0dXJuO1xufVxuXG5cbi8vIElzIEluc2lkZVxuLy8gLS0tLS0tLS0tXG4vLyBSZXR1cm5zIHRydWUgaWYgZ3V0dGVycyBhcmUgaW5zaWRlLlxuLy8gJGNvbnRleHQ6IDxjb250ZXh0PlxuQGZ1bmN0aW9uIGlzLWluc2lkZShcbiAgJGNvbnRleHRcbikge1xuICAkX2luc2lkZTogaW5zaWRlIGluc2lkZS1zdGF0aWM7XG4gICRfZ3V0dGVyLXBvc2l0aW9uOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRjb250ZXh0KTtcblxuICBAcmV0dXJuIGlmKGluZGV4KCRfaW5zaWRlLCAkX2d1dHRlci1wb3NpdGlvbiksIHRydWUsIGZhbHNlKTtcbn1cblxuXG4vLyBJcyBTcGxpdFxuLy8gLS0tLS0tLS1cbi8vIFJldHVybnMgdHJ1ZSBpZiBndXR0ZXJzIGFyZSBzcGxpdC5cbi8vICRjb250ZXh0OiA8Y29udGV4dD5cbkBmdW5jdGlvbiBpcy1zcGxpdChcbiAgJGNvbnRleHRcbikge1xuICAkX3NwbGl0OiBzcGxpdCBpbnNpZGUgaW5zaWRlLXN0YXRpYztcbiAgJF9ndXR0ZXItcG9zaXRpb246IHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJGNvbnRleHQpO1xuXG4gIEByZXR1cm4gaWYoaW5kZXgoJF9zcGxpdCwgJF9ndXR0ZXItcG9zaXRpb24pLCB0cnVlLCBmYWxzZSk7XG59XG5cblxuLy8gR3V0dGVyIE1hdGhcbi8vIC0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gdGhlIG1hdGggdG8gdXNlIGZvciBndXR0ZXIgY2FsY3VsYXRpb25zXG4vLyAkY29udGV4dDogPGNvbnRleHQ+XG5AZnVuY3Rpb24gZ3V0dGVyLW1hdGgoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRfcmV0dXJuICA6IHN1c3ktZ2V0KG1hdGgsICRjb250ZXh0KTtcbiAgJF9yZXR1cm4gIDogaWYoc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkY29udGV4dCkgPT0gaW5zaWRlLXN0YXRpYywgc3RhdGljLCAkX3JldHVybik7XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cbiIsIi8vIElzb2xhdGlvbiBTeW50YXhcbi8vID09PT09PT09PT09PT09PT1cblxuXG4vLyBJc29sYXRlIFtNaXhpbl1cbi8vIC0tLS0tLS0tLS0tLS0tLVxuLy8gU2V0IGlzb2xhdGlvbiBhcyBhbiBvdmVycmlkZS5cbi8vIC0gJGxvY2F0aW9uOiA8c3Bhbj5cbkBtaXhpbiBpc29sYXRlKFxuICAkaXNvbGF0ZTogMVxuKSB7XG4gICRpbnNwZWN0OiAkaXNvbGF0ZTtcblxuICAkb3V0cHV0OiAoXG4gICAgcHVzaDogaXNvbGF0ZSgkaXNvbGF0ZSksXG4gICAgZmxvdzogc3VzeS1nZXQoZmxvdywgJGlzb2xhdGUpLFxuICApO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChpc29sYXRlLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIGlzb2xhdGUtb3V0cHV0KCRvdXRwdXQuLi4pO1xufVxuXG5cbi8vIElzb2xhdGUgW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gYW4gaXNvbGF0aW9uIG9mZnNldCB3aWR0aC5cbi8vIC0gJGxvY2F0aW9uOiA8c3Bhbj5cbkBmdW5jdGlvbiBpc29sYXRlKFxuICAkaXNvbGF0ZTogMVxuKSB7XG4gICRpc29sYXRlOiBwYXJzZS1zcGFuKCRpc29sYXRlKTtcbiAgJGlzb2xhdGlvbjogc3VzeS1nZXQoc3BhbiwgJGlzb2xhdGUpO1xuXG4gIEBpZiAkaXNvbGF0aW9uIGFuZCBub3QoZ2V0LWxvY2F0aW9uKCRpc29sYXRlKSkge1xuICAgICRuZXc6IChcbiAgICAgIHNwYW46IG51bGwsXG4gICAgICBsb2NhdGlvbjogJGlzb2xhdGlvbixcbiAgICApO1xuICAgICRpc29sYXRlOiBtYXAtbWVyZ2UoJGlzb2xhdGUsICRuZXcpO1xuICB9XG5cbiAgQHJldHVybiBnZXQtaXNvbGF0aW9uKCRpc29sYXRlKTtcbn1cblxuXG4vLyBHZXQgSXNvbGF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gdGhlIGlzb2xhdGlvbiBvZmZzZXQgd2lkdGhcbi8vIC0gJGlucHV0OiA8bWFwPlxuQGZ1bmN0aW9uIGdldC1pc29sYXRpb24oXG4gICRpbnB1dFxuKSB7XG4gICRsb2NhdGlvbiAgIDogZ2V0LWxvY2F0aW9uKCRpbnB1dCk7XG4gICRjb2x1bW5zICAgIDogc3VzeS1nZXQoY29sdW1ucywgJGlucHV0KTtcbiAgJHdpZHRoICAgICAgOiBudWxsO1xuXG4gIEBpZiB0eXBlLW9mKCRsb2NhdGlvbikgPT0gbnVtYmVyIGFuZCBub3QodW5pdGxlc3MoJGxvY2F0aW9uKSkge1xuICAgICR3aWR0aDogJGxvY2F0aW9uO1xuICB9IEBlbHNlIGlmICRsb2NhdGlvbiB7XG4gICAgJHB1c2g6ICRsb2NhdGlvbiAtIDE7XG4gICAgQGlmICRwdXNoID4gMCB7XG4gICAgICAkcHVzaDogbWFwLW1lcmdlKCRpbnB1dCwgKFxuICAgICAgICBzcGFuOiAkcHVzaCxcbiAgICAgICAgbG9jYXRpb246IDEsXG4gICAgICAgIHNwcmVhZDogd2lkZSxcbiAgICAgICkpO1xuICAgICAgJHdpZHRoOiBnZXQtc3Bhbi13aWR0aCgkcHVzaCk7XG4gICAgfVxuICB9XG5cbiAgQGlmIHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJGlucHV0KSA9PSBzcGxpdFxuICAgICAgYW5kIHN1c3ktZ2V0KGd1dHRlcnMsICRpbnB1dCkgPiAwIHtcbiAgICAkd2lkdGg6IGlmKCR3aWR0aCA9PSBudWxsLCBndXR0ZXJzKCRpbnB1dCksICR3aWR0aCArIGd1dHRlcnMoJGlucHV0KSk7XG4gIH1cblxuICBAcmV0dXJuICR3aWR0aCBvciAwO1xufVxuIiwiLy8gR2FsbGVyeSBTeW50YXhcbi8vID09PT09PT09PT09PT09XG5cbi8vIEdhbGxlcnlcbi8vIC0tLS0tLS1cbi8vIENyZWF0ZSBhbiBpc29sYXRlZCBnYWxsZXJ5XG4vLyAtICRzcGFuICAgICAgICA6IDxzcGFuPlxuLy8gLSBbJHNlbGVjdG9yXSAgOiBjaGlsZCB8IG9mLXR5cGVcbkBtaXhpbiBnYWxsZXJ5KFxuICAkc3BhbixcbiAgJHNlbGVjdG9yOiBjaGlsZFxuKSB7XG4gICRpbnNwZWN0ICAgIDogJHNwYW47XG4gICRzcGFuICAgICAgIDogcGFyc2Utc3Bhbigkc3Bhbik7XG4gICRzcGFuICAgICAgIDogbWFwLW1lcmdlKCRzcGFuLCAobG9jYXRpb246IDEpKTtcblxuICAkbiAgICAgICAgICAgIDogc3VzeS1nZXQoc3BhbiwgJHNwYW4pO1xuICAkY29sdW1ucyAgICAgIDogc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pO1xuICAkY29udGV4dCAgICAgIDogc3VzeS1jb3VudCgkY29sdW1ucyk7XG4gICRmbG93ICAgICAgICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG5cbiAgJGluc2lkZSAgICAgICA6IGlzLWluc2lkZSgkc3Bhbik7XG4gICRmcm9tICAgICAgICAgOiBmcm9tKCRmbG93KTtcbiAgJGxpbmUgICAgICAgICA6IGZsb29yKCRjb250ZXh0IC8gJG4pO1xuICAkc3ltbWV0cmljYWwgIDogaXMtc3ltbWV0cmljYWwoJGNvbHVtbnMpO1xuXG4gICRvdXRwdXQ6IChcbiAgICB3aWR0aCAgICAgICAgICAgICA6IG51bGwsXG4gICAgZmxvYXQgICAgICAgICAgICAgOiBmcm9tLFxuICAgIG1hcmdpbi1iZWZvcmUgICAgIDogbnVsbCxcbiAgICBtYXJnaW4tYWZ0ZXIgICAgICA6IG51bGwsXG4gICAgcGFkZGluZy1iZWZvcmUgICAgOiBudWxsLFxuICAgIHBhZGRpbmctYWZ0ZXIgICAgIDogbnVsbCxcbiAgICBmbG93ICAgICAgICAgICAgICA6ICRmbG93LFxuICApO1xuXG4gIEBpZiAkaW5zaWRlIHtcbiAgICAkZ3V0dGVyczogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuICAgICRvdXRwdXQ6IG1hcC1tZXJnZSgkb3V0cHV0LCAoXG4gICAgICBwYWRkaW5nLWJlZm9yZTogbWFwLWdldCgkZ3V0dGVycywgYmVmb3JlKSxcbiAgICAgIHBhZGRpbmctYWZ0ZXI6IG1hcC1nZXQoJGd1dHRlcnMsIGFmdGVyKSxcbiAgICApKTtcbiAgfVxuXG4gIEBpZiAkc3ltbWV0cmljYWwge1xuICAgICRvdXRwdXQ6IG1hcC1tZXJnZSgkb3V0cHV0LCAod2lkdGg6IGdldC1zcGFuLXdpZHRoKCRzcGFuKSkpO1xuICB9XG5cbiAgJGJveCAgICAgICAgICA6IHN1c3ktZ2V0KGJveC1zaXppbmcsICRzcGFuKTtcbiAgJGdsb2JhbC1ib3ggICA6IGlmKHN1c3ktZ2V0KGdsb2JhbC1ib3gtc2l6aW5nKSA9PSAnYm9yZGVyLWJveCcsIHRydWUsIGZhbHNlKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QoZ2FsbGVyeSwgJGluc3BlY3QpO1xuXG4gIC8vIENvbGxlY3RpdmUgT3V0cHV0XG4gIEBpZiAkYm94ID09IGJvcmRlci1ib3ggb3IgKCRpbnNpZGUgYW5kIG5vdCgkYm94KSBhbmQgbm90KCRnbG9iYWwtYm94KSkge1xuICAgIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogYm9yZGVyLWJveCkpO1xuICB9IEBlbHNlIGlmICRib3ggPT0gY29udGVudC1ib3gge1xuICAgIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogY29udGVudC1ib3gpKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZsb2F0LXNwYW4tb3V0cHV0KCRvdXRwdXQuLi4pO1xuXG4gIC8vIEluZGl2aWR1YWwgTG9vcFxuICBAZm9yICRpdGVtIGZyb20gMSB0aHJvdWdoICRsaW5lIHtcbiAgICAkbnRoOiAnI3skbGluZX1uICsgI3skaXRlbX0nO1xuICAgICY6bnRoLSN7JHNlbGVjdG9yfSgjeyRudGh9KSB7XG4gICAgICAvLyBJbmRpdmlkdWFsIFByZXBcbiAgICAgICRvdXRwdXQ6IChcbiAgICAgICAgd2lkdGggICAgICAgICAgICAgOiBpZigkc3ltbWV0cmljYWwsIG51bGwsIGdldC1zcGFuLXdpZHRoKCRzcGFuKSksXG4gICAgICAgIGZsb2F0ICAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgbWFyZ2luLWJlZm9yZSAgICAgOiBnZXQtaXNvbGF0aW9uKCRzcGFuKSxcbiAgICAgICAgbWFyZ2luLWFmdGVyICAgICAgOiAtMTAwJSxcbiAgICAgICAgcGFkZGluZy1iZWZvcmUgICAgOiBudWxsLFxuICAgICAgICBwYWRkaW5nLWFmdGVyICAgICA6IG51bGwsXG4gICAgICAgIGZsb3cgICAgICAgICAgICAgIDogJGZsb3csXG4gICAgICApO1xuXG4gICAgICAvLyBJbmRpdmlkdWFsIE91dHB1dFxuICAgICAgQGluY2x1ZGUgZmxvYXQtc3Bhbi1vdXRwdXQoJG91dHB1dC4uLik7XG5cbiAgICAgIEBpZiBnZXQtZWRnZSgkc3BhbikgPT0gZmlyc3Qge1xuICAgICAgICBAaW5jbHVkZSBicmVhaztcbiAgICAgICAgQGluY2x1ZGUgZmlyc3QoJHNwYW4pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIC8vIEluZGl2aWR1YWwgTG9jYXRpb24gSW5jcmVtZW50XG4gICAgICAkbG9jYXRpb246IGdldC1sb2NhdGlvbigkc3BhbikgKyAkbjtcbiAgICAgICRsb2NhdGlvbjogaWYoJGxvY2F0aW9uID4gJGNvbnRleHQsIDEsICRsb2NhdGlvbik7XG4gICAgICAkc3BhbjogbWFwLW1lcmdlKCRzcGFuLCAobG9jYXRpb246ICRsb2NhdGlvbikpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUm93IFN0YXJ0ICYgRW5kXG4vLyA9PT09PT09PT09PT09PT1cblxuLy8gQnJlYWtcbi8vIC0tLS0tXG4vLyBBcHBseSB0byBhbnkgZWxlbWVudCB0aGF0IHNob3VsZCBmb3JjZSBhIGxpbmUgYnJlYWsuXG5AbWl4aW4gYnJlYWsge1xuICBAaW5jbHVkZSBvdXRwdXQoKGNsZWFyOiBib3RoKSk7XG59XG5cblxuLy8gTm9CcmVha1xuLy8gLS0tLS0tLVxuLy8gQ2FuY2VsIHRoZSBicmVhaygpIGVmZmVjdCwgZS5nLiB3aGVuIHVzaW5nIG1lZGlhIHF1ZXJpZXMuXG5AbWl4aW4gbm9icmVhayB7XG4gIEBpbmNsdWRlIG91dHB1dCgoY2xlYXI6IG5vbmUpKTtcbn1cblxuXG4vLyBGdWxsXG4vLyAtLS0tXG4vLyAtIFskY29udGV4dF06IDxsYXlvdXQgc2hvcnRoYW5kPlxuQG1peGluIGZ1bGwoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0IDogJGNvbnRleHQ7XG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChmdWxsLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIHNwYW4oZnVsbCBvZiBwYXJzZS1ncmlkKCRjb250ZXh0KSBicmVhayk7XG59XG5cblxuLy8gRmlyc3Rcbi8vIC0tLS0tXG4vLyAtIFskY29udGV4dF06IDxzZXR0aW5ncz5cbkBtaXhpbiBmaXJzdChcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGluc3BlY3QgIDogJGNvbnRleHQ7XG4gICRjb250ZXh0ICA6IHBhcnNlLWdyaWQoJGNvbnRleHQpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkY29udGV4dCk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGZpcnN0LCAkaW5zcGVjdCk7XG4gIEBpZiBub3QoaXMtc3BsaXQoJGNvbnRleHQpKSB7XG4gICAgQGluY2x1ZGUgZmxvYXQtZmlyc3QoJGZsb3cpO1xuICB9XG59XG5cbkBtaXhpbiBhbHBoYShcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgQGluY2x1ZGUgZmlyc3QoJGNvbnRleHQpO1xufVxuXG5cbi8vIExhc3Rcbi8vIC0tLS1cbi8vIC0gWyRjb250ZXh0XTogPHNldHRpbmdzPlxuQG1peGluIGxhc3QoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0ICA6ICRjb250ZXh0O1xuICAkY29udGV4dCAgOiBwYXJzZS1ncmlkKCRjb250ZXh0KTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QobGFzdCwgJGluc3BlY3QpO1xuXG4gICRvdXRwdXQ6IChcbiAgICBmbG93OiBzdXN5LWdldChmbG93LCAkY29udGV4dCksXG4gICAgbGFzdC1mbG93OiBzdXN5LWdldChsYXN0LWZsb3csICRjb250ZXh0KSxcbiAgICBtYXJnaW46IGlmKGlzLXNwbGl0KCRjb250ZXh0KSwgbnVsbCwgMCksXG4gICk7XG5cbiAgQGluY2x1ZGUgZmxvYXQtbGFzdCgkb3V0cHV0Li4uKTtcbn1cblxuQG1peGluIG9tZWdhKFxuICAkY29udGV4dDogJHN1c3lcbikge1xuICBAaW5jbHVkZSBsYXN0KCRjb250ZXh0KTtcbn1cblxuXG4vLyBHZXQgRWRnZVxuLy8gLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSBlZGdlIHZhbHVlIGJhc2VkIG9uIGxvY2F0aW9uLCBpZiBwb3NzaWJsZVxuQGZ1bmN0aW9uIGdldC1lZGdlKFxuICAkc3BhblxuKSB7XG4gICRzcGFuICAgICAgIDogcGFyc2Utc3Bhbigkc3Bhbik7XG4gICRlZGdlICAgICAgIDogc3VzeS1nZXQoZWRnZSwgJHNwYW4pO1xuXG4gIEBpZiBub3QoJGVkZ2UpIHtcbiAgICAkY291bnQ6IHN1c3ktY291bnQoc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pKTtcbiAgICAkbG9jYXRpb246IHN1c3ktZ2V0KGxvY2F0aW9uLCAkc3Bhbik7XG4gICAgJG46IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcblxuICAgICRudW1iZXI6IGlmKHR5cGUtb2YoJGxvY2F0aW9uKSA9PSBudW1iZXIsIHRydWUsIGZhbHNlKTtcbiAgICAkaW5kZXg6IGlmKCRudW1iZXIgYW5kIHVuaXRsZXNzKCRsb2NhdGlvbiksIHRydWUsIGZhbHNlKTtcblxuICAgIEBpZiAkbiA9PSAkY291bnQge1xuICAgICAgJGVkZ2U6IGZ1bGw7XG4gICAgfSBAZWxzZSBpZiAkbG9jYXRpb24gYW5kICRuIGFuZCAkaW5kZXgge1xuICAgICAgQGlmICRsb2NhdGlvbiA9PSAxIHtcbiAgICAgICAgJGVkZ2U6IGlmKCRuID09ICRjb3VudCwgZnVsbCwgZmlyc3QpO1xuICAgICAgfSBAZWxzZSBpZiAkbG9jYXRpb24gKyAkbiAtIDEgPT0gJGNvdW50IHtcbiAgICAgICAgJGVkZ2U6IGxhc3Q7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlZGdlID09IGFscGhhIG9yICRlZGdlID09IG9tZWdhIHtcbiAgICAkZWRnZTogaWYoJGVkZ2UgPT0gYWxwaGEsIGZpcnN0LCBsYXN0KTtcbiAgfVxuXG4gIEByZXR1cm4gJGVkZ2U7XG59XG5cblxuLy8gR2V0IExvY2F0aW9uXG4vLyAtLS0tLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSBsb2NhdGlvbiB2YWx1ZSBiYXNlZCBvbiBlZGdlLCBpZiBwb3NzaWJsZVxuQGZ1bmN0aW9uIGdldC1sb2NhdGlvbihcbiAgJHNwYW5cbikge1xuICAkc3BhbiAgICAgICA6IHBhcnNlLXNwYW4oJHNwYW4pO1xuICAkbG9jYXRpb24gICA6IHN1c3ktZ2V0KGxvY2F0aW9uLCAkc3Bhbik7XG4gICRlZGdlICAgICAgIDogZ2V0LWVkZ2UoJHNwYW4pO1xuICAkbiAgICAgICAgICA6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcblxuICBAaWYgJGVkZ2UgYW5kIG5vdCgkbG9jYXRpb24pIGFuZCB0eXBlLW9mKCRuKSA9PSBudW1iZXIgYW5kIHVuaXRsZXNzKCRuKSB7XG4gICAgQGlmICRlZGdlID09IGZpcnN0IHtcbiAgICAgICRsb2NhdGlvbjogMTtcbiAgICB9IEBlbHNlIGlmICRlZGdlID09IGxhc3Qge1xuICAgICAgJGxvY2F0aW9uOiBzdXN5LWNvdW50KHN1c3ktZ2V0KGNvbHVtbnMsICRzcGFuKSkgLSAkbiArIDE7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbG9jYXRpb25cbn1cbiIsIi8vIE1hcmdpbiBTeW50YXhcbi8vID09PT09PT09PT09PT1cblxuLy8gUHJlXG4vLyAtLS1cbi8vIEFkZCBzcGFubmluZy1tYXJnaW5zIGJlZm9yZSBhbiBlbGVtZW50LlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBtaXhpbiBwcmUoXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3Q6ICRzcGFuO1xuICAkc3BhbiAgIDogbWFwLW1lcmdlKChzcHJlYWQ6IHdpZGUpLCBwYXJzZS1zcGFuKCRzcGFuKSk7XG4gICRmbG93ICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG4gICRzcGxpdCAgOiBpZihzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKSA9PSBzcGxpdCwgdHJ1ZSwgZmFsc2UpO1xuICAkZ3V0dGVyIDogZ3V0dGVyKCRzcGFuKTtcbiAgJHNwYW4gICA6IHNwYW4oJHNwYW4pO1xuICAkd2lkdGggIDogaWYoJHNwbGl0IGFuZCAkZ3V0dGVyLCAkc3BhbiArICRndXR0ZXIsICRzcGFuKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QocHJlLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIG1hcmdpbi1vdXRwdXQoJHdpZHRoLCBudWxsLCAkZmxvdyk7XG59XG5cbi8vIFBvc3Rcbi8vIC0tLS1cbi8vIEFkZCBzcGFubmluZy1tYXJnaW5zIGFmdGVyIGFuIGVsZW1lbnQuXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHBvc3QoXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3QgIDogJHNwYW47XG4gICRzcGFuICAgICA6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3Bhbigkc3BhbikpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG4gICRzcGxpdCAgICA6IGlmKHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pID09IHNwbGl0LCB0cnVlLCBmYWxzZSk7XG4gICR3aWR0aCAgICA6IGlmKCRzcGxpdCwgc3Bhbigkc3BhbikgKyBndXR0ZXIoJHNwYW4pLCBzcGFuKCRzcGFuKSk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHBvc3QsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgbWFyZ2luLW91dHB1dChudWxsLCAkd2lkdGgsICRmbG93KTtcbn1cblxuLy8gUHVzaFxuLy8gLS0tLVxuLy8gU2ltcGxlIHN5bm9ueW1uIGZvciBwcmUuXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHB1c2goXG4gICRzcGFuXG4pIHtcbiAgQGluY2x1ZGUgcHJlKCRzcGFuKTtcbn1cblxuLy8gUHVsbFxuLy8gLS0tLVxuLy8gQWRkIG5lZ2F0aXZlIHNwYW5uaW5nLW1hcmdpbnMgYmVmb3JlIGFuIGVsZW1lbnQuXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHB1bGwoXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3QgIDogJHNwYW47XG4gICRzcGFuICAgICA6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3Bhbigkc3BhbikpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG4gICRzcGxpdCAgICA6IGlmKHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pID09IHNwbGl0LCB0cnVlLCBmYWxzZSk7XG4gICR3aWR0aCAgICA6IGlmKCRzcGxpdCwgMCAtIHNwYW4oJHNwYW4pICsgZ3V0dGVyKCRzcGFuKSwgMCAtIHNwYW4oJHNwYW4pKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QocHVsbCwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBtYXJnaW4tb3V0cHV0KCR3aWR0aCwgbnVsbCwgJGZsb3cpO1xufVxuXG4vLyBTcXVpc2hcbi8vIC0tLS0tLVxuLy8gQWRkIHNwYW5uaW5nLW1hcmdpbnMgYmVmb3JlIGFuZCBhZnRlciBhbiBlbGVtZW50LlxuLy8gLSAkcHJlICAgICA6IDxzcGFuPlxuLy8gLSBbJHBvc3RdICA6IDxzcGFuPlxuQG1peGluIHNxdWlzaChcbiAgJHByZSxcbiAgJHBvc3Q6IGZhbHNlXG4pIHtcbiAgJGluc3BlY3QgICAgICA6ICgkcHJlLCAkcG9zdCk7XG4gICRwcmUgICAgICAgICAgOiBtYXAtbWVyZ2UoKHNwcmVhZDogd2lkZSksIHBhcnNlLXNwYW4oJHByZSkpO1xuXG4gIEBpZiAkcG9zdCB7XG4gICAgJHBvc3Q6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3BhbigkcG9zdCkpO1xuICB9IEBlbHNlIHtcbiAgICAkc3Bhbjogc3VzeS1nZXQoc3BhbiwgJHByZSk7XG4gICAgQGlmIGxlbmd0aCgkc3BhbikgPiAxIHtcbiAgICAgICRwcmU6IG1hcC1tZXJnZSgkcHJlLCAoc3BhbjogbnRoKCRzcGFuLCAxKSkpO1xuICAgICAgJHBvc3Q6IG1hcC1tZXJnZSgkcHJlLCAoc3BhbjogbnRoKCRzcGFuLCAyKSkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHBvc3Q6ICRwcmU7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHNxdWlzaCwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBwcmUoJHByZSk7XG4gIEBpbmNsdWRlIHBvc3QoJHBvc3QpO1xufVxuIiwiLy8gUGFkZGluZyBTeW50YXhcbi8vID09PT09PT09PT09PT09XG5cbi8vIFByZWZpeFxuLy8gLS0tLS0tXG4vLyBBZGQgc3Bhbm5pbmctcGFkZGluZyBiZWZvcmUgYW4gZWxlbWVudC5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AbWl4aW4gcHJlZml4KFxuICAkc3BhblxuKSB7XG4gICRpbnNwZWN0ICA6ICRzcGFuO1xuICAkc3BhbiAgICAgOiBtYXAtbWVyZ2UoKHNwcmVhZDogd2lkZSksIHBhcnNlLXNwYW4oJHNwYW4pKTtcbiAgJGZsb3cgICAgIDogc3VzeS1nZXQoZmxvdywgJHNwYW4pO1xuICAkd2lkdGggICAgOiBzcGFuKCRzcGFuKTtcblxuICBAaWYgaXMtaW5zaWRlKCRzcGFuKSB7XG4gICAgJGd1dHRlcjogZ3V0dGVyKCRzcGFuKTtcbiAgICAkd2lkdGg6IGlmKCRndXR0ZXIgYW5kIGNvbXBhcmFibGUoJHdpZHRoLCAkZ3V0dGVyKSwgJHdpZHRoICsgJGd1dHRlciwgJHdpZHRoKTtcbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChwcmVmaXgsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgcGFkZGluZy1vdXRwdXQoJHdpZHRoLCBudWxsLCAkZmxvdyk7XG59XG5cbi8vIFN1ZmZpeFxuLy8gLS0tLS0tXG4vLyBBZGQgc3Bhbm5pbmctcGFkZGluZyBhZnRlciBhbiBlbGVtZW50LlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBtaXhpbiBzdWZmaXgoXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3QgIDogJHNwYW47XG4gICRzcGFuICAgICA6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3Bhbigkc3BhbikpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG4gICR3aWR0aCAgICA6IHNwYW4oJHNwYW4pO1xuXG4gIEBpZiBpcy1pbnNpZGUoJHNwYW4pIHtcbiAgICAkZ3V0dGVyOiBndXR0ZXIoJHNwYW4pO1xuICAgICR3aWR0aDogaWYoJGd1dHRlciBhbmQgY29tcGFyYWJsZSgkd2lkdGgsICRndXR0ZXIpLCAkd2lkdGggKyAkZ3V0dGVyLCAkd2lkdGgpO1xuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHN1ZmZpeCwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBwYWRkaW5nLW91dHB1dChudWxsLCAkd2lkdGgsICRmbG93KTtcbn1cblxuLy8gUGFkXG4vLyAtLS1cbi8vIEFkZCBzcGFubmluZy1wYWRkaW5nIGJlZm9yZSBhbmQgYWZ0ZXIgYW4gZWxlbWVudC5cbi8vIC0gJHByZSAgICAgOiA8c3Bhbj5cbi8vIC0gWyRwb3N0XSAgOiA8c3Bhbj5cbkBtaXhpbiBwYWQoXG4gICRwcmUsXG4gICRwb3N0OiBmYWxzZVxuKSB7XG4gICRpbnNwZWN0ICA6ICgkcHJlLCAkcG9zdCk7XG4gICRwcmUgICAgICA6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3BhbigkcHJlKSk7XG5cbiAgQGlmICRwb3N0IHtcbiAgICAkcG9zdDogbWFwLW1lcmdlKChzcHJlYWQ6IHdpZGUpLCBwYXJzZS1zcGFuKCRwb3N0KSk7XG4gIH0gQGVsc2Uge1xuICAgICRzcGFuOiBzdXN5LWdldChzcGFuLCAkcHJlKTtcbiAgICBAaWYgbGVuZ3RoKCRzcGFuKSA+IDEge1xuICAgICAgJHByZTogbWFwLW1lcmdlKCRwcmUsIChzcGFuOiBudGgoJHNwYW4sIDEpKSk7XG4gICAgICAkcG9zdDogbWFwLW1lcmdlKCRwcmUsIChzcGFuOiBudGgoJHNwYW4sIDIpKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcG9zdDogJHByZTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QocGFkLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIHByZWZpeCgkcHJlKTtcbiAgQGluY2x1ZGUgc3VmZml4KCRwb3N0KTtcblxufVxuIiwiLy8gQmxlZWQgU3ludGF4XG4vLyA9PT09PT09PT09PT1cblxuLy8gQmxlZWRcbi8vIC0tLS0tXG4vLyBBZGQgbmVnYXRpdmUgbWFyZ2lucywgYW5kIGVxdWFsIHBvc2l0aXZlIHBhZGRpbmcgdG8gY3JlYXRlIGJsZWVkLlxuLy8gLSAkYmxlZWQgIDogPHNwYW4+XG5AbWl4aW4gYmxlZWQoXG4gICRibGVlZDogMCBndXR0ZXIoKVxuKSB7XG4gICRpbnNwZWN0ICA6ICRibGVlZDtcbiAgJG91dHB1dCAgIDogZ2V0LWJsZWVkKCRibGVlZCk7XG5cbiAgQGlmIHN1c3ktZ2V0KGdsb2JhbC1ib3gtc2l6aW5nKSAhPSBjb250ZW50LWJveCB7XG4gICAgJG91dHB1dDogbWFwLW1lcmdlKChib3gtc2l6aW5nOiBjb250ZW50LWJveCksICRvdXRwdXQpO1xuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGJsZWVkLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIG91dHB1dCgkb3V0cHV0KTtcbn1cblxuXG4vLyBCbGVlZC14XG4vLyAtLS0tLS0tXG4vLyBTaG9ydGN1dCBmb3IgaG9yaXpvbnRhbCBibGVlZC5cbi8vIC0gJGJsZWVkICA6IDxzcGFuPlxuQG1peGluIGJsZWVkLXgoXG4gICRibGVlZDogZ3V0dGVyKClcbikge1xuICAkYmxlZWQgIDogcGFyc2Utc3BhbigkYmxlZWQpO1xuICAkdHJibCAgIDogc3VzeS1nZXQoc3BhbiwgJGJsZWVkKTtcblxuICBAaWYgbGVuZ3RoKCR0cmJsKSA9PSAxIHtcbiAgICAkYmxlZWQ6IG1hcC1tZXJnZSgkYmxlZWQsIChzcGFuOiAwIG50aCgkdHJibCwgMSkpKTtcbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHRyYmwpID09IDIge1xuICAgICRibGVlZDogbWFwLW1lcmdlKCRibGVlZCwgKHNwYW46IDAgbnRoKCR0cmJsLCAyKSAwIG50aCgkdHJibCwgMSkpKTtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gJ2JsZWVkLXggb25seSB0YWtlcyAyIGxlbmd0aHMsIGJ1dCAje2xlbmd0aCgkdHJibCl9IHdlcmUgcGFzc2VkLic7XG4gIH1cblxuICBAaW5jbHVkZSBibGVlZCgkYmxlZWQpO1xufVxuXG5cbi8vIEJsZWVkLXlcbi8vIC0tLS0tLS1cbi8vIFNob3J0Y3V0IGZvciB2ZXJ0aWNhbCBibGVlZC5cbi8vIC0gJGJsZWVkICA6IDxzcGFuPlxuQG1peGluIGJsZWVkLXkoXG4gICRibGVlZDogaWYoZnVuY3Rpb24tZXhpc3RzKHJoeXRobSksIHJoeXRobSgxKSwgMWVtKVxuKSB7XG4gICRibGVlZCAgOiBwYXJzZS1zcGFuKCRibGVlZCk7XG4gICR0cmJsICAgOiBzdXN5LWdldChzcGFuLCAkYmxlZWQpO1xuXG4gIEBpZiBsZW5ndGgoJHRyYmwpID09IDEge1xuICAgICRibGVlZDogbWFwLW1lcmdlKCRibGVlZCwgKHNwYW46IG50aCgkdHJibCwgMSkgMCkpO1xuICB9IEBlbHNlIGlmIGxlbmd0aCgkdHJibCkgPT0gMiB7XG4gICAgJGJsZWVkOiBtYXAtbWVyZ2UoJGJsZWVkLCAoc3BhbjogbnRoKCR0cmJsLCAxKSAwIG50aCgkdHJibCwgMikgMCkpO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiAnYmxlZWQteSBvbmx5IHRha2VzIDIgbGVuZ3RocywgYnV0ICN7bGVuZ3RoKCR0cmJsKX0gd2VyZSBwYXNzZWQuJztcbiAgfVxuXG4gIEBpbmNsdWRlIGJsZWVkKCRibGVlZCk7XG59XG5cblxuLy8gR2V0IEJsZWVkXG4vLyAtLS0tLS0tLS1cbi8vIFJldHVybiBibGVlZCBvdXRwdXQgdmFsdWVzXG4vLyAtICRibGVlZDogPHNwYW4+XG5AZnVuY3Rpb24gZ2V0LWJsZWVkKFxuICAkYmxlZWRcbikge1xuICAkYmxlZWQgICAgOiBtYXAtbWVyZ2UoKHNwcmVhZDogd2lkZSksIHBhcnNlLXNwYW4oJGJsZWVkKSk7XG4gICR0cmJsICAgICA6IHN1c3ktZ2V0KHNwYW4sICRibGVlZCk7XG4gICRzaG9ydCAgICA6IG51bGw7XG4gICRvdXRwdXQgICA6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCR0cmJsKSB7XG4gICAgJHRoaXM6IG50aCgkdHJibCwgJGkpO1xuICAgICRuZXc6ICgpO1xuICAgICRtYXJnaW46IG51bGw7XG4gICAgJHBhZGRpbmc6IG51bGw7XG4gICAgJHBhZGRpbmcteDogbnVsbDtcblxuICAgIEBpZiAkdGhpcyA+IDAge1xuICAgICAgJHRoaXM6IG1hcC1tZXJnZSgkYmxlZWQsIChzcGFuOiAkdGhpcykpO1xuICAgICAgJG1hcmdpbjogc3BhbigkdGhpcyk7XG4gICAgICAkcGFkZGluZzogJG1hcmdpbjtcbiAgICAgICRwYWRkaW5nLXg6ICRwYWRkaW5nO1xuICAgIH1cblxuICAgIEBpZiAkbWFyZ2luIGFuZCAkbWFyZ2luID4gMCB7XG4gICAgICAkbWFyZ2luOiAtICRtYXJnaW47XG5cbiAgICAgIEBpZiBpcy1pbnNpZGUoJHRoaXMpIHtcbiAgICAgICAgJGd1dHRlcjogZ3V0dGVyKCR0aGlzKTtcbiAgICAgICAgJGpvaW46IGlmKCRndXR0ZXIgYW5kIGNvbXBhcmFibGUoJHBhZGRpbmcsICRndXR0ZXIpLCB0cnVlLCBmYWxzZSk7XG4gICAgICAgICRwYWRkaW5nLXg6IGlmKCRqb2luIGFuZCAkcGFkZGluZyA+IDAsICRwYWRkaW5nICsgJGd1dHRlciwgJHBhZGRpbmcpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICRuZXc6IChcbiAgICAgICAgbWFyZ2luLXRvcDogJG1hcmdpbixcbiAgICAgICAgcGFkZGluZy10b3A6ICRwYWRkaW5nLFxuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW4sXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nLXgsXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW4sXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZyxcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW4sXG4gICAgICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmcteCxcbiAgICAgICk7XG4gICAgfSBAZWxzZSBpZiAkaSA9PSAyIHtcbiAgICAgICRuZXc6IChcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luLFxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZy14LFxuICAgICAgICBtYXJnaW4tbGVmdDogJG1hcmdpbixcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZy14LFxuICAgICAgKTtcbiAgICB9IEBlbHNlIGlmICRpID09IDMge1xuICAgICAgJG5ldzogKFxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLFxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmcsXG4gICAgICApO1xuICAgIH0gQGVsc2UgaWYgJGkgPT0gNCB7XG4gICAgICAkbmV3OiAoXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luLFxuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nLXgsXG4gICAgICApO1xuICAgIH1cblxuICAgICRvdXRwdXQ6IG1hcC1tZXJnZSgkb3V0cHV0LCAkbmV3KTtcbiAgfVxuXG4gIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJG91dHB1dCB7XG4gICAgJG91dHB1dDogaWYoJHZhbHVlID09IDAsIG1hcC1tZXJnZSgkb3V0cHV0LCAoJHByb3A6IG51bGwpKSwgJG91dHB1dCk7XG4gIH1cblxuICBAcmV0dXJuIGJsZWVkLXNob3J0aGFuZCgkb3V0cHV0KTtcbn1cblxuLy8gQmxlZWQgU2hvcnRoYW5kXG4vLyAtLS0tLS0tLS0tLS0tLS1cbi8vIENvbnZlcnQgYmxlZWQgb3V0cHV0IGludG8gc2hvcnRoYW5kIHdoZW4gcG9zc2libGUuXG4vLyAtICRibGVlZDogPG91dHB1dCBtYXA+XG5AZnVuY3Rpb24gYmxlZWQtc2hvcnRoYW5kKFxuICAkYmxlZWRcbikge1xuICAkbWFyZ2luOiAoKTtcbiAgJHBhZGRpbmc6ICgpO1xuICAkcmV0dXJuOiAoKTtcblxuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGJsZWVkIHtcbiAgICBAaWYgc3RyLWluZGV4KCRrZXksIG1hcmdpbikge1xuICAgICAgJG1hcmdpbjogbWFwLW1lcmdlKCRtYXJnaW4sICgka2V5OiAkdmFsdWUpKTtcbiAgICB9IEBlbHNlIGlmIHN0ci1pbmRleCgka2V5LCBwYWRkaW5nKSA+IDAge1xuICAgICAgJHBhZGRpbmc6IG1hcC1tZXJnZSgkcGFkZGluZywgKCRrZXk6ICR2YWx1ZSkpO1xuICAgIH1cbiAgfVxuXG4gICRwcm9wczogKFxuICAgIG1hcmdpbjogJG1hcmdpbixcbiAgICBwYWRkaW5nOiAkcGFkZGluZyxcbiAgKTtcblxuICBAZWFjaCAkbmFtZSwgJG1hcCBpbiAkcHJvcHMge1xuICAgICRmb3VyOiBpZihsZW5ndGgobWFwLWtleXMoJG1hcCkpID09IDQsIHRydWUsIGZhbHNlKTtcbiAgICAkbnVsbDogaWYoaW5kZXgobWFwLXZhbHVlcygkbWFwKSwgbnVsbCksIHRydWUsIGZhbHNlKTtcblxuICAgIEBpZiAkZm91ciBhbmQgbm90KCRudWxsKSB7XG4gICAgICAkdG9wOiBtYXAtZ2V0KCRtYXAsICcjeyRuYW1lfS10b3AnKTtcbiAgICAgICRyaWdodDogbWFwLWdldCgkbWFwLCAnI3skbmFtZX0tcmlnaHQnKTtcbiAgICAgICRib3R0b206IG1hcC1nZXQoJG1hcCwgJyN7JG5hbWV9LWJvdHRvbScpO1xuICAgICAgJGxlZnQ6IG1hcC1nZXQoJG1hcCwgJyN7JG5hbWV9LWxlZnQnKTtcblxuICAgICAgJHRiOiBpZigkdG9wID09ICRib3R0b20sICR0b3AsIG51bGwpO1xuICAgICAgJHJsOiBpZigkcmlnaHQgPT0gJGxlZnQsICRyaWdodCwgbnVsbCk7XG4gICAgICAkYWxsOiBpZigkdGIgPT0gJHJsLCAkdGIsIG51bGwpO1xuXG4gICAgICAkbmV3OiBpZigkYWxsLCAkYWxsLCBudWxsKTtcblxuICAgICAgQGlmIG5vdCgkbmV3KSB7XG4gICAgICAgIEBpZiAkdGIgYW5kICRybCB7XG4gICAgICAgICAgJG5ldzogJHRiICRybDtcbiAgICAgICAgfSBAZWxzZSBpZiAkcmwge1xuICAgICAgICAgICRuZXc6ICR0b3AgJHJsICRib3R0b207XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICRuZXc6ICR0b3AgJHJpZ2h0ICRib3R0b20gJGxlZnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJHJldHVybjogbWFwLW1lcmdlKCRyZXR1cm4sICgkbmFtZTogJG5ldykpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHJldHVybjogbWFwLW1lcmdlKCRyZXR1cm4sICRtYXApO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHJldHVybjtcbn1cbiIsIi8vIEJyZWFrcG9pbnQgSW50ZWdyYXRpb25cbi8vID09PT09PT09PT09PT09PT09PT09PT1cblxuJHN1c3ktbWVkaWE6ICgpICFkZWZhdWx0O1xuJHN1c3ktbWVkaWEtZmFsbGJhY2s6IGZhbHNlICFkZWZhdWx0O1xuXG4kX3N1c3ktbWVkaWEtY29udGV4dDogKCk7XG5cblxuLy8gU3VzeSBCcmVha3BvaW50XG4vLyAtLS0tLS0tLS0tLS0tLS1cbi8vIENoYW5nZSBncmlkcyBhdCBkaWZmZXJlbnQgbWVkaWEgcXVlcnkgYnJlYWtwb2ludHMuXG4vLyAtICRxdWVyeSAgICAgOiA8bWluLXdpZHRoPiBbPG1heC13aWR0aD5dIHwgPHByb3BlcnR5PiA8dmFsdWU+IHwgPG1hcD5cbi8vIC0gJGxheW91dCAgICA6IDxzZXR0aW5ncz5cbi8vIC0gJG5vLXF1ZXJ5ICA6IDxib29sZWFuPiB8IDxzZWxlY3Rvcj5cbkBtaXhpbiBzdXN5LWJyZWFrcG9pbnQoXG4gICRxdWVyeSxcbiAgJGxheW91dDogZmFsc2UsXG4gICRuby1xdWVyeTogJHN1c3ktbWVkaWEtZmFsbGJhY2tcbikge1xuICBAaW5jbHVkZSBzdXN5LW1lZGlhLXJvdXRlcigkcXVlcnksICRuby1xdWVyeSkge1xuICAgIEBpZiAkbGF5b3V0IHtcbiAgICAgIEBpbmNsdWRlIHdpdGgtbGF5b3V0KCRsYXlvdXQpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTdXN5IE1lZGlhXG4vLyAtLS0tLS0tLS0tXG4vLyAtICRxdWVyeTogPG1pbi13aWR0aD4gWzxtYXgtd2lkdGg+XSB8IDxwcm9wZXJ0eT4gPHZhbHVlPlxuLy8gLSAkbm8tcXVlcnk6IDxib29sZWFuPiB8IDxzZWxlY3Rvcj5cbkBtaXhpbiBzdXN5LW1lZGlhKFxuICAkcXVlcnksXG4gICRuby1xdWVyeTogJHN1c3ktbWVkaWEtZmFsbGJhY2tcbikge1xuICAkb2xkLWNvbnRleHQ6ICRfc3VzeS1tZWRpYS1jb250ZXh0O1xuICAkbmFtZTogaWYobWFwLWhhcy1rZXkoJHN1c3ktbWVkaWEsICRxdWVyeSksICRxdWVyeSwgbnVsbCk7XG4gICRxdWVyeTogc3VzeS1nZXQtbWVkaWEoJHF1ZXJ5KTtcbiAgJHF1ZXJ5OiBzdXN5LXBhcnNlLW1lZGlhKCRxdWVyeSk7XG5cbiAgQGluY2x1ZGUgc3VzeS1tZWRpYS1jb250ZXh0KCRxdWVyeSwgJG5hbWUpO1xuXG4gIEBpZiAkbm8tcXVlcnkgYW5kIHR5cGUtb2YoJG5vLXF1ZXJ5KSAhPSBzdHJpbmcge1xuICAgIEBjb250ZW50O1xuICB9IEBlbHNlIHtcbiAgICBAbWVkaWEgI3tzdXN5LXJlbmRlci1tZWRpYSgkcXVlcnkpfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaWYgdHlwZS1vZigkbm8tcXVlcnkpID09IHN0cmluZyB7XG4gICAgICAjeyRuby1xdWVyeX0gJiB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktbWVkaWEtY29udGV4dCgkb2xkLWNvbnRleHQsICRjbGVhbjogdHJ1ZSk7XG59XG5cblxuLy8gTWVkaWEgUm91dGVyXG4vLyAtLS0tLS0tLS0tLS1cbi8vIFJvdXQgbWVkaWEgYXJndW1lbnRzIHRvIHRoZSBjb3JyZWN0IG1peGluLlxuQG1peGluIHN1c3ktbWVkaWEtcm91dGVyKFxuICAkcXVlcnksXG4gICRuby1xdWVyeTogJHN1c3ktbWVkaWEtZmFsbGJhY2tcbikge1xuICBAaWYgc3VzeS1zdXBwb3J0KGJyZWFrcG9pbnQsIChtaXhpbjogYnJlYWtwb2ludCksICR3YXJuOiBmYWxzZSkge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnkpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgc3VzeS1tZWRpYSgkcXVlcnksICRuby1xdWVyeSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVXBkYXRlIENvbnRleHRcbi8vIC0tLS0tLS0tLS0tLS1cbi8vIFNldCB0aGUgbmV3IG1lZGlhIGNvbnRleHRcbkBtaXhpbiBzdXN5LW1lZGlhLWNvbnRleHQoXG4gICRxdWVyeSxcbiAgJG5hbWU6IG51bGwsXG4gICRjbGVhbjogZmFsc2Vcbikge1xuICAkcXVlcnk6IG1hcC1tZXJnZSgobmFtZTogJG5hbWUpLCAkcXVlcnkpO1xuXG4gIEBpZiAkY2xlYW4ge1xuICAgICRfc3VzeS1tZWRpYS1jb250ZXh0OiAkcXVlcnkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJF9zdXN5LW1lZGlhLWNvbnRleHQ6IG1hcC1tZXJnZSgkX3N1c3ktbWVkaWEtY29udGV4dCwgJHF1ZXJ5KSAhZ2xvYmFsO1xuICB9XG59XG5cblxuLy8gTWVkaWEgQ29udGV4dFxuLy8gLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHRoZSBmdWxsIG1lZGlhIGNvbnRleHQsIG9yIGEgc2luZ2xlIG1lZGlhIHByb3BlcnR5IChlLmcuIG1pbi13aWR0aClcbkBmdW5jdGlvbiBzdXN5LW1lZGlhLWNvbnRleHQoXG4gICRwcm9wZXJ0eTogZmFsc2Vcbikge1xuICBAaWYgJHByb3BlcnR5IHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJF9zdXN5LW1lZGlhLWNvbnRleHQsICRwcm9wZXJ0eSk7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJF9zdXN5LW1lZGlhLWNvbnRleHQ7XG4gIH1cbn1cblxuXG4vLyBHZXQgTWVkaWFcbi8vIC0tLS0tLS0tLVxuLy8gUmV0dXJuIGEgbmFtZWQgbWVkaWEtcXVlcnkgZnJvbSAkc3VzeS1tZWRpYS5cbi8vIC0gJG5hbWU6IDxrZXk+XG5AZnVuY3Rpb24gc3VzeS1nZXQtbWVkaWEoXG4gICRuYW1lXG4pIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRzdXN5LW1lZGlhLCAkbmFtZSkge1xuICAgICRtYXAtdmFsdWU6IG1hcC1nZXQoJHN1c3ktbWVkaWEsICRuYW1lKTtcbiAgICBAaWYgKCRuYW1lID09ICRtYXAtdmFsdWUpIHtcbiAgICAgICRuYW1lOiAkbWFwLXZhbHVlO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJG5hbWU6IHN1c3ktZ2V0LW1lZGlhKCRtYXAtdmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5hbWU7XG59XG5cblxuLy8gUmVuZGVyIE1lZGlhXG4vLyAtLS0tLS0tLS0tLS1cbi8vIEJ1aWxkIGEgbWVkaWEtcXVlcnkgc3RyaW5nIGZyb20gdmFyaW91cyBtZWRpYSBzZXR0aW5nc1xuQGZ1bmN0aW9uIHN1c3ktcmVuZGVyLW1lZGlhKFxuICAkcXVlcnlcbikge1xuICAkb3V0cHV0OiBudWxsO1xuICBAZWFjaCAkcHJvcGVydHksICR2YWx1ZSBpbiAkcXVlcnkge1xuICAgICRzdHJpbmc6IG51bGw7XG5cbiAgICBAaWYgJHByb3BlcnR5ID09IG1lZGlhIHtcbiAgICAgICRzdHJpbmc6ICR2YWx1ZTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRzdHJpbmc6ICcoI3skcHJvcGVydHl9OiAjeyR2YWx1ZX0pJztcbiAgICB9XG5cbiAgICAkb3V0cHV0OiBpZigkb3V0cHV0LCAnI3skb3V0cHV0fSBhbmQgI3skc3RyaW5nfScsICRzdHJpbmcpO1xuICB9XG5cbiAgQHJldHVybiAkb3V0cHV0O1xufVxuXG5cbi8vIFBhcnNlIE1lZGlhXG4vLyAtLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHBhcnNlZCBtZWRpYS1xdWVyeSBzZXR0aW5ncyBiYXNlZCBvbiBzaG9ydGhhbmRcbkBmdW5jdGlvbiBzdXN5LXBhcnNlLW1lZGlhKFxuICAkcXVlcnlcbikge1xuICAkbXE6IG51bGw7XG4gIEBpZiB0eXBlLW9mKCRxdWVyeSkgPT0gbWFwIHtcbiAgICAkbXE6ICRxdWVyeTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCRxdWVyeSkgPT0gbnVtYmVyIHtcbiAgICAkbXE6IChtaW4td2lkdGg6ICRxdWVyeSk7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkcXVlcnkpID09IGxpc3QgYW5kIGxlbmd0aCgkcXVlcnkpID09IDIge1xuICAgIEBpZiB0eXBlLW9mKG50aCgkcXVlcnksIDEpKSA9PSBudW1iZXIge1xuICAgICAgJG1xOiAoXG4gICAgICAgIG1pbi13aWR0aDogbWluKCRxdWVyeS4uLiksXG4gICAgICAgIG1heC13aWR0aDogbWF4KCRxdWVyeS4uLiksXG4gICAgICApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJG1xOiAobnRoKCRxdWVyeSwgMSk6IG50aCgkcXVlcnksIDIpKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICRtcTogKG1lZGlhOiAnI3skcXVlcnl9Jyk7XG4gIH1cblxuICBAcmV0dXJuICRtcTtcbn1cbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gRGVmYXVsdCBWYXJpYWJsZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuJEJyZWFrcG9pbnQtU2V0dGluZ3M6IChcbiAgJ2RlZmF1bHQgbWVkaWEnOiBhbGwsXG4gICdkZWZhdWx0IGZlYXR1cmUnOiBtaW4td2lkdGgsXG4gICdkZWZhdWx0IHBhaXInOiB3aWR0aCxcblxuICAnZm9yY2UgYWxsIG1lZGlhIHR5cGUnOiBmYWxzZSxcbiAgJ3RvIGVtcyc6IGZhbHNlLFxuICAndHJhbnNmb3JtIHJlc29sdXRpb25zJzogdHJ1ZSxcblxuICAnbm8gcXVlcmllcyc6IGZhbHNlLFxuICAnbm8gcXVlcnkgZmFsbGJhY2tzJzogZmFsc2UsXG5cbiAgJ2Jhc2UgZm9udCBzaXplJzogMTZweCxcblxuICAnbGVnYWN5IHN5bnRheCc6IGZhbHNlXG4pO1xuXG4kYnJlYWtwb2ludDogKCkgIWRlZmF1bHQ7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gSW1wb3J0c1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AaW1wb3J0IFwiYnJlYWtwb2ludC9zZXR0aW5nc1wiO1xuQGltcG9ydCAnYnJlYWtwb2ludC9jb250ZXh0JztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvaGVscGVycyc7XG5AaW1wb3J0ICdicmVha3BvaW50L3BhcnNlcnMnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9uby1xdWVyeSc7XG5cbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcmVzcG9uZC10byc7XG5cbkBpbXBvcnQgXCJicmVha3BvaW50L2xlZ2FjeS1zZXR0aW5nc1wiO1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEJyZWFrcG9pbnQgTWl4aW5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5AbWl4aW4gYnJlYWtwb2ludCgkcXVlcnksICRuby1xdWVyeTogZmFsc2UpIHtcbiAgQGluY2x1ZGUgbGVnYWN5LXNldHRpbmdzLXdhcm5pbmc7XG5cbiAgLy8gUmVzZXQgY29udGV4dHNcbiAgQGluY2x1ZGUgcHJpdmF0ZS1icmVha3BvaW50LXJlc2V0LWNvbnRleHRzKCk7XG5cbiAgJGJyZWFrcG9pbnQ6IGJyZWFrcG9pbnQoJHF1ZXJ5LCBmYWxzZSk7XG5cbiAgJHF1ZXJ5LXN0cmluZzogbWFwLWdldCgkYnJlYWtwb2ludCwgJ3F1ZXJ5Jyk7XG4gICRxdWVyeS1mYWxsYmFjazogbWFwLWdldCgkYnJlYWtwb2ludCwgJ2ZhbGxiYWNrJyk7XG5cbiAgJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcjogbWFwLWdldCgkYnJlYWtwb2ludCwgJ2NvbnRleHQgaG9sZGVyJykgIWdsb2JhbDtcbiAgJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDogbWFwLWdldCgkYnJlYWtwb2ludCwgJ3F1ZXJ5IGNvdW50JykgIWdsb2JhbDtcblxuICAvLyBBbGxvdyBmb3IgYW4gYXMtbmVlZGVkIG92ZXJyaWRlIG9yIHVzYWdlIG9mIG5vIHF1ZXJ5IGZhbGxiYWNrLlxuICBAaWYgJG5vLXF1ZXJ5ICE9IGZhbHNlIHtcbiAgICAkcXVlcnktZmFsbGJhY2s6ICRuby1xdWVyeTtcbiAgfVxuXG4gIEBpZiAkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2Uge1xuICAgICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KCduby1xdWVyeScsICRxdWVyeS1mYWxsYmFjayk7XG4gIH1cblxuICAvLyBQcmludCBPdXQgUXVlcnkgU3RyaW5nXG4gIEBpZiBub3QgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJpZXMnKSB7XG4gICAgQG1lZGlhICN7JHF1ZXJ5LXN0cmluZ30ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgQGlmIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSAhPSBmYWxzZSBvciBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpID09IHRydWUge1xuXG4gICAgJHR5cGU6IHR5cGUtb2YoYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpKTtcbiAgICAkcHJpbnQ6IGZhbHNlO1xuXG4gICAgQGlmICgkdHlwZSA9PSAnYm9vbCcpIHtcbiAgICAgICRwcmludDogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2UgaWYgKCR0eXBlID09ICdzdHJpbmcnKSB7XG4gICAgICBAaWYgJHF1ZXJ5LWZhbGxiYWNrID09IGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSB7XG4gICAgICAgICRwcmludDogdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2UgaWYgKCR0eXBlID09ICdsaXN0Jykge1xuICAgICAgQGVhY2ggJHdyYXBwZXIgaW4gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICAgICAgQGlmICRxdWVyeS1mYWxsYmFjayA9PSAkd3JhcHBlciB7XG4gICAgICAgICAgJHByaW50OiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gV3JpdGUgRmFsbGJhY2tcbiAgICBAaWYgKCRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSkgYW5kICgkcHJpbnQgPT0gdHJ1ZSkge1xuICAgICAgJHR5cGUtZmFsbGJhY2s6IHR5cGUtb2YoJHF1ZXJ5LWZhbGxiYWNrKTtcblxuICAgICAgQGlmICgkdHlwZS1mYWxsYmFjayAhPSAnYm9vbCcpIHtcbiAgICAgICAgI3skcXVlcnktZmFsbGJhY2t9ICYge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHByaXZhdGUtYnJlYWtwb2ludC1yZXNldC1jb250ZXh0cygpO1xufVxuXG5cbkBtaXhpbiBtcSgkcXVlcnksICRuby1xdWVyeTogZmFsc2UpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkcXVlcnksICRuby1xdWVyeSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEhhcyBTZXR0aW5nXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBicmVha3BvaW50LWhhcygkc2V0dGluZykge1xuICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnQsICRzZXR0aW5nKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gR2V0IFNldHRpbmdzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBicmVha3BvaW50LWdldCgkc2V0dGluZykge1xuICBAaWYgYnJlYWtwb2ludC1oYXMoJHNldHRpbmcpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGJyZWFrcG9pbnQsICRzZXR0aW5nKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRCcmVha3BvaW50LVNldHRpbmdzLCAkc2V0dGluZyk7XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBTZXQgU2V0dGluZ3Ncbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtc2V0KCRzZXR0aW5nLCAkdmFsdWUpIHtcbiAgQGlmIChzdHItaW5kZXgoJHNldHRpbmcsICctJykgb3Igc3RyLWluZGV4KCRzZXR0aW5nLCAnXycpKSBhbmQgc3RyLWluZGV4KCRzZXR0aW5nLCAnICcpID09IG51bGwge1xuICAgIEB3YXJuIFwiV29yZHMgaW4gQnJlYWtwb2ludCBzZXR0aW5ncyBzaG91bGQgYmUgc2VwYXJhdGVkIGJ5IHNwYWNlcywgbm90IGRhc2hlcyBvciB1bmRlcnNjb3Jlcy4gUGxlYXNlIHJlcGxhY2UgZGFzaGVzIGFuZCB1bmRlcnNjb3JlcyBiZXR3ZWVuIHdvcmRzIHdpdGggc3BhY2VzLiBTZXR0aW5ncyB3aWxsIG5vdCB3b3JrIGFzIGV4cGVjdGVkIHVudGlsIGNoYW5nZWQuXCI7XG4gIH1cbiAgJGJyZWFrcG9pbnQ6IG1hcC1tZXJnZSgkYnJlYWtwb2ludCwgKCRzZXR0aW5nOiAkdmFsdWUpKSAhZ2xvYmFsO1xuICBAcmV0dXJuIHRydWU7XG59XG5cbkBtaXhpbiBicmVha3BvaW50LWNoYW5nZSgkc2V0dGluZywgJHZhbHVlKSB7XG4gICRicmVha3BvaW50LWNoYW5nZTogYnJlYWtwb2ludC1zZXQoJHNldHRpbmcsICR2YWx1ZSk7XG59XG5cbkBtaXhpbiBicmVha3BvaW50LXNldCgkc2V0dGluZywgJHZhbHVlKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQtY2hhbmdlKCRzZXR0aW5nLCAkdmFsdWUpO1xufVxuXG5AbWl4aW4gYmtwdC1jaGFuZ2UoJHNldHRpbmcsICR2YWx1ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50LWNoYW5nZSgkc2V0dGluZywgJHZhbHVlKTtcbn1cbkBtaXhpbiBia3B0LXNldCgkc2V0dGluZywgJHZhbHVlKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQtY2hhbmdlKCRzZXR0aW5nLCAkdmFsdWUpO1xufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFJlbW92ZSBTZXR0aW5nXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBicmVha3BvaW50LXJlc2V0KCRzZXR0aW5ncy4uLikge1xuICBAaWYgbGVuZ3RoKCRzZXR0aW5ncykgPT0gMSB7XG4gICAgJHNldHRpbmdzOiBudGgoJHNldHRpbmdzLCAxKTtcbiAgfVxuXG4gIEBlYWNoICRzZXR0aW5nIGluICRzZXR0aW5ncyB7XG4gICAgJGJyZWFrcG9pbnQ6IG1hcC1yZW1vdmUoJGJyZWFrcG9pbnQsICRzZXR0aW5nKSAhZ2xvYmFsO1xuICB9XG4gIEByZXR1cm4gdHJ1ZTtcbn1cblxuQG1peGluIGJyZWFrcG9pbnQtcmVzZXQoJHNldHRpbmdzLi4uKSB7XG4gICRicmVha3BvaW50LXJlc2V0OiBicmVha3BvaW50LXJlc2V0KCRzZXR0aW5ncyk7XG59XG5cbkBtaXhpbiBia3B0LXJlc2V0KCRzZXR0aW5ncy4uLikge1xuICAkYnJlYWtwb2ludC1yZXNldDogYnJlYWtwb2ludC1yZXNldCgkc2V0dGluZ3MpO1xufSIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUHJpdmF0ZSBCcmVha3BvaW50IFZhcmlhYmxlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiAoKTtcbiRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQ6IDAgIWRlZmF1bHQ7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBIYXMgQ29udGV4dFxuLy8gUmV0dXJucyB3aGV0aGVyIG9yIG5vdCB5b3UgYXJlIGluc2lkZSBhIEJyZWFrcG9pbnQgcXVlcnlcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaGFzLWNvbnRleHQoKSB7XG4gIEBpZiBsZW5ndGgoJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudCkge1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEJyZWFrcG9pbnQgR2V0IENvbnRleHRcbi8vICRmZWF0dXJlOiBJbnB1dCBmZWF0dXJlIHRvIGdldCBpdCdzIGN1cnJlbnQgTVEgY29udGV4dC4gUmV0dXJucyBmYWxzZSBpZiBubyBjb250ZXh0XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBicmVha3BvaW50LWdldC1jb250ZXh0KCRmZWF0dXJlKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyLCAkZmVhdHVyZSkge1xuICAgICRnZXQ6IG1hcC1nZXQoJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlciwgJGZlYXR1cmUpO1xuICAgIC8vIFNwZWNpYWwgaGFuZGxpbmcgb2Ygbm8tcXVlcnkgZnJvbSBnZXQgc2lkZSBzbyAvZmFsc2UvIHByZXBlbmRzIGFyZW4ndCByZXR1cm5lZFxuICAgIEBpZiAkZmVhdHVyZSA9PSAnbm8tcXVlcnknIHtcbiAgICAgIEBpZiB0eXBlLW9mKCRnZXQpID09ICdsaXN0JyBhbmQgbGVuZ3RoKCRnZXQpID4gMSBhbmQgbnRoKCRnZXQsIDEpID09IGZhbHNlIHtcbiAgICAgICAgJGdldDogbnRoKCRnZXQsIGxlbmd0aCgkZ2V0KSk7XG4gICAgICB9XG4gICAgfVxuICAgIEByZXR1cm4gJGdldDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmIGJyZWFrcG9pbnQtaGFzLWNvbnRleHQoKSBhbmQgJGZlYXR1cmUgPT0gJ21lZGlhJyB7XG4gICAgICBAcmV0dXJuIGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUHJpdmF0ZSBmdW5jdGlvbiB0byBzZXQgY29udGV4dFxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KCRmZWF0dXJlLCAkdmFsdWUpIHtcbiAgQGlmICR2YWx1ZSA9PSAnbW9ub2Nocm9tZScge1xuICAgICRmZWF0dXJlOiAnbW9ub2Nocm9tZSc7XG4gIH1cblxuICAkY3VycmVudDogbWFwLWdldCgkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyLCAkZmVhdHVyZSk7XG4gIEBpZiAkY3VycmVudCBhbmQgbGVuZ3RoKCRjdXJyZW50KSA9PSAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50IHtcbiAgICBAd2FybiBcIllvdSBoYXZlIGFscmVhZHkgcXVlcmllZCBhZ2FpbnN0IGAjeyRmZWF0dXJlfWAuIFVuZXhwZWN0ZWQgdGhpbmdzIG1heSBoYXBwZW4gaWYgeW91IHF1ZXJ5IGFnYWluc3QgdGhlIHNhbWUgZmVhdHVyZSBtb3JlIHRoYW4gb25jZSBpbiB0aGUgc2FtZSBgYW5kYCBxdWVyeS4gQnJlYWtwb2ludCBpcyBvdmVyd3JpdGluZyB0aGUgY3VycmVudCBjb250ZXh0IHdpdGggYCN7JHZhbHVlfWBcIjtcbiAgfVxuXG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlciwgJGZlYXR1cmUpIHtcbiAgICAkdi1ob2xkZXI6ICgpO1xuICAgIEBmb3IgJGkgZnJvbSAxIHRvICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQge1xuICAgICAgQGlmICRmZWF0dXJlID09ICdtZWRpYScge1xuICAgICAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsIGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJykpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJHYtaG9sZGVyOiBhcHBlbmQoJHYtaG9sZGVyLCAkdmFsdWUpO1xuICAgICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6IG1hcC1tZXJnZSgkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyLCAoJGZlYXR1cmU6ICR2LWhvbGRlcikpICFnbG9iYWw7XG4gIH1cbiAgQGVsc2Uge1xuICAgICR2LWhvbGRlcjogbWFwLWdldCgkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyLCAkZmVhdHVyZSk7XG4gICAgJGxlbmd0aDogbGVuZ3RoKCR2LWhvbGRlcik7XG4gICAgQGZvciAkaSBmcm9tICRsZW5ndGggdG8gJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudCAtIDEge1xuICAgICAgQGlmICRmZWF0dXJlID09ICdtZWRpYScge1xuICAgICAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsIGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJykpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJHYtaG9sZGVyOiBhcHBlbmQoJHYtaG9sZGVyLCAkdmFsdWUpO1xuICAgICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6IG1hcC1tZXJnZSgkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyLCAoJGZlYXR1cmU6ICR2LWhvbGRlcikpICFnbG9iYWw7XG4gIH1cblxuICBAcmV0dXJuIHRydWU7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUHJpdmF0ZSBmdW5jdGlvbiB0byByZXNldCBjb250ZXh0XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBtaXhpbiBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMge1xuICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiAoKSAhZ2xvYmFsO1xuICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiAwICFnbG9iYWw7XG59IiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBDb252ZXJ0cyB0aGUgaW5wdXQgdmFsdWUgdG8gQmFzZSBFTXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtdG8tYmFzZS1lbSgkdmFsdWUpIHtcbiAgJHZhbHVlLXVuaXQ6IHVuaXQoJHZhbHVlKTtcblxuICAvLyBXaWxsIGNvbnZlcnQgcmVsYXRpdmUgRU1zIGludG8gcm9vdCBFTXMuXG4gIEBpZiBicmVha3BvaW50LWdldCgnYmFzZSBmb250IHNpemUnKSBhbmQgdHlwZS1vZihicmVha3BvaW50LWdldCgnYmFzZSBmb250IHNpemUnKSkgPT0gJ251bWJlcicgYW5kICR2YWx1ZS11bml0ID09ICdlbScge1xuICAgICRiYXNlLXVuaXQ6IHVuaXQoYnJlYWtwb2ludC1nZXQoJ2Jhc2UgZm9udCBzaXplJykpO1xuXG4gICAgQGlmICRiYXNlLXVuaXQgPT0gJ3B4JyBvciAkYmFzZS11bml0ID09ICclJyBvciAkYmFzZS11bml0ID09ICdlbScgb3IgJGJhc2UtdW5pdCA9PSAncHQnIHtcbiAgICAgIEByZXR1cm4gYmFzZS1jb252ZXJzaW9uKCR2YWx1ZSkgLyBiYXNlLWNvbnZlcnNpb24oYnJlYWtwb2ludC1nZXQoJ2Jhc2UgZm9udCBzaXplJykpICogMWVtO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnI3ticmVha3BvaW50LWdldChcXCdiYXNlIGZvbnQgc2l6ZVxcJyl9IGlzIG5vdCBzZXQgaW4gdmFsaWQgdW5pdHMgZm9yIGZvbnQgc2l6ZSEnO1xuICAgICAgQHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gYmFzZS1jb252ZXJzaW9uKCR2YWx1ZSk7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIGJhc2UtY29udmVyc2lvbigkdmFsdWUpIHtcbiAgJHVuaXQ6IHVuaXQoJHZhbHVlKTtcblxuICBAaWYgJHVuaXQgPT0gJ3B4JyB7XG4gICAgQHJldHVybiAkdmFsdWUgLyAxNnB4ICogMWVtO1xuICB9XG4gIEBlbHNlIGlmICR1bml0ID09ICclJyB7XG4gICAgQHJldHVybiAkdmFsdWUgLyAxMDAlICogMWVtO1xuICB9XG4gIEBlbHNlIGlmICR1bml0ID09ICdlbScge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG4gIEBlbHNlIGlmICR1bml0ID09ICdwdCcge1xuICAgIEByZXR1cm4gJHZhbHVlIC8gMTJwdCAqIDFlbTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAkdmFsdWU7XG4vLyAgICBAd2FybiAnRXZlcnl0aGluZyBpcyB0ZXJyaWJsZSEgV2hhdCBoYXZlIHlvdSBkb25lPyEnO1xuICB9XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUmV0dXJucyB3aGV0aGVyIHRoZSBmZWF0dXJlIGNhbiBoYXZlIGEgbWluL21heCBwYWlyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRicmVha3BvaW50LW1pbi1tYXgtZmVhdHVyZXM6ICdjb2xvcicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnY29sb3ItaW5kZXgnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FzcGVjdC1yYXRpbycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGV2aWNlLWFzcGVjdC1yYXRpbycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGV2aWNlLWhlaWdodCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGV2aWNlLXdpZHRoJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdoZWlnaHQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ21vbm9jaHJvbWUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Jlc29sdXRpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpZHRoJztcblxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluLW1heCgkZmVhdHVyZSkge1xuICBAZWFjaCAkaXRlbSBpbiAkYnJlYWtwb2ludC1taW4tbWF4LWZlYXR1cmVzIHtcbiAgICBAaWYgJGZlYXR1cmUgPT0gJGl0ZW0ge1xuICAgICAgQHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuIGZhbHNlO1xufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFJldHVybnMgd2hldGhlciB0aGUgZmVhdHVyZSBjYW4gaGF2ZSBhIHN0cmluZyB2YWx1ZVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kYnJlYWtwb2ludC1zdHJpbmctZmVhdHVyZXM6ICAnb3JpZW50YXRpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NjYW4nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NvbG9yJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhc3BlY3QtcmF0aW8nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2RldmljZS1hc3BlY3QtcmF0aW8nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3BvaW50ZXInLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2x1bWlub3NpdHknO1xuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1zdHJpbmctdmFsdWUoJGZlYXR1cmUpIHtcbiAgQGVhY2ggJGl0ZW0gaW4gJGJyZWFrcG9pbnQtc3RyaW5nLWZlYXR1cmVzIHtcbiAgICBAaWYgYnJlYWtwb2ludC1taW4tbWF4KCRpdGVtKSB7XG4gICAgICBAaWYgJGZlYXR1cmUgPT0gJ21pbi0jeyRpdGVtfScgb3IgJGZlYXR1cmUgPT0gJ21heC0jeyRpdGVtfScge1xuICAgICAgICBAcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRmZWF0dXJlID09ICRpdGVtIHtcbiAgICAgIEByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiBmYWxzZTtcbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBSZXR1cm5zIHdoZXRoZXIgdGhlIGZlYXR1cmUgaXMgYSBtZWRpYSB0eXBlXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRicmVha3BvaW50LW1lZGlhLXR5cGVzOiAgJ2FsbCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICdicmFpbGxlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2VtYm9zc2VkJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hhbmRoZWxkJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3ByaW50JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Byb2plY3Rpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAnc2NyZWVuJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NwZWVjaCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICd0dHknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAndHYnO1xuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pcy1tZWRpYSgkZmVhdHVyZSkge1xuICBAZWFjaCAkbWVkaWEgaW4gJGJyZWFrcG9pbnQtbWVkaWEtdHlwZXMge1xuICAgIEBpZiAoJGZlYXR1cmUgPT0gJG1lZGlhKSBvciAoJGZlYXR1cmUgPT0gJ25vdCAjeyRtZWRpYX0nKSBvciAoJGZlYXR1cmUgPT0gJ29ubHkgI3skbWVkaWF9Jykge1xuICAgICAgQHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gZmFsc2U7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUmV0dXJucyB3aGV0aGVyIHRoZSBmZWF0dXJlIGNhbiBzdGFuZCBhbG9uZVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nLWZlYXR1cmVzOiAnY29sb3InLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NvbG9yLWluZGV4JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdncmlkJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdtb25vY2hyb21lJztcblxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZygkZmVhdHVyZSkge1xuICBAZWFjaCAkaXRlbSBpbiAkYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nLWZlYXR1cmVzIHtcbiAgICBAaWYgJGZlYXR1cmUgPT0gJGl0ZW0ge1xuICAgICAgQHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuIGZhbHNlO1xufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFJldHVybnMgd2hldGhlciB0aGUgZmVhdHVyZVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pcy1yZXNvbHV0aW9uKCRmZWF0dXJlKSB7XG4gICRyZXNvbHV0aW9uczogJ2RldmljZS1waXhlbC1yYXRpbycsICdkcHInO1xuXG4gIEBpZiBicmVha3BvaW50LWdldCgndHJhbnNmb3JtIHJlc29sdXRpb25zJykge1xuICAgICRyZXNvbHV0aW9uczogYXBwZW5kKCRyZXNvbHV0aW9ucywgJ3Jlc29sdXRpb24nKTtcbiAgfVxuXG4gIEBlYWNoICRyZXNvIGluICRyZXNvbHV0aW9ucyB7XG4gICAgQGlmIGluZGV4KCRmZWF0dXJlLCAkcmVzbykgb3IgaW5kZXgoJGZlYXR1cmUsICdtaW4tI3skcmVzb30nKSBvciBpbmRleCgkZmVhdHVyZSwgJ21heC0jeyRyZXNvfScpIHtcbiAgICAgIEByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIGZhbHNlO1xufVxuIiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBJbXBvcnQgUGFyc2VyIFBpZWNlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AaW1wb3J0IFwicGFyc2Vycy9xdWVyeVwiO1xuQGltcG9ydCBcInBhcnNlcnMvc2luZ2xlXCI7XG5AaW1wb3J0IFwicGFyc2Vycy9kb3VibGVcIjtcbkBpbXBvcnQgXCJwYXJzZXJzL3RyaXBsZVwiO1xuQGltcG9ydCBcInBhcnNlcnMvcmVzb2x1dGlvblwiO1xuXG4kTWVtby1FeGlzdHM6IGZ1bmN0aW9uLWV4aXN0cyhtZW1vLWdldCkgYW5kIGZ1bmN0aW9uLWV4aXN0cyhtZW1vLXNldCk7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBGdW5jdGlvblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkcXVlcnksICRjb250ZXh0cy4uLikge1xuICAkcnVuOiB0cnVlO1xuICAkcmV0dXJuOiAoKTtcblxuICAvLyBHcmFiIHRoZSBNZW1vIE91dHB1dCBpZiBNZW1vaXphdGlvbiBjYW4gYmUgYSB0aGluZ1xuICBAaWYgJE1lbW8tRXhpc3RzIHtcbiAgICAkcmV0dXJuOiBtZW1vLWdldChicmVha3BvaW50LCBicmVha3BvaW50ICRxdWVyeSAkY29udGV4dHMpO1xuXG4gICAgQGlmICRyZXR1cm4gIT0gbnVsbCB7XG4gICAgICAkcnVuOiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBAaWYgbm90ICRNZW1vLUV4aXN0cyBvciAkcnVuIHtcbiAgICAvLyBJbnRlcm5hbCBWYXJpYWJsZXNcbiAgICAkcXVlcnktc3RyaW5nOiAnJztcbiAgICAkcXVlcnktZmFsbGJhY2s6IGZhbHNlO1xuICAgICRyZXR1cm46ICgpO1xuXG4gICAgLy8gUmVzZXJ2ZSBHbG9iYWwgUHJpdmF0ZSBCcmVha3BvaW50IENvbnRleHRcbiAgICAkaG9sZGVyLWNvbnRleHQ6ICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI7XG4gICAgJGhvbGRlci1xdWVyeS1jb3VudDogJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDtcblxuICAgIC8vIFJlc2V0IEdsb2JhbCBQcml2YXRlIEJyZWFrcG9pbnQgQ29udGV4dFxuICAgICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6ICgpICFnbG9iYWw7XG4gICAgJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDogMCAhZ2xvYmFsO1xuXG5cbiAgICAvLyBUZXN0IHRvIHNlZSBpZiBpdCdzIGEgY29tbWEtc2VwYXJhdGVkIGxpc3RcbiAgICAkb3ItbGlzdDogaWYobGlzdC1zZXBhcmF0b3IoJHF1ZXJ5KSA9PSAnY29tbWEnLCB0cnVlLCBmYWxzZSk7XG5cblxuICAgIEBpZiAoJG9yLWxpc3QgPT0gZmFsc2UgYW5kIGJyZWFrcG9pbnQtZ2V0KCdsZWdhY3kgc3ludGF4JykgPT0gZmFsc2UpIHtcbiAgICAgICRxdWVyeS1zdHJpbmc6IGJyZWFrcG9pbnQtcGFyc2UoJHF1ZXJ5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGxlbmd0aDogbGVuZ3RoKCRxdWVyeSk7XG5cbiAgICAgICRsYXN0OiBudGgoJHF1ZXJ5LCAkbGVuZ3RoKTtcbiAgICAgICRxdWVyeS1mYWxsYmFjazogYnJlYWtwb2ludC1uby1xdWVyeSgkbGFzdCk7XG5cbiAgICAgIEBpZiAoJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlKSB7XG4gICAgICAgICRsZW5ndGg6ICRsZW5ndGggLSAxO1xuICAgICAgfVxuXG4gICAgICBAaWYgKGJyZWFrcG9pbnQtZ2V0KCdsZWdhY3kgc3ludGF4JykgPT0gdHJ1ZSkge1xuICAgICAgICAkbXE6ICgpO1xuXG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGxlbmd0aCB7XG4gICAgICAgICAgJG1xOiBhcHBlbmQoJG1xLCBudGgoJHF1ZXJ5LCAkaSksIGNvbW1hKTtcbiAgICAgICAgfVxuXG4gICAgICAgICRxdWVyeS1zdHJpbmc6IGJyZWFrcG9pbnQtcGFyc2UoJG1xKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJHF1ZXJ5LXN0cmluZzogJyc7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGxlbmd0aCB7XG4gICAgICAgICAgJHF1ZXJ5LXN0cmluZzogJHF1ZXJ5LXN0cmluZyArIGlmKCRpID09IDEsICcnLCAnLCAnKSArIGJyZWFrcG9pbnQtcGFyc2UobnRoKCRxdWVyeSwgJGkpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICRyZXR1cm46ICgncXVlcnknOiAkcXVlcnktc3RyaW5nLFxuICAgICAgICAnZmFsbGJhY2snOiAkcXVlcnktZmFsbGJhY2ssXG4gICAgICAgICdjb250ZXh0IGhvbGRlcic6ICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXIsXG4gICAgICAgICdxdWVyeSBjb3VudCc6ICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnRcbiAgICApO1xuICAgIEBpZiBsZW5ndGgoJGNvbnRleHRzKSA+IDAgYW5kIG50aCgkY29udGV4dHMsIDEpICE9IGZhbHNlIHtcbiAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2Uge1xuICAgICAgICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dCgnbm8tcXVlcnknLCAkcXVlcnktZmFsbGJhY2spO1xuICAgICAgfVxuICAgICAgJGNvbnRleHQtbWFwOiAoKTtcbiAgICAgIEBlYWNoICRjb250ZXh0IGluICRjb250ZXh0cyB7XG4gICAgICAgICRjb250ZXh0LW1hcDogbWFwLW1lcmdlKCRjb250ZXh0LW1hcCwgKCRjb250ZXh0OiBicmVha3BvaW50LWdldC1jb250ZXh0KCRjb250ZXh0KSkpO1xuICAgICAgfVxuICAgICAgJHJldHVybjogbWFwLW1lcmdlKCRyZXR1cm4sIChjb250ZXh0OiAkY29udGV4dC1tYXApKTtcbiAgICB9XG5cbiAgICAvLyBSZXNldCBHbG9iYWwgUHJpdmF0ZSBCcmVha3BvaW50IENvbnRleHRcbiAgICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiAoKSAhZ2xvYmFsO1xuICAgICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQ6IDAgIWdsb2JhbDtcblxuICAgIEBpZiAkTWVtby1FeGlzdHMge1xuICAgICAgJGhvbGRlcjogbWVtby1zZXQoYnJlYWtwb2ludCwgYnJlYWtwb2ludCAkcXVlcnkgJGNvbnRleHRzLCAkcmV0dXJuKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gR2VuZXJhbCBCcmVha3BvaW50IFBhcnNlclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZSgkcXVlcnkpIHtcbiAgLy8gSW5jcmVhc2UgbnVtYmVyIG9mICdhbmQnIHF1ZXJpZXNcbiAgJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDogJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudCArIDEgIWdsb2JhbDtcblxuICAvLyBTZXQgdXAgTWVkaWEgVHlwZVxuICAkcXVlcnktcHJpbnQ6ICcnO1xuXG4gICRmb3JjZS1hbGw6ICgoYnJlYWtwb2ludC1nZXQoJ2ZvcmNlIGFsbCBtZWRpYSB0eXBlJykgPT0gdHJ1ZSkgYW5kIChicmVha3BvaW50LWdldCgnZGVmYXVsdCBtZWRpYScpID09ICdhbGwnKSk7XG4gICRlbXB0eS1tZWRpYTogdHJ1ZTtcbiAgQGlmICgkZm9yY2UtYWxsID09IHRydWUpIG9yIChicmVha3BvaW50LWdldCgnZGVmYXVsdCBtZWRpYScpICE9ICdhbGwnKSB7XG4gICAgLy8gRm9yY2UgdGhlIHByaW50IG9mIHRoZSBkZWZhdWx0IG1lZGlhIHR5cGUgaWYgKGZvcmNlIGFsbCBpcyB0cnVlIGFuZCBkZWZhdWx0IG1lZGlhIHR5cGUgaXMgYWxsKSBvciAoZGVmYXVsdCBtZWRpYSB0eXBlIGlzIG5vdCBhbGwpXG4gICAgJHF1ZXJ5LXByaW50OiBicmVha3BvaW50LWdldCgnZGVmYXVsdCBtZWRpYScpO1xuICAgICRlbXB0eS1tZWRpYTogZmFsc2U7XG4gIH1cblxuXG4gICRxdWVyeS1yZXNvbHV0aW9uOiBmYWxzZTtcblxuICAkcXVlcnktaG9sZGVyOiBicmVha3BvaW50LXBhcnNlLXF1ZXJ5KCRxdWVyeSk7XG5cblxuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHBhcnNlZCBvdXQgcXVlcnkgYW5kIHdyaXRlIGl0IHRvICRxdWVyeS1wcmludFxuICAkZmlyc3Q6IHRydWU7XG5cbiAgQGVhY2ggJGZlYXR1cmUgaW4gJHF1ZXJ5LWhvbGRlciB7XG4gICAgJGxlbmd0aDogbGVuZ3RoKCRmZWF0dXJlKTtcblxuICAgIC8vIFBhcnNlIGEgc2luZ2xlIGZlYXR1cmVcbiAgICBAaWYgKCRsZW5ndGggPT0gMSkge1xuICAgICAgLy8gRmVhdHVyZSBpcyBjdXJyZW50bHkgYSBsaXN0LCBncmFiIHRoZSBhY3R1YWwgdmFsdWVcbiAgICAgICRmZWF0dXJlOiBudGgoJGZlYXR1cmUsIDEpO1xuXG4gICAgICAvLyBNZWRpYSBUeXBlIG11c3QgYnkgY29udmVudGlvbiBiZSB0aGUgZmlyc3QgaXRlbSwgc28gaXQncyBzYWZlIHRvIGZsYXQgb3ZlcnJpZGUgJHF1ZXJ5LXByaW50LCB3aGljaCByaWdodCBub3cgc2hvdWxkIG9ubHkgYmUgdGhlIGRlZmF1bHQgbWVkaWEgdHlwZVxuICAgICAgQGlmIChicmVha3BvaW50LWlzLW1lZGlhKCRmZWF0dXJlKSkge1xuICAgICAgICBAaWYgKCRmb3JjZS1hbGwgPT0gdHJ1ZSkgb3IgKCRmZWF0dXJlICE9ICdhbGwnKSB7XG4gICAgICAgICAgLy8gRm9yY2UgdGhlIHByaW50IG9mIHRoZSBkZWZhdWx0IG1lZGlhIHR5cGUgaWYgKGZvcmNlIGFsbCBpcyB0cnVlIGFuZCBkZWZhdWx0IG1lZGlhIHR5cGUgaXMgYWxsKSBvciAoZGVmYXVsdCBtZWRpYSB0eXBlIGlzIG5vdCBhbGwpXG4gICAgICAgICAgJHF1ZXJ5LXByaW50OiAkZmVhdHVyZTtcbiAgICAgICAgICAkZW1wdHktbWVkaWE6IGZhbHNlO1xuXG4gICAgICAgICAgLy8gU2V0IENvbnRleHRcbiAgICAgICAgICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dChtZWRpYSwgJHF1ZXJ5LXByaW50KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLXNpbmdsZSgkZmVhdHVyZSwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpO1xuICAgICAgICAkcXVlcnktcHJpbnQ6ICcjeyRxdWVyeS1wcmludH0gI3skcGFyc2VkfSc7XG4gICAgICAgICRmaXJzdDogZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIC8vIFBhcnNlIGEgZG91YmxlIGZlYXR1cmVcbiAgICBAZWxzZSBpZiAoJGxlbmd0aCA9PSAyKSB7XG4gICAgICBAaWYgKGJyZWFrcG9pbnQtaXMtcmVzb2x1dGlvbigkZmVhdHVyZSkgIT0gZmFsc2UpIHtcbiAgICAgICAgJHF1ZXJ5LXJlc29sdXRpb246ICRmZWF0dXJlO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkcGFyc2VkOiBudWxsO1xuICAgICAgICAvLyBJZiBpdCdzIGEgc3RyaW5nL251bWJlciBwYWlyLFxuICAgICAgICAvLyB3ZSBjaGVjayB0byBzZWUgaWYgb25lIGlzIGEgc2luZ2xlLXN0cmluZyB2YWx1ZSxcbiAgICAgICAgLy8gdGhlbiB3ZSBwYXJzZSBpdCBhcyBhIG5vcm1hbCBkb3VibGVcbiAgICAgICAgJGFscGhhOiBudGgoJGZlYXR1cmUsIDEpO1xuICAgICAgICAkYmV0YTogbnRoKCRmZWF0dXJlLCAyKTtcbiAgICAgICAgQGlmIGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZygkYWxwaGEpIG9yIGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZygkYmV0YSkge1xuICAgICAgICAgICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2Utc2luZ2xlKCRhbHBoYSwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpO1xuICAgICAgICAgICRxdWVyeS1wcmludDogJyN7JHF1ZXJ5LXByaW50fSAjeyRwYXJzZWR9JztcbiAgICAgICAgICAkZmlyc3Q6IGZhbHNlO1xuICAgICAgICAgICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2Utc2luZ2xlKCRiZXRhLCAkZW1wdHktbWVkaWEsICRmaXJzdCk7XG4gICAgICAgICAgJHF1ZXJ5LXByaW50OiAnI3skcXVlcnktcHJpbnR9ICN7JHBhcnNlZH0nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLWRvdWJsZSgkZmVhdHVyZSwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpO1xuICAgICAgICAgICRxdWVyeS1wcmludDogJyN7JHF1ZXJ5LXByaW50fSAjeyRwYXJzZWR9JztcbiAgICAgICAgICAkZmlyc3Q6IGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8vIFBhcnNlIGEgdHJpcGxlIGZlYXR1cmVcbiAgICBAZWxzZSBpZiAoJGxlbmd0aCA9PSAzKSB7XG4gICAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLXRyaXBsZSgkZmVhdHVyZSwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpO1xuICAgICAgJHF1ZXJ5LXByaW50OiAnI3skcXVlcnktcHJpbnR9ICN7JHBhcnNlZH0nO1xuICAgICAgJGZpcnN0OiBmYWxzZTtcbiAgICB9XG5cbiAgfVxuXG4gIEBpZiAoJHF1ZXJ5LXJlc29sdXRpb24gIT0gZmFsc2UpIHtcbiAgICAkcXVlcnktcHJpbnQ6IGJyZWFrcG9pbnQtYnVpbGQtcmVzb2x1dGlvbigkcXVlcnktcHJpbnQsICRxdWVyeS1yZXNvbHV0aW9uLCAkZW1wdHktbWVkaWEsICRmaXJzdCk7XG4gIH1cblxuICAvLyBMb29wIHRocm91Z2ggZWFjaCBmZWF0dXJlIHRoYXQncyBiZWVuIGRldGVjdGVkIHNvIGZhciBhbmQgYXBwZW5kICdmYWxzZScgdG8gdGhlIHRoZSB2YWx1ZSBsaXN0IHRvIGluY3JlbWVudCB0aGVpciBjb3VudGVyc1xuICBAZWFjaCAkZiwgJHYgaW4gJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlciB7XG4gICAgJHYtaG9sZGVyOiAkdjtcbiAgICAkbGVuZ3RoOiBsZW5ndGgoJHYtaG9sZGVyKTtcbiAgICBAaWYgbGVuZ3RoKCR2LWhvbGRlcikgPCAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAkbGVuZ3RoIHRvICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQge1xuICAgICAgICBAaWYgJGYgPT0gJ21lZGlhJyB7XG4gICAgICAgICAgJHYtaG9sZGVyOiBhcHBlbmQoJHYtaG9sZGVyLCBicmVha3BvaW50LWdldCgnZGVmYXVsdCBtZWRpYScpKTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgJHYtaG9sZGVyOiBhcHBlbmQoJHYtaG9sZGVyLCBmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcjogbWFwLW1lcmdlKCRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXIsICgkZjogJHYtaG9sZGVyKSkgIWdsb2JhbDtcbiAgfVxuXG4gIEByZXR1cm4gJHF1ZXJ5LXByaW50O1xufVxuIiwiQGZ1bmN0aW9uIGJyZWFrcG9pbnQtcGFyc2UtcXVlcnkoJHF1ZXJ5KSB7XG4gIC8vIFBhcnNlIGZlYXR1cmVzIG91dCBvZiBhbiBpbmRpdmlkdWFsIHF1ZXJ5XG4gICRmZWF0dXJlLWhvbGRlcjogKCk7XG4gICRxdWVyeS1ob2xkZXI6ICgpO1xuICAkbGVuZ3RoOiBsZW5ndGgoJHF1ZXJ5KTtcblxuICBAaWYgJGxlbmd0aCA9PSAyIHtcbiAgICAvLyBJZiB3ZSd2ZSBnb3QgYSBzdHJpbmcvbnVtYmVyLCBudW1iZXIvc3RyaW5nLCBjaGVjayB0byBzZWUgaWYgaXQncyBhIHZhbGlkIHN0cmluZy9udW1iZXIgcGFpciBvciB0d28gc2luZ2xlc1xuICAgIEBpZiAodHlwZS1vZihudGgoJHF1ZXJ5LCAxKSkgPT0gJ3N0cmluZycgYW5kIHR5cGUtb2YobnRoKCRxdWVyeSwgMikpID09ICdudW1iZXInKSBvciAodHlwZS1vZihudGgoJHF1ZXJ5LCAxKSkgPT0gJ251bWJlcicgYW5kIHR5cGUtb2YobnRoKCRxdWVyeSwgMikpID09ICdzdHJpbmcnKSB7XG5cbiAgICAgICRudW1iZXI6ICcnO1xuICAgICAgJHZhbHVlOiAnJztcblxuICAgICAgQGlmIHR5cGUtb2YobnRoKCRxdWVyeSwgMSkpID09ICdzdHJpbmcnIHtcbiAgICAgICAgJG51bWJlcjogbnRoKCRxdWVyeSwgMik7XG4gICAgICAgICR2YWx1ZTogbnRoKCRxdWVyeSwgMSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICRudW1iZXI6IG50aCgkcXVlcnksIDEpO1xuICAgICAgICAkdmFsdWU6IG50aCgkcXVlcnksIDIpO1xuICAgICAgfVxuXG4gICAgICAvLyBJZiB0aGUgc3RyaW5nIHZhbHVlIGNhbiBiZSBhIHNpbmdsZSB2YWx1ZSwgY2hlY2sgdG8gc2VlIGlmIHRoZSBudW1iZXIgcGFzc2VkIGluIGlzIGEgdmFsaWQgaW5wdXQgZm9yIHNhaWQgc2luZ2xlIHZhbHVlLiBGb3J0dW5hdGVseSwgYWxsIGN1cnJlbnQgc2luZ2xlLXZhbHVlIG9wdGlvbnMgb25seSBhY2NlcHQgdW5pdGxlc3MgbnVtYmVycywgc28gdGhpcyBjaGVjayBpcyBlYXN5LlxuICAgICAgQGlmIGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZygkdmFsdWUpIHtcbiAgICAgICAgQGlmIHVuaXRsZXNzKCRudW1iZXIpIHtcbiAgICAgICAgICAkZmVhdHVyZS1ob2xkZXI6IGFwcGVuZCgkdmFsdWUsICRudW1iZXIsIHNwYWNlKTtcbiAgICAgICAgICAkcXVlcnktaG9sZGVyOiBhcHBlbmQoJHF1ZXJ5LWhvbGRlciwgJGZlYXR1cmUtaG9sZGVyLCBjb21tYSk7XG4gICAgICAgICAgQHJldHVybiAkcXVlcnktaG9sZGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvLyBJZiB0aGUgc3RyaW5nIGlzIGEgbWVkaWEgdHlwZSwgc3BsaXQgdGhlIHF1ZXJ5XG4gICAgICBAaWYgYnJlYWtwb2ludC1pcy1tZWRpYSgkdmFsdWUpIHtcbiAgICAgICAgJHF1ZXJ5LWhvbGRlcjogYXBwZW5kKCRxdWVyeS1ob2xkZXIsIG50aCgkcXVlcnksIDEpKTtcbiAgICAgICAgJHF1ZXJ5LWhvbGRlcjogYXBwZW5kKCRxdWVyeS1ob2xkZXIsIG50aCgkcXVlcnksIDIpKTtcbiAgICAgICAgQHJldHVybiAkcXVlcnktaG9sZGVyO1xuICAgICAgfVxuICAgICAgLy8gSWYgaXQncyBub3QgYSBzaW5nbGUgZmVhdHVyZSwgd2UncmUganVzdCBnb2luZyB0byBhc3N1bWUgaXQncyBhIHByb3BlciBzdHJpbmcvdmFsdWUgcGFpciwgYW5kIHJvbGwgd2l0aCBpdC5cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJGZlYXR1cmUtaG9sZGVyOiBhcHBlbmQoJHZhbHVlLCAkbnVtYmVyLCBzcGFjZSk7XG4gICAgICAgICRxdWVyeS1ob2xkZXI6IGFwcGVuZCgkcXVlcnktaG9sZGVyLCAkZmVhdHVyZS1ob2xkZXIsIGNvbW1hKTtcbiAgICAgICAgQHJldHVybiAkcXVlcnktaG9sZGVyO1xuICAgICAgfVxuXG4gICAgfVxuICAgIC8vIElmIHRoZXkncmUgYm90aCBudW1iZXJzLCB3ZSBhc3N1bWUgaXQncyBhIGRvdWJsZSBhbmQgcm9sbCB3aXRoIHRoYXRcbiAgICBAZWxzZSBpZiAodHlwZS1vZihudGgoJHF1ZXJ5LCAxKSkgPT0gJ251bWJlcicgYW5kIHR5cGUtb2YobnRoKCRxdWVyeSwgMikpID09ICdudW1iZXInKSB7XG4gICAgICAkZmVhdHVyZS1ob2xkZXI6IGFwcGVuZChudGgoJHF1ZXJ5LCAxKSwgbnRoKCRxdWVyeSwgMiksIHNwYWNlKTtcbiAgICAgICRxdWVyeS1ob2xkZXI6IGFwcGVuZCgkcXVlcnktaG9sZGVyLCAkZmVhdHVyZS1ob2xkZXIsIGNvbW1hKTtcbiAgICAgIEByZXR1cm4gJHF1ZXJ5LWhvbGRlcjtcbiAgICB9XG4gICAgLy8gSWYgdGhleSdyZSBib3RoIHN0cmluZ3MgYW5kIG5laXRoZXIgYXJlIHNpbmdsZXMsIHdlIHJvbGwgd2l0aCB0aGF0LlxuICAgIEBlbHNlIGlmICh0eXBlLW9mKG50aCgkcXVlcnksIDEpKSA9PSAnc3RyaW5nJyBhbmQgdHlwZS1vZihudGgoJHF1ZXJ5LCAyKSkgPT0gJ3N0cmluZycpIHtcbiAgICAgIEBpZiBub3QgYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKG50aCgkcXVlcnksIDEpKSBhbmQgbm90IGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZyhudGgoJHF1ZXJ5LCAyKSkge1xuICAgICAgICAkZmVhdHVyZS1ob2xkZXI6IGFwcGVuZChudGgoJHF1ZXJ5LCAxKSwgbnRoKCRxdWVyeSwgMiksIHNwYWNlKTtcbiAgICAgICAgJHF1ZXJ5LWhvbGRlcjogYXBwZW5kKCRxdWVyeS1ob2xkZXIsICRmZWF0dXJlLWhvbGRlciwgY29tbWEpO1xuICAgICAgICBAcmV0dXJuICRxdWVyeS1ob2xkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRsZW5ndGggPT0gMyB7XG4gICAgLy8gSWYgd2UndmUgZ290IHRocmVlIGl0ZW1zIGFuZCBub25lIGlzIGEgbGlzdCwgd2UgY2hlY2sgdG8gc2VlXG4gICAgQGlmIHR5cGUtb2YobnRoKCRxdWVyeSwgMSkpICE9ICdsaXN0JyBhbmQgdHlwZS1vZihudGgoJHF1ZXJ5LCAyKSkgIT0gJ2xpc3QnIGFuZCB0eXBlLW9mKG50aCgkcXVlcnksIDMpKSAhPSAnbGlzdCcge1xuICAgICAgLy8gSWYgbm9uZSBvZiB0aGUgaXRlbXMgYXJlIHNpbmdsZSBzdHJpbmcgdmFsdWVzIGFuZCBub25lIG9mIHRoZSB2YWx1ZXMgYXJlIG1lZGlhIHZhbHVlcywgd2UncmUgZ29vZC5cbiAgICAgIEBpZiAobm90IGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZyhudGgoJHF1ZXJ5LCAxKSkgYW5kIG5vdCBicmVha3BvaW50LXNpbmdsZS1zdHJpbmcobnRoKCRxdWVyeSwgMikpIGFuZCBub3QgYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKG50aCgkcXVlcnksIDMpKSkgYW5kICAoKG5vdCBicmVha3BvaW50LWlzLW1lZGlhKG50aCgkcXVlcnksIDEpKSBhbmQgbm90IGJyZWFrcG9pbnQtaXMtbWVkaWEobnRoKCRxdWVyeSwgMikpIGFuZCBub3QgYnJlYWtwb2ludC1pcy1tZWRpYShudGgoJHF1ZXJ5LCAzKSkpKSB7XG4gICAgICAgICRmZWF0dXJlLWhvbGRlcjogYXBwZW5kKG50aCgkcXVlcnksIDEpLCBudGgoJHF1ZXJ5LCAyKSwgc3BhY2UpO1xuICAgICAgICAkZmVhdHVyZS1ob2xkZXI6IGFwcGVuZCgkZmVhdHVyZS1ob2xkZXIsIG50aCgkcXVlcnksIDMpLCBzcGFjZSk7XG4gICAgICAgICRxdWVyeS1ob2xkZXI6IGFwcGVuZCgkcXVlcnktaG9sZGVyLCAkZmVhdHVyZS1ob2xkZXIsIGNvbW1hKTtcbiAgICAgICAgQHJldHVybiAkcXVlcnktaG9sZGVyO1xuICAgICAgfVxuICAgICAgLy8gbGV0J3MgY2hlY2sgdG8gc2VlIGlmIHRoZSBmaXJzdCBpdGVtIGlzIGEgbWVkaWEgdHlwZVxuICAgICAgQGVsc2UgaWYgYnJlYWtwb2ludC1pcy1tZWRpYShudGgoJHF1ZXJ5LCAxKSkge1xuICAgICAgICAkcXVlcnktaG9sZGVyOiBhcHBlbmQoJHF1ZXJ5LWhvbGRlciwgbnRoKCRxdWVyeSwgMSkpO1xuICAgICAgICAkZmVhdHVyZS1ob2xkZXI6IGFwcGVuZChudGgoJHF1ZXJ5LCAyKSwgbnRoKCRxdWVyeSwgMyksIHNwYWNlKTtcbiAgICAgICAgJHF1ZXJ5LWhvbGRlcjogYXBwZW5kKCRxdWVyeS1ob2xkZXIsICRmZWF0dXJlLWhvbGRlcik7XG4gICAgICAgIEByZXR1cm4gJHF1ZXJ5LWhvbGRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiBpdCdzIGEgc2luZ2xlIGl0ZW0sIG9yIGlmIGl0J3Mgbm90IGEgc3BlY2lhbCBjYXNlIGRvdWJsZSBvciB0cmlwbGUsIHdlIGNhbiBzaW1wbHkgcmV0dXJuIHRoZSBxdWVyeS5cbiAgQHJldHVybiAkcXVlcnk7XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcG9ydCBQaWVjZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCBcInNpbmdsZS9kZWZhdWx0XCI7XG5cbkBmdW5jdGlvbiBicmVha3BvaW50LXBhcnNlLXNpbmdsZSgkZmVhdHVyZSwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpIHtcbiAgJHBhcnNlZDogJyc7XG4gICRsZWFkZXI6ICcnO1xuICAvLyBJZiB3ZSdyZSBmb3JjaW5nXG4gIEBpZiBub3QgKCRlbXB0eS1tZWRpYSkgb3Igbm90ICgkZmlyc3QpIHtcbiAgICAkbGVhZGVyOiAnYW5kICc7XG4gIH1cblxuICAvLyBJZiBpdCdzIGEgc2luZ2xlIGZlYXR1cmUgdGhhdCBjYW4gc3RhbmQgYWxvbmUsIHdlIGxldCBpdFxuICBAaWYgKGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZygkZmVhdHVyZSkpIHtcbiAgICAkcGFyc2VkOiAkZmVhdHVyZTtcbiAgICAvLyBTZXQgQ29udGV4dFxuICAgICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KCRmZWF0dXJlLCAkZmVhdHVyZSk7XG4gIH1cbiAgLy8gSWYgaXQncyBub3QgYSBzdGFuZCBhbG9uZSBmZWF0dXJlLCB3ZSBwYXNzIGl0IG9mZiB0byB0aGUgZGVmYXVsdCBoYW5kbGVyLlxuICBAZWxzZSB7XG4gICAgJHBhcnNlZDogYnJlYWtwb2ludC1wYXJzZS1kZWZhdWx0KCRmZWF0dXJlKTtcbiAgfVxuXG4gIEByZXR1cm4gJGxlYWRlciArICcoJyArICRwYXJzZWQgKyAnKSc7XG59XG4iLCJAZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS1kZWZhdWx0KCRmZWF0dXJlKSB7XG4gICRkZWZhdWx0OiBicmVha3BvaW50LWdldCgnZGVmYXVsdCBmZWF0dXJlJyk7XG5cbiAgLy8gU2V0IENvbnRleHRcbiAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJGRlZmF1bHQsICRmZWF0dXJlKTtcblxuICBAaWYgKGJyZWFrcG9pbnQtZ2V0KCd0byBlbXMnKSA9PSB0cnVlKSBhbmQgKHR5cGUtb2YoJGZlYXR1cmUpID09ICdudW1iZXInKSB7XG4gICAgQHJldHVybiAnI3skZGVmYXVsdH06ICN7YnJlYWtwb2ludC10by1iYXNlLWVtKCRmZWF0dXJlKX0nO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuICcjeyRkZWZhdWx0fTogI3skZmVhdHVyZX0nO1xuICB9XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcG9ydCBQaWVjZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCBcImRvdWJsZS9kZWZhdWx0LXBhaXJcIjtcbkBpbXBvcnQgXCJkb3VibGUvZG91YmxlLXN0cmluZ1wiO1xuQGltcG9ydCBcImRvdWJsZS9kZWZhdWx0XCI7XG5cbkBmdW5jdGlvbiBicmVha3BvaW50LXBhcnNlLWRvdWJsZSgkZmVhdHVyZSwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpIHtcbiAgJHBhcnNlZDogJyc7XG4gICRsZWFkZXI6ICcnO1xuICAvLyBJZiB3ZSdyZSBmb3JjaW5nXG4gIEBpZiBub3QgKCRlbXB0eS1tZWRpYSkgb3Igbm90ICgkZmlyc3QpIHtcbiAgICAkbGVhZGVyOiAnYW5kICc7XG4gIH1cblxuICAkZmlyc3Q6IG50aCgkZmVhdHVyZSwgMSk7XG4gICRzZWNvbmQ6IG50aCgkZmVhdHVyZSwgMik7XG5cbiAgLy8gSWYgd2UndmUgZ290IHR3byBudW1iZXJzLCB3ZSBrbm93IHdlIG5lZWQgdG8gdXNlIHRoZSBkZWZhdWx0IHBhaXIgYmVjYXVzZSB0aGVyZSBhcmUgbm8gbWVkaWEgcXVlcmllcyB0aGF0IGhhcyBhIG1lZGlhIGZlYXR1cmUgdGhhdCBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkZmlyc3QpID09ICdudW1iZXInIGFuZCB0eXBlLW9mKCRzZWNvbmQpID09ICdudW1iZXInIHtcbiAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLWRlZmF1bHQtcGFpcigkZmlyc3QsICRzZWNvbmQpO1xuICB9XG4gIC8vIElmIHRoZXkgYXJlIGJvdGggc3RyaW5ncywgd2Ugc2VuZCBpdCB0aHJvdWdoIHRoZSBzdHJpbmcgcGFyc2VyXG4gIEBlbHNlIGlmIHR5cGUtb2YoJGZpcnN0KSA9PSAnc3RyaW5nJyBhbmQgdHlwZS1vZigkc2Vjb25kKSA9PSAnc3RyaW5nJyB7XG4gICAgJHBhcnNlZDogYnJlYWtwb2ludC1wYXJzZS1kb3VibGUtc3RyaW5nKCRmaXJzdCwgJHNlY29uZCk7XG4gIH1cbiAgLy8gSWYgaXQncyBhIHN0cmluZy9udW1iZXIgcGFpciwgd2UgcGFyc2UgaXQgYXMgYSBub3JtYWwgZG91YmxlXG4gIEBlbHNlIHtcbiAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLWRvdWJsZS1kZWZhdWx0KCRmaXJzdCwgJHNlY29uZCk7XG4gIH1cblxuICBAcmV0dXJuICRsZWFkZXIgKyAkcGFyc2VkO1xufVxuIiwiQGZ1bmN0aW9uIGJyZWFrcG9pbnQtcGFyc2UtZGVmYXVsdC1wYWlyKCRmaXJzdCwgJHNlY29uZCkge1xuICAkZGVmYXVsdDogYnJlYWtwb2ludC1nZXQoJ2RlZmF1bHQgcGFpcicpO1xuICAkbWluOiAnJztcbiAgJG1heDogJyc7XG5cbiAgLy8gU29ydCBpbnRvIG1pbiBhbmQgbWF4XG4gICRtaW46IG1pbigkZmlyc3QsICRzZWNvbmQpO1xuICAkbWF4OiBtYXgoJGZpcnN0LCAkc2Vjb25kKTtcblxuICAvLyBTZXQgQ29udGV4dFxuICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dChtaW4tI3skZGVmYXVsdH0sICRtaW4pO1xuICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dChtYXgtI3skZGVmYXVsdH0sICRtYXgpO1xuXG4gIC8vIE1ha2UgdGhlbSBFTXMgaWYgbmVlZCBiZVxuICBAaWYgKGJyZWFrcG9pbnQtZ2V0KCd0byBlbXMnKSA9PSB0cnVlKSB7XG4gICAgJG1pbjogYnJlYWtwb2ludC10by1iYXNlLWVtKCRtaW4pO1xuICAgICRtYXg6IGJyZWFrcG9pbnQtdG8tYmFzZS1lbSgkbWF4KTtcbiAgfVxuXG4gIEByZXR1cm4gJyhtaW4tI3skZGVmYXVsdH06ICN7JG1pbn0pIGFuZCAobWF4LSN7JGRlZmF1bHR9OiAjeyRtYXh9KSc7XG59XG4iLCJAZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS1kb3VibGUtc3RyaW5nKCRmaXJzdCwgJHNlY29uZCkge1xuICAkZmVhdHVyZTogJyc7XG4gICR2YWx1ZTogJyc7XG5cbiAgLy8gVGVzdCB0byBzZWUgd2hpY2ggaXMgdGhlIGZlYXR1cmUgYW5kIHdoaWNoIGlzIHRoZSB2YWx1ZVxuICBAaWYgKGJyZWFrcG9pbnQtc3RyaW5nLXZhbHVlKCRmaXJzdCkgPT0gdHJ1ZSkge1xuICAgICRmZWF0dXJlOiAkZmlyc3Q7XG4gICAgJHZhbHVlOiAkc2Vjb25kO1xuICB9XG4gIEBlbHNlIGlmIChicmVha3BvaW50LXN0cmluZy12YWx1ZSgkc2Vjb25kKSA9PSB0cnVlKSB7XG4gICAgJGZlYXR1cmU6ICRzZWNvbmQ7XG4gICAgJHZhbHVlOiAkZmlyc3Q7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuIFwiTmVpdGhlciAjeyRmaXJzdH0gbm9yICN7JHNlY29uZH0gaXMgYSB2YWxpZCBtZWRpYSBxdWVyeSBuYW1lLlwiO1xuICB9XG5cbiAgLy8gU2V0IENvbnRleHRcbiAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJGZlYXR1cmUsICR2YWx1ZSk7XG5cbiAgQHJldHVybiAnKCN7JGZlYXR1cmV9OiAjeyR2YWx1ZX0pJztcbn0iLCJAZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS1kb3VibGUtZGVmYXVsdCgkZmlyc3QsICRzZWNvbmQpIHtcbiAgJGZlYXR1cmU6ICcnO1xuICAkdmFsdWU6ICcnO1xuXG4gIEBpZiB0eXBlLW9mKCRmaXJzdCkgPT0gJ3N0cmluZycge1xuICAgICRmZWF0dXJlOiAkZmlyc3Q7XG4gICAgJHZhbHVlOiAkc2Vjb25kO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkZmVhdHVyZTogJHNlY29uZDtcbiAgICAkdmFsdWU6ICRmaXJzdDtcbiAgfVxuXG4gIC8vIFNldCBDb250ZXh0XG4gICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KCRmZWF0dXJlLCAkdmFsdWUpO1xuXG4gIEBpZiAoYnJlYWtwb2ludC1nZXQoJ3RvIGVtcycpID09IHRydWUpIHtcbiAgICAkdmFsdWU6IGJyZWFrcG9pbnQtdG8tYmFzZS1lbSgkdmFsdWUpO1xuICB9XG5cbiAgQHJldHVybiAnKCN7JGZlYXR1cmV9OiAjeyR2YWx1ZX0pJ1xufVxuIiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBJbXBvcnQgUGllY2VzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgXCJ0cmlwbGUvZGVmYXVsdFwiO1xuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS10cmlwbGUoJGZlYXR1cmUsICRlbXB0eS1tZWRpYSwgJGZpcnN0KSB7XG4gICRwYXJzZWQ6ICcnO1xuICAkbGVhZGVyOiAnJztcblxuICAvLyBJZiB3ZSdyZSBmb3JjaW5nXG4gIEBpZiBub3QgKCRlbXB0eS1tZWRpYSkgb3Igbm90ICgkZmlyc3QpIHtcbiAgICAkbGVhZGVyOiAnYW5kICc7XG4gIH1cblxuICAvLyBzZXBhcmF0ZSB0aGUgc3RyaW5nIGZlYXR1cmVzIGZyb20gdGhlIHZhbHVlIG51bWJlcnNcbiAgJHN0cmluZzogbnVsbDtcbiAgJG51bWJlcnM6IG51bGw7XG4gIEBlYWNoICR2YWwgaW4gJGZlYXR1cmUge1xuICAgIEBpZiB0eXBlLW9mKCR2YWwpID09IHN0cmluZyB7XG4gICAgICAkc3RyaW5nOiAkdmFsO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaWYgdHlwZS1vZigkbnVtYmVycykgPT0gJ251bGwnIHtcbiAgICAgICAgJG51bWJlcnM6ICR2YWw7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICRudW1iZXJzOiBhcHBlbmQoJG51bWJlcnMsICR2YWwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2UtdHJpcGxlLWRlZmF1bHQoJHN0cmluZywgbnRoKCRudW1iZXJzLCAxKSwgbnRoKCRudW1iZXJzLCAyKSk7XG5cbiAgQHJldHVybiAkbGVhZGVyICsgJHBhcnNlZDtcblxufVxuIiwiQGZ1bmN0aW9uIGJyZWFrcG9pbnQtcGFyc2UtdHJpcGxlLWRlZmF1bHQoJGZlYXR1cmUsICRmaXJzdCwgJHNlY29uZCkge1xuXG4gIC8vIFNvcnQgaW50byBtaW4gYW5kIG1heFxuICAkbWluOiBtaW4oJGZpcnN0LCAkc2Vjb25kKTtcbiAgJG1heDogbWF4KCRmaXJzdCwgJHNlY29uZCk7XG5cbiAgLy8gU2V0IENvbnRleHRcbiAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQobWluLSN7JGZlYXR1cmV9LCAkbWluKTtcbiAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQobWF4LSN7JGZlYXR1cmV9LCAkbWF4KTtcblxuICAvLyBNYWtlIHRoZW0gRU1zIGlmIG5lZWQgYmVcbiAgQGlmIChicmVha3BvaW50LWdldCgndG8gZW1zJykgPT0gdHJ1ZSkge1xuICAgICRtaW46IGJyZWFrcG9pbnQtdG8tYmFzZS1lbSgkbWluKTtcbiAgICAkbWF4OiBicmVha3BvaW50LXRvLWJhc2UtZW0oJG1heCk7XG4gIH1cblxuICBAcmV0dXJuICcobWluLSN7JGZlYXR1cmV9OiAjeyRtaW59KSBhbmQgKG1heC0jeyRmZWF0dXJlfTogI3skbWF4fSknO1xufVxuIiwiQGltcG9ydCBcInJlc29sdXRpb24vcmVzb2x1dGlvblwiO1xuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1idWlsZC1yZXNvbHV0aW9uKCRxdWVyeS1wcmludCwgJHF1ZXJ5LXJlc29sdXRpb24sICRlbXB0eS1tZWRpYSwgJGZpcnN0KSB7XG4gICRsZWFkZXI6ICcnO1xuICAvLyBJZiB3ZSdyZSBmb3JjaW5nXG4gIEBpZiBub3QgKCRlbXB0eS1tZWRpYSkgb3Igbm90ICgkZmlyc3QpIHtcbiAgICAkbGVhZGVyOiAnYW5kICc7XG4gIH1cblxuICBAaWYgYnJlYWtwb2ludC1nZXQoJ3RyYW5zZm9ybSByZXNvbHV0aW9ucycpIGFuZCAkcXVlcnktcmVzb2x1dGlvbiB7XG4gICAgJHJlc29sdXRpb25zOiBicmVha3BvaW50LW1ha2UtcmVzb2x1dGlvbnMoJHF1ZXJ5LXJlc29sdXRpb24pO1xuICAgICRsZW5ndGg6IGxlbmd0aCgkcmVzb2x1dGlvbnMpO1xuICAgICRxdWVyeS1ob2xkZXI6ICcnO1xuXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbGVuZ3RoIHtcbiAgICAgICRxdWVyeTogJyN7JHF1ZXJ5LXByaW50fSAjeyRsZWFkZXJ9I3tudGgoJHJlc29sdXRpb25zLCAkaSl9JztcbiAgICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICAgJHF1ZXJ5LWhvbGRlcjogJHF1ZXJ5O1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkcXVlcnktaG9sZGVyOiAnI3skcXVlcnktaG9sZGVyfSwgI3skcXVlcnl9JztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuICRxdWVyeS1ob2xkZXI7XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFJldHVybiB3aXRoIGF0dGFjaGVkIHJlc29sdXRpb25cbiAgICBAcmV0dXJuICRxdWVyeS1wcmludDtcbiAgfVxufVxuIiwiQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWFrZS1yZXNvbHV0aW9ucygkcmVzb2x1dGlvbikge1xuICAkbGVuZ3RoOiBsZW5ndGgoJHJlc29sdXRpb24pO1xuXG4gICRvdXRwdXQ6ICgpO1xuXG4gIEBpZiAkbGVuZ3RoID09IDIge1xuICAgICRmZWF0dXJlOiAnJztcbiAgICAkdmFsdWU6ICcnO1xuXG4gICAgLy8gRmluZCB3aGljaCBpcyBudW1iZXJcbiAgICBAaWYgdHlwZS1vZihudGgoJHJlc29sdXRpb24sIDEpKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IG50aCgkcmVzb2x1dGlvbiwgMSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR2YWx1ZTogbnRoKCRyZXNvbHV0aW9uLCAyKTtcbiAgICB9XG5cbiAgICAvLyBEZXRlcm1pbmUgbWluL21heC9zdGFuZGFyZFxuICAgIEBpZiBpbmRleCgkcmVzb2x1dGlvbiwgJ21pbi1yZXNvbHV0aW9uJykge1xuICAgICAgJGZlYXR1cmU6ICdtaW4tJztcbiAgICB9XG4gICAgQGVsc2UgaWYgaW5kZXgoJHJlc29sdXRpb24sICdtYXgtcmVzb2x1dGlvbicpIHtcbiAgICAgICRmZWF0dXJlOiAnbWF4LSc7XG4gICAgfVxuXG4gICAgJHN0YW5kYXJkOiAnKCN7JGZlYXR1cmV9cmVzb2x1dGlvbjogI3skdmFsdWV9KSc7XG5cbiAgICAvLyBJZiB3ZSdyZSBub3QgZGVhbGluZyB3aXRoIGRwcHgsXG4gICAgQGlmIHVuaXQoJHZhbHVlKSAhPSAnZHBweCcge1xuICAgICAgJGJhc2U6IDk2ZHBpO1xuICAgICAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZHBjbScge1xuICAgICAgICAkYmFzZTogMjQzLjg0ZHBjbTtcbiAgICAgIH1cbiAgICAgIC8vIFdyaXRlIG91dCBmZWF0dXJlIHRlc3RzXG4gICAgICAkd2Via2l0OiAnJztcbiAgICAgICRtb3o6ICcnO1xuICAgICAgJHdlYmtpdDogJygtd2Via2l0LSN7JGZlYXR1cmV9ZGV2aWNlLXBpeGVsLXJhdGlvOiAjeyR2YWx1ZSAvICRiYXNlfSknO1xuICAgICAgJG1vejogJygjeyRmZWF0dXJlfS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAjeyR2YWx1ZSAvICRiYXNlfSknO1xuICAgICAgLy8gQXBwZW5kIHRvIG91dHB1dFxuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICRzdGFuZGFyZCwgc3BhY2UpO1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICR3ZWJraXQsIHNwYWNlKTtcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAkbW96LCBzcGFjZSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3ZWJraXQ6ICcnO1xuICAgICAgJG1vejogJyc7XG4gICAgICAkd2Via2l0OiAnKC13ZWJraXQtI3skZmVhdHVyZX1kZXZpY2UtcGl4ZWwtcmF0aW86ICN7JHZhbHVlIC8gMWRwcHh9KSc7XG4gICAgICAkbW96OiAnKCN7JGZlYXR1cmV9LW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86ICN7JHZhbHVlIC8gMWRwcHh9KSc7XG4gICAgICAkZmFsbGJhY2s6ICcoI3skZmVhdHVyZX1yZXNvbHV0aW9uOiAjeyR2YWx1ZSAvIDFkcHB4ICogOTZkcGl9KSc7XG4gICAgICAvLyBBcHBlbmQgdG8gb3V0cHV0XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgJHN0YW5kYXJkLCBzcGFjZSk7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgJHdlYmtpdCwgc3BhY2UpO1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICRtb3osIHNwYWNlKTtcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAkZmFsbGJhY2ssIHNwYWNlKTtcbiAgICB9XG5cbiAgfVxuXG4gIEByZXR1cm4gJG91dHB1dDtcbn1cbiIsIkBmdW5jdGlvbiBicmVha3BvaW50LW5vLXF1ZXJ5KCRxdWVyeSkge1xuICBAaWYgdHlwZS1vZigkcXVlcnkpID09ICdsaXN0JyB7XG4gICAgJGtleXdvcmQ6IG50aCgkcXVlcnksIDEpO1xuXG4gICAgQGlmIHR5cGUtb2YoJGtleXdvcmQpID09ICdzdHJpbmcnIGFuZCAoJGtleXdvcmQgPT0gJ25vLXF1ZXJ5JyBvciAka2V5d29yZCA9PSAnbm8gcXVlcnknIG9yICRrZXl3b3JkID09ICdmYWxsYmFjaycpIHtcbiAgICAgIEByZXR1cm4gbnRoKCRxdWVyeSwgMik7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGZhbHNlO1xuICB9XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIERlZmF1bHQgdGhlIEJyZWFrcG9pbnRzIHZhcmlhYmxlXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRicmVha3BvaW50czogKCkgIWRlZmF1bHQ7XG4kQlJFQUtQT0lOVFM6ICgpICFkZWZhdWx0O1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFJlc3BvbmQtdG8gQVBJIE1peGluXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBtaXhpbiByZXNwb25kLXRvKCRjb250ZXh0LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpZiBsZW5ndGgoJGJyZWFrcG9pbnRzKSA+IDAgYW5kIGxlbmd0aCgkQlJFQUtQT0lOVFMpID09IDAge1xuICAgIEB3YXJuIFwiSW4gb3JkZXIgdG8gYXZvaWQgdmFyaWFibGUgbmFtZXNwYWNlIGNvbGxpc2lvbnMsIHdlIGhhdmUgdXBkYXRlZCB0aGUgd2F5IHRvIGFkZCBicmVha3BvaW50cyBmb3IgcmVzcG9uZC10by4gUGxlYXNlIGNoYW5nZSBhbGwgaW5zdGFuY2VzIG9mIGAkYnJlYWtwb2ludHM6IGFkZC1icmVha3BvaW50KClgIHRvIGBAaW5jbHVkZSBhZGQtYnJlYWtwb2ludCgpYC4gVGhlIGBhZGQtYnJlYWtwb2ludCgpYCBmdW5jdGlvbiB3aWxsIGJlIGRlcHJlY2F0ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS5cIjtcbiAgICAkQlJFQUtQT0lOVFM6ICRicmVha3BvaW50cyAhZ2xvYmFsO1xuICAgICRicmVha3BvaW50czogKCkgIWdsb2JhbDtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCRCUkVBS1BPSU5UUykgIT0gJ21hcCcge1xuICAgIC8vIEp1c3QgaW4gY2FzZSBzb21lb25lIHdyaXRlcyBnaWJiZXJpc2ggdG8gdGhlICRicmVha3BvaW50cyB2YXJpYWJsZS5cbiAgICBAd2FybiBcIllvdXIgYnJlYWtwb2ludHMgYXJlbid0IGEgbWFwISBgcmVzcG9uZC10b2AgZXhwZWN0cyBhIG1hcC4gUGxlYXNlIGNoZWNrIHRoZSB2YWx1ZSBvZiAkQlJFQUtQT0lOVFMgdmFyaWFibGUuXCI7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJEJSRUFLUE9JTlRTLCAkY29udGV4dCkge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWFwLWdldCgkQlJFQUtQT0lOVFMsICRjb250ZXh0KSwgJG5vLXF1ZXJ5KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgbm90IG1hcC1oYXMta2V5KCRCUkVBS1BPSU5UUywgJGNvbnRleHQpIHtcbiAgICBAd2FybiBcImAjeyRjb250ZXh0fWAgaXNuJ3QgYSBkZWZpbmVkIGJyZWFrcG9pbnQhIFBsZWFzZSBhZGQgaXQgdXNpbmcgYCRicmVha3BvaW50czogYWRkLWJyZWFrcG9pbnQoYCN7JGNvbnRleHR9YCwgJHZhbHVlKTtgXCI7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuIFwiWW91IGhhdmVuJ3QgY3JlYXRlZCBhbnkgYnJlYWtwb2ludHMgeWV0ISBNYWtlIHNvbWUgYWxyZWFkeSEgYEBpbmNsdWRlIGFkZC1icmVha3BvaW50KCRuYW1lLCAkYmtwdClgXCI7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBBZGQgQnJlYWtwb2ludCB0byBCcmVha3BvaW50c1xuLy8gVE9ETzogUmVtb3ZlIGZ1bmN0aW9uIGluIG5leHQgcmVsZWFzZVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYWRkLWJyZWFrcG9pbnQoJG5hbWUsICRia3B0LCAkb3ZlcndyaXRlOiBmYWxzZSkge1xuICAkb3V0cHV0OiAoJG5hbWU6ICRia3B0KTtcblxuICBAaWYgbGVuZ3RoKCRicmVha3BvaW50cykgPT0gMCB7XG4gICAgQHJldHVybiAkb3V0cHV0O1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbmFtZSkgYW5kICRvdmVyd3JpdGUgIT0gdHJ1ZSB7XG4gICAgICBAd2FybiBcIllvdSBhbHJlYWR5IGhhdmUgYSBicmVha3BvaW50IG5hbWVkIGAjeyRuYW1lfWAsIHBsZWFzZSBjaG9vc2UgYW5vdGhlciBicmVha3BvaW50IG5hbWUsIG9yIHBhc3MgaW4gYCRvdmVyd3JpdGU6IHRydWVgIHRvIG92ZXJ3cml0ZSB0aGUgcHJldmlvdXMgYnJlYWtwb2ludC5cIjtcbiAgICAgIEByZXR1cm4gJGJyZWFrcG9pbnRzO1xuICAgIH1cbiAgICBAZWxzZSBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbmFtZSkgb3IgJG92ZXJ3cml0ZSA9PSB0cnVlIHtcbiAgICAgIEByZXR1cm4gbWFwLW1lcmdlKCRicmVha3BvaW50cywgJG91dHB1dCk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhZGQtYnJlYWtwb2ludCgkbmFtZSwgJGJrcHQsICRvdmVyd3JpdGU6IGZhbHNlKSB7XG4gICRvdXRwdXQ6ICgkbmFtZTogJGJrcHQpO1xuXG4gIEBpZiBsZW5ndGgoJEJSRUFLUE9JTlRTKSA9PSAwIHtcbiAgICAkQlJFQUtQT0lOVFM6ICRvdXRwdXQgIWdsb2JhbDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRCUkVBS1BPSU5UUywgJG5hbWUpIGFuZCAkb3ZlcndyaXRlICE9IHRydWUge1xuICAgICAgQHdhcm4gXCJZb3UgYWxyZWFkeSBoYXZlIGEgYnJlYWtwb2ludCBuYW1lZCBgI3skbmFtZX1gLCBwbGVhc2UgY2hvb3NlIGFub3RoZXIgYnJlYWtwb2ludCBuYW1lLCBvciBwYXNzIGluIGAkb3ZlcndyaXRlOiB0cnVlYCB0byBvdmVyd3JpdGUgdGhlIHByZXZpb3VzIGJyZWFrcG9pbnQuXCI7XG4gICAgICAkQlJFQUtQT0lOVFM6ICRCUkVBS1BPSU5UUyAhZ2xvYmFsO1xuICAgIH1cbiAgICBAZWxzZSBpZiBub3QgbWFwLWhhcy1rZXkoJEJSRUFLUE9JTlRTLCAkbmFtZSkgb3IgJG92ZXJ3cml0ZSA9PSB0cnVlIHtcbiAgICAgICRCUkVBS1BPSU5UUzogbWFwLW1lcmdlKCRCUkVBS1BPSU5UUywgJG91dHB1dCkgIWdsb2JhbDtcbiAgICB9XG4gIH1cbn1cblxuQGZ1bmN0aW9uIGdldC1icmVha3BvaW50KCRuYW1lOiBmYWxzZSkge1xuICBAaWYgJG5hbWUgPT0gZmFsc2Uge1xuICAgIEByZXR1cm4gJEJSRUFLUE9JTlRTO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJEJSRUFLUE9JTlRTLCAkbmFtZSk7XG4gIH1cbn1cbiIsIkBtaXhpbiBsZWdhY3ktc2V0dGluZ3Mtd2FybmluZyB7XG4gICRsZWdhY3lWYXJzOiAoXG4gICAgJ2RlZmF1bHQtbWVkaWEnOiAnZGVmYXVsdCBtZWRpYScsXG4gICAgJ2RlZmF1bHQtZmVhdHVyZSc6ICdkZWZhdWx0IGZlYXR1cmUnLFxuICAgICdmb3JjZS1tZWRpYS1hbGwnOiAnZm9yY2UgYWxsIG1lZGlhIHR5cGUnLFxuICAgICd0by1lbXMnOiAndG8gZW1zJyxcbiAgICAncmVzb2x1dGlvbnMnOiAndHJhbnNmb3JtIHJlc29sdXRpb25zJyxcbiAgICAnbm8tcXVlcmllcyc6ICdubyBxdWVyaWVzJyxcbiAgICAnbm8tcXVlcnktZmFsbGJhY2tzJzogJ25vIHF1ZXJ5IGZhbGxiYWNrcycsXG4gICAgJ2Jhc2UtZm9udC1zaXplJzogJ2Jhc2UgZm9udCBzaXplJyxcbiAgICAnbGVnYWN5LXN5bnRheCc6ICdsZWdhY3kgc3ludGF4J1xuICApO1xuXG4gIEBlYWNoICRsZWdhY3ksICRuZXcgaW4gJGxlZ2FjeVZhcnMge1xuICAgIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdicmVha3BvaW50LScgKyAkbGVnYWN5KSB7XG4gICAgICBAd2FybiBcIkluIG9yZGVyIHRvIGF2b2lkIHZhcmlhYmxlIG5hbXNwYWNlIGNvbGxpc2lvbnMsIHdlIGhhdmUgdXBkYXRlZCB0aGUgd2F5IHRvIGNoYW5nZSBzZXR0aW5ncyBmb3IgQnJlYWtwb2ludC4gUGxlYXNlIGNoYW5nZSBhbGwgaW5zdGFuY2VzIG9mIGAkYnJlYWtwb2ludC0jeyRsZWdhY3l9OiB7e3NldHRpbmd9fWAgdG8gYEBpbmNsdWRlIGJyZWFrcG9pbnQtc2V0KCcjeyRuZXd9Jywge3tzZXR0aW5nfX0pYC4gVmFyaWFibGUgc2V0dGluZ3MsIGFzIHdlbGwgYXMgdGhpcyB3YXJuaW5nIHdpbGwgYmUgZGVwcmVjYXRlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLlwiXG4gICAgfVxuICB9O1xuXG4gIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAvLyBIYW5kIGNvcnJlY3QgZWFjaCBzZXR0aW5nXG4gIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnYnJlYWtwb2ludC1kZWZhdWx0LW1lZGlhJykgYW5kICRicmVha3BvaW50LWRlZmF1bHQtbWVkaWEgIT0gYnJlYWtwb2ludC1nZXQoJ2RlZmF1bHQgbWVkaWEnKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJ2RlZmF1bHQgbWVkaWEnLCAkYnJlYWtwb2ludC1kZWZhdWx0LW1lZGlhKTtcbiAgfVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnYnJlYWtwb2ludC1kZWZhdWx0LWZlYXR1cmUnKSBhbmQgJGJyZWFrcG9pbnQtZGVmYXVsdC1mZWF0dXJlICE9IGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IGZlYXR1cmUnKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJ2RlZmF1bHQgZmVhdHVyZScsICRicmVha3BvaW50LWRlZmF1bHQtZmVhdHVyZSk7XG4gIH1cbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoJ2JyZWFrcG9pbnQtZm9yY2UtbWVkaWEtYWxsJykgYW5kICRicmVha3BvaW50LWZvcmNlLW1lZGlhLWFsbCAhPSBicmVha3BvaW50LWdldCgnZm9yY2UgYWxsIG1lZGlhIHR5cGUnKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJ2ZvcmNlIGFsbCBtZWRpYSB0eXBlJywgJGJyZWFrcG9pbnQtZm9yY2UtbWVkaWEtYWxsKTtcbiAgfVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnYnJlYWtwb2ludC10by1lbXMnKSBhbmQgJGJyZWFrcG9pbnQtdG8tZW1zICE9IGJyZWFrcG9pbnQtZ2V0KCd0byBlbXMnKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJ3RvIGVtcycsICRicmVha3BvaW50LXRvLWVtcyk7XG4gIH1cbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoJ2JyZWFrcG9pbnQtcmVzb2x1dGlvbnMnKSBhbmQgJGJyZWFrcG9pbnQtcmVzb2x1dGlvbnMgIT0gYnJlYWtwb2ludC1nZXQoJ3RyYW5zZm9ybSByZXNvbHV0aW9ucycpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LXNldCgndHJhbnNmb3JtIHJlc29sdXRpb25zJywgJGJyZWFrcG9pbnQtcmVzb2x1dGlvbnMpO1xuICB9XG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdicmVha3BvaW50LW5vLXF1ZXJpZXMnKSBhbmQgJGJyZWFrcG9pbnQtbm8tcXVlcmllcyAhPSBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LXNldCgnbm8gcXVlcmllcycsICRicmVha3BvaW50LW5vLXF1ZXJpZXMpO1xuICB9XG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdicmVha3BvaW50LW5vLXF1ZXJ5LWZhbGxiYWNrcycpIGFuZCAkYnJlYWtwb2ludC1uby1xdWVyeS1mYWxsYmFja3MgIT0gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LXNldCgnbm8gcXVlcnkgZmFsbGJhY2tzJywgJGJyZWFrcG9pbnQtbm8tcXVlcnktZmFsbGJhY2tzKTtcbiAgfVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnYnJlYWtwb2ludC1iYXNlLWZvbnQtc2l6ZScpIGFuZCAkYnJlYWtwb2ludC1iYXNlLWZvbnQtc2l6ZSAhPSBicmVha3BvaW50LWdldCgnYmFzZSBmb250IHNpemUnKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJ2Jhc2UgZm9udCBzaXplJywgJGJyZWFrcG9pbnQtYmFzZS1mb250LXNpemUpO1xuICB9XG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdicmVha3BvaW50LWxlZ2FjeS1zeW50YXgnKSBhbmQgJGJyZWFrcG9pbnQtbGVnYWN5LXN5bnRheCAhPSBicmVha3BvaW50LWdldCgnbGVnYWN5IHN5bnRheCcpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LXNldCgnbGVnYWN5IHN5bnRheCcsICRicmVha3BvaW50LWxlZ2FjeS1zeW50YXgpO1xuICB9XG59IiwiLyohXG4gKiAgRm9udCBBd2Vzb21lIDQuNy4wIGJ5IEBkYXZlZ2FuZHkgLSBodHRwOi8vZm9udGF3ZXNvbWUuaW8gLSBAZm9udGF3ZXNvbWVcbiAqICBMaWNlbnNlIC0gaHR0cDovL2ZvbnRhd2Vzb21lLmlvL2xpY2Vuc2UgKEZvbnQ6IFNJTCBPRkwgMS4xLCBDU1M6IE1JVCBMaWNlbnNlKVxuICovXG5cbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJwYXRoXCI7XG5AaW1wb3J0IFwiY29yZVwiO1xuQGltcG9ydCBcImxhcmdlclwiO1xuQGltcG9ydCBcImZpeGVkLXdpZHRoXCI7XG5AaW1wb3J0IFwibGlzdFwiO1xuQGltcG9ydCBcImJvcmRlcmVkLXB1bGxlZFwiO1xuQGltcG9ydCBcImFuaW1hdGVkXCI7XG5AaW1wb3J0IFwicm90YXRlZC1mbGlwcGVkXCI7XG5AaW1wb3J0IFwic3RhY2tlZFwiO1xuQGltcG9ydCBcImljb25zXCI7XG5AaW1wb3J0IFwic2NyZWVuLXJlYWRlclwiO1xuIiwiLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kZmEtZm9udC1wYXRoOiAgICAgICAgXCIuLi9mb250c1wiICFkZWZhdWx0O1xuJGZhLWZvbnQtc2l6ZS1iYXNlOiAgIDE0cHggIWRlZmF1bHQ7XG4kZmEtbGluZS1oZWlnaHQtYmFzZTogMSAhZGVmYXVsdDtcbi8vJGZhLWZvbnQtcGF0aDogICAgICAgIFwiLy9uZXRkbmEuYm9vdHN0cmFwY2RuLmNvbS9mb250LWF3ZXNvbWUvNC43LjAvZm9udHNcIiAhZGVmYXVsdDsgLy8gZm9yIHJlZmVyZW5jaW5nIEJvb3RzdHJhcCBDRE4gZm9udCBmaWxlcyBkaXJlY3RseVxuJGZhLWNzcy1wcmVmaXg6ICAgICAgIGZhICFkZWZhdWx0O1xuJGZhLXZlcnNpb246ICAgICAgICAgIFwiNC43LjBcIiAhZGVmYXVsdDtcbiRmYS1ib3JkZXItY29sb3I6ICAgICAjZWVlICFkZWZhdWx0O1xuJGZhLWludmVyc2U6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kZmEtbGktd2lkdGg6ICAgICAgICAgKDMwZW0gLyAxNCkgIWRlZmF1bHQ7XG5cbiRmYS12YXItNTAwcHg6IFwiXFxmMjZlXCI7XG4kZmEtdmFyLWFkZHJlc3MtYm9vazogXCJcXGYyYjlcIjtcbiRmYS12YXItYWRkcmVzcy1ib29rLW86IFwiXFxmMmJhXCI7XG4kZmEtdmFyLWFkZHJlc3MtY2FyZDogXCJcXGYyYmJcIjtcbiRmYS12YXItYWRkcmVzcy1jYXJkLW86IFwiXFxmMmJjXCI7XG4kZmEtdmFyLWFkanVzdDogXCJcXGYwNDJcIjtcbiRmYS12YXItYWRuOiBcIlxcZjE3MFwiO1xuJGZhLXZhci1hbGlnbi1jZW50ZXI6IFwiXFxmMDM3XCI7XG4kZmEtdmFyLWFsaWduLWp1c3RpZnk6IFwiXFxmMDM5XCI7XG4kZmEtdmFyLWFsaWduLWxlZnQ6IFwiXFxmMDM2XCI7XG4kZmEtdmFyLWFsaWduLXJpZ2h0OiBcIlxcZjAzOFwiO1xuJGZhLXZhci1hbWF6b246IFwiXFxmMjcwXCI7XG4kZmEtdmFyLWFtYnVsYW5jZTogXCJcXGYwZjlcIjtcbiRmYS12YXItYW1lcmljYW4tc2lnbi1sYW5ndWFnZS1pbnRlcnByZXRpbmc6IFwiXFxmMmEzXCI7XG4kZmEtdmFyLWFuY2hvcjogXCJcXGYxM2RcIjtcbiRmYS12YXItYW5kcm9pZDogXCJcXGYxN2JcIjtcbiRmYS12YXItYW5nZWxsaXN0OiBcIlxcZjIwOVwiO1xuJGZhLXZhci1hbmdsZS1kb3VibGUtZG93bjogXCJcXGYxMDNcIjtcbiRmYS12YXItYW5nbGUtZG91YmxlLWxlZnQ6IFwiXFxmMTAwXCI7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS1yaWdodDogXCJcXGYxMDFcIjtcbiRmYS12YXItYW5nbGUtZG91YmxlLXVwOiBcIlxcZjEwMlwiO1xuJGZhLXZhci1hbmdsZS1kb3duOiBcIlxcZjEwN1wiO1xuJGZhLXZhci1hbmdsZS1sZWZ0OiBcIlxcZjEwNFwiO1xuJGZhLXZhci1hbmdsZS1yaWdodDogXCJcXGYxMDVcIjtcbiRmYS12YXItYW5nbGUtdXA6IFwiXFxmMTA2XCI7XG4kZmEtdmFyLWFwcGxlOiBcIlxcZjE3OVwiO1xuJGZhLXZhci1hcmNoaXZlOiBcIlxcZjE4N1wiO1xuJGZhLXZhci1hcmVhLWNoYXJ0OiBcIlxcZjFmZVwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtZG93bjogXCJcXGYwYWJcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLWxlZnQ6IFwiXFxmMGE4XCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLWRvd246IFwiXFxmMDFhXCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLWxlZnQ6IFwiXFxmMTkwXCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLXJpZ2h0OiBcIlxcZjE4ZVwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtby11cDogXCJcXGYwMWJcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLXJpZ2h0OiBcIlxcZjBhOVwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtdXA6IFwiXFxmMGFhXCI7XG4kZmEtdmFyLWFycm93LWRvd246IFwiXFxmMDYzXCI7XG4kZmEtdmFyLWFycm93LWxlZnQ6IFwiXFxmMDYwXCI7XG4kZmEtdmFyLWFycm93LXJpZ2h0OiBcIlxcZjA2MVwiO1xuJGZhLXZhci1hcnJvdy11cDogXCJcXGYwNjJcIjtcbiRmYS12YXItYXJyb3dzOiBcIlxcZjA0N1wiO1xuJGZhLXZhci1hcnJvd3MtYWx0OiBcIlxcZjBiMlwiO1xuJGZhLXZhci1hcnJvd3MtaDogXCJcXGYwN2VcIjtcbiRmYS12YXItYXJyb3dzLXY6IFwiXFxmMDdkXCI7XG4kZmEtdmFyLWFzbC1pbnRlcnByZXRpbmc6IFwiXFxmMmEzXCI7XG4kZmEtdmFyLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczogXCJcXGYyYTJcIjtcbiRmYS12YXItYXN0ZXJpc2s6IFwiXFxmMDY5XCI7XG4kZmEtdmFyLWF0OiBcIlxcZjFmYVwiO1xuJGZhLXZhci1hdWRpby1kZXNjcmlwdGlvbjogXCJcXGYyOWVcIjtcbiRmYS12YXItYXV0b21vYmlsZTogXCJcXGYxYjlcIjtcbiRmYS12YXItYmFja3dhcmQ6IFwiXFxmMDRhXCI7XG4kZmEtdmFyLWJhbGFuY2Utc2NhbGU6IFwiXFxmMjRlXCI7XG4kZmEtdmFyLWJhbjogXCJcXGYwNWVcIjtcbiRmYS12YXItYmFuZGNhbXA6IFwiXFxmMmQ1XCI7XG4kZmEtdmFyLWJhbms6IFwiXFxmMTljXCI7XG4kZmEtdmFyLWJhci1jaGFydDogXCJcXGYwODBcIjtcbiRmYS12YXItYmFyLWNoYXJ0LW86IFwiXFxmMDgwXCI7XG4kZmEtdmFyLWJhcmNvZGU6IFwiXFxmMDJhXCI7XG4kZmEtdmFyLWJhcnM6IFwiXFxmMGM5XCI7XG4kZmEtdmFyLWJhdGg6IFwiXFxmMmNkXCI7XG4kZmEtdmFyLWJhdGh0dWI6IFwiXFxmMmNkXCI7XG4kZmEtdmFyLWJhdHRlcnk6IFwiXFxmMjQwXCI7XG4kZmEtdmFyLWJhdHRlcnktMDogXCJcXGYyNDRcIjtcbiRmYS12YXItYmF0dGVyeS0xOiBcIlxcZjI0M1wiO1xuJGZhLXZhci1iYXR0ZXJ5LTI6IFwiXFxmMjQyXCI7XG4kZmEtdmFyLWJhdHRlcnktMzogXCJcXGYyNDFcIjtcbiRmYS12YXItYmF0dGVyeS00OiBcIlxcZjI0MFwiO1xuJGZhLXZhci1iYXR0ZXJ5LWVtcHR5OiBcIlxcZjI0NFwiO1xuJGZhLXZhci1iYXR0ZXJ5LWZ1bGw6IFwiXFxmMjQwXCI7XG4kZmEtdmFyLWJhdHRlcnktaGFsZjogXCJcXGYyNDJcIjtcbiRmYS12YXItYmF0dGVyeS1xdWFydGVyOiBcIlxcZjI0M1wiO1xuJGZhLXZhci1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOiBcIlxcZjI0MVwiO1xuJGZhLXZhci1iZWQ6IFwiXFxmMjM2XCI7XG4kZmEtdmFyLWJlZXI6IFwiXFxmMGZjXCI7XG4kZmEtdmFyLWJlaGFuY2U6IFwiXFxmMWI0XCI7XG4kZmEtdmFyLWJlaGFuY2Utc3F1YXJlOiBcIlxcZjFiNVwiO1xuJGZhLXZhci1iZWxsOiBcIlxcZjBmM1wiO1xuJGZhLXZhci1iZWxsLW86IFwiXFxmMGEyXCI7XG4kZmEtdmFyLWJlbGwtc2xhc2g6IFwiXFxmMWY2XCI7XG4kZmEtdmFyLWJlbGwtc2xhc2gtbzogXCJcXGYxZjdcIjtcbiRmYS12YXItYmljeWNsZTogXCJcXGYyMDZcIjtcbiRmYS12YXItYmlub2N1bGFyczogXCJcXGYxZTVcIjtcbiRmYS12YXItYmlydGhkYXktY2FrZTogXCJcXGYxZmRcIjtcbiRmYS12YXItYml0YnVja2V0OiBcIlxcZjE3MVwiO1xuJGZhLXZhci1iaXRidWNrZXQtc3F1YXJlOiBcIlxcZjE3MlwiO1xuJGZhLXZhci1iaXRjb2luOiBcIlxcZjE1YVwiO1xuJGZhLXZhci1ibGFjay10aWU6IFwiXFxmMjdlXCI7XG4kZmEtdmFyLWJsaW5kOiBcIlxcZjI5ZFwiO1xuJGZhLXZhci1ibHVldG9vdGg6IFwiXFxmMjkzXCI7XG4kZmEtdmFyLWJsdWV0b290aC1iOiBcIlxcZjI5NFwiO1xuJGZhLXZhci1ib2xkOiBcIlxcZjAzMlwiO1xuJGZhLXZhci1ib2x0OiBcIlxcZjBlN1wiO1xuJGZhLXZhci1ib21iOiBcIlxcZjFlMlwiO1xuJGZhLXZhci1ib29rOiBcIlxcZjAyZFwiO1xuJGZhLXZhci1ib29rbWFyazogXCJcXGYwMmVcIjtcbiRmYS12YXItYm9va21hcmstbzogXCJcXGYwOTdcIjtcbiRmYS12YXItYnJhaWxsZTogXCJcXGYyYTFcIjtcbiRmYS12YXItYnJpZWZjYXNlOiBcIlxcZjBiMVwiO1xuJGZhLXZhci1idGM6IFwiXFxmMTVhXCI7XG4kZmEtdmFyLWJ1ZzogXCJcXGYxODhcIjtcbiRmYS12YXItYnVpbGRpbmc6IFwiXFxmMWFkXCI7XG4kZmEtdmFyLWJ1aWxkaW5nLW86IFwiXFxmMGY3XCI7XG4kZmEtdmFyLWJ1bGxob3JuOiBcIlxcZjBhMVwiO1xuJGZhLXZhci1idWxsc2V5ZTogXCJcXGYxNDBcIjtcbiRmYS12YXItYnVzOiBcIlxcZjIwN1wiO1xuJGZhLXZhci1idXlzZWxsYWRzOiBcIlxcZjIwZFwiO1xuJGZhLXZhci1jYWI6IFwiXFxmMWJhXCI7XG4kZmEtdmFyLWNhbGN1bGF0b3I6IFwiXFxmMWVjXCI7XG4kZmEtdmFyLWNhbGVuZGFyOiBcIlxcZjA3M1wiO1xuJGZhLXZhci1jYWxlbmRhci1jaGVjay1vOiBcIlxcZjI3NFwiO1xuJGZhLXZhci1jYWxlbmRhci1taW51cy1vOiBcIlxcZjI3MlwiO1xuJGZhLXZhci1jYWxlbmRhci1vOiBcIlxcZjEzM1wiO1xuJGZhLXZhci1jYWxlbmRhci1wbHVzLW86IFwiXFxmMjcxXCI7XG4kZmEtdmFyLWNhbGVuZGFyLXRpbWVzLW86IFwiXFxmMjczXCI7XG4kZmEtdmFyLWNhbWVyYTogXCJcXGYwMzBcIjtcbiRmYS12YXItY2FtZXJhLXJldHJvOiBcIlxcZjA4M1wiO1xuJGZhLXZhci1jYXI6IFwiXFxmMWI5XCI7XG4kZmEtdmFyLWNhcmV0LWRvd246IFwiXFxmMGQ3XCI7XG4kZmEtdmFyLWNhcmV0LWxlZnQ6IFwiXFxmMGQ5XCI7XG4kZmEtdmFyLWNhcmV0LXJpZ2h0OiBcIlxcZjBkYVwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby1kb3duOiBcIlxcZjE1MFwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby1sZWZ0OiBcIlxcZjE5MVwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby1yaWdodDogXCJcXGYxNTJcIjtcbiRmYS12YXItY2FyZXQtc3F1YXJlLW8tdXA6IFwiXFxmMTUxXCI7XG4kZmEtdmFyLWNhcmV0LXVwOiBcIlxcZjBkOFwiO1xuJGZhLXZhci1jYXJ0LWFycm93LWRvd246IFwiXFxmMjE4XCI7XG4kZmEtdmFyLWNhcnQtcGx1czogXCJcXGYyMTdcIjtcbiRmYS12YXItY2M6IFwiXFxmMjBhXCI7XG4kZmEtdmFyLWNjLWFtZXg6IFwiXFxmMWYzXCI7XG4kZmEtdmFyLWNjLWRpbmVycy1jbHViOiBcIlxcZjI0Y1wiO1xuJGZhLXZhci1jYy1kaXNjb3ZlcjogXCJcXGYxZjJcIjtcbiRmYS12YXItY2MtamNiOiBcIlxcZjI0YlwiO1xuJGZhLXZhci1jYy1tYXN0ZXJjYXJkOiBcIlxcZjFmMVwiO1xuJGZhLXZhci1jYy1wYXlwYWw6IFwiXFxmMWY0XCI7XG4kZmEtdmFyLWNjLXN0cmlwZTogXCJcXGYxZjVcIjtcbiRmYS12YXItY2MtdmlzYTogXCJcXGYxZjBcIjtcbiRmYS12YXItY2VydGlmaWNhdGU6IFwiXFxmMGEzXCI7XG4kZmEtdmFyLWNoYWluOiBcIlxcZjBjMVwiO1xuJGZhLXZhci1jaGFpbi1icm9rZW46IFwiXFxmMTI3XCI7XG4kZmEtdmFyLWNoZWNrOiBcIlxcZjAwY1wiO1xuJGZhLXZhci1jaGVjay1jaXJjbGU6IFwiXFxmMDU4XCI7XG4kZmEtdmFyLWNoZWNrLWNpcmNsZS1vOiBcIlxcZjA1ZFwiO1xuJGZhLXZhci1jaGVjay1zcXVhcmU6IFwiXFxmMTRhXCI7XG4kZmEtdmFyLWNoZWNrLXNxdWFyZS1vOiBcIlxcZjA0NlwiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1kb3duOiBcIlxcZjEzYVwiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1sZWZ0OiBcIlxcZjEzN1wiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1yaWdodDogXCJcXGYxMzhcIjtcbiRmYS12YXItY2hldnJvbi1jaXJjbGUtdXA6IFwiXFxmMTM5XCI7XG4kZmEtdmFyLWNoZXZyb24tZG93bjogXCJcXGYwNzhcIjtcbiRmYS12YXItY2hldnJvbi1sZWZ0OiBcIlxcZjA1M1wiO1xuJGZhLXZhci1jaGV2cm9uLXJpZ2h0OiBcIlxcZjA1NFwiO1xuJGZhLXZhci1jaGV2cm9uLXVwOiBcIlxcZjA3N1wiO1xuJGZhLXZhci1jaGlsZDogXCJcXGYxYWVcIjtcbiRmYS12YXItY2hyb21lOiBcIlxcZjI2OFwiO1xuJGZhLXZhci1jaXJjbGU6IFwiXFxmMTExXCI7XG4kZmEtdmFyLWNpcmNsZS1vOiBcIlxcZjEwY1wiO1xuJGZhLXZhci1jaXJjbGUtby1ub3RjaDogXCJcXGYxY2VcIjtcbiRmYS12YXItY2lyY2xlLXRoaW46IFwiXFxmMWRiXCI7XG4kZmEtdmFyLWNsaXBib2FyZDogXCJcXGYwZWFcIjtcbiRmYS12YXItY2xvY2stbzogXCJcXGYwMTdcIjtcbiRmYS12YXItY2xvbmU6IFwiXFxmMjRkXCI7XG4kZmEtdmFyLWNsb3NlOiBcIlxcZjAwZFwiO1xuJGZhLXZhci1jbG91ZDogXCJcXGYwYzJcIjtcbiRmYS12YXItY2xvdWQtZG93bmxvYWQ6IFwiXFxmMGVkXCI7XG4kZmEtdmFyLWNsb3VkLXVwbG9hZDogXCJcXGYwZWVcIjtcbiRmYS12YXItY255OiBcIlxcZjE1N1wiO1xuJGZhLXZhci1jb2RlOiBcIlxcZjEyMVwiO1xuJGZhLXZhci1jb2RlLWZvcms6IFwiXFxmMTI2XCI7XG4kZmEtdmFyLWNvZGVwZW46IFwiXFxmMWNiXCI7XG4kZmEtdmFyLWNvZGllcGllOiBcIlxcZjI4NFwiO1xuJGZhLXZhci1jb2ZmZWU6IFwiXFxmMGY0XCI7XG4kZmEtdmFyLWNvZzogXCJcXGYwMTNcIjtcbiRmYS12YXItY29nczogXCJcXGYwODVcIjtcbiRmYS12YXItY29sdW1uczogXCJcXGYwZGJcIjtcbiRmYS12YXItY29tbWVudDogXCJcXGYwNzVcIjtcbiRmYS12YXItY29tbWVudC1vOiBcIlxcZjBlNVwiO1xuJGZhLXZhci1jb21tZW50aW5nOiBcIlxcZjI3YVwiO1xuJGZhLXZhci1jb21tZW50aW5nLW86IFwiXFxmMjdiXCI7XG4kZmEtdmFyLWNvbW1lbnRzOiBcIlxcZjA4NlwiO1xuJGZhLXZhci1jb21tZW50cy1vOiBcIlxcZjBlNlwiO1xuJGZhLXZhci1jb21wYXNzOiBcIlxcZjE0ZVwiO1xuJGZhLXZhci1jb21wcmVzczogXCJcXGYwNjZcIjtcbiRmYS12YXItY29ubmVjdGRldmVsb3A6IFwiXFxmMjBlXCI7XG4kZmEtdmFyLWNvbnRhbzogXCJcXGYyNmRcIjtcbiRmYS12YXItY29weTogXCJcXGYwYzVcIjtcbiRmYS12YXItY29weXJpZ2h0OiBcIlxcZjFmOVwiO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zOiBcIlxcZjI1ZVwiO1xuJGZhLXZhci1jcmVkaXQtY2FyZDogXCJcXGYwOWRcIjtcbiRmYS12YXItY3JlZGl0LWNhcmQtYWx0OiBcIlxcZjI4M1wiO1xuJGZhLXZhci1jcm9wOiBcIlxcZjEyNVwiO1xuJGZhLXZhci1jcm9zc2hhaXJzOiBcIlxcZjA1YlwiO1xuJGZhLXZhci1jc3MzOiBcIlxcZjEzY1wiO1xuJGZhLXZhci1jdWJlOiBcIlxcZjFiMlwiO1xuJGZhLXZhci1jdWJlczogXCJcXGYxYjNcIjtcbiRmYS12YXItY3V0OiBcIlxcZjBjNFwiO1xuJGZhLXZhci1jdXRsZXJ5OiBcIlxcZjBmNVwiO1xuJGZhLXZhci1kYXNoYm9hcmQ6IFwiXFxmMGU0XCI7XG4kZmEtdmFyLWRhc2hjdWJlOiBcIlxcZjIxMFwiO1xuJGZhLXZhci1kYXRhYmFzZTogXCJcXGYxYzBcIjtcbiRmYS12YXItZGVhZjogXCJcXGYyYTRcIjtcbiRmYS12YXItZGVhZm5lc3M6IFwiXFxmMmE0XCI7XG4kZmEtdmFyLWRlZGVudDogXCJcXGYwM2JcIjtcbiRmYS12YXItZGVsaWNpb3VzOiBcIlxcZjFhNVwiO1xuJGZhLXZhci1kZXNrdG9wOiBcIlxcZjEwOFwiO1xuJGZhLXZhci1kZXZpYW50YXJ0OiBcIlxcZjFiZFwiO1xuJGZhLXZhci1kaWFtb25kOiBcIlxcZjIxOVwiO1xuJGZhLXZhci1kaWdnOiBcIlxcZjFhNlwiO1xuJGZhLXZhci1kb2xsYXI6IFwiXFxmMTU1XCI7XG4kZmEtdmFyLWRvdC1jaXJjbGUtbzogXCJcXGYxOTJcIjtcbiRmYS12YXItZG93bmxvYWQ6IFwiXFxmMDE5XCI7XG4kZmEtdmFyLWRyaWJiYmxlOiBcIlxcZjE3ZFwiO1xuJGZhLXZhci1kcml2ZXJzLWxpY2Vuc2U6IFwiXFxmMmMyXCI7XG4kZmEtdmFyLWRyaXZlcnMtbGljZW5zZS1vOiBcIlxcZjJjM1wiO1xuJGZhLXZhci1kcm9wYm94OiBcIlxcZjE2YlwiO1xuJGZhLXZhci1kcnVwYWw6IFwiXFxmMWE5XCI7XG4kZmEtdmFyLWVkZ2U6IFwiXFxmMjgyXCI7XG4kZmEtdmFyLWVkaXQ6IFwiXFxmMDQ0XCI7XG4kZmEtdmFyLWVlcmNhc3Q6IFwiXFxmMmRhXCI7XG4kZmEtdmFyLWVqZWN0OiBcIlxcZjA1MlwiO1xuJGZhLXZhci1lbGxpcHNpcy1oOiBcIlxcZjE0MVwiO1xuJGZhLXZhci1lbGxpcHNpcy12OiBcIlxcZjE0MlwiO1xuJGZhLXZhci1lbXBpcmU6IFwiXFxmMWQxXCI7XG4kZmEtdmFyLWVudmVsb3BlOiBcIlxcZjBlMFwiO1xuJGZhLXZhci1lbnZlbG9wZS1vOiBcIlxcZjAwM1wiO1xuJGZhLXZhci1lbnZlbG9wZS1vcGVuOiBcIlxcZjJiNlwiO1xuJGZhLXZhci1lbnZlbG9wZS1vcGVuLW86IFwiXFxmMmI3XCI7XG4kZmEtdmFyLWVudmVsb3BlLXNxdWFyZTogXCJcXGYxOTlcIjtcbiRmYS12YXItZW52aXJhOiBcIlxcZjI5OVwiO1xuJGZhLXZhci1lcmFzZXI6IFwiXFxmMTJkXCI7XG4kZmEtdmFyLWV0c3k6IFwiXFxmMmQ3XCI7XG4kZmEtdmFyLWV1cjogXCJcXGYxNTNcIjtcbiRmYS12YXItZXVybzogXCJcXGYxNTNcIjtcbiRmYS12YXItZXhjaGFuZ2U6IFwiXFxmMGVjXCI7XG4kZmEtdmFyLWV4Y2xhbWF0aW9uOiBcIlxcZjEyYVwiO1xuJGZhLXZhci1leGNsYW1hdGlvbi1jaXJjbGU6IFwiXFxmMDZhXCI7XG4kZmEtdmFyLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOiBcIlxcZjA3MVwiO1xuJGZhLXZhci1leHBhbmQ6IFwiXFxmMDY1XCI7XG4kZmEtdmFyLWV4cGVkaXRlZHNzbDogXCJcXGYyM2VcIjtcbiRmYS12YXItZXh0ZXJuYWwtbGluazogXCJcXGYwOGVcIjtcbiRmYS12YXItZXh0ZXJuYWwtbGluay1zcXVhcmU6IFwiXFxmMTRjXCI7XG4kZmEtdmFyLWV5ZTogXCJcXGYwNmVcIjtcbiRmYS12YXItZXllLXNsYXNoOiBcIlxcZjA3MFwiO1xuJGZhLXZhci1leWVkcm9wcGVyOiBcIlxcZjFmYlwiO1xuJGZhLXZhci1mYTogXCJcXGYyYjRcIjtcbiRmYS12YXItZmFjZWJvb2s6IFwiXFxmMDlhXCI7XG4kZmEtdmFyLWZhY2Vib29rLWY6IFwiXFxmMDlhXCI7XG4kZmEtdmFyLWZhY2Vib29rLW9mZmljaWFsOiBcIlxcZjIzMFwiO1xuJGZhLXZhci1mYWNlYm9vay1zcXVhcmU6IFwiXFxmMDgyXCI7XG4kZmEtdmFyLWZhc3QtYmFja3dhcmQ6IFwiXFxmMDQ5XCI7XG4kZmEtdmFyLWZhc3QtZm9yd2FyZDogXCJcXGYwNTBcIjtcbiRmYS12YXItZmF4OiBcIlxcZjFhY1wiO1xuJGZhLXZhci1mZWVkOiBcIlxcZjA5ZVwiO1xuJGZhLXZhci1mZW1hbGU6IFwiXFxmMTgyXCI7XG4kZmEtdmFyLWZpZ2h0ZXItamV0OiBcIlxcZjBmYlwiO1xuJGZhLXZhci1maWxlOiBcIlxcZjE1YlwiO1xuJGZhLXZhci1maWxlLWFyY2hpdmUtbzogXCJcXGYxYzZcIjtcbiRmYS12YXItZmlsZS1hdWRpby1vOiBcIlxcZjFjN1wiO1xuJGZhLXZhci1maWxlLWNvZGUtbzogXCJcXGYxYzlcIjtcbiRmYS12YXItZmlsZS1leGNlbC1vOiBcIlxcZjFjM1wiO1xuJGZhLXZhci1maWxlLWltYWdlLW86IFwiXFxmMWM1XCI7XG4kZmEtdmFyLWZpbGUtbW92aWUtbzogXCJcXGYxYzhcIjtcbiRmYS12YXItZmlsZS1vOiBcIlxcZjAxNlwiO1xuJGZhLXZhci1maWxlLXBkZi1vOiBcIlxcZjFjMVwiO1xuJGZhLXZhci1maWxlLXBob3RvLW86IFwiXFxmMWM1XCI7XG4kZmEtdmFyLWZpbGUtcGljdHVyZS1vOiBcIlxcZjFjNVwiO1xuJGZhLXZhci1maWxlLXBvd2VycG9pbnQtbzogXCJcXGYxYzRcIjtcbiRmYS12YXItZmlsZS1zb3VuZC1vOiBcIlxcZjFjN1wiO1xuJGZhLXZhci1maWxlLXRleHQ6IFwiXFxmMTVjXCI7XG4kZmEtdmFyLWZpbGUtdGV4dC1vOiBcIlxcZjBmNlwiO1xuJGZhLXZhci1maWxlLXZpZGVvLW86IFwiXFxmMWM4XCI7XG4kZmEtdmFyLWZpbGUtd29yZC1vOiBcIlxcZjFjMlwiO1xuJGZhLXZhci1maWxlLXppcC1vOiBcIlxcZjFjNlwiO1xuJGZhLXZhci1maWxlcy1vOiBcIlxcZjBjNVwiO1xuJGZhLXZhci1maWxtOiBcIlxcZjAwOFwiO1xuJGZhLXZhci1maWx0ZXI6IFwiXFxmMGIwXCI7XG4kZmEtdmFyLWZpcmU6IFwiXFxmMDZkXCI7XG4kZmEtdmFyLWZpcmUtZXh0aW5ndWlzaGVyOiBcIlxcZjEzNFwiO1xuJGZhLXZhci1maXJlZm94OiBcIlxcZjI2OVwiO1xuJGZhLXZhci1maXJzdC1vcmRlcjogXCJcXGYyYjBcIjtcbiRmYS12YXItZmxhZzogXCJcXGYwMjRcIjtcbiRmYS12YXItZmxhZy1jaGVja2VyZWQ6IFwiXFxmMTFlXCI7XG4kZmEtdmFyLWZsYWctbzogXCJcXGYxMWRcIjtcbiRmYS12YXItZmxhc2g6IFwiXFxmMGU3XCI7XG4kZmEtdmFyLWZsYXNrOiBcIlxcZjBjM1wiO1xuJGZhLXZhci1mbGlja3I6IFwiXFxmMTZlXCI7XG4kZmEtdmFyLWZsb3BweS1vOiBcIlxcZjBjN1wiO1xuJGZhLXZhci1mb2xkZXI6IFwiXFxmMDdiXCI7XG4kZmEtdmFyLWZvbGRlci1vOiBcIlxcZjExNFwiO1xuJGZhLXZhci1mb2xkZXItb3BlbjogXCJcXGYwN2NcIjtcbiRmYS12YXItZm9sZGVyLW9wZW4tbzogXCJcXGYxMTVcIjtcbiRmYS12YXItZm9udDogXCJcXGYwMzFcIjtcbiRmYS12YXItZm9udC1hd2Vzb21lOiBcIlxcZjJiNFwiO1xuJGZhLXZhci1mb250aWNvbnM6IFwiXFxmMjgwXCI7XG4kZmEtdmFyLWZvcnQtYXdlc29tZTogXCJcXGYyODZcIjtcbiRmYS12YXItZm9ydW1iZWU6IFwiXFxmMjExXCI7XG4kZmEtdmFyLWZvcndhcmQ6IFwiXFxmMDRlXCI7XG4kZmEtdmFyLWZvdXJzcXVhcmU6IFwiXFxmMTgwXCI7XG4kZmEtdmFyLWZyZWUtY29kZS1jYW1wOiBcIlxcZjJjNVwiO1xuJGZhLXZhci1mcm93bi1vOiBcIlxcZjExOVwiO1xuJGZhLXZhci1mdXRib2wtbzogXCJcXGYxZTNcIjtcbiRmYS12YXItZ2FtZXBhZDogXCJcXGYxMWJcIjtcbiRmYS12YXItZ2F2ZWw6IFwiXFxmMGUzXCI7XG4kZmEtdmFyLWdicDogXCJcXGYxNTRcIjtcbiRmYS12YXItZ2U6IFwiXFxmMWQxXCI7XG4kZmEtdmFyLWdlYXI6IFwiXFxmMDEzXCI7XG4kZmEtdmFyLWdlYXJzOiBcIlxcZjA4NVwiO1xuJGZhLXZhci1nZW5kZXJsZXNzOiBcIlxcZjIyZFwiO1xuJGZhLXZhci1nZXQtcG9ja2V0OiBcIlxcZjI2NVwiO1xuJGZhLXZhci1nZzogXCJcXGYyNjBcIjtcbiRmYS12YXItZ2ctY2lyY2xlOiBcIlxcZjI2MVwiO1xuJGZhLXZhci1naWZ0OiBcIlxcZjA2YlwiO1xuJGZhLXZhci1naXQ6IFwiXFxmMWQzXCI7XG4kZmEtdmFyLWdpdC1zcXVhcmU6IFwiXFxmMWQyXCI7XG4kZmEtdmFyLWdpdGh1YjogXCJcXGYwOWJcIjtcbiRmYS12YXItZ2l0aHViLWFsdDogXCJcXGYxMTNcIjtcbiRmYS12YXItZ2l0aHViLXNxdWFyZTogXCJcXGYwOTJcIjtcbiRmYS12YXItZ2l0bGFiOiBcIlxcZjI5NlwiO1xuJGZhLXZhci1naXR0aXA6IFwiXFxmMTg0XCI7XG4kZmEtdmFyLWdsYXNzOiBcIlxcZjAwMFwiO1xuJGZhLXZhci1nbGlkZTogXCJcXGYyYTVcIjtcbiRmYS12YXItZ2xpZGUtZzogXCJcXGYyYTZcIjtcbiRmYS12YXItZ2xvYmU6IFwiXFxmMGFjXCI7XG4kZmEtdmFyLWdvb2dsZTogXCJcXGYxYTBcIjtcbiRmYS12YXItZ29vZ2xlLXBsdXM6IFwiXFxmMGQ1XCI7XG4kZmEtdmFyLWdvb2dsZS1wbHVzLWNpcmNsZTogXCJcXGYyYjNcIjtcbiRmYS12YXItZ29vZ2xlLXBsdXMtb2ZmaWNpYWw6IFwiXFxmMmIzXCI7XG4kZmEtdmFyLWdvb2dsZS1wbHVzLXNxdWFyZTogXCJcXGYwZDRcIjtcbiRmYS12YXItZ29vZ2xlLXdhbGxldDogXCJcXGYxZWVcIjtcbiRmYS12YXItZ3JhZHVhdGlvbi1jYXA6IFwiXFxmMTlkXCI7XG4kZmEtdmFyLWdyYXRpcGF5OiBcIlxcZjE4NFwiO1xuJGZhLXZhci1ncmF2OiBcIlxcZjJkNlwiO1xuJGZhLXZhci1ncm91cDogXCJcXGYwYzBcIjtcbiRmYS12YXItaC1zcXVhcmU6IFwiXFxmMGZkXCI7XG4kZmEtdmFyLWhhY2tlci1uZXdzOiBcIlxcZjFkNFwiO1xuJGZhLXZhci1oYW5kLWdyYWItbzogXCJcXGYyNTVcIjtcbiRmYS12YXItaGFuZC1saXphcmQtbzogXCJcXGYyNThcIjtcbiRmYS12YXItaGFuZC1vLWRvd246IFwiXFxmMGE3XCI7XG4kZmEtdmFyLWhhbmQtby1sZWZ0OiBcIlxcZjBhNVwiO1xuJGZhLXZhci1oYW5kLW8tcmlnaHQ6IFwiXFxmMGE0XCI7XG4kZmEtdmFyLWhhbmQtby11cDogXCJcXGYwYTZcIjtcbiRmYS12YXItaGFuZC1wYXBlci1vOiBcIlxcZjI1NlwiO1xuJGZhLXZhci1oYW5kLXBlYWNlLW86IFwiXFxmMjViXCI7XG4kZmEtdmFyLWhhbmQtcG9pbnRlci1vOiBcIlxcZjI1YVwiO1xuJGZhLXZhci1oYW5kLXJvY2stbzogXCJcXGYyNTVcIjtcbiRmYS12YXItaGFuZC1zY2lzc29ycy1vOiBcIlxcZjI1N1wiO1xuJGZhLXZhci1oYW5kLXNwb2NrLW86IFwiXFxmMjU5XCI7XG4kZmEtdmFyLWhhbmQtc3RvcC1vOiBcIlxcZjI1NlwiO1xuJGZhLXZhci1oYW5kc2hha2UtbzogXCJcXGYyYjVcIjtcbiRmYS12YXItaGFyZC1vZi1oZWFyaW5nOiBcIlxcZjJhNFwiO1xuJGZhLXZhci1oYXNodGFnOiBcIlxcZjI5MlwiO1xuJGZhLXZhci1oZGQtbzogXCJcXGYwYTBcIjtcbiRmYS12YXItaGVhZGVyOiBcIlxcZjFkY1wiO1xuJGZhLXZhci1oZWFkcGhvbmVzOiBcIlxcZjAyNVwiO1xuJGZhLXZhci1oZWFydDogXCJcXGYwMDRcIjtcbiRmYS12YXItaGVhcnQtbzogXCJcXGYwOGFcIjtcbiRmYS12YXItaGVhcnRiZWF0OiBcIlxcZjIxZVwiO1xuJGZhLXZhci1oaXN0b3J5OiBcIlxcZjFkYVwiO1xuJGZhLXZhci1ob21lOiBcIlxcZjAxNVwiO1xuJGZhLXZhci1ob3NwaXRhbC1vOiBcIlxcZjBmOFwiO1xuJGZhLXZhci1ob3RlbDogXCJcXGYyMzZcIjtcbiRmYS12YXItaG91cmdsYXNzOiBcIlxcZjI1NFwiO1xuJGZhLXZhci1ob3VyZ2xhc3MtMTogXCJcXGYyNTFcIjtcbiRmYS12YXItaG91cmdsYXNzLTI6IFwiXFxmMjUyXCI7XG4kZmEtdmFyLWhvdXJnbGFzcy0zOiBcIlxcZjI1M1wiO1xuJGZhLXZhci1ob3VyZ2xhc3MtZW5kOiBcIlxcZjI1M1wiO1xuJGZhLXZhci1ob3VyZ2xhc3MtaGFsZjogXCJcXGYyNTJcIjtcbiRmYS12YXItaG91cmdsYXNzLW86IFwiXFxmMjUwXCI7XG4kZmEtdmFyLWhvdXJnbGFzcy1zdGFydDogXCJcXGYyNTFcIjtcbiRmYS12YXItaG91eno6IFwiXFxmMjdjXCI7XG4kZmEtdmFyLWh0bWw1OiBcIlxcZjEzYlwiO1xuJGZhLXZhci1pLWN1cnNvcjogXCJcXGYyNDZcIjtcbiRmYS12YXItaWQtYmFkZ2U6IFwiXFxmMmMxXCI7XG4kZmEtdmFyLWlkLWNhcmQ6IFwiXFxmMmMyXCI7XG4kZmEtdmFyLWlkLWNhcmQtbzogXCJcXGYyYzNcIjtcbiRmYS12YXItaWxzOiBcIlxcZjIwYlwiO1xuJGZhLXZhci1pbWFnZTogXCJcXGYwM2VcIjtcbiRmYS12YXItaW1kYjogXCJcXGYyZDhcIjtcbiRmYS12YXItaW5ib3g6IFwiXFxmMDFjXCI7XG4kZmEtdmFyLWluZGVudDogXCJcXGYwM2NcIjtcbiRmYS12YXItaW5kdXN0cnk6IFwiXFxmMjc1XCI7XG4kZmEtdmFyLWluZm86IFwiXFxmMTI5XCI7XG4kZmEtdmFyLWluZm8tY2lyY2xlOiBcIlxcZjA1YVwiO1xuJGZhLXZhci1pbnI6IFwiXFxmMTU2XCI7XG4kZmEtdmFyLWluc3RhZ3JhbTogXCJcXGYxNmRcIjtcbiRmYS12YXItaW5zdGl0dXRpb246IFwiXFxmMTljXCI7XG4kZmEtdmFyLWludGVybmV0LWV4cGxvcmVyOiBcIlxcZjI2YlwiO1xuJGZhLXZhci1pbnRlcnNleDogXCJcXGYyMjRcIjtcbiRmYS12YXItaW94aG9zdDogXCJcXGYyMDhcIjtcbiRmYS12YXItaXRhbGljOiBcIlxcZjAzM1wiO1xuJGZhLXZhci1qb29tbGE6IFwiXFxmMWFhXCI7XG4kZmEtdmFyLWpweTogXCJcXGYxNTdcIjtcbiRmYS12YXItanNmaWRkbGU6IFwiXFxmMWNjXCI7XG4kZmEtdmFyLWtleTogXCJcXGYwODRcIjtcbiRmYS12YXIta2V5Ym9hcmQtbzogXCJcXGYxMWNcIjtcbiRmYS12YXIta3J3OiBcIlxcZjE1OVwiO1xuJGZhLXZhci1sYW5ndWFnZTogXCJcXGYxYWJcIjtcbiRmYS12YXItbGFwdG9wOiBcIlxcZjEwOVwiO1xuJGZhLXZhci1sYXN0Zm06IFwiXFxmMjAyXCI7XG4kZmEtdmFyLWxhc3RmbS1zcXVhcmU6IFwiXFxmMjAzXCI7XG4kZmEtdmFyLWxlYWY6IFwiXFxmMDZjXCI7XG4kZmEtdmFyLWxlYW5wdWI6IFwiXFxmMjEyXCI7XG4kZmEtdmFyLWxlZ2FsOiBcIlxcZjBlM1wiO1xuJGZhLXZhci1sZW1vbi1vOiBcIlxcZjA5NFwiO1xuJGZhLXZhci1sZXZlbC1kb3duOiBcIlxcZjE0OVwiO1xuJGZhLXZhci1sZXZlbC11cDogXCJcXGYxNDhcIjtcbiRmYS12YXItbGlmZS1ib3V5OiBcIlxcZjFjZFwiO1xuJGZhLXZhci1saWZlLWJ1b3k6IFwiXFxmMWNkXCI7XG4kZmEtdmFyLWxpZmUtcmluZzogXCJcXGYxY2RcIjtcbiRmYS12YXItbGlmZS1zYXZlcjogXCJcXGYxY2RcIjtcbiRmYS12YXItbGlnaHRidWxiLW86IFwiXFxmMGViXCI7XG4kZmEtdmFyLWxpbmUtY2hhcnQ6IFwiXFxmMjAxXCI7XG4kZmEtdmFyLWxpbms6IFwiXFxmMGMxXCI7XG4kZmEtdmFyLWxpbmtlZGluOiBcIlxcZjBlMVwiO1xuJGZhLXZhci1saW5rZWRpbi1zcXVhcmU6IFwiXFxmMDhjXCI7XG4kZmEtdmFyLWxpbm9kZTogXCJcXGYyYjhcIjtcbiRmYS12YXItbGludXg6IFwiXFxmMTdjXCI7XG4kZmEtdmFyLWxpc3Q6IFwiXFxmMDNhXCI7XG4kZmEtdmFyLWxpc3QtYWx0OiBcIlxcZjAyMlwiO1xuJGZhLXZhci1saXN0LW9sOiBcIlxcZjBjYlwiO1xuJGZhLXZhci1saXN0LXVsOiBcIlxcZjBjYVwiO1xuJGZhLXZhci1sb2NhdGlvbi1hcnJvdzogXCJcXGYxMjRcIjtcbiRmYS12YXItbG9jazogXCJcXGYwMjNcIjtcbiRmYS12YXItbG9uZy1hcnJvdy1kb3duOiBcIlxcZjE3NVwiO1xuJGZhLXZhci1sb25nLWFycm93LWxlZnQ6IFwiXFxmMTc3XCI7XG4kZmEtdmFyLWxvbmctYXJyb3ctcmlnaHQ6IFwiXFxmMTc4XCI7XG4kZmEtdmFyLWxvbmctYXJyb3ctdXA6IFwiXFxmMTc2XCI7XG4kZmEtdmFyLWxvdy12aXNpb246IFwiXFxmMmE4XCI7XG4kZmEtdmFyLW1hZ2ljOiBcIlxcZjBkMFwiO1xuJGZhLXZhci1tYWduZXQ6IFwiXFxmMDc2XCI7XG4kZmEtdmFyLW1haWwtZm9yd2FyZDogXCJcXGYwNjRcIjtcbiRmYS12YXItbWFpbC1yZXBseTogXCJcXGYxMTJcIjtcbiRmYS12YXItbWFpbC1yZXBseS1hbGw6IFwiXFxmMTIyXCI7XG4kZmEtdmFyLW1hbGU6IFwiXFxmMTgzXCI7XG4kZmEtdmFyLW1hcDogXCJcXGYyNzlcIjtcbiRmYS12YXItbWFwLW1hcmtlcjogXCJcXGYwNDFcIjtcbiRmYS12YXItbWFwLW86IFwiXFxmMjc4XCI7XG4kZmEtdmFyLW1hcC1waW46IFwiXFxmMjc2XCI7XG4kZmEtdmFyLW1hcC1zaWduczogXCJcXGYyNzdcIjtcbiRmYS12YXItbWFyczogXCJcXGYyMjJcIjtcbiRmYS12YXItbWFycy1kb3VibGU6IFwiXFxmMjI3XCI7XG4kZmEtdmFyLW1hcnMtc3Ryb2tlOiBcIlxcZjIyOVwiO1xuJGZhLXZhci1tYXJzLXN0cm9rZS1oOiBcIlxcZjIyYlwiO1xuJGZhLXZhci1tYXJzLXN0cm9rZS12OiBcIlxcZjIyYVwiO1xuJGZhLXZhci1tYXhjZG46IFwiXFxmMTM2XCI7XG4kZmEtdmFyLW1lYW5wYXRoOiBcIlxcZjIwY1wiO1xuJGZhLXZhci1tZWRpdW06IFwiXFxmMjNhXCI7XG4kZmEtdmFyLW1lZGtpdDogXCJcXGYwZmFcIjtcbiRmYS12YXItbWVldHVwOiBcIlxcZjJlMFwiO1xuJGZhLXZhci1tZWgtbzogXCJcXGYxMWFcIjtcbiRmYS12YXItbWVyY3VyeTogXCJcXGYyMjNcIjtcbiRmYS12YXItbWljcm9jaGlwOiBcIlxcZjJkYlwiO1xuJGZhLXZhci1taWNyb3Bob25lOiBcIlxcZjEzMFwiO1xuJGZhLXZhci1taWNyb3Bob25lLXNsYXNoOiBcIlxcZjEzMVwiO1xuJGZhLXZhci1taW51czogXCJcXGYwNjhcIjtcbiRmYS12YXItbWludXMtY2lyY2xlOiBcIlxcZjA1NlwiO1xuJGZhLXZhci1taW51cy1zcXVhcmU6IFwiXFxmMTQ2XCI7XG4kZmEtdmFyLW1pbnVzLXNxdWFyZS1vOiBcIlxcZjE0N1wiO1xuJGZhLXZhci1taXhjbG91ZDogXCJcXGYyODlcIjtcbiRmYS12YXItbW9iaWxlOiBcIlxcZjEwYlwiO1xuJGZhLXZhci1tb2JpbGUtcGhvbmU6IFwiXFxmMTBiXCI7XG4kZmEtdmFyLW1vZHg6IFwiXFxmMjg1XCI7XG4kZmEtdmFyLW1vbmV5OiBcIlxcZjBkNlwiO1xuJGZhLXZhci1tb29uLW86IFwiXFxmMTg2XCI7XG4kZmEtdmFyLW1vcnRhci1ib2FyZDogXCJcXGYxOWRcIjtcbiRmYS12YXItbW90b3JjeWNsZTogXCJcXGYyMWNcIjtcbiRmYS12YXItbW91c2UtcG9pbnRlcjogXCJcXGYyNDVcIjtcbiRmYS12YXItbXVzaWM6IFwiXFxmMDAxXCI7XG4kZmEtdmFyLW5hdmljb246IFwiXFxmMGM5XCI7XG4kZmEtdmFyLW5ldXRlcjogXCJcXGYyMmNcIjtcbiRmYS12YXItbmV3c3BhcGVyLW86IFwiXFxmMWVhXCI7XG4kZmEtdmFyLW9iamVjdC1ncm91cDogXCJcXGYyNDdcIjtcbiRmYS12YXItb2JqZWN0LXVuZ3JvdXA6IFwiXFxmMjQ4XCI7XG4kZmEtdmFyLW9kbm9rbGFzc25pa2k6IFwiXFxmMjYzXCI7XG4kZmEtdmFyLW9kbm9rbGFzc25pa2ktc3F1YXJlOiBcIlxcZjI2NFwiO1xuJGZhLXZhci1vcGVuY2FydDogXCJcXGYyM2RcIjtcbiRmYS12YXItb3BlbmlkOiBcIlxcZjE5YlwiO1xuJGZhLXZhci1vcGVyYTogXCJcXGYyNmFcIjtcbiRmYS12YXItb3B0aW4tbW9uc3RlcjogXCJcXGYyM2NcIjtcbiRmYS12YXItb3V0ZGVudDogXCJcXGYwM2JcIjtcbiRmYS12YXItcGFnZWxpbmVzOiBcIlxcZjE4Y1wiO1xuJGZhLXZhci1wYWludC1icnVzaDogXCJcXGYxZmNcIjtcbiRmYS12YXItcGFwZXItcGxhbmU6IFwiXFxmMWQ4XCI7XG4kZmEtdmFyLXBhcGVyLXBsYW5lLW86IFwiXFxmMWQ5XCI7XG4kZmEtdmFyLXBhcGVyY2xpcDogXCJcXGYwYzZcIjtcbiRmYS12YXItcGFyYWdyYXBoOiBcIlxcZjFkZFwiO1xuJGZhLXZhci1wYXN0ZTogXCJcXGYwZWFcIjtcbiRmYS12YXItcGF1c2U6IFwiXFxmMDRjXCI7XG4kZmEtdmFyLXBhdXNlLWNpcmNsZTogXCJcXGYyOGJcIjtcbiRmYS12YXItcGF1c2UtY2lyY2xlLW86IFwiXFxmMjhjXCI7XG4kZmEtdmFyLXBhdzogXCJcXGYxYjBcIjtcbiRmYS12YXItcGF5cGFsOiBcIlxcZjFlZFwiO1xuJGZhLXZhci1wZW5jaWw6IFwiXFxmMDQwXCI7XG4kZmEtdmFyLXBlbmNpbC1zcXVhcmU6IFwiXFxmMTRiXCI7XG4kZmEtdmFyLXBlbmNpbC1zcXVhcmUtbzogXCJcXGYwNDRcIjtcbiRmYS12YXItcGVyY2VudDogXCJcXGYyOTVcIjtcbiRmYS12YXItcGhvbmU6IFwiXFxmMDk1XCI7XG4kZmEtdmFyLXBob25lLXNxdWFyZTogXCJcXGYwOThcIjtcbiRmYS12YXItcGhvdG86IFwiXFxmMDNlXCI7XG4kZmEtdmFyLXBpY3R1cmUtbzogXCJcXGYwM2VcIjtcbiRmYS12YXItcGllLWNoYXJ0OiBcIlxcZjIwMFwiO1xuJGZhLXZhci1waWVkLXBpcGVyOiBcIlxcZjJhZVwiO1xuJGZhLXZhci1waWVkLXBpcGVyLWFsdDogXCJcXGYxYThcIjtcbiRmYS12YXItcGllZC1waXBlci1wcDogXCJcXGYxYTdcIjtcbiRmYS12YXItcGludGVyZXN0OiBcIlxcZjBkMlwiO1xuJGZhLXZhci1waW50ZXJlc3QtcDogXCJcXGYyMzFcIjtcbiRmYS12YXItcGludGVyZXN0LXNxdWFyZTogXCJcXGYwZDNcIjtcbiRmYS12YXItcGxhbmU6IFwiXFxmMDcyXCI7XG4kZmEtdmFyLXBsYXk6IFwiXFxmMDRiXCI7XG4kZmEtdmFyLXBsYXktY2lyY2xlOiBcIlxcZjE0NFwiO1xuJGZhLXZhci1wbGF5LWNpcmNsZS1vOiBcIlxcZjAxZFwiO1xuJGZhLXZhci1wbHVnOiBcIlxcZjFlNlwiO1xuJGZhLXZhci1wbHVzOiBcIlxcZjA2N1wiO1xuJGZhLXZhci1wbHVzLWNpcmNsZTogXCJcXGYwNTVcIjtcbiRmYS12YXItcGx1cy1zcXVhcmU6IFwiXFxmMGZlXCI7XG4kZmEtdmFyLXBsdXMtc3F1YXJlLW86IFwiXFxmMTk2XCI7XG4kZmEtdmFyLXBvZGNhc3Q6IFwiXFxmMmNlXCI7XG4kZmEtdmFyLXBvd2VyLW9mZjogXCJcXGYwMTFcIjtcbiRmYS12YXItcHJpbnQ6IFwiXFxmMDJmXCI7XG4kZmEtdmFyLXByb2R1Y3QtaHVudDogXCJcXGYyODhcIjtcbiRmYS12YXItcHV6emxlLXBpZWNlOiBcIlxcZjEyZVwiO1xuJGZhLXZhci1xcTogXCJcXGYxZDZcIjtcbiRmYS12YXItcXJjb2RlOiBcIlxcZjAyOVwiO1xuJGZhLXZhci1xdWVzdGlvbjogXCJcXGYxMjhcIjtcbiRmYS12YXItcXVlc3Rpb24tY2lyY2xlOiBcIlxcZjA1OVwiO1xuJGZhLXZhci1xdWVzdGlvbi1jaXJjbGUtbzogXCJcXGYyOWNcIjtcbiRmYS12YXItcXVvcmE6IFwiXFxmMmM0XCI7XG4kZmEtdmFyLXF1b3RlLWxlZnQ6IFwiXFxmMTBkXCI7XG4kZmEtdmFyLXF1b3RlLXJpZ2h0OiBcIlxcZjEwZVwiO1xuJGZhLXZhci1yYTogXCJcXGYxZDBcIjtcbiRmYS12YXItcmFuZG9tOiBcIlxcZjA3NFwiO1xuJGZhLXZhci1yYXZlbHJ5OiBcIlxcZjJkOVwiO1xuJGZhLXZhci1yZWJlbDogXCJcXGYxZDBcIjtcbiRmYS12YXItcmVjeWNsZTogXCJcXGYxYjhcIjtcbiRmYS12YXItcmVkZGl0OiBcIlxcZjFhMVwiO1xuJGZhLXZhci1yZWRkaXQtYWxpZW46IFwiXFxmMjgxXCI7XG4kZmEtdmFyLXJlZGRpdC1zcXVhcmU6IFwiXFxmMWEyXCI7XG4kZmEtdmFyLXJlZnJlc2g6IFwiXFxmMDIxXCI7XG4kZmEtdmFyLXJlZ2lzdGVyZWQ6IFwiXFxmMjVkXCI7XG4kZmEtdmFyLXJlbW92ZTogXCJcXGYwMGRcIjtcbiRmYS12YXItcmVucmVuOiBcIlxcZjE4YlwiO1xuJGZhLXZhci1yZW9yZGVyOiBcIlxcZjBjOVwiO1xuJGZhLXZhci1yZXBlYXQ6IFwiXFxmMDFlXCI7XG4kZmEtdmFyLXJlcGx5OiBcIlxcZjExMlwiO1xuJGZhLXZhci1yZXBseS1hbGw6IFwiXFxmMTIyXCI7XG4kZmEtdmFyLXJlc2lzdGFuY2U6IFwiXFxmMWQwXCI7XG4kZmEtdmFyLXJldHdlZXQ6IFwiXFxmMDc5XCI7XG4kZmEtdmFyLXJtYjogXCJcXGYxNTdcIjtcbiRmYS12YXItcm9hZDogXCJcXGYwMThcIjtcbiRmYS12YXItcm9ja2V0OiBcIlxcZjEzNVwiO1xuJGZhLXZhci1yb3RhdGUtbGVmdDogXCJcXGYwZTJcIjtcbiRmYS12YXItcm90YXRlLXJpZ2h0OiBcIlxcZjAxZVwiO1xuJGZhLXZhci1yb3VibGU6IFwiXFxmMTU4XCI7XG4kZmEtdmFyLXJzczogXCJcXGYwOWVcIjtcbiRmYS12YXItcnNzLXNxdWFyZTogXCJcXGYxNDNcIjtcbiRmYS12YXItcnViOiBcIlxcZjE1OFwiO1xuJGZhLXZhci1ydWJsZTogXCJcXGYxNThcIjtcbiRmYS12YXItcnVwZWU6IFwiXFxmMTU2XCI7XG4kZmEtdmFyLXMxNTogXCJcXGYyY2RcIjtcbiRmYS12YXItc2FmYXJpOiBcIlxcZjI2N1wiO1xuJGZhLXZhci1zYXZlOiBcIlxcZjBjN1wiO1xuJGZhLXZhci1zY2lzc29yczogXCJcXGYwYzRcIjtcbiRmYS12YXItc2NyaWJkOiBcIlxcZjI4YVwiO1xuJGZhLXZhci1zZWFyY2g6IFwiXFxmMDAyXCI7XG4kZmEtdmFyLXNlYXJjaC1taW51czogXCJcXGYwMTBcIjtcbiRmYS12YXItc2VhcmNoLXBsdXM6IFwiXFxmMDBlXCI7XG4kZmEtdmFyLXNlbGxzeTogXCJcXGYyMTNcIjtcbiRmYS12YXItc2VuZDogXCJcXGYxZDhcIjtcbiRmYS12YXItc2VuZC1vOiBcIlxcZjFkOVwiO1xuJGZhLXZhci1zZXJ2ZXI6IFwiXFxmMjMzXCI7XG4kZmEtdmFyLXNoYXJlOiBcIlxcZjA2NFwiO1xuJGZhLXZhci1zaGFyZS1hbHQ6IFwiXFxmMWUwXCI7XG4kZmEtdmFyLXNoYXJlLWFsdC1zcXVhcmU6IFwiXFxmMWUxXCI7XG4kZmEtdmFyLXNoYXJlLXNxdWFyZTogXCJcXGYxNGRcIjtcbiRmYS12YXItc2hhcmUtc3F1YXJlLW86IFwiXFxmMDQ1XCI7XG4kZmEtdmFyLXNoZWtlbDogXCJcXGYyMGJcIjtcbiRmYS12YXItc2hlcWVsOiBcIlxcZjIwYlwiO1xuJGZhLXZhci1zaGllbGQ6IFwiXFxmMTMyXCI7XG4kZmEtdmFyLXNoaXA6IFwiXFxmMjFhXCI7XG4kZmEtdmFyLXNoaXJ0c2luYnVsazogXCJcXGYyMTRcIjtcbiRmYS12YXItc2hvcHBpbmctYmFnOiBcIlxcZjI5MFwiO1xuJGZhLXZhci1zaG9wcGluZy1iYXNrZXQ6IFwiXFxmMjkxXCI7XG4kZmEtdmFyLXNob3BwaW5nLWNhcnQ6IFwiXFxmMDdhXCI7XG4kZmEtdmFyLXNob3dlcjogXCJcXGYyY2NcIjtcbiRmYS12YXItc2lnbi1pbjogXCJcXGYwOTBcIjtcbiRmYS12YXItc2lnbi1sYW5ndWFnZTogXCJcXGYyYTdcIjtcbiRmYS12YXItc2lnbi1vdXQ6IFwiXFxmMDhiXCI7XG4kZmEtdmFyLXNpZ25hbDogXCJcXGYwMTJcIjtcbiRmYS12YXItc2lnbmluZzogXCJcXGYyYTdcIjtcbiRmYS12YXItc2ltcGx5YnVpbHQ6IFwiXFxmMjE1XCI7XG4kZmEtdmFyLXNpdGVtYXA6IFwiXFxmMGU4XCI7XG4kZmEtdmFyLXNreWF0bGFzOiBcIlxcZjIxNlwiO1xuJGZhLXZhci1za3lwZTogXCJcXGYxN2VcIjtcbiRmYS12YXItc2xhY2s6IFwiXFxmMTk4XCI7XG4kZmEtdmFyLXNsaWRlcnM6IFwiXFxmMWRlXCI7XG4kZmEtdmFyLXNsaWRlc2hhcmU6IFwiXFxmMWU3XCI7XG4kZmEtdmFyLXNtaWxlLW86IFwiXFxmMTE4XCI7XG4kZmEtdmFyLXNuYXBjaGF0OiBcIlxcZjJhYlwiO1xuJGZhLXZhci1zbmFwY2hhdC1naG9zdDogXCJcXGYyYWNcIjtcbiRmYS12YXItc25hcGNoYXQtc3F1YXJlOiBcIlxcZjJhZFwiO1xuJGZhLXZhci1zbm93Zmxha2UtbzogXCJcXGYyZGNcIjtcbiRmYS12YXItc29jY2VyLWJhbGwtbzogXCJcXGYxZTNcIjtcbiRmYS12YXItc29ydDogXCJcXGYwZGNcIjtcbiRmYS12YXItc29ydC1hbHBoYS1hc2M6IFwiXFxmMTVkXCI7XG4kZmEtdmFyLXNvcnQtYWxwaGEtZGVzYzogXCJcXGYxNWVcIjtcbiRmYS12YXItc29ydC1hbW91bnQtYXNjOiBcIlxcZjE2MFwiO1xuJGZhLXZhci1zb3J0LWFtb3VudC1kZXNjOiBcIlxcZjE2MVwiO1xuJGZhLXZhci1zb3J0LWFzYzogXCJcXGYwZGVcIjtcbiRmYS12YXItc29ydC1kZXNjOiBcIlxcZjBkZFwiO1xuJGZhLXZhci1zb3J0LWRvd246IFwiXFxmMGRkXCI7XG4kZmEtdmFyLXNvcnQtbnVtZXJpYy1hc2M6IFwiXFxmMTYyXCI7XG4kZmEtdmFyLXNvcnQtbnVtZXJpYy1kZXNjOiBcIlxcZjE2M1wiO1xuJGZhLXZhci1zb3J0LXVwOiBcIlxcZjBkZVwiO1xuJGZhLXZhci1zb3VuZGNsb3VkOiBcIlxcZjFiZVwiO1xuJGZhLXZhci1zcGFjZS1zaHV0dGxlOiBcIlxcZjE5N1wiO1xuJGZhLXZhci1zcGlubmVyOiBcIlxcZjExMFwiO1xuJGZhLXZhci1zcG9vbjogXCJcXGYxYjFcIjtcbiRmYS12YXItc3BvdGlmeTogXCJcXGYxYmNcIjtcbiRmYS12YXItc3F1YXJlOiBcIlxcZjBjOFwiO1xuJGZhLXZhci1zcXVhcmUtbzogXCJcXGYwOTZcIjtcbiRmYS12YXItc3RhY2stZXhjaGFuZ2U6IFwiXFxmMThkXCI7XG4kZmEtdmFyLXN0YWNrLW92ZXJmbG93OiBcIlxcZjE2Y1wiO1xuJGZhLXZhci1zdGFyOiBcIlxcZjAwNVwiO1xuJGZhLXZhci1zdGFyLWhhbGY6IFwiXFxmMDg5XCI7XG4kZmEtdmFyLXN0YXItaGFsZi1lbXB0eTogXCJcXGYxMjNcIjtcbiRmYS12YXItc3Rhci1oYWxmLWZ1bGw6IFwiXFxmMTIzXCI7XG4kZmEtdmFyLXN0YXItaGFsZi1vOiBcIlxcZjEyM1wiO1xuJGZhLXZhci1zdGFyLW86IFwiXFxmMDA2XCI7XG4kZmEtdmFyLXN0ZWFtOiBcIlxcZjFiNlwiO1xuJGZhLXZhci1zdGVhbS1zcXVhcmU6IFwiXFxmMWI3XCI7XG4kZmEtdmFyLXN0ZXAtYmFja3dhcmQ6IFwiXFxmMDQ4XCI7XG4kZmEtdmFyLXN0ZXAtZm9yd2FyZDogXCJcXGYwNTFcIjtcbiRmYS12YXItc3RldGhvc2NvcGU6IFwiXFxmMGYxXCI7XG4kZmEtdmFyLXN0aWNreS1ub3RlOiBcIlxcZjI0OVwiO1xuJGZhLXZhci1zdGlja3ktbm90ZS1vOiBcIlxcZjI0YVwiO1xuJGZhLXZhci1zdG9wOiBcIlxcZjA0ZFwiO1xuJGZhLXZhci1zdG9wLWNpcmNsZTogXCJcXGYyOGRcIjtcbiRmYS12YXItc3RvcC1jaXJjbGUtbzogXCJcXGYyOGVcIjtcbiRmYS12YXItc3RyZWV0LXZpZXc6IFwiXFxmMjFkXCI7XG4kZmEtdmFyLXN0cmlrZXRocm91Z2g6IFwiXFxmMGNjXCI7XG4kZmEtdmFyLXN0dW1ibGV1cG9uOiBcIlxcZjFhNFwiO1xuJGZhLXZhci1zdHVtYmxldXBvbi1jaXJjbGU6IFwiXFxmMWEzXCI7XG4kZmEtdmFyLXN1YnNjcmlwdDogXCJcXGYxMmNcIjtcbiRmYS12YXItc3Vid2F5OiBcIlxcZjIzOVwiO1xuJGZhLXZhci1zdWl0Y2FzZTogXCJcXGYwZjJcIjtcbiRmYS12YXItc3VuLW86IFwiXFxmMTg1XCI7XG4kZmEtdmFyLXN1cGVycG93ZXJzOiBcIlxcZjJkZFwiO1xuJGZhLXZhci1zdXBlcnNjcmlwdDogXCJcXGYxMmJcIjtcbiRmYS12YXItc3VwcG9ydDogXCJcXGYxY2RcIjtcbiRmYS12YXItdGFibGU6IFwiXFxmMGNlXCI7XG4kZmEtdmFyLXRhYmxldDogXCJcXGYxMGFcIjtcbiRmYS12YXItdGFjaG9tZXRlcjogXCJcXGYwZTRcIjtcbiRmYS12YXItdGFnOiBcIlxcZjAyYlwiO1xuJGZhLXZhci10YWdzOiBcIlxcZjAyY1wiO1xuJGZhLXZhci10YXNrczogXCJcXGYwYWVcIjtcbiRmYS12YXItdGF4aTogXCJcXGYxYmFcIjtcbiRmYS12YXItdGVsZWdyYW06IFwiXFxmMmM2XCI7XG4kZmEtdmFyLXRlbGV2aXNpb246IFwiXFxmMjZjXCI7XG4kZmEtdmFyLXRlbmNlbnQtd2VpYm86IFwiXFxmMWQ1XCI7XG4kZmEtdmFyLXRlcm1pbmFsOiBcIlxcZjEyMFwiO1xuJGZhLXZhci10ZXh0LWhlaWdodDogXCJcXGYwMzRcIjtcbiRmYS12YXItdGV4dC13aWR0aDogXCJcXGYwMzVcIjtcbiRmYS12YXItdGg6IFwiXFxmMDBhXCI7XG4kZmEtdmFyLXRoLWxhcmdlOiBcIlxcZjAwOVwiO1xuJGZhLXZhci10aC1saXN0OiBcIlxcZjAwYlwiO1xuJGZhLXZhci10aGVtZWlzbGU6IFwiXFxmMmIyXCI7XG4kZmEtdmFyLXRoZXJtb21ldGVyOiBcIlxcZjJjN1wiO1xuJGZhLXZhci10aGVybW9tZXRlci0wOiBcIlxcZjJjYlwiO1xuJGZhLXZhci10aGVybW9tZXRlci0xOiBcIlxcZjJjYVwiO1xuJGZhLXZhci10aGVybW9tZXRlci0yOiBcIlxcZjJjOVwiO1xuJGZhLXZhci10aGVybW9tZXRlci0zOiBcIlxcZjJjOFwiO1xuJGZhLXZhci10aGVybW9tZXRlci00OiBcIlxcZjJjN1wiO1xuJGZhLXZhci10aGVybW9tZXRlci1lbXB0eTogXCJcXGYyY2JcIjtcbiRmYS12YXItdGhlcm1vbWV0ZXItZnVsbDogXCJcXGYyYzdcIjtcbiRmYS12YXItdGhlcm1vbWV0ZXItaGFsZjogXCJcXGYyYzlcIjtcbiRmYS12YXItdGhlcm1vbWV0ZXItcXVhcnRlcjogXCJcXGYyY2FcIjtcbiRmYS12YXItdGhlcm1vbWV0ZXItdGhyZWUtcXVhcnRlcnM6IFwiXFxmMmM4XCI7XG4kZmEtdmFyLXRodW1iLXRhY2s6IFwiXFxmMDhkXCI7XG4kZmEtdmFyLXRodW1icy1kb3duOiBcIlxcZjE2NVwiO1xuJGZhLXZhci10aHVtYnMtby1kb3duOiBcIlxcZjA4OFwiO1xuJGZhLXZhci10aHVtYnMtby11cDogXCJcXGYwODdcIjtcbiRmYS12YXItdGh1bWJzLXVwOiBcIlxcZjE2NFwiO1xuJGZhLXZhci10aWNrZXQ6IFwiXFxmMTQ1XCI7XG4kZmEtdmFyLXRpbWVzOiBcIlxcZjAwZFwiO1xuJGZhLXZhci10aW1lcy1jaXJjbGU6IFwiXFxmMDU3XCI7XG4kZmEtdmFyLXRpbWVzLWNpcmNsZS1vOiBcIlxcZjA1Y1wiO1xuJGZhLXZhci10aW1lcy1yZWN0YW5nbGU6IFwiXFxmMmQzXCI7XG4kZmEtdmFyLXRpbWVzLXJlY3RhbmdsZS1vOiBcIlxcZjJkNFwiO1xuJGZhLXZhci10aW50OiBcIlxcZjA0M1wiO1xuJGZhLXZhci10b2dnbGUtZG93bjogXCJcXGYxNTBcIjtcbiRmYS12YXItdG9nZ2xlLWxlZnQ6IFwiXFxmMTkxXCI7XG4kZmEtdmFyLXRvZ2dsZS1vZmY6IFwiXFxmMjA0XCI7XG4kZmEtdmFyLXRvZ2dsZS1vbjogXCJcXGYyMDVcIjtcbiRmYS12YXItdG9nZ2xlLXJpZ2h0OiBcIlxcZjE1MlwiO1xuJGZhLXZhci10b2dnbGUtdXA6IFwiXFxmMTUxXCI7XG4kZmEtdmFyLXRyYWRlbWFyazogXCJcXGYyNWNcIjtcbiRmYS12YXItdHJhaW46IFwiXFxmMjM4XCI7XG4kZmEtdmFyLXRyYW5zZ2VuZGVyOiBcIlxcZjIyNFwiO1xuJGZhLXZhci10cmFuc2dlbmRlci1hbHQ6IFwiXFxmMjI1XCI7XG4kZmEtdmFyLXRyYXNoOiBcIlxcZjFmOFwiO1xuJGZhLXZhci10cmFzaC1vOiBcIlxcZjAxNFwiO1xuJGZhLXZhci10cmVlOiBcIlxcZjFiYlwiO1xuJGZhLXZhci10cmVsbG86IFwiXFxmMTgxXCI7XG4kZmEtdmFyLXRyaXBhZHZpc29yOiBcIlxcZjI2MlwiO1xuJGZhLXZhci10cm9waHk6IFwiXFxmMDkxXCI7XG4kZmEtdmFyLXRydWNrOiBcIlxcZjBkMVwiO1xuJGZhLXZhci10cnk6IFwiXFxmMTk1XCI7XG4kZmEtdmFyLXR0eTogXCJcXGYxZTRcIjtcbiRmYS12YXItdHVtYmxyOiBcIlxcZjE3M1wiO1xuJGZhLXZhci10dW1ibHItc3F1YXJlOiBcIlxcZjE3NFwiO1xuJGZhLXZhci10dXJraXNoLWxpcmE6IFwiXFxmMTk1XCI7XG4kZmEtdmFyLXR2OiBcIlxcZjI2Y1wiO1xuJGZhLXZhci10d2l0Y2g6IFwiXFxmMWU4XCI7XG4kZmEtdmFyLXR3aXR0ZXI6IFwiXFxmMDk5XCI7XG4kZmEtdmFyLXR3aXR0ZXItc3F1YXJlOiBcIlxcZjA4MVwiO1xuJGZhLXZhci11bWJyZWxsYTogXCJcXGYwZTlcIjtcbiRmYS12YXItdW5kZXJsaW5lOiBcIlxcZjBjZFwiO1xuJGZhLXZhci11bmRvOiBcIlxcZjBlMlwiO1xuJGZhLXZhci11bml2ZXJzYWwtYWNjZXNzOiBcIlxcZjI5YVwiO1xuJGZhLXZhci11bml2ZXJzaXR5OiBcIlxcZjE5Y1wiO1xuJGZhLXZhci11bmxpbms6IFwiXFxmMTI3XCI7XG4kZmEtdmFyLXVubG9jazogXCJcXGYwOWNcIjtcbiRmYS12YXItdW5sb2NrLWFsdDogXCJcXGYxM2VcIjtcbiRmYS12YXItdW5zb3J0ZWQ6IFwiXFxmMGRjXCI7XG4kZmEtdmFyLXVwbG9hZDogXCJcXGYwOTNcIjtcbiRmYS12YXItdXNiOiBcIlxcZjI4N1wiO1xuJGZhLXZhci11c2Q6IFwiXFxmMTU1XCI7XG4kZmEtdmFyLXVzZXI6IFwiXFxmMDA3XCI7XG4kZmEtdmFyLXVzZXItY2lyY2xlOiBcIlxcZjJiZFwiO1xuJGZhLXZhci11c2VyLWNpcmNsZS1vOiBcIlxcZjJiZVwiO1xuJGZhLXZhci11c2VyLW1kOiBcIlxcZjBmMFwiO1xuJGZhLXZhci11c2VyLW86IFwiXFxmMmMwXCI7XG4kZmEtdmFyLXVzZXItcGx1czogXCJcXGYyMzRcIjtcbiRmYS12YXItdXNlci1zZWNyZXQ6IFwiXFxmMjFiXCI7XG4kZmEtdmFyLXVzZXItdGltZXM6IFwiXFxmMjM1XCI7XG4kZmEtdmFyLXVzZXJzOiBcIlxcZjBjMFwiO1xuJGZhLXZhci12Y2FyZDogXCJcXGYyYmJcIjtcbiRmYS12YXItdmNhcmQtbzogXCJcXGYyYmNcIjtcbiRmYS12YXItdmVudXM6IFwiXFxmMjIxXCI7XG4kZmEtdmFyLXZlbnVzLWRvdWJsZTogXCJcXGYyMjZcIjtcbiRmYS12YXItdmVudXMtbWFyczogXCJcXGYyMjhcIjtcbiRmYS12YXItdmlhY29pbjogXCJcXGYyMzdcIjtcbiRmYS12YXItdmlhZGVvOiBcIlxcZjJhOVwiO1xuJGZhLXZhci12aWFkZW8tc3F1YXJlOiBcIlxcZjJhYVwiO1xuJGZhLXZhci12aWRlby1jYW1lcmE6IFwiXFxmMDNkXCI7XG4kZmEtdmFyLXZpbWVvOiBcIlxcZjI3ZFwiO1xuJGZhLXZhci12aW1lby1zcXVhcmU6IFwiXFxmMTk0XCI7XG4kZmEtdmFyLXZpbmU6IFwiXFxmMWNhXCI7XG4kZmEtdmFyLXZrOiBcIlxcZjE4OVwiO1xuJGZhLXZhci12b2x1bWUtY29udHJvbC1waG9uZTogXCJcXGYyYTBcIjtcbiRmYS12YXItdm9sdW1lLWRvd246IFwiXFxmMDI3XCI7XG4kZmEtdmFyLXZvbHVtZS1vZmY6IFwiXFxmMDI2XCI7XG4kZmEtdmFyLXZvbHVtZS11cDogXCJcXGYwMjhcIjtcbiRmYS12YXItd2FybmluZzogXCJcXGYwNzFcIjtcbiRmYS12YXItd2VjaGF0OiBcIlxcZjFkN1wiO1xuJGZhLXZhci13ZWlibzogXCJcXGYxOGFcIjtcbiRmYS12YXItd2VpeGluOiBcIlxcZjFkN1wiO1xuJGZhLXZhci13aGF0c2FwcDogXCJcXGYyMzJcIjtcbiRmYS12YXItd2hlZWxjaGFpcjogXCJcXGYxOTNcIjtcbiRmYS12YXItd2hlZWxjaGFpci1hbHQ6IFwiXFxmMjliXCI7XG4kZmEtdmFyLXdpZmk6IFwiXFxmMWViXCI7XG4kZmEtdmFyLXdpa2lwZWRpYS13OiBcIlxcZjI2NlwiO1xuJGZhLXZhci13aW5kb3ctY2xvc2U6IFwiXFxmMmQzXCI7XG4kZmEtdmFyLXdpbmRvdy1jbG9zZS1vOiBcIlxcZjJkNFwiO1xuJGZhLXZhci13aW5kb3ctbWF4aW1pemU6IFwiXFxmMmQwXCI7XG4kZmEtdmFyLXdpbmRvdy1taW5pbWl6ZTogXCJcXGYyZDFcIjtcbiRmYS12YXItd2luZG93LXJlc3RvcmU6IFwiXFxmMmQyXCI7XG4kZmEtdmFyLXdpbmRvd3M6IFwiXFxmMTdhXCI7XG4kZmEtdmFyLXdvbjogXCJcXGYxNTlcIjtcbiRmYS12YXItd29yZHByZXNzOiBcIlxcZjE5YVwiO1xuJGZhLXZhci13cGJlZ2lubmVyOiBcIlxcZjI5N1wiO1xuJGZhLXZhci13cGV4cGxvcmVyOiBcIlxcZjJkZVwiO1xuJGZhLXZhci13cGZvcm1zOiBcIlxcZjI5OFwiO1xuJGZhLXZhci13cmVuY2g6IFwiXFxmMGFkXCI7XG4kZmEtdmFyLXhpbmc6IFwiXFxmMTY4XCI7XG4kZmEtdmFyLXhpbmctc3F1YXJlOiBcIlxcZjE2OVwiO1xuJGZhLXZhci15LWNvbWJpbmF0b3I6IFwiXFxmMjNiXCI7XG4kZmEtdmFyLXktY29tYmluYXRvci1zcXVhcmU6IFwiXFxmMWQ0XCI7XG4kZmEtdmFyLXlhaG9vOiBcIlxcZjE5ZVwiO1xuJGZhLXZhci15YzogXCJcXGYyM2JcIjtcbiRmYS12YXIteWMtc3F1YXJlOiBcIlxcZjFkNFwiO1xuJGZhLXZhci15ZWxwOiBcIlxcZjFlOVwiO1xuJGZhLXZhci15ZW46IFwiXFxmMTU3XCI7XG4kZmEtdmFyLXlvYXN0OiBcIlxcZjJiMVwiO1xuJGZhLXZhci15b3V0dWJlOiBcIlxcZjE2N1wiO1xuJGZhLXZhci15b3V0dWJlLXBsYXk6IFwiXFxmMTZhXCI7XG4kZmEtdmFyLXlvdXR1YmUtc3F1YXJlOiBcIlxcZjE2NlwiO1xuXG4iLCIvLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtaXhpbiBmYS1pY29uKCkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsICN7JGZhLWZvbnQtc2l6ZS1iYXNlfS8jeyRmYS1saW5lLWhlaWdodC1iYXNlfSBGb250QXdlc29tZTsgLy8gc2hvcnRlbmluZyBmb250IGRlY2xhcmF0aW9uXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgLy8gY2FuJ3QgaGF2ZSBmb250LXNpemUgaW5oZXJpdCBvbiBsaW5lIGFib3ZlLCBzbyBuZWVkIHRvIG92ZXJyaWRlXG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvOyAvLyBvcHRpbWl6ZWxlZ2liaWxpdHkgdGhyb3dzIHRoaW5ncyBvZmYgIzEwOTRcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbn1cblxuQG1peGluIGZhLWljb24tcm90YXRlKCRkZWdyZWVzLCAkcm90YXRpb24pIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0jeyRyb3RhdGlvbn0pXCI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG59XG5cbkBtaXhpbiBmYS1pY29uLWZsaXAoJGhvcml6LCAkdmVydCwgJHJvdGF0aW9uKSB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249I3skcm90YXRpb259LCBtaXJyb3I9MSlcIjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoJGhvcml6LCAkdmVydCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkaG9yaXosICR2ZXJ0KTtcbn1cblxuXG4vLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVycy4gQSBsYSBCb290c3RyYXAgNC5cbi8vXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cblxuQG1peGluIHNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gIH1cbn1cbiIsIi8qIEZPTlQgUEFUSFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LmVvdD92PSN7JGZhLXZlcnNpb259Jyk7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQuZW90PyNpZWZpeCZ2PSN7JGZhLXZlcnNpb259JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgIHVybCgnI3skZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LndvZmYyP3Y9I3skZmEtdmVyc2lvbn0nKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQud29mZj92PSN7JGZhLXZlcnNpb259JykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQudHRmP3Y9I3skZmEtdmVyc2lvbn0nKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQuc3ZnP3Y9I3skZmEtdmVyc2lvbn0jZm9udGF3ZXNvbWVyZWd1bGFyJykgZm9ybWF0KCdzdmcnKTtcbi8vICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9Gb250QXdlc29tZS5vdGYnKSBmb3JtYXQoJ29wZW50eXBlJyk7IC8vIHVzZWQgd2hlbiBkZXZlbG9waW5nIGZvbnRzXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbiIsIi8vIEJhc2UgQ2xhc3MgRGVmaW5pdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsICN7JGZhLWZvbnQtc2l6ZS1iYXNlfS8jeyRmYS1saW5lLWhlaWdodC1iYXNlfSBGb250QXdlc29tZTsgLy8gc2hvcnRlbmluZyBmb250IGRlY2xhcmF0aW9uXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgLy8gY2FuJ3QgaGF2ZSBmb250LXNpemUgaW5oZXJpdCBvbiBsaW5lIGFib3ZlLCBzbyBuZWVkIHRvIG92ZXJyaWRlXG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvOyAvLyBvcHRpbWl6ZWxlZ2liaWxpdHkgdGhyb3dzIHRoaW5ncyBvZmYgIzEwOTRcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbn1cbiIsIi8vIEljb24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLyogbWFrZXMgdGhlIGZvbnQgMzMlIGxhcmdlciByZWxhdGl2ZSB0byB0aGUgaWNvbiBjb250YWluZXIgKi9cbi4jeyRmYS1jc3MtcHJlZml4fS1sZyB7XG4gIGZvbnQtc2l6ZTogKDRlbSAvIDMpO1xuICBsaW5lLWhlaWdodDogKDNlbSAvIDQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTE1JTtcbn1cbi4jeyRmYS1jc3MtcHJlZml4fS0yeCB7IGZvbnQtc2l6ZTogMmVtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tM3ggeyBmb250LXNpemU6IDNlbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LTR4IHsgZm9udC1zaXplOiA0ZW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS01eCB7IGZvbnQtc2l6ZTogNWVtOyB9XG4iLCIvLyBGaXhlZCBXaWR0aCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZ3IHtcbiAgd2lkdGg6ICgxOGVtIC8gMTQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCIvLyBMaXN0IEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS11bCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWxlZnQ6ICRmYS1saS13aWR0aDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICA+IGxpIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG59XG4uI3skZmEtY3NzLXByZWZpeH0tbGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0kZmEtbGktd2lkdGg7XG4gIHdpZHRoOiAkZmEtbGktd2lkdGg7XG4gIHRvcDogKDJlbSAvIDE0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAmLiN7JGZhLWNzcy1wcmVmaXh9LWxnIHtcbiAgICBsZWZ0OiAtJGZhLWxpLXdpZHRoICsgKDRlbSAvIDE0KTtcbiAgfVxufVxuIiwiLy8gQm9yZGVyZWQgJiBQdWxsZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvcmRlciB7XG4gIHBhZGRpbmc6IC4yZW0gLjI1ZW0gLjE1ZW07XG4gIGJvcmRlcjogc29saWQgLjA4ZW0gJGZhLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogLjFlbTtcbn1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXB1bGwtbGVmdCB7IGZsb2F0OiBsZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHVsbC1yaWdodCB7IGZsb2F0OiByaWdodDsgfVxuXG4uI3skZmEtY3NzLXByZWZpeH0ge1xuICAmLiN7JGZhLWNzcy1wcmVmaXh9LXB1bGwtbGVmdCB7IG1hcmdpbi1yaWdodDogLjNlbTsgfVxuICAmLiN7JGZhLWNzcy1wcmVmaXh9LXB1bGwtcmlnaHQgeyBtYXJnaW4tbGVmdDogLjNlbTsgfVxufVxuXG4vKiBEZXByZWNhdGVkIGFzIG9mIDQuNC4wICovXG4ucHVsbC1yaWdodCB7IGZsb2F0OiByaWdodDsgfVxuLnB1bGwtbGVmdCB7IGZsb2F0OiBsZWZ0OyB9XG5cbi4jeyRmYS1jc3MtcHJlZml4fSB7XG4gICYucHVsbC1sZWZ0IHsgbWFyZ2luLXJpZ2h0OiAuM2VtOyB9XG4gICYucHVsbC1yaWdodCB7IG1hcmdpbi1sZWZ0OiAuM2VtOyB9XG59XG4iLCIvLyBTcGlubmluZyBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmEtc3BpbiAycyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgICAgICAgYW5pbWF0aW9uOiBmYS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjtcbn1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXB1bHNlIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7XG4gICAgICAgICAgYW5pbWF0aW9uOiBmYS1zcGluIDFzIGluZmluaXRlIHN0ZXBzKDgpO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmEtc3BpbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhLXNwaW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gIH1cbn1cbiIsIi8vIFJvdGF0ZWQgJiBGbGlwcGVkIEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtOTAgIHsgQGluY2x1ZGUgZmEtaWNvbi1yb3RhdGUoOTBkZWcsIDEpOyAgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS0xODAgeyBAaW5jbHVkZSBmYS1pY29uLXJvdGF0ZSgxODBkZWcsIDIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTI3MCB7IEBpbmNsdWRlIGZhLWljb24tcm90YXRlKDI3MGRlZywgMyk7IH1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtaG9yaXpvbnRhbCB7IEBpbmNsdWRlIGZhLWljb24tZmxpcCgtMSwgMSwgMCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLXZlcnRpY2FsICAgeyBAaW5jbHVkZSBmYS1pY29uLWZsaXAoMSwgLTEsIDIpOyB9XG5cbi8vIEhvb2sgZm9yIElFOC05XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbjpyb290IC4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtOTAsXG46cm9vdCAuI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTE4MCxcbjpyb290IC4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtMjcwLFxuOnJvb3QgLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtaG9yaXpvbnRhbCxcbjpyb290IC4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLXZlcnRpY2FsIHtcbiAgZmlsdGVyOiBub25lO1xufVxuIiwiLy8gU3RhY2tlZCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMXgsIC4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0yeCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0xeCB7IGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMnggeyBmb250LXNpemU6IDJlbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWludmVyc2UgeyBjb2xvcjogJGZhLWludmVyc2U7IH1cbiIsIi8qIEZvbnQgQXdlc29tZSB1c2VzIHRoZSBVbmljb2RlIFByaXZhdGUgVXNlIEFyZWEgKFBVQSkgdG8gZW5zdXJlIHNjcmVlblxuICAgcmVhZGVycyBkbyBub3QgcmVhZCBvZmYgcmFuZG9tIGNoYXJhY3RlcnMgdGhhdCByZXByZXNlbnQgaWNvbnMgKi9cblxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsYXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2xhc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tdXNpYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW11c2ljOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2VhcmNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmVsb3BlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhlYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0YXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGFyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbG06YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGgtbGFyZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aC1sYXJnZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aC1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGgtbGlzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hlY2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZW1vdmU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3NlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRpbWVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoLXBsdXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zZWFyY2gtcGx1czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlYXJjaC1taW51czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNlYXJjaC1taW51czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBvd2VyLW9mZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBvd2VyLW9mZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ25hbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNpZ25hbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlYXI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYXNoLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFzaC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9tZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhvbWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG9jay1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xvY2stbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yb2FkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG93bmxvYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kb3dubG9hZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1vLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtby1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLW8tdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtby11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluYm94OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5ib3g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGF5LWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGxheS1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS1yaWdodDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmVwZWF0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVwZWF0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVmcmVzaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlZnJlc2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0LWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpc3QtYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9jazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvY2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFnOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxhZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWRwaG9uZXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oZWFkcGhvbmVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLW9mZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZvbHVtZS1vZmY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2x1bWUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZvbHVtZS1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdm9sdW1lLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXJjb2RlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFyY29kZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhcmNvZGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YWc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWdzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGFnczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvb2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib29rOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9va21hcms6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib29rbWFyazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXByaW50OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcHJpbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYW1lcmE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYW1lcmE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb250OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9udDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvbGQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib2xkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taXRhbGljOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaXRhbGljOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGV4dC1oZWlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZXh0LWhlaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRleHQtd2lkdGg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZXh0LXdpZHRoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFsaWduLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlnbi1jZW50ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbGlnbi1jZW50ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlnbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFsaWduLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tanVzdGlmeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFsaWduLWp1c3RpZnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRlZGVudDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tb3V0ZGVudDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW91dGRlbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmRlbnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbmRlbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWRlby1jYW1lcmE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12aWRlby1jYW1lcmE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG90bzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taW1hZ2U6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpY3R1cmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpY3R1cmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbmNpbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBlbmNpbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1tYXJrZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXAtbWFya2VyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRqdXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYWRqdXN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGludDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRpbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lZGl0OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1wZW5jaWwtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wZW5jaWwtc3F1YXJlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGFyZS1zcXVhcmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoYXJlLXNxdWFyZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGVjay1zcXVhcmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXAtYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGVwLWJhY2t3YXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFzdC1iYWNrd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZhc3QtYmFja3dhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWNrd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhY2t3YXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxheTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsYXk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXVzZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhdXNlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0b3A7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9yd2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhc3QtZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZhc3QtZm9yd2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXAtZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0ZXAtZm9yd2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVqZWN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZWplY3Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGV2cm9uLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsdXMtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGx1cy1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taW51cy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1taW51cy1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lcy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aW1lcy1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjay1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGVjay1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdWVzdGlvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xdWVzdGlvbi1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmZvLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWluZm8tY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3Jvc3NoYWlyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNyb3NzaGFpcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lcy1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRpbWVzLWNpcmNsZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGVjay1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1haWwtZm9yd2FyZDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4cGFuZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV4cGFuZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXByZXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tcHJlc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGx1czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWludXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hc3RlcmlzazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFzdGVyaXNrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjbGFtYXRpb24tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXhjbGFtYXRpb24tY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2lmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdpZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZWFmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGVhZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXllOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXllOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXllLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXllLXNsYXNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2FybmluZzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leGNsYW1hdGlvbi10cmlhbmdsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYW5lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGxhbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGVuZGFyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmFuZG9tOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmFuZG9tOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbW1lbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWduZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYWduZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJldHdlZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZXR3ZWV0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hvcHBpbmctY2FydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNob3BwaW5nLWNhcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb2xkZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXItb3BlbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvbGRlci1vcGVuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3dzLXY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvd3MtdjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93cy1oOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3dzLWg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXItY2hhcnQtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYmFyLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmFyLWNoYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHdpdHRlci1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10d2l0dGVyLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZhY2Vib29rLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbWVyYS1yZXRybzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbWVyYS1yZXRybzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtleTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWtleTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlYXJzOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jb2dzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29nczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnRzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tbWVudHM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aHVtYnMtby11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRodW1icy1vLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWJzLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRodW1icy1vLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLWhhbGY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGFyLWhhbGY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFydC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGVhcnQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ24tb3V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2lnbi1vdXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5rZWRpbi1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saW5rZWRpbi1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aHVtYi10YWNrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGh1bWItdGFjazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4dGVybmFsLWxpbms6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leHRlcm5hbC1saW5rOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2lnbi1pbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNpZ24taW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cm9waHk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cm9waHk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXRodWItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2l0aHViLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVwbG9hZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxlbW9uLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sZW1vbi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waG9uZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3F1YXJlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib29rbWFyay1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYm9va21hcmstbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBob25lLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR3aXR0ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10d2l0dGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFjZWJvb2stZjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmFjZWJvb2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mYWNlYm9vazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdGh1YjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdpdGh1YjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVubG9jazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVubG9jazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWRpdC1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3JlZGl0LWNhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mZWVkOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1yc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZGQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhkZC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVsbGhvcm46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idWxsaG9ybjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlbGw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iZWxsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2VydGlmaWNhdGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jZXJ0aWZpY2F0ZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtby1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtby1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtby1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1vLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLW8tdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLW8tdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtby1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbG9iZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdsb2JlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td3JlbmNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd3JlbmNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFza3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YXNrczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbHRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbHRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJyaWVmY2FzZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJyaWVmY2FzZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93cy1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvd3MtYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JvdXA6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFpbjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tbGluazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpbms7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNsb3VkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhc2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbGFzazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1dDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc2Npc3NvcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zY2lzc29yczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvcHk6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGVzLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlcy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFwZXJjbGlwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGFwZXJjbGlwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2F2ZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmxvcHB5LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbG9wcHktbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5hdmljb246YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlb3JkZXI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdC11bDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpc3QtdWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0LW9sOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlzdC1vbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0cmlrZXRocm91Z2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdHJpa2V0aHJvdWdoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5kZXJsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdW5kZXJsaW5lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFibGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YWJsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hZ2ljOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFnaWM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cnVjazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRydWNrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGludGVyZXN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpbnRlcmVzdC1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGUtcGx1cy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nb29nbGUtcGx1cy1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGUtcGx1czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdvb2dsZS1wbHVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9uZXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tb25leTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbHVtbnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb2x1bW5zOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5zb3J0ZWQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1kb3duOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWRlc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LWRlc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LXVwOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFzYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvcnQtYXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbnZlbG9wZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbmtlZGluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlua2VkaW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtbGVmdDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdW5kbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVuZG87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZWdhbDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZ2F2ZWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nYXZlbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRhc2hib2FyZDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGFjaG9tZXRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRhY2hvbWV0ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb21tZW50LW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50cy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tbWVudHMtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYXNoOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1ib2x0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYm9sdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpdGVtYXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaXRlbWFwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW1icmVsbGE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11bWJyZWxsYTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhc3RlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jbGlwYm9hcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jbGlwYm9hcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saWdodGJ1bGItbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpZ2h0YnVsYi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjaGFuZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leGNoYW5nZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkLWRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xvdWQtZG93bmxvYWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC11cGxvYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jbG91ZC11cGxvYWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLW1kOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlci1tZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXRob3Njb3BlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RldGhvc2NvcGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWl0Y2FzZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN1aXRjYXNlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVsbC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVsbC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29mZmVlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29mZmVlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3V0bGVyeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWN1dGxlcnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXRleHQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtdGV4dC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVpbGRpbmctbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ1aWxkaW5nLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3NwaXRhbC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG9zcGl0YWwtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFtYnVsYW5jZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFtYnVsYW5jZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZGtpdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1lZGtpdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpZ2h0ZXItamV0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlnaHRlci1qZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWgtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaC1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsdXMtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG91YmxlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS1kb3VibGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWRvdWJsZS1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWRvdWJsZS11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtZG91YmxlLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZXNrdG9wOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGVza3RvcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhcHRvcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxhcHRvcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhYmxldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRhYmxldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vYmlsZS1waG9uZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tbW9iaWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbW9iaWxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1b3RlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xdW90ZS1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVvdGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xdW90ZS1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwaW5uZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zcGlubmVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFpbC1yZXBseTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmVwbHk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZXBseTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdGh1Yi1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1naXRodWItYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb2xkZXItbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbGRlci1vcGVuLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb2xkZXItb3Blbi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21pbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNtaWxlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mcm93bi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZnJvd24tbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1laC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWVoLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nYW1lcGFkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2FtZXBhZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtleWJvYXJkLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1rZXlib2FyZC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhZy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxhZy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhZy1jaGVja2VyZWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbGFnLWNoZWNrZXJlZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlcm1pbmFsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGVybWluYWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2RlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29kZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1haWwtcmVwbHktYWxsOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1yZXBseS1hbGw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZXBseS1hbGw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLWhhbGYtZW1wdHk6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXItaGFsZi1mdWxsOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLWhhbGYtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0YXItaGFsZi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9jYXRpb24tYXJyb3c6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sb2NhdGlvbi1hcnJvdzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyb3A6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jcm9wOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29kZS1mb3JrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29kZS1mb3JrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5saW5rOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFpbi1icm9rZW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGFpbi1icm9rZW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdWVzdGlvbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXF1ZXN0aW9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5mbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWluZm87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leGNsYW1hdGlvbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV4Y2xhbWF0aW9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3VwZXJzY3JpcHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdXBlcnNjcmlwdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1YnNjcmlwdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN1YnNjcmlwdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVyYXNlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVyYXNlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXB1enpsZS1waWVjZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXB1enpsZS1waWVjZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvcGhvbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1taWNyb3Bob25lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWljcm9waG9uZS1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1pY3JvcGhvbmUtc2xhc2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGllbGQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGllbGQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FsZW5kYXItbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmUtZXh0aW5ndWlzaGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlyZS1leHRpbmd1aXNoZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb2NrZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yb2NrZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXhjZG46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXhjZG47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi1jaXJjbGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tY2lyY2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi1jaXJjbGUtcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tY2lyY2xlLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1jaXJjbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tY2lyY2xlLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1odG1sNTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWh0bWw1OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3NzMzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNzczM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmNob3I6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmNob3I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmxvY2stYWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdW5sb2NrLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1bGxzZXllOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnVsbHNleWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbGxpcHNpcy1oOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZWxsaXBzaXMtaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVsbGlwc2lzLXY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbGxpcHNpcy12OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnNzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJzcy1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGF5LWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsYXktY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGlja2V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGlja2V0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWludXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWludXMtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWludXMtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1taW51cy1zcXVhcmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxldmVsLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGV2ZWwtdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXZlbC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGV2ZWwtZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZWNrLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbmNpbC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wZW5jaWwtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXh0ZXJuYWwtbGluay1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leHRlcm5hbC1saW5rLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoYXJlLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXBhc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb21wYXNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLWRvd246YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXNxdWFyZS1vLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1zcXVhcmUtby1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLXVwOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtby11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LXNxdWFyZS1vLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLXJpZ2h0OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtby1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LXNxdWFyZS1vLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXVybzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZXVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2JwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2JwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9sbGFyOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS11c2Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydXBlZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taW5yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5yOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY255OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1ybWI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXllbjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tanB5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItanB5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnVibGU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdWJsZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcnViOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcnViOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td29uOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1rcnc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1rcnc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXRjb2luOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1idGM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idGM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtdGV4dDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtdGV4dDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYWxwaGEtYXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1hbHBoYS1hc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFscGhhLWRlc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LWFscGhhLWRlc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFtb3VudC1hc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LWFtb3VudC1hc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFtb3VudC1kZXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1hbW91bnQtZGVzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtbnVtZXJpYy1hc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LW51bWVyaWMtYXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1udW1lcmljLWRlc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LW51bWVyaWMtZGVzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1icy11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRodW1icy11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1icy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGh1bWJzLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15b3V0dWJlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXlvdXR1YmUtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teW91dHViZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXlvdXR1YmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS14aW5nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteGluZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXhpbmctc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteGluZy1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15b3V0dWJlLXBsYXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15b3V0dWJlLXBsYXk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcm9wYm94OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZHJvcGJveDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLW92ZXJmbG93OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RhY2stb3ZlcmZsb3c7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnN0YWdyYW06YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbnN0YWdyYW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGlja3I6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbGlja3I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hZG46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hZG47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXRidWNrZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iaXRidWNrZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXRidWNrZXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYml0YnVja2V0LXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR1bWJscjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXR1bWJscjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR1bWJsci1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10dW1ibHItc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbG9uZy1hcnJvdy1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvbmctYXJyb3ctdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb25nLWFycm93LWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sb25nLWFycm93LWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb25nLWFycm93LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbG9uZy1hcnJvdy1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFwcGxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXBwbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3dzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2luZG93czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZHJvaWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmRyb2lkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGludXg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saW51eDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyaWJiYmxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZHJpYmJibGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za3lwZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNreXBlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm91cnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvdXJzcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmVsbG86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmVsbG87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mZW1hbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mZW1hbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdHRpcDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZ3JhdGlwYXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ncmF0aXBheTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1bi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3VuLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb29uLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tb29uLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcmNoaXZlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJjaGl2ZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1ZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ1ZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdms7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13ZWlibzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdlaWJvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVucmVuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVucmVuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFnZWxpbmVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGFnZWxpbmVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stZXhjaGFuZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGFjay1leGNoYW5nZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1vLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLW8tcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtby1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLW8tbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1sZWZ0OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtby1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtc3F1YXJlLW8tbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvdC1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRvdC1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdoZWVsY2hhaXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aGVlbGNoYWlyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmltZW8tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmltZW8tc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHVya2lzaC1saXJhOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10cnk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVzLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGx1cy1zcXVhcmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwYWNlLXNodXR0bGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zcGFjZS1zaHV0dGxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xhY2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zbGFjazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmVsb3BlLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdvcmRwcmVzczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdvcmRwcmVzczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9wZW5pZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9wZW5pZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluc3RpdHV0aW9uOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYW5rOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS11bml2ZXJzaXR5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdW5pdmVyc2l0eTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vcnRhci1ib2FyZDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZ3JhZHVhdGlvbi1jYXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ncmFkdWF0aW9uLWNhcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlhaG9vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteWFob287IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nb29nbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWRkaXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZWRkaXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWRkaXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVkZGl0LXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0dW1ibGV1cG9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0dW1ibGV1cG9uLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0dW1ibGV1cG9uOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3R1bWJsZXVwb247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZWxpY2lvdXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kZWxpY2lvdXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWdnOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGlnZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpZWQtcGlwZXItcHA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waWVkLXBpcGVyLXBwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGllZC1waXBlci1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waWVkLXBpcGVyLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRydXBhbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRydXBhbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWpvb21sYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWpvb21sYTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhbmd1YWdlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGFuZ3VhZ2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYXg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mYXg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idWlsZGluZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ1aWxkaW5nOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hpbGQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGlsZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhdzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhdzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwb29uOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3Bvb247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jdWJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3ViZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1YmVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3ViZXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWhhbmNlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVoYW5jZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlaGFuY2Utc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVoYW5jZS1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGVhbTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0ZWFtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RlYW0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RlYW0tc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVjeWNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlY3ljbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdXRvbW9iaWxlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jYXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRheGk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YXhpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJlZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyZWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcG90aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3BvdGlmeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRldmlhbnRhcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kZXZpYW50YXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc291bmRjbG91ZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvdW5kY2xvdWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kYXRhYmFzZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRhdGFiYXNlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1wZGYtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtcGRmLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXdvcmQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtd29yZC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1leGNlbC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS1leGNlbC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1wb3dlcnBvaW50LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLXBvd2VycG9pbnQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtcGhvdG8tbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1waWN0dXJlLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtaW1hZ2UtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtaW1hZ2UtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtemlwLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtYXJjaGl2ZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS1hcmNoaXZlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXNvdW5kLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtYXVkaW8tbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtYXVkaW8tbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtbW92aWUtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS12aWRlby1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS12aWRlby1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1jb2RlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLWNvZGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12aW5lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29kZXBlbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZGVwZW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qc2ZpZGRsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWpzZmlkZGxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlmZS1ib3V5OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1saWZlLWJ1b3k6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpZmUtc2F2ZXI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1cHBvcnQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpZmUtcmluZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpZmUtcmluZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpcmNsZS1vLW5vdGNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2lyY2xlLW8tbm90Y2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmVzaXN0YW5jZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmViZWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZWJlbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1lbXBpcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbXBpcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2l0LXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdpdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXktY29tYmluYXRvci1zcXVhcmU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXljLXNxdWFyZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taGFja2VyLW5ld3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYWNrZXItbmV3czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbmNlbnQtd2VpYm86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZW5jZW50LXdlaWJvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xcTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdlY2hhdDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0td2VpeGluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2VpeGluOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VuZDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcGFwZXItcGxhbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXBlci1wbGFuZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlbmQtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcGFwZXItcGxhbmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhcGVyLXBsYW5lLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oaXN0b3J5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGlzdG9yeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpcmNsZS10aGluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2lyY2xlLXRoaW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oZWFkZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXJhZ3JhcGg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXJhZ3JhcGg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbGlkZXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2xpZGVyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoYXJlLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLWFsdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGFyZS1hbHQtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9tYjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJvbWI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb2NjZXItYmFsbC1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1mdXRib2wtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZ1dGJvbC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHR5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHR5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmlub2N1bGFyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJpbm9jdWxhcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVnOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGx1ZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNsaWRlc2hhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zbGlkZXNoYXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHdpdGNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHdpdGNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWVscDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXllbHA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1uZXdzcGFwZXItbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW5ld3NwYXBlci1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2lmaTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdpZmk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxjdWxhdG9yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FsY3VsYXRvcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBheXBhbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBheXBhbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS13YWxsZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nb29nbGUtd2FsbGV0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtdmlzYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjLXZpc2E7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1tYXN0ZXJjYXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtbWFzdGVyY2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLWRpc2NvdmVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtZGlzY292ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1hbWV4OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtYW1leDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLXBheXBhbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjLXBheXBhbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLXN0cmlwZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjLXN0cmlwZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlbGwtc2xhc2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iZWxsLXNsYXNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVsbC1zbGFzaC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVsbC1zbGFzaC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhc2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFzaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvcHlyaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvcHlyaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leWVkcm9wcGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXllZHJvcHBlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhaW50LWJydXNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGFpbnQtYnJ1c2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXJ0aGRheS1jYWtlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmlydGhkYXktY2FrZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFyZWEtY2hhcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcmVhLWNoYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGllLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGllLWNoYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGluZS1jaGFydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpbmUtY2hhcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXN0Zm06YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sYXN0Zm07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXN0Zm0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGFzdGZtLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1vZmY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10b2dnbGUtb2ZmOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLW9uOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdG9nZ2xlLW9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmljeWNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJpY3ljbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pb3hob3N0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW94aG9zdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2VsbGlzdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2VsbGlzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGVrZWw6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoZXFlbDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taWxzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaWxzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVhbnBhdGg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tZWFucGF0aDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1eXNlbGxhZHM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idXlzZWxsYWRzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29ubmVjdGRldmVsb3A6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb25uZWN0ZGV2ZWxvcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRhc2hjdWJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGFzaGN1YmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J1bWJlZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvcnVtYmVlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGVhbnB1YjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxlYW5wdWI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWxsc3k6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zZWxsc3k7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGlydHNpbmJ1bGs6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGlydHNpbmJ1bGs7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaW1wbHlidWlsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNpbXBseWJ1aWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2t5YXRsYXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1za3lhdGxhczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcnQtcGx1czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcnQtcGx1czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcnQtYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcnQtYXJyb3ctZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpYW1vbmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kaWFtb25kOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hpcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoaXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXNlY3JldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXItc2VjcmV0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW90b3JjeWNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1vdG9yY3ljbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJlZXQtdmlldzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0cmVldC12aWV3OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhcnRiZWF0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGVhcnRiZWF0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmVudXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12ZW51czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVyY3VyeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1lcmN1cnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnRlcnNleDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdHJhbnNnZW5kZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFuc2dlbmRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYW5zZ2VuZGVyLWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyYW5zZ2VuZGVyLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlbnVzLWRvdWJsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZlbnVzLWRvdWJsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFycy1kb3VibGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12ZW51cy1tYXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmVudXMtbWFyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtc3Ryb2tlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFycy1zdHJva2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzLXN0cm9rZS12OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFycy1zdHJva2UtdjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtc3Ryb2tlLWg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXJzLXN0cm9rZS1oOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmV1dGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbmV1dGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2VuZGVybGVzczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdlbmRlcmxlc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYWNlYm9vay1vZmZpY2lhbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZhY2Vib29rLW9mZmljaWFsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0LXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waW50ZXJlc3QtcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdoYXRzYXBwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2hhdHNhcHA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZXJ2ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zZXJ2ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXBsdXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2VyLXBsdXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXRpbWVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlci10aW1lczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdGVsOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iZWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iZWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFjb2luOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmlhY29pbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYWluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJhaW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWJ3YXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdWJ3YXk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWRpdW06YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tZWRpdW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15YzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0teS1jb21iaW5hdG9yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteS1jb21iaW5hdG9yOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3B0aW4tbW9uc3RlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9wdGluLW1vbnN0ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vcGVuY2FydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9wZW5jYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhwZWRpdGVkc3NsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXhwZWRpdGVkc3NsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS00OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LWZ1bGw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXR0ZXJ5LWZ1bGw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LTM6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktdGhyZWUtcXVhcnRlcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS0yOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXR0ZXJ5LWhhbGY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LTE6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktcXVhcnRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhdHRlcnktcXVhcnRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktMDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1lbXB0eTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhdHRlcnktZW1wdHk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb3VzZS1wb2ludGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbW91c2UtcG9pbnRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWktY3Vyc29yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaS1jdXJzb3I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vYmplY3QtZ3JvdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1vYmplY3QtZ3JvdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vYmplY3QtdW5ncm91cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9iamVjdC11bmdyb3VwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RpY2t5LW5vdGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGlja3ktbm90ZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0aWNreS1ub3RlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGlja3ktbm90ZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtamNiOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtamNiOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtZGluZXJzLWNsdWI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYy1kaW5lcnMtY2x1YjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb25lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xvbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWxhbmNlLXNjYWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmFsYW5jZS1zY2FsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91cmdsYXNzLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3MtMTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLXN0YXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91cmdsYXNzLXN0YXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLTI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91cmdsYXNzLWhhbGY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3MtMzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLWVuZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhvdXJnbGFzcy1lbmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ob3VyZ2xhc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWdyYWItbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1yb2NrLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLXJvY2stbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtc3RvcC1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBhcGVyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLXBhcGVyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXNjaXNzb3JzLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLXNjaXNzb3JzLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWxpemFyZC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1saXphcmQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtc3BvY2stbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtc3BvY2stbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcG9pbnRlci1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1wb2ludGVyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBlYWNlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLXBlYWNlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFkZW1hcms6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFkZW1hcms7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWdpc3RlcmVkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVnaXN0ZXJlZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2c6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdnLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdnLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyaXBhZHZpc29yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJpcGFkdmlzb3I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vZG5va2xhc3NuaWtpOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb2Rub2tsYXNzbmlraTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9kbm9rbGFzc25pa2ktc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb2Rub2tsYXNzbmlraS1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZXQtcG9ja2V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2V0LXBvY2tldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpa2lwZWRpYS13OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2lraXBlZGlhLXc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYWZhcmk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zYWZhcmk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaHJvbWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaHJvbWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlZm94OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlyZWZveDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9wZXJhOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb3BlcmE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnRlcm5ldC1leHBsb3JlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWludGVybmV0LWV4cGxvcmVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHY6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbGV2aXNpb246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZWxldmlzaW9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29udGFvOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29udGFvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tNTAwcHg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci01MDBweDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFtYXpvbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFtYXpvbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLXBsdXMtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGVuZGFyLXBsdXMtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLW1pbnVzLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYWxlbmRhci1taW51cy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItdGltZXMtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGVuZGFyLXRpbWVzLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1jaGVjay1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FsZW5kYXItY2hlY2stbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluZHVzdHJ5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5kdXN0cnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXAtcGluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFwLXBpbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1zaWduczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hcC1zaWduczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFwLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50aW5nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tbWVudGluZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnRpbmctbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbW1lbnRpbmctbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXp6OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91eno7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aW1lbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZpbWVvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxhY2stdGllOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmxhY2stdGllOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udGljb25zOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9udGljb25zOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVkZGl0LWFsaWVuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVkZGl0LWFsaWVuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWRnZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVkZ2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVkaXQtY2FyZC1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jcmVkaXQtY2FyZC1hbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2RpZXBpZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZGllcGllOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9keDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1vZHg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J0LWF3ZXNvbWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb3J0LWF3ZXNvbWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2I6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcm9kdWN0LWh1bnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wcm9kdWN0LWh1bnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taXhjbG91ZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1peGNsb3VkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2NyaWJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2NyaWJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF1c2UtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGF1c2UtY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF1c2UtY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXVzZS1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0b3AtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RvcC1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9wLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RvcC1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWJhZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNob3BwaW5nLWJhZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWJhc2tldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNob3BwaW5nLWJhc2tldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhc2h0YWc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYXNodGFnOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmx1ZXRvb3RoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmx1ZXRvb3RoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmx1ZXRvb3RoLWI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ibHVldG9vdGgtYjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlcmNlbnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wZXJjZW50OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0bGFiOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2l0bGFiOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td3BiZWdpbm5lcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdwYmVnaW5uZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cGZvcm1zOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd3Bmb3JtczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmlyYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmlyYTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuaXZlcnNhbC1hY2Nlc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11bml2ZXJzYWwtYWNjZXNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2hlZWxjaGFpci1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aGVlbGNoYWlyLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1ZXN0aW9uLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXVlc3Rpb24tY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibGluZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJsaW5kOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXVkaW8tZGVzY3JpcHRpb246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hdWRpby1kZXNjcmlwdGlvbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZvbHVtZS1jb250cm9sLXBob25lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdm9sdW1lLWNvbnRyb2wtcGhvbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icmFpbGxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnJhaWxsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFzbC1pbnRlcnByZXRpbmc6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW1lcmljYW4tc2lnbi1sYW5ndWFnZS1pbnRlcnByZXRpbmc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZWFmbmVzczpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taGFyZC1vZi1oZWFyaW5nOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1kZWFmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGVhZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsaWRlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2xpZGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbGlkZS1nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2xpZGUtZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ25pbmc6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ24tbGFuZ3VhZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaWduLWxhbmd1YWdlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG93LXZpc2lvbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvdy12aXNpb247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFkZW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12aWFkZW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFkZW8tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmlhZGVvLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNuYXBjaGF0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc25hcGNoYXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbmFwY2hhdC1naG9zdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNuYXBjaGF0LWdob3N0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc25hcGNoYXQtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGllZC1waXBlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpZWQtcGlwZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJzdC1vcmRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpcnN0LW9yZGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teW9hc3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15b2FzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZW1laXNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoZW1laXNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wbHVzLWNpcmNsZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsdXMtb2ZmaWNpYWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nb29nbGUtcGx1cy1vZmZpY2lhbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1mb250LWF3ZXNvbWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb250LWF3ZXNvbWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kc2hha2UtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmRzaGFrZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtb3BlbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmVsb3BlLW9wZW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbnZlbG9wZS1vcGVuLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbnZlbG9wZS1vcGVuLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5vZGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saW5vZGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hZGRyZXNzLWJvb2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hZGRyZXNzLWJvb2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hZGRyZXNzLWJvb2stbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFkZHJlc3MtYm9vay1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmNhcmQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkZHJlc3MtY2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFkZHJlc3MtY2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZjYXJkLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkZHJlc3MtY2FyZC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYWRkcmVzcy1jYXJkLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXItY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXItY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2VyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1iYWRnZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWlkLWJhZGdlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJpdmVycy1saWNlbnNlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaWQtY2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyaXZlcnMtbGljZW5zZS1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1jYXJkLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pZC1jYXJkLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdW9yYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXF1b3JhOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnJlZS1jb2RlLWNhbXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mcmVlLWNvZGUtY2FtcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbGVncmFtOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGVsZWdyYW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci00OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlcjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItZnVsbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoZXJtb21ldGVyLWZ1bGw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci0zOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci10aHJlZS1xdWFydGVyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItMjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItaGFsZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoZXJtb21ldGVyLWhhbGY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci0xOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci1xdWFydGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGhlcm1vbWV0ZXItcXVhcnRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLTA6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLWVtcHR5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGhlcm1vbWV0ZXItZW1wdHk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG93ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaG93ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXRodHViOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zMTU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdGg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXRoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG9kY2FzdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBvZGNhc3Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctbWF4aW1pemU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aW5kb3ctbWF4aW1pemU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctbWluaW1pemU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aW5kb3ctbWluaW1pemU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctcmVzdG9yZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdpbmRvdy1yZXN0b3JlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGltZXMtcmVjdGFuZ2xlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctY2xvc2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aW5kb3ctY2xvc2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lcy1yZWN0YW5nbGUtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LWNsb3NlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aW5kb3ctY2xvc2UtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbmRjYW1wOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmFuZGNhbXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmF2OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ3JhdjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV0c3k6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ldHN5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW1kYjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWltZGI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYXZlbHJ5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmF2ZWxyeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVlcmNhc3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lZXJjYXN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWljcm9jaGlwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWljcm9jaGlwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25vd2ZsYWtlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zbm93Zmxha2UtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1cGVycG93ZXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3VwZXJwb3dlcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cGV4cGxvcmVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd3BleHBsb3JlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZXR1cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1lZXR1cDsgfVxuIiwiLy8gU2NyZWVuIFJlYWRlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnNyLW9ubHkgeyBAaW5jbHVkZSBzci1vbmx5KCk7IH1cbi5zci1vbmx5LWZvY3VzYWJsZSB7IEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7IH1cbiIsIi8qdmFyaWFibGVzICovXG4kaGVhZGVyLWJhY2tncm91bmQ6ICNmZmY7XG4kZm9vdGVyLWJhY2tncm91bmQ6ICNGOEJFNTg7XG4kZGl2aWRlci1iYWNrZ3JvdW5kOiAjMzQ0OTVFO1xuJHNlY29uZGFyeS1kaXZpZGVyLWJhY2tncm91bmQ6ICNGOEJFNTg7XG5cbiRib2R5LWJhY2tncm91bmQ6ICNmZmY7XG4kY2FyZC1iYWNrZ3JvdW5kOiAjZmZmO1xuJG1lbnUtaG92ZXItYmFja2dyb3VuZDogcmdiKDIzMCwgMTQ1LCAwKTtcbiRtZW51LWJhY2tncm91bmQ6ICRkaXZpZGVyLWJhY2tncm91bmQ7XG5cbiRmb250LXN0YWNrOiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcbiRtZW51LWNvbG9yOiAjZmZmO1xuJG1lbnUtZm9udC1zaXplOiAxNHB4O1xuJHRleHQtc29mdC1jb2xvcjogIzc3NztcbiR0ZXh0LWhhcmQtY29sb3I6ICMyMjI7XG4kdGV4dC10aXRsZS1jb2xvcjogIzU1NTtcbiRsaW5rLWNvbG9yOiAjRUQzODMzO1xuJHBvbGwtYmFyLWNvbG9yOiAjMzQ0OTVFO1xuXG4kbWVzc2FnZS1pbmZvLWJhY2tncm91bmQ6ICMzNDQ5NUU7XG4kbWVzc2FnZS1lcnJvci1iYWNrZ3JvdW5kOiAjZjQ0MzM2O1xuJG1lc3NhZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kOiAjNGNhZjUwO1xuXG4kdGFicy1iYWNrZ3JvdW5kOiAjYzVjNGM0O1xuJHRhYnMtZm9udC1jb2xvcjogJHRleHQtaGFyZC1jb2xvcjtcbiR0YWJzLWNvbnRlbnQtYmFja2dyb3VuZDogI2M1YzRjNDtcblxuJHZvdGluZy1ib3gtYmFja2dyb3VuZDogI2Y3ZjdmNzsgXG4kdm90aW5nLWJveC1ib3JkZXI6ICNkZWRlZGU7IFxuJHZvdGluZy1ib3gtdm90ZS1jb2xvcjogJGhlYWRlci1iYWNrZ3JvdW5kOyBcbiR2b3RpbmctYm94LXZvdGVkLWNvbG9yOiAkZGl2aWRlci1iYWNrZ3JvdW5kOyBcblxuJGJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQ6ICNkZWRlZGU7XG4kYnV0dG9uLWRlZmF1bHQtZm9udC1jb2xvcjogJHRleHQtaGFyZC1jb2xvcjtcbiRidXR0b24taGlnaGxpZ2h0LWJhY2tncm91bmQ6ICMzNDQ5NUU7XG4kYnV0dG9uLWhpZ2hsaWdodC1mb250LWNvbG9yOiAjZGVkZWRlO1xuXG4kZm9ybS13aWRnZXRzLWRlZmF1bHQtYmFja2dyb3VuZDogI2ZmZjtcbiRmb3JtLXdpZGdldHMtZGVmYXVsdC1ib3JkZXI6IDEuNXB4ICR0ZXh0LWhhcmQtY29sb3Igc29saWQ7XG4kZm9ybS13aWRnZXRzLWRlZmF1bHQtZm9udC1jb2xvcjogJHRleHQtaGFyZC1jb2xvcjtcblxuJG1vZHVsZS1ib3JkZXItY29sb3I6ICRzZWNvbmRhcnktZGl2aWRlci1iYWNrZ3JvdW5kO1xuXG4kYnJlYWs6IDEyO1xuJHRvdGFsLWNvbHVtbnM6IDEyO1xuXG4vKiBicmVha3BvaW50cyAqL1xuJGRlc2t0b3AtbGFyZ2U6IDEyMDBweDtcbiRkZXNrdG9wLW1lZGl1bTogOTcwcHggMTIwMHB4O1xuJG1vYmlsZS1sYXJnZTogNzY4cHggOTcwcHg7XG4kbW9iaWxlLXRhYmxldC13aWR0aDogNzY4cHg7XG4kbm9uLW1vYmlsZS10YWJsZXQ6IG1pbi13aWR0aCAkbW9iaWxlLXRhYmxldC13aWR0aCArIDE7XG4kbW9iaWxlLXNtYWxsOiBtYXgtd2lkdGggJG1vYmlsZS10YWJsZXQtd2lkdGg7IiwiQG1peGluIGNsZWFyX2xpc3Rfc3R5bGUge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwcHg7XG4gICAgcGFkZGluZzogMDtcbn0iLCIubWFpbi1zZWN0aW9uIC5jYWxlbmRhcl9tb250aCB0YWJsZSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB0aCB7XG4gICAgcGFkZGluZzogMjBweCAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBjb2xvcjogIzU1NTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICM1NTU7XG4gIH1cbiAgdGQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNkNWU4ZjE7XG4gICAgICAgIGNvbG9yOiAjMTI1YTk1O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgICYub3RoZXJfbW9udGggYTpob3ZlciwgJi50b2RheSBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNkNWU4ZjE7XG4gICAgICBjb2xvcjogIzEyNWE5NTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gICAgYTphY3RpdmUsICYub3RoZXJfbW9udGggYTphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2QxZTNlZTtcbiAgICAgIGNvbG9yOiAjM2Q3Y2IxO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgICAmLnRvZGF5IGEge1xuICAgICAgJjphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDFlM2VlO1xuICAgICAgICBjb2xvcjogIzNkN2NiMTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2QxZTNlZTtcbiAgICAgIGNvbG9yOiAjM2Q3Y2IxO1xuICAgIH1cbiAgICAmLm90aGVyX21vbnRoIGEge1xuICAgICAgYmFja2dyb3VuZDogI2VlZTtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgIH1cbiAgfVxufVxuXG4vKiBEQVRFIFBJQ0tFUiAqL1xuXG4udWktZGF0ZXBpY2tlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ0NDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAycHggMnB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIC1tb3otYm94LXNoYWRvdzogMnB4IDJweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogI2ZmZjtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIuXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBub25lO1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxM3B4O1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogMTNweDtcbiAgICBib3JkZXItcmFkaXVzOiAxM3B4O1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY4YTFjNjtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxufVxuXG4udWktZGF0ZXBpY2tlci1wcmV2IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi51aS1kYXRlcGlja2VyLW5leHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi51aS1kYXRlcGlja2VyLXRpdGxlIHtcbiAgcGFkZGluZzogNXB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHtcbiAgbWFyZ2luOiAwO1xuICB0aCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBjb2xvcjogIzk5OTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgdGQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0NDQ7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzU1NTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2OGExYzY7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzNkN2NiMTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi51aS1kYXRlcGlja2VyLWN1cnJlbnQtZGF5IGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY4YTFjNjtcbiAgICAgIGJvcmRlci1jb2xvcjogIzNkN2NiMTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgICAmLnVpLWRhdGVwaWNrZXItb3RoZXItbW9udGggYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjM2IzYjNiO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0NDQ7XG4gICAgICBjb2xvcjogIzc3NztcbiAgICB9XG4gIH1cbn1cblxuLyogSU5MSU5FIERBVEUgUElDS0VSICovXG5cbi51aS1kYXRlcGlja2VyLWlubGluZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgLW1vei1ib3gtc2hhZG93OiBub25lO1xuICAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGQgYSB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDVweDtcbiAgICB9XG4gIH1cbn1cblxuLyogU0lERUJBUiBEQVRFIFBJQ0tFUiAqL1xuXG4uc2lkZWJhciB7XG4gIC51aS1kYXRlcGlja2VyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG4gIC51aS1kYXRlcGlja2VyLWhlYWRlciBhIHtcbiAgICBwYWRkaW5nOiA1cHggMTVweDtcbiAgfVxuICAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB7XG4gICAgdGgsIHRkIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICB9XG4gIH1cbn0iLCJmb3JtIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB6b29tOiAxO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIuXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDEzMHB4O1xuICAgICAgJi5yZXF1aXJlZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgIH1cbiAgICAgIHNtYWxsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBpbnB1dCB7XG4gICAgd2lkdGg6IDU1JTtcbiAgICAmW3R5cGU9Y2hlY2tib3hdLCAmW3R5cGU9cmFkaW9dIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICB0ZXh0YXJlYSB7XG4gICAgd2lkdGg6IDUyNHB4O1xuICAgIGhlaWdodDogMjAwcHg7XG4gIH1cbiAgdGFibGUge1xuICAgIG1hcmdpbjogMTBweCAwO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICB0aCB7XG4gICAgICBwYWRkaW5nOiAycHggNXB4IDJweCAwO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBjb2xvcjogIzc3NztcbiAgICB9XG4gICAgdGQge1xuICAgICAgcGFkZGluZzogMnB4IDVweCAycHggMDtcbiAgICB9XG4gIH1cbiAgLnN1Ym1pdCB7XG4gICAgYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICAuYWx0X2J1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICBidXR0b24uZGVsZXRlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLyogSEVMUCBURVhUICovXG5cbi5oZWxwX3RleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgY29sb3I6ICM5OTk7XG4gIGEge1xuICAgIGNvbG9yOiAjNjhhMWM2O1xuICB9XG59XG5cbmZvcm0gcCAuaGVscF90ZXh0IHtcbiAgbWFyZ2luOiA1cHggMCAwIDEzMHB4O1xufVxuXG4vKiBFUlJPUlMgKi9cblxuLmVycm9ycywgLmVycm9yIHtcbiAgY29sb3I6ICNhZjQ5NDk7XG59XG5cbi5lcnJvcmxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogI2FmNDk0OTtcbn1cblxuZm9ybSB7XG4gIHAgLmVycm9ycyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBjb2xvcjogI2FmNDk0OTtcbiAgfVxuICAuZXJyb3JsaXN0IHtcbiAgICBtYXJnaW4tbGVmdDogMTMwcHg7XG4gIH1cbn1cblxuLyogSU5QVVRTICovXG5cbmlucHV0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiA3cHg7XG4gIGNvbG9yOiAkZm9ybS13aWRnZXRzLWRlZmF1bHQtZm9udC1jb2xvcjtcbiAgYm9yZGVyOiAkZm9ybS13aWRnZXRzLWRlZmF1bHQtYm9yZGVyO1xuICBiYWNrZ3JvdW5kOiAkZm9ybS13aWRnZXRzLWRlZmF1bHQtYmFja2dyb3VuZDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTVweDtcbiAgY29sb3I6ICM1NTU7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogN3B4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmJiO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBmb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gIGNvbG9yOiAjNTU1O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAmOmZvY3VzIHtcbiAgICBwYWRkaW5nOiA2cHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzk5OTtcbiAgfVxufVxuXG5pbnB1dCB7XG4gICY6Zm9jdXMge1xuICAgIHBhZGRpbmc6IDZweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjOTk5O1xuICB9XG4gICZbdHlwZT1maWxlXSB7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgLW1vei1ib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbnRleHRhcmVhIHtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG59XG5cbi8qIEJVVFRPTlMgKi9cblxuYnV0dG9uIHtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IGluaXRpYWw7XG4gIGNvbG9yOiAkYnV0dG9uLWhpZ2hsaWdodC1mb250LWNvbG9yO1xuICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWhpZ2hsaWdodC1iYWNrZ3JvdW5kO1xufVxuXG4vKiBDVVNUT00gSU5QVVRTICovXG5cbiNpZF9wb2ludCB7XG4gIG1hcmdpbjogMTBweCAwIDAgMTMwcHg7XG59XG5cbiNpZF9wb2ludF9tYXBfd3JhcHBlciB7XG4gIG1hcmdpbjogMCAwIDAgMTMwcHg7XG59XG5cbiNpZF9wb2ludF9tYXBfY2VudGVyIHtcbiAgd2lkdGg6IDIzcHg7XG4gIGhlaWdodDogMzJweDtcbiAgYmFja2dyb3VuZDogdXJsKC4uLy4uL2ltYWdlcy9tYXBzL21hcmtlci5wbmcpIG5vLXJlcGVhdDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1pbmRlbnQ6IC0xMDAwcHg7XG59XG5cbi8qIEFVVE8gQ09NUExFVEUgKi9cblxuLnVpLWF1dG9jb21wbGV0ZSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogNXB4IDAgMCAwO1xuICBwYWRkaW5nOiA3cHg7XG4gIHdpZHRoOiAzNTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgY29sb3I6ICM1NTU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMnB4IDJweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAtbW96LWJveC1zaGFkb3c6IDJweCAycHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGxpIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDNweCA1cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICM3Nzc7XG4gIH1cbiAgLnVpLXN0YXRlLWhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGQ0NDO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgfVxufVxuXG4vKiBTSURFQkFSIElOUFVUICovXG5cbmRpdi5zaWRlYmFyIHtcbiAgdGV4dGFyZWEge1xuICAgIHdpZHRoOiA5NSU7XG4gICAgaGVpZ2h0OiAxMTBweDtcbiAgfVxuICBzZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8qIEZJTFRFUkVEIFNFTEVDVCAqL1xuXG5mb3JtIC5maWx0ZXJlZC1zZWxlY3Qge1xuICAuc2VsZWN0b3ItYXZhaWxhYmxlLCAuc2VsZWN0b3ItY2hvc2VuIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbiAgLnNlbGVjdG9yLWF2YWlsYWJsZSBoMiwgLnNlbGVjdG9yLWNob3NlbiBoMiB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgY29sb3I6ICM3Nzc7XG4gIH1cbiAgLnNlbGVjdG9yLWZpbHRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGlucHV0IHtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIHdpZHRoOiAyNThweDtcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBwYWRkaW5nOiA0cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAudWktYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgfVxuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAzcHggMTBweCAzcHggMjVweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYXJyb3dzL2dyZXlfcmlnaHQuZ2lmKSAxMHB4IDUwJSBuby1yZXBlYXQ7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICMxODYyOWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC51aS1zdGF0ZS1hY3RpdmUgYSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9hcnJvd3MvZ3JleV9kb3duLmdpZik7XG4gICAgY29sb3I6ICM3Nzc7XG4gIH1cbiAgLnVpLWFjY29yZGlvbi1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlO1xuICAgIHRhYmxlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRoIHtcbiAgICAgICAgcGFkZGluZzogMnB4IDA7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgfVxuICAgICAgdGQge1xuICAgICAgICBwYWRkaW5nOiAycHggMDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgY29sb3I6ICM1NTU7XG4gICAgICB9XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9XG4gICAgICBzbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnBhZ2luYXRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBhLCBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDAgMXB4IDAgMDtcbiAgICBwYWRkaW5nOiA4cHggMjVweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEzcHg7XG4gICAgY29sb3I6ICM3Nzc7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAjZWVlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGNlbnRlciB0b3AsIGNlbnRlciBib3R0b20sIGZyb20oI2VlZSksIHRvKCNjY2MpKTtcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AgY2VudGVyLCAjZWVlLCAjY2NjKTtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcbiAgICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcbiAgfVxuICBhOmhvdmVyLCBzcGFuOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgYTphY3RpdmUge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDAgMCA1cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB9XG4gIHNwYW4ge1xuICAgICY6YWN0aXZlIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMCA1cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgICAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICB9XG4gICAgY29sb3I6ICM5OTk7XG4gICAgYmFja2dyb3VuZDogI2VlZTtcbiAgICBib3JkZXItY29sb3I6ICNkZGQ7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgIC1tb3otYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICAubmV4dCB7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcbiAgICBib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcbiAgfVxuICAucHJldmlvdXMge1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogNHB4IDAgMCA0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDAgMCA0cHg7XG4gIH1cbn0iLCIubW9kdWxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZHVsZS1ib3JkZXItY29sb3I7XG4gIGgyIHtcbiAgICBtYXJnaW46IDA7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDFweDtcbiAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstY29sb3I7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgY29sb3I6ICM3Nzc7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgICYubGFzdCBhIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstY29sb3I7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbiAgaDMge1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICB9XG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIGxpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1vZHVsZS1ib3JkZXItY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgJi5sYXN0IHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaW5rLWNvbG9yO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgICAgaW1nLnRodW1ibmFpbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMTBweDtcbiAgICAgIH1cbiAgICAgIHNtYWxsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHNtYWxsIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgICBzdHJvbmcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBjb2xvcjogIzc3NztcbiAgICAgIH1cbiAgICB9XG4gICAgJi5sYXN0IGEge1xuICAgICAgJi5idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAzcHggMTVweDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmYgdXJsKC4uL2ltYWdlcy9idXR0b25fYmcuZ2lmKSBsZWZ0IGJvdHRvbSByZXBlYXQteDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgICAgICAgY29sb3I6ICM3Nzc7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuICAgICAgJjpob3Zlci5idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbGluay1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgY29sb3I6ICRtZW51LWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ib2R5IHtcbiAgICBwYWRkaW5nOiA5cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoMyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBtYXJnaW46IDEwcHggMDtcbiAgICB9XG4gICAgLnRodW1ibmFpbCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW46IDAgMCAxMHB4IDEwcHg7XG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAmLmNpdGUge1xuICAgICAgICAgIG1hcmdpbjogLTVweCAwIDAgMDtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtc29mdC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9vdGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtb2R1bGUtYm9yZGVyLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAkdGV4dC1zb2Z0LWNvbG9yO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubW9kdWxlX3Bob3RvcyB7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xuICBib3JkZXI6IG5vbmU7XG4gIGgyIGEge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6ICM1NTU7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICBjb2xvcjogIzU1NTtcbiAgICB9XG4gIH1cbiAgdWwge1xuICAgIG1hcmdpbjogMTFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHRleHQtc29mdC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb290ZXIge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkdGV4dC1zb2Z0LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4ubW9kdWxlIC5yYWRhciB7XG4gIGEge1xuICAgIGltZyB7XG4gICAgICBtYXJnaW46IDEwcHggMCAxMHB4IDJweDtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRtb2R1bGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgICAmOmhvdmVyIGltZyB7XG4gICAgICBwYWRkaW5nOiA2cHg7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiAkbGluay1jb2xvcjtcbiAgICB9XG4gIH1cbiAgdWwgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBzbWFsbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGNvbG9yOiAkdGV4dC1zb2Z0LWNvbG9yO1xuICAgIH1cbiAgfVxufSIsIi5pbmxpbmUge1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQ0ZDRkM7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRjBGMEYwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0YwRjBGMDtcbn1cblxuLmlubGluZS1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgd2lkdGg6IDE4MHB4O1xuICBjbGVhcjogbGVmdDtcbn1cblxuLmlubGluZS1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIHdpZHRoOiAxODBweDtcbiAgY2xlYXI6IHJpZ2h0O1xufVxuXG4uaW5saW5lIHtcbiAgcCwgb2wsIHVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMThweDtcbiAgfVxuICAudHlwZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgY29sb3I6ICM2OGExYzY7XG4gIH1cbiAgaDMsIC50aXRsZSwgLm5hbWUsIC50b3BpYyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICBjb2xvcjogIzM5YjQ0YTtcbiAgfVxuICAubW9yZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbiAgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxuICBmb3JtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIC5zdWJtaXQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIC5idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiA4cHggMjVweDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgICAuYWx0X2J1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGNvbG9yOiAjNjhhMWM2O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBBVURJTyBDTElQIFNFVCAqL1xuXG4uaW5saW5lX2F1ZGlvX2NsaXBfc2V0IC5hdWRpb19jbGlwX2xpc3Qge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi8qIEJVU0lORVNTIEFEICovXG5cbi5hZF9pbmxpbmUge1xuICBoNiB7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIH1cbiAgLnRodW1ibmFpbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG59XG5cbi8qIENBVEVHT1JZICovXG5cbi5jYXRlZ29yeV9pbmxpbmUgLnRodW1ibmFpbCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLyogQ0hBVCAqL1xuXG4uaW5saW5lX2NoYXQgZm9ybSB7XG4gIG1hcmdpbjogMTBweCAwIDAgMDtcbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLyogRE9DVU1FTlQgKi9cblxuLmlubGluZV9kb2N1bWVudCB7XG4gIC50aHVtYm5haWwge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxuICAuZG93bmxvYWQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGEge1xuICAgICAgcGFkZGluZzogM3B4IDEwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjOTk5O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDlweDtcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogOXB4O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMzMjZhOTk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIEVNQkVEREVEICovXG5cbi5pbmxpbmVfZW1iZWRkZWQge1xuICB3aWR0aDogMzAwcHg7XG4gIC5jYXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG59XG5cbi8qIEVWRU5UIFRJTUUgKi9cblxuLmlubGluZV9ldmVudF90aW1lIC5ldmVudF9pbmZvIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICBjb2xvcjogIzU1NTtcbiAgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxufVxuXG4vKiBGRUFUVVJFICovXG5cbi5pbmxpbmVfZmVhdHVyZSAudGh1bWJuYWlsIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4vKiBPTiBUSEUgU1RSRUVUICovXG5cbi5pbmxpbmVfb250aGVzdHJlZXQge1xuICAucXVlc3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGNvbG9yOiAjMzMzO1xuICB9XG4gIC50aHVtYm5haWwge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgfVxuICAgIGNpdGUge1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgY29sb3I6ICM5OTk7XG4gICAgfVxuICB9XG59XG5cbi8qIE1PVklFICovXG5cbi5pbmxpbmVfbW92aWUgLnRodW1ibmFpbCB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLyogUEhPVE8gKi9cblxuLmlubGluZV9waG90byB7XG4gIC50aHVtYm5haWwge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLmJ5bGluZSwgLmNyZWRpdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAjNzc3O1xuICB9XG4gICYuaW5saW5lX3dlaWdodF9sZWFkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC5waG90b19tZXRhIHtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgfVxuICB9XG59XG5cbi8qIFBPRENBU1QgRVBJU09ERSAqL1xuXG4uaW5saW5lX3BvZGNhc3Qge1xuICAuc2hvdyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgYSB7XG4gICAgICBjb2xvcjogIzk5OTtcbiAgICB9XG4gIH1cbiAgLmVwaXNvZGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICB9XG4gIC5wbGF5ZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLyogUE9MTCAqL1xuXG4uaW5saW5lX3BvbGwge1xuICAucXVlc3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgY29sb3I6ICM1NTU7XG4gIH1cbiAgZm9ybSB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAjNTU1O1xuICAgIGxpIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxufVxuXG4vKiBQT0xMIFJFU1VMVFMgKi9cblxuLmlubGluZV9wb2xsX3Jlc3VsdHMge1xuICAucXVlc3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGNvbG9yOiAjNTU1O1xuICAgIGEge1xuICAgICAgY29sb3I6ICMzOWI0NGE7XG4gICAgfVxuICB9XG4gIC5yZXN1bHRzIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIC50b3RhbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgY29sb3I6ICM2OGExYzY7XG4gICAgICB9XG4gICAgICAuYmFyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY5YzY3YTtcbiAgICAgICAgLnBlcmNlbnQge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IC0ycHg7XG4gICAgICAgICAgcmlnaHQ6IC0zNXB4O1xuICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIGNvbG9yOiAjMzliNDRhO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRvdGFsX3ZvdGVzIHtcbiAgICBjb2xvcjogIzY4YTFjNjtcbiAgfVxufVxuXG4uaW5saW5lX3dlaWdodF9sZWFkLmlubGluZV9wb2xsX3Jlc3VsdHMgLnF1ZXN0aW9uLCAuaW5saW5lX3dlaWdodF9sYXJnZS5pbmxpbmVfcG9sbF9yZXN1bHRzIC5xdWVzdGlvbiB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG59XG5cbi5pbmxpbmVfd2VpZ2h0X2xlYWQuaW5saW5lX3BvbGxfcmVzdWx0cyAucmVzdWx0cywgLmlubGluZV93ZWlnaHRfbGFyZ2UuaW5saW5lX3BvbGxfcmVzdWx0cyAucmVzdWx0cyB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbn1cblxuLmlubGluZV93ZWlnaHRfbGVhZC5pbmxpbmVfcG9sbF9yZXN1bHRzIC5yZXN1bHRzIGxpLCAuaW5saW5lX3dlaWdodF9sYXJnZS5pbmxpbmVfcG9sbF9yZXN1bHRzIC5yZXN1bHRzIGxpIHtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG59XG5cbi5pbmxpbmVfd2VpZ2h0X2xlYWQuaW5saW5lX3BvbGxfcmVzdWx0cyAucmVzdWx0cyBsaSAuYmFyLCAuaW5saW5lX3dlaWdodF9sYXJnZS5pbmxpbmVfcG9sbF9yZXN1bHRzIC5yZXN1bHRzIGxpIC5iYXIge1xuICBoZWlnaHQ6IDI1cHg7XG59XG5cbi5pbmxpbmVfd2VpZ2h0X2xlYWQuaW5saW5lX3BvbGxfcmVzdWx0cyAucmVzdWx0cyBsaSAuYmFyIC5wZXJjZW50LCAuaW5saW5lX3dlaWdodF9sYXJnZS5pbmxpbmVfcG9sbF9yZXN1bHRzIC5yZXN1bHRzIGxpIC5iYXIgLnBlcmNlbnQge1xuICB0b3A6IDJweDtcbn1cblxuLyogUkVDVVJSSU5HIElOTElORSAqL1xuXG4ucmVjdXJyaW5nX2lubGluZSB7XG4gIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICBjb2xvcjogIzU1NTtcbiAgfVxuICB1bCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICB9XG4gIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi8qIFRFWFQgSU5JTkUgKi9cblxuLnRleHRfaW5saW5lIHVsIHtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxufVxuXG4vKiBWSURFTyAqL1xuXG4uaW5saW5lX3ZpZGVvIHtcbiAgLnRodW1ibmFpbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG4gICYuaW5saW5lX3dlaWdodF9sZWFkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC5jYXB0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgfVxuICB9XG4gICYuaW5saW5lX3dlaWdodF9sYXJnZSAudGl0bGUsICYuaW5saW5lX3dlaWdodF9tZWRpdW0gLnRpdGxlIHtcbiAgICBtYXJnaW46IDE1cHggMCA1cHggMDtcbiAgfVxufVxuXG4vKiBWSURFTyBTRVQgKi9cblxuLmlubGluZV92aWRlb19zZXQgLnRodW1ibmFpbCB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLyogV0VJR0hUOiBMRUFEICovXG5cbi5pbmxpbmVfd2VpZ2h0X2xlYWQge1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIH1cbiAgLnR5cGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgdGV4dGFyZWEge1xuICAgIHdpZHRoOiA2MjhweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gIH1cbn1cblxuLyogV0VJR0hUOiBMQVJHRSAqL1xuXG4uaW5saW5lX3dlaWdodF9sYXJnZSB7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAudGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgfVxuICB0ZXh0YXJlYSB7XG4gICAgd2lkdGg6IDYyOHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgfVxufVxuXG4vKiBXRUlHSFQ6IE1FRElVTSAqL1xuXG4uaW5saW5lX3dlaWdodF9tZWRpdW0ge1xuICB3aWR0aDogNDEwcHg7XG4gIHRleHRhcmVhIHtcbiAgICB3aWR0aDogNDAwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICB9XG59XG4iLCIud21kLXBhbmVsIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgbWFyZ2luLXJpZ2h0OiAyNSU7XG4gIHdpZHRoOiA1MCU7XG4gIG1pbi13aWR0aDogNTAwcHg7XG59XG5cbi53bWQtYnV0dG9uLWJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICB6b29tOiAxO1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIi5cIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG5cbi53bWQtcHJldmlldyB7XG4gIG1hcmdpbjogMTBweCAwO1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXI6IDFweCBkYXNoZWQgI2RkZDtcbiAgem9vbTogMTtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIuXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG4ud21kLWJ1dHRvbi1yb3cge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgY29sb3I6ICM3Nzc7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogIzU1NTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogIzc3NztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gICAgJi53bWQtc3BhY2VyIHtcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgIH1cbiAgfVxufVxuXG4ud21kLWJvbGQtYnV0dG9uIHtcbiAgbGVmdDogMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggMDtcbn1cblxuLndtZC1pdGFsaWMtYnV0dG9uIHtcbiAgbGVmdDogMjVweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwcHggMDtcbn1cblxuLndtZC1zcGFjZXIxIHtcbiAgbGVmdDogNTBweDtcbn1cblxuLndtZC1saW5rLWJ1dHRvbiB7XG4gIGxlZnQ6IDc1cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IDA7XG59XG5cbi53bWQtcXVvdGUtYnV0dG9uIHtcbiAgbGVmdDogMTAwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC02MHB4IDA7XG59XG5cbi53bWQtY29kZS1idXR0b24ge1xuICBsZWZ0OiAxMjVweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggMDtcbn1cblxuLndtZC1pbWFnZS1idXR0b24ge1xuICBsZWZ0OiAxNTBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IDA7XG59XG5cbi53bWQtc3BhY2VyMiB7XG4gIGxlZnQ6IDE3NXB4O1xufVxuXG4ud21kLW9saXN0LWJ1dHRvbiB7XG4gIGxlZnQ6IDIwMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggMDtcbn1cblxuLndtZC11bGlzdC1idXR0b24ge1xuICBsZWZ0OiAyMjVweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0MHB4IDA7XG59XG5cbi53bWQtaGVhZGluZy1idXR0b24ge1xuICBsZWZ0OiAyNTBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MHB4IDA7XG59XG5cbi53bWQtaHItYnV0dG9uIHtcbiAgbGVmdDogMjc1cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xODBweCAwO1xufVxuXG4ud21kLXNwYWNlcjMge1xuICBsZWZ0OiAzMDBweDtcbn1cblxuLndtZC11bmRvLWJ1dHRvbiB7XG4gIGxlZnQ6IDMyNXB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjAwcHggMDtcbn1cblxuLndtZC1yZWRvLWJ1dHRvbiB7XG4gIGxlZnQ6IDM1MHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjIwcHggMDtcbn1cblxuLndtZC1oZWxwLWJ1dHRvbiB7XG4gIHJpZ2h0OiAwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0yNDBweCAwO1xufVxuXG4ud21kLXByb21wdC1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cblxuLndtZC1wcm9tcHQtZGlhbG9nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gID4gZGl2IHtcbiAgICBmb250LXNpemU6IDAuOGVtO1xuICAgIGZvbnQtZmFtaWx5OiBhcmlhbCwgaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICB9XG59XG5cbi53bWQtZW1iZWQtaGVscCB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgd2lkdGg6IDE4MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoNjEsIDEyNCwgMTc3KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDAxO1xuICB0b3A6IDMwcHg7XG4gIHJpZ2h0OiAwcHg7XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IC4yZW07XG4gICAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuXG4ud21kLWVtYmVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjODg4O1xuICBwYWRkaW5nOiAwcHg7XG59XG5cbi50cnlfZW1iZWQge1xuICBmb250LXNpemU6IDEycHg7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgYmFja2dyb3VuZDogdXJsKC4uLy4uL2ltYWdlcy9hcnJvd3Mvd2hpdGVfcmlnaHQuZ2lmKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbn1cblxuLm9lbWJlZCB7XG4gIG1hcmdpbjogMHB4IGF1dG8gMWVtIGF1dG87XG4gIHBhZGRpbmc6IDBweDtcbiAgLmNyZWRpdCB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufVxuXG4ub2VtYmVkLXZpZGVvIC5jcmVkaXQsIC5vZW1iZWQtcGhvdG8gLmNyZWRpdCB7XG4gIG1hcmdpbjogMHB4O1xuICBwYWRkaW5nOiAwcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLm9lbWJlZC12aWRlbyBwIHNtYWxsIHtcbiAgY29sb3I6ICM3Nzc7XG59XG5cbi5vZW1iZWQtbGluayB7XG4gIGZsb2F0OiBub25lO1xuICAuY3JlZGl0IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIH1cbn1cblxuLndtZC1wcmV2aWV3IC5vZW1iZWQtdmlkZW8ge1xuICBtYXJnaW46IDAgYXV0byAxMHB4IGF1dG87XG4gIHBhZGRpbmc6IDcwcHggMTBweDtcbiAgYmFja2dyb3VuZDogIzMzMztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBoMyB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIHAsIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG59XG5cbmJvZHkuZW50cnlfZGV0YWlsIC53bWQtcHJldmlldyBwIHtcbiAgYm9yZGVyLWJvdHRvbTogMHB4O1xufVxuXG4ubGlzdCAuY29tbWVudCAub2VtYmVkLCAjY29tbWVudF9mb3JtIC5vZW1iZWQsICNhbnN3ZXJzIC5vZW1iZWQsIC5jb21tZW50X3RleHQgLm9lbWJlZCB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwIDAgMTBweCAxMHB4O1xuICBjbGVhcjogcmlnaHQ7XG59XG5cbi5saXN0IC5jb21tZW50IC5vZW1iZWQtbGluaywgI2NvbW1lbnRfZm9ybSAub2VtYmVkLWxpbmssICNhbnN3ZXJzIC5vZW1iZWQtbGluaywgLmNvbW1lbnRfdGV4dCAub2VtYmVkLWxpbmsge1xuICBmbG9hdDogbm9uZTtcbn1cblxuLmxpc3QgLmNvbW1lbnQge1xuICAub2VtYmVkLXZpZGVvIHAsIC5vZW1iZWQtcGhvdG8gcCB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG59XG5cbiNhbnN3ZXJzIC5saXN0IHtcbiAgLm9lbWJlZC12aWRlbyBwLCAub2VtYmVkLXBob3RvIHAge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxufVxuXG4uY29tbWVudF90ZXh0IHtcbiAgem9vbTogMTtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIuXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG4uZ2FsbGVyaWVzIHtcbiAgLndtZC1wcmV2aWV3LCAud21kLWJ1dHRvbi1iYXIge1xuICAgIHdpZHRoOiA2MDBweDtcbiAgfVxufVxuXG4jY29tbWVudF9mb3JtIC53bWQtaW1hZ2UtYnV0dG9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogLmxpc3QgLmNvbW1lbnQgdWwsIC53bWQtcHJldmlldyB1bCwgI2Fuc3dlcnMgdWwgeyBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7IG1hcmdpbi1sZWZ0OiAxNXB4OyB9ICovIiwiLyogUkVTRVQgKi9cbi8qICN0b29sYmFyLCAjaGVhZGVyLCAjbmF2LCAjc3VibmF2LCAjY29tbWVudHMsIC5zaWRlYmFyLCAjZm9vdGVyIHsgZGlzcGxheTogbm9uZTsgfSAqL1xuI3BhZ2UsICNib2R5LCAjYm9keSAud3JhcHBlciwgLmNvbnRlbnQsIC5jb250ZW50X3RpdGxlIHsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyBtaW4td2lkdGg6IDA7IH1cbiNzcWxfZGVidWcgeyBkaXNwbGF5OiBub25lOyB9XG5cbi8qIFBPUFVQIFNUWUxFUyAqL1xuYm9keSB7IHBhZGRpbmc6IDBweCAhaW1wb3J0YW50OyBiYWNrZ3JvdW5kOiAjZmZmICFpbXBvcnRhbnQ7IH1cblxuZm9ybSB0ZXh0YXJlYSB7IHdpZHRoOiA0MzVweDsgfVxuXG4uY29udGVudF90aXRsZSB7IHBhZGRpbmc6IDAgMCAxMHB4IDAgIWltcG9ydGFudDsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7IH1cbi5jb250ZW50X3RpdGxlIGgyIHsgbWFyZ2luLXRvcDogMDsgZm9udC1zaXplOiAyMHB4OyBsaW5lLWhlaWdodDogMjVweDsgfVxuLmNvbnRlbnRfdGl0bGUgLmZlZWQgeyBkaXNwbGF5OiBub25lOyB9XG5cbi5jb250ZW50IHsgcGFkZGluZzogMjBweCAwICFpbXBvcnRhbnQ7IH1cbiIsIi8qIFBIT1RPUyBBTkQgR0FMTEVSSUVTICovXG5cbmJvZHkuZ2FsbGVyeV9kZXRhaWwge1xuICAjcGFnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzExMTtcbiAgfVxuICAjc3VibmF2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIH1cbiAgI2JvZHkge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICB9XG4gIC5jb250ZW50X3RpdGxlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgaDIge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICAgIHAge1xuICAgICAgY29sb3I6ICM5OTk7XG4gICAgfVxuICAgIGEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICAgIC5iYWNrIGEge1xuICAgICAgY29sb3I6ICM3Nzc7XG4gICAgfVxuICAgIC52b3RlX2JveCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLm9iamVjdF90b29scyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuY29udGVudCB7XG4gICAgd2lkdGg6IDk5MHB4O1xuICB9XG4gIC5saXN0IC5pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIC50aHVtYm5haWwge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuY2FwdGlvbiB7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgY29sb3I6ICNiYmI7XG4gICAgfVxuICB9XG4gICNjb21tZW50cyB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgfVxufVxuXG4uZ2FsbGVyeV9waG90b19kZXRhaWwgLnByZXZpb3VzX25leHQge1xuICBwYWRkaW5nOiAxMHB4O1xuICB3aWR0aDogMzAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpdiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEyMHB4O1xuICB9XG4gIC5wcmV2aW91cyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vaW1hZ2VzL2Fycm93cy9sZXNzX3RoYW4uZ2lmKSAwIDUwJSBuby1yZXBlYXQ7XG4gIH1cbiAgLm5leHQge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uLy4uL2ltYWdlcy9hcnJvd3MvZ3JlYXRlcl90aGFuLmdpZikgMTAwJSA1MCUgbm8tcmVwZWF0O1xuICB9XG4gIC5ub19waG90byB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDMwcHggMTBweCAwIDEwcHg7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIGJhY2tncm91bmQ6ICNlZWU7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogIzc3NztcbiAgfVxuICBhIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLnBob3RvX2dyaWQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAuaXRlbSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwIDEwcHggMTBweCAwO1xuICAgIC50aHVtYm5haWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICAucGhvdG9faW5mbyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG50YWJsZS5waG90b3MgdGQge1xuICBwYWRkaW5nOiAwIDIwcHggMjBweCAwO1xuICB3aWR0aDogMjEwcHg7XG4gIC50aHVtYm5haWwge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gICYubGFzdCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICAuY2FwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgY29sb3I6ICM3Nzc7XG4gIH1cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGNvbG9yOiAjOTk5O1xuICB9XG59XG5cbi8qIEFVRElPICovXG5cbi5hdWRpb19saXN0IC5yZWxhdGVkIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGNvbG9yOiAjOTk5O1xuICBzdHJvbmcge1xuICAgIGNvbG9yOiAjNzc3O1xuICB9XG59XG5cbi5hdWRpb19wbGF5ZXIge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nOiA1cHg7XG4gIHdpZHRoOiA1ODBweDtcbiAgaGVpZ2h0OiAzNXB4O1xuICBiYWNrZ3JvdW5kOiAjZGRkO1xufVxuXG51bC5wbGF5bGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogM3B4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICBsaSB7XG4gICAgbWFyZ2luOiA1cHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYSB7XG4gICAgICBjb2xvcjogIzRlOWJkYTtcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICMxMjVhOTU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBWSURFTyAqL1xuXG52aWRlbyB7XG4gIGJhY2tncm91bmQ6ICMxMTE7XG59XG5cbmJvZHkge1xuICAmLnZpZGVvX2RldGFpbCAudmlkZW8ge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbiAgJi52aWRlb19saXN0ICN2aWRlb19kZXRhaWxzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHBhZGRpbmc6IDEwcHggNXB4IDVweCA1cHg7XG4gICAgcCB7XG4gICAgICAmLmNhcHRpb24ge1xuICAgICAgICBtYXJnaW46IDhweCAwO1xuICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIH1cbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG4gICAgdWwuYnlsaW5lIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDVweCAwIDAgMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGxpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxudWwudmlkZW9fbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMjVweCAwIDAgMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgY29sb3I6ICM2NjY7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmgzICsgdWwudmlkZW9fbGlzdCB7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxudWwudmlkZW9fbGlzdCBsaSB7XG4gIHdpZHRoOiAyMDVweDtcbiAgaGVpZ2h0OiAyNTBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMCAyMXB4IDAgMDtcbiAgJi5sYXN0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgYSB7XG4gICAgJi50aHVtYm5haWwge1xuICAgICAgaW1nIHtcbiAgICAgICAgcGFkZGluZzogNHB4O1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIGltZyB7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMTg2MjlkO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxuICBzcGFuLmRhdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuICAuaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbmRpdi52aWRlb19saXN0IC5pdGVtIC50aHVtYm5haWwge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDEwcHggMCAwO1xufVxuXG4ubW9kdWxlX3ZpZGVvIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTExO1xuICBoMiBhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMTE7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTExO1xuICAgIH1cbiAgfVxuICAuYm9keSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICM2OGExYzY7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuIiwiYm9keSB7XG4gICYuZXZlbnRfYXJjaGl2ZV9kYXkgLmNvbnRlbnRfdGl0bGUgaDIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDM2MHB4O1xuICB9XG4gICYuZXZlbnRfYXJjaGl2ZV9tb250aCAuY29udGVudCAubW9udGhfY2FsZW5kYXIge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB0YWJsZSB7XG4gICAgICB0aCB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgIH1cbiAgICAgIHRkIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgcGFkZGluZzogMjVweCAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYubmV3c19hcmNoaXZlX2RheSAuY2FsZW5kYXIge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5ldmVudF9yZWxhdGVkX2luZm8gdWwuc3Vic2NyaWJlIGxpIHtcbiAgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIHNtYWxsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgY29sb3I6IHJnYigxNTMsIDE1MywgMTUzKTtcbiAgICB9XG4gIH1cbiAgYSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG59XG5cbi5ldmVudF9zZWFyY2hfZm9ybSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nOiAyMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHNlbGVjdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIHdpZHRoOiAxMjBweDtcbiAgICB9XG4gICAgaW5wdXQge1xuICAgICAgd2lkdGg6IDQ3JTtcbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxODYyOWQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5hZHZhbmNlZCB7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBjb2xvcjogIzc3NztcbiAgICB9XG4gIH1cbiAgLmFkdmFuY2VkX2ZpbHRlcnMge1xuICAgIHAge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIGNvbG9yOiAjNzc3O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogIzc3NztcbiAgICAgIH1cbiAgICB9XG4gICAgLmRhdGVfc3BhbiBpbnB1dCB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgfVxuICAgIC5jaGVja2JveCB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgaW5wdXQge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gICAgLmhpZGUge1xuICAgICAgbWFyZ2luOiAxMHB4IDAgMCAxMzBweDtcbiAgICB9XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBsaSB7XG4gICAgICBwYWRkaW5nOiAwIDAgMTBweCAwO1xuICAgICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNob3J0LXdpZHRoIGlucHV0IHtcbiAgICAgIHdpZHRoOiA4NXB4O1xuICAgIH1cbiAgICAuY2hlY2tib3gge1xuICAgICAgbGFiZWwge1xuICAgICAgICB3aWR0aDogMzUwcHg7XG4gICAgICB9XG4gICAgICBpbnB1dCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgcGFkZGluZzogNXB4IDE1cHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYmFja2dyb3VuZDogI2ZmZiB1cmwoLi4vLi4vaW1hZ2VzL2J1dHRvbl9iZy5naWYpIHJlcGVhdC14IGxlZnQgYm90dG9tO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgZm9udDogYm9sZCAxM3B4LzE0cHggJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgY29sb3I6ICM3Nzc7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzEyNWE5NTtcbiAgICAgIGJvcmRlci1jb2xvcjogIzEyNWE5NTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxufVxuXG4ucmVtaW5kZXJfZm9ybSB7XG4gIC5lcnJvcmxpc3Qge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgMCAxNDBweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBjb2xvcjogcmVkO1xuICB9XG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGFiZWwge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgd2lkdGg6IDEzMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBjb2xvcjogIzY2NjtcbiAgICB9XG4gICAgaW5wdXQge1xuICAgICAgcGFkZGluZzogM3B4O1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgICB9XG4gICAgc2VsZWN0IHtcbiAgICAgIHBhZGRpbmc6IDNweDtcbiAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICB9XG4gICAgJi5zdWJtaXQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDE0MHB4O1xuICAgICAgaW5wdXQge1xuICAgICAgICBwYWRkaW5nOiA0cHggMTVweDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQ6ICMxODYyOWQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbnRhYmxlLmV2ZW50X2xpc3Qge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZTtcbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xuICAgICYubGFzdCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuICB9XG4gIHRoIHtcbiAgICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICAgIGNvbG9yOiAjOTk5O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgdGQge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAmLnRpdGxlIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4IDA7XG4gICAgICBoNCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICB9XG4gICAgICAudGh1bWJuYWlsIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIH1cbiAgICAgIGg1IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICM1NTU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnRpbWUge1xuICAgICAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggMDtcbiAgICAgIHdpZHRoOiAxMTBweDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgY29sb3I6ICM1NTU7XG4gICAgfVxuICAgICYuY2l0eSB7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZWVlO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGNvbG9yOiAjNzc3O1xuICAgIH1cbiAgICAmLmNvc3QsICYuY2F0ZWdvcnkge1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZWVlO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG4gIH1cbn1cblxuLyogVVNFUiBTVUJNSVRURUQgRVZFTlRTICovXG5cbmJvZHkudXNlcl9zdWJtaXR0ZWRfZXZlbnRzIHtcbiAgLmhlbHBfdGV4dCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmVtcHR5LXJvdywgLmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZXZlbnRfZm9ybSAuc21hbGwge1xuICAgIHdpZHRoOiAxNSU7XG4gIH1cbiAgLnF1aWV0IHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgcGFkZGluZzogMCAwIDNweCA1cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiAjNzc3O1xuICB9XG4gICNzZWxlY3RlZC1wbGFjZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmb250LXN0eWxlOiAxMnB4O1xuICAgIC5hZGRyZXNzLCAucGhvbmUge1xuICAgICAgY29sb3I6ICM3Nzc7XG4gICAgfVxuICB9XG4gICNzZWxlY3RlZC1wbGFjZS1pbmZvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAjY2xlYXItcGxhY2Utc2VsZWN0aW9uIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgYS5xdWlldCwgLnJlcXVlc3QtcHJvbW90ZXItc3RhdHVzIGEge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxuICAucHJvbW90ZXItc3RhdHVzIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5yZXF1ZXN0LXByb21vdGVyLXN0YXR1cyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGEge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDBweDtcbiAgICB9XG4gIH1cbiAgLnRydXN0ZWQge1xuICAgIGNvbG9yOiAjMDgwO1xuICB9XG4gIC5kZW5pZWQge1xuICAgIGNvbG9yOiAjOTAwO1xuICB9XG4gIC5ldmVudF9mb3JtIHtcbiAgICBsYWJlbCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cbiAgICAuZXJyb3Ige1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgLmNvc3RfcmFuZ2Uge1xuICAgICAgdGgge1xuICAgICAgICBjb2xvcjogIzU1NTtcbiAgICAgIH1cbiAgICAgIHRkIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gICAgaW5wdXQuc21hbGwge1xuICAgICAgd2lkdGg6IDU1cHg7XG4gICAgfVxuICB9XG4gIC5ldmVudF90aW1lcy1maWVsZHNldCwgLnJlY3VycmluZ19ldmVudF90aW1lcy1maWVsZHNldCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIH1cbiAgLmV2ZW50X3RpbWVzLWZpZWxkc2V0IGg0LCAucmVjdXJyaW5nX2V2ZW50X3RpbWVzLWZpZWxkc2V0IGg0IHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG4gICAgY29sb3I6ICM3Nzc7XG4gIH1cbiAgLmV2ZW50X3RpbWVzLWZpZWxkc2V0IHRoLCAucmVjdXJyaW5nX2V2ZW50X3RpbWVzLWZpZWxkc2V0IHRoIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gIH1cbiAgLmV2ZW50X3RpbWVzLWZpZWxkc2V0IHRkIHtcbiAgICB3aWR0aDogMTYwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgfVxuICAucmVjdXJyaW5nX2V2ZW50X3RpbWVzLWZpZWxkc2V0IHtcbiAgICB0ZCB7XG4gICAgICB3aWR0aDogMTE1cHg7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIH1cbiAgICAudGltZV9maWVsZCB7XG4gICAgICB3aWR0aDogMTYwcHg7XG4gICAgfVxuICB9XG4gIC5ldmVudF90aW1lcy1maWVsZHNldCAucmVxdWlyZWQsIC5yZWN1cnJpbmdfZXZlbnRfdGltZXMtZmllbGRzZXQgLnJlcXVpcmVkIHtcbiAgICBjb2xvcjogIzMzMztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICAuZXZlbnRfdGltZXMtZmllbGRzZXQgLmVycm9yLCAucmVjdXJyaW5nX2V2ZW50X3RpbWVzLWZpZWxkc2V0IC5lcnJvciB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICB9XG4gIC5ldmVudF90aW1lcy1maWVsZHNldCBpbnB1dCwgLnJlY3VycmluZ19ldmVudF90aW1lcy1maWVsZHNldCBpbnB1dCB7XG4gICAgd2lkdGg6IDcwcHg7XG4gIH1cbiAgLmV2ZW50X3RpbWVzLWZpZWxkc2V0IC5jYWxlbmRhckZpZWxkLCAucmVjdXJyaW5nX2V2ZW50X3RpbWVzLWZpZWxkc2V0IC5jYWxlbmRhckZpZWxkIHtcbiAgICB3aWR0aDogNzVweDtcbiAgfVxuICAuZXZlbnRfdGltZXMtZmllbGRzZXQgdGQuZGVsLXJvdywgLnJlY3VycmluZ19ldmVudF90aW1lcy1maWVsZHNldCB0ZC5kZWwtcm93IHtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbiAgLmV2ZW50X3RpbWVzLWZpZWxkc2V0IHRkLmRlbC1yb3cgYSwgLnJlY3VycmluZ19ldmVudF90aW1lcy1maWVsZHNldCB0ZC5kZWwtcm93IGEge1xuICAgIHBhZGRpbmc6IDJweCA1cHggNXB4IDVweDtcbiAgfVxuICAuZXZlbnRfdGltZXMtZmllbGRzZXQgdGQuZGVsLXJvdyBhOmhvdmVyLCAucmVjdXJyaW5nX2V2ZW50X3RpbWVzLWZpZWxkc2V0IHRkLmRlbC1yb3cgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2NjYztcbiAgfVxufVxuXG5oMyNzb25ncyB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbnRhYmxlLnNvdW5kX2NsaXBzIHtcbiAgdGgsIHRkIHtcbiAgICBwYWRkaW5nOiAzcHggMTBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VmZWZlZjtcbiAgfVxuICB0aCB7XG4gICAgYmFja2dyb3VuZDogI2VmZWZlZjtcbiAgfVxuICB3aWR0aDogMTAwJTtcbn1cbiIsIkBpbXBvcnQgXCJfbWl4aW5ncy5zY3NzXCI7XG5cbi5lbGxpbmd0b25fbWVudS5uby1ob3ZlcntcbiAgICB1bHtcbiAgICAgICAgbGk6aG92ZXJ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4uZWxsaW5ndG9uX21lbnUge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgdWwge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcl9saXN0X3N0eWxlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS1iYWNrZ3JvdW5kO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICBsaXtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtZW51LWJhY2tncm91bmQ7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBjb2xvcjogJG1lbnUtY29sb3I7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJG1lbnUtZm9udC1zaXplO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjMycHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBsaXtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxpOm5vdCg6Zmlyc3QtY2hpbGQpe1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzowIDE1cHg7XG4gICAgICAgICAgICB9XG5cdH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbW9iaWxlLXNtYWxsKXtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgIH1cblx0fVxuICAgICAgICBsaTpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICAgIGEuc29jaWFsLW1lZGlhe1xuICAgICAgICAgICBwYWRkaW5nOjAgMTBweCAhaW1wb3J0YW50O1xuXHR9XG5cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbm9uLW1vYmlsZS10YWJsZXQpe1xuICAgICAgICAucHVsbC1yaWdodHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgfVxuICAgICAgICBoZWlnaHQ6IDJlbTtcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgICAgICAgIC5jdXJyZW50LW1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtZW51LWJhY2tncm91bmQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOjEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiRtZW51LWJhY2tncm91bmQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDoxMjAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzoxMHB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6bm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjIwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG1lbnUtYmFja2dyb3VuZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6MTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxpOmhvdmVyID4gdWwge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5zb2NpYWwtbmV0d29ya3N7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBhe1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGNvbG9yOiAkbWVudS1jb2xvcjtcblx0ICAgIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gICAgICAgICAgICBpe1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbWVudS1jb2xvcjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRub24tbW9iaWxlLXRhYmxldCl7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50b3AtbWVudS1iYWNrZ3JvdW5ke1xuICAgIC5lbGxpbmd0b25fbWVudV90b2dnbGV7XG4gICAgICAgIGJhY2tncm91bmQ6ICRtZW51LWJhY2tncm91bmQ7XG4gICAgfVxufVxuXG4ubWFpbi1tZW51LWJhY2tncm91bmR7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbW9iaWxlLXNtYWxsKXtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgcGFkZGluZzoxLjhyZW0gMCAwO1xuICAgICAgICBcbiAgICB9XG4gICAgLmVsbGluZ3Rvbl9tZW51X3RvZ2dsZXtcbiAgICAgICAgLy8gYmFja2dyb3VuZDogJHNlY29uZGFyeS1kaXZpZGVyLWJhY2tncm91bmQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cbn1cblxuLmVsbGluZ3Rvbl9tZW51X3RvZ2dsZXtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGNvbG9yOiAkbWVudS1jb2xvcjtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMC4yZW07XG4gICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbW9iaWxlLXNtYWxsKXtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0ErREFBOzs7R0FHRztBR0hIO2dDQUNnQztBbEVHaEMsT0FBTyxDQUFDLHlIQUFJO0FrRURaLFVBQVU7RUFDUixXQUFXLEVBQUUsYUFBYTtFQUMxQixHQUFHLEVBQUUsdUVBQWdFO0VBQ3JFLEdBQUcsRUFBRSw4RUFBdUUsQ0FBQywyQkFBMkIsRUFDdEcseUVBQWtFLENBQUMsZUFBZSxFQUNsRix3RUFBaUUsQ0FBQyxjQUFjLEVBQ2hGLHVFQUFnRSxDQUFDLGtCQUFrQixFQUNuRiwwRkFBbUYsQ0FBQyxhQUFhO0VBRW5HLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFVBQVUsRUFBRSxNQUFNOztBQ1ZwQixBQUFBLEdBQUcsQ0FBZ0I7RUFDakIsT0FBTyxFQUFFLFlBQVk7RUFDckIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQTZDLENBQUMsV0FBVztFQUNwRixTQUFTLEVBQUUsT0FBTztFQUNsQixjQUFjLEVBQUUsSUFBSTtFQUNwQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLHVCQUF1QixFQUFFLFNBQVMsR0FFbkM7O0FDUkQsOERBQThEO0FBQzlELEFBQUEsTUFBTSxDQUFnQjtFQUNwQixTQUFTLEVBQUUsU0FBUztFQUNwQixXQUFXLEVBQUUsTUFBUztFQUN0QixjQUFjLEVBQUUsSUFBSSxHQUNyQjs7QUFDRCxBQUFBLE1BQU0sQ0FBZ0I7RUFBRSxTQUFTLEVBQUUsR0FBRyxHQUFJOztBQUMxQyxBQUFBLE1BQU0sQ0FBZ0I7RUFBRSxTQUFTLEVBQUUsR0FBRyxHQUFJOztBQUMxQyxBQUFBLE1BQU0sQ0FBZ0I7RUFBRSxTQUFTLEVBQUUsR0FBRyxHQUFJ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 */
