@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 -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url("../../../elf-theme/assets/fonts/fontawesome-webfont.eot?v=4.7.0");
  src: url("../../../elf-theme/assets/fonts/fontawesome-webfont.eot?#iefix&v=4.7.0") format("embedded-opentype"), url("../../../elf-theme/assets/fonts/fontawesome-webfont.woff2?v=4.7.0") format("woff2"), url("../../../elf-theme/assets/fonts/fontawesome-webfont.woff?v=4.7.0") format("woff"), url("../../../elf-theme/assets/fonts/fontawesome-webfont.ttf?v=4.7.0") format("truetype"), url("../../../elf-theme/assets/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 {
  -webkit-filter: none;
          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; }

/*! Hamburgers @description Tasty CSS-animated hamburgers @author Jonathan Suh @jonsuh @site https://jonsuh.com/hamburgers @link https://github.com/jonsuh/hamburgers */
.hamburger {
  padding: 10px 10px;
  display: inline-block;
  cursor: pointer;
  -webkit-transition-property: opacity, -webkit-filter;
  transition-property: opacity, -webkit-filter;
  -o-transition-property: opacity, filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  -webkit-transition-duration: 0.15s;
       -o-transition-duration: 0.15s;
          transition-duration: 0.15s;
  -webkit-transition-timing-function: linear;
       -o-transition-timing-function: linear;
          transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }

.hamburger:hover, a.hamburger.active, button.hamburger.active {
  opacity: 0.7; }

.hamburger.is-active:hover, a.hamburger.is-active.active, button.hamburger.is-active.active {
  opacity: 0.7; }

.hamburger.is-active .hamburger-inner, .hamburger.is-active .hamburger-inner::before, .hamburger.is-active .hamburger-inner::after {
  background-color: #fff; }

.hamburger-box {
  width: 22px;
  height: 16px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -1px; }

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
  width: 22px;
  height: 2px;
  background-color: #fff;
  border-radius: 4px;
  position: absolute;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.15s;
       -o-transition-duration: 0.15s;
          transition-duration: 0.15s;
  -webkit-transition-timing-function: ease;
       -o-transition-timing-function: ease;
          transition-timing-function: ease; }

.hamburger-inner::before, .hamburger-inner::after {
  content: "";
  display: block; }

.hamburger-inner::before {
  top: -7px; }

.hamburger-inner::after {
  bottom: -7px; }

/* Stand */
.hamburger--stand .hamburger-inner {
  -webkit-transition: background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  -o-transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--stand .hamburger-inner::before {
  -webkit-transition: top 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: top 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  -o-transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--stand .hamburger-inner::after {
  -webkit-transition: bottom 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: bottom 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  -o-transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--stand.is-active .hamburger-inner {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
  background-color: transparent !important;
  -webkit-transition: background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1); }

.hamburger--stand.is-active .hamburger-inner::before {
  top: 0;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: top 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: top 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

.hamburger--stand.is-active .hamburger-inner::after {
  bottom: 0;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: bottom 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: bottom 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

/* Stand Reverse */
.hamburger--stand-r .hamburger-inner {
  -webkit-transition: background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  -o-transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear, -webkit-transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--stand-r .hamburger-inner::before {
  -webkit-transition: top 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: top 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  -o-transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--stand-r .hamburger-inner::after {
  -webkit-transition: bottom 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: bottom 0.075s 0.075s ease-in, -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  -o-transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--stand-r.is-active .hamburger-inner {
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
  background-color: transparent !important;
  -webkit-transition: background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear, -webkit-transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1); }

.hamburger--stand-r.is-active .hamburger-inner::before {
  top: 0;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: top 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: top 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

.hamburger--stand-r.is-active .hamburger-inner::after {
  bottom: 0;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: bottom 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: bottom 0.075s 0.1s ease-out, -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

/* Owl Carousel - Core */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }

.owl-carousel .owl-stage {
  position: relative;
  -ms-touch-action: pan-Y;
  touch-action: manipulation;
  -moz-backface-visibility: hidden;
  /* fix firefox animation glitch */ }

.owl-carousel .owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

.owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  /* fix for flashing background */
  -webkit-transform: translate3d(0px, 0px, 0px); }

.owl-carousel .owl-wrapper, .owl-carousel .owl-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0); }

.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none; }

.owl-carousel .owl-item img {
  display: block;
  width: 100%; }

.owl-carousel .owl-nav.disabled, .owl-carousel .owl-dots.disabled {
  display: none; }

.owl-carousel .owl-nav .owl-prev, .owl-carousel .owl-nav .owl-next, .owl-carousel .owl-dot {
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.owl-carousel .owl-nav button.owl-prev, .owl-carousel .owl-nav button.owl-next, .owl-carousel button.owl-dot {
  background: none;
  color: inherit;
  border: none;
  padding: 0 !important;
  font: inherit; }

.owl-carousel.owl-loaded {
  display: block; }

.owl-carousel.owl-loading {
  opacity: 0;
  display: block; }

.owl-carousel.owl-hidden {
  opacity: 0; }

.owl-carousel.owl-refresh .owl-item {
  visibility: hidden; }

.owl-carousel.owl-drag .owl-item {
  -ms-touch-action: pan-y;
      touch-action: pan-y;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.owl-carousel.owl-grab {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab; }

.owl-carousel.owl-rtl {
  direction: rtl; }

.owl-carousel.owl-rtl .owl-item {
  float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/* Owl Carousel - Animate Plugin */
.owl-carousel .animated {
  -webkit-animation-duration: 1000ms;
          animation-duration: 1000ms;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  -webkit-animation-name: fadeOut;
          animation-name: fadeOut; }

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/* Owl Carousel - Auto Height Plugin */
.owl-height {
  -webkit-transition: height 500ms ease-in-out;
  -o-transition: height 500ms ease-in-out;
  transition: height 500ms ease-in-out; }

/* Owl Carousel - Lazy Load Plugin */
.owl-carousel .owl-item {
  /** This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong calculation of the height of the owl-item that breaks page layouts */ }

.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  -webkit-transition: opacity 400ms ease;
  -o-transition: opacity 400ms ease;
  transition: opacity 400ms ease; }

.owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
  max-height: 0; }

.owl-carousel .owl-item img.owl-lazy {
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d; }

/* Owl Carousel - Video Plugin */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  -webkit-transition: -webkit-transform 100ms ease;
  transition: -webkit-transform 100ms ease;
  -o-transition: transform 100ms ease;
  transition: transform 100ms ease;
  transition: transform 100ms ease, -webkit-transform 100ms ease; }

.owl-carousel .owl-video-play-icon:hover, .owl-carousel a.owl-video-play-icon.active, .owl-carousel button.owl-video-play-icon.active {
  -webkit-transform: scale(1.3, 1.3);
      -ms-transform: scale(1.3, 1.3);
          transform: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn, .owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  -webkit-transition: opacity 400ms ease;
  -o-transition: opacity 400ms ease;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }

.featherlight-close-icon:after {
  content: none; }

/** Brand Colors Important: If changing theme colours, remember to change them in the ELF child theme too for string replacement */
/* old styling fallback */
.pw-protect input[type="submit"], input[type="submit"]:hover {
  background-image: none !important; }

/** Foundation for Sites Version 6.6.3 https://get.foundation Licensed under MIT Open Source */
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

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

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

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

a {
  background-color: transparent; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; }

b, strong, .card.card__pushdown.airlines .content-wrap .accordion-content h1, .card.card__pushdown.airlines .content-wrap .accordion-content h2, .card.card__pushdown.airlines .content-wrap .accordion-content h3, .card.card__pushdown.airlines .content-wrap .accordion-content h4, .card.card__pushdown.airlines .content-wrap .accordion-content h5, .card.card__pushdown.airlines .content-wrap .accordion-content section .free_text blockquote p, section .free_text blockquote .card.card__pushdown.airlines .content-wrap .accordion-content p, .card.card__pushdown.airlines .content-wrap .accordion-content h6, .card.card__pushdown.airlines .content-wrap .accordion-content .updated .date, .updated .card.card__pushdown.airlines .content-wrap .accordion-content .date {
  font-weight: bolder; }

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

small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

img {
  border-style: none; }

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

button, input {
  overflow: visible; }

button, select {
  text-transform: none; }

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

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

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

fieldset {
  padding: 0.35em 0.75em 0.625em; }

legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal; }

progress {
  vertical-align: baseline; }

textarea {
  overflow: auto; }

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

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

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

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

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

details {
  display: block; }

summary {
  display: list-item; }

template {
  display: none; }

[hidden] {
  display: none; }

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"; }

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 100%; }

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

body {
  margin: 0;
  padding: 0;
  background: #FFF;
  font-family: "Avenir LT W01_65 Medium1475532", sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #525245;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic; }

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 5px; }

select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  border-radius: 5px; }

.map_canvas img, .map_canvas embed, .map_canvas object, .mqa-display img, .mqa-display embed, .mqa-display object {
  max-width: none !important; }

button {
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 5px;
  background: transparent;
  line-height: 1;
  cursor: auto; }

[data-whatinput='mouse'] button {
  outline: 0; }

pre {
  overflow: auto; }

button, input, optgroup, select, textarea {
  font-family: inherit; }

.is-visible {
  display: block !important; }

.is-hidden {
  display: none !important; }

.row {
  max-width: 83.75rem;
  margin-right: auto;
  margin-left: auto; }

.row::before, .row::after {
  display: table;
  content: ' ';
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }

.row::after {
  clear: both; }

.row.collapse > .column, .row.collapse > .columns {
  padding-right: 0;
  padding-left: 0; }

.row .row {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }

@media print, screen and (min-width: 40em) {
  .row .row {
    margin-right: -0.9375rem;
    margin-left: -0.9375rem; } }

@media print, screen and (min-width: 64em) {
  .row .row {
    margin-right: -0.9375rem;
    margin-left: -0.9375rem; } }

.row .row.collapse {
  margin-right: 0;
  margin-left: 0; }

.row.expanded {
  max-width: none; }

.row.expanded .row {
  margin-right: auto;
  margin-left: auto; }

.row:not(.expanded) .row {
  max-width: none; }

.row.gutter-small > .column, .row.gutter-small > .columns {
  padding-right: 0.625rem;
  padding-left: 0.625rem; }

.row.gutter-medium > .column, .row.gutter-medium > .columns {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem; }

.column, .columns {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }

@media print, screen and (min-width: 40em) {
  .column, .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem; } }

.column, .columns, .column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
  float: left;
  clear: none; }

.column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
  float: right; }

.column.end:last-child:last-child, .end.columns:last-child:last-child {
  float: left; }

.column.row.row, .row.row.columns {
  float: none; }

.row .column.row.row, .row .row.row.columns {
  margin-right: 0;
  margin-left: 0;
  padding-right: 0;
  padding-left: 0; }

.small-1 {
  width: 8.33333%; }

.small-push-1 {
  position: relative;
  left: 8.33333%; }

.small-pull-1 {
  position: relative;
  left: -8.33333%; }

.small-offset-0 {
  margin-left: 0%; }

.small-2 {
  width: 16.66667%; }

.small-push-2 {
  position: relative;
  left: 16.66667%; }

.small-pull-2 {
  position: relative;
  left: -16.66667%; }

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

.small-3 {
  width: 25%; }

.small-push-3 {
  position: relative;
  left: 25%; }

.small-pull-3 {
  position: relative;
  left: -25%; }

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

.small-4 {
  width: 33.33333%; }

.small-push-4 {
  position: relative;
  left: 33.33333%; }

.small-pull-4 {
  position: relative;
  left: -33.33333%; }

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

.small-5 {
  width: 41.66667%; }

.small-push-5 {
  position: relative;
  left: 41.66667%; }

.small-pull-5 {
  position: relative;
  left: -41.66667%; }

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

.small-6 {
  width: 50%; }

.small-push-6 {
  position: relative;
  left: 50%; }

.small-pull-6 {
  position: relative;
  left: -50%; }

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

.small-7 {
  width: 58.33333%; }

.small-push-7 {
  position: relative;
  left: 58.33333%; }

.small-pull-7 {
  position: relative;
  left: -58.33333%; }

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

.small-8 {
  width: 66.66667%; }

.small-push-8 {
  position: relative;
  left: 66.66667%; }

.small-pull-8 {
  position: relative;
  left: -66.66667%; }

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

.small-9 {
  width: 75%; }

.small-push-9 {
  position: relative;
  left: 75%; }

.small-pull-9 {
  position: relative;
  left: -75%; }

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

.small-10 {
  width: 83.33333%; }

.small-push-10 {
  position: relative;
  left: 83.33333%; }

.small-pull-10 {
  position: relative;
  left: -83.33333%; }

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

.small-11 {
  width: 91.66667%; }

.small-push-11 {
  position: relative;
  left: 91.66667%; }

.small-pull-11 {
  position: relative;
  left: -91.66667%; }

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

.small-12 {
  width: 100%; }

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

.small-up-1 > .column, .small-up-1 > .columns {
  float: left;
  width: 100%; }

.small-up-1 > .column:nth-of-type(1n), .small-up-1 > .columns:nth-of-type(1n) {
  clear: none; }

.small-up-1 > .column:nth-of-type(1n+1), .small-up-1 > .columns:nth-of-type(1n+1) {
  clear: both; }

.small-up-1 > .column:last-child, .small-up-1 > .columns:last-child {
  float: left; }

.small-up-2 > .column, .small-up-2 > .columns {
  float: left;
  width: 50%; }

.small-up-2 > .column:nth-of-type(1n), .small-up-2 > .columns:nth-of-type(1n) {
  clear: none; }

.small-up-2 > .column:nth-of-type(2n+1), .small-up-2 > .columns:nth-of-type(2n+1) {
  clear: both; }

.small-up-2 > .column:last-child, .small-up-2 > .columns:last-child {
  float: left; }

.small-up-3 > .column, .small-up-3 > .columns {
  float: left;
  width: 33.33333%; }

.small-up-3 > .column:nth-of-type(1n), .small-up-3 > .columns:nth-of-type(1n) {
  clear: none; }

.small-up-3 > .column:nth-of-type(3n+1), .small-up-3 > .columns:nth-of-type(3n+1) {
  clear: both; }

.small-up-3 > .column:last-child, .small-up-3 > .columns:last-child {
  float: left; }

.small-up-4 > .column, .small-up-4 > .columns {
  float: left;
  width: 25%; }

.small-up-4 > .column:nth-of-type(1n), .small-up-4 > .columns:nth-of-type(1n) {
  clear: none; }

.small-up-4 > .column:nth-of-type(4n+1), .small-up-4 > .columns:nth-of-type(4n+1) {
  clear: both; }

.small-up-4 > .column:last-child, .small-up-4 > .columns:last-child {
  float: left; }

.small-up-5 > .column, .small-up-5 > .columns {
  float: left;
  width: 20%; }

.small-up-5 > .column:nth-of-type(1n), .small-up-5 > .columns:nth-of-type(1n) {
  clear: none; }

.small-up-5 > .column:nth-of-type(5n+1), .small-up-5 > .columns:nth-of-type(5n+1) {
  clear: both; }

.small-up-5 > .column:last-child, .small-up-5 > .columns:last-child {
  float: left; }

.small-up-6 > .column, .small-up-6 > .columns {
  float: left;
  width: 16.66667%; }

.small-up-6 > .column:nth-of-type(1n), .small-up-6 > .columns:nth-of-type(1n) {
  clear: none; }

.small-up-6 > .column:nth-of-type(6n+1), .small-up-6 > .columns:nth-of-type(6n+1) {
  clear: both; }

.small-up-6 > .column:last-child, .small-up-6 > .columns:last-child {
  float: left; }

.small-up-7 > .column, .small-up-7 > .columns {
  float: left;
  width: 14.28571%; }

.small-up-7 > .column:nth-of-type(1n), .small-up-7 > .columns:nth-of-type(1n) {
  clear: none; }

.small-up-7 > .column:nth-of-type(7n+1), .small-up-7 > .columns:nth-of-type(7n+1) {
  clear: both; }

.small-up-7 > .column:last-child, .small-up-7 > .columns:last-child {
  float: left; }

.small-up-8 > .column, .small-up-8 > .columns {
  float: left;
  width: 12.5%; }

.small-up-8 > .column:nth-of-type(1n), .small-up-8 > .columns:nth-of-type(1n) {
  clear: none; }

.small-up-8 > .column:nth-of-type(8n+1), .small-up-8 > .columns:nth-of-type(8n+1) {
  clear: both; }

.small-up-8 > .column:last-child, .small-up-8 > .columns:last-child {
  float: left; }

.small-collapse > .column, .small-collapse > .columns {
  padding-right: 0;
  padding-left: 0; }

.small-collapse .row {
  margin-right: 0;
  margin-left: 0; }

.expanded.row .small-collapse.row {
  margin-right: 0;
  margin-left: 0; }

.small-uncollapse > .column, .small-uncollapse > .columns {
  padding-right: 0.625rem;
  padding-left: 0.625rem; }

.small-centered {
  margin-right: auto;
  margin-left: auto; }

.small-centered, .small-centered:last-child:not(:first-child) {
  float: none;
  clear: both; }

.small-uncentered, .small-push-0, .small-pull-0 {
  position: static;
  margin-right: 0;
  margin-left: 0; }

.small-uncentered, .small-uncentered:last-child:not(:first-child), .small-push-0, .small-push-0:last-child:not(:first-child), .small-pull-0, .small-pull-0:last-child:not(:first-child) {
  float: left;
  clear: none; }

.small-uncentered:last-child:not(:first-child), .small-push-0:last-child:not(:first-child), .small-pull-0:last-child:not(:first-child) {
  float: right; }

@media print, screen and (min-width: 40em) {
  .medium-1 {
    width: 8.33333%; }
  .medium-push-1 {
    position: relative;
    left: 8.33333%; }
  .medium-pull-1 {
    position: relative;
    left: -8.33333%; }
  .medium-offset-0 {
    margin-left: 0%; }
  .medium-2 {
    width: 16.66667%; }
  .medium-push-2 {
    position: relative;
    left: 16.66667%; }
  .medium-pull-2 {
    position: relative;
    left: -16.66667%; }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .medium-3 {
    width: 25%; }
  .medium-push-3 {
    position: relative;
    left: 25%; }
  .medium-pull-3 {
    position: relative;
    left: -25%; }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .medium-4 {
    width: 33.33333%; }
  .medium-push-4 {
    position: relative;
    left: 33.33333%; }
  .medium-pull-4 {
    position: relative;
    left: -33.33333%; }
  .medium-offset-3 {
    margin-left: 25%; }
  .medium-5 {
    width: 41.66667%; }
  .medium-push-5 {
    position: relative;
    left: 41.66667%; }
  .medium-pull-5 {
    position: relative;
    left: -41.66667%; }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .medium-6 {
    width: 50%; }
  .medium-push-6 {
    position: relative;
    left: 50%; }
  .medium-pull-6 {
    position: relative;
    left: -50%; }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .medium-7 {
    width: 58.33333%; }
  .medium-push-7 {
    position: relative;
    left: 58.33333%; }
  .medium-pull-7 {
    position: relative;
    left: -58.33333%; }
  .medium-offset-6 {
    margin-left: 50%; }
  .medium-8 {
    width: 66.66667%; }
  .medium-push-8 {
    position: relative;
    left: 66.66667%; }
  .medium-pull-8 {
    position: relative;
    left: -66.66667%; }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .medium-9 {
    width: 75%; }
  .medium-push-9 {
    position: relative;
    left: 75%; }
  .medium-pull-9 {
    position: relative;
    left: -75%; }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .medium-10 {
    width: 83.33333%; }
  .medium-push-10 {
    position: relative;
    left: 83.33333%; }
  .medium-pull-10 {
    position: relative;
    left: -83.33333%; }
  .medium-offset-9 {
    margin-left: 75%; }
  .medium-11 {
    width: 91.66667%; }
  .medium-push-11 {
    position: relative;
    left: 91.66667%; }
  .medium-pull-11 {
    position: relative;
    left: -91.66667%; }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .medium-12 {
    width: 100%; }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .medium-up-1 > .column, .medium-up-1 > .columns {
    float: left;
    width: 100%; }
  .medium-up-1 > .column:nth-of-type(1n), .medium-up-1 > .columns:nth-of-type(1n) {
    clear: none; }
  .medium-up-1 > .column:nth-of-type(1n+1), .medium-up-1 > .columns:nth-of-type(1n+1) {
    clear: both; }
  .medium-up-1 > .column:last-child, .medium-up-1 > .columns:last-child {
    float: left; }
  .medium-up-2 > .column, .medium-up-2 > .columns {
    float: left;
    width: 50%; }
  .medium-up-2 > .column:nth-of-type(1n), .medium-up-2 > .columns:nth-of-type(1n) {
    clear: none; }
  .medium-up-2 > .column:nth-of-type(2n+1), .medium-up-2 > .columns:nth-of-type(2n+1) {
    clear: both; }
  .medium-up-2 > .column:last-child, .medium-up-2 > .columns:last-child {
    float: left; }
  .medium-up-3 > .column, .medium-up-3 > .columns {
    float: left;
    width: 33.33333%; }
  .medium-up-3 > .column:nth-of-type(1n), .medium-up-3 > .columns:nth-of-type(1n) {
    clear: none; }
  .medium-up-3 > .column:nth-of-type(3n+1), .medium-up-3 > .columns:nth-of-type(3n+1) {
    clear: both; }
  .medium-up-3 > .column:last-child, .medium-up-3 > .columns:last-child {
    float: left; }
  .medium-up-4 > .column, .medium-up-4 > .columns {
    float: left;
    width: 25%; }
  .medium-up-4 > .column:nth-of-type(1n), .medium-up-4 > .columns:nth-of-type(1n) {
    clear: none; }
  .medium-up-4 > .column:nth-of-type(4n+1), .medium-up-4 > .columns:nth-of-type(4n+1) {
    clear: both; }
  .medium-up-4 > .column:last-child, .medium-up-4 > .columns:last-child {
    float: left; }
  .medium-up-5 > .column, .medium-up-5 > .columns {
    float: left;
    width: 20%; }
  .medium-up-5 > .column:nth-of-type(1n), .medium-up-5 > .columns:nth-of-type(1n) {
    clear: none; }
  .medium-up-5 > .column:nth-of-type(5n+1), .medium-up-5 > .columns:nth-of-type(5n+1) {
    clear: both; }
  .medium-up-5 > .column:last-child, .medium-up-5 > .columns:last-child {
    float: left; }
  .medium-up-6 > .column, .medium-up-6 > .columns {
    float: left;
    width: 16.66667%; }
  .medium-up-6 > .column:nth-of-type(1n), .medium-up-6 > .columns:nth-of-type(1n) {
    clear: none; }
  .medium-up-6 > .column:nth-of-type(6n+1), .medium-up-6 > .columns:nth-of-type(6n+1) {
    clear: both; }
  .medium-up-6 > .column:last-child, .medium-up-6 > .columns:last-child {
    float: left; }
  .medium-up-7 > .column, .medium-up-7 > .columns {
    float: left;
    width: 14.28571%; }
  .medium-up-7 > .column:nth-of-type(1n), .medium-up-7 > .columns:nth-of-type(1n) {
    clear: none; }
  .medium-up-7 > .column:nth-of-type(7n+1), .medium-up-7 > .columns:nth-of-type(7n+1) {
    clear: both; }
  .medium-up-7 > .column:last-child, .medium-up-7 > .columns:last-child {
    float: left; }
  .medium-up-8 > .column, .medium-up-8 > .columns {
    float: left;
    width: 12.5%; }
  .medium-up-8 > .column:nth-of-type(1n), .medium-up-8 > .columns:nth-of-type(1n) {
    clear: none; }
  .medium-up-8 > .column:nth-of-type(8n+1), .medium-up-8 > .columns:nth-of-type(8n+1) {
    clear: both; }
  .medium-up-8 > .column:last-child, .medium-up-8 > .columns:last-child {
    float: left; }
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .medium-collapse .row {
    margin-right: 0;
    margin-left: 0; }
  .expanded.row .medium-collapse.row {
    margin-right: 0;
    margin-left: 0; }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem; }
  .medium-centered {
    margin-right: auto;
    margin-left: auto; }
  .medium-centered, .medium-centered:last-child:not(:first-child) {
    float: none;
    clear: both; }
  .medium-uncentered, .medium-push-0, .medium-pull-0 {
    position: static;
    margin-right: 0;
    margin-left: 0; }
  .medium-uncentered, .medium-uncentered:last-child:not(:first-child), .medium-push-0, .medium-push-0:last-child:not(:first-child), .medium-pull-0, .medium-pull-0:last-child:not(:first-child) {
    float: left;
    clear: none; }
  .medium-uncentered:last-child:not(:first-child), .medium-push-0:last-child:not(:first-child), .medium-pull-0:last-child:not(:first-child) {
    float: right; } }

@media print, screen and (min-width: 64em) {
  .large-1 {
    width: 8.33333%; }
  .large-push-1 {
    position: relative;
    left: 8.33333%; }
  .large-pull-1 {
    position: relative;
    left: -8.33333%; }
  .large-offset-0 {
    margin-left: 0%; }
  .large-2 {
    width: 16.66667%; }
  .large-push-2 {
    position: relative;
    left: 16.66667%; }
  .large-pull-2 {
    position: relative;
    left: -16.66667%; }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .large-3 {
    width: 25%; }
  .large-push-3 {
    position: relative;
    left: 25%; }
  .large-pull-3 {
    position: relative;
    left: -25%; }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .large-4 {
    width: 33.33333%; }
  .large-push-4 {
    position: relative;
    left: 33.33333%; }
  .large-pull-4 {
    position: relative;
    left: -33.33333%; }
  .large-offset-3 {
    margin-left: 25%; }
  .large-5 {
    width: 41.66667%; }
  .large-push-5 {
    position: relative;
    left: 41.66667%; }
  .large-pull-5 {
    position: relative;
    left: -41.66667%; }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .large-6 {
    width: 50%; }
  .large-push-6 {
    position: relative;
    left: 50%; }
  .large-pull-6 {
    position: relative;
    left: -50%; }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .large-7 {
    width: 58.33333%; }
  .large-push-7 {
    position: relative;
    left: 58.33333%; }
  .large-pull-7 {
    position: relative;
    left: -58.33333%; }
  .large-offset-6 {
    margin-left: 50%; }
  .large-8 {
    width: 66.66667%; }
  .large-push-8 {
    position: relative;
    left: 66.66667%; }
  .large-pull-8 {
    position: relative;
    left: -66.66667%; }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .large-9 {
    width: 75%; }
  .large-push-9 {
    position: relative;
    left: 75%; }
  .large-pull-9 {
    position: relative;
    left: -75%; }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .large-10 {
    width: 83.33333%; }
  .large-push-10 {
    position: relative;
    left: 83.33333%; }
  .large-pull-10 {
    position: relative;
    left: -83.33333%; }
  .large-offset-9 {
    margin-left: 75%; }
  .large-11 {
    width: 91.66667%; }
  .large-push-11 {
    position: relative;
    left: 91.66667%; }
  .large-pull-11 {
    position: relative;
    left: -91.66667%; }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .large-12 {
    width: 100%; }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .large-up-1 > .column, .large-up-1 > .columns {
    float: left;
    width: 100%; }
  .large-up-1 > .column:nth-of-type(1n), .large-up-1 > .columns:nth-of-type(1n) {
    clear: none; }
  .large-up-1 > .column:nth-of-type(1n+1), .large-up-1 > .columns:nth-of-type(1n+1) {
    clear: both; }
  .large-up-1 > .column:last-child, .large-up-1 > .columns:last-child {
    float: left; }
  .large-up-2 > .column, .large-up-2 > .columns {
    float: left;
    width: 50%; }
  .large-up-2 > .column:nth-of-type(1n), .large-up-2 > .columns:nth-of-type(1n) {
    clear: none; }
  .large-up-2 > .column:nth-of-type(2n+1), .large-up-2 > .columns:nth-of-type(2n+1) {
    clear: both; }
  .large-up-2 > .column:last-child, .large-up-2 > .columns:last-child {
    float: left; }
  .large-up-3 > .column, .large-up-3 > .columns {
    float: left;
    width: 33.33333%; }
  .large-up-3 > .column:nth-of-type(1n), .large-up-3 > .columns:nth-of-type(1n) {
    clear: none; }
  .large-up-3 > .column:nth-of-type(3n+1), .large-up-3 > .columns:nth-of-type(3n+1) {
    clear: both; }
  .large-up-3 > .column:last-child, .large-up-3 > .columns:last-child {
    float: left; }
  .large-up-4 > .column, .large-up-4 > .columns {
    float: left;
    width: 25%; }
  .large-up-4 > .column:nth-of-type(1n), .large-up-4 > .columns:nth-of-type(1n) {
    clear: none; }
  .large-up-4 > .column:nth-of-type(4n+1), .large-up-4 > .columns:nth-of-type(4n+1) {
    clear: both; }
  .large-up-4 > .column:last-child, .large-up-4 > .columns:last-child {
    float: left; }
  .large-up-5 > .column, .large-up-5 > .columns {
    float: left;
    width: 20%; }
  .large-up-5 > .column:nth-of-type(1n), .large-up-5 > .columns:nth-of-type(1n) {
    clear: none; }
  .large-up-5 > .column:nth-of-type(5n+1), .large-up-5 > .columns:nth-of-type(5n+1) {
    clear: both; }
  .large-up-5 > .column:last-child, .large-up-5 > .columns:last-child {
    float: left; }
  .large-up-6 > .column, .large-up-6 > .columns {
    float: left;
    width: 16.66667%; }
  .large-up-6 > .column:nth-of-type(1n), .large-up-6 > .columns:nth-of-type(1n) {
    clear: none; }
  .large-up-6 > .column:nth-of-type(6n+1), .large-up-6 > .columns:nth-of-type(6n+1) {
    clear: both; }
  .large-up-6 > .column:last-child, .large-up-6 > .columns:last-child {
    float: left; }
  .large-up-7 > .column, .large-up-7 > .columns {
    float: left;
    width: 14.28571%; }
  .large-up-7 > .column:nth-of-type(1n), .large-up-7 > .columns:nth-of-type(1n) {
    clear: none; }
  .large-up-7 > .column:nth-of-type(7n+1), .large-up-7 > .columns:nth-of-type(7n+1) {
    clear: both; }
  .large-up-7 > .column:last-child, .large-up-7 > .columns:last-child {
    float: left; }
  .large-up-8 > .column, .large-up-8 > .columns {
    float: left;
    width: 12.5%; }
  .large-up-8 > .column:nth-of-type(1n), .large-up-8 > .columns:nth-of-type(1n) {
    clear: none; }
  .large-up-8 > .column:nth-of-type(8n+1), .large-up-8 > .columns:nth-of-type(8n+1) {
    clear: both; }
  .large-up-8 > .column:last-child, .large-up-8 > .columns:last-child {
    float: left; }
  .large-collapse > .column, .large-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .large-collapse .row {
    margin-right: 0;
    margin-left: 0; }
  .expanded.row .large-collapse.row {
    margin-right: 0;
    margin-left: 0; }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem; }
  .large-centered {
    margin-right: auto;
    margin-left: auto; }
  .large-centered, .large-centered:last-child:not(:first-child) {
    float: none;
    clear: both; }
  .large-uncentered, .large-push-0, .large-pull-0 {
    position: static;
    margin-right: 0;
    margin-left: 0; }
  .large-uncentered, .large-uncentered:last-child:not(:first-child), .large-push-0, .large-push-0:last-child:not(:first-child), .large-pull-0, .large-pull-0:last-child:not(:first-child) {
    float: left;
    clear: none; }
  .large-uncentered:last-child:not(:first-child), .large-push-0:last-child:not(:first-child), .large-pull-0:last-child:not(:first-child) {
    float: right; } }

.column-block {
  margin-bottom: 1.25rem; }

.column-block > :last-child {
  margin-bottom: 0; }

@media print, screen and (min-width: 40em) {
  .column-block {
    margin-bottom: 1.875rem; }
  .column-block > :last-child {
    margin-bottom: 0; } }

.grid-container {
  padding-right: 1.25rem;
  padding-left: 1.25rem;
  max-width: 83.75rem;
  margin-left: auto;
  margin-right: auto; }

@media print, screen and (min-width: 40em) {
  .grid-container {
    padding-right: 2rem;
    padding-left: 2rem; } }

.grid-container.fluid {
  padding-right: 1.25rem;
  padding-left: 1.25rem;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto; }

@media print, screen and (min-width: 40em) {
  .grid-container.fluid {
    padding-right: 2rem;
    padding-left: 2rem; } }

.grid-container.full {
  padding-right: 0;
  padding-left: 0;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto; }

.grid-x {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }

.cell {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  min-height: 0px;
  min-width: 0px;
  width: 100%; }

.cell.auto {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; }

.cell.shrink {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }

.grid-x > .auto {
  width: auto; }

.grid-x > .shrink {
  width: auto; }

.grid-x > .small-shrink, .grid-x > .small-full, .grid-x > .small-1, .grid-x > .small-2, .grid-x > .small-3, .grid-x > .small-4, .grid-x > .small-5, .grid-x > .small-6, .grid-x > .small-7, .grid-x > .small-8, .grid-x > .small-9, .grid-x > .small-10, .grid-x > .small-11, .grid-x > .small-12 {
  -ms-flex-preferred-size: auto;
      flex-basis: auto; }

@media print, screen and (min-width: 40em) {
  .grid-x > .medium-shrink, .grid-x > .medium-full, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 {
    -ms-flex-preferred-size: auto;
        flex-basis: auto; } }

@media print, screen and (min-width: 64em) {
  .grid-x > .large-shrink, .grid-x > .large-full, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 {
    -ms-flex-preferred-size: auto;
        flex-basis: auto; } }

.grid-x > .small-1, .grid-x > .small-2, .grid-x > .small-3, .grid-x > .small-4, .grid-x > .small-5, .grid-x > .small-6, .grid-x > .small-7, .grid-x > .small-8, .grid-x > .small-9, .grid-x > .small-10, .grid-x > .small-11, .grid-x > .small-12 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }

.grid-x > .small-1 {
  width: 8.33333%; }

.grid-x > .small-2 {
  width: 16.66667%; }

.grid-x > .small-3 {
  width: 25%; }

.grid-x > .small-4 {
  width: 33.33333%; }

.grid-x > .small-5 {
  width: 41.66667%; }

.grid-x > .small-6 {
  width: 50%; }

.grid-x > .small-7 {
  width: 58.33333%; }

.grid-x > .small-8 {
  width: 66.66667%; }

.grid-x > .small-9 {
  width: 75%; }

.grid-x > .small-10 {
  width: 83.33333%; }

.grid-x > .small-11 {
  width: 91.66667%; }

.grid-x > .small-12 {
  width: 100%; }

@media print, screen and (min-width: 40em) {
  .grid-x > .medium-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .medium-shrink, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .medium-shrink {
    width: auto; }
  .grid-x > .medium-1 {
    width: 8.33333%; }
  .grid-x > .medium-2 {
    width: 16.66667%; }
  .grid-x > .medium-3 {
    width: 25%; }
  .grid-x > .medium-4 {
    width: 33.33333%; }
  .grid-x > .medium-5 {
    width: 41.66667%; }
  .grid-x > .medium-6 {
    width: 50%; }
  .grid-x > .medium-7 {
    width: 58.33333%; }
  .grid-x > .medium-8 {
    width: 66.66667%; }
  .grid-x > .medium-9 {
    width: 75%; }
  .grid-x > .medium-10 {
    width: 83.33333%; }
  .grid-x > .medium-11 {
    width: 91.66667%; }
  .grid-x > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .grid-x > .large-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .large-shrink, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .large-shrink {
    width: auto; }
  .grid-x > .large-1 {
    width: 8.33333%; }
  .grid-x > .large-2 {
    width: 16.66667%; }
  .grid-x > .large-3 {
    width: 25%; }
  .grid-x > .large-4 {
    width: 33.33333%; }
  .grid-x > .large-5 {
    width: 41.66667%; }
  .grid-x > .large-6 {
    width: 50%; }
  .grid-x > .large-7 {
    width: 58.33333%; }
  .grid-x > .large-8 {
    width: 66.66667%; }
  .grid-x > .large-9 {
    width: 75%; }
  .grid-x > .large-10 {
    width: 83.33333%; }
  .grid-x > .large-11 {
    width: 91.66667%; }
  .grid-x > .large-12 {
    width: 100%; } }

.grid-margin-x:not(.grid-x) > .cell {
  width: auto; }

.grid-margin-y:not(.grid-y) > .cell {
  height: auto; }

.grid-margin-x {
  margin-left: -0.75rem;
  margin-right: -0.75rem; }

@media print, screen and (min-width: 40em) {
  .grid-margin-x {
    margin-left: -0.625rem;
    margin-right: -0.625rem; } }

.grid-margin-x > .cell {
  width: calc(100% - 1.5rem);
  margin-left: 0.75rem;
  margin-right: 0.75rem; }

@media print, screen and (min-width: 40em) {
  .grid-margin-x > .cell {
    width: calc(100% - 1.25rem);
    margin-left: 0.625rem;
    margin-right: 0.625rem; } }

.grid-margin-x > .auto {
  width: auto; }

.grid-margin-x > .shrink {
  width: auto; }

.grid-margin-x > .small-1 {
  width: calc(8.33333% - 1.5rem); }

.grid-margin-x > .small-2 {
  width: calc(16.66667% - 1.5rem); }

.grid-margin-x > .small-3 {
  width: calc(25% - 1.5rem); }

.grid-margin-x > .small-4 {
  width: calc(33.33333% - 1.5rem); }

.grid-margin-x > .small-5 {
  width: calc(41.66667% - 1.5rem); }

.grid-margin-x > .small-6 {
  width: calc(50% - 1.5rem); }

.grid-margin-x > .small-7 {
  width: calc(58.33333% - 1.5rem); }

.grid-margin-x > .small-8 {
  width: calc(66.66667% - 1.5rem); }

.grid-margin-x > .small-9 {
  width: calc(75% - 1.5rem); }

.grid-margin-x > .small-10 {
  width: calc(83.33333% - 1.5rem); }

.grid-margin-x > .small-11 {
  width: calc(91.66667% - 1.5rem); }

.grid-margin-x > .small-12 {
  width: calc(100% - 1.5rem); }

@media print, screen and (min-width: 40em) {
  .grid-margin-x > .auto {
    width: auto; }
  .grid-margin-x > .shrink {
    width: auto; }
  .grid-margin-x > .small-1 {
    width: calc(8.33333% - 1.25rem); }
  .grid-margin-x > .small-2 {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x > .small-3 {
    width: calc(25% - 1.25rem); }
  .grid-margin-x > .small-4 {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x > .small-5 {
    width: calc(41.66667% - 1.25rem); }
  .grid-margin-x > .small-6 {
    width: calc(50% - 1.25rem); }
  .grid-margin-x > .small-7 {
    width: calc(58.33333% - 1.25rem); }
  .grid-margin-x > .small-8 {
    width: calc(66.66667% - 1.25rem); }
  .grid-margin-x > .small-9 {
    width: calc(75% - 1.25rem); }
  .grid-margin-x > .small-10 {
    width: calc(83.33333% - 1.25rem); }
  .grid-margin-x > .small-11 {
    width: calc(91.66667% - 1.25rem); }
  .grid-margin-x > .small-12 {
    width: calc(100% - 1.25rem); }
  .grid-margin-x > .medium-auto {
    width: auto; }
  .grid-margin-x > .medium-shrink {
    width: auto; }
  .grid-margin-x > .medium-1 {
    width: calc(8.33333% - 1.25rem); }
  .grid-margin-x > .medium-2 {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x > .medium-3 {
    width: calc(25% - 1.25rem); }
  .grid-margin-x > .medium-4 {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x > .medium-5 {
    width: calc(41.66667% - 1.25rem); }
  .grid-margin-x > .medium-6 {
    width: calc(50% - 1.25rem); }
  .grid-margin-x > .medium-7 {
    width: calc(58.33333% - 1.25rem); }
  .grid-margin-x > .medium-8 {
    width: calc(66.66667% - 1.25rem); }
  .grid-margin-x > .medium-9 {
    width: calc(75% - 1.25rem); }
  .grid-margin-x > .medium-10 {
    width: calc(83.33333% - 1.25rem); }
  .grid-margin-x > .medium-11 {
    width: calc(91.66667% - 1.25rem); }
  .grid-margin-x > .medium-12 {
    width: calc(100% - 1.25rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-x > .large-auto {
    width: auto; }
  .grid-margin-x > .large-shrink {
    width: auto; }
  .grid-margin-x > .large-1 {
    width: calc(8.33333% - 1.25rem); }
  .grid-margin-x > .large-2 {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x > .large-3 {
    width: calc(25% - 1.25rem); }
  .grid-margin-x > .large-4 {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x > .large-5 {
    width: calc(41.66667% - 1.25rem); }
  .grid-margin-x > .large-6 {
    width: calc(50% - 1.25rem); }
  .grid-margin-x > .large-7 {
    width: calc(58.33333% - 1.25rem); }
  .grid-margin-x > .large-8 {
    width: calc(66.66667% - 1.25rem); }
  .grid-margin-x > .large-9 {
    width: calc(75% - 1.25rem); }
  .grid-margin-x > .large-10 {
    width: calc(83.33333% - 1.25rem); }
  .grid-margin-x > .large-11 {
    width: calc(91.66667% - 1.25rem); }
  .grid-margin-x > .large-12 {
    width: calc(100% - 1.25rem); } }

.grid-padding-x .grid-padding-x {
  margin-right: -0.75rem;
  margin-left: -0.75rem; }

@media print, screen and (min-width: 40em) {
  .grid-padding-x .grid-padding-x {
    margin-right: -0.625rem;
    margin-left: -0.625rem; } }

.grid-container:not(.full) > .grid-padding-x {
  margin-right: -0.75rem;
  margin-left: -0.75rem; }

@media print, screen and (min-width: 40em) {
  .grid-container:not(.full) > .grid-padding-x {
    margin-right: -0.625rem;
    margin-left: -0.625rem; } }

.grid-padding-x > .cell {
  padding-right: 0.75rem;
  padding-left: 0.75rem; }

@media print, screen and (min-width: 40em) {
  .grid-padding-x > .cell {
    padding-right: 0.625rem;
    padding-left: 0.625rem; } }

.small-up-1 > .cell {
  width: 100%; }

.small-up-2 > .cell {
  width: 50%; }

.small-up-3 > .cell {
  width: 33.33333%; }

.small-up-4 > .cell {
  width: 25%; }

.small-up-5 > .cell {
  width: 20%; }

.small-up-6 > .cell {
  width: 16.66667%; }

.small-up-7 > .cell {
  width: 14.28571%; }

.small-up-8 > .cell {
  width: 12.5%; }

@media print, screen and (min-width: 40em) {
  .medium-up-1 > .cell {
    width: 100%; }
  .medium-up-2 > .cell {
    width: 50%; }
  .medium-up-3 > .cell {
    width: 33.33333%; }
  .medium-up-4 > .cell {
    width: 25%; }
  .medium-up-5 > .cell {
    width: 20%; }
  .medium-up-6 > .cell {
    width: 16.66667%; }
  .medium-up-7 > .cell {
    width: 14.28571%; }
  .medium-up-8 > .cell {
    width: 12.5%; } }

@media print, screen and (min-width: 64em) {
  .large-up-1 > .cell {
    width: 100%; }
  .large-up-2 > .cell {
    width: 50%; }
  .large-up-3 > .cell {
    width: 33.33333%; }
  .large-up-4 > .cell {
    width: 25%; }
  .large-up-5 > .cell {
    width: 20%; }
  .large-up-6 > .cell {
    width: 16.66667%; }
  .large-up-7 > .cell {
    width: 14.28571%; }
  .large-up-8 > .cell {
    width: 12.5%; } }

.grid-margin-x.small-up-1 > .cell {
  width: calc(100% - 1.5rem); }

.grid-margin-x.small-up-2 > .cell {
  width: calc(50% - 1.5rem); }

.grid-margin-x.small-up-3 > .cell {
  width: calc(33.33333% - 1.5rem); }

.grid-margin-x.small-up-4 > .cell {
  width: calc(25% - 1.5rem); }

.grid-margin-x.small-up-5 > .cell {
  width: calc(20% - 1.5rem); }

.grid-margin-x.small-up-6 > .cell {
  width: calc(16.66667% - 1.5rem); }

.grid-margin-x.small-up-7 > .cell {
  width: calc(14.28571% - 1.5rem); }

.grid-margin-x.small-up-8 > .cell {
  width: calc(12.5% - 1.5rem); }

@media print, screen and (min-width: 40em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 1.25rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 1.25rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 1.25rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 1.25rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 1.25rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 1.25rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 1.25rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 1.25rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 1.25rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 1.25rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 1.25rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 1.25rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-x.large-up-1 > .cell {
    width: calc(100% - 1.25rem); }
  .grid-margin-x.large-up-2 > .cell {
    width: calc(50% - 1.25rem); }
  .grid-margin-x.large-up-3 > .cell {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x.large-up-4 > .cell {
    width: calc(25% - 1.25rem); }
  .grid-margin-x.large-up-5 > .cell {
    width: calc(20% - 1.25rem); }
  .grid-margin-x.large-up-6 > .cell {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x.large-up-7 > .cell {
    width: calc(14.28571% - 1.25rem); }
  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 1.25rem); } }

.small-margin-collapse {
  margin-right: 0;
  margin-left: 0; }

.small-margin-collapse > .cell {
  margin-right: 0;
  margin-left: 0; }

.small-margin-collapse > .small-1 {
  width: 8.33333%; }

.small-margin-collapse > .small-2 {
  width: 16.66667%; }

.small-margin-collapse > .small-3 {
  width: 25%; }

.small-margin-collapse > .small-4 {
  width: 33.33333%; }

.small-margin-collapse > .small-5 {
  width: 41.66667%; }

.small-margin-collapse > .small-6 {
  width: 50%; }

.small-margin-collapse > .small-7 {
  width: 58.33333%; }

.small-margin-collapse > .small-8 {
  width: 66.66667%; }

.small-margin-collapse > .small-9 {
  width: 75%; }

.small-margin-collapse > .small-10 {
  width: 83.33333%; }

.small-margin-collapse > .small-11 {
  width: 91.66667%; }

.small-margin-collapse > .small-12 {
  width: 100%; }

@media print, screen and (min-width: 40em) {
  .small-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .small-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .small-margin-collapse > .medium-3 {
    width: 25%; }
  .small-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .small-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .small-margin-collapse > .medium-6 {
    width: 50%; }
  .small-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .small-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .small-margin-collapse > .medium-9 {
    width: 75%; }
  .small-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .small-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .small-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .small-margin-collapse > .large-1 {
    width: 8.33333%; }
  .small-margin-collapse > .large-2 {
    width: 16.66667%; }
  .small-margin-collapse > .large-3 {
    width: 25%; }
  .small-margin-collapse > .large-4 {
    width: 33.33333%; }
  .small-margin-collapse > .large-5 {
    width: 41.66667%; }
  .small-margin-collapse > .large-6 {
    width: 50%; }
  .small-margin-collapse > .large-7 {
    width: 58.33333%; }
  .small-margin-collapse > .large-8 {
    width: 66.66667%; }
  .small-margin-collapse > .large-9 {
    width: 75%; }
  .small-margin-collapse > .large-10 {
    width: 83.33333%; }
  .small-margin-collapse > .large-11 {
    width: 91.66667%; }
  .small-margin-collapse > .large-12 {
    width: 100%; } }

.small-padding-collapse {
  margin-right: 0;
  margin-left: 0; }

.small-padding-collapse > .cell {
  padding-right: 0;
  padding-left: 0; }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
  .medium-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0; } }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse > .small-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .small-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .small-3 {
    width: 25%; }
  .medium-margin-collapse > .small-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .small-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .small-6 {
    width: 50%; }
  .medium-margin-collapse > .small-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .small-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .small-9 {
    width: 75%; }
  .medium-margin-collapse > .small-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .small-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .medium-3 {
    width: 25%; }
  .medium-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .medium-6 {
    width: 50%; }
  .medium-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .medium-9 {
    width: 75%; }
  .medium-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .medium-margin-collapse > .large-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .large-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .large-3 {
    width: 25%; }
  .medium-margin-collapse > .large-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .large-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .large-6 {
    width: 50%; }
  .medium-margin-collapse > .large-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .large-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .large-9 {
    width: 75%; }
  .medium-margin-collapse > .large-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .large-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .large-12 {
    width: 100%; } }

@media print, screen and (min-width: 40em) {
  .medium-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
  .medium-padding-collapse > .cell {
    padding-right: 0;
    padding-left: 0; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
  .large-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .small-1 {
    width: 8.33333%; }
  .large-margin-collapse > .small-2 {
    width: 16.66667%; }
  .large-margin-collapse > .small-3 {
    width: 25%; }
  .large-margin-collapse > .small-4 {
    width: 33.33333%; }
  .large-margin-collapse > .small-5 {
    width: 41.66667%; }
  .large-margin-collapse > .small-6 {
    width: 50%; }
  .large-margin-collapse > .small-7 {
    width: 58.33333%; }
  .large-margin-collapse > .small-8 {
    width: 66.66667%; }
  .large-margin-collapse > .small-9 {
    width: 75%; }
  .large-margin-collapse > .small-10 {
    width: 83.33333%; }
  .large-margin-collapse > .small-11 {
    width: 91.66667%; }
  .large-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .large-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .large-margin-collapse > .medium-3 {
    width: 25%; }
  .large-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .large-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .large-margin-collapse > .medium-6 {
    width: 50%; }
  .large-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .large-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .large-margin-collapse > .medium-9 {
    width: 75%; }
  .large-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .large-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .large-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .large-1 {
    width: 8.33333%; }
  .large-margin-collapse > .large-2 {
    width: 16.66667%; }
  .large-margin-collapse > .large-3 {
    width: 25%; }
  .large-margin-collapse > .large-4 {
    width: 33.33333%; }
  .large-margin-collapse > .large-5 {
    width: 41.66667%; }
  .large-margin-collapse > .large-6 {
    width: 50%; }
  .large-margin-collapse > .large-7 {
    width: 58.33333%; }
  .large-margin-collapse > .large-8 {
    width: 66.66667%; }
  .large-margin-collapse > .large-9 {
    width: 75%; }
  .large-margin-collapse > .large-10 {
    width: 83.33333%; }
  .large-margin-collapse > .large-11 {
    width: 91.66667%; }
  .large-margin-collapse > .large-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
  .large-padding-collapse > .cell {
    padding-right: 0;
    padding-left: 0; } }

.small-offset-0 {
  margin-left: 0%; }

.grid-margin-x > .small-offset-0 {
  margin-left: calc(0% + 0.75rem); }

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

.grid-margin-x > .small-offset-1 {
  margin-left: calc(8.33333% + 0.75rem); }

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

.grid-margin-x > .small-offset-2 {
  margin-left: calc(16.66667% + 0.75rem); }

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

.grid-margin-x > .small-offset-3 {
  margin-left: calc(25% + 0.75rem); }

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

.grid-margin-x > .small-offset-4 {
  margin-left: calc(33.33333% + 0.75rem); }

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

.grid-margin-x > .small-offset-5 {
  margin-left: calc(41.66667% + 0.75rem); }

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

.grid-margin-x > .small-offset-6 {
  margin-left: calc(50% + 0.75rem); }

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

.grid-margin-x > .small-offset-7 {
  margin-left: calc(58.33333% + 0.75rem); }

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

.grid-margin-x > .small-offset-8 {
  margin-left: calc(66.66667% + 0.75rem); }

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

.grid-margin-x > .small-offset-9 {
  margin-left: calc(75% + 0.75rem); }

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

.grid-margin-x > .small-offset-10 {
  margin-left: calc(83.33333% + 0.75rem); }

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

.grid-margin-x > .small-offset-11 {
  margin-left: calc(91.66667% + 0.75rem); }

@media print, screen and (min-width: 40em) {
  .medium-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .medium-offset-0 {
    margin-left: calc(0% + 0.625rem); }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .medium-offset-1 {
    margin-left: calc(8.33333% + 0.625rem); }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .medium-offset-2 {
    margin-left: calc(16.66667% + 0.625rem); }
  .medium-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .medium-offset-3 {
    margin-left: calc(25% + 0.625rem); }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .medium-offset-4 {
    margin-left: calc(33.33333% + 0.625rem); }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .medium-offset-5 {
    margin-left: calc(41.66667% + 0.625rem); }
  .medium-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .medium-offset-6 {
    margin-left: calc(50% + 0.625rem); }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .medium-offset-7 {
    margin-left: calc(58.33333% + 0.625rem); }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .medium-offset-8 {
    margin-left: calc(66.66667% + 0.625rem); }
  .medium-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .medium-offset-9 {
    margin-left: calc(75% + 0.625rem); }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .medium-offset-10 {
    margin-left: calc(83.33333% + 0.625rem); }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .medium-offset-11 {
    margin-left: calc(91.66667% + 0.625rem); } }

@media print, screen and (min-width: 64em) {
  .large-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .large-offset-0 {
    margin-left: calc(0% + 0.625rem); }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .large-offset-1 {
    margin-left: calc(8.33333% + 0.625rem); }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .large-offset-2 {
    margin-left: calc(16.66667% + 0.625rem); }
  .large-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .large-offset-3 {
    margin-left: calc(25% + 0.625rem); }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .large-offset-4 {
    margin-left: calc(33.33333% + 0.625rem); }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .large-offset-5 {
    margin-left: calc(41.66667% + 0.625rem); }
  .large-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .large-offset-6 {
    margin-left: calc(50% + 0.625rem); }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .large-offset-7 {
    margin-left: calc(58.33333% + 0.625rem); }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .large-offset-8 {
    margin-left: calc(66.66667% + 0.625rem); }
  .large-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .large-offset-9 {
    margin-left: calc(75% + 0.625rem); }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .large-offset-10 {
    margin-left: calc(83.33333% + 0.625rem); }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .large-offset-11 {
    margin-left: calc(91.66667% + 0.625rem); } }

.grid-y {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap; }

.grid-y > .cell {
  height: auto;
  max-height: none; }

.grid-y > .auto {
  height: auto; }

.grid-y > .shrink {
  height: auto; }

.grid-y > .small-shrink, .grid-y > .small-full, .grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 {
  -ms-flex-preferred-size: auto;
      flex-basis: auto; }

@media print, screen and (min-width: 40em) {
  .grid-y > .medium-shrink, .grid-y > .medium-full, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
    -ms-flex-preferred-size: auto;
        flex-basis: auto; } }

@media print, screen and (min-width: 64em) {
  .grid-y > .large-shrink, .grid-y > .large-full, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
    -ms-flex-preferred-size: auto;
        flex-basis: auto; } }

.grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }

.grid-y > .small-1 {
  height: 8.33333%; }

.grid-y > .small-2 {
  height: 16.66667%; }

.grid-y > .small-3 {
  height: 25%; }

.grid-y > .small-4 {
  height: 33.33333%; }

.grid-y > .small-5 {
  height: 41.66667%; }

.grid-y > .small-6 {
  height: 50%; }

.grid-y > .small-7 {
  height: 58.33333%; }

.grid-y > .small-8 {
  height: 66.66667%; }

.grid-y > .small-9 {
  height: 75%; }

.grid-y > .small-10 {
  height: 83.33333%; }

.grid-y > .small-11 {
  height: 91.66667%; }

.grid-y > .small-12 {
  height: 100%; }

@media print, screen and (min-width: 40em) {
  .grid-y > .medium-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    height: auto; }
  .grid-y > .medium-shrink, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-y > .medium-shrink {
    height: auto; }
  .grid-y > .medium-1 {
    height: 8.33333%; }
  .grid-y > .medium-2 {
    height: 16.66667%; }
  .grid-y > .medium-3 {
    height: 25%; }
  .grid-y > .medium-4 {
    height: 33.33333%; }
  .grid-y > .medium-5 {
    height: 41.66667%; }
  .grid-y > .medium-6 {
    height: 50%; }
  .grid-y > .medium-7 {
    height: 58.33333%; }
  .grid-y > .medium-8 {
    height: 66.66667%; }
  .grid-y > .medium-9 {
    height: 75%; }
  .grid-y > .medium-10 {
    height: 83.33333%; }
  .grid-y > .medium-11 {
    height: 91.66667%; }
  .grid-y > .medium-12 {
    height: 100%; } }

@media print, screen and (min-width: 64em) {
  .grid-y > .large-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    height: auto; }
  .grid-y > .large-shrink, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-y > .large-shrink {
    height: auto; }
  .grid-y > .large-1 {
    height: 8.33333%; }
  .grid-y > .large-2 {
    height: 16.66667%; }
  .grid-y > .large-3 {
    height: 25%; }
  .grid-y > .large-4 {
    height: 33.33333%; }
  .grid-y > .large-5 {
    height: 41.66667%; }
  .grid-y > .large-6 {
    height: 50%; }
  .grid-y > .large-7 {
    height: 58.33333%; }
  .grid-y > .large-8 {
    height: 66.66667%; }
  .grid-y > .large-9 {
    height: 75%; }
  .grid-y > .large-10 {
    height: 83.33333%; }
  .grid-y > .large-11 {
    height: 91.66667%; }
  .grid-y > .large-12 {
    height: 100%; } }

.grid-padding-y .grid-padding-y {
  margin-top: -0.75rem;
  margin-bottom: -0.75rem; }

@media print, screen and (min-width: 40em) {
  .grid-padding-y .grid-padding-y {
    margin-top: -0.625rem;
    margin-bottom: -0.625rem; } }

.grid-padding-y > .cell {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem; }

@media print, screen and (min-width: 40em) {
  .grid-padding-y > .cell {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem; } }

.grid-margin-y {
  margin-top: -0.75rem;
  margin-bottom: -0.75rem; }

@media print, screen and (min-width: 40em) {
  .grid-margin-y {
    margin-top: -0.625rem;
    margin-bottom: -0.625rem; } }

.grid-margin-y > .cell {
  height: calc(100% - 1.5rem);
  margin-top: 0.75rem;
  margin-bottom: 0.75rem; }

@media print, screen and (min-width: 40em) {
  .grid-margin-y > .cell {
    height: calc(100% - 1.25rem);
    margin-top: 0.625rem;
    margin-bottom: 0.625rem; } }

.grid-margin-y > .auto {
  height: auto; }

.grid-margin-y > .shrink {
  height: auto; }

.grid-margin-y > .small-1 {
  height: calc(8.33333% - 1.5rem); }

.grid-margin-y > .small-2 {
  height: calc(16.66667% - 1.5rem); }

.grid-margin-y > .small-3 {
  height: calc(25% - 1.5rem); }

.grid-margin-y > .small-4 {
  height: calc(33.33333% - 1.5rem); }

.grid-margin-y > .small-5 {
  height: calc(41.66667% - 1.5rem); }

.grid-margin-y > .small-6 {
  height: calc(50% - 1.5rem); }

.grid-margin-y > .small-7 {
  height: calc(58.33333% - 1.5rem); }

.grid-margin-y > .small-8 {
  height: calc(66.66667% - 1.5rem); }

.grid-margin-y > .small-9 {
  height: calc(75% - 1.5rem); }

.grid-margin-y > .small-10 {
  height: calc(83.33333% - 1.5rem); }

.grid-margin-y > .small-11 {
  height: calc(91.66667% - 1.5rem); }

.grid-margin-y > .small-12 {
  height: calc(100% - 1.5rem); }

@media print, screen and (min-width: 40em) {
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.25rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.25rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.25rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.25rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.25rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.25rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.25rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.25rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.25rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.25rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.25rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.25rem); }
  .grid-margin-y > .medium-auto {
    height: auto; }
  .grid-margin-y > .medium-shrink {
    height: auto; }
  .grid-margin-y > .medium-1 {
    height: calc(8.33333% - 1.25rem); }
  .grid-margin-y > .medium-2 {
    height: calc(16.66667% - 1.25rem); }
  .grid-margin-y > .medium-3 {
    height: calc(25% - 1.25rem); }
  .grid-margin-y > .medium-4 {
    height: calc(33.33333% - 1.25rem); }
  .grid-margin-y > .medium-5 {
    height: calc(41.66667% - 1.25rem); }
  .grid-margin-y > .medium-6 {
    height: calc(50% - 1.25rem); }
  .grid-margin-y > .medium-7 {
    height: calc(58.33333% - 1.25rem); }
  .grid-margin-y > .medium-8 {
    height: calc(66.66667% - 1.25rem); }
  .grid-margin-y > .medium-9 {
    height: calc(75% - 1.25rem); }
  .grid-margin-y > .medium-10 {
    height: calc(83.33333% - 1.25rem); }
  .grid-margin-y > .medium-11 {
    height: calc(91.66667% - 1.25rem); }
  .grid-margin-y > .medium-12 {
    height: calc(100% - 1.25rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-y > .large-auto {
    height: auto; }
  .grid-margin-y > .large-shrink {
    height: auto; }
  .grid-margin-y > .large-1 {
    height: calc(8.33333% - 1.25rem); }
  .grid-margin-y > .large-2 {
    height: calc(16.66667% - 1.25rem); }
  .grid-margin-y > .large-3 {
    height: calc(25% - 1.25rem); }
  .grid-margin-y > .large-4 {
    height: calc(33.33333% - 1.25rem); }
  .grid-margin-y > .large-5 {
    height: calc(41.66667% - 1.25rem); }
  .grid-margin-y > .large-6 {
    height: calc(50% - 1.25rem); }
  .grid-margin-y > .large-7 {
    height: calc(58.33333% - 1.25rem); }
  .grid-margin-y > .large-8 {
    height: calc(66.66667% - 1.25rem); }
  .grid-margin-y > .large-9 {
    height: calc(75% - 1.25rem); }
  .grid-margin-y > .large-10 {
    height: calc(83.33333% - 1.25rem); }
  .grid-margin-y > .large-11 {
    height: calc(91.66667% - 1.25rem); }
  .grid-margin-y > .large-12 {
    height: calc(100% - 1.25rem); } }

.grid-frame {
  overflow: hidden;
  position: relative;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100vw; }

.cell .grid-frame {
  width: 100%; }

.cell-block {
  overflow-x: auto;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar; }

.cell-block-y {
  overflow-y: auto;
  max-height: 100%;
  min-height: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar; }

.cell-block-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-height: 100%; }

.cell-block-container > .grid-x {
  max-height: 100%;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap; }

@media print, screen and (min-width: 40em) {
  .medium-grid-frame {
    overflow: hidden;
    position: relative;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .medium-grid-frame {
    width: 100%; }
  .medium-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .medium-cell-block-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
  .medium-cell-block-container > .grid-x {
    max-height: 100%;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap; }
  .medium-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

@media print, screen and (min-width: 64em) {
  .large-grid-frame {
    overflow: hidden;
    position: relative;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .large-grid-frame {
    width: 100%; }
  .large-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .large-cell-block-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
  .large-cell-block-container > .grid-x {
    max-height: 100%;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap; }
  .large-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

.grid-y.grid-frame {
  width: auto;
  overflow: hidden;
  position: relative;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: 100vh; }

@media print, screen and (min-width: 40em) {
  .grid-y.medium-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media print, screen and (min-width: 64em) {
  .grid-y.large-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

.cell .grid-y.grid-frame {
  height: 100%; }

@media print, screen and (min-width: 40em) {
  .cell .grid-y.medium-grid-frame {
    height: 100%; } }

@media print, screen and (min-width: 64em) {
  .cell .grid-y.large-grid-frame {
    height: 100%; } }

.grid-margin-y {
  margin-top: -0.75rem;
  margin-bottom: -0.75rem; }

@media print, screen and (min-width: 40em) {
  .grid-margin-y {
    margin-top: -0.625rem;
    margin-bottom: -0.625rem; } }

.grid-margin-y > .cell {
  height: calc(100% - 1.5rem);
  margin-top: 0.75rem;
  margin-bottom: 0.75rem; }

@media print, screen and (min-width: 40em) {
  .grid-margin-y > .cell {
    height: calc(100% - 1.25rem);
    margin-top: 0.625rem;
    margin-bottom: 0.625rem; } }

.grid-margin-y > .auto {
  height: auto; }

.grid-margin-y > .shrink {
  height: auto; }

.grid-margin-y > .small-1 {
  height: calc(8.33333% - 1.5rem); }

.grid-margin-y > .small-2 {
  height: calc(16.66667% - 1.5rem); }

.grid-margin-y > .small-3 {
  height: calc(25% - 1.5rem); }

.grid-margin-y > .small-4 {
  height: calc(33.33333% - 1.5rem); }

.grid-margin-y > .small-5 {
  height: calc(41.66667% - 1.5rem); }

.grid-margin-y > .small-6 {
  height: calc(50% - 1.5rem); }

.grid-margin-y > .small-7 {
  height: calc(58.33333% - 1.5rem); }

.grid-margin-y > .small-8 {
  height: calc(66.66667% - 1.5rem); }

.grid-margin-y > .small-9 {
  height: calc(75% - 1.5rem); }

.grid-margin-y > .small-10 {
  height: calc(83.33333% - 1.5rem); }

.grid-margin-y > .small-11 {
  height: calc(91.66667% - 1.5rem); }

.grid-margin-y > .small-12 {
  height: calc(100% - 1.5rem); }

@media print, screen and (min-width: 40em) {
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.25rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.25rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.25rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.25rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.25rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.25rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.25rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.25rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.25rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.25rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.25rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.25rem); }
  .grid-margin-y > .medium-auto {
    height: auto; }
  .grid-margin-y > .medium-shrink {
    height: auto; }
  .grid-margin-y > .medium-1 {
    height: calc(8.33333% - 1.25rem); }
  .grid-margin-y > .medium-2 {
    height: calc(16.66667% - 1.25rem); }
  .grid-margin-y > .medium-3 {
    height: calc(25% - 1.25rem); }
  .grid-margin-y > .medium-4 {
    height: calc(33.33333% - 1.25rem); }
  .grid-margin-y > .medium-5 {
    height: calc(41.66667% - 1.25rem); }
  .grid-margin-y > .medium-6 {
    height: calc(50% - 1.25rem); }
  .grid-margin-y > .medium-7 {
    height: calc(58.33333% - 1.25rem); }
  .grid-margin-y > .medium-8 {
    height: calc(66.66667% - 1.25rem); }
  .grid-margin-y > .medium-9 {
    height: calc(75% - 1.25rem); }
  .grid-margin-y > .medium-10 {
    height: calc(83.33333% - 1.25rem); }
  .grid-margin-y > .medium-11 {
    height: calc(91.66667% - 1.25rem); }
  .grid-margin-y > .medium-12 {
    height: calc(100% - 1.25rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-y > .large-auto {
    height: auto; }
  .grid-margin-y > .large-shrink {
    height: auto; }
  .grid-margin-y > .large-1 {
    height: calc(8.33333% - 1.25rem); }
  .grid-margin-y > .large-2 {
    height: calc(16.66667% - 1.25rem); }
  .grid-margin-y > .large-3 {
    height: calc(25% - 1.25rem); }
  .grid-margin-y > .large-4 {
    height: calc(33.33333% - 1.25rem); }
  .grid-margin-y > .large-5 {
    height: calc(41.66667% - 1.25rem); }
  .grid-margin-y > .large-6 {
    height: calc(50% - 1.25rem); }
  .grid-margin-y > .large-7 {
    height: calc(58.33333% - 1.25rem); }
  .grid-margin-y > .large-8 {
    height: calc(66.66667% - 1.25rem); }
  .grid-margin-y > .large-9 {
    height: calc(75% - 1.25rem); }
  .grid-margin-y > .large-10 {
    height: calc(83.33333% - 1.25rem); }
  .grid-margin-y > .large-11 {
    height: calc(91.66667% - 1.25rem); }
  .grid-margin-y > .large-12 {
    height: calc(100% - 1.25rem); } }

.grid-frame.grid-margin-y {
  height: calc(100vh + 1.5rem); }

@media print, screen and (min-width: 40em) {
  .grid-frame.grid-margin-y {
    height: calc(100vh + 1.25rem); } }

@media print, screen and (min-width: 64em) {
  .grid-frame.grid-margin-y {
    height: calc(100vh + 1.25rem); } }

@media print, screen and (min-width: 40em) {
  .grid-margin-y.medium-grid-frame {
    height: calc(100vh + 1.25rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-y.large-grid-frame {
    height: calc(100vh + 1.25rem); } }

.align-left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.align-right {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-justify {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.align-spaced {
  -ms-flex-pack: distribute;
      justify-content: space-around; }

.align-left.vertical.menu > li > a {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.align-right.vertical.menu > li > a {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center.vertical.menu > li > a {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-top {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }

.align-self-top {
  -ms-flex-item-align: start;
      align-self: flex-start; }

.align-bottom {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end; }

.align-self-bottom {
  -ms-flex-item-align: end;
      align-self: flex-end; }

.align-middle {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.align-self-middle {
  -ms-flex-item-align: center;
      align-self: center; }

.align-stretch {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.align-self-stretch {
  -ms-flex-item-align: stretch;
      align-self: stretch; }

.align-center-middle {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center; }

.small-order-1 {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }

.small-order-2 {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2; }

.small-order-3 {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3; }

.small-order-4 {
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4; }

.small-order-5 {
  -webkit-box-ordinal-group: 6;
      -ms-flex-order: 5;
          order: 5; }

.small-order-6 {
  -webkit-box-ordinal-group: 7;
      -ms-flex-order: 6;
          order: 6; }

@media print, screen and (min-width: 40em) {
  .medium-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .medium-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .medium-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .medium-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .medium-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .medium-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; } }

@media print, screen and (min-width: 64em) {
  .large-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .large-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .large-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .large-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .large-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .large-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; } }

.flex-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.flex-child-auto {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto; }

.flex-child-grow {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto; }

.flex-child-shrink {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }

.flex-dir-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row; }

.flex-dir-row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.flex-dir-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.flex-dir-column-reverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }

@media print, screen and (min-width: 40em) {
  .medium-flex-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .medium-flex-child-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .medium-flex-child-grow {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .medium-flex-child-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .medium-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .medium-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .medium-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .medium-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media print, screen and (min-width: 64em) {
  .large-flex-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .large-flex-child-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .large-flex-child-grow {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .large-flex-child-shrink {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .large-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .large-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .large-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .large-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, section .free_text blockquote p, h6, .updated .date, pre, form, p, blockquote, th, td {
  margin: 0;
  padding: 0; }

p {
  margin-bottom: 1rem;
  font-size: inherit;
  line-height: 1.6;
  text-rendering: optimizeLegibility; }

em, i {
  font-style: italic;
  line-height: inherit; }

strong, .card.card__pushdown.airlines .content-wrap .accordion-content h1, .card.card__pushdown.airlines .content-wrap .accordion-content h2, .card.card__pushdown.airlines .content-wrap .accordion-content h3, .card.card__pushdown.airlines .content-wrap .accordion-content h4, .card.card__pushdown.airlines .content-wrap .accordion-content h5, .card.card__pushdown.airlines .content-wrap .accordion-content section .free_text blockquote p, section .free_text blockquote .card.card__pushdown.airlines .content-wrap .accordion-content p, .card.card__pushdown.airlines .content-wrap .accordion-content h6, .card.card__pushdown.airlines .content-wrap .accordion-content .updated .date, .updated .card.card__pushdown.airlines .content-wrap .accordion-content .date, b {
  font-weight: bold;
  line-height: inherit; }

small {
  font-size: 80%;
  line-height: inherit; }

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, section .free_text blockquote p, .h5, h6, .updated .date, .h6 {
  font-family: "Avenir LT W01_85 Heavy1475544", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: bold;
  color: #16404d;
  text-rendering: optimizeLegibility; }

h1 small, .h1 small, h2 small, .h2 small, h3 small, .h3 small, h4 small, .h4 small, h5 small, section .free_text blockquote p small, .h5 small, h6 small, .updated .date small, .h6 small {
  line-height: 0;
  color: #B1B1B1; }

h1, .h1 {
  font-size: 2.375rem;
  line-height: 1.05263;
  margin-top: 0;
  margin-bottom: 1.4375rem; }

h2, .h2 {
  font-size: 1.875rem;
  line-height: 1.06667;
  margin-top: 0;
  margin-bottom: 1.3125rem; }

h3, .h3 {
  font-size: 1.5625rem;
  line-height: 1.04;
  margin-top: 0;
  margin-bottom: 1.1875rem; }

h4, .h4 {
  font-size: 1.125rem;
  line-height: 1.33333;
  margin-top: 0;
  margin-bottom: 1rem; }

h5, section .free_text blockquote p, .h5 {
  font-size: 1rem;
  line-height: 1.5;
  margin-top: 0;
  margin-bottom: 1rem; }

h6, .updated .date, .h6 {
  font-size: 1rem;
  line-height: 1.5;
  margin-top: 0;
  margin-bottom: 1rem; }

@media print, screen and (min-width: 40em) {
  h1, .h1 {
    font-size: 2.625rem;
    line-height: 1.14286;
    margin-bottom: 1.625rem; }
  h2, .h2 {
    font-size: 2.125rem;
    line-height: 1.23529;
    margin-bottom: 1.5rem; }
  h3, .h3 {
    font-size: 1.625rem;
    line-height: 1.23077;
    margin-bottom: 1.375rem; }
  h4, .h4 {
    font-size: 1.375rem;
    line-height: 1.27273;
    margin-bottom: 1.25rem; }
  h5, section .free_text blockquote p, .h5 {
    font-size: 1.125rem;
    line-height: 1.33333;
    margin-bottom: 1.25rem; }
  h6, .updated .date, .h6 {
    font-size: 1rem;
    line-height: 1.5;
    margin-bottom: 1.25rem; } }

@media print, screen and (min-width: 64em) {
  h1, .h1 {
    font-size: 2.9375rem;
    line-height: 1.10638;
    margin-bottom: 1.75rem; }
  h2, .h2 {
    font-size: 2.375rem;
    line-height: 1.18421;
    margin-bottom: 1.5rem; }
  h3, .h3 {
    font-size: 1.875rem;
    line-height: 1.16667;
    margin-bottom: 1.375rem; }
  h4, .h4 {
    font-size: 1.5625rem;
    line-height: 1.12;
    margin-bottom: 1.25rem; }
  h5, section .free_text blockquote p, .h5 {
    font-size: 1.25rem;
    line-height: 1.3;
    margin-bottom: 1.25rem; }
  h6, .updated .date, .h6 {
    font-size: 1rem;
    line-height: 1.5;
    margin-bottom: 1.25rem; } }

a {
  line-height: inherit;
  color: #16404d;
  text-decoration: underline;
  cursor: pointer; }

a:hover, a.active, a.button.active, li.faux-button a.active, a:focus {
  color: #a6cdc6; }

a img {
  border: 0; }

hr {
  clear: both;
  max-width: 83.75rem;
  height: 0;
  margin: 1.25rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #B1B1B1;
  border-left: 0; }

ul, ol, dl {
  margin-bottom: 1rem;
  list-style-position: outside;
  line-height: 1.6; }

li {
  font-size: inherit; }

ul {
  margin-left: 1.25rem;
  list-style-type: disc; }

ol {
  margin-left: 1.25rem; }

ul ul, ol ul, ul ol, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0; }

dl {
  margin-bottom: 1rem; }

dl dt {
  margin-bottom: 0.3rem;
  font-weight: bold; }

blockquote {
  margin: 0 0 1rem;
  padding: 0.5rem 1.75rem 0.0625rem 1.75rem;
  border-left: none; }

blockquote, blockquote p {
  line-height: 1.6;
  color: #16404d; }

abbr, abbr[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
  text-decoration: none; }

figure {
  margin: 0; }

kbd {
  margin: 0;
  padding: 0.125rem 0.25rem 0;
  background-color: #E4E4E4;
  font-family: "Avenir LT W01_65 Medium1475532", sans-serif;
  color: #000;
  border-radius: 5px; }

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #707070; }

.lead {
  font-size: 125%;
  line-height: 1.6; }

.stat {
  font-size: 2.5rem;
  line-height: 1; }

p + .stat {
  margin-top: -1rem; }

ul.no-bullet, ol.no-bullet {
  margin-left: 0;
  list-style: none; }

.cite-block, cite {
  display: block;
  color: #707070;
  font-size: 0.8125rem; }

.cite-block:before, cite:before {
  content: "— "; }

.code-inline, code {
  border: 1px solid #B1B1B1;
  background-color: #E4E4E4;
  font-family: "Avenir LT W01_65 Medium1475532", sans-serif;
  font-weight: normal;
  color: #000;
  display: inline;
  max-width: 100%;
  word-wrap: break-word;
  padding: 0.125rem 0.3125rem 0.0625rem; }

.code-block {
  border: 1px solid #B1B1B1;
  background-color: #E4E4E4;
  font-family: "Avenir LT W01_65 Medium1475532", sans-serif;
  font-weight: normal;
  color: #000;
  display: block;
  overflow: auto;
  white-space: pre;
  padding: 1rem;
  margin-bottom: 1.5rem; }

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

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

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

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

@media print, screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left; }
  .medium-text-right {
    text-align: right; }
  .medium-text-center {
    text-align: center; }
  .medium-text-justify {
    text-align: justify; } }

@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left; }
  .large-text-right {
    text-align: right; }
  .large-text-center {
    text-align: center; }
  .large-text-justify {
    text-align: justify; } }

.show-for-print {
  display: none !important; }

@media print {
  * {
    background: transparent !important;
    color: black !important;
    -webkit-print-color-adjust: economy;
            color-adjust: economy;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    text-shadow: none !important; }
  .show-for-print {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a, a:visited {
    text-decoration: underline; }
  .ir a:after, a[href^='javascript:']:after, a[href^='#']:after {
    content: ''; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre, blockquote {
    border: 1px solid #707070;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr, img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p, h2, h3 {
    orphans: 3;
    widows: 3; }
  h2, h3 {
    page-break-after: avoid; }
  .print-break-inside {
    page-break-inside: auto; } }

.button, li.faux-button a {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 1.25em 2.8em 1.25em 1.4em;
  border: 1px solid transparent;
  border-radius: 5px;
  -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
  -o-transition: background-color 0.25s ease-out, color 0.25s ease-out;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-family: "Avenir LT W01_85 Heavy1475544", Helvetica, Roboto, Arial, sans-serif;
  font-size: 1.125rem;
  -webkit-appearance: none;
  line-height: 1;
  text-align: center;
  cursor: pointer; }

[data-whatinput='mouse'] .button, [data-whatinput='mouse'] li.faux-button a, li.faux-button [data-whatinput='mouse'] a {
  outline: 0; }

.button.tiny, li.faux-button a.tiny {
  font-size: 1.125rem; }

.button.small, li.faux-button a.small {
  font-size: 1.125rem; }

.button.large, li.faux-button a.large {
  font-size: 1.125rem; }

.button.expanded, li.faux-button a.expanded {
  display: block;
  width: 100%;
  margin-right: 0;
  margin-left: 0; }

.button, li.faux-button a, .button.disabled, li.faux-button a.disabled, .button[disabled], li.faux-button a[disabled], .button.disabled:hover, a.button.disabled.active, li.faux-button a.disabled.active, button.button.disabled.active, li.faux-button a.disabled:hover, .button[disabled]:hover, a.button.active[disabled], li.faux-button a.active[disabled], button.button.active[disabled], li.faux-button a[disabled]:hover, .button.disabled:focus, li.faux-button a.disabled:focus, .button[disabled]:focus, li.faux-button a[disabled]:focus {
  background-color: #79d7be;
  color: #16404d; }

.button:hover, a.button.active, li.faux-button a.active, button.button.active, li.faux-button a:hover, .button:focus, li.faux-button a:focus {
  background-color: #16404d;
  color: #16404d; }

.button.hollow, li.faux-button a.hollow, .button.hollow:hover, a.button.hollow.active, li.faux-button a.hollow.active, button.button.hollow.active, li.faux-button a.hollow:hover, .button.hollow:focus, li.faux-button a.hollow:focus, .button.hollow.disabled, li.faux-button a.hollow.disabled, .button.hollow.disabled:hover, a.button.hollow.disabled.active, li.faux-button a.hollow.disabled.active, button.button.hollow.disabled.active, li.faux-button a.hollow.disabled:hover, .button.hollow.disabled:focus, li.faux-button a.hollow.disabled:focus, .button.hollow[disabled], li.faux-button a.hollow[disabled], .button.hollow[disabled]:hover, a.button.hollow.active[disabled], li.faux-button a.hollow.active[disabled], button.button.hollow.active[disabled], li.faux-button a.hollow[disabled]:hover, .button.hollow[disabled]:focus, li.faux-button a.hollow[disabled]:focus {
  background-color: transparent; }

.button.hollow, li.faux-button a.hollow, .button.hollow.disabled, li.faux-button a.hollow.disabled, .button.hollow[disabled], li.faux-button a.hollow[disabled], .button.hollow.disabled:hover, a.button.hollow.disabled.active, li.faux-button a.hollow.disabled.active, button.button.hollow.disabled.active, li.faux-button a.hollow.disabled:hover, .button.hollow[disabled]:hover, a.button.hollow.active[disabled], li.faux-button a.hollow.active[disabled], button.button.hollow.active[disabled], li.faux-button a.hollow[disabled]:hover, .button.hollow.disabled:focus, li.faux-button a.hollow.disabled:focus, .button.hollow[disabled]:focus, li.faux-button a.hollow[disabled]:focus {
  border: 1px solid #79d7be;
  color: #79d7be; }

.button.hollow:hover, a.button.hollow.active, li.faux-button a.hollow.active, button.button.hollow.active, li.faux-button a.hollow:hover, .button.hollow:focus, li.faux-button a.hollow:focus {
  border-color: #7f6200;
  color: #7f6200; }

.button.clear, li.faux-button a.clear, .button.clear:hover, a.button.clear.active, li.faux-button a.clear.active, button.button.clear.active, li.faux-button a.clear:hover, .button.clear:focus, li.faux-button a.clear:focus, .button.clear.disabled, li.faux-button a.clear.disabled, .button.clear.disabled:hover, a.button.clear.disabled.active, li.faux-button a.clear.disabled.active, button.button.clear.disabled.active, li.faux-button a.clear.disabled:hover, .button.clear.disabled:focus, li.faux-button a.clear.disabled:focus, .button.clear[disabled], li.faux-button a.clear[disabled], .button.clear[disabled]:hover, a.button.clear.active[disabled], li.faux-button a.clear.active[disabled], button.button.clear.active[disabled], li.faux-button a.clear[disabled]:hover, .button.clear[disabled]:focus, li.faux-button a.clear[disabled]:focus {
  border-color: transparent;
  background-color: transparent; }

.button.clear, li.faux-button a.clear, .button.clear.disabled, li.faux-button a.clear.disabled, .button.clear[disabled], li.faux-button a.clear[disabled], .button.clear.disabled:hover, a.button.clear.disabled.active, li.faux-button a.clear.disabled.active, button.button.clear.disabled.active, li.faux-button a.clear.disabled:hover, .button.clear[disabled]:hover, a.button.clear.active[disabled], li.faux-button a.clear.active[disabled], button.button.clear.active[disabled], li.faux-button a.clear[disabled]:hover, .button.clear.disabled:focus, li.faux-button a.clear.disabled:focus, .button.clear[disabled]:focus, li.faux-button a.clear[disabled]:focus {
  color: #79d7be; }

.button.clear:hover, a.button.clear.active, li.faux-button a.clear.active, button.button.clear.active, li.faux-button a.clear:hover, .button.clear:focus, li.faux-button a.clear:focus {
  color: #7f6200; }

.button.disabled, li.faux-button a.disabled, .button[disabled], li.faux-button a[disabled] {
  opacity: 1;
  cursor: not-allowed; }

.button.dropdown::after, li.faux-button a.dropdown::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.4em;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #FFF transparent transparent;
  position: relative;
  top: 0.4em;
  display: inline-block;
  float: right;
  margin-left: 2.8em; }

.button.dropdown.hollow::after, li.faux-button a.dropdown.hollow::after, .button.dropdown.clear::after, li.faux-button a.dropdown.clear::after {
  border-top-color: #79d7be; }

.button.arrow-only::after, li.faux-button a.arrow-only::after {
  top: -0.1em;
  float: none;
  margin-left: 0; }

a.button:hover, a.button.active, li.faux-button a.active, li.faux-button a:hover, a.button:focus, li.faux-button a:focus {
  text-decoration: none; }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'], textarea {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  height: 2.375rem;
  margin: 0 0 1.875rem;
  padding: 0.46875rem 0;
  border: none;
  border-radius: 0;
  background-color: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #16404d;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  -o-transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }

[type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus, textarea:focus {
  outline: none;
  border: none;
  background-color: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  -o-transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; }

textarea {
  max-width: 100%; }

textarea[rows] {
  height: auto; }

input:disabled, input[readonly], textarea:disabled, textarea[readonly] {
  background-color: #E4E4E4;
  cursor: not-allowed; }

[type='submit'], [type='button'] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 5px; }

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

::-webkit-input-placeholder {
  color: #525245; }

::-moz-placeholder {
  color: #525245; }

:-ms-input-placeholder {
  color: #525245; }

::-ms-input-placeholder {
  color: #525245; }

::placeholder {
  color: #525245; }

[type='file'], [type='checkbox'], [type='radio'] {
  margin: 0 0 1.875rem; }

[type='checkbox'] + label, [type='radio'] + label {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.9375rem;
  margin-right: 1.875rem;
  margin-bottom: 0; }

[type='checkbox'] + label[for], [type='radio'] + label[for] {
  cursor: pointer; }

label > [type='checkbox'], label > [type='radio'] {
  margin-right: 0.9375rem; }

[type='file'] {
  width: 100%; }

label {
  display: block;
  margin: 0;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.8;
  color: #000; }

label.middle {
  margin: 0 0 1.875rem;
  padding: 0.9375rem 0; }

.help-text {
  margin-top: -0.9375rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #000; }

.input-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 1.875rem;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.input-group > :first-child, .input-group > :first-child.input-group-button > * {
  border-radius: 0 0 0 0; }

.input-group > :last-child, .input-group > :last-child.input-group-button > * {
  border-radius: 0 0 0 0; }

.input-group-label, .input-group-field, .input-group-button, .input-group-button a, .input-group-button input, .input-group-button button, .input-group-button label {
  margin: 0;
  white-space: nowrap; }

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #B1B1B1;
  background: #E4E4E4;
  color: #000;
  text-align: center;
  white-space: nowrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

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

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

.input-group-field {
  border-radius: 0;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  min-width: 0; }

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }

.input-group-button a, .input-group-button input, .input-group-button button, .input-group-button label {
  -ms-flex-item-align: stretch;
      align-self: stretch;
  height: auto;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 1rem; }

fieldset {
  margin: 0;
  padding: 0;
  border: 0; }

legend {
  max-width: 100%;
  margin-bottom: 0.9375rem; }

.fieldset {
  margin: 1.125rem 0;
  padding: 1.25rem;
  border: 1px solid #B1B1B1; }

.fieldset legend {
  margin: 0;
  margin-left: -0.1875rem;
  padding: 0 0.1875rem; }

select {
  height: 2.375rem;
  margin: 0 0 1.875rem;
  padding: 0.46875rem 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  border-radius: 0;
  background-color: #FFF;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #16404d;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%284, 50, 99%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1.875rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 2.8125rem;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  -o-transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; }

@media screen and (min-width: 0\0) {
  select {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg=="); } }

select:focus {
  outline: none;
  border: none;
  background-color: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  -o-transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; }

select:disabled {
  background-color: #E4E4E4;
  cursor: not-allowed; }

select::-ms-expand {
  display: none; }

select[multiple] {
  height: auto;
  background-image: none; }

select:not([multiple]) {
  padding-top: 0;
  padding-bottom: 0; }

.is-invalid-input:not(:focus) {
  border-color: #ad0031;
  background-color: #f7e6ea; }

.is-invalid-input:not(:focus)::-webkit-input-placeholder {
  color: #ad0031; }

.is-invalid-input:not(:focus)::-moz-placeholder {
  color: #ad0031; }

.is-invalid-input:not(:focus):-ms-input-placeholder {
  color: #ad0031; }

.is-invalid-input:not(:focus)::-ms-input-placeholder {
  color: #ad0031; }

.is-invalid-input:not(:focus)::placeholder {
  color: #ad0031; }

.is-invalid-label {
  color: #ad0031; }

.form-error {
  display: none;
  margin-top: -0.9375rem;
  margin-bottom: 1.875rem;
  font-size: 0.75rem;
  font-weight: bold;
  color: #ad0031; }

.form-error.is-visible {
  display: block; }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

@media print, screen and (max-width: 39.99875em) {
  .hide-for-small-only {
    display: none !important; } }

@media screen and (max-width: 0em), screen and (min-width: 40em) {
  .show-for-small-only {
    display: none !important; } }

@media print, screen and (min-width: 40em) {
  .hide-for-medium {
    display: none !important; } }

@media screen and (max-width: 39.99875em) {
  .show-for-medium {
    display: none !important; } }

@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .hide-for-medium-only {
    display: none !important; } }

@media screen and (max-width: 39.99875em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important; } }

@media print, screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important; } }

@media screen and (max-width: 63.99875em) {
  .show-for-large {
    display: none !important; } }

@media print, screen and (min-width: 64em) and (max-width: 74.99875em) {
  .hide-for-large-only {
    display: none !important; } }

@media screen and (max-width: 63.99875em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important; } }

.show-for-sr, .show-on-focus {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important; }

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
  clip: auto !important;
  white-space: normal !important; }

.show-for-landscape, .hide-for-portrait {
  display: block !important; }

@media screen and (orientation: landscape) {
  .show-for-landscape, .hide-for-portrait {
    display: block !important; } }

@media screen and (orientation: portrait) {
  .show-for-landscape, .hide-for-portrait {
    display: none !important; } }

.hide-for-landscape, .show-for-portrait {
  display: none !important; }

@media screen and (orientation: landscape) {
  .hide-for-landscape, .show-for-portrait {
    display: none !important; } }

@media screen and (orientation: portrait) {
  .hide-for-landscape, .show-for-portrait {
    display: block !important; } }

.accordion {
  margin-left: 0;
  background: #FFF;
  list-style-type: none; }

.accordion[disabled] .accordion-title {
  cursor: not-allowed; }

.accordion-item:first-child > :first-child {
  border-radius: 5px 5px 0 0; }

.accordion-item:last-child > :last-child {
  border-radius: 0 0 5px 5px; }

.accordion-title {
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  border: 1px solid #E4E4E4;
  border-bottom: 0;
  font-size: 0.75rem;
  line-height: 1;
  color: #16404d; }

:last-child:not(.is-active) > .accordion-title {
  border-bottom: 1px solid #E4E4E4;
  border-radius: 0 0 5px 5px; }

.accordion-title:hover, a.accordion-title.active, button.accordion-title.active, .accordion-title:focus {
  background-color: #E4E4E4; }

.accordion-title::before {
  position: absolute;
  top: 50%;
  right: 1rem;
  margin-top: -0.5rem;
  content: "+"; }

.is-active > .accordion-title::before {
  content: "–"; }

.accordion-content {
  display: none;
  padding: 0 1rem;
  border: 1px solid #E4E4E4;
  border-bottom: 0;
  background-color: transparent;
  color: #525245; }

:last-child > .accordion-content:last-child {
  border-bottom: 1px solid #E4E4E4; }

.button-group {
  margin-bottom: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.button-group::before, .button-group::after {
  display: table;
  content: ' ';
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }

.button-group::after {
  clear: both; }

.button-group::before, .button-group::after {
  display: none; }

.button-group .button, .button-group li.faux-button a, li.faux-button .button-group a {
  margin: 0;
  margin-right: 1px;
  margin-bottom: 1px;
  font-size: 1.125rem;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }

.button-group .button:last-child, .button-group li.faux-button a:last-child, li.faux-button .button-group a:last-child {
  margin-right: 0; }

.button-group.tiny .button, .button-group.tiny li.faux-button a, li.faux-button .button-group.tiny a {
  font-size: 1.125rem; }

.button-group.small .button, .button-group.small li.faux-button a, li.faux-button .button-group.small a {
  font-size: 1.125rem; }

.button-group.large .button, .button-group.large li.faux-button a, li.faux-button .button-group.large a {
  font-size: 1.125rem; }

.button-group.expanded .button, .button-group.expanded li.faux-button a, li.faux-button .button-group.expanded a {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  margin-right: 0; }

.button-group.hollow .button, .button-group.hollow li.faux-button a, li.faux-button .button-group.hollow a, .button-group.hollow .button:hover, .button-group.hollow a.button.active, .button-group.hollow li.faux-button a.active, li.faux-button .button-group.hollow a.active, .button-group.hollow button.button.active, .button-group.hollow li.faux-button a:hover, li.faux-button .button-group.hollow a:hover, .button-group.hollow .button:focus, .button-group.hollow li.faux-button a:focus, li.faux-button .button-group.hollow a:focus, .button-group.hollow .button.disabled, .button-group.hollow li.faux-button a.disabled, li.faux-button .button-group.hollow a.disabled, .button-group.hollow .button.disabled:hover, .button-group.hollow a.button.disabled.active, .button-group.hollow li.faux-button a.disabled.active, li.faux-button .button-group.hollow a.disabled.active, .button-group.hollow button.button.disabled.active, .button-group.hollow li.faux-button a.disabled:hover, li.faux-button .button-group.hollow a.disabled:hover, .button-group.hollow .button.disabled:focus, .button-group.hollow li.faux-button a.disabled:focus, li.faux-button .button-group.hollow a.disabled:focus, .button-group.hollow .button[disabled], .button-group.hollow li.faux-button a[disabled], li.faux-button .button-group.hollow a[disabled], .button-group.hollow .button[disabled]:hover, .button-group.hollow a.button.active[disabled], .button-group.hollow li.faux-button a.active[disabled], li.faux-button .button-group.hollow a.active[disabled], .button-group.hollow button.button.active[disabled], .button-group.hollow li.faux-button a[disabled]:hover, li.faux-button .button-group.hollow a[disabled]:hover, .button-group.hollow .button[disabled]:focus, .button-group.hollow li.faux-button a[disabled]:focus, li.faux-button .button-group.hollow a[disabled]:focus {
  background-color: transparent; }

.button-group.hollow .button, .button-group.hollow li.faux-button a, li.faux-button .button-group.hollow a, .button-group.hollow .button.disabled, .button-group.hollow li.faux-button a.disabled, li.faux-button .button-group.hollow a.disabled, .button-group.hollow .button[disabled], .button-group.hollow li.faux-button a[disabled], li.faux-button .button-group.hollow a[disabled], .button-group.hollow .button.disabled:hover, .button-group.hollow a.button.disabled.active, .button-group.hollow li.faux-button a.disabled.active, li.faux-button .button-group.hollow a.disabled.active, .button-group.hollow button.button.disabled.active, .button-group.hollow li.faux-button a.disabled:hover, li.faux-button .button-group.hollow a.disabled:hover, .button-group.hollow .button[disabled]:hover, .button-group.hollow a.button.active[disabled], .button-group.hollow li.faux-button a.active[disabled], li.faux-button .button-group.hollow a.active[disabled], .button-group.hollow button.button.active[disabled], .button-group.hollow li.faux-button a[disabled]:hover, li.faux-button .button-group.hollow a[disabled]:hover, .button-group.hollow .button.disabled:focus, .button-group.hollow li.faux-button a.disabled:focus, li.faux-button .button-group.hollow a.disabled:focus, .button-group.hollow .button[disabled]:focus, .button-group.hollow li.faux-button a[disabled]:focus, li.faux-button .button-group.hollow a[disabled]:focus {
  border: 1px solid #79d7be;
  color: #79d7be; }

.button-group.hollow .button:hover, .button-group.hollow a.button.active, .button-group.hollow li.faux-button a.active, li.faux-button .button-group.hollow a.active, .button-group.hollow button.button.active, .button-group.hollow li.faux-button a:hover, li.faux-button .button-group.hollow a:hover, .button-group.hollow .button:focus, .button-group.hollow li.faux-button a:focus, li.faux-button .button-group.hollow a:focus {
  border-color: #7f6200;
  color: #7f6200; }

.button-group.clear .button, .button-group.clear li.faux-button a, li.faux-button .button-group.clear a, .button-group.clear .button:hover, .button-group.clear a.button.active, .button-group.clear li.faux-button a.active, li.faux-button .button-group.clear a.active, .button-group.clear button.button.active, .button-group.clear li.faux-button a:hover, li.faux-button .button-group.clear a:hover, .button-group.clear .button:focus, .button-group.clear li.faux-button a:focus, li.faux-button .button-group.clear a:focus, .button-group.clear .button.disabled, .button-group.clear li.faux-button a.disabled, li.faux-button .button-group.clear a.disabled, .button-group.clear .button.disabled:hover, .button-group.clear a.button.disabled.active, .button-group.clear li.faux-button a.disabled.active, li.faux-button .button-group.clear a.disabled.active, .button-group.clear button.button.disabled.active, .button-group.clear li.faux-button a.disabled:hover, li.faux-button .button-group.clear a.disabled:hover, .button-group.clear .button.disabled:focus, .button-group.clear li.faux-button a.disabled:focus, li.faux-button .button-group.clear a.disabled:focus, .button-group.clear .button[disabled], .button-group.clear li.faux-button a[disabled], li.faux-button .button-group.clear a[disabled], .button-group.clear .button[disabled]:hover, .button-group.clear a.button.active[disabled], .button-group.clear li.faux-button a.active[disabled], li.faux-button .button-group.clear a.active[disabled], .button-group.clear button.button.active[disabled], .button-group.clear li.faux-button a[disabled]:hover, li.faux-button .button-group.clear a[disabled]:hover, .button-group.clear .button[disabled]:focus, .button-group.clear li.faux-button a[disabled]:focus, li.faux-button .button-group.clear a[disabled]:focus {
  border-color: transparent;
  background-color: transparent; }

.button-group.clear .button, .button-group.clear li.faux-button a, li.faux-button .button-group.clear a, .button-group.clear .button.disabled, .button-group.clear li.faux-button a.disabled, li.faux-button .button-group.clear a.disabled, .button-group.clear .button[disabled], .button-group.clear li.faux-button a[disabled], li.faux-button .button-group.clear a[disabled], .button-group.clear .button.disabled:hover, .button-group.clear a.button.disabled.active, .button-group.clear li.faux-button a.disabled.active, li.faux-button .button-group.clear a.disabled.active, .button-group.clear button.button.disabled.active, .button-group.clear li.faux-button a.disabled:hover, li.faux-button .button-group.clear a.disabled:hover, .button-group.clear .button[disabled]:hover, .button-group.clear a.button.active[disabled], .button-group.clear li.faux-button a.active[disabled], li.faux-button .button-group.clear a.active[disabled], .button-group.clear button.button.active[disabled], .button-group.clear li.faux-button a[disabled]:hover, li.faux-button .button-group.clear a[disabled]:hover, .button-group.clear .button.disabled:focus, .button-group.clear li.faux-button a.disabled:focus, li.faux-button .button-group.clear a.disabled:focus, .button-group.clear .button[disabled]:focus, .button-group.clear li.faux-button a[disabled]:focus, li.faux-button .button-group.clear a[disabled]:focus {
  color: #79d7be; }

.button-group.clear .button:hover, .button-group.clear a.button.active, .button-group.clear li.faux-button a.active, li.faux-button .button-group.clear a.active, .button-group.clear button.button.active, .button-group.clear li.faux-button a:hover, li.faux-button .button-group.clear a:hover, .button-group.clear .button:focus, .button-group.clear li.faux-button a:focus, li.faux-button .button-group.clear a:focus {
  color: #7f6200; }

.button-group.no-gaps .button, .button-group.no-gaps li.faux-button a, li.faux-button .button-group.no-gaps a {
  margin-right: -0.0625rem; }

.button-group.no-gaps .button + .button, .button-group.no-gaps li.faux-button a + .button, li.faux-button .button-group.no-gaps a + .button, .button-group.no-gaps li.faux-button .button + a, li.faux-button .button-group.no-gaps .button + a, .button-group.no-gaps li.faux-button a + a, li.faux-button .button-group.no-gaps a + a {
  border-left-color: transparent; }

.button-group.stacked, .button-group.stacked-for-small, .button-group.stacked-for-medium {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.button-group.stacked .button, .button-group.stacked li.faux-button a, li.faux-button .button-group.stacked a, .button-group.stacked-for-small .button, .button-group.stacked-for-small li.faux-button a, li.faux-button .button-group.stacked-for-small a, .button-group.stacked-for-medium .button, .button-group.stacked-for-medium li.faux-button a, li.faux-button .button-group.stacked-for-medium a {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%; }

.button-group.stacked .button:last-child, .button-group.stacked li.faux-button a:last-child, li.faux-button .button-group.stacked a:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-small li.faux-button a:last-child, li.faux-button .button-group.stacked-for-small a:last-child, .button-group.stacked-for-medium .button:last-child, .button-group.stacked-for-medium li.faux-button a:last-child, li.faux-button .button-group.stacked-for-medium a:last-child {
  margin-bottom: 0; }

.button-group.stacked.expanded .button, .button-group.stacked.expanded li.faux-button a, li.faux-button .button-group.stacked.expanded a, .button-group.stacked-for-small.expanded .button, .button-group.stacked-for-small.expanded li.faux-button a, li.faux-button .button-group.stacked-for-small.expanded a, .button-group.stacked-for-medium.expanded .button, .button-group.stacked-for-medium.expanded li.faux-button a, li.faux-button .button-group.stacked-for-medium.expanded a {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  margin-right: 0; }

@media print, screen and (min-width: 40em) {
  .button-group.stacked-for-small .button, .button-group.stacked-for-small li.faux-button a, li.faux-button .button-group.stacked-for-small a {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-bottom: 0; } }

@media print, screen and (min-width: 64em) {
  .button-group.stacked-for-medium .button, .button-group.stacked-for-medium li.faux-button a, li.faux-button .button-group.stacked-for-medium a {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-bottom: 0; } }

@media print, screen and (max-width: 39.99875em) {
  .button-group.stacked-for-small.expanded {
    display: block; }
  .button-group.stacked-for-small.expanded .button, .button-group.stacked-for-small.expanded li.faux-button a, li.faux-button .button-group.stacked-for-small.expanded a {
    display: block;
    margin-right: 0; } }

@media print, screen and (max-width: 63.99875em) {
  .button-group.stacked-for-medium.expanded {
    display: block; }
  .button-group.stacked-for-medium.expanded .button, .button-group.stacked-for-medium.expanded li.faux-button a, li.faux-button .button-group.stacked-for-medium.expanded a {
    display: block;
    margin-right: 0; } }

.dropdown-pane {
  position: absolute;
  z-index: 10;
  display: none;
  width: 300px;
  padding: 1rem;
  visibility: hidden;
  border: 1px solid #B1B1B1;
  border-radius: 5px;
  background-color: #FFF;
  font-size: 1rem; }

.dropdown-pane.is-opening {
  display: block; }

.dropdown-pane.is-open {
  display: block;
  visibility: visible; }

.dropdown-pane.tiny {
  width: 100px; }

.dropdown-pane.small {
  width: 200px; }

.dropdown-pane.large {
  width: 400px; }

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  top: 100%;
  right: 0;
  left: auto; }

.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  top: 100%;
  right: auto;
  left: 0; }

.dropdown.menu > li.is-dropdown-submenu-parent > a {
  position: relative;
  padding-right: 1.5rem; }

.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #16404d transparent transparent;
  right: 5px;
  left: auto;
  margin-top: -3px; }

[data-whatinput='mouse'] .dropdown.menu a {
  outline: 0; }

.dropdown.menu > li > a {
  background: #FFF;
  padding: 0.7rem 1rem; }

.dropdown.menu > li.is-active > a {
  background: transparent;
  color: #16404d; }

.no-js .dropdown.menu ul {
  display: none; }

.dropdown.menu .nested.is-dropdown-submenu {
  margin-right: 0;
  margin-left: 0; }

.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0; }

.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  top: 0;
  right: 100%;
  left: auto; }

.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%; }

.dropdown.menu.vertical > li > a::after {
  right: 14px; }

.dropdown.menu.vertical > li.opens-left > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #16404d transparent transparent;
  right: auto;
  left: 5px; }

.dropdown.menu.vertical > li.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #16404d; }

@media print, screen and (min-width: 40em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #16404d transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #16404d transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #16404d; } }

@media print, screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #16404d transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #16404d transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #16404d; } }

.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto; }

.is-dropdown-menu.vertical {
  width: 100px; }

.is-dropdown-menu.vertical.align-right {
  float: right; }

.is-dropdown-submenu-parent {
  position: relative; }

.is-dropdown-submenu-parent a::after {
  position: absolute;
  top: 50%;
  right: 5px;
  left: auto;
  margin-top: -6px; }

.is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu {
  top: 100%;
  left: auto; }

.is-dropdown-submenu-parent.opens-left > .is-dropdown-submenu {
  right: 100%;
  left: auto; }

.is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%; }

.is-dropdown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 1;
  display: none;
  min-width: 200px;
  border: 1px solid #B1B1B1;
  background: #FFF; }

.dropdown .is-dropdown-submenu a {
  padding: 0.7rem 1rem; }

.is-dropdown-submenu .is-dropdown-submenu-parent > a::after {
  right: 14px; }

.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #16404d transparent transparent;
  right: auto;
  left: 5px; }

.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #16404d; }

.is-dropdown-submenu .is-dropdown-submenu {
  margin-top: -1px; }

.is-dropdown-submenu > li {
  width: 100%; }

.is-dropdown-submenu.js-dropdown-active {
  display: block; }

.label {
  display: inline-block;
  padding: 5px 14px;
  border-radius: 0;
  font-size: 1rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #FFF;
  color: #16404d; }

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

[data-whatinput='mouse'] .menu li {
  outline: 0; }

.menu a, .menu .button, .menu li.faux-button a, li.faux-button .menu a {
  line-height: 1;
  text-decoration: none;
  display: block;
  padding: 0.7rem 1rem; }

.menu input, .menu select, .menu a, .menu button {
  margin-bottom: 0; }

.menu input {
  display: inline-block; }

.menu, .menu.horizontal {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row; }

.menu.vertical {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.menu.expanded li {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; }

.menu.simple {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.menu.simple li + li {
  margin-left: 1rem; }

.menu.simple a {
  padding: 0; }

@media print, screen and (min-width: 40em) {
  .menu.medium-horizontal {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .menu.medium-vertical {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .menu.medium-expanded li {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .menu.medium-simple li {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; } }

@media print, screen and (min-width: 64em) {
  .menu.large-horizontal {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .menu.large-vertical {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .menu.large-expanded li {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .menu.large-simple li {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; } }

.menu.nested {
  margin-right: 0;
  margin-left: 1rem; }

.menu.icons a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.menu.icon-left li a {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap; }

.menu.icon-left li a img, .menu.icon-left li a i, .menu.icon-left li a svg {
  margin-right: 0.25rem; }

.menu.icon-right li a {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap; }

.menu.icon-right li a img, .menu.icon-right li a i, .menu.icon-right li a svg {
  margin-left: 0.25rem; }

.menu.icon-top li a {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap; }

.menu.icon-top li a img, .menu.icon-top li a i, .menu.icon-top li a svg {
  -ms-flex-item-align: stretch;
      align-self: stretch;
  margin-bottom: 0.25rem;
  text-align: center; }

.menu.icon-bottom li a {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap; }

.menu.icon-bottom li a img, .menu.icon-bottom li a i, .menu.icon-bottom li a svg {
  -ms-flex-item-align: stretch;
      align-self: stretch;
  margin-bottom: 0.25rem;
  text-align: center; }

.menu .is-active > a {
  background: #16404d;
  color: #FFF; }

.menu .active > a {
  background: #16404d;
  color: #FFF; }

.menu.align-left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.menu.align-right li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.menu.align-right li .submenu li {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.menu.align-right.vertical li {
  display: block;
  text-align: right; }

.menu.align-right.vertical li .submenu li {
  text-align: right; }

.menu.align-right .nested {
  margin-right: 1rem;
  margin-left: 0; }

.menu.align-center li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.menu.align-center li .submenu li {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.menu .menu-text {
  padding: 0.7rem 1rem;
  font-weight: bold;
  line-height: 1;
  color: inherit; }

.menu-centered > .menu {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.menu-centered > .menu li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.menu-centered > .menu li .submenu li {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.no-js [data-responsive-menu] ul {
  display: none; }

.pagination, ul.page-numbers {
  margin-left: 0;
  margin-bottom: 1rem; }

.pagination::before, ul.page-numbers::before, .pagination::after, ul.page-numbers::after {
  display: table;
  content: ' ';
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }

.pagination::after, ul.page-numbers::after {
  clear: both; }

.pagination li, ul.page-numbers li {
  margin-right: 0.0625rem;
  border-radius: 5px;
  font-size: 1rem;
  display: none; }

.pagination li:last-child, ul.page-numbers li:last-child, .pagination li:first-child, ul.page-numbers li:first-child {
  display: inline-block; }

@media print, screen and (min-width: 40em) {
  .pagination li, ul.page-numbers li {
    display: inline-block; } }

.pagination a, ul.page-numbers a, .pagination button, ul.page-numbers button {
  display: block;
  padding: 0.1875rem 0.625rem;
  border-radius: 5px;
  color: #a6cdc6; }

.pagination a:hover, ul.page-numbers a:hover, .pagination a.active, ul.page-numbers a.active, .pagination button:hover, ul.page-numbers button:hover, .pagination button.active, ul.page-numbers button.active {
  background: none; }

.pagination .current, ul.page-numbers .current {
  padding: 0.1875rem 0.625rem;
  background: none;
  color: #16404d;
  cursor: default; }

.pagination .disabled, ul.page-numbers .disabled {
  padding: 0.1875rem 0.625rem;
  color: #B1B1B1;
  cursor: not-allowed; }

.pagination .disabled:hover, ul.page-numbers .disabled:hover, .pagination a.disabled.active, ul.page-numbers a.disabled.active, .pagination button.disabled.active, ul.page-numbers button.disabled.active {
  background: transparent; }

.pagination .ellipsis::after, ul.page-numbers .ellipsis::after {
  padding: 0.1875rem 0.625rem;
  content: '\2026';
  color: #16404d; }

.pagination-previous a::before, .pagination-previous.disabled::before {
  display: inline-block;
  margin-right: 0.5rem;
  content: "«"; }

.pagination-next a::after, .pagination-next.disabled::after {
  display: inline-block;
  margin-left: 0.5rem;
  content: "»"; }

table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 5px; }

thead, tbody, tfoot {
  border: 1px solid #e4e5e9;
  background-color: #FFF; }

caption {
  padding: 0.5rem 0.625rem 0.625rem;
  font-weight: bold; }

thead {
  background: #16404d;
  color: #FFF; }

tfoot {
  background: #F4F4F4;
  color: #16404d; }

thead tr, tfoot tr {
  background: transparent; }

thead th, thead td, tfoot th, tfoot td {
  padding: 0.5rem 0.625rem 0.625rem;
  font-weight: bold;
  text-align: left; }

tbody th, tbody td {
  padding: 0.5rem 0.625rem 0.625rem; }

tbody tr {
  border-bottom: 0;
  border-bottom: 1px solid #e4e5e9;
  background-color: #FFF; }

table.striped tbody tr:nth-child(even) {
  border-bottom: 0;
  background-color: #F4F4F4; }

@media print, screen and (max-width: 63.99875em) {
  table.stack thead {
    display: none; }
  table.stack tfoot {
    display: none; }
  table.stack tr, table.stack th, table.stack td {
    display: block; }
  table.stack td {
    border-top: 0; } }

table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto; }

table.hover thead tr:hover {
  background-color: #16404d; }

table.hover tfoot tr:hover {
  background-color: #F4F4F4; }

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

table.hover.striped tr:nth-of-type(even):hover {
  background-color: #ededed; }

.table-scroll {
  overflow-x: auto; }

.tabs {
  margin: 0;
  border: 1px solid #E4E4E4;
  background: #FFF;
  list-style-type: none; }

.tabs::before, .tabs::after {
  display: table;
  content: ' ';
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }

.tabs::after {
  clear: both; }

.tabs.vertical > li {
  display: block;
  float: none;
  width: auto; }

.tabs.simple > li > a {
  padding: 0; }

.tabs.simple > li > a:hover, .tabs.simple > li > a.active, li.faux-button .tabs.simple > li > a.active {
  background: transparent; }

.tabs.primary {
  background: #16404d; }

.tabs.primary > li > a {
  color: #FFF; }

.tabs.primary > li > a:hover, .tabs.primary > li > a.active, li.faux-button .tabs.primary > li > a.active, .tabs.primary > li > a:focus {
  background: #053c77; }

.tabs-title {
  float: left; }

.tabs-title > a {
  display: block;
  padding: 1.25rem 1.5rem;
  font-size: 0.75rem;
  line-height: 1;
  color: #16404d; }

[data-whatinput='mouse'] .tabs-title > a {
  outline: 0; }

.tabs-title > a:hover, .tabs-title > a.active, li.faux-button .tabs-title > a.active {
  background: #FFF;
  color: #032b55; }

.tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
  background: #E4E4E4;
  color: #16404d; }

.tabs-content {
  border: 1px solid #E4E4E4;
  border-top: 0;
  background: #FFF;
  color: #525245;
  -webkit-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease; }

.tabs-content.vertical {
  border: 1px solid #E4E4E4;
  border-left: 0; }

.tabs-panel {
  display: none;
  padding: 1rem; }

.tabs-panel.is-active {
  display: block; }

/** MIXINS */
@-webkit-keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
@keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

.scrollbar, .accordion__card.accordion__card_equalize .accordion-content, .cell.accordion.accordion__card .accordion-content, .cell .accordion__card .accordion .accordion-content {
  margin-bottom: 2rem; }

@media print, screen and (min-width: 40em) {
  .scrollbar, .accordion__card.accordion__card_equalize .accordion-content, .cell.accordion.accordion__card .accordion-content, .cell .accordion__card .accordion .accordion-content {
    overflow-y: scroll; }
  .scrollbar::-webkit-scrollbar, .accordion__card.accordion__card_equalize .accordion-content::-webkit-scrollbar, .cell.accordion.accordion__card .accordion-content::-webkit-scrollbar, .cell .accordion__card .accordion .accordion-content::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 8px; }
  .scrollbar::-webkit-scrollbar:vertical, .accordion__card.accordion__card_equalize .accordion-content::-webkit-scrollbar:vertical, .cell.accordion.accordion__card .accordion-content::-webkit-scrollbar:vertical, .cell .accordion__card .accordion .accordion-content::-webkit-scrollbar:vertical {
    width: 8px; }
  .scrollbar::-webkit-scrollbar:horizontal, .accordion__card.accordion__card_equalize .accordion-content::-webkit-scrollbar:horizontal, .cell.accordion.accordion__card .accordion-content::-webkit-scrollbar:horizontal, .cell .accordion__card .accordion .accordion-content::-webkit-scrollbar:horizontal {
    height: 8px; }
  .scrollbar::-webkit-scrollbar-thumb, .accordion__card.accordion__card_equalize .accordion-content::-webkit-scrollbar-thumb, .cell.accordion.accordion__card .accordion-content::-webkit-scrollbar-thumb, .cell .accordion__card .accordion .accordion-content::-webkit-scrollbar-thumb {
    border-radius: 8px;
    border: 1px solid #F4F4F4;
    /* should match background, can't be transparent */
    background-color: rgba(0, 0, 0, 0.5); } }

/** 1. Avoid the IE 10-11 `min-height` bug. 2. Set `flex-shrink` to `0` to prevent some browsers from letting these items shrink to smaller than their content's default minimum size. See http://bit.ly/1Mn35US for details. 3. Use `%` instead of `vh` since `vh` is buggy in older mobile Safari. */
html {
  height: 100%; }

body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%; }

.site-header, .site-footer {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none; }

.site-content {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  padding: var(--space) var(--space) 0;
  width: 100%; }

.site-content::after {
  content: '\00a0';
  display: block;
  margin-top: var(--space);
  height: 0px;
  visibility: hidden; }

/** GRID X-Y */
.grid-container-wrapper {
  width: 100%; }

.grid-container.grid-container-collapse {
  padding-left: 0;
  padding-right: 0; }

.accordion .accordion-title {
  padding: 10px 0 10px 0;
  text-decoration: none;
  border: 0;
  border-bottom: 2px solid #e4e5e9; }

.accordion .accordion-title h5, .accordion .accordion-title section .free_text blockquote p, section .free_text blockquote .accordion .accordion-title p, .accordion .accordion-title .h5 {
  max-width: 95%;
  margin-bottom: 10px;
  margin-top: 10px; }

.accordion .accordion-title:before {
  content: "";
  background: url(../../../elf-theme/assets/icons/down-arrow.svg);
  background-size: 15px 11px;
  width: 15px;
  height: 11px;
  right: 10px;
  margin-top: 0;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: -webkit-transform 0.25s;
  transition: -webkit-transform 0.25s;
  -o-transition: transform 0.25s;
  transition: transform 0.25s;
  transition: transform 0.25s, -webkit-transform 0.25s; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .accordion .accordion-title:before {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/down-arrow.svg);
            mask-image: url(../../../elf-theme/assets/icons/down-arrow.svg);
    -webkit-mask-size: 15px 11px;
            mask-size: 15px 11px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.accordion .accordion-title:hover, .accordion a.accordion-title.active, .accordion button.accordion-title.active, .accordion .accordion-title:focus {
  background-color: transparent; }

.accordion .accordion-content {
  border: 0;
  margin-top: 15px; }

.accordion .accordion-content a {
  position: relative;
  z-index: 1; }

@media print, screen and (min-width: 40em) {
  .accordion .accordion-content p {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; } }

.accordion .accordion-item.is-active .accordion-title:before {
  -webkit-transform: translateY(-50%) rotate(-180deg);
      -ms-transform: translateY(-50%) rotate(-180deg);
          transform: translateY(-50%) rotate(-180deg); }

.accordion.accordion__grid .accordion-content .card.card__tile .tile--wrap {
  padding: 20px;
  min-height: 150px;
  display: table;
  text-align: center;
  margin: auto; }

.accordion.accordion__grid .accordion-content .card.card__tile .tile--wrap .tile--inner {
  display: table-cell;
  vertical-align: middle; }

.accordion.accordion__info {
  margin-bottom: 0; }

@media print, screen and (min-width: 40em) {
  .accordion.accordion__info .grid-container {
    padding-left: 55px; } }

.accordion.accordion__info .accordion-title {
  border-bottom: none !important;
  background-color: #16404d;
  color: #a6cdc6;
  margin-bottom: 0px; }

@media print, screen and (min-width: 40em) {
  .accordion.accordion__info .accordion-title {
    padding: 10px 80px; } }

.accordion.accordion__info .accordion-title img {
  display: inline-block;
  vertical-align: middle;
  margin-right: 20px; }

.accordion.accordion__info .accordion-title h4 {
  display: inline-block;
  vertical-align: middle;
  margin-top: 20px !important; }

.accordion.accordion__info .accordion-title h4.paragraph {
  margin-top: 0 !important;
  margin-bottom: 0; }

.accordion.accordion__info .accordion-title:before {
  background: url(../../../elf-theme/assets/icons/down-arrow-white.svg);
  background-size: 15px 11px;
  right: 40px;
  top: 55%; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .accordion.accordion__info .accordion-title:before {
    background: #FFF;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/down-arrow-white.svg);
            mask-image: url(../../../elf-theme/assets/icons/down-arrow-white.svg);
    -webkit-mask-size: 15px 11px;
            mask-size: 15px 11px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

@media print, screen and (min-width: 40em) {
  .accordion.accordion__info .accordion-title:before {
    right: 150px; } }

@media print, screen and (min-width: 64em) {
  .accordion.accordion__info .accordion-title:before {
    right: 210px; } }

.accordion.accordion__info .accordion-title:after {
  background: url(../../../elf-theme/assets/icons/down-arrow-white.svg);
  background-size: 15px 11px;
  left: 0;
  top: 55%;
  border: 1px solid black; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .accordion.accordion__info .accordion-title:after {
    background: #FFF;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/down-arrow-white.svg);
            mask-image: url(../../../elf-theme/assets/icons/down-arrow-white.svg);
    -webkit-mask-size: 15px 11px;
            mask-size: 15px 11px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.accordion.accordion__info .accordion-content {
  background-color: #F4F4F4;
  color: #767175; }

@media print, screen and (min-width: 40em) {
  .accordion.accordion__info .accordion-content {
    padding: 30px 80px; } }

.accordion.accordion__info .accordion-content p {
  margin-bottom: 10px; }

.accordion.accordion__card {
  list-style: none !important; }

.accordion.accordion__card.publication {
  margin-bottom: 40px; }

.accordion.accordion__card .accordion-item, .accordion.accordion__card [data-accordion-item] {
  display: block;
  overflow: hidden !important; }

.accordion.accordion__card .accordion-item .accordion-title, .accordion.accordion__card [data-accordion-item] .accordion-title {
  text-align: center;
  border: 0;
  text-decoration: none;
  padding: 0; }

.accordion.accordion__card .accordion-item .accordion-title:before, .accordion.accordion__card [data-accordion-item] .accordion-title:before {
  content: "";
  background: url(../../../elf-theme/assets/icons/down-arrow.svg);
  background-size: 15px 11px;
  width: 15px;
  height: 11px;
  top: 20px;
  right: 0;
  margin-top: 0; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .accordion.accordion__card .accordion-item .accordion-title:before, .accordion.accordion__card [data-accordion-item] .accordion-title:before {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/down-arrow.svg);
            mask-image: url(../../../elf-theme/assets/icons/down-arrow.svg);
    -webkit-mask-size: 15px 11px;
            mask-size: 15px 11px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.accordion.accordion__card .accordion-item .accordion-title:hover, .accordion.accordion__card .accordion-item a.accordion-title.active, .accordion.accordion__card .accordion-item button.accordion-title.active, .accordion.accordion__card .accordion-item .accordion-title:focus, .accordion.accordion__card [data-accordion-item] .accordion-title:hover, .accordion.accordion__card [data-accordion-item] a.accordion-title.active, .accordion.accordion__card [data-accordion-item] button.accordion-title.active, .accordion.accordion__card [data-accordion-item] .accordion-title:focus {
  background-color: transparent; }

.accordion.accordion__card .accordion-item .accordion-title:hover:before, .accordion.accordion__card .accordion-item a.accordion-title.active:before, .accordion.accordion__card .accordion-item button.accordion-title.active:before, .accordion.accordion__card .accordion-item .accordion-title:focus:before, .accordion.accordion__card [data-accordion-item] .accordion-title:hover:before, .accordion.accordion__card [data-accordion-item] a.accordion-title.active:before, .accordion.accordion__card [data-accordion-item] button.accordion-title.active:before, .accordion.accordion__card [data-accordion-item] .accordion-title:focus:before {
  border-color: #FFF transparent transparent; }

.accordion.accordion__card .accordion-item .accordion-title .subheading, .accordion.accordion__card [data-accordion-item] .accordion-title .subheading {
  display: block;
  padding-right: 40px; }

.accordion.accordion__card .accordion-item .accordion-content, .accordion.accordion__card [data-accordion-item] .accordion-content {
  border: 0;
  padding: 0; }

.accordion.accordion__card .accordion-item.is-active .accordion-title:before, .accordion.accordion__card [data-accordion-item].is-active .accordion-title:before {
  -webkit-transform: translateY(-50%) rotate(-180deg);
      -ms-transform: translateY(-50%) rotate(-180deg);
          transform: translateY(-50%) rotate(-180deg); }

.accordion.accordion__card .accordion-item .link, .accordion.accordion__card [data-accordion-item] .link {
  display: block;
  color: #16404d;
  margin-bottom: 1rem;
  white-space: nowrap;
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  cursor: pointer; }

.accordion.accordion__card.accordion__card_noimg .accordion-title {
  text-align: left; }

.accordion.accordion__card.accordion__card_noimg .accordion__content {
  width: 95%; }

.accordion__card.greyBg, .accordion__card.tab-colour-bg {
  background-color: #F4F4F4; }

.accordion__card.greyBg .accordion-item, .accordion__card.tab-colour-bg .accordion-item {
  background-color: #F4F4F4; }

.accordion__card.greyBg .accordion-content, .accordion__card.tab-colour-bg .accordion-content {
  background-color: #F4F4F4; }

.accordion__card .tag {
  display: block; }

@media print, screen and (min-width: 40em) {
  .accordion__card .tag.button, .accordion__card li.faux-button a.tag, li.faux-button .accordion__card a.tag {
    margin-bottom: 10px; } }

.accordion__card .accordion_tag {
  color: #16404d !important;
  border: 1px solid #16404d !important;
  display: inline-block !important;
  margin: 15px !important;
  padding: 10px !important; }

.accordion__card .accordion_tag.no_margin {
  margin: 15px 15px 15px 0 !important; }

.accordion__card.accordion__card_equalize {
  position: relative;
  margin-bottom: 40px; }

.accordion__card.accordion__card_equalize .brow .tag {
  border: solid 1px lime;
  margin-bottom: 10px; }

.accordion__card.accordion__card_equalize .accordion-title {
  position: relative;
  padding: 0;
  margin: 0; }

.accordion__card.accordion__card_equalize .accordion-title:before {
  top: 1em;
  right: 0; }

.accordion__card.accordion__card_equalize .accordion-title .pushdown__heading {
  margin: 0 0 1rem;
  padding: 0 24px 0 0;
  text-align: left; }

.accordion__card.accordion__card_equalize .accordion-title h3, .accordion__card.accordion__card_equalize .accordion-title .h4, .accordion__card.accordion__card_equalize .accordion-title .h5 {
  max-width: 95%; }

.accordion__card.accordion__card_boxed .tag {
  padding: 1rem 1rem 0; }

.accordion__card.accordion__card_boxed .accordion-title .pushdown__heading {
  margin: 0 1rem 1rem;
  max-width: 100%; }

.accordion__card.accordion__card_boxed .accordion-content {
  padding-left: 20px; }

.accordion__card.accordion__card_boxed .link {
  padding: 1.5rem 20px; }

.card__expandable .accordion-title {
  z-index: 1; }

.card__expandable .accordion-title:before {
  content: none !important; }

.card__expandable h5, .card__expandable section .free_text blockquote p, section .free_text blockquote .card__expandable p, .card__expandable .h5 {
  position: relative;
  padding-right: 30px; }

.card__expandable h5:before, .card__expandable section .free_text blockquote p:before, section .free_text blockquote .card__expandable p:before, .card__expandable .h5:before {
  content: "";
  background: url(../../../elf-theme/assets/icons/down-arrow.svg);
  background-size: 15px 11px;
  width: 15px;
  height: 11px;
  position: absolute;
  top: 16px;
  right: 0;
  margin-top: 0;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: -webkit-transform 0.25s;
  transition: -webkit-transform 0.25s;
  -o-transition: transform 0.25s;
  transition: transform 0.25s;
  transition: transform 0.25s, -webkit-transform 0.25s; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .card__expandable h5:before, .card__expandable section .free_text blockquote p:before, section .free_text blockquote .card__expandable p:before, .card__expandable .h5:before {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/down-arrow.svg);
            mask-image: url(../../../elf-theme/assets/icons/down-arrow.svg);
    -webkit-mask-size: 15px 11px;
            mask-size: 15px 11px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.cell.accordion.accordion__card .accordion-content, .cell .accordion__card .accordion .accordion-content {
  margin-bottom: 1rem; }

:last-child:not(.is-active) > .accordion-title {
  border-bottom: 2px solid #e4e5e9; }

.is-active .accordion-title-no-border, :last-child:not(.is-active) > .accordion-title-no-border, :last-child > .accordion-content:last-child {
  border-bottom: 0 !important; }

.accordion-full .accordion-content {
  border-left: 5px solid #79d7be; }

details {
  color: #16404d; }

details summary {
  position: relative;
  cursor: pointer; }

details summary::marker, details summary::-webkit-details-marker {
  content: '';
  display: none; }

details summary:after {
  content: "";
  background: url(../../../elf-theme/assets/icons/down-arrow.svg);
  background-size: 15px 11px;
  width: 15px;
  height: 11px;
  display: inline-block;
  position: relative;
  top: 0px;
  right: -12px;
  margin-top: 0;
  -webkit-transition: -webkit-transform 0.25s;
  transition: -webkit-transform 0.25s;
  -o-transition: transform 0.25s;
  transition: transform 0.25s;
  transition: transform 0.25s, -webkit-transform 0.25s; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  details summary:after {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/down-arrow.svg);
            mask-image: url(../../../elf-theme/assets/icons/down-arrow.svg);
    -webkit-mask-size: 15px 11px;
            mask-size: 15px 11px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

details[open] summary:after {
  -webkit-transform: rotate(-180deg);
      -ms-transform: rotate(-180deg);
          transform: rotate(-180deg); }

.accordion__sidebar_section .accordion.accordion__sidebar {
  margin-bottom: 0.625rem; }

.accordion__sidebar_section .accordion.accordion__sidebar .accordion-title {
  padding: 20px 0 5px 0;
  margin-bottom: 20px; }

.accordion__sidebar_section .accordion.accordion__sidebar .accordion-content {
  padding: 20px; }

.accordion__sidebar_section .accordion.accordion__sidebar .accordion-content .card {
  margin-bottom: 20px; }

.accordion__sidebar_section .accordion.accordion__sidebar .accordion-content .card .accordion_sidebar_span {
  height: 11px;
  width: 2px;
  position: relative;
  display: inline-block;
  margin: auto 5px auto 0; }

.caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 6px; }

.caption.date:before, .caption.time:before, .caption.location:before, .caption.address:before {
  content: "";
  top: 50%;
  left: 0;
  margin-right: 12px;
  position: relative;
  display: inline-block;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  text-decoration: none; }

.caption.date:before, .caption.time:before {
  height: 17px;
  width: 17px;
  background: url(../../../elf-theme/assets/icons/time-icon.svg) no-repeat center center/contain; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .caption.date:before, .caption.time:before {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/time-icon.svg);
            mask-image: url(../../../elf-theme/assets/icons/time-icon.svg);
    -webkit-mask-size: contain;
            mask-size: contain;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center center;
            mask-position: center center; } }

@media print, screen and (max-width: 63.99875em) {
  .caption.date:before, .caption.time:before {
    margin-top: 11px; } }

.caption.location a, .caption.address a {
  text-decoration: none; }

.caption.location:before, .caption.address:before {
  height: 21px;
  width: 17px;
  background: url(../../../elf-theme/assets/icons/pin.svg) no-repeat center center/contain; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .caption.location:before, .caption.address:before {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/pin.svg);
            mask-image: url(../../../elf-theme/assets/icons/pin.svg);
    -webkit-mask-size: contain;
            mask-size: contain;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center center;
            mask-position: center center; } }

/** Colors  */
/* Color variable defined in   ~/scss/settings/_settings.scss  */
/* Loops thru $colors and create  color background-color  border (uncomment border section below to render) */
.color-black {
  color: #000; }

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

.color-white {
  color: #FFF; }

.color-white-bg {
  background-color: #FFF; }

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

.color-light-gray-bg {
  background-color: #E4E4E4; }

.color-medium-gray {
  color: #B1B1B1; }

.color-medium-gray-bg {
  background-color: #B1B1B1; }

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

.color-dark-gray-bg {
  background-color: #707070; }

.color-wrap-grey {
  color: #F4F4F4; }

.color-wrap-grey-bg {
  background-color: #F4F4F4; }

/** Background colours */
.bg-transparent {
  background-color: transparent !important; }

/** Background */
.bg {
  position: relative;
  background-repeat: no-repeat; }

.bg.bg-cover {
  background-size: cover; }

.bg.bg-center {
  background-position: center center; }

.bg.bg-tint:before {
  position: absolute;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  content: ' ';
  background: rgba(0, 0, 0, 0.5); }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'], textarea, select {
  border-bottom: 2px solid #16404d;
  padding: .46875rem; }

[type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus, textarea:focus, select:focus {
  border-bottom: 2px solid #16404d;
  padding: .46875rem; }

[type='text']::-webkit-input-placeholder, [type='password']::-webkit-input-placeholder, [type='date']::-webkit-input-placeholder, [type='datetime']::-webkit-input-placeholder, [type='datetime-local']::-webkit-input-placeholder, [type='month']::-webkit-input-placeholder, [type='week']::-webkit-input-placeholder, [type='email']::-webkit-input-placeholder, [type='number']::-webkit-input-placeholder, [type='search']::-webkit-input-placeholder, [type='tel']::-webkit-input-placeholder, [type='time']::-webkit-input-placeholder, [type='url']::-webkit-input-placeholder, [type='color']::-webkit-input-placeholder, textarea::-webkit-input-placeholder, select::-webkit-input-placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  opacity: 1;
  /* Firefox */ }

[type='text']::-moz-placeholder, [type='password']::-moz-placeholder, [type='date']::-moz-placeholder, [type='datetime']::-moz-placeholder, [type='datetime-local']::-moz-placeholder, [type='month']::-moz-placeholder, [type='week']::-moz-placeholder, [type='email']::-moz-placeholder, [type='number']::-moz-placeholder, [type='search']::-moz-placeholder, [type='tel']::-moz-placeholder, [type='time']::-moz-placeholder, [type='url']::-moz-placeholder, [type='color']::-moz-placeholder, textarea::-moz-placeholder, select::-moz-placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  opacity: 1;
  /* Firefox */ }

[type='text']:-ms-input-placeholder, [type='password']:-ms-input-placeholder, [type='date']:-ms-input-placeholder, [type='datetime']:-ms-input-placeholder, [type='datetime-local']:-ms-input-placeholder, [type='month']:-ms-input-placeholder, [type='week']:-ms-input-placeholder, [type='email']:-ms-input-placeholder, [type='number']:-ms-input-placeholder, [type='search']:-ms-input-placeholder, [type='tel']:-ms-input-placeholder, [type='time']:-ms-input-placeholder, [type='url']:-ms-input-placeholder, [type='color']:-ms-input-placeholder, textarea:-ms-input-placeholder, select:-ms-input-placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  opacity: 1;
  /* Firefox */ }

[type='text']::-ms-input-placeholder, [type='password']::-ms-input-placeholder, [type='date']::-ms-input-placeholder, [type='datetime']::-ms-input-placeholder, [type='datetime-local']::-ms-input-placeholder, [type='month']::-ms-input-placeholder, [type='week']::-ms-input-placeholder, [type='email']::-ms-input-placeholder, [type='number']::-ms-input-placeholder, [type='search']::-ms-input-placeholder, [type='tel']::-ms-input-placeholder, [type='time']::-ms-input-placeholder, [type='url']::-ms-input-placeholder, [type='color']::-ms-input-placeholder, textarea::-ms-input-placeholder, select::-ms-input-placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  opacity: 1;
  /* Firefox */ }

[type='text']::placeholder, [type='password']::placeholder, [type='date']::placeholder, [type='datetime']::placeholder, [type='datetime-local']::placeholder, [type='month']::placeholder, [type='week']::placeholder, [type='email']::placeholder, [type='number']::placeholder, [type='search']::placeholder, [type='tel']::placeholder, [type='time']::placeholder, [type='url']::placeholder, [type='color']::placeholder, textarea::placeholder, select::placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  opacity: 1;
  /* Firefox */ }

textarea {
  background: #FFF;
  padding: 14px;
  border: none;
  resize: none; }

textarea:focus {
  border: none; }

select {
  background-color: transparent; }

select:focus {
  background-color: transparent; }

.signup__form {
  position: relative;
  overflow: hidden;
  margin-top: -20px !important; }

.signup__form .bg__img {
  background-size: cover;
  background-repeat: no-repeat;
  padding-top: 70px;
  padding-bottom: 70px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background-position: center; }

@media print, screen and (min-width: 40em) {
  .signup__form {
    margin-top: -40px !important; } }

@media print, screen and (min-width: 64em) {
  .signup__form {
    margin-top: -70px !important; } }

@media print, screen and (max-width: 63.99875em) {
  .signup__form .signup__form_container {
    margin-bottom: 0px; } }

@media print, screen and (max-width: 39.99875em) {
  .signup__form {
    background-color: transparent;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .signup__form .signup__form_container {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin-bottom: 20px; }
  .signup__form .signup__form_container .grid-x {
    background-color: #79d7be;
    padding: 25px; } }

.signup__form * {
  color: #16404d; }

.signup__form [type='text'], .signup__form [type='password'], .signup__form [type='date'], .signup__form [type='datetime'], .signup__form [type='datetime-local'], .signup__form [type='month'], .signup__form [type='week'], .signup__form [type='email'], .signup__form [type='number'], .signup__form [type='search'], .signup__form [type='tel'], .signup__form [type='time'], .signup__form [type='url'], .signup__form [type='color'], .signup__form textarea, .signup__form select {
  padding-left: 10px;
  padding-right: 10px;
  font-weight: bold;
  color: #16404d !important; }

.signup__form [type='text']::-webkit-input-placeholder, .signup__form [type='password']::-webkit-input-placeholder, .signup__form [type='date']::-webkit-input-placeholder, .signup__form [type='datetime']::-webkit-input-placeholder, .signup__form [type='datetime-local']::-webkit-input-placeholder, .signup__form [type='month']::-webkit-input-placeholder, .signup__form [type='week']::-webkit-input-placeholder, .signup__form [type='email']::-webkit-input-placeholder, .signup__form [type='number']::-webkit-input-placeholder, .signup__form [type='search']::-webkit-input-placeholder, .signup__form [type='tel']::-webkit-input-placeholder, .signup__form [type='time']::-webkit-input-placeholder, .signup__form [type='url']::-webkit-input-placeholder, .signup__form [type='color']::-webkit-input-placeholder, .signup__form textarea::-webkit-input-placeholder, .signup__form select::-webkit-input-placeholder {
  font-weight: bold;
  color: #16404d; }

.signup__form [type='text']::-moz-placeholder, .signup__form [type='password']::-moz-placeholder, .signup__form [type='date']::-moz-placeholder, .signup__form [type='datetime']::-moz-placeholder, .signup__form [type='datetime-local']::-moz-placeholder, .signup__form [type='month']::-moz-placeholder, .signup__form [type='week']::-moz-placeholder, .signup__form [type='email']::-moz-placeholder, .signup__form [type='number']::-moz-placeholder, .signup__form [type='search']::-moz-placeholder, .signup__form [type='tel']::-moz-placeholder, .signup__form [type='time']::-moz-placeholder, .signup__form [type='url']::-moz-placeholder, .signup__form [type='color']::-moz-placeholder, .signup__form textarea::-moz-placeholder, .signup__form select::-moz-placeholder {
  font-weight: bold;
  color: #16404d; }

.signup__form [type='text']:-ms-input-placeholder, .signup__form [type='password']:-ms-input-placeholder, .signup__form [type='date']:-ms-input-placeholder, .signup__form [type='datetime']:-ms-input-placeholder, .signup__form [type='datetime-local']:-ms-input-placeholder, .signup__form [type='month']:-ms-input-placeholder, .signup__form [type='week']:-ms-input-placeholder, .signup__form [type='email']:-ms-input-placeholder, .signup__form [type='number']:-ms-input-placeholder, .signup__form [type='search']:-ms-input-placeholder, .signup__form [type='tel']:-ms-input-placeholder, .signup__form [type='time']:-ms-input-placeholder, .signup__form [type='url']:-ms-input-placeholder, .signup__form [type='color']:-ms-input-placeholder, .signup__form textarea:-ms-input-placeholder, .signup__form select:-ms-input-placeholder {
  font-weight: bold;
  color: #16404d; }

.signup__form [type='text']::-ms-input-placeholder, .signup__form [type='password']::-ms-input-placeholder, .signup__form [type='date']::-ms-input-placeholder, .signup__form [type='datetime']::-ms-input-placeholder, .signup__form [type='datetime-local']::-ms-input-placeholder, .signup__form [type='month']::-ms-input-placeholder, .signup__form [type='week']::-ms-input-placeholder, .signup__form [type='email']::-ms-input-placeholder, .signup__form [type='number']::-ms-input-placeholder, .signup__form [type='search']::-ms-input-placeholder, .signup__form [type='tel']::-ms-input-placeholder, .signup__form [type='time']::-ms-input-placeholder, .signup__form [type='url']::-ms-input-placeholder, .signup__form [type='color']::-ms-input-placeholder, .signup__form textarea::-ms-input-placeholder, .signup__form select::-ms-input-placeholder {
  font-weight: bold;
  color: #16404d; }

.signup__form [type='text']::placeholder, .signup__form [type='password']::placeholder, .signup__form [type='date']::placeholder, .signup__form [type='datetime']::placeholder, .signup__form [type='datetime-local']::placeholder, .signup__form [type='month']::placeholder, .signup__form [type='week']::placeholder, .signup__form [type='email']::placeholder, .signup__form [type='number']::placeholder, .signup__form [type='search']::placeholder, .signup__form [type='tel']::placeholder, .signup__form [type='time']::placeholder, .signup__form [type='url']::placeholder, .signup__form [type='color']::placeholder, .signup__form textarea::placeholder, .signup__form select::placeholder {
  font-weight: bold;
  color: #16404d; }

.signup__form .form-content {
  padding: 30px 0;
  background-color: #79d7be;
  padding: 25px;
  border-radius: 5px; }

@media print, screen and (min-width: 40em) {
  .signup__form .form-content {
    padding: 32px 40px; } }

.signup__form form {
  margin-top: 40px; }

.signup__form form input:not(.button), .signup__form form input:focus:not(.button) {
  color: #a6cdc6;
  background-image: none !important;
  border-bottom-color: #FFF;
  -webkit-box-shadow: none;
          box-shadow: none; }

.signup__form form label {
  margin-top: 20px; }

.signup__form .button, .signup__form li.faux-button a, li.faux-button .signup__form a {
  margin-top: 16px; }

@media print, screen and (max-width: 63.99875em) {
  .signup__form img {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    margin-left: auto;
    margin-right: auto;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; } }

@media print, screen and (min-width: 40em) {
  .signup__form img {
    margin-top: 0;
    position: absolute;
    top: 0;
    left: 50%;
    left: calc(50% + 20px);
    width: 50%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; } }

form#load_more {
  padding-top: 50px; }

form#load_more #loadMore {
  margin: 0 auto; }

.gform_wrapper {
  position: relative; }

.gform_wrapper form {
  margin-top: 0; }

.gform_wrapper .gform_fields {
  list-style: none;
  margin-left: 0; }

.gform_wrapper .hidden_label legend.gfield_label {
  display: none; }

.gform_wrapper .gf_progressbar {
  display: none; }

.gform_wrapper .gform_title {
  margin-bottom: 2.5rem; }

@media print, screen and (min-width: 40em) {
  .gform_wrapper .gform_title {
    margin-bottom: 3rem; } }

.gform_wrapper .ginput_container_date span.screen-reader-text {
  display: none; }

.gform_wrapper .ginput_container_checkbox ul.gfield_checkbox, .gform_wrapper .ginput_container_checkbox ul.gfield_radio, .gform_wrapper .ginput_container_radio ul.gfield_checkbox, .gform_wrapper .ginput_container_radio ul.gfield_radio {
  margin: 20px 0px !important; }

.gform_wrapper .ginput_container_checkbox ul.gfield_checkbox li::before, .gform_wrapper .ginput_container_checkbox ul.gfield_radio li::before, .gform_wrapper .ginput_container_radio ul.gfield_checkbox li::before, .gform_wrapper .ginput_container_radio ul.gfield_radio li::before {
  content: unset !important; }

.gform_wrapper .ginput_container_textarea textarea {
  border-radius: 5px !important;
  background-color: #f4f4f4 !important; }

.gform_wrapper .gform_validation_container {
  display: none; }

@media print, screen and (min-width: 40em) {
  .gform_wrapper .ginput_container_name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-column-gap: 20px;
       -moz-column-gap: 20px;
            column-gap: 20px; }
  .gform_wrapper .ginput_container_name > span {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; } }

.gform_wrapper .gfield_list {
  margin-bottom: 0; }

.gform_wrapper thead, .gform_wrapper tbody, .gform_wrapper tbody tr, .gform_wrapper tfoot {
  background: none;
  border: none; }

.gform_wrapper tbody td {
  padding-left: 0;
  padding-bottom: 0; }

.gform_wrapper .ginput_container_textarea textarea {
  background: #FFF !important; }

.gform_wrapper .gfield_consent_label {
  margin-top: 10px;
  color: #525245; }

.gform_wrapper textarea {
  margin-top: 10px; }

.gform_wrapper .gf_margin_btm {
  margin-bottom: 20px; }

.validation_error, .validation_message {
  color: #ad0031;
  margin-bottom: 20px; }

.validation_message {
  margin-top: -20px; }

[aria-invalid=true], .gfield_error input, .gfield_error select {
  border-bottom-color: #ad0031;
  color: #525245;
  background: url(../../../elf-theme/assets/icons/error@2x.png) no-repeat center right 5px/17px 18px; }

[aria-invalid=true]::-webkit-input-placeholder, .gfield_error input::-webkit-input-placeholder, .gfield_error select::-webkit-input-placeholder {
  color: #ad0031; }

[aria-invalid=true]::-moz-placeholder, .gfield_error input::-moz-placeholder, .gfield_error select::-moz-placeholder {
  color: #ad0031; }

[aria-invalid=true]:-ms-input-placeholder, .gfield_error input:-ms-input-placeholder, .gfield_error select:-ms-input-placeholder {
  color: #ad0031; }

[aria-invalid=true]::-ms-input-placeholder, .gfield_error input::-ms-input-placeholder, .gfield_error select::-ms-input-placeholder {
  color: #ad0031; }

[aria-invalid=true]::placeholder, .gfield_error input::placeholder, .gfield_error select::placeholder {
  color: #ad0031; }

.gfield_label {
  font-family: "Avenir LT W01_65 Medium1475532",sans-serif; }

.gfield_error .gfield_label, .gfield_error .gfield_label span {
  color: #ad0031; }

.gfield_error .ginput_container_fileupload, .gfield_error .ginput_recaptcha {
  margin-bottom: 20px; }

textarea[aria-invalid=true] {
  background: none; }

.gform_confirmation_wrapper {
  text-align: center;
  margin-bottom: 70px; }

.gform_confirmation_wrapper .gform_confirmation_message {
  color: #16404d;
  font-size: 1.25rem; }

.gform_anchor {
  position: absolute;
  top: -150px; }

.gform_margin_top {
  margin-top: 20px; }

/** Buttons and links */
a, button, a.button, li.faux-button a, li.faux-button a {
  position: relative; }

a.donate_btn, button.donate_btn, a.button.donate_btn, li.faux-button a.donate_btn, li.faux-button a.donate_btn {
  border-radius: 23px; }

a {
  text-underline-position: under;
  -webkit-transition: color 0.25s;
  -o-transition: color 0.25s;
  transition: color 0.25s; }

button, a.button, li.faux-button a, li.faux-button a, input.button, .button:visited, li.faux-button a:visited {
  position: relative;
  text-decoration: none;
  cursor: pointer; }

.touch button:not(input[type="submit"]):hover, .touch button.active:not(input[type="submit"]), .touch a.button:not(input[type="submit"]):hover, .touch a.button.active:not(input[type="submit"]), .touch li.faux-button a.active:not(input[type="submit"]), li.faux-button .touch a.active:not(input[type="submit"]), .touch li.faux-button a:not(input[type="submit"]):hover, li.faux-button .touch a:not(input[type="submit"]):hover, .touch li.faux-button a:not(input[type="submit"]):hover, .touch li.faux-button a.active:not(input[type="submit"]), .touch input.button:not(input[type="submit"]):hover, .touch .button:visited:not(input[type="submit"]):hover, .touch a.button.active:visited:not(input[type="submit"]), .touch li.faux-button a.active:visited:not(input[type="submit"]), li.faux-button .touch a.active:visited:not(input[type="submit"]), .touch button.button.active:visited:not(input[type="submit"]), .touch li.faux-button a:visited:not(input[type="submit"]):hover, li.faux-button .touch a:visited:not(input[type="submit"]):hover {
  background: #79d7be -o-radial-gradient(circle, transparent 1%, #79d7be 1%) center/15000%;
  background: #79d7be radial-gradient(circle, transparent 1%, #79d7be 1%) center/15000%; }

.touch button:not(input[type="submit"]):active, .touch a.button:not(input[type="submit"]):active, .touch li.faux-button a:not(input[type="submit"]):active, li.faux-button .touch a:not(input[type="submit"]):active, .touch li.faux-button a:not(input[type="submit"]):active, .touch input.button:not(input[type="submit"]):active, .touch .button:visited:not(input[type="submit"]):active, .touch li.faux-button a:visited:not(input[type="submit"]):active, li.faux-button .touch a:visited:not(input[type="submit"]):active {
  background-color: #ffd131;
  background-size: 100%;
  -webkit-transition: background 0s;
  -o-transition: background 0s;
  transition: background 0s; }

button:after, a.button:after, li.faux-button a:after, li.faux-button a:after, input.button:after, .button:visited:after, li.faux-button a:visited:after {
  content: '';
  display: block;
  width: 8px;
  height: 15px;
  position: absolute;
  top: 50%;
  right: 25px;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url("../../../elf-theme/assets/icons/arrow-btn-blue.svg") no-repeat center center/contain; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  button:after, a.button:after, li.faux-button a:after, li.faux-button a:after, input.button:after, .button:visited:after, li.faux-button a:visited:after {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/arrow-btn-blue.svg);
            mask-image: url(../../../elf-theme/assets/icons/arrow-btn-blue.svg);
    -webkit-mask-size: contain;
            mask-size: contain;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center center;
            mask-position: center center; } }

button:hover:after, button.active:after, button:active:after, a.button:hover:after, a.button.active:after, li.faux-button a.active:after, li.faux-button a:hover:after, a.button:active:after, li.faux-button a:active:after, li.faux-button a:hover:after, li.faux-button a.active:after, li.faux-button a:active:after, input.button:hover:after, input.button:active:after, .button:visited:hover:after, a.button.active:visited:after, li.faux-button a.active:visited:after, button.button.active:visited:after, li.faux-button a:visited:hover:after, .button:visited:active:after, li.faux-button a:visited:active:after {
  background-image: url("../../../elf-theme/assets/icons/arrow-btn-yellow.svg"); }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  button:hover:after, button.active:after, button:active:after, a.button:hover:after, a.button.active:after, li.faux-button a.active:after, li.faux-button a:hover:after, a.button:active:after, li.faux-button a:active:after, li.faux-button a:hover:after, li.faux-button a.active:after, li.faux-button a:active:after, input.button:hover:after, input.button:active:after, .button:visited:hover:after, a.button.active:visited:after, li.faux-button a.active:visited:after, button.button.active:visited:after, li.faux-button a:visited:hover:after, .button:visited:active:after, li.faux-button a:visited:active:after {
    background: #79d7be;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/arrow-btn-yellow.svg);
            mask-image: url(../../../elf-theme/assets/icons/arrow-btn-yellow.svg); } }

button.primary, button.primary:visited, button.primary:active, a.button.primary, li.faux-button a.primary, a.button.primary:visited, li.faux-button a.primary:visited, a.button.primary:active, li.faux-button a.primary:active, li.faux-button a.primary, li.faux-button a.primary:visited, li.faux-button a.primary:active, input.button.primary, input.button.primary:visited, input.button.primary:active, .button:visited.primary, li.faux-button a:visited.primary, .button:visited.primary:visited, li.faux-button a:visited.primary:visited, .button:visited.primary:active, li.faux-button a:visited.primary:active {
  background-color: #79d7be;
  color: #16404d; }

button.primary:hover, button.primary.active, button.primary:active, button.primary:visited:hover, button.primary.active:visited, button.primary:visited:active, button.primary:active:hover, button.primary.active:active, button.primary:active:active, a.button.primary:hover, a.button.primary.active, li.faux-button a.primary.active, li.faux-button a.primary:hover, a.button.primary:active, li.faux-button a.primary:active, a.button.primary:visited:hover, a.button.primary.active:visited, li.faux-button a.primary.active:visited, li.faux-button a.primary:visited:hover, a.button.primary:visited:active, li.faux-button a.primary:visited:active, a.button.primary:active:hover, a.button.primary.active:active, li.faux-button a.primary.active:active, li.faux-button a.primary:active:hover, a.button.primary:active:active, li.faux-button a.primary:active:active, li.faux-button a.primary:hover, li.faux-button a.primary.active, li.faux-button a.primary:active, li.faux-button a.primary:visited:hover, li.faux-button a.primary.active:visited, li.faux-button a.primary:visited:active, li.faux-button a.primary:active:hover, li.faux-button a.primary.active:active, li.faux-button a.primary:active:active, input.button.primary:hover, input.button.primary:active, input.button.primary:visited:hover, input.button.primary:visited:active, input.button.primary:active:hover, input.button.primary:active:active, .button:visited.primary:hover, a.button.active:visited.primary, li.faux-button a.active:visited.primary, button.button.active:visited.primary, li.faux-button a:visited.primary:hover, .button:visited.primary:active, li.faux-button a:visited.primary:active, .button:visited.primary:visited:hover, a.button.active:visited.primary:visited, li.faux-button a.active:visited.primary:visited, button.button.active:visited.primary:visited, li.faux-button a:visited.primary:visited:hover, .button:visited.primary:visited:active, li.faux-button a:visited.primary:visited:active, .button:visited.primary:active:hover, a.button.active:visited.primary:active, li.faux-button a.active:visited.primary:active, button.button.active:visited.primary:active, li.faux-button a:visited.primary:active:hover, .button:visited.primary:active:active, li.faux-button a:visited.primary:active:active {
  color: #FFF;
  background-color: #16404d; }

button.primary:hover:after, button.primary.active:after, button.primary:active:after, button.primary:visited:hover:after, button.primary.active:visited:after, button.primary:visited:active:after, button.primary:active:hover:after, button.primary.active:active:after, button.primary:active:active:after, a.button.primary:hover:after, a.button.primary.active:after, li.faux-button a.primary.active:after, li.faux-button a.primary:hover:after, a.button.primary:active:after, li.faux-button a.primary:active:after, a.button.primary:visited:hover:after, a.button.primary.active:visited:after, li.faux-button a.primary.active:visited:after, li.faux-button a.primary:visited:hover:after, a.button.primary:visited:active:after, li.faux-button a.primary:visited:active:after, a.button.primary:active:hover:after, a.button.primary.active:active:after, li.faux-button a.primary.active:active:after, li.faux-button a.primary:active:hover:after, a.button.primary:active:active:after, li.faux-button a.primary:active:active:after, li.faux-button a.primary:hover:after, li.faux-button a.primary.active:after, li.faux-button a.primary:active:after, li.faux-button a.primary:visited:hover:after, li.faux-button a.primary.active:visited:after, li.faux-button a.primary:visited:active:after, li.faux-button a.primary:active:hover:after, li.faux-button a.primary.active:active:after, li.faux-button a.primary:active:active:after, input.button.primary:hover:after, input.button.primary:active:after, input.button.primary:visited:hover:after, input.button.primary:visited:active:after, input.button.primary:active:hover:after, input.button.primary:active:active:after, .button:visited.primary:hover:after, a.button.active:visited.primary:after, li.faux-button a.active:visited.primary:after, button.button.active:visited.primary:after, li.faux-button a:visited.primary:hover:after, .button:visited.primary:active:after, li.faux-button a:visited.primary:active:after, .button:visited.primary:visited:hover:after, a.button.active:visited.primary:visited:after, li.faux-button a.active:visited.primary:visited:after, button.button.active:visited.primary:visited:after, li.faux-button a:visited.primary:visited:hover:after, .button:visited.primary:visited:active:after, li.faux-button a:visited.primary:visited:active:after, .button:visited.primary:active:hover:after, a.button.active:visited.primary:active:after, li.faux-button a.active:visited.primary:active:after, button.button.active:visited.primary:active:after, li.faux-button a:visited.primary:active:hover:after, .button:visited.primary:active:active:after, li.faux-button a:visited.primary:active:active:after {
  background-image: url("../../../elf-theme/assets/icons/arrow-btn-yellow.svg"); }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  button.primary:hover:after, button.primary.active:after, button.primary:active:after, button.primary:visited:hover:after, button.primary.active:visited:after, button.primary:visited:active:after, button.primary:active:hover:after, button.primary.active:active:after, button.primary:active:active:after, a.button.primary:hover:after, a.button.primary.active:after, li.faux-button a.primary.active:after, li.faux-button a.primary:hover:after, a.button.primary:active:after, li.faux-button a.primary:active:after, a.button.primary:visited:hover:after, a.button.primary.active:visited:after, li.faux-button a.primary.active:visited:after, li.faux-button a.primary:visited:hover:after, a.button.primary:visited:active:after, li.faux-button a.primary:visited:active:after, a.button.primary:active:hover:after, a.button.primary.active:active:after, li.faux-button a.primary.active:active:after, li.faux-button a.primary:active:hover:after, a.button.primary:active:active:after, li.faux-button a.primary:active:active:after, li.faux-button a.primary:hover:after, li.faux-button a.primary.active:after, li.faux-button a.primary:active:after, li.faux-button a.primary:visited:hover:after, li.faux-button a.primary.active:visited:after, li.faux-button a.primary:visited:active:after, li.faux-button a.primary:active:hover:after, li.faux-button a.primary.active:active:after, li.faux-button a.primary:active:active:after, input.button.primary:hover:after, input.button.primary:active:after, input.button.primary:visited:hover:after, input.button.primary:visited:active:after, input.button.primary:active:hover:after, input.button.primary:active:active:after, .button:visited.primary:hover:after, a.button.active:visited.primary:after, li.faux-button a.active:visited.primary:after, button.button.active:visited.primary:after, li.faux-button a:visited.primary:hover:after, .button:visited.primary:active:after, li.faux-button a:visited.primary:active:after, .button:visited.primary:visited:hover:after, a.button.active:visited.primary:visited:after, li.faux-button a.active:visited.primary:visited:after, button.button.active:visited.primary:visited:after, li.faux-button a:visited.primary:visited:hover:after, .button:visited.primary:visited:active:after, li.faux-button a:visited.primary:visited:active:after, .button:visited.primary:active:hover:after, a.button.active:visited.primary:active:after, li.faux-button a.active:visited.primary:active:after, button.button.active:visited.primary:active:after, li.faux-button a:visited.primary:active:hover:after, .button:visited.primary:active:active:after, li.faux-button a:visited.primary:active:active:after {
    background: #79d7be;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/arrow-btn-yellow.svg);
            mask-image: url(../../../elf-theme/assets/icons/arrow-btn-yellow.svg); } }

button.secondary, .signup__form button.button, a.button.secondary, .signup__form a.button, .signup__form li.faux-button a, li.faux-button .signup__form a, li.faux-button a.secondary, li.faux-button a.secondary, .signup__form li.faux-button a, li.faux-button .signup__form a, input.button.secondary, .signup__form input.button, .button:visited.secondary, .signup__form .button:visited, .signup__form li.faux-button a:visited, li.faux-button .signup__form a:visited, li.faux-button a:visited.secondary {
  background-color: #a6cdc6;
  color: #FFF; }

.touch button.secondary:not(input[type="submit"]):hover, .touch .signup__form button.button:not(input[type="submit"]):hover, .signup__form .touch button.button:not(input[type="submit"]):hover, .touch .signup__form button.button.active:not(input[type="submit"]), .signup__form .touch button.button.active:not(input[type="submit"]), .touch button.secondary.active:not(input[type="submit"]), .touch a.button.secondary:not(input[type="submit"]):hover, .touch .signup__form a.button:not(input[type="submit"]):hover, .signup__form .touch a.button:not(input[type="submit"]):hover, .touch .signup__form a.button.active:not(input[type="submit"]), .signup__form .touch a.button.active:not(input[type="submit"]), .touch .signup__form li.faux-button a.active:not(input[type="submit"]), .signup__form li.faux-button .touch a.active:not(input[type="submit"]), .touch li.faux-button .signup__form a.active:not(input[type="submit"]), li.faux-button .signup__form .touch a.active:not(input[type="submit"]), .touch .signup__form li.faux-button a:not(input[type="submit"]):hover, .signup__form li.faux-button .touch a:not(input[type="submit"]):hover, .touch li.faux-button .signup__form a:not(input[type="submit"]):hover, li.faux-button .signup__form .touch a:not(input[type="submit"]):hover, .touch a.button.secondary.active:not(input[type="submit"]), .touch li.faux-button a.secondary.active:not(input[type="submit"]), li.faux-button .touch a.secondary.active:not(input[type="submit"]), .touch li.faux-button a.secondary:not(input[type="submit"]):hover, li.faux-button .touch a.secondary:not(input[type="submit"]):hover, .touch li.faux-button a.secondary:not(input[type="submit"]):hover, .touch .signup__form li.faux-button a.active:not(input[type="submit"]), .signup__form .touch li.faux-button a.active:not(input[type="submit"]), .touch li.faux-button .signup__form a.active:not(input[type="submit"]), .touch .signup__form li.faux-button a:not(input[type="submit"]):hover, .signup__form .touch li.faux-button a:not(input[type="submit"]):hover, .touch li.faux-button .signup__form a:not(input[type="submit"]):hover, .touch li.faux-button a.secondary.active:not(input[type="submit"]), .touch input.button.secondary:not(input[type="submit"]):hover, .touch .signup__form input.button:not(input[type="submit"]):hover, .signup__form .touch input.button:not(input[type="submit"]):hover, .touch .button:visited.secondary:not(input[type="submit"]):hover, .touch .signup__form .button:visited:not(input[type="submit"]):hover, .signup__form .touch .button:visited:not(input[type="submit"]):hover, .touch .signup__form a.button.active:visited:not(input[type="submit"]), .signup__form .touch a.button.active:visited:not(input[type="submit"]), .touch .signup__form li.faux-button a.active:visited:not(input[type="submit"]), .signup__form li.faux-button .touch a.active:visited:not(input[type="submit"]), .touch li.faux-button .signup__form a.active:visited:not(input[type="submit"]), li.faux-button .signup__form .touch a.active:visited:not(input[type="submit"]), .touch .signup__form button.button.active:visited:not(input[type="submit"]), .signup__form .touch button.button.active:visited:not(input[type="submit"]), .touch .signup__form li.faux-button a:visited:not(input[type="submit"]):hover, .signup__form li.faux-button .touch a:visited:not(input[type="submit"]):hover, .touch li.faux-button .signup__form a:visited:not(input[type="submit"]):hover, li.faux-button .signup__form .touch a:visited:not(input[type="submit"]):hover, .touch a.button.active:visited.secondary:not(input[type="submit"]), .touch li.faux-button a.active:visited.secondary:not(input[type="submit"]), li.faux-button .touch a.active:visited.secondary:not(input[type="submit"]), .touch button.button.active:visited.secondary:not(input[type="submit"]), .touch li.faux-button a:visited.secondary:not(input[type="submit"]):hover, li.faux-button .touch a:visited.secondary:not(input[type="submit"]):hover {
  background: #16404d -o-radial-gradient(circle, transparent 1%, #16404d 1%) center/15000%;
  background: #16404d radial-gradient(circle, transparent 1%, #16404d 1%) center/15000%; }

.touch button.secondary:not(input[type="submit"]):active, .touch .signup__form button.button:not(input[type="submit"]):active, .signup__form .touch button.button:not(input[type="submit"]):active, .touch a.button.secondary:not(input[type="submit"]):active, .touch .signup__form a.button:not(input[type="submit"]):active, .signup__form .touch a.button:not(input[type="submit"]):active, .touch .signup__form li.faux-button a:not(input[type="submit"]):active, .signup__form li.faux-button .touch a:not(input[type="submit"]):active, .touch li.faux-button .signup__form a:not(input[type="submit"]):active, li.faux-button .signup__form .touch a:not(input[type="submit"]):active, .touch li.faux-button a.secondary:not(input[type="submit"]):active, li.faux-button .touch a.secondary:not(input[type="submit"]):active, .touch li.faux-button a.secondary:not(input[type="submit"]):active, .touch .signup__form li.faux-button a:not(input[type="submit"]):active, .signup__form .touch li.faux-button a:not(input[type="submit"]):active, .touch li.faux-button .signup__form a:not(input[type="submit"]):active, .touch input.button.secondary:not(input[type="submit"]):active, .touch .signup__form input.button:not(input[type="submit"]):active, .signup__form .touch input.button:not(input[type="submit"]):active, .touch .button:visited.secondary:not(input[type="submit"]):active, .touch .signup__form .button:visited:not(input[type="submit"]):active, .signup__form .touch .button:visited:not(input[type="submit"]):active, .touch .signup__form li.faux-button a:visited:not(input[type="submit"]):active, .signup__form li.faux-button .touch a:visited:not(input[type="submit"]):active, .touch li.faux-button .signup__form a:visited:not(input[type="submit"]):active, li.faux-button .signup__form .touch a:visited:not(input[type="submit"]):active, .touch li.faux-button a:visited.secondary:not(input[type="submit"]):active, li.faux-button .touch a:visited.secondary:not(input[type="submit"]):active {
  background-color: #064b94;
  background-size: 100%;
  -webkit-transition: background 0s;
  -o-transition: background 0s;
  transition: background 0s; }

button.secondary:after, .signup__form button.button:after, a.button.secondary:after, .signup__form a.button:after, .signup__form li.faux-button a:after, li.faux-button .signup__form a:after, li.faux-button a.secondary:after, li.faux-button a.secondary:after, .signup__form li.faux-button a:after, li.faux-button .signup__form a:after, input.button.secondary:after, .signup__form input.button:after, .button:visited.secondary:after, .signup__form .button:visited:after, .signup__form li.faux-button a:visited:after, li.faux-button .signup__form a:visited:after, li.faux-button a:visited.secondary:after {
  background-image: url("../../../elf-theme/assets/icons/arrow-btn-white.svg"); }

button.secondary:hover, .signup__form button.button:hover, .signup__form button.button.active, button.secondary.active, button.secondary:active, .signup__form button.button:active, a.button.secondary:hover, .signup__form a.button:hover, .signup__form a.button.active, .signup__form li.faux-button a.active, li.faux-button .signup__form a.active, .signup__form li.faux-button a:hover, li.faux-button .signup__form a:hover, a.button.secondary.active, li.faux-button a.secondary.active, li.faux-button a.secondary:hover, a.button.secondary:active, .signup__form a.button:active, .signup__form li.faux-button a:active, li.faux-button .signup__form a:active, li.faux-button a.secondary:active, li.faux-button a.secondary:hover, .signup__form li.faux-button a.active, li.faux-button .signup__form a.active, .signup__form li.faux-button a:hover, li.faux-button .signup__form a:hover, li.faux-button a.secondary.active, li.faux-button a.secondary:active, .signup__form li.faux-button a:active, li.faux-button .signup__form a:active, input.button.secondary:hover, .signup__form input.button:hover, input.button.secondary:active, .signup__form input.button:active, .button:visited.secondary:hover, .signup__form .button:visited:hover, .signup__form a.button.active:visited, .signup__form li.faux-button a.active:visited, li.faux-button .signup__form a.active:visited, .signup__form button.button.active:visited, .signup__form li.faux-button a:visited:hover, li.faux-button .signup__form a:visited:hover, a.button.active:visited.secondary, li.faux-button a.active:visited.secondary, button.button.active:visited.secondary, li.faux-button a:visited.secondary:hover, .button:visited.secondary:active, .signup__form .button:visited:active, .signup__form li.faux-button a:visited:active, li.faux-button .signup__form a:visited:active, li.faux-button a:visited.secondary:active {
  background-color: #16404d; }

button.secondary:hover:after, .signup__form button.button:hover:after, .signup__form button.button.active:after, button.secondary.active:after, button.secondary:active:after, .signup__form button.button:active:after, a.button.secondary:hover:after, .signup__form a.button:hover:after, .signup__form a.button.active:after, .signup__form li.faux-button a.active:after, li.faux-button .signup__form a.active:after, .signup__form li.faux-button a:hover:after, li.faux-button .signup__form a:hover:after, a.button.secondary.active:after, li.faux-button a.secondary.active:after, li.faux-button a.secondary:hover:after, a.button.secondary:active:after, .signup__form a.button:active:after, .signup__form li.faux-button a:active:after, li.faux-button .signup__form a:active:after, li.faux-button a.secondary:active:after, li.faux-button a.secondary:hover:after, .signup__form li.faux-button a.active:after, li.faux-button .signup__form a.active:after, .signup__form li.faux-button a:hover:after, li.faux-button .signup__form a:hover:after, li.faux-button a.secondary.active:after, li.faux-button a.secondary:active:after, .signup__form li.faux-button a:active:after, li.faux-button .signup__form a:active:after, input.button.secondary:hover:after, .signup__form input.button:hover:after, input.button.secondary:active:after, .signup__form input.button:active:after, .button:visited.secondary:hover:after, .signup__form .button:visited:hover:after, .signup__form a.button.active:visited:after, .signup__form li.faux-button a.active:visited:after, li.faux-button .signup__form a.active:visited:after, .signup__form button.button.active:visited:after, .signup__form li.faux-button a:visited:hover:after, li.faux-button .signup__form a:visited:hover:after, a.button.active:visited.secondary:after, li.faux-button a.active:visited.secondary:after, button.button.active:visited.secondary:after, li.faux-button a:visited.secondary:hover:after, .button:visited.secondary:active:after, .signup__form .button:visited:active:after, .signup__form li.faux-button a:visited:active:after, li.faux-button .signup__form a:visited:active:after, li.faux-button a:visited.secondary:active:after {
  background-image: url("../../../elf-theme/assets/icons/arrow-btn-yellow.svg"); }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  button.secondary:hover:after, .signup__form button.button:hover:after, .signup__form button.button.active:after, button.secondary.active:after, button.secondary:active:after, .signup__form button.button:active:after, a.button.secondary:hover:after, .signup__form a.button:hover:after, .signup__form a.button.active:after, .signup__form li.faux-button a.active:after, li.faux-button .signup__form a.active:after, .signup__form li.faux-button a:hover:after, li.faux-button .signup__form a:hover:after, a.button.secondary.active:after, li.faux-button a.secondary.active:after, li.faux-button a.secondary:hover:after, a.button.secondary:active:after, .signup__form a.button:active:after, .signup__form li.faux-button a:active:after, li.faux-button .signup__form a:active:after, li.faux-button a.secondary:active:after, li.faux-button a.secondary:hover:after, .signup__form li.faux-button a.active:after, li.faux-button .signup__form a.active:after, .signup__form li.faux-button a:hover:after, li.faux-button .signup__form a:hover:after, li.faux-button a.secondary.active:after, li.faux-button a.secondary:active:after, .signup__form li.faux-button a:active:after, li.faux-button .signup__form a:active:after, input.button.secondary:hover:after, .signup__form input.button:hover:after, input.button.secondary:active:after, .signup__form input.button:active:after, .button:visited.secondary:hover:after, .signup__form .button:visited:hover:after, .signup__form a.button.active:visited:after, .signup__form li.faux-button a.active:visited:after, li.faux-button .signup__form a.active:visited:after, .signup__form button.button.active:visited:after, .signup__form li.faux-button a:visited:hover:after, li.faux-button .signup__form a:visited:hover:after, a.button.active:visited.secondary:after, li.faux-button a.active:visited.secondary:after, button.button.active:visited.secondary:after, li.faux-button a:visited.secondary:hover:after, .button:visited.secondary:active:after, .signup__form .button:visited:active:after, .signup__form li.faux-button a:visited:active:after, li.faux-button .signup__form a:visited:active:after, li.faux-button a:visited.secondary:active:after {
    background: #79d7be;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/arrow-btn-yellow.svg);
            mask-image: url(../../../elf-theme/assets/icons/arrow-btn-yellow.svg); } }

button.clear, a.button.clear, li.faux-button a.clear, li.faux-button a.clear, input.button.clear, .button:visited.clear, li.faux-button a:visited.clear {
  border-radius: 0;
  text-align: center;
  color: #16404d;
  position: relative; }

button.clear:after, a.button.clear:after, li.faux-button a.clear:after, li.faux-button a.clear:after, input.button.clear:after, .button:visited.clear:after, li.faux-button a:visited.clear:after {
  content: '';
  position: absolute;
  left: 1em;
  bottom: 10px;
  height: 3px;
  width: calc(100% - 2em);
  background: #79d7be; }

button.clear:active, button.clear:hover, button.clear.active, a.button.clear:active, li.faux-button a.clear:active, a.button.clear:hover, a.button.clear.active, li.faux-button a.clear.active, li.faux-button a.clear:hover, li.faux-button a.clear:active, li.faux-button a.clear:hover, li.faux-button a.clear.active, input.button.clear:active, input.button.clear:hover, .button:visited.clear:active, li.faux-button a:visited.clear:active, .button:visited.clear:hover, a.button.active:visited.clear, li.faux-button a.active:visited.clear, button.button.active:visited.clear, li.faux-button a:visited.clear:hover {
  background: #a6cdc6;
  color: #FFF; }

button.disabled, button:disabled, a.button.disabled, li.faux-button a.disabled, a.button:disabled, li.faux-button a:disabled, li.faux-button a.disabled, li.faux-button a:disabled, input.button.disabled, input.button:disabled, .button:visited.disabled, li.faux-button a:visited.disabled, .button:visited:disabled, li.faux-button a:visited:disabled {
  background: #B1B1B1;
  color: #FFF; }

button.disabled:active, button.disabled:hover, button.disabled.active, button:disabled:active, button:disabled:hover, button.active:disabled, a.button.disabled:active, li.faux-button a.disabled:active, a.button.disabled:hover, a.button.disabled.active, li.faux-button a.disabled.active, li.faux-button a.disabled:hover, a.button:disabled:active, li.faux-button a:disabled:active, a.button:disabled:hover, a.button.active:disabled, li.faux-button a.active:disabled, li.faux-button a:disabled:hover, li.faux-button a.disabled:active, li.faux-button a.disabled:hover, li.faux-button a.disabled.active, li.faux-button a:disabled:active, li.faux-button a:disabled:hover, li.faux-button a.active:disabled, input.button.disabled:active, input.button.disabled:hover, input.button:disabled:active, input.button:disabled:hover, .button:visited.disabled:active, li.faux-button a:visited.disabled:active, .button:visited.disabled:hover, a.button.active:visited.disabled, li.faux-button a.active:visited.disabled, button.button.active:visited.disabled, li.faux-button a:visited.disabled:hover, .button:visited:disabled:active, li.faux-button a:visited:disabled:active, .button:visited:disabled:hover, a.button.active:visited:disabled, li.faux-button a.active:visited:disabled, button.button.active:visited:disabled, li.faux-button a:visited:disabled:hover {
  background: #B1B1B1;
  color: #FFF; }

button:hover, button.active, button:active, button:focus, a.button:hover, a.button.active, li.faux-button a.active, li.faux-button a:hover, a.button:active, li.faux-button a:active, a.button:focus, li.faux-button a:focus, li.faux-button a:hover, li.faux-button a.active, li.faux-button a:active, li.faux-button a:focus, input.button:hover, input.button:active, input.button:focus, .button:visited:hover, a.button.active:visited, li.faux-button a.active:visited, button.button.active:visited, li.faux-button a:visited:hover, .button:visited:active, li.faux-button a:visited:active, .button:visited:focus, li.faux-button a:visited:focus {
  color: #FFF; }

@media print, screen and (max-width: 39.99875em) {
  button, a.button, li.faux-button a, li.faux-button a, input.button, .button:visited, li.faux-button a:visited {
    width: 100%;
    text-align: left; } }

input.button, input[type="submit"] {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7.986' height='15.696' viewBox='0 0 7.986 15.696'%3E%3Cpath id='arrow' data-name='Path 5468' d='M-18095.393,3213.182l4.379,5.949-4.379,5.542' transform='translate(18097.5 -3211.084)' fill='none' stroke='%2316404d' stroke-linecap='round' stroke-linejoin='round' stroke-width='3'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: calc(100% - 25px) center;
  background-size: 8px 15px; }

input.button:hover, input.button:active, input[type="submit"]:hover, input[type="submit"]:active {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7.986' height='15.696' viewBox='0 0 7.986 15.696'%3E%3Cpath id='arrow' data-name='Path 5468' d='M-18095.393,3213.182l4.379,5.949-4.379,5.542' transform='translate(18097.5 -3211.084)' fill='none' stroke='%2379d7be' stroke-linecap='round' stroke-linejoin='round' stroke-width='3'/%3E%3C/svg%3E"); }

input.button.secondary, .signup__form input.button, input[type="submit"].secondary, .signup__form input.button[type="submit"] {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7.986' height='15.696' viewBox='0 0 7.986 15.696'%3E%3Cpath id='arrow' data-name='Path 5468' d='M-18095.393,3213.182l4.379,5.949-4.379,5.542' transform='translate(18097.5 -3211.084)' fill='none' stroke='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' stroke-width='3'/%3E%3C/svg%3E"); }

input.button.secondary:hover, .signup__form input.button:hover, input.button.secondary:active, .signup__form input.button:active, input[type="submit"].secondary:hover, .signup__form input.button[type="submit"]:hover, input[type="submit"].secondary:active, .signup__form input.button[type="submit"]:active {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7.986' height='15.696' viewBox='0 0 7.986 15.696'%3E%3Cpath id='arrow' data-name='Path 5468' d='M-18095.393,3213.182l4.379,5.949-4.379,5.542' transform='translate(18097.5 -3211.084)' fill='none' stroke='%2379d7be' stroke-linecap='round' stroke-linejoin='round' stroke-width='3'/%3E%3C/svg%3E"); }

input.button.gform_previous_button, input[type="submit"].gform_previous_button {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7.986' height='15.696' viewBox='0 0 7.986 15.696'%3E%3Cpath id='Path_5468' data-name='Path 5468' d='M-18095.393,3213.182l4.379,5.949-4.379,5.542' transform='translate(-18089.514 3226.78) rotate(180)' fill='none' stroke='%2316404d' stroke-linecap='round' stroke-linejoin='round' stroke-width='3'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: calc(6%) center;
  padding: 1.25em 1.4em 1.25em 2.8em;
  position: relative; }

@media print, screen and (min-width: 40em) {
  input.button.gform_previous_button, input[type="submit"].gform_previous_button {
    background-position: calc(19%) center; } }

input.button.gform_previous_button:hover, input.button.gform_previous_button:active, input[type="submit"].gform_previous_button:hover, input[type="submit"].gform_previous_button:active {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7.986' height='15.696' viewBox='0 0 7.986 15.696'%3E%3Cpath id='Path_5468' data-name='Path 5468' d='M-18095.393,3213.182l4.379,5.949-4.379,5.542' transform='translate(-18089.514 3226.78) rotate(180)' fill='none' stroke='%2379d7be' stroke-linecap='round' stroke-linejoin='round' stroke-width='3'/%3E%3C/svg%3E"); }

.button_row .cell {
  padding: 40px 0; }

.button__grid .grey__cell, .button__grid a .grey__cell {
  border-top: 5px solid #79d7be;
  background-color: #F4F4F4;
  color: #707070;
  padding: 20px;
  margin-bottom: 10px;
  position: relative;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

.button__grid .grey__cell ul, .button__grid a .grey__cell ul {
  margin-bottom: 20px; }

.button__grid a.grey__inner {
  text-decoration: none; }

.button__grid a.grey__inner:hover .grey__cell, .button__grid a.grey__inner.active .grey__cell, .button__grid a.grey__inner:active .grey__cell {
  -webkit-transition: all 0.7s;
  -o-transition: all 0.7s;
  transition: all 0.7s;
  background-color: #a6cdc6;
  color: #a6cdc6; }

.button__grid a.grey__inner:hover .grey__cell h3, .button__grid a.grey__inner.active .grey__cell h3, .button__grid a.grey__inner:hover .grey__cell .h5, .button__grid a.grey__inner.active .grey__cell .h5, .button__grid a.grey__inner:hover .grey__cell p, .button__grid a.grey__inner.active .grey__cell p, .button__grid a.grey__inner:hover .grey__cell a, .button__grid a.grey__inner.active .grey__cell a, .button__grid a.grey__inner:hover .grey__cell span, .button__grid a.grey__inner.active .grey__cell span, .button__grid a.grey__inner:active .grey__cell h3, .button__grid a.grey__inner:active .grey__cell .h5, .button__grid a.grey__inner:active .grey__cell p, .button__grid a.grey__inner:active .grey__cell a, .button__grid a.grey__inner:active .grey__cell span {
  color: #fff; }

.button__grid .button__simple {
  background-color: #F4F4F4;
  color: #79d7be;
  padding: 20px;
  margin-bottom: 10px;
  position: relative;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

.button__grid .button__simple h5, .button__grid .button__simple section .free_text blockquote p, section .free_text blockquote .button__grid .button__simple p {
  min-height: 55px; }

.button__grid .button__simple p {
  margin-bottom: 30px; }

.button__grid .button__simple a {
  color: #79d7be;
  position: absolute;
  bottom: 20px;
  left: 20px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

.button__grid .button__simple:hover, .button__grid a.button__simple.active, .button__grid button.button__simple.active, .button__grid .button__simple:active {
  background-color: #767175;
  color: #a6cdc6; }

.button__grid .button__simple:hover a, .button__grid a.button__simple.active a, .button__grid button.button__simple.active a, .button__grid .button__simple:active a {
  color: #a6cdc6; }

.button__grid .button__simple.details {
  text-align: center;
  padding-top: 50px;
  padding-bottom: 70px; }

.button__grid .button__simple.details h5, .button__grid .button__simple.details section .free_text blockquote p, section .free_text blockquote .button__grid .button__simple.details p {
  margin-bottom: 20px;
  min-height: unset; }

.button__grid .button__simple.details p {
  font-size: 1.125rem;
  color: #a6cdc6; }

.button__grid .button__simple.details a {
  text-align: center;
  font-weight: bold;
  position: relative;
  left: unset;
  bottom: unset; }

.button__grid .button__simple.details:hover p, .button__grid a.button__simple.details.active p, .button__grid button.button__simple.details.active p, .button__grid .button__simple.details:active p {
  color: #a6cdc6; }

.hero__button__wrap .button, .hero__button__wrap li.faux-button a, li.faux-button .hero__button__wrap a {
  margin-top: 35px; }

.button__fullwidth .button__simple {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 20px;
  border: 1px solid #79d7be; }

.button__fullwidth .button__simple p {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin: auto 0; }

.button__fullwidth .button__simple a {
  margin: auto 0 auto auto; }

.button__halfhalf .button__simple {
  padding: 0px; }

.button__halfhalf .button__simple a, .button__halfhalf .button__simple span.no-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 20px;
  width: 100%;
  text-decoration: none;
  position: relative;
  bottom: 0;
  left: 0;
  background-color: #F4F4F4;
  margin-bottom: 15px;
  color: #16404d;
  border-radius: 5px;
  -webkit-transition: all 0.25s;
  -o-transition: all 0.25s;
  transition: all 0.25s; }

.media .button__halfhalf .button__simple a, .media .button__halfhalf .button__simple span.no-link {
  background: none !important;
  padding: 0 0 20px;
  border-bottom: 2px solid #E4E4E4;
  margin-bottom: 20px; }

@media print, screen and (max-width: 39.99875em) {
  .media .button__halfhalf .button__simple a, .media .button__halfhalf .button__simple span.no-link {
    margin-bottom: 15px; } }

.media .button__halfhalf .button__simple a:hover, .media .button__halfhalf .button__simple a.active, .media .button__halfhalf .button__simple a:active, .media .button__halfhalf .button__simple span.no-link:hover, .media .button__halfhalf .button__simple span.no-link:active {
  color: #16404d; }

.button__halfhalf .button__simple a:hover, .button__halfhalf .button__simple a.active, .button__halfhalf .button__simple a:active, .button__halfhalf .button__simple span.no-link:hover, .button__halfhalf .button__simple span.no-link:active {
  color: #79d7be;
  background-color: #16404d; }

.button__halfhalf .button__simple a:hover .arrow-btn, .button__halfhalf .button__simple a.active .arrow-btn, .button__halfhalf .button__simple a:active .arrow-btn, .button__halfhalf .button__simple span.no-link:hover .arrow-btn, .button__halfhalf .button__simple span.no-link:active .arrow-btn {
  background: url(../../../elf-theme/assets/icons/btnarrow-hover.svg); }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .button__halfhalf .button__simple a:hover .arrow-btn, .button__halfhalf .button__simple a.active .arrow-btn, .button__halfhalf .button__simple a:active .arrow-btn, .button__halfhalf .button__simple span.no-link:hover .arrow-btn, .button__halfhalf .button__simple span.no-link:active .arrow-btn {
    background: #79d7be;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/btnarrow-hover.svg);
            mask-image: url(../../../elf-theme/assets/icons/btnarrow-hover.svg);
    -webkit-mask-size: 15px 15px;
            mask-size: 15px 15px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.button__halfhalf .button__simple a p, .button__halfhalf .button__simple span.no-link p {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin: auto 0;
  font-weight: 800;
  line-height: 1.2; }

.button__halfhalf .button__simple a .arrow-btn, .button__halfhalf .button__simple span.no-link .arrow-btn {
  height: 15px;
  min-width: 15px;
  position: relative;
  display: inline-block;
  margin: auto 10px auto 0;
  content: "";
  background: url(../../../elf-theme/assets/icons/btnarrow.svg);
  background-size: 15px 15px;
  text-decoration: none; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .button__halfhalf .button__simple a .arrow-btn, .button__halfhalf .button__simple span.no-link .arrow-btn {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/btnarrow.svg);
            mask-image: url(../../../elf-theme/assets/icons/btnarrow.svg);
    -webkit-mask-size: 15px 15px;
            mask-size: 15px 15px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.button__halfhalf .button__simple a .download-btn, .button__halfhalf .button__simple span.no-link .download-btn {
  height: 15px;
  width: 15px;
  position: relative;
  display: inline-block;
  margin: auto 10px auto 0;
  content: "";
  background: url(../../../elf-theme/assets/icons/download-btn@2x.png);
  background-size: 15px 15px;
  text-decoration: none; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .button__halfhalf .button__simple a .download-btn, .button__halfhalf .button__simple span.no-link .download-btn {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/download-icon.svg);
            mask-image: url(../../../elf-theme/assets/icons/download-icon.svg);
    -webkit-mask-size: 15px 15px;
            mask-size: 15px 15px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.button__halfhalf .button__simple span.no-link {
  color: #16404d; }

.button__halfhalf .button__simple span.no-link:hover, .button__halfhalf .button__simple span.no-link:active {
  color: #16404d; }

.button__halfhalf .button__simple.button__simple_election a {
  background-color: #a6cdc6; }

.button__halfhalf .button__simple.button__simple_election .election-btn {
  height: 15px;
  width: 15px;
  position: relative;
  display: inline-block;
  margin: auto 10px auto 0;
  content: "";
  background: url(../../../elf-theme/assets/icons/btnelection.svg);
  background-size: 15px 15px;
  text-decoration: none; }

.button__card {
  border-top: 14px solid #a6cdc6;
  border-bottom: 1px solid #e4e5e9;
  padding: 10px 0px; }

.button__card a {
  text-decoration: none; }

.button__card a h5:after, .button__card a section .free_text blockquote p:after, section .free_text blockquote .button__card a p:after {
  position: relative;
  left: 10px;
  display: inline-block;
  content: "";
  background: url(../../../elf-theme/assets/icons/arrow-next@2x.png);
  background-size: 9px 13px;
  width: 9px;
  height: 13px;
  text-decoration: none; }

@media print, screen and (max-width: 63.99875em) {
  .breadcrumb-wrap + .dropdown__tableofcontent {
    top: 135px; } }

.dropdown__tableofcontent {
  min-width: 220px;
  background-color: #16404d;
  color: #FFF;
  border-radius: 0px 0px 5px 5px;
  margin-left: 3.6rem;
  position: fixed;
  top: 128px;
  z-index: 996;
  padding: 10px 30px;
  display: none; }

.dropdown__tableofcontent.dropdown__tableofcontent_mobile {
  display: none !important; }

@media print, screen and (max-width: 63.99875em) {
  .dropdown__tableofcontent {
    display: none; }
  .dropdown__tableofcontent.dropdown__tableofcontent_mobile {
    display: block !important;
    margin-left: 0px;
    position: absolute;
    top: 0px;
    min-width: calc(100% - 1.25rem); } }

@media print, screen and (max-width: 63.99875em) and (max-width: 39.99875em) {
  .dropdown__tableofcontent.dropdown__tableofcontent_mobile {
    min-width: calc(100% - 1.5rem); } }

@media print, screen and (max-width: 63.99875em) {
  .dropdown__tableofcontent.dropdown__tableofcontent_mobile .dropdown-content {
    min-width: 100%; } }

.dropdown__tableofcontent p {
  font-weight: 700;
  margin: 0px; }

.dropdown__tableofcontent p:after {
  content: '';
  width: 15px;
  height: 25px;
  background: url(../../../elf-theme/assets/icons/down-arrow-yellow.svg) no-repeat center center/contain;
  float: right;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .dropdown__tableofcontent p:after {
    background: #79d7be;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/down-arrow-yellow.svg);
            mask-image: url(../../../elf-theme/assets/icons/down-arrow-yellow.svg);
    -webkit-mask-size: contain;
            mask-size: contain;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center center;
            mask-position: center center; } }

.dropdown__tableofcontent .dropdown-content {
  display: none;
  position: absolute;
  left: 0px;
  background-color: #16404d;
  color: #FFF;
  min-width: 220px;
  max-height: 50vh;
  overflow: scroll;
  -webkit-box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  padding: 15px 10px;
  z-index: 1;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px; }

.dropdown__tableofcontent .dropdown-content ul {
  margin: 0px;
  list-style: none; }

.dropdown__tableofcontent .dropdown-content ul li {
  padding: 10px 0px 10px 20px;
  border-bottom: 2px solid rgba(228, 228, 228, 0.2); }

.dropdown__tableofcontent .dropdown-content ul li a {
  color: #fff;
  text-decoration: none;
  font-size: 16px;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s; }

.dropdown__tableofcontent .dropdown-content ul li:before {
  content: '';
  width: 13px;
  height: 25px;
  float: left;
  margin-left: -19px;
  background: url(../../../elf-theme/assets/icons/tbc_white.svg) no-repeat center center/contain;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .dropdown__tableofcontent .dropdown-content ul li:before {
    background: #FFF;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/tbc_white.svg);
            mask-image: url(../../../elf-theme/assets/icons/tbc_white.svg);
    -webkit-mask-size: contain;
            mask-size: contain;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center center;
            mask-position: center center; } }

.dropdown__tableofcontent .dropdown-content ul li:hover a, .dropdown__tableofcontent .dropdown-content ul li:active a {
  color: #79d7be; }

.dropdown__tableofcontent .dropdown-content ul li:hover:before, .dropdown__tableofcontent .dropdown-content ul li:active:before {
  background: url(../../../elf-theme/assets/icons/tbc_yellow.svg) no-repeat center center/contain; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .dropdown__tableofcontent .dropdown-content ul li:hover:before, .dropdown__tableofcontent .dropdown-content ul li:active:before {
    background: #79d7be;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/tbc_yellow.svg);
            mask-image: url(../../../elf-theme/assets/icons/tbc_yellow.svg); } }

.dropdown__tableofcontent .dropdown-content.dropdown-content_close {
  display: block; }

@media only screen and (hover: hover) and (min-width: 1025px) {
  .dropdown__tableofcontent:hover p:after, a.dropdown__tableofcontent.active p:after, button.dropdown__tableofcontent.active p:after, .dropdown__tableofcontent:active p:after {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg); } }

@media only screen and (hover: hover) and (min-width: 1025px) {
  .dropdown__tableofcontent:hover .dropdown-content, a.dropdown__tableofcontent.active .dropdown-content, button.dropdown__tableofcontent.active .dropdown-content, .dropdown__tableofcontent:active .dropdown-content {
    display: block; } }

.dropdown__tableofcontent.toc_show {
  display: block; }

.dropdown__tableofcontent ul.dropdown-content_close {
  display: block; }

.dropdown__tableofcontent.dropdown__tableofcontent_rotate p:after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg); }

body.microsite.dark-brand-colours .button.primary, body.microsite.dark-brand-colours li.faux-button a.primary, li.faux-button body.microsite.dark-brand-colours a.primary {
  color: white;
  background-color: #16404d;
  border: 2px solid #79d7be; }

body.microsite.dark-brand-colours .button.primary:after, body.microsite.dark-brand-colours li.faux-button a.primary:after, li.faux-button body.microsite.dark-brand-colours a.primary:after {
  background-color: white; }

body.microsite.dark-brand-colours .button.primary:hover, body.microsite.dark-brand-colours a.button.primary.active, body.microsite.dark-brand-colours li.faux-button a.primary.active, li.faux-button body.microsite.dark-brand-colours a.primary.active, body.microsite.dark-brand-colours button.button.primary.active, body.microsite.dark-brand-colours li.faux-button a.primary:hover, li.faux-button body.microsite.dark-brand-colours a.primary:hover {
  background-color: #79d7be;
  border: 2px solid #16404d; }

body.microsite.dark-brand-colours .button.secondary, body.microsite.dark-brand-colours .signup__form .button, .signup__form body.microsite.dark-brand-colours .button, body.microsite.dark-brand-colours .signup__form li.faux-button a, .signup__form li.faux-button body.microsite.dark-brand-colours a, body.microsite.dark-brand-colours li.faux-button .signup__form a, li.faux-button .signup__form body.microsite.dark-brand-colours a, body.microsite.dark-brand-colours li.faux-button a.secondary, li.faux-button body.microsite.dark-brand-colours a.secondary {
  color: black;
  background-color: transparent;
  border: 2px solid #79d7be; }

body.microsite.dark-brand-colours .button.secondary:hover, body.microsite.dark-brand-colours .signup__form .button:hover, .signup__form body.microsite.dark-brand-colours .button:hover, body.microsite.dark-brand-colours .signup__form a.button.active, .signup__form body.microsite.dark-brand-colours a.button.active, body.microsite.dark-brand-colours .signup__form li.faux-button a.active, .signup__form li.faux-button body.microsite.dark-brand-colours a.active, body.microsite.dark-brand-colours li.faux-button .signup__form a.active, li.faux-button .signup__form body.microsite.dark-brand-colours a.active, body.microsite.dark-brand-colours .signup__form button.button.active, .signup__form body.microsite.dark-brand-colours button.button.active, body.microsite.dark-brand-colours .signup__form li.faux-button a:hover, .signup__form li.faux-button body.microsite.dark-brand-colours a:hover, body.microsite.dark-brand-colours li.faux-button .signup__form a:hover, li.faux-button .signup__form body.microsite.dark-brand-colours a:hover, body.microsite.dark-brand-colours a.button.secondary.active, body.microsite.dark-brand-colours li.faux-button a.secondary.active, li.faux-button body.microsite.dark-brand-colours a.secondary.active, body.microsite.dark-brand-colours button.button.secondary.active, body.microsite.dark-brand-colours li.faux-button a.secondary:hover, li.faux-button body.microsite.dark-brand-colours a.secondary:hover {
  color: white;
  background-color: #16404d; }

body.microsite.dark-brand-colours .button.secondary:hover:after, body.microsite.dark-brand-colours .signup__form .button:hover:after, .signup__form body.microsite.dark-brand-colours .button:hover:after, body.microsite.dark-brand-colours .signup__form a.button.active:after, .signup__form body.microsite.dark-brand-colours a.button.active:after, body.microsite.dark-brand-colours .signup__form li.faux-button a.active:after, .signup__form li.faux-button body.microsite.dark-brand-colours a.active:after, body.microsite.dark-brand-colours li.faux-button .signup__form a.active:after, li.faux-button .signup__form body.microsite.dark-brand-colours a.active:after, body.microsite.dark-brand-colours .signup__form button.button.active:after, .signup__form body.microsite.dark-brand-colours button.button.active:after, body.microsite.dark-brand-colours .signup__form li.faux-button a:hover:after, .signup__form li.faux-button body.microsite.dark-brand-colours a:hover:after, body.microsite.dark-brand-colours li.faux-button .signup__form a:hover:after, li.faux-button .signup__form body.microsite.dark-brand-colours a:hover:after, body.microsite.dark-brand-colours a.button.secondary.active:after, body.microsite.dark-brand-colours li.faux-button a.secondary.active:after, li.faux-button body.microsite.dark-brand-colours a.secondary.active:after, body.microsite.dark-brand-colours button.button.secondary.active:after, body.microsite.dark-brand-colours li.faux-button a.secondary:hover:after, li.faux-button body.microsite.dark-brand-colours a.secondary:hover:after {
  background-color: black; }

body.microsite.light-brand-colours .button.primary, body.microsite.light-brand-colours li.faux-button a.primary, li.faux-button body.microsite.light-brand-colours a.primary {
  color: black;
  background-color: #a6cdc6;
  border: 2px solid #16404d; }

body.microsite.light-brand-colours .button.primary:after, body.microsite.light-brand-colours li.faux-button a.primary:after, li.faux-button body.microsite.light-brand-colours a.primary:after {
  background-color: black; }

body.microsite.light-brand-colours .button.primary:hover, body.microsite.light-brand-colours a.button.primary.active, body.microsite.light-brand-colours li.faux-button a.primary.active, li.faux-button body.microsite.light-brand-colours a.primary.active, body.microsite.light-brand-colours button.button.primary.active, body.microsite.light-brand-colours li.faux-button a.primary:hover, li.faux-button body.microsite.light-brand-colours a.primary:hover {
  background-color: #16404d;
  border: 2px solid #a6cdc6; }

body.microsite.light-brand-colours .button.secondary, body.microsite.light-brand-colours .signup__form .button, .signup__form body.microsite.light-brand-colours .button, body.microsite.light-brand-colours .signup__form li.faux-button a, .signup__form li.faux-button body.microsite.light-brand-colours a, body.microsite.light-brand-colours li.faux-button .signup__form a, li.faux-button .signup__form body.microsite.light-brand-colours a, body.microsite.light-brand-colours li.faux-button a.secondary, li.faux-button body.microsite.light-brand-colours a.secondary {
  color: white;
  background-color: transparent;
  border: 2px solid #79d7be; }

body.microsite.light-brand-colours .button.secondary:after, body.microsite.light-brand-colours .signup__form .button:after, .signup__form body.microsite.light-brand-colours .button:after, body.microsite.light-brand-colours .signup__form li.faux-button a:after, .signup__form li.faux-button body.microsite.light-brand-colours a:after, body.microsite.light-brand-colours li.faux-button .signup__form a:after, li.faux-button .signup__form body.microsite.light-brand-colours a:after, body.microsite.light-brand-colours li.faux-button a.secondary:after, li.faux-button body.microsite.light-brand-colours a.secondary:after {
  background-color: white; }

body.microsite.light-brand-colours .button.secondary:hover, body.microsite.light-brand-colours .signup__form .button:hover, .signup__form body.microsite.light-brand-colours .button:hover, body.microsite.light-brand-colours .signup__form a.button.active, .signup__form body.microsite.light-brand-colours a.button.active, body.microsite.light-brand-colours .signup__form li.faux-button a.active, .signup__form li.faux-button body.microsite.light-brand-colours a.active, body.microsite.light-brand-colours li.faux-button .signup__form a.active, li.faux-button .signup__form body.microsite.light-brand-colours a.active, body.microsite.light-brand-colours .signup__form button.button.active, .signup__form body.microsite.light-brand-colours button.button.active, body.microsite.light-brand-colours .signup__form li.faux-button a:hover, .signup__form li.faux-button body.microsite.light-brand-colours a:hover, body.microsite.light-brand-colours li.faux-button .signup__form a:hover, li.faux-button .signup__form body.microsite.light-brand-colours a:hover, body.microsite.light-brand-colours a.button.secondary.active, body.microsite.light-brand-colours li.faux-button a.secondary.active, li.faux-button body.microsite.light-brand-colours a.secondary.active, body.microsite.light-brand-colours button.button.secondary.active, body.microsite.light-brand-colours li.faux-button a.secondary:hover, li.faux-button body.microsite.light-brand-colours a.secondary:hover {
  color: #000;
  background-color: #a6cdc6; }

body.microsite.light-brand-colours .button.secondary:hover:after, body.microsite.light-brand-colours .signup__form .button:hover:after, .signup__form body.microsite.light-brand-colours .button:hover:after, body.microsite.light-brand-colours .signup__form a.button.active:after, .signup__form body.microsite.light-brand-colours a.button.active:after, body.microsite.light-brand-colours .signup__form li.faux-button a.active:after, .signup__form li.faux-button body.microsite.light-brand-colours a.active:after, body.microsite.light-brand-colours li.faux-button .signup__form a.active:after, li.faux-button .signup__form body.microsite.light-brand-colours a.active:after, body.microsite.light-brand-colours .signup__form button.button.active:after, .signup__form body.microsite.light-brand-colours button.button.active:after, body.microsite.light-brand-colours .signup__form li.faux-button a:hover:after, .signup__form li.faux-button body.microsite.light-brand-colours a:hover:after, body.microsite.light-brand-colours li.faux-button .signup__form a:hover:after, li.faux-button .signup__form body.microsite.light-brand-colours a:hover:after, body.microsite.light-brand-colours a.button.secondary.active:after, body.microsite.light-brand-colours li.faux-button a.secondary.active:after, li.faux-button body.microsite.light-brand-colours a.secondary.active:after, body.microsite.light-brand-colours button.button.secondary.active:after, body.microsite.light-brand-colours li.faux-button a.secondary:hover:after, li.faux-button body.microsite.light-brand-colours a.secondary:hover:after {
  background-color: white; }

img.image {
  margin-bottom: 10px; }

@media only print {
  img {
    page-break-before: auto !important;
    page-break-after: auto !important;
    page-break-inside: avoid !important; } }

img.alignleft {
  float: left;
  margin-right: 20px; }

img.alignright {
  float: right;
  margin-left: 20px; }

img.aligncenter {
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

@media print, screen and (max-width: 63.99875em) {
  img.aligncenter, img.alignright, img.alignleft {
    float: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 20px auto; } }

.factsheet_banner_container img {
  height: clamp(350px, 400px, 500px);
  width: auto;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center; }

img.article_image {
  width: 100%;
  height: auto; }

.caption-wrap {
  padding-top: 10px;
  padding-bottom: 0px; }

@media print, screen and (min-width: 40em) {
  .caption-wrap {
    padding-top: 20px;
    padding-bottom: 20px; } }

ul.page-numbers {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

ul.page-numbers a, ul.page-numbers li.current, ul.page-numbers li.ellipsis {
  text-decoration: none; }

ul.page-numbers a:hover, ul.page-numbers a.active, ul.page-numbers li.current:hover, ul.page-numbers li.ellipsis:hover {
  color: #16404d; }

ul.page-numbers li {
  display: inline-block;
  height: 31px; }

ul.page-numbers li .current {
  border-bottom: 4px solid #a6cdc6; }

ul.page-numbers .prev:after, ul.page-numbers .next:after {
  content: "";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 11px 17px;
  width: 11px;
  height: 17px; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  ul.page-numbers .prev:after, ul.page-numbers .next:after {
    -webkit-mask-size: contain;
            mask-size: contain;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center center;
            mask-position: center center; } }

ul.page-numbers .prev:after {
  background-image: url(../../../elf-theme/assets/icons/prev-btn.svg); }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  ul.page-numbers .prev:after {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/prev-btn.svg);
            mask-image: url(../../../elf-theme/assets/icons/prev-btn.svg); } }

ul.page-numbers .next:after {
  background-image: url(../../../elf-theme/assets/icons/next-btn.svg); }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  ul.page-numbers .next:after {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/next-btn.svg);
            mask-image: url(../../../elf-theme/assets/icons/next-btn.svg); } }

.search_wrapper {
  background-color: #F4F4F4 !important; }

.search_wrapper .search input, .search_wrapper .search input:focus {
  margin-bottom: 20px;
  color: #767175;
  background-image: none !important;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none; }

.search_wrapper .search ::-webkit-input-placeholder {
  font-size: 1.25rem;
  color: #767175;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none; }

.search_wrapper .search ::-moz-placeholder {
  font-size: 1.25rem;
  color: #767175;
  border: none;
  box-shadow: none; }

.search_wrapper .search :-ms-input-placeholder {
  font-size: 1.25rem;
  color: #767175;
  border: none;
  box-shadow: none; }

.search_wrapper .search ::-ms-input-placeholder {
  font-size: 1.25rem;
  color: #767175;
  border: none;
  box-shadow: none; }

.search_wrapper .search input, .search_wrapper .search select, .search_wrapper .search ::placeholder {
  font-size: 1.25rem;
  color: #767175;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none; }

.search_wrapper .search div.search__input {
  position: relative; }

.search_wrapper .search div.search__input::after {
  content: "";
  background: url(../../../elf-theme/assets/icons/search-icon-grey.svg) no-repeat center center/contain;
  height: 20px;
  width: 20px;
  position: absolute;
  top: 10px;
  right: 10px; }

.search_wrapper .search .search__filters {
  display: block; }

@media print, screen and (min-width: 40em) {
  .search_wrapper .search .search__filters {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }

.search_wrapper .search .search__filters select {
  background-image: url(../../../elf-theme/assets/icons/down-arrow.svg);
  background-size: 15px 8px; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .search_wrapper .search .search__filters select {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/down-arrow.svg);
            mask-image: url(../../../elf-theme/assets/icons/down-arrow.svg);
    -webkit-mask-size: 15px 8px;
            mask-size: 15px 8px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .search_wrapper .search .search__filters label {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-right: 20px; }
  .search_wrapper .search .search__filters label.last {
    margin-right: 0; } }

#my-custom-searchform {
  position: relative; }

#my-custom-searchform input[type=text] {
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none; }

#my-custom-searchform select {
  padding-top: 0;
  padding-bottom: 0;
  width: 49%;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  border: none;
  background-image: none; }

#my-custom-searchform select:nth-child(odd) {
  float: right; }

#my-custom-searchform input[type=submit] {
  position: absolute;
  right: 0;
  height: 40px;
  width: 40px;
  text-indent: -99999px;
  cursor: pointer;
  text-decoration: none;
  border: none;
  z-index: 9999999999999;
  background: url(../../../elf-theme/assets/icons/search-icon-red.svg) no-repeat center center;
  top: 0px; }

.search-form {
  margin-bottom: 0 !important; }

.search-form input[type=search]:active, .search-form input[type=search]:focus {
  border: none;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  border-bottom: 4px solid #CE003A; }

.search_results .results_total {
  margin-top: 20px; }

@media print, screen and (min-width: 40em) {
  .search_results .results_total {
    margin-top: 50px; } }

.search_results .results_info {
  border-radius: 0; }

.search_results .pink_text {
  color: #16404d;
  font-family: "Avenir LT W01_85 Heavy1475544"; }

.search_results ul {
  list-style: none;
  margin: 0px !important; }

.search_results ul li {
  list-style: none;
  border-left: 3px solid #16404d;
  padding-left: 1rem; }

.search_results ul li h2 {
  margin-top: 60px; }

.search_results ul li h5, .search_results ul li section .free_text blockquote p, section .free_text blockquote .search_results ul li p {
  margin-bottom: 8px; }

.search_results ul li p {
  margin-bottom: 20px; }

.search_results ul li a {
  font-weight: 800; }

.search_results ul li a::after {
  display: inline-block;
  margin-left: 10px;
  height: 13px;
  width: 9px;
  content: "";
  background: url(../../../elf-theme/assets/icons/arrow-btn-blue.svg) no-repeat;
  background-size: 9px 13px;
  text-decoration: none;
  vertical-align: middle; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .search_results ul li a::after {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/arrow-btn-blue.svg);
            mask-image: url(../../../elf-theme/assets/icons/arrow-btn-blue.svg);
    -webkit-mask-size: 9px 13px;
            mask-size: 9px 13px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.search_results ul li:before {
  content: none !important; }

#searchform.search_desktop {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

#searchform.search_desktop input[type='text'] {
  margin: 0; }

#searchform.search_desktop #search-lang {
  border-radius: 23px;
  padding: 0.7rem 2rem 0.7rem 1rem;
  margin: 0 0 0 20px;
  background-position: calc(100% - 15px) center; }

@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  #searchform.search_desktop {
    margin-bottom: 20px; } }

@media print, screen and (max-width: 39.99875em) {
  #searchform.search_desktop {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  #searchform.search_desktop input[type='text'] {
    margin-bottom: 20px; }
  #searchform.search_desktop #search-lang {
    margin: 0 0 20px 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content; } }

/** Lists */
section .cell ul:not(.pagination):not(ul.page-numbers):not(.page-numbers):not(.tabs):not(.accordion):not(.social--list):not(.sidebar_list):not(.breadcrumb--navigation):not(.dashed):not(.gform_fields) {
  list-style: none;
  /* Remove default bullets */
  margin-left: 24px;
  margin-right: 20px; }

section .cell ul:not(.pagination):not(ul.page-numbers):not(.page-numbers):not(.tabs):not(.accordion):not(.social--list):not(.sidebar_list):not(.breadcrumb--navigation):not(.dashed):not(.gform_fields) li::before {
  content: "\2022";
  /* Add content: \2022 is the CSS Code/unicode for a bullet */
  color: #a6cdc6;
  /* Change the color */
  font-weight: bold;
  /* If you want it to be bold */
  display: inline-block;
  /* Needed to add space between the bullet and the text */
  width: 1.5em;
  /* Also needed for space (tweak if needed) */
  margin-left: -1.5em;
  /* Also needed for space (tweak if needed) */ }

section .cell ul.accordion li::before {
  content: none; }

section .free_text blockquote {
  position: relative;
  margin: 40px 0; }

section .free_text blockquote:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 12px;
  height: 100%;
  background: #16404d;
  border-radius: 6px; }

/** Tabs */
.tabs {
  background-color: transparent;
  border: none; }

.tabs li.tabs-title {
  margin-right: 4px; }

.tabs li.tabs-title > a {
  color: #79d7be;
  font-size: 1rem;
  text-decoration: none;
  text-transform: uppercase;
  background-color: #F4F4F4; }

.tabs li.tabs-title > a[aria-selected=true] {
  background: #a6cdc6;
  color: #a6cdc6; }

.tabs li.tabs-title a:focus {
  border-radius: 0;
  outline: none;
  -webkit-box-shadow: 0 0 2px #a6cdc6;
          box-shadow: 0 0 2px #a6cdc6; }

.tabs-content {
  border: none; }

.tabs-content .tabs-panel {
  padding: 40px 0;
  margin: 0; }

/** Typography */
h1, h2, h3, h4, h5, section .free_text blockquote p, h6, .updated .date, .h1, .h2, .h3, .h4, .h5, .h6 {
  font-synthesis: none !important; }

@font-face {
  font-family: "Avenir LT W01_55 Roman1475520";
  src: url("../../../elf-theme/assets/fonts/1475520/b290e775-e0f9-4980-914b-a4c32a5e3e36.woff2") format("woff2"), url("../../../elf-theme/assets/fonts/1475520/4b978f72-bb48-46c3-909a-2a8cd2f8819c.woff") format("woff"); }

@font-face {
  font-family: "Avenir LT W01_65 Medium1475532";
  src: url("../../../elf-theme/assets/fonts/1475532/17b90ef5-b63f-457b-a981-503bb7afe3c0.woff2") format("woff2"), url("../../../elf-theme/assets/fonts/1475532/c9aeeabd-dd65-491d-b4be-3e0db9ae47a0.woff") format("woff"); }

@font-face {
  font-family: "Avenir LT W01_85 Heavy1475544";
  src: url("../../../elf-theme/assets/fonts/1475544/d513e15e-8f35-4129-ad05-481815e52625.woff2") format("woff2"), url("../../../elf-theme/assets/fonts/1475544/61bd362e-7162-46bd-b67e-28f366c4afbe.woff") format("woff"); }

@font-face {
  font-family: "Avenir LT W01_95 Black1475556";
  src: url("../../../elf-theme/assets/fonts/1475556/c78eb7af-a1c8-4892-974b-52379646fef4.woff2") format("woff2"), url("..fonts/1475556/75b36c58-2a02-4057-a537-09af0832ae46.woff") format("woff"); }

body {
  font-size: 1rem;
  line-height: 1.4;
  letter-spacing: 0;
  font-weight: 400; }

.subheading {
  font-family: "Avenir LT W01_85 Heavy1475544";
  font-size: 0.875rem;
  line-height: 1.45;
  letter-spacing: 0.275em;
  margin-bottom: 8px;
  text-transform: uppercase;
  color: #a6cdc6; }

.standard-link {
  font-size: 1.125rem;
  text-decoration: none;
  border-bottom: 3px solid #79d7be;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  color: #16404d; }

.standard-link:hover, a.standard-link.active, button.standard-link.active {
  border-bottom: 3px solid #4595E6;
  color: #16404d; }

p.large {
  font-size: 1.25rem;
  margin-bottom: 1.25em; }

h1, h2, h3, h4, h5, section .free_text blockquote p, h6, .updated .date {
  font-weight: normal; }

b, strong, .card.card__pushdown.airlines .content-wrap .accordion-content h1, .card.card__pushdown.airlines .content-wrap .accordion-content h2, .card.card__pushdown.airlines .content-wrap .accordion-content h3, .card.card__pushdown.airlines .content-wrap .accordion-content h4, .card.card__pushdown.airlines .content-wrap .accordion-content h5, .card.card__pushdown.airlines .content-wrap .accordion-content section .free_text blockquote p, section .free_text blockquote .card.card__pushdown.airlines .content-wrap .accordion-content p, .card.card__pushdown.airlines .content-wrap .accordion-content h6, .card.card__pushdown.airlines .content-wrap .accordion-content .updated .date, .updated .card.card__pushdown.airlines .content-wrap .accordion-content .date {
  font-family: "Avenir LT W01_85 Heavy1475544", Helvetica, Roboto, Arial, sans-serif;
  font-weight: bold; }

html {
  margin-top: 0 !important; }

* html body {
  margin-top: 0 !important; }

/** Site Header  */
.site-header {
  position: relative;
  max-width: 100%;
  width: 100%; }

.site-header > .grid-container {
  height: 100%; }

.site-header .header-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
      align-content: center;
  min-height: 55px; }

.site-header a {
  font-weight: normal; }

.site-header .hamburger {
  position: absolute;
  top: 10px;
  right: 16px; }

.site-header .hamburger .hamburger-box {
  height: 10px; }

.site-header .hamburger .hamb_close {
  color: #16404d;
  font-size: 14px;
  opacity: 0;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

.site-header .hamburger.is-active .hamb_close {
  opacity: 1; }

.site-header .hamburger-inner, .site-header .hamburger-inner:after, .site-header .hamburger-inner:before, .site-header .hamburger.is-active .hamburger-inner:after, .site-header .hamburger.is-active .hamburger-inner:before {
  background-color: #16404d; }

.site-header .icon {
  display: block;
  width: 31px;
  height: 31px; }

.site-header .icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center left;
     object-position: center left; }

@media print, screen and (min-width: 64em) {
  .site-header .icon {
    width: 100%;
    height: 44px;
    margin: 5px 16px 5px 0; } }

.site-header .icon span {
  position: absolute;
  left: -99999px; }

.site-header .icon.icon-small {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  -webkit-transition: width 0.25s, height 0.25s;
  -o-transition: width 0.25s, height 0.25s;
  transition: width 0.25s, height 0.25s;
  width: 30px;
  height: 30px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  margin-top: 0;
  margin-bottom: 0; }

@media print, screen and (max-width: 63.99875em) {
  .site-header .icon {
    width: 40px; } }

.site-header .search__wrapper {
  width: 100%;
  padding-left: 24px; }

@media print, screen and (max-width: 39.99875em) {
  .site-header .search__wrapper {
    width: 85%;
    padding-left: 10px;
    margin: 0 auto; } }

.site-header .search__wrapper form {
  position: relative; }

.site-header .search__wrapper input[type="text"] {
  margin: 0px;
  padding: 4px 20px;
  border: 1px solid #e4e5e9;
  border-radius: 35px;
  -webkit-box-shadow: none;
          box-shadow: none;
  font-family: "Avenir LT W01_55 Roman1475520";
  background-color: #F4F4F4; }

@media print, screen and (min-width: 64em) {
  .site-header .search__wrapper input[type="text"] {
    padding: 24px 20px; } }

.site-header .menu {
  display: none;
  width: 100%;
  text-align: center; }

.site-header .menu li {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

@media print, screen and (min-width: 40em) {
  .site-header .menu li:first-child {
    padding-left: 0px; }
  .site-header .menu li:last-child {
    padding-right: 0px; } }

.site-header .menu li:not(.faux-button) a, .site-header .menu li:not(.faux-button) h6, .site-header .menu li:not(.faux-button) .updated .date, .updated .site-header .menu li:not(.faux-button) .date {
  display: block;
  width: 100%;
  padding: 16px 0 5px;
  font-size: 1.125rem;
  font-weight: 400;
  border-bottom: 4px solid transparent;
  margin-bottom: 0;
  line-height: 1; }

.site-header .menu li:not(.faux-button) a:hover, .site-header .menu li:not(.faux-button) a.active {
  color: #a6cdc6;
  text-decoration: none;
  border-bottom-color: #79d7be; }

.site-header .menu li:not(.faux-button) a.search--link {
  width: 20px;
  color: transparent !important;
  background: url(../../../elf-theme/assets/icons/search-icon.svg) no-repeat center right;
  text-indent: -99999px;
  opacity: 0;
  height: 0; }

.site-header .menu li:not(.faux-button) a.section-landing {
  padding: 0px 0px 5px 0px;
  border-bottom: 0; }

.site-header .menu li:not(.faux-button) a.section-landing:hover, .site-header .menu li:not(.faux-button) a.section-landing.active {
  text-decoration: underline; }

.site-header .menu.secondary, .site-header .signup__form .menu.button, .signup__form .site-header .menu.button, .site-header .signup__form li.faux-button a.menu, .signup__form li.faux-button .site-header a.menu, .site-header li.faux-button .signup__form a.menu, li.faux-button .signup__form .site-header a.menu {
  margin: 10px 0 17px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.site-header .menu.secondary > li, .site-header .signup__form .menu.button > li, .signup__form .site-header .menu.button > li, .site-header .signup__form li.faux-button a.menu > li, .signup__form li.faux-button .site-header a.menu > li, .site-header li.faux-button .signup__form a.menu > li, li.faux-button .signup__form .site-header a.menu > li {
  position: relative;
  padding: 0 21px; }

.site-header .menu.secondary > li:nth-child(-n+2), .site-header .signup__form .menu.button > li:nth-child(-n+2), .signup__form .site-header .menu.button > li:nth-child(-n+2), .site-header .signup__form li.faux-button a.menu > li:nth-child(-n+2), .signup__form li.faux-button .site-header a.menu > li:nth-child(-n+2), .site-header li.faux-button .signup__form a.menu > li:nth-child(-n+2), li.faux-button .signup__form .site-header a.menu > li:nth-child(-n+2) {
  border-right: 1px solid #e4e5e9; }

.site-header .menu.secondary > li:nth-last-child(2), .site-header .signup__form .menu.button > li:nth-last-child(2), .signup__form .site-header .menu.button > li:nth-last-child(2), .site-header .signup__form li.faux-button a.menu > li:nth-last-child(2), .signup__form li.faux-button .site-header a.menu > li:nth-last-child(2), .site-header li.faux-button .signup__form a.menu > li:nth-last-child(2), li.faux-button .signup__form .site-header a.menu > li:nth-last-child(2) {
  padding-right: 0px;
  border: none !important; }

.site-header .menu.secondary > li:last-child, .site-header .signup__form .menu.button > li:last-child, .signup__form .site-header .menu.button > li:last-child, .site-header .signup__form li.faux-button a.menu > li:last-child, .signup__form li.faux-button .site-header a.menu > li:last-child, .site-header li.faux-button .signup__form a.menu > li:last-child, li.faux-button .signup__form .site-header a.menu > li:last-child {
  display: none; }

.site-header .menu.secondary > li:not(.faux-button) a, .site-header .signup__form .menu.button > li:not(.faux-button) a, .signup__form .site-header .menu.button > li:not(.faux-button) a, .site-header .signup__form li.faux-button a.menu > li:not(.faux-button) a, .signup__form li.faux-button .site-header a.menu > li:not(.faux-button) a, .site-header li.faux-button .signup__form a.menu > li:not(.faux-button) a, li.faux-button .signup__form .site-header a.menu > li:not(.faux-button) a {
  font-size: 1rem;
  border-bottom: none;
  padding: 0; }

.site-header .menu.secondary > li.languages, .site-header .signup__form .menu.button > li.languages, .signup__form .site-header .menu.button > li.languages, .site-header .signup__form li.faux-button a.menu > li.languages, .signup__form li.faux-button .site-header a.menu > li.languages, .site-header li.faux-button .signup__form a.menu > li.languages, li.faux-button .signup__form .site-header a.menu > li.languages {
  border: 0;
  padding: 0; }

.site-header .menu.secondary > li.languages > a, .site-header .signup__form .menu.button > li.languages > a, .signup__form .site-header .menu.button > li.languages > a, .site-header .signup__form li.faux-button a.menu > li.languages > a, .signup__form li.faux-button .site-header a.menu > li.languages > a, .site-header li.faux-button .signup__form a.menu > li.languages > a, li.faux-button .signup__form .site-header a.menu > li.languages > a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  overflow: hidden;
  background: url(../../../elf-theme/assets/icons/globe.svg) no-repeat center center/contain;
  text-indent: -9999px;
  width: 50px;
  height: 16px; }

.site-header .menu.secondary > li.languages > a:after, .site-header .signup__form .menu.button > li.languages > a:after, .signup__form .site-header .menu.button > li.languages > a:after, .site-header .signup__form li.faux-button a.menu > li.languages > a:after, .signup__form li.faux-button .site-header a.menu > li.languages > a:after, .site-header li.faux-button .signup__form a.menu > li.languages > a:after, li.faux-button .signup__form .site-header a.menu > li.languages > a:after {
  content: '';
  width: 8px;
  height: 5px;
  background: url(../../../elf-theme/assets/icons/down-arrow.svg) no-repeat center center/contain; }

.site-header .menu.secondary > li.languages:hover:before, .site-header .signup__form .menu.button > li.languages:hover:before, .signup__form .site-header .menu.button > li.languages:hover:before, .site-header .signup__form li.faux-button a.menu > li.languages:hover:before, .signup__form li.faux-button .site-header a.menu > li.languages:hover:before, .site-header li.faux-button .signup__form a.menu > li.languages:hover:before, li.faux-button .signup__form .site-header a.menu > li.languages:hover:before, .site-header .menu.secondary > li.languages:focus:before, .site-header .signup__form .menu.button > li.languages:focus:before, .signup__form .site-header .menu.button > li.languages:focus:before, .site-header .signup__form li.faux-button a.menu > li.languages:focus:before, .signup__form li.faux-button .site-header a.menu > li.languages:focus:before, .site-header li.faux-button .signup__form a.menu > li.languages:focus:before, li.faux-button .signup__form .site-header a.menu > li.languages:focus:before, .site-header .menu.secondary > li.languages:focus-within:before, .site-header .signup__form .menu.button > li.languages:focus-within:before, .signup__form .site-header .menu.button > li.languages:focus-within:before, .site-header .signup__form li.faux-button a.menu > li.languages:focus-within:before, .signup__form li.faux-button .site-header a.menu > li.languages:focus-within:before, .site-header li.faux-button .signup__form a.menu > li.languages:focus-within:before, li.faux-button .signup__form .site-header a.menu > li.languages:focus-within:before {
  content: '';
  position: absolute;
  top: 100%;
  right: -80px;
  width: 75vw;
  height: 200px;
  z-index: 998; }

.site-header .menu.secondary > li.languages:hover #language-menu, .site-header .signup__form .menu.button > li.languages:hover #language-menu, .signup__form .site-header .menu.button > li.languages:hover #language-menu, .site-header .signup__form li.faux-button a.menu > li.languages:hover #language-menu, .signup__form li.faux-button .site-header a.menu > li.languages:hover #language-menu, .site-header li.faux-button .signup__form a.menu > li.languages:hover #language-menu, li.faux-button .signup__form .site-header a.menu > li.languages:hover #language-menu, .site-header .menu.secondary > li.languages:focus #language-menu, .site-header .signup__form .menu.button > li.languages:focus #language-menu, .signup__form .site-header .menu.button > li.languages:focus #language-menu, .site-header .signup__form li.faux-button a.menu > li.languages:focus #language-menu, .signup__form li.faux-button .site-header a.menu > li.languages:focus #language-menu, .site-header li.faux-button .signup__form a.menu > li.languages:focus #language-menu, li.faux-button .signup__form .site-header a.menu > li.languages:focus #language-menu, .site-header .menu.secondary > li.languages:focus-within #language-menu, .site-header .signup__form .menu.button > li.languages:focus-within #language-menu, .signup__form .site-header .menu.button > li.languages:focus-within #language-menu, .site-header .signup__form li.faux-button a.menu > li.languages:focus-within #language-menu, .signup__form li.faux-button .site-header a.menu > li.languages:focus-within #language-menu, .site-header li.faux-button .signup__form a.menu > li.languages:focus-within #language-menu, li.faux-button .signup__form .site-header a.menu > li.languages:focus-within #language-menu {
  display: block; }

.site-header .menu.secondary > li #language-menu, .site-header .signup__form .menu.button > li #language-menu, .signup__form .site-header .menu.button > li #language-menu, .site-header .signup__form li.faux-button a.menu > li #language-menu, .signup__form li.faux-button .site-header a.menu > li #language-menu, .site-header li.faux-button .signup__form a.menu > li #language-menu, li.faux-button .signup__form .site-header a.menu > li #language-menu {
  display: none;
  position: fixed;
  top: 136px;
  left: 0;
  right: 0;
  z-index: 999;
  background: #fff;
  text-align: left;
  padding: 20px 0;
  -webkit-transition: display 0 2s;
  -o-transition: display 0 2s;
  transition: display 0 2s; }

.site-header .menu.secondary > li #language-menu h3, .site-header .signup__form .menu.button > li #language-menu h3, .signup__form .site-header .menu.button > li #language-menu h3, .site-header .signup__form li.faux-button a.menu > li #language-menu h3, .signup__form li.faux-button .site-header a.menu > li #language-menu h3, .site-header li.faux-button .signup__form a.menu > li #language-menu h3, li.faux-button .signup__form .site-header a.menu > li #language-menu h3 {
  border-bottom: 2px solid #E4E4E4;
  padding-bottom: 10px;
  margin-top: 30px; }

.site-header .menu.secondary > li #language-menu ul, .site-header .signup__form .menu.button > li #language-menu ul, .signup__form .site-header .menu.button > li #language-menu ul, .site-header .signup__form li.faux-button a.menu > li #language-menu ul, .signup__form li.faux-button .site-header a.menu > li #language-menu ul, .site-header li.faux-button .signup__form a.menu > li #language-menu ul, li.faux-button .signup__form .site-header a.menu > li #language-menu ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 0 10px; }

.site-header .menu.secondary > li #language-menu ul li, .site-header .signup__form .menu.button > li #language-menu ul li, .signup__form .site-header .menu.button > li #language-menu ul li, .site-header .signup__form li.faux-button a.menu > li #language-menu ul li, .signup__form li.faux-button .site-header a.menu > li #language-menu ul li, .site-header li.faux-button .signup__form a.menu > li #language-menu ul li, li.faux-button .signup__form .site-header a.menu > li #language-menu ul li {
  text-align: left;
  width: 33%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-bottom: 10px; }

.site-header .menu.secondary > li #language-menu ul li .label, .site-header .signup__form .menu.button > li #language-menu ul li .label, .signup__form .site-header .menu.button > li #language-menu ul li .label, .site-header .signup__form li.faux-button a.menu > li #language-menu ul li .label, .signup__form li.faux-button .site-header a.menu > li #language-menu ul li .label, .site-header li.faux-button .signup__form a.menu > li #language-menu ul li .label, li.faux-button .signup__form .site-header a.menu > li #language-menu ul li .label {
  text-transform: uppercase;
  background: #F0F0F0;
  width: 46px;
  text-align: center;
  margin-right: 10px; }

.site-header .menu.secondary > li #language-menu a, .site-header .signup__form .menu.button > li #language-menu a, .signup__form .site-header .menu.button > li #language-menu a, .site-header .signup__form li.faux-button a.menu > li #language-menu a, .signup__form li.faux-button .site-header a.menu > li #language-menu a, .site-header li.faux-button .signup__form a.menu > li #language-menu a, li.faux-button .signup__form .site-header a.menu > li #language-menu a {
  display: inline;
  width: auto; }

.site-header .menu.secondary > li #language-menu a[target="_blank"]:after, .site-header .signup__form .menu.button > li #language-menu a[target="_blank"]:after, .signup__form .site-header .menu.button > li #language-menu a[target="_blank"]:after, .site-header .signup__form li.faux-button a.menu > li #language-menu a[target="_blank"]:after, .signup__form li.faux-button .site-header a.menu > li #language-menu a[target="_blank"]:after, .site-header li.faux-button .signup__form a.menu > li #language-menu a[target="_blank"]:after, li.faux-button .signup__form .site-header a.menu > li #language-menu a[target="_blank"]:after {
  content: '';
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-left: 6px;
  margin-right: 2px;
  background: url("../../../elf-theme/assets/icons/new-window-blue.svg") no-repeat center center/contain; }

.site-header .menu.secondary > li #language-menu:hover, .site-header .signup__form .menu.button > li #language-menu:hover, .signup__form .site-header .menu.button > li #language-menu:hover, .site-header .signup__form li.faux-button a.menu > li #language-menu:hover, .signup__form li.faux-button .site-header a.menu > li #language-menu:hover, .site-header li.faux-button .signup__form a.menu > li #language-menu:hover, li.faux-button .signup__form .site-header a.menu > li #language-menu:hover, .site-header .menu.secondary > li a#language-menu.active, .site-header .signup__form .menu.button > li a#language-menu.active, .signup__form .site-header .menu.button > li a#language-menu.active, .site-header .menu.secondary > li button#language-menu.active, .site-header .signup__form .menu.button > li button#language-menu.active, .signup__form .site-header .menu.button > li button#language-menu.active, .site-header .signup__form li.faux-button a.menu > li button#language-menu.active, .signup__form li.faux-button .site-header a.menu > li button#language-menu.active, .site-header li.faux-button .signup__form a.menu > li button#language-menu.active, li.faux-button .signup__form .site-header a.menu > li button#language-menu.active, .site-header .signup__form li.faux-button a.menu > li a#language-menu.active, .signup__form li.faux-button .site-header a.menu > li a#language-menu.active, .site-header li.faux-button .signup__form a.menu > li a#language-menu.active, li.faux-button .signup__form .site-header a.menu > li a#language-menu.active, .site-header .menu.secondary > li #language-menu:focus, .site-header .signup__form .menu.button > li #language-menu:focus, .signup__form .site-header .menu.button > li #language-menu:focus, .site-header .signup__form li.faux-button a.menu > li #language-menu:focus, .signup__form li.faux-button .site-header a.menu > li #language-menu:focus, .site-header li.faux-button .signup__form a.menu > li #language-menu:focus, li.faux-button .signup__form .site-header a.menu > li #language-menu:focus, .site-header .menu.secondary > li #language-menu:focus-within, .site-header .signup__form .menu.button > li #language-menu:focus-within, .signup__form .site-header .menu.button > li #language-menu:focus-within, .site-header .signup__form li.faux-button a.menu > li #language-menu:focus-within, .signup__form li.faux-button .site-header a.menu > li #language-menu:focus-within, .site-header li.faux-button .signup__form a.menu > li #language-menu:focus-within, li.faux-button .signup__form .site-header a.menu > li #language-menu:focus-within {
  display: block; }

.site-header .menu.secondary > li.faux-button a, .site-header .signup__form .menu.button > li.faux-button a, .signup__form .site-header .menu.button > li.faux-button a, .site-header .signup__form li.faux-button a.menu > li.faux-button a, .signup__form li.faux-button .site-header a.menu > li.faux-button a, .site-header li.faux-button .signup__form a.menu > li.faux-button a, li.faux-button .signup__form .site-header a.menu > li.faux-button a {
  font-size: 1rem;
  margin-bottom: 0;
  border: 0;
  padding-left: 2.75rem;
  padding-right: 2.75rem; }

.site-header .menu.secondary > li.faux-button a:after, .site-header .signup__form .menu.button > li.faux-button a:after, .signup__form .site-header .menu.button > li.faux-button a:after, .site-header .signup__form li.faux-button a.menu > li.faux-button a:after, .signup__form li.faux-button .site-header a.menu > li.faux-button a:after, .site-header li.faux-button .signup__form a.menu > li.faux-button a:after, li.faux-button .signup__form .site-header a.menu > li.faux-button a:after {
  content: none; }

.site-header .menu.secondary > li.search-item, .site-header .signup__form .menu.button > li.search-item, .signup__form .site-header .menu.button > li.search-item, .site-header .signup__form li.faux-button a.menu > li.search-item, .signup__form li.faux-button .site-header a.menu > li.search-item, .site-header li.faux-button .signup__form a.menu > li.search-item, li.faux-button .signup__form .site-header a.menu > li.search-item {
  border: 0; }

.site-header .menu.hide-for-large {
  border-top: 1px solid #868686; }

.site-header .menu.dropdown {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 12px;
  margin-bottom: 6px; }

.site-header .menu.dropdown.items-2, .site-header .menu.dropdown.items-3 {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-column-gap: 40px;
     -moz-column-gap: 40px;
          column-gap: 40px; }

.site-header .menu.dropdown.nav_child li.is-dropdown-submenu-parent a:after, .site-header .menu.dropdown.nav_child li a:after {
  content: "";
  background: url(../../../elf-theme/assets/icons/down-arrow.svg);
  background-size: 15px 11px;
  width: 15px;
  height: 11px;
  top: 20px;
  right: -25px;
  margin-top: 0;
  border: none; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .site-header .menu.dropdown.nav_child li.is-dropdown-submenu-parent a:after, .site-header .menu.dropdown.nav_child li a:after {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/down-arrow.svg);
            mask-image: url(../../../elf-theme/assets/icons/down-arrow.svg);
    -webkit-mask-size: 15px 11px;
            mask-size: 15px 11px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.site-header .menu.dropdown.nav_child li.is-dropdown-submenu-parent a:hover, .site-header .menu.dropdown.nav_child li.is-dropdown-submenu-parent a.active, .site-header .menu.dropdown.nav_child li a:hover, .site-header .menu.dropdown.nav_child li a.active {
  color: #a6cdc6;
  text-decoration: none;
  border-bottom-color: transparent; }

.site-header .menu.dropdown.nav_child li.is-dropdown-submenu-parent a:hover:after, .site-header .menu.dropdown.nav_child li.is-dropdown-submenu-parent a.active:after, .site-header .menu.dropdown.nav_child li a:hover:after, .site-header .menu.dropdown.nav_child li a.active:after {
  background: url(../../../elf-theme/assets/icons/down-arrow-yellow.svg);
  background-size: 15px 11px;
  width: 15px;
  height: 11px; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .site-header .menu.dropdown.nav_child li.is-dropdown-submenu-parent a:hover:after, .site-header .menu.dropdown.nav_child li.is-dropdown-submenu-parent a.active:after, .site-header .menu.dropdown.nav_child li a:hover:after, .site-header .menu.dropdown.nav_child li a.active:after {
    background: #79d7be;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/down-arrow-yellow.svg);
            mask-image: url(../../../elf-theme/assets/icons/down-arrow-yellow.svg);
    -webkit-mask-size: 15px 11px;
            mask-size: 15px 11px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.site-header .menu.dropdown.nav_child li.is-dropdown-submenu-parent .is-dropdown-submenu, .site-header .menu.dropdown.nav_child li .is-dropdown-submenu {
  margin: 0px;
  list-style: none;
  border: none; }

.site-header .menu.dropdown.nav_child li.is-dropdown-submenu-parent .is-dropdown-submenu li a, .site-header .menu.dropdown.nav_child li .is-dropdown-submenu li a {
  text-align: left;
  border: none;
  padding: 10px 25px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

.site-header .menu.dropdown.nav_child li.is-dropdown-submenu-parent .is-dropdown-submenu li a::after, .site-header .menu.dropdown.nav_child li .is-dropdown-submenu li a::after {
  content: none; }

.site-header .menu.dropdown.nav_child li.is-dropdown-submenu-parent .is-dropdown-submenu li a:hover, .site-header .menu.dropdown.nav_child li.is-dropdown-submenu-parent .is-dropdown-submenu li a.active, .site-header .menu.dropdown.nav_child li .is-dropdown-submenu li a:hover, .site-header .menu.dropdown.nav_child li .is-dropdown-submenu li a.active {
  background-color: #16404d;
  color: #FFF; }

.site-header .menu.dropdown.nav_child li:not(.is-dropdown-submenu-parent) a:hover, .site-header .menu.dropdown.nav_child li:not(.is-dropdown-submenu-parent) a.active {
  color: #a6cdc6;
  text-decoration: none;
  border-bottom-color: #79d7be; }

@media print, screen and (min-width: 64em) {
  .site-header .menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    width: auto;
    text-align: right; }
  .site-header .menu li {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; } }

/** Panel &&  Fixed Position navigation */
body.panel-open {
  -webkit-transition: all 1s bounce;
  -o-transition: all 1s bounce;
  transition: all 1s bounce; }

body.panel-open .site-header {
  height: 184px; }

@media print, screen and (max-width: 63.99875em) {
  body.panel-open .site-header {
    height: 100% !important;
    max-height: 100vh; }
  body.panel-open .site-header .menu {
    display: block; }
  body.panel-open .site-header .menu li {
    border-bottom: 1px solid #F4F4F4; }
  body.panel-open .site-header .menu li a {
    text-align: left;
    font-weight: 700; }
  body.panel-open .site-header .menu li a:hover, body.panel-open .site-header .menu li a.active {
    text-decoration: none; }
  body.panel-open .site-header .menu li:last-child {
    border-bottom: none; }
  body.panel-open .site-header .menu .dropdown-pane ul {
    padding-left: 0;
    padding-right: 0; }
  body.panel-open .site-header .menu .dropdown-pane ul li a {
    font-weight: 400; } }

@media print, screen and (max-width: 39.99875em) {
  body.panel-open #mega__menu__wrapper {
    position: fixed;
    top: 55px;
    left: 0;
    padding: 0 20px;
    height: calc(100vh - 55px); }
  body.panel-open #mega__menu__wrapper .dropdown-pane {
    position: relative;
    top: 10px !important; } }

body.panel-open #mega__menu__wrapper .menu.secondary, body.panel-open #mega__menu__wrapper .signup__form .menu.button, .signup__form body.panel-open #mega__menu__wrapper .menu.button, body.panel-open #mega__menu__wrapper .signup__form li.faux-button a.menu, .signup__form li.faux-button body.panel-open #mega__menu__wrapper a.menu, body.panel-open #mega__menu__wrapper li.faux-button .signup__form a.menu, li.faux-button .signup__form body.panel-open #mega__menu__wrapper a.menu {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  border-top: none; }

body.panel-open #mega__menu__wrapper .menu.secondary li, body.panel-open #mega__menu__wrapper .signup__form .menu.button li, .signup__form body.panel-open #mega__menu__wrapper .menu.button li, body.panel-open #mega__menu__wrapper .signup__form li.faux-button a.menu li, .signup__form li.faux-button body.panel-open #mega__menu__wrapper a.menu li, body.panel-open #mega__menu__wrapper li.faux-button .signup__form a.menu li, li.faux-button .signup__form body.panel-open #mega__menu__wrapper a.menu li {
  border-right: none;
  border-bottom: none;
  width: 40%; }

body.panel-open #mega__menu__wrapper .menu.secondary li.faux-button, body.panel-open #mega__menu__wrapper .signup__form .menu.button li.faux-button, .signup__form body.panel-open #mega__menu__wrapper .menu.button li.faux-button, body.panel-open #mega__menu__wrapper .signup__form li.faux-button a.menu li.faux-button, .signup__form li.faux-button body.panel-open #mega__menu__wrapper a.menu li.faux-button, body.panel-open #mega__menu__wrapper li.faux-button .signup__form a.menu li.faux-button, li.faux-button .signup__form body.panel-open #mega__menu__wrapper a.menu li.faux-button {
  display: block;
  padding: 0px;
  width: 60%; }

body.panel-open #mega__menu__wrapper .menu.secondary li.faux-button a, body.panel-open #mega__menu__wrapper .signup__form .menu.button li.faux-button a, .signup__form body.panel-open #mega__menu__wrapper .menu.button li.faux-button a, body.panel-open #mega__menu__wrapper .signup__form li.faux-button a.menu li.faux-button a, .signup__form li.faux-button body.panel-open #mega__menu__wrapper a.menu li.faux-button a, body.panel-open #mega__menu__wrapper li.faux-button .signup__form a.menu li.faux-button a, li.faux-button .signup__form body.panel-open #mega__menu__wrapper a.menu li.faux-button a {
  text-align: center; }

body.panel-open #mega__menu__wrapper .menu.secondary li.languages > a, body.panel-open #mega__menu__wrapper .signup__form .menu.button li.languages > a, .signup__form body.panel-open #mega__menu__wrapper .menu.button li.languages > a, body.panel-open #mega__menu__wrapper .signup__form li.faux-button a.menu li.languages > a, .signup__form li.faux-button body.panel-open #mega__menu__wrapper a.menu li.languages > a, body.panel-open #mega__menu__wrapper li.faux-button .signup__form a.menu li.languages > a, li.faux-button .signup__form body.panel-open #mega__menu__wrapper a.menu li.languages > a {
  background: url(../../../elf-theme/assets/icons/globe.svg) no-repeat left center/contain;
  width: 100%;
  -webkit-box-pack: normal;
      -ms-flex-pack: normal;
          justify-content: normal; }

body.panel-open #mega__menu__wrapper .menu.secondary li.languages > a:after, body.panel-open #mega__menu__wrapper .signup__form .menu.button li.languages > a:after, .signup__form body.panel-open #mega__menu__wrapper .menu.button li.languages > a:after, body.panel-open #mega__menu__wrapper .signup__form li.faux-button a.menu li.languages > a:after, .signup__form li.faux-button body.panel-open #mega__menu__wrapper a.menu li.languages > a:after, body.panel-open #mega__menu__wrapper li.faux-button .signup__form a.menu li.languages > a:after, li.faux-button .signup__form body.panel-open #mega__menu__wrapper a.menu li.languages > a:after {
  margin-left: 25px; }

body.fixed-menu .site-header-fixed {
  position: fixed;
  top: 0;
  z-index: 997;
  background-color: #FFF;
  height: 55px; }

@media only print {
  body.fixed-menu .site-header-fixed {
    position: relative;
    border: none !important; } }

@media print, screen and (min-width: 64em) {
  body.fixed-menu .site-header-fixed {
    height: 184px; } }

@media print, screen and (min-width: 64em) {
  body.fixed-menu .site-header.child_header {
    height: 170px; } }

body.fixed-menu .site-content {
  margin-top: 55px; }

@media print, screen and (min-width: 64em) {
  body.fixed-menu .site-content {
    margin-top: 184px; } }

@media only print {
  body.fixed-menu .site-content {
    margin-top: 0 !important; } }

@media print, screen and (min-width: 64em) {
  body.fixed-menu .site-content.child_theme {
    margin-top: 170px; } }

/* Mega Menu */
@media print, screen and (max-width: 63.99875em) {
  #mega__menu__wrapper {
    overflow-y: scroll; }
  #mega__menu__wrapper #menu-eyebrow-links-1 {
    padding: 15px 0px;
    margin-top: 20px; }
  #mega__menu__wrapper #menu-eyebrow-links-1 li a {
    font-weight: 400; } }

#mega__menu__wrapper.shrinked_menu .mega-menu .mega_menu_inner.dropdown-pane {
  top: 126px !important; }

#mega__menu__wrapper .menu.secondary .languages #language-menu_mob, #mega__menu__wrapper .signup__form .menu.button .languages #language-menu_mob, .signup__form #mega__menu__wrapper .menu.button .languages #language-menu_mob, #mega__menu__wrapper .signup__form li.faux-button a.menu .languages #language-menu_mob, .signup__form li.faux-button #mega__menu__wrapper a.menu .languages #language-menu_mob, #mega__menu__wrapper li.faux-button .signup__form a.menu .languages #language-menu_mob, li.faux-button .signup__form #mega__menu__wrapper a.menu .languages #language-menu_mob {
  display: none;
  position: fixed;
  height: 100%;
  z-index: 999;
  top: 0;
  left: 0;
  right: 0;
  background: #fff;
  text-align: left;
  padding: 20px 0; }

#mega__menu__wrapper .menu.secondary .languages #language-menu_mob h3, #mega__menu__wrapper .signup__form .menu.button .languages #language-menu_mob h3, .signup__form #mega__menu__wrapper .menu.button .languages #language-menu_mob h3, #mega__menu__wrapper .signup__form li.faux-button a.menu .languages #language-menu_mob h3, .signup__form li.faux-button #mega__menu__wrapper a.menu .languages #language-menu_mob h3, #mega__menu__wrapper li.faux-button .signup__form a.menu .languages #language-menu_mob h3, li.faux-button .signup__form #mega__menu__wrapper a.menu .languages #language-menu_mob h3 {
  border-bottom: 2px solid #E4E4E4;
  padding-bottom: 10px;
  margin-top: 30px; }

#mega__menu__wrapper .menu.secondary .languages #language-menu_mob ul, #mega__menu__wrapper .signup__form .menu.button .languages #language-menu_mob ul, .signup__form #mega__menu__wrapper .menu.button .languages #language-menu_mob ul, #mega__menu__wrapper .signup__form li.faux-button a.menu .languages #language-menu_mob ul, .signup__form li.faux-button #mega__menu__wrapper a.menu .languages #language-menu_mob ul, #mega__menu__wrapper li.faux-button .signup__form a.menu .languages #language-menu_mob ul, li.faux-button .signup__form #mega__menu__wrapper a.menu .languages #language-menu_mob ul {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 0 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

#mega__menu__wrapper .menu.secondary .languages #language-menu_mob ul li, #mega__menu__wrapper .signup__form .menu.button .languages #language-menu_mob ul li, .signup__form #mega__menu__wrapper .menu.button .languages #language-menu_mob ul li, #mega__menu__wrapper .signup__form li.faux-button a.menu .languages #language-menu_mob ul li, .signup__form li.faux-button #mega__menu__wrapper a.menu .languages #language-menu_mob ul li, #mega__menu__wrapper li.faux-button .signup__form a.menu .languages #language-menu_mob ul li, li.faux-button .signup__form #mega__menu__wrapper a.menu .languages #language-menu_mob ul li {
  width: 50%;
  margin-bottom: 20px;
  text-align: left;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-bottom: 10px; }

#mega__menu__wrapper .menu.secondary .languages #language-menu_mob ul li .label, #mega__menu__wrapper .signup__form .menu.button .languages #language-menu_mob ul li .label, .signup__form #mega__menu__wrapper .menu.button .languages #language-menu_mob ul li .label, #mega__menu__wrapper .signup__form li.faux-button a.menu .languages #language-menu_mob ul li .label, .signup__form li.faux-button #mega__menu__wrapper a.menu .languages #language-menu_mob ul li .label, #mega__menu__wrapper li.faux-button .signup__form a.menu .languages #language-menu_mob ul li .label, li.faux-button .signup__form #mega__menu__wrapper a.menu .languages #language-menu_mob ul li .label {
  margin-right: 15px;
  text-transform: uppercase;
  background: #F0F0F0;
  width: 46px;
  text-align: center; }

#mega__menu__wrapper .menu.secondary .languages #language-menu_mob a, #mega__menu__wrapper .signup__form .menu.button .languages #language-menu_mob a, .signup__form #mega__menu__wrapper .menu.button .languages #language-menu_mob a, #mega__menu__wrapper .signup__form li.faux-button a.menu .languages #language-menu_mob a, .signup__form li.faux-button #mega__menu__wrapper a.menu .languages #language-menu_mob a, #mega__menu__wrapper li.faux-button .signup__form a.menu .languages #language-menu_mob a, li.faux-button .signup__form #mega__menu__wrapper a.menu .languages #language-menu_mob a {
  display: inline;
  width: auto; }

#mega__menu__wrapper .menu.secondary .languages #language-menu_mob a[target="_blank"]:after, #mega__menu__wrapper .signup__form .menu.button .languages #language-menu_mob a[target="_blank"]:after, .signup__form #mega__menu__wrapper .menu.button .languages #language-menu_mob a[target="_blank"]:after, #mega__menu__wrapper .signup__form li.faux-button a.menu .languages #language-menu_mob a[target="_blank"]:after, .signup__form li.faux-button #mega__menu__wrapper a.menu .languages #language-menu_mob a[target="_blank"]:after, #mega__menu__wrapper li.faux-button .signup__form a.menu .languages #language-menu_mob a[target="_blank"]:after, li.faux-button .signup__form #mega__menu__wrapper a.menu .languages #language-menu_mob a[target="_blank"]:after {
  content: '';
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-left: 6px;
  margin-right: 2px;
  background: url("../../../elf-theme/assets/icons/new-window-blue.svg") no-repeat center center/contain; }

#mega__menu__wrapper .menu.secondary .languages #language-menu_mob .language_mobile_arrow, #mega__menu__wrapper .signup__form .menu.button .languages #language-menu_mob .language_mobile_arrow, .signup__form #mega__menu__wrapper .menu.button .languages #language-menu_mob .language_mobile_arrow, #mega__menu__wrapper .signup__form li.faux-button a.menu .languages #language-menu_mob .language_mobile_arrow, .signup__form li.faux-button #mega__menu__wrapper a.menu .languages #language-menu_mob .language_mobile_arrow, #mega__menu__wrapper li.faux-button .signup__form a.menu .languages #language-menu_mob .language_mobile_arrow, li.faux-button .signup__form #mega__menu__wrapper a.menu .languages #language-menu_mob .language_mobile_arrow {
  position: absolute;
  top: 65px;
  right: 35px; }

.mega-menu .mega_menu_inner.dropdown-pane {
  width: 100%;
  margin: 0 auto !important;
  top: 184px !important;
  left: 0 !important;
  right: 0 !important;
  position: fixed;
  border-radius: 0; }

.mega-menu .mega_menu_inner.dropdown-pane .grid-container {
  width: 100%; }

.mega-menu .mega_menu_inner.dropdown-pane li {
  padding: 0px; }

.mega-menu .mega_menu_inner.dropdown-pane li a {
  border-bottom: none;
  text-underline-position: auto; }

@media print, screen and (min-width: 40em) {
  .mega-menu .mega_menu_inner.dropdown-pane li a {
    padding: 5px 10px !important; } }

.mega-menu .mega_menu_inner.dropdown-pane li a:hover, .mega-menu .mega_menu_inner.dropdown-pane li a.active {
  text-decoration: underline; }

.mega-menu .menu {
  background: none; }

.mega-menu .menu.vertical {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: left; }

.mega-menu .menu.vertical li {
  border-bottom: none; }

.mega-menu .menu.vertical li::before {
  content: none; }

.mega-menu .mega--padding {
  padding-bottom: 20px; }

.mega-menu .menu-stretch {
  margin-left: -20px;
  margin-right: -20px; }

.mega-menu .banner-link {
  border: none !important; }

.mega-menu .section--home {
  background-color: #F4F4F4;
  margin-bottom: 20px;
  padding: 10px 0; }

.mega-menu .section--home a {
  font-size: 1rem;
  text-decoration: underline; }

.mega-menu .border--right {
  border-right: 1px solid #e4e5e9;
  border-right: none; }

.mega-menu .side--panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

@media print, screen and (min-width: 64em) {
  .mega-menu .side--panel {
    padding-right: 20px; } }

.mega-menu .side--panel span {
  display: block;
  color: #FFF; }

.mega-menu .side--panel a {
  padding-top: 0 !important; }

.mega-menu .side--panel .menu_cta_block {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  background-color: #a6cdc6;
  padding: 22px; }

.mega-menu .side--panel .menu_cta_block a {
  display: inline !important;
  color: #FFF !important;
  border-bottom-color: #79d7be !important; }

.mega-menu .side--panel .menu_cta_block a:hover, .mega-menu .side--panel .menu_cta_block a.active {
  text-decoration: none; }

.mega-menu .side--panel .menu_cta_block .mobile_banner {
  margin-top: 40px; }

.mega-menu .col {
  display: inline-block;
  margin: 0;
  width: 100%;
  vertical-align: top; }

@media print, screen and (min-width: 64em) {
  .mega-menu .col {
    width: 33%; } }

.mega-menu .col ul {
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 20px; }

.mega-menu .col ul li a {
  padding: 5px 10px 5px 10px;
  font-size: 1rem; }

@media print, screen and (min-width: 40em) {
  .mega-menu .col .menu--title {
    padding: 0 20px 0 20px; } }

.mega-menu .col .menu--title a, .mega-menu .col .menu--title h6, .mega-menu .col .menu--title .updated .date, .updated .mega-menu .col .menu--title .date {
  border-bottom: none !important; }

.mega-menu .col .menu--title hr {
  height: 1px;
  margin-top: 10px; }

@media print, screen and (max-width: 39.99875em) {
  .mega-menu .col .menu--title hr {
    margin-bottom: 0; } }

.mega-menu .menu--cta {
  display: block;
  width: 100%; }

.mega-menu .menu--cta .menu--banner {
  width: 100%;
  padding: 20px; }

.shrink--hide {
  height: auto;
  opacity: 1;
  -webkit-transition: height 0ms 0ms, opacity 600ms 0ms;
  -o-transition: height 0ms 0ms, opacity 600ms 0ms;
  transition: height 0ms 0ms, opacity 600ms 0ms; }

#site-header.menu__small {
  border-bottom: 3px solid #a6cdc6; }

@media print, screen and (min-width: 64em) {
  #site-header.menu__small {
    height: auto;
    min-height: 130px; } }

#site-header.menu__small .shrink--hide {
  opacity: 0;
  height: 0;
  -webkit-transition: height 0ms 100ms, opacity 100ms 0ms;
  -o-transition: height 0ms 100ms, opacity 100ms 0ms;
  transition: height 0ms 100ms, opacity 100ms 0ms; }

@media print, screen and (min-width: 64em) {
  #site-header.menu__small .icon.icon-small {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
    width: 70px;
    height: 70px; } }

#site-header.menu__small #language-menu {
  top: 126px; }

#site-header.menu__small .menu li a.search--link {
  display: inline-block;
  height: 18px;
  opacity: 1;
  -webkit-transition: opacity 400ms 0ms;
  -o-transition: opacity 400ms 0ms;
  transition: opacity 400ms 0ms;
  right: 0; }

#site-header.menu__small .menu.dropdown {
  float: right;
  width: 90%; }

#site-header.menu__small .menu.secondary > li:last-child, #site-header.menu__small .signup__form .menu.button > li:last-child, .signup__form #site-header.menu__small .menu.button > li:last-child, #site-header.menu__small .signup__form li.faux-button a.menu > li:last-child, .signup__form li.faux-button #site-header.menu__small a.menu > li:last-child, #site-header.menu__small li.faux-button .signup__form a.menu > li:last-child, li.faux-button .signup__form #site-header.menu__small a.menu > li:last-child {
  display: block;
  width: 40px;
  padding: 0; }

.dropdown-pane.custom {
  padding: 0;
  text-align: left;
  border: 0; }

.header-spacer {
  width: 100%;
  height: 80px;
  display: grid; }

@media print, screen and (min-width: 64em) {
  .header-spacer {
    height: 200px; } }

.bgFilter {
  background-color: #16404d;
  opacity: 0;
  width: 100vw;
  height: 100vh;
  z-index: 996; }

.header4_v2 .header4_v2_trafficLight {
  margin: 2rem 0 1.5rem 0; }

.header4_v2 .header4_v2_trafficLight .trafficLight_green {
  text-transform: uppercase;
  padding: .85em 2.3em;
  background-color: #CCE0D0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }

.header4_v2 .header4_v2_trafficLight .trafficLight_red {
  text-transform: uppercase;
  padding: .85em 2.3em;
  background-color: #FAE7EC;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }

/** FOOTER  */
.site-footer {
  color: #FFF;
  background-color: #16404d;
  padding: 80px 0 20px 0; }

.site-footer h6, .site-footer .updated .date, .updated .site-footer .date {
  color: #FFF;
  margin-bottom: 30px; }

.site-footer a:not(.button) {
  color: #FFF;
  text-underline-position: auto; }

.site-footer .button, .site-footer li.faux-button a, li.faux-button .site-footer a {
  width: 100%;
  margin-top: 20px; }

.site-footer .cell.auto {
  margin-left: auto; }

@media print, screen and (max-width: 39.99875em) {
  .site-footer .cell.auto {
    width: 100%; } }

.site-footer ul {
  list-style-type: none;
  margin: 0;
  padding: 0; }

@media print, screen and (max-width: 63.99875em) {
  .site-footer ul.footer--links {
    margin-bottom: 30px; } }

.site-footer ul.footer--links li a {
  display: inline-block;
  padding-right: 30px; }

.site-footer ul.footer--links li a[target="_blank"]:after {
  content: "";
  background: url(../../../elf-theme/assets/icons/external-link-icon.svg) no-repeat center center/contain;
  width: 30px;
  height: 11px;
  margin-right: -30px;
  display: inline-block; }

.site-footer ul.terms-list {
  width: 100%;
  border-top: 2px solid #a6cdc6;
  border-top: 2px solid rgba(255, 255, 255, 0.3);
  margin-top: 40px;
  padding-top: 20px; }

.site-footer ul.terms-list li {
  float: left;
  margin-right: 10px;
  padding-bottom: 5px; }

.site-footer ul.terms-list li a {
  border-right: 1px solid #FFF;
  padding-right: 10px;
  text-decoration: none; }

.site-footer ul.terms-list li a:hover, .site-footer ul.terms-list li a.active {
  text-decoration: underline; }

.site-footer ul.terms-list li a.last {
  border-right: none; }

.site-footer ul.terms-list li a:last-child a {
  border-right: none; }

.site-footer ul.terms-list li:last-child a {
  border-right: none; }

.site-footer ul.social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  vertical-align: middle;
  margin-top: 20px;
  margin-left: 0px; }

.site-footer ul.social li {
  width: 25%;
  max-width: 60px;
  margin-left: 20px; }

.site-footer ul.social li a i {
  position: relative;
  display: inline-block;
  color: #16404d;
  background: #FFF;
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  border-radius: 50%;
  margin: 0;
  -webkit-transition: all 0.25s;
  -o-transition: all 0.25s;
  transition: all 0.25s; }

.site-footer ul.social li a i:before {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 1.5rem; }

.site-footer ul.social li a:hover i, .site-footer ul.social li a.active i {
  background: #79d7be; }

@media print, screen and (min-width: 64em) {
  .site-footer ul.social li {
    margin-left: 15px; } }

.site-footer ul.social li:first-child {
  margin-left: 0px; }

.site-footer .microsite-logo {
  text-align: center; }

.site-footer .footer__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

@media print, screen and (max-width: 63.99875em) {
  .site-footer .footer__logo {
    text-align: left; } }

.site-footer .footer__logo a.icon:first-child {
  margin-right: 20px;
  padding-right: 20px;
  border-right: 1px solid #fff; }

.site-footer .icon {
  display: inline-block;
  margin: 0;
  max-width: 100%;
  width: 229px;
  height: 53px;
  margin-bottom: 40px; }

.site-footer .icon img {
  width: 100%;
  height: 100%;
  -o-object-position: center left;
     object-position: center left;
  -o-object-fit: contain;
     object-fit: contain; }

.site-footer .icon span {
  position: absolute;
  left: -99999px; }

.site-footer .border-col {
  padding-top: 20px; }

@media print, screen and (min-width: 64em) {
  .site-footer .border-col {
    padding-top: initial;
    padding-left: 0;
    border-top: 0; } }

.site-footer .border-col span {
  vertical-align: top; }

.site-footer .search__wrapper {
  position: relative;
  margin-bottom: 25px; }

@media print, screen and (min-width: 40em) {
  .site-footer .search__wrapper {
    margin-bottom: auto; } }

.site-footer .search__wrapper input[type="text"] {
  padding: 24px 20px;
  width: 100%;
  border-radius: 25px;
  background-color: #FFF; }

.site-footer .search__wrapper input[type="text"]:focus {
  outline: none !important; }

@media print, screen and (min-width: 40em) {
  .site-footer .search__wrapper input[type="submit"] {
    right: 10px; } }

.disclaimer_footer {
  padding: 20px 0px; }

.disclaimer_footer .disclaimer_content p {
  font-size: 12px;
  color: #707070;
  margin: 0px; }

.disclaimer_footer .disclaimer_imgs {
  border-radius: 0;
  text-align: right; }

.disclaimer_footer .disclaimer_imgs img.disclaimer_img {
  margin-top: 20px; }

@media print, screen and (min-width: 40em) {
  .disclaimer_footer .disclaimer_imgs img.disclaimer_img {
    margin-top: 0px;
    margin-left: 30px; } }

body.microsite .site-footer {
  padding: 34px 0 34px; }

.heading {
  display: block;
  position: relative;
  margin-bottom: 20px; }

.heading h1, .heading h2, .heading h3, .heading h4, .heading h5, .heading section .free_text blockquote p, section .free_text blockquote .heading p, .heading h6, .heading .updated .date, .updated .heading .date, .heading span, .heading a {
  display: inline-block; }

.heading h2 {
  margin-bottom: 10px; }

.heading hr {
  margin-top: 0;
  margin-bottom: 10px; }

.heading p {
  color: #16404d; }

.heading .heading--tag {
  display: block; }

.heading .text-right {
  text-align: unset;
  margin-top: 10px;
  margin-bottom: 20px; }

@media print, screen and (min-width: 40em) {
  .heading .text-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; } }

article .heading {
  margin-bottom: 20px; }

hr {
  border: none;
  height: 2px;
  background: #E4E4E4;
  margin-top: 30px;
  margin-bottom: 20px; }

.overlap__margin {
  margin-top: 30px; }

@media print, screen and (min-width: 40em) {
  .overlap__margin {
    margin-top: -72px; } }

.overlap__margin .text__wrapper {
  background-color: #FFF; }

.overlap__margin .text__wrapper h5, .overlap__margin .text__wrapper section .free_text blockquote p, section .free_text blockquote .overlap__margin .text__wrapper p {
  font-size: 1.375rem; }

@media print, screen and (min-width: 40em) {
  .filter_options {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }

.filter_options select, .filter_options input {
  display: block; }

@media print, screen and (min-width: 40em) {
  .filter_options select, .filter_options input {
    display: inline-block;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; } }

.filter_options select, .filter_options input {
  width: 100%;
  max-width: 100%;
  height: 45px;
  margin-right: 20px; }

@media print, screen and (min-width: 40em) {
  .filter_options select, .filter_options input {
    width: auto;
    max-width: 200px; } }

@media print, screen and (min-width: 40em) {
  .filter_options input[type=submit] {
    width: 100%;
    max-width: 260px;
    margin-right: 0; } }

.grey_outer_wrap {
  background-color: #F4F4F4 !important; }

.updated span {
  font-size: 0.875rem !important; }

.updated .date {
  color: #B1B1B1; }

.tags {
  font-size: 0.875rem;
  font-family: "Avenir LT W01_55 Roman1475520";
  text-transform: uppercase;
  color: #16404d; }

/** Breadcrumb */
.breadcrumb-wrap {
  background-color: #F4F4F4; }

.breadcrumb .breadcrumb--navigation {
  overflow: hidden;
  list-style: none;
  margin: 15px 0 15px;
  color: #16404d; }

@media print, screen and (min-width: 64em) {
  .breadcrumb .breadcrumb--navigation {
    margin-left: 0px; } }

.breadcrumb .breadcrumb--navigation li a {
  text-decoration: underline; }

.breadcrumb .breadcrumb--navigation li a.active, .breadcrumb .breadcrumb--navigation li a:hover, .breadcrumb .breadcrumb--navigation li a.active {
  text-decoration: none; }

@media only print {
  .breadcrumb {
    display: none !important; } }

@media only print {
  #breadcrumbs {
    display: none !important; } }

.home p#breadcrumbs {
  display: none; }

#search__wrapper {
  position: fixed;
  top: -100%;
  left: 0;
  right: 0;
  opacity: 0;
  z-index: 998 !important;
  background-color: #F4F4F4; }

#search__wrapper.show {
  opacity: 1;
  top: 0; }

#search__wrapper.show #search-close {
  display: block; }

#search__wrapper .icon {
  display: inline-block;
  margin-top: 9px;
  width: 31px;
  height: 31px; }

#search__wrapper .icon span {
  position: absolute;
  left: -99999px; }

#search__wrapper .icon.icon-small {
  background-position: left;
  background-size: contain;
  display: none; }

#search__wrapper #search-close {
  background: url(../../../elf-theme/assets/icons/close-popup.svg) no-repeat center center/contain;
  height: 17px;
  width: 17px;
  text-indent: -9999px;
  position: fixed;
  right: 20px;
  top: 19px;
  display: none; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  #search__wrapper #search-close {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/close-popup.svg);
            mask-image: url(../../../elf-theme/assets/icons/close-popup.svg);
    -webkit-mask-size: contain;
            mask-size: contain;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center center;
            mask-position: center center; } }

@media print, screen and (min-width: 64em) {
  #search__wrapper #search-close {
    position: absolute;
    top: 34px;
    right: 9px; } }

#search__wrapper form {
  margin-top: 20px; }

#search__wrapper .search-form {
  margin-bottom: 50px; }

#search__wrapper .card ul {
  margin-left: unset; }

#search__wrapper .card ul li:before {
  content: unset; }

@media print, screen and (min-width: 64em) {
  #search__wrapper {
    min-height: 184px; } }

.search__wrapper input[type=submit], .search__wrapper .search-icon {
  background: url(../../../elf-theme/assets/icons/search-icon.svg) no-repeat center right 20px;
  position: absolute;
  top: 50%;
  right: 0px;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  height: 50px;
  width: 100%;
  text-indent: -99999px;
  cursor: pointer;
  text-decoration: none;
  border: none;
  outline: none; }

@media print, screen and (min-width: 40em) {
  .search__wrapper input[type=submit], .search__wrapper .search-icon {
    z-index: 995; } }

/** Solace Microsite */
@font-face {
  .solace-microsite.microsite {
    font-family: "AvenirNext";
    src: url("../../../elf-theme/assets/fonts/two-Bh7sE038.woff2") format("woff2");
    font-weight: 100;
    font-style: normal; } }

@font-face {
  .solace-microsite.microsite {
    font-family: "AvenirNext";
    src: url("../../../elf-theme/assets/fonts/one-Pns9tNQ9.woff2") format("woff2");
    font-weight: 400;
    font-style: normal; } }

@font-face {
  .solace-microsite.microsite {
    font-family: "AvenirNext";
    src: url("../../../elf-theme/assets/fonts/three-DfVdq_5o.woff2") format("woff2");
    font-weight: 600;
    font-style: normal; } }

.solace-microsite.microsite .page-width {
  max-width: var(--page-width);
  margin-left: auto;
  margin-right: auto; }

.solace-microsite.microsite .burger-menu:after {
  content: none; }

.solace-microsite.microsite .site-header a {
  text-decoration: none; }

.solace-microsite.microsite .site-header a:hover, .solace-microsite.microsite .site-header a.active {
  text-decoration: underline;
  -webkit-transition: none;
  -o-transition: none;
  transition: none; }

.solace-microsite.microsite .site-header ul#menu-upper {
  margin-bottom: 0; }

.solace-microsite.microsite .site-header ul#menu-upper li a {
  font-size: 1.125rem; }

.solace-microsite.microsite .site-header ul#menu-upper li a:hover, .solace-microsite.microsite .site-header ul#menu-upper li a.active, .solace-microsite.microsite .site-header ul#menu-upper li a:focus {
  color: #09626f; }

.solace-microsite.microsite .site-header ul#menu-main li:hover {
  background-color: #09626f; }

.solace-microsite.microsite .site-header ul#menu-main li:hover a {
  color: #FFF;
  text-decoration: none; }

.solace-microsite.microsite .site-header ul#menu-main li.selected {
  background-color: #09626f; }

.solace-microsite.microsite .site-header ul#menu-main li.selected a {
  text-decoration: none; }

.solace-microsite.microsite .site-header button #languages {
  display: none;
  opacity: 0; }

.solace-microsite.microsite .site-header button:after {
  content: none; }

.solace-microsite.microsite .site-header button:hover, .solace-microsite.microsite .site-header button.active {
  color: #09626f; }

.solace-microsite.microsite .site-header .site-switcher a {
  font-size: 1.125rem;
  line-height: 1.575rem; }

.solace-microsite.microsite .site-header .site-switcher a.active {
  text-decoration: none; }

.solace-microsite.microsite .site-header .site-switcher a:not(.active):hover, .solace-microsite.microsite .site-header .site-switcher a.active:not(.active) {
  color: #09626f;
  text-underline-position: auto; }

.solace-microsite.microsite .site-footer {
  padding: 0;
  color: unset;
  background-color: #FFF; }

.solace-microsite.microsite .site-footer .menu {
  display: block; }

.solace-microsite.microsite .site-footer .menu li {
  margin-bottom: 0.5rem; }

.solace-microsite.microsite .site-footer .menu li a {
  padding: 0;
  line-height: 1.575rem; }

.solace-microsite.microsite .site-footer .footer-bottom .legalMenus .menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.25rem; }

.solace-microsite.microsite .site-footer .footer-bottom .legalMenus .menu li a {
  color: black !important;
  font-size: 1.125rem;
  line-height: 1.575rem; }

.solace-microsite.microsite .site-footer .footer-bottom .disclaimer-text {
  color: #000; }

.solace-microsite.microsite .site-footer .footer-bottom .site-branding {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.solace-microsite.microsite .bgFilter {
  display: none !important; }

.solace-microsite.microsite .search-overlay.active .placeholder {
  height: 50px; }

.solace-microsite.microsite .search-overlay.active button#searchClose span {
  color: #09626f;
  background-color: #09626f; }

.solace-microsite.microsite .search-overlay.active button#searchClose:after {
  content: none; }

.solace-microsite.microsite #searchform.search_desktop #search-lang {
  color: #FFF !important;
  background-image: none !important; }

.solace-microsite.microsite #searchform.search_desktop #search-lang:after {
  content: none; }

.solace-microsite.microsite .mobile-menu-panel button#languages {
  display: none;
  opacity: 0; }

.solace-microsite.microsite .mobile-menu-panel button.search-toggle {
  padding: 0; }

.solace-microsite.microsite .mobile-menu-panel button.search-toggle:after {
  content: none; }

.solace-microsite.microsite .mobile-menu-panel .mobile-menu-panel__main a, .solace-microsite.microsite .mobile-menu-panel .mobile-menu-panel__lower a {
  text-decoration: none; }

.solace-microsite.microsite .mobile-menu-panel .mobile-menu-panel__main a:hover, .solace-microsite.microsite .mobile-menu-panel .mobile-menu-panel__main a.active, .solace-microsite.microsite .mobile-menu-panel .mobile-menu-panel__main a:active, .solace-microsite.microsite .mobile-menu-panel .mobile-menu-panel__lower a:hover, .solace-microsite.microsite .mobile-menu-panel .mobile-menu-panel__lower a.active, .solace-microsite.microsite .mobile-menu-panel .mobile-menu-panel__lower a:active {
  color: #FFF;
  text-decoration: underline; }

.solace-microsite.microsite .mobile-menu-panel .mobile-menu-panel__mobile {
  display: none; }

.solace-microsite.microsite .wpml-ls-statics-footer {
  display: none; }

/** ARTICLE  */
article {
  padding-top: 40px;
  padding-bottom: 40px; }

article .other-translations {
  -webkit-transform: none !important;
      -ms-transform: none !important;
          transform: none !important;
  padding: 40px 55px !important;
  margin-top: 40px !important; }

article .other-translations select {
  margin: 0 !important; }

article .factsheet-content {
  margin-top: 55px; }

article + .signup_form {
  margin-top: 0px !important; }

/** Typography page */
.article__page .article__title, .article__page .button__title, .button__page .article__title, .button__page .button__title {
  margin: 60px 0; }

.article__page .article__title .article__title_border, .article__page .article__title .button_title_border, .article__page .button__title .article__title_border, .article__page .button__title .button_title_border, .button__page .article__title .article__title_border, .button__page .article__title .button_title_border, .button__page .button__title .article__title_border, .button__page .button__title .button_title_border {
  color: #898989;
  padding-bottom: 20px;
  border-bottom: 1px solid #898989;
  margin-bottom: 40px; }

.article__page .article__inline, .button__page .article__inline {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin: 0; }

.article__page .article__color_sphere, .button__page .article__color_sphere {
  border-radius: 50%;
  width: 40%;
  height: 0;
  padding-bottom: 40%;
  margin: auto; }

.article__page .article__color_sphere.primary_one, .button__page .article__color_sphere.primary_one {
  background-color: #16404d; }

.article__page .article__color_sphere.primary_two, .button__page .article__color_sphere.primary_two {
  background-color: #a6cdc6; }

.article__page .article__color_sphere.primary_three, .button__page .article__color_sphere.primary_three {
  background-color: #a6cdc6; }

.article__page .article__color_sphere.secondary_one, .button__page .article__color_sphere.secondary_one {
  background-color: #79d7be; }

.article__page .article__color_hex_primary, .article__page .article__color_hex_secondary, .button__page .article__color_hex_primary, .button__page .article__color_hex_secondary {
  width: 40%;
  margin: 30px auto;
  text-align: center; }

.article__page .article__text .article__text_label, .button__page .article__text .article__text_label {
  color: #898989;
  margin-top: 40px;
  margin-bottom: 20px; }

.article__page .article__text .article__text_color, .button__page .article__text .article__text_color {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  margin-right: 20px;
  border: 1px solid #79d7be; }

.article__page .article__text .article__text_color.text_black, .button__page .article__text .article__text_color.text_black {
  background-color: #000; }

.article__page .article__text .article__text_color.text_white, .button__page .article__text .article__text_color.text_white {
  background-color: #FFF; }

.article__page .article__text .article__text_color.text_cobalt, .button__page .article__text .article__text_color.text_cobalt {
  background-color: #a6cdc6; }

.article__page .article__text .article__text_color.text_grey, .button__page .article__text .article__text_color.text_grey {
  background-color: #79d7be; }

.article__page .article__text .article__text_color.text_grey_light, .button__page .article__text .article__text_color.text_grey_light {
  background-color: #767175; }

.article__page .article__text .article__text_color.text_blue, .button__page .article__text .article__text_color.text_blue {
  background-color: #79d7be; }

.free_text .cell {
  margin-left: 0;
  margin-right: 0; }

.free_text h2 {
  font-family: "Avenir LT W01_85 Heavy1475544", Helvetica, Roboto, Arial, sans-serif;
  font-size: 1.25rem;
  line-height: 1.625rem;
  margin-bottom: 19px; }

@media print, screen and (min-width: 40em) {
  .free_text h2 {
    font-size: 1.75rem;
    line-height: 2rem;
    margin-bottom: 22px; } }

.article__feature h1:not(:first-of-type), .article__feature h2:not(:first-of-type), .article__feature h3:not(:first-of-type), .article__feature h4:not(:first-of-type), .article__feature h5:not(:first-of-type), .article__feature section .free_text blockquote p:not(:first-of-type), section .free_text blockquote .article__feature p:not(:first-of-type), .article__feature h6:not(:first-of-type), .article__feature .updated .date:not(:first-of-type), .updated .article__feature .date:not(:first-of-type), .article__feature .h1:not(:first-of-type), .article__feature .h2:not(:first-of-type), .article__feature .h3:not(:first-of-type), .article__feature .h4:not(:first-of-type), .article__feature .h5:not(:first-of-type), .article__feature .h6:not(:first-of-type) {
  margin-top: 40px; }

.article__feature ul {
  margin-left: 40px;
  margin-right: 20px; }

.article__feature ol {
  margin-left: 1.5rem;
  list-style: none;
  counter-reset: li; }

.article__feature ol li {
  margin-left: 1.5rem;
  margin-bottom: 5px;
  counter-increment: li; }

.article__feature ol li::before {
  content: counter(li);
  background-color: #a6cdc6;
  color: #FFF;
  display: inline-block;
  width: 1.2rem;
  height: 1.2rem;
  margin-left: -4em;
  margin-right: 2.4em;
  text-align: center;
  direction: rtl;
  border-radius: 50%;
  font-size: 0.75rem; }

.news_intro_content {
  margin-top: 80px; }

@media print, screen and (min-width: 40em) {
  .news_intro_content, .news_content {
    padding-left: 20px;
    padding-right: 20px; } }

.contents_table {
  background-color: #F4F4F4;
  border-radius: 8px; }

.contents_table .accordion {
  background: none; }

.contents_table .accordion .accordion-item .accordion-title {
  margin: 30px 24px 0;
  border-bottom: 1px solid transparent;
  border-radius: 0px !important;
  padding-top: 0px !important;
  -webkit-transition: border 0.25s;
  -o-transition: border 0.25s;
  transition: border 0.25s; }

.contents_table .accordion .accordion-item .accordion-title:before {
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%); }

.contents_table .accordion .accordion-item.is-active .accordion-title {
  border-bottom: 1px solid #a3a3a3; }

.contents_table .accordion .accordion-item.is-active .accordion-title:before {
  -webkit-transform: translateY(-100%) rotate(-180deg);
      -ms-transform: translateY(-100%) rotate(-180deg);
          transform: translateY(-100%) rotate(-180deg); }

@media print, screen and (min-width: 40em) {
  .contents_table .accordion .accordion-item .accordion-content {
    padding: 20px 58px; } }

.contents_table .accordion .accordion-item .accordion-content a {
  text-decoration: none;
  font-weight: bold; }

.contents_table .accordion .accordion-item .accordion-content a .arrow-btn {
  top: 2px;
  height: 15px;
  min-width: 15px;
  position: relative;
  display: inline-block;
  margin: auto 10px auto 0;
  content: "";
  background: url(../../../elf-theme/assets/icons/btnarrow.svg);
  background-size: 15px 15px;
  text-decoration: none; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .contents_table .accordion .accordion-item .accordion-content a .arrow-btn {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/btnarrow.svg);
            mask-image: url(../../../elf-theme/assets/icons/btnarrow.svg);
    -webkit-mask-size: 15px 15px;
            mask-size: 15px 15px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.contents_table .accordion .accordion-item .accordion-content a:hover, .contents_table .accordion .accordion-item .accordion-content a.active {
  color: #16404d; }

.contents_table .accordion .accordion-item .accordion-content a:hover .arrow-btn, .contents_table .accordion .accordion-item .accordion-content a.active .arrow-btn {
  background: url(../../../elf-theme/assets/icons/btnarrow-hover.svg); }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .contents_table .accordion .accordion-item .accordion-content a:hover .arrow-btn, .contents_table .accordion .accordion-item .accordion-content a.active .arrow-btn {
    background: #79d7be;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/btnarrow-hover.svg);
            mask-image: url(../../../elf-theme/assets/icons/btnarrow-hover.svg);
    -webkit-mask-size: 15px 15px;
            mask-size: 15px 15px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

/** AWARD */
@media print, screen and (min-width: 64em) {
  .award__hero {
    padding-left: 20px;
    padding-right: 20px; } }

.award__hero .reg_opens, .award__hero .reg_closes {
  padding-right: 30px; }

.award__hero .reg_opens {
  margin-bottom: 30px; }

@media print, screen and (min-width: 40em) {
  .award__hero .reg_opens {
    margin-bottom: unset; } }

.award__hero .button, .award__hero li.faux-button a, li.faux-button .award__hero a {
  margin-top: 30px; }

/** CARD */
.card {
  overflow: hidden;
  border-radius: 5px;
  position: relative; }

.card ul {
  list-style: none; }

.card ul li {
  margin-bottom: 1em; }

.card ul li::before {
  content: "\25CF";
  color: #649ADB;
  font-weight: bold;
  display: inline-block;
  width: 1em;
  margin-left: -1em; }

.card .img_link {
  text-decoration: none; }

.card .card-link {
  text-decoration: none;
  color: initial; }

.card .card-link > div:not([class]) {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.card .card-link > div:not([class]) .text__wrapper {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto; }

.card .card-link.override:hover, .card a.card-link.override.active, .card button.card-link.override.active {
  text-decoration: underline; }

.card .card-link h5:hover, .card .card-link section .free_text blockquote p:hover, section .free_text blockquote .card .card-link p:hover, .card .card-link .h5:hover, .card .card-link a.h5.active, .card .card-link button.h5.active {
  text-decoration: underline !important; }

.card .card-link .text__wrapper {
  color: #16404d;
  -webkit-transition: all 0.25s;
  -o-transition: all 0.25s;
  transition: all 0.25s;
  padding: 20px; }

.card .card-link .text__wrapper .subheading {
  -webkit-transition: all 0.25s;
  -o-transition: all 0.25s;
  transition: all 0.25s; }

.card .card-link .text__wrapper h5, .card .card-link .text__wrapper section .free_text blockquote p, section .free_text blockquote .card .card-link .text__wrapper p, .card .card-link .text__wrapper .h5 {
  -webkit-transition: all 0.25s;
  -o-transition: all 0.25s;
  transition: all 0.25s; }

.card .card-link:hover .text__wrapper, .card a.card-link.active .text__wrapper, .card button.card-link.active .text__wrapper {
  background: #16404d;
  color: #FFF;
  border-color: #16404d; }

.card .card-link:hover .text__wrapper li, .card a.card-link.active .text__wrapper li, .card button.card-link.active .text__wrapper li {
  color: #FFF; }

.card .card-link:hover .text__wrapper .subheading, .card a.card-link.active .text__wrapper .subheading, .card button.card-link.active .text__wrapper .subheading {
  color: #FFF; }

.card .card-link:hover .text__wrapper h5, .card a.card-link.active .text__wrapper h5, .card button.card-link.active .text__wrapper h5, .card .card-link:hover .text__wrapper section .free_text blockquote p, section .free_text blockquote .card .card-link:hover .text__wrapper p, .card a.card-link.active .text__wrapper section .free_text blockquote p, section .free_text blockquote .card a.card-link.active .text__wrapper p, .card button.card-link.active .text__wrapper section .free_text blockquote p, section .free_text blockquote .card button.card-link.active .text__wrapper p, .card .card-link:hover .text__wrapper .h5, .card a.card-link.active .text__wrapper .h5, .card button.card-link.active .text__wrapper .h5 {
  color: #79d7be; }

.card .card-link:hover .text__wrapper h5:after, .card a.card-link.active .text__wrapper h5:after, .card button.card-link.active .text__wrapper h5:after, .card .card-link:hover .text__wrapper section .free_text blockquote p:after, section .free_text blockquote .card .card-link:hover .text__wrapper p:after, .card a.card-link.active .text__wrapper section .free_text blockquote p:after, section .free_text blockquote .card a.card-link.active .text__wrapper p:after, .card button.card-link.active .text__wrapper section .free_text blockquote p:after, section .free_text blockquote .card button.card-link.active .text__wrapper p:after, .card .card-link:hover .text__wrapper .h5:after, .card a.card-link.active .text__wrapper .h5:after, .card button.card-link.active .text__wrapper .h5:after {
  /* // Removed due to long title conflicts background-image: url(../../../elf-theme/assets/icons/arrow-btn-yellow.svg); @supports(mask-image: url("")) { background: $secondary-one; mask-image: url(../../../elf-theme/assets/icons/arrow-btn-yellow.svg); mask-size: 9px 13px; mask-repeat: no-repeat; } */ }

.card .overlay-link {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  text-indent: -99999px;
  z-index: 0; }

.card.has-image {
  min-height: 255px; }

.card.has-image:hover .overlay-image, a.card.has-image.active .overlay-image, button.card.has-image.active .overlay-image {
  opacity: 0; }

.card.has-link {
  -webkit-transition: background 0.25s;
  -o-transition: background 0.25s;
  transition: background 0.25s; }

.card.has-link:hover, a.card.has-link.active, button.card.has-link.active, .card.has-link.has-image {
  background-color: #16404d; }

.card.has-link:hover a, a.card.has-link.active a, button.card.has-link.active a, .card.has-link.has-image a {
  color: #79d7be; }

.card.has-link:hover h4, a.card.has-link.active h4, button.card.has-link.active h4, .card.has-link:hover h5, a.card.has-link.active h5, button.card.has-link.active h5, .card.has-link:hover section .free_text blockquote p, section .free_text blockquote .card.has-link:hover p, a.card.has-link.active section .free_text blockquote p, section .free_text blockquote a.card.has-link.active p, button.card.has-link.active section .free_text blockquote p, section .free_text blockquote button.card.has-link.active p, a.card.has-link.button.active section .free_text blockquote p, section .free_text blockquote a.card.has-link.button.active p, li.faux-button a.card.has-link.active section .free_text blockquote p, section .free_text blockquote li.faux-button a.card.has-link.active p, .card.has-link:hover p, a.card.has-link.active p, button.card.has-link.active p, .card.has-link:hover a[href^="mailto:"], a.card.has-link.active a[href^="mailto:"], button.card.has-link.active a[href^="mailto:"], .card.has-link:hover a[href^="tel:"], a.card.has-link.active a[href^="tel:"], button.card.has-link.active a[href^="tel:"], .card.has-link:hover li, a.card.has-link.active li, button.card.has-link.active li, .card.has-link.has-image h4, .card.has-link.has-image h5, .card.has-link.has-image section .free_text blockquote p, section .free_text blockquote .card.has-link.has-image p, .card.has-link.has-image p, .card.has-link.has-image a[href^="mailto:"], .card.has-link.has-image a[href^="tel:"], .card.has-link.has-image li {
  color: #FFF; }

.card .overlay-image {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-indent: -99999px;
  z-index: 2;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  pointer-events: none;
  opacity: 1;
  -webkit-transition: opacity 0.25s;
  -o-transition: opacity 0.25s;
  transition: opacity 0.25s; }

.card.transparent {
  padding-top: 70px;
  padding-left: 30px;
  padding-right: 30px;
  margin-bottom: 0; }

.card.transparent .card-links {
  margin-bottom: 70px; }

.card.transparent .card-links a.link-second {
  float: right; }

.card.transparent .tag, .card.transparent .card-links a {
  color: #a6cdc6; }

.card.transparent .tag {
  font-weight: bold; }

.card.transparent .card-links a {
  font-weight: 400; }

.card.bordered {
  border-top: 12px solid #16404d;
  -webkit-transition: all 0.25s;
  -o-transition: all 0.25s;
  transition: all 0.25s; }

.card.bordered:hover, a.card.bordered.active, button.card.bordered.active {
  border-top-color: #79d7be; }

.card.card__simple {
  padding-bottom: 0; }

.card.card__simple .button_wrap {
  margin-top: 30px; }

.card.card__simple.medium-6 a {
  min-width: 100%;
  width: 100%;
  margin: 30px 0px 10px 0px; }

@media print, screen and (min-width: 64em) {
  .card.card__simple.hero-padding div {
    padding-left: 20px;
    padding-right: 20px; } }

.card.card__link {
  border-top: solid 5px #79d7be;
  padding-top: 20px; }

.card.card__list hr {
  margin-bottom: 30px; }

@media print, screen and (max-width: 39.99875em) {
  .card.card__callout {
    padding: 50px 25px !important; } }

.card.card__callout .button, .card.card__callout li.faux-button a, li.faux-button .card.card__callout a {
  margin-top: unset;
  margin-left: 0 !important;
  margin-right: 0 !important; }

.card.card__expandable {
  position: relative;
  -webkit-transition: background 0.25s;
  -o-transition: background 0.25s;
  transition: background 0.25s; }

.card.card__expandable .content-wrap {
  padding: 18px 24px; }

.card.card__expandable .accordion-content {
  padding-top: 0;
  padding-bottom: 0; }

.card.card__expandable .accordion-content .content {
  border-left: 5px solid #79d7be;
  padding-left: 16px; }

.card.card__expandable .accordion-content h6:not(:first-child), .card.card__expandable .accordion-content .updated .date:not(:first-child), .updated .card.card__expandable .accordion-content .date:not(:first-child) {
  margin-top: 20px; }

.card.card__expandable .accordion-content p {
  margin-bottom: 0; }

.card.card__expandable .accordion-title {
  position: absolute;
  top: 0;
  right: 0;
  height: 300px;
  left: 0;
  text-indent: -9999px; }

.card.card__expandable .link {
  z-index: 2;
  display: block;
  color: #16404d;
  margin-bottom: 1rem;
  white-space: nowrap;
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  cursor: pointer;
  margin-top: -18px;
  padding: 0px 18px 24px 18px; }

.card.card__expandable .link:first-child {
  margin-top: 0px; }

.card.card__expandable:hover, a.card.card__expandable.active, button.card.card__expandable.active, .card.card__expandable:focus {
  background: #16404d; }

.card.card__expandable:hover h5, a.card.card__expandable.active h5, button.card.card__expandable.active h5, .card.card__expandable:hover section .free_text blockquote p, section .free_text blockquote .card.card__expandable:hover p, a.card.card__expandable.active section .free_text blockquote p, section .free_text blockquote a.card.card__expandable.active p, button.card.card__expandable.active section .free_text blockquote p, section .free_text blockquote button.card.card__expandable.active p, a.card.card__expandable.button.active section .free_text blockquote p, section .free_text blockquote a.card.card__expandable.button.active p, li.faux-button a.card.card__expandable.active section .free_text blockquote p, section .free_text blockquote li.faux-button a.card.card__expandable.active p, .card.card__expandable:hover .h5, a.card.card__expandable.active .h5, button.card.card__expandable.active .h5, .card.card__expandable:hover .h6, a.card.card__expandable.active .h6, button.card.card__expandable.active .h6, .card.card__expandable:hover h6, a.card.card__expandable.active h6, button.card.card__expandable.active h6, .card.card__expandable:hover .updated .date, .updated .card.card__expandable:hover .date, a.card.card__expandable.active .updated .date, .updated a.card.card__expandable.active .date, button.card.card__expandable.active .updated .date, .updated button.card.card__expandable.active .date, .card.card__expandable:hover p, a.card.card__expandable.active p, button.card.card__expandable.active p, .card.card__expandable:hover a, a.card.card__expandable.active a, button.card.card__expandable.active a, .card.card__expandable:hover .subheading, a.card.card__expandable.active .subheading, button.card.card__expandable.active .subheading, .card.card__expandable:hover .accordion-content *, a.card.card__expandable.active .accordion-content *, button.card.card__expandable.active .accordion-content *, .card.card__expandable:hover .link, a.card.card__expandable.active .link, button.card.card__expandable.active .link, .card.card__expandable:focus h5, .card.card__expandable:focus section .free_text blockquote p, section .free_text blockquote .card.card__expandable:focus p, .card.card__expandable:focus .h5, .card.card__expandable:focus .h6, .card.card__expandable:focus h6, .card.card__expandable:focus .updated .date, .updated .card.card__expandable:focus .date, .card.card__expandable:focus p, .card.card__expandable:focus a, .card.card__expandable:focus .subheading, .card.card__expandable:focus .accordion-content *, .card.card__expandable:focus .link {
  color: #FFF; }

.card.card__expandable:hover h5:before, a.card.card__expandable.active h5:before, button.card.card__expandable.active h5:before, .card.card__expandable:hover section .free_text blockquote p:before, section .free_text blockquote .card.card__expandable:hover p:before, a.card.card__expandable.active section .free_text blockquote p:before, section .free_text blockquote a.card.card__expandable.active p:before, button.card.card__expandable.active section .free_text blockquote p:before, section .free_text blockquote button.card.card__expandable.active p:before, .card.card__expandable:hover .h5:before, a.card.card__expandable.active .h5:before, button.card.card__expandable.active .h5:before, .card.card__expandable:focus h5:before, .card.card__expandable:focus section .free_text blockquote p:before, section .free_text blockquote .card.card__expandable:focus p:before, .card.card__expandable:focus .h5:before {
  background-image: url(../../../elf-theme/assets/icons/down-arrow-white.svg); }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .card.card__expandable:hover h5:before, a.card.card__expandable.active h5:before, button.card.card__expandable.active h5:before, .card.card__expandable:hover section .free_text blockquote p:before, section .free_text blockquote .card.card__expandable:hover p:before, a.card.card__expandable.active section .free_text blockquote p:before, section .free_text blockquote a.card.card__expandable.active p:before, button.card.card__expandable.active section .free_text blockquote p:before, section .free_text blockquote button.card.card__expandable.active p:before, .card.card__expandable:hover .h5:before, a.card.card__expandable.active .h5:before, button.card.card__expandable.active .h5:before, .card.card__expandable:focus h5:before, .card.card__expandable:focus section .free_text blockquote p:before, section .free_text blockquote .card.card__expandable:focus p:before, .card.card__expandable:focus .h5:before {
    background: #FFF;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/down-arrow-white.svg);
            mask-image: url(../../../elf-theme/assets/icons/down-arrow-white.svg); } }

.card.card__expandable:hover h3.h5, a.card.card__expandable.active h3.h5, button.card.card__expandable.active h3.h5, .card.card__expandable:focus h3.h5 {
  color: #79d7be; }

.card.card__stat .text__wrapper {
  text-align: center;
  padding-left: 30px;
  padding-right: 30px; }

.card.card__stat .text__wrapper .stat__wrapper__outer {
  margin: 0 auto; }

@media print, screen and (max-width: 39.99875em) {
  .card.card__stat .text__wrapper .stat__wrapper__outer {
    max-width: 200px; } }

.card.card__stat .text__wrapper .stat__wrapper {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 0;
  padding: 50% 0;
  border-radius: 50%;
  margin-bottom: 30px;
  background: #E4E4E4; }

.card.card__stat .text__wrapper .stat__wrapper .stat {
  color: #a6cdc6;
  font-size: 3.375rem;
  font-weight: 700;
  line-height: 0; }

.card.card__bg__img {
  background-repeat: no-repeat;
  background-size: cover;
  color: #a6cdc6;
  padding-top: 80px;
  padding-bottom: 60px; }

.card.card__bg__img span.subheading, .card.card__bg__img p > a {
  color: #a6cdc6; }

.card.card__bg__img .cta_wrap {
  margin-top: 40px; }

.card.card__bg__img.dark__text {
  color: #79d7be !important; }

.card.card__bg__img.dark__text span.subheading, .card.card__bg__img.dark__text a:not(.button) {
  color: #79d7be !important; }

.card.card__bg__img.greyBg {
  background-color: #F4F4F4; }

.card.cards-heading-margin-bottom {
  margin-bottom: 1rem; }

.card.card__heading h2.h3 span, .card.card__heading__inner h2.h3 span {
  position: absolute;
  margin-top: -200px; }

@media print, screen and (max-width: 63.99875em) {
  .card.card__heading .standard-link, .card.card__heading__inner .standard-link {
    display: inline-block;
    margin-bottom: 16px; } }

.card.card__heading__inner.margin-bottom, .card.card__heading__inner .margin-bottom {
  margin-bottom: 20px; }

.card.card__heading__inner .heading {
  padding-bottom: 20px; }

.card.card__heading__inner .heading a {
  float: none;
  display: block;
  margin-top: 20px; }

@media print, screen and (min-width: 40em) {
  .card.card__heading__inner .heading {
    padding-bottom: 0px; }
  .card.card__heading__inner .heading a {
    float: right; }
  .card.card__heading__inner .heading a:hover, .card.card__heading__inner .heading a.active {
    color: #16404d !important; } }

.card.card__preview {
  margin-bottom: 20px; }

.card.card__preview .h5, .card.card__preview h5, .card.card__preview section .free_text blockquote p, section .free_text blockquote .card.card__preview p {
  margin-top: 10px;
  max-width: 100%;
  font-size: 18px; }

@media print, screen and (min-width: 64em) {
  .card.card__preview .h5, .card.card__preview h5, .card.card__preview section .free_text blockquote p, section .free_text blockquote .card.card__preview p {
    max-width: 92%; } }

.card.card__preview .h5::after, .card.card__preview h5::after, .card.card__preview section .free_text blockquote p::after, section .free_text blockquote .card.card__preview p::after {
  /* // Removed due to long title conflicts position: relative; left: 10px; @include breakpoint(large) { left: 30px; } display: inline-block; content: ""; background: url(../../../elf-theme/assets/icons/arrow-btn-blue.svg); background-size: 9px 13px; width: 9px; height: 13px; text-decoration: none; //transition: left 0.5s ease; @supports(mask-image: url("")) { background: $primary-one; mask-image: url(../../../elf-theme/assets/icons/arrow-btn-blue.svg); mask-size: 9px 13px; mask-repeat: no-repeat; } */ }

.card.card__preview .h5 a, .card.card__preview h5 a, .card.card__preview section .free_text blockquote p a, section .free_text blockquote .card.card__preview p a {
  color: #16404d; }

.card.card__preview p {
  margin-bottom: 20px; }

.card.card__preview .image__preview {
  position: relative;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px; }

.card.card__preview .image__preview img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -o-object-fit: cover;
     object-fit: cover; }

.card.card__preview .image__preview .tag_img {
  position: absolute;
  z-index: 1;
  display: block;
  padding: 5px 7px;
  background-color: #a6cdc6;
  color: #FFF;
  letter-spacing: .275em;
  text-transform: uppercase;
  font-family: "Avenir LT W01_55 Roman1475520";
  font-size: .75rem;
  width: 100%; }

.card.card__preview .image__preview.ers-vision img::before {
  /* position: relative; left: 10px; display: inline-block; content: ""; background: url(../../../elf-theme/assets/icons/arrow-next@2x.png); background-size: 9px 13px; width: 9px; height: 13px; text-decoration: none; //transition: left 0.5s ease; */ }

.card.card__preview .image__preview.airlines, .card.card__preview .image__preview.patient-organisation, .card.card__preview .image__preview.partner_societies, .card.card__preview .image__preview.contain {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #FFF;
  border: 1px solid #F0F0F0;
  border-bottom: 0; }

.card.card__preview .image__preview.airlines img, .card.card__preview .image__preview.patient-organisation img, .card.card__preview .image__preview.partner_societies img, .card.card__preview .image__preview.contain img {
  width: 50%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center center;
     object-position: center center; }

.card.card__preview .text__wrapper {
  padding: 15px;
  border: 1px solid #F0F0F0;
  border-top: 0;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px; }

@media print, screen and (min-width: 40em) {
  .card.card__preview .text__wrapper {
    padding-top: 20px; } }

.card.card__preview .text__wrapper .h5, .card.card__preview .text__wrapper h5, .card.card__preview .text__wrapper section .free_text blockquote p, section .free_text blockquote .card.card__preview .text__wrapper p {
  text-decoration: none !important; }

.card.card__preview.podcast_block .text__wrapper a {
  display: block;
  margin-bottom: 10px; }

.card.card__preview.podcast_block .text__wrapper .h5::after {
  content: none; }

.card.card__preview .faux--link {
  text-decoration: underline;
  margin-left: 4px; }

.card.card__preview .date, .card.card__preview .category {
  color: #767175;
  font-size: 0.75rem;
  text-transform: uppercase;
  display: block;
  margin-bottom: 30px; }

.card.card__preview .category {
  text-transform: capitalize;
  position: relative; }

.card.card__preview .category::before {
  top: 6px;
  height: 21px;
  width: 19px;
  position: relative;
  display: inline-block;
  margin-right: 10px;
  content: "";
  background: url(../../../elf-theme/assets/icons/article-icon@2x.png);
  background-size: 19px 21px;
  text-decoration: none; }

.card.card__preview .caption {
  margin-bottom: 12px; }

.card.card__preview .caption.last {
  margin-bottom: 25px; }

.card.card__preview span.caption::before {
  top: 6px;
  height: 21px;
  width: 19px;
  position: relative;
  display: inline-block;
  margin-right: 10px;
  content: "";
  background: url(../../../elf-theme/assets/icons/article-icon@2x.png);
  background-size: 19px 21px;
  text-decoration: none; }

.card.card__preview.preview__details {
  background-color: #fff;
  padding: 20px 30px; }

.card.card__preview.preview__details ul {
  margin: 0px;
  list-style: none; }

.card.card__preview.preview__details ul a:nth-child(odd) li {
  background: #f7f7f7; }

.card.card__preview.preview__details ul a li.download {
  position: relative;
  display: block;
  padding: 10px;
  margin-bottom: 0px; }

.card.card__preview.preview__details ul a li.download::before {
  content: "";
  background: url(../../../elf-theme/assets/icons/download.png);
  background-size: 15px 15px;
  width: 15px;
  height: 15px;
  right: 10px;
  position: absolute;
  top: 50%;
  margin-top: -.5rem; }

.card.card__preview.preview__details ul a li.download a {
  text-decoration: underline; }

.card.card__preview.card__preview_home {
  border-bottom: none; }

.card.card__preview.card__preview_home .image__preview {
  border-bottom: 10px solid #a6cdc6; }

.card.card__pushdown .image__preview {
  width: 100%;
  height: auto;
  overflow: hidden; }

@media print, screen and (min-width: 40em) {
  .card.card__pushdown .image__preview {
    max-height: 230px;
    min-height: 230px; } }

.card.card__pushdown .image__preview img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 230px;
  width: 100%; }

.card.card__pushdown .image__preview.airlines, .card.card__pushdown .image__preview.patient-organisation, .card.card__pushdown .image__preview.partner_societies, .card.card__pushdown .image__preview.contain {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #FFF;
  border: 1px solid #F0F0F0;
  border-bottom: 0; }

.card.card__pushdown .image__preview.airlines img, .card.card__pushdown .image__preview.patient-organisation img, .card.card__pushdown .image__preview.partner_societies img, .card.card__pushdown .image__preview.contain img {
  width: 50%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center center;
     object-position: center center; }

.card.card__pushdown .image__preview.patient-organisation.default-bg {
  background: #F0F0F0; }

.card.card__pushdown.airlines .content-wrap .accordion-content h1, .card.card__pushdown.airlines .content-wrap .accordion-content h2, .card.card__pushdown.airlines .content-wrap .accordion-content h3, .card.card__pushdown.airlines .content-wrap .accordion-content h4, .card.card__pushdown.airlines .content-wrap .accordion-content h5, .card.card__pushdown.airlines .content-wrap .accordion-content section .free_text blockquote p, section .free_text blockquote .card.card__pushdown.airlines .content-wrap .accordion-content p, .card.card__pushdown.airlines .content-wrap .accordion-content h6, .card.card__pushdown.airlines .content-wrap .accordion-content .updated .date, .updated .card.card__pushdown.airlines .content-wrap .accordion-content .date {
  font-size: 1rem;
  line-height: 1.6;
  text-decoration: none; }

.card.card__pushdown .content-wrap h3.h5 {
  font-size: 18px; }

@media print, screen and (min-width: 40em) {
  .card.card__pushdown.medium-6 .image__preview {
    max-height: 312px;
    min-height: 312px; } }

.card.card__pushdown.medium-6 .image__preview img {
  height: 312px; }

.card.card__pushdown .text__wrapper {
  /* .tag { text-transform: uppercase; color: $primary-two; font-size: rem-calc(12); } */ }

.card.card__pushdown .text__wrapper .pushdown__heading {
  margin-top: 10px;
  position: relative;
  display: block;
  text-align: left;
  max-width: 90%; }

.card.card__pushdown .text__wrapper .pushdown__heading::after {
  /* position: absolute; top: 5px; right: 0; display: inline-block; content: ""; background: url(../../../elf-theme/assets/icons/down-arrow.svg); background-size: 15px 11px; width: 15px; height: 11px; text-decoration: none; */ }

.card.card__pushdown .text__wrapper .read__more {
  color: #a6cdc6;
  font-size: 1rem; }

.card.card__pushdown .text__wrapper hr {
  border: none;
  height: 2px;
  background: #E4E4E4; }

.card.card__pushdown.card__profile {
  background-color: #F4F4F4;
  border-radius: 0; }

.card.card__pushdown.card__profile .accordion-content {
  text-align: center;
  overflow: hidden; }

.card.card__pushdown.card__profile h4, .card.card__pushdown.card__profile .h4, .card.card__pushdown.card__profile h5, .card.card__pushdown.card__profile section .free_text blockquote p, section .free_text blockquote .card.card__pushdown.card__profile p, .card.card__pushdown.card__profile .h5, .card.card__pushdown.card__profile h6, .card.card__pushdown.card__profile .updated .date, .updated .card.card__pushdown.card__profile .date, .card.card__pushdown.card__profile .h6 {
  text-align: center; }

.card.card__pushdown.card__profile a {
  display: table;
  text-align: center;
  margin: 0 auto; }

.card.card__pushdown.card__profile a.button, .card.card__pushdown.card__profile li.faux-button a, li.faux-button .card.card__pushdown.card__profile a {
  margin-top: 20px;
  margin-bottom: 30px; }

.card.card__pushdown.card__profile a.standard_link {
  text-decoration: none;
  border-bottom: 3px solid #79d7be;
  padding-bottom: 4px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

.card.card__pushdown.card__profile a.standard_link:hover, .card.card__pushdown.card__profile a.standard_link.active {
  color: #011542;
  border-bottom: 3px solid #649ADB; }

.card.card__pushdown.card__profile .pushdown__heading {
  max-width: 100%;
  margin-left: 40px;
  margin-right: 40px; }

.card.card__pushdown.card__profile .pushdown__heading.h5 {
  font-size: 18px; }

.card.card__media .featured_img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
  background-size: cover;
  background-position: center center;
  padding: 40px 20px; }

@media print, screen and (min-width: 40em) {
  .card.card__media .featured_img {
    padding: 80px 100px; } }

.card.card__media .featured_img h2, .card.card__media .featured_img p {
  color: #FFF; }

.card.card__media .featured_img a {
  margin-top: clamp(20px, 50px, 70px);
  margin-bottom: 0px; }

.card.card__media + .cell a {
  border-radius: 0; }

.card.card__tile {
  position: relative;
  padding-bottom: 0;
  margin-bottom: 20px; }

.card.card__tile a {
  display: block; }

.card.card__tile .tile--wrap {
  background-color: transparent;
  position: relative;
  display: block;
  min-height: 270px;
  /* display: flex; justify-content: center; align-items: center; */ }

.card.card__tile .tile--wrap .tile--inner {
  text-align: center;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.card.card__tile .tile--wrap .tile--inner img, .card.card__tile .tile--wrap .tile--inner span {
  display: block;
  margin: 0 auto; }

.card.card__tile .tile--wrap .tile--inner span {
  font-size: 1.125rem;
  color: #79d7be; }

.card.card__tile .tile--wrap .tile--inner img {
  margin-bottom: 25px; }

.card.card__tile .tile--wrap .tile--hover {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 45px 30px 45px 30px;
  color: #fff;
  background-color: #a6cdc6;
  display: none; }

.card.card__tile .tile--wrap .tile--hover span.underline {
  text-decoration: underline; }

.card.card__tile .tile--wrap .tile--hover h4, .card.card__tile .tile--wrap .tile--hover p, .card.card__tile .tile--wrap .tile--hover span {
  color: #fff; }

.card.card__tile .card-link.faux-link:hover .tile--wrap > a .tile--hover, .card.card__tile a.card-link.faux-link.active .tile--wrap > a .tile--hover, .card.card__tile button.card-link.faux-link.active .tile--wrap > a .tile--hover {
  display: block;
  min-height: 270px; }

.card.text__bg {
  background-color: #79d7be;
  padding: 32px 40px; }

.card.text__bg h1, .card.text__bg h2, .card.text__bg .subheading, .card.text__bg p {
  color: #16404d; }

.card.text__bg .subheading {
  margin-bottom: 10px; }

.card.text__bg h2 {
  margin-bottom: 0.625rem; }

.card.text__bg .button-group {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.card.text__bg .button-group a:not(.button) {
  display: block;
  text-align: left;
  color: #16404d;
  text-decoration: none;
  border-bottom: 3px solid #79d7be;
  padding-bottom: 4px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

.card.text__bg .button-group a:not(.button):hover, .card.text__bg .button-group a.active:not(.button) {
  border-bottom: 3px solid #649ADB; }

.card.text__bg .button, .card.text__bg li.faux-button a, li.faux-button .card.text__bg a {
  margin-bottom: 20px; }

@media print, screen and (min-width: 40em) {
  .card.text__bg .button, .card.text__bg li.faux-button a, li.faux-button .card.text__bg a {
    margin-right: 26px;
    margin-bottom: 0; } }

.card.text__bg .clearfix {
  display: block; }

@media print, screen and (min-width: 64em) {
  .card.text__bg.negative__margin {
    margin-left: -5px; } }

.card.text__bg .highloght__video_btn {
  padding: 10px 10px 0px 0px; }

.card.text__bg.bg-none {
  background-color: transparent;
  padding: 0; }

.card.text__bg.bg-none h2, .card.text__bg.bg-none p {
  color: #FFF;
  margin-bottom: 35px; }

.card.text__bg.bg-none .subheading {
  color: #FFF;
  margin-bottom: 18px;
  display: block; }

.card.text__bg.bg-none .button-group {
  margin-bottom: 0px; }

.card.text__bg.bg-blue {
  background-color: #a6cdc6; }

.card.text__bg.bg-blue .subheading, .card.text__bg.bg-blue h2, .card.text__bg.bg-blue p, .card.text__bg.bg-blue a:not(.button) {
  color: #FFF; }

.card.text__bg.bg-yellow .button-group a:not(.button) {
  border-bottom: 3px solid #16404d;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

.card.text__bg.bg-yellow .button-group a:not(.button):hover, .card.text__bg.bg-yellow .button-group a.active:not(.button) {
  border-bottom: 3px solid #649ADB; }

.card.card__simpleHeading {
  padding: 0;
  margin-bottom: 0; }

.card.card__simpleHeading .heading {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  margin: 0; }

.card.card__simpleHeading .heading .h4 {
  margin: auto 0; }

.card.card__simpleHeading .heading a {
  margin: auto 0 auto auto; }

.card.card__simpleHeading_featured .heading {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  margin-bottom: 0; }

.card.card__simpleHeading_featured .heading .h4 {
  margin: auto 0; }

.card.card__simpleHeading_featured .heading a {
  margin: auto 0 auto auto; }

.card.card__featured, .card.card__simpleHeading_img {
  background: url(../../../elf-theme/assets/images/cards/card-heading.png) no-repeat;
  background-size: cover !important;
  background-position: center !important; }

.card.card__featured {
  min-height: 230px; }

@media print, screen and (min-width: 64em) {
  .card.card__featured {
    min-height: 400px; } }

@media print, screen and (max-width: 63.99875em) {
  .card.card__featured {
    margin-bottom: 0px;
    border-radius: 5px 5px 0px 0px; } }

.card.card__featured a .link-block {
  position: relative;
  display: block;
  height: 100%; }

@media print, screen and (max-width: 63.99875em) {
  .card.card__featured__text {
    margin-top: 0px;
    padding: 20px;
    border: 1px solid #F0F0F0;
    border-radius: 0px 0px 5px 5px; } }

.card.card__featured__text a.inner-wrap {
  display: block;
  text-decoration: none; }

.card.card__featured__text .caption {
  margin-bottom: 15px; }

.card.card__featured__text .caption.last {
  margin-bottom: 25px; }

.card.card__featured__text .caption.date, .card.card__featured__text .caption.author {
  display: inline-block;
  padding: 0 12px; }

.card.card__featured__text .caption.date {
  padding-left: 0; }

.card.card__featured__text .caption.author {
  font-family: "Avenir LT W01_85 Heavy1475544"; }

.card.card__featured__text .caption.date + .author {
  border-left: 1px solid #e4e5e9; }

.card.card__featured__text span.caption::before {
  top: 6px;
  height: 21px;
  width: 19px;
  position: relative;
  display: inline-block;
  margin-right: 10px;
  content: "";
  background: url(../../../elf-theme/assets/icons/article-icon@2x.png);
  background-size: 19px 21px;
  text-decoration: none; }

@media print, screen and (min-width: 64em) {
  .card.card__featured__text {
    padding: 40px; } }

.card.card__blue .cell:not(.card__heading__inner), .card.card__grey .cell:not(.card__heading__inner) {
  background-color: #a6cdc6; }

.card.card__blue .cell:not(.card__heading__inner) *:not(a), .card.card__grey .cell:not(.card__heading__inner) *:not(a) {
  color: #a6cdc6; }

.card.card__blue .cell:not(.card__heading__inner) p, .card.card__grey .cell:not(.card__heading__inner) p {
  font-size: 1.125rem;
  line-height: 1.5rem;
  letter-spacing: 0;
  font-weight: 400; }

@media print, screen and (min-width: 40em) {
  .card.card__blue .cell:not(.card__heading__inner) p, .card.card__grey .cell:not(.card__heading__inner) p {
    font-size: 1.25rem;
    line-height: 1.875rem; } }

.card.card__blue .cell.large-order-1, .card.card__grey .cell.large-order-1 {
  padding-bottom: 90px; }

@media print, screen and (max-width: 39.99875em) {
  .card.card__blue .cell.large-order-1, .card.card__grey .cell.large-order-1 {
    margin-top: 0; } }

.card.card__blue .img__featured, .card.card__grey .img__featured {
  margin-bottom: 0; }

.card.card__blue .img__featured img, .card.card__grey .img__featured img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover; }

.card.card__blue .vertical__align, .card.card__grey .vertical__align {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

.card.card__blue .vertical__align h2, .card.card__grey .vertical__align h2 {
  margin-bottom: 0.7rem;
  margin-top: 0.5rem; }

.card.card__blue .vertical__align a.button, .card.card__blue .vertical__align li.faux-button a, li.faux-button .card.card__blue .vertical__align a, .card.card__grey .vertical__align a.button, .card.card__grey .vertical__align li.faux-button a, li.faux-button .card.card__grey .vertical__align a {
  margin-bottom: 0; }

.card.card__blue .vertical__align p.text-link, .card.card__grey .vertical__align p.text-link {
  margin-top: 30px; }

.card.card__blue .vertical__align p.text-link a, .card.card__grey .vertical__align p.text-link a {
  color: #a6cdc6; }

.card.card__blue .cell .button.tertiary, .card.card__blue .cell li.faux-button a.tertiary, li.faux-button .card.card__blue .cell a.tertiary {
  border: 1px solid #a6cdc6; }

.card.card__blue .cell .button.tertiary:hover, .card.card__blue .cell a.button.tertiary.active, .card.card__blue .cell li.faux-button a.tertiary.active, li.faux-button .card.card__blue .cell a.tertiary.active, .card.card__blue .cell button.button.tertiary.active, .card.card__blue .cell li.faux-button a.tertiary:hover, li.faux-button .card.card__blue .cell a.tertiary:hover {
  border: 1px solid #79d7be; }

.card.card__blue .cell .button.secondary, .card.card__blue .cell .signup__form .button, .signup__form .card.card__blue .cell .button, .card.card__blue .cell .signup__form li.faux-button a, .signup__form li.faux-button .card.card__blue .cell a, .card.card__blue .cell li.faux-button .signup__form a, li.faux-button .signup__form .card.card__blue .cell a, .card.card__blue .cell li.faux-button a.secondary, li.faux-button .card.card__blue .cell a.secondary {
  border: 1px solid #a6cdc6; }

.card.card__blue .cell .button.secondary:hover, .card.card__blue .cell .signup__form .button:hover, .signup__form .card.card__blue .cell .button:hover, .card.card__blue .cell .signup__form a.button.active, .signup__form .card.card__blue .cell a.button.active, .card.card__blue .cell .signup__form li.faux-button a.active, .signup__form li.faux-button .card.card__blue .cell a.active, .card.card__blue .cell li.faux-button .signup__form a.active, li.faux-button .signup__form .card.card__blue .cell a.active, .card.card__blue .cell .signup__form button.button.active, .signup__form .card.card__blue .cell button.button.active, .card.card__blue .cell .signup__form li.faux-button a:hover, .signup__form li.faux-button .card.card__blue .cell a:hover, .card.card__blue .cell li.faux-button .signup__form a:hover, li.faux-button .signup__form .card.card__blue .cell a:hover, .card.card__blue .cell a.button.secondary.active, .card.card__blue .cell li.faux-button a.secondary.active, li.faux-button .card.card__blue .cell a.secondary.active, .card.card__blue .cell button.button.secondary.active, .card.card__blue .cell li.faux-button a.secondary:hover, li.faux-button .card.card__blue .cell a.secondary:hover {
  border: 1px solid #16404d; }

.card.card__halves .vertical__align {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

.card.card__halves .halves_left {
  background-color: #F4F4F4;
  padding-left: 40px;
  padding-right: 40px; }

@media print, screen and (max-width: 39.99875em) {
  .card.card__halves .halves_left {
    padding: 20px; } }

@media print, screen and (min-width: 40em) {
  .card.card__halves .halves_left p {
    font-size: 1.25rem; } }

.card.card__grey .cell:not(.card__heading__inner) {
  background-color: #F4F4F4; }

.card.card__grey .cell:not(.card__heading__inner) *:not(a) {
  color: #79d7be; }

.card.card__grey .cell:not(.card__heading__inner) p {
  color: #79d7be; }

.card.card__grey .cell:not(.card__heading__inner) .subheading {
  color: #a6cdc6; }

.card.card__simpleHeading_featuredHalf .card_img {
  background: url(../../../elf-theme/assets/images/cards/card-heading.png) no-repeat;
  background-size: cover;
  height: 350px;
  margin-bottom: 20px; }

.card.card__simpleHeading_featuredHalf .card_content .h5:after {
  display: inline-block;
  content: "";
  background: url(../../../elf-theme/assets/icons/arrow-next@2x.png);
  background-size: 12px 15px;
  width: 12px;
  height: 15px;
  text-decoration: none;
  margin-left: 20px; }

.card.card__profile {
  background-color: #FFF;
  padding: 0px 20px 30px 20px;
  margin: 0 auto 30px auto; }

.card.card__profile .profile_img {
  position: relative;
  width: 50%;
  height: 0;
  padding-bottom: 50%;
  margin: 30px auto;
  text-align: center;
  border-radius: 50%;
  overflow: hidden; }

.card.card__profile .profile_img img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -o-object-fit: cover;
     object-fit: cover; }

.card.card__profile .profile_info {
  text-align: center; }

.card.card__profile .profile_info span:after {
  /* // Removed due to long title conflicts display: inline-block; content: ""; background: url(../../../elf-theme/assets/icons/down-arrow.svg); background-size: 15px 10px; width: 15px; height: 10px; margin-bottom: 29px; @supports(mask-image: url("")) { background: $primary-one; mask-image: url(../../../elf-theme/assets/icons/down-arrow.svg); mask-size: 15px 10px; mask-repeat: no-repeat; } */ }

.card.card__profile .profile_link {
  text-align: center;
  border-top: 1px solid #D7D7D7; }

.card.card__profile .profile_link a {
  margin: 22px 0; }

.card.listing {
  background: #FFF;
  border-left: 10px solid #16404d;
  padding: 20px;
  text-decoration: none;
  position: relative;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

.card.listing.post_listing:hover, a.card.listing.post_listing.active, button.card.listing.post_listing.active {
  background-color: #16404d;
  border-left: 10px solid #79d7be; }

.card.listing.post_listing:hover .listing-content h1, a.card.listing.post_listing.active .listing-content h1, button.card.listing.post_listing.active .listing-content h1, .card.listing.post_listing:hover .listing-content h2, a.card.listing.post_listing.active .listing-content h2, button.card.listing.post_listing.active .listing-content h2, .card.listing.post_listing:hover .listing-content h3, a.card.listing.post_listing.active .listing-content h3, button.card.listing.post_listing.active .listing-content h3, .card.listing.post_listing:hover .listing-content h4, a.card.listing.post_listing.active .listing-content h4, button.card.listing.post_listing.active .listing-content h4, .card.listing.post_listing:hover .listing-content h5, a.card.listing.post_listing.active .listing-content h5, button.card.listing.post_listing.active .listing-content h5, .card.listing.post_listing:hover .listing-content section .free_text blockquote p, section .free_text blockquote .card.listing.post_listing:hover .listing-content p, a.card.listing.post_listing.active .listing-content section .free_text blockquote p, section .free_text blockquote a.card.listing.post_listing.active .listing-content p, button.card.listing.post_listing.active .listing-content section .free_text blockquote p, section .free_text blockquote button.card.listing.post_listing.active .listing-content p, .card.listing.post_listing:hover .listing-content h6, a.card.listing.post_listing.active .listing-content h6, button.card.listing.post_listing.active .listing-content h6, .card.listing.post_listing:hover .listing-content .updated .date, .updated .card.listing.post_listing:hover .listing-content .date, a.card.listing.post_listing.active .listing-content .updated .date, .updated a.card.listing.post_listing.active .listing-content .date, button.card.listing.post_listing.active .listing-content .updated .date, .updated button.card.listing.post_listing.active .listing-content .date, .card.listing.post_listing:hover .listing-content p, a.card.listing.post_listing.active .listing-content p, button.card.listing.post_listing.active .listing-content p, .card.listing.post_listing:hover .listing-content b, a.card.listing.post_listing.active .listing-content b, button.card.listing.post_listing.active .listing-content b, .card.listing.post_listing:hover .listing-content a, a.card.listing.post_listing.active .listing-content a, button.card.listing.post_listing.active .listing-content a, .card.listing.post_listing:hover .listing-content summary, a.card.listing.post_listing.active .listing-content summary, button.card.listing.post_listing.active .listing-content summary, .card.listing.post_listing:hover .listing-content div, a.card.listing.post_listing.active .listing-content div, button.card.listing.post_listing.active .listing-content div {
  color: #FFF; }

.card.listing.post_listing:hover .listing-content a.card h5, a.card.listing.post_listing.active .listing-content a.card h5, button.card.listing.post_listing.active .listing-content a.card h5, .card.listing.post_listing:hover .listing-content a.card section .free_text blockquote p, section .free_text blockquote .card.listing.post_listing:hover .listing-content a.card p, a.card.listing.post_listing.active .listing-content a.card section .free_text blockquote p, section .free_text blockquote a.card.listing.post_listing.active .listing-content a.card p, button.card.listing.post_listing.active .listing-content a.card section .free_text blockquote p, section .free_text blockquote button.card.listing.post_listing.active .listing-content a.card p {
  color: #16404d; }

.card.listing.post_listing:hover .listing-content a.card:hover h5, a.card.listing.post_listing.active .listing-content a.card:hover h5, button.card.listing.post_listing.active .listing-content a.card:hover h5, .card.listing.post_listing:hover .listing-content a.card.active h5, a.card.listing.post_listing.active .listing-content a.card.active h5, button.card.listing.post_listing.active .listing-content a.card.active h5, .card.listing.post_listing:hover .listing-content a.card:hover section .free_text blockquote p, section .free_text blockquote .card.listing.post_listing:hover .listing-content a.card:hover p, a.card.listing.post_listing.active .listing-content a.card:hover section .free_text blockquote p, section .free_text blockquote a.card.listing.post_listing.active .listing-content a.card:hover p, button.card.listing.post_listing.active .listing-content a.card:hover section .free_text blockquote p, section .free_text blockquote button.card.listing.post_listing.active .listing-content a.card:hover p, .card.listing.post_listing:hover .listing-content a.card.active section .free_text blockquote p, section .free_text blockquote .card.listing.post_listing:hover .listing-content a.card.active p, a.card.listing.post_listing.active .listing-content a.card.active section .free_text blockquote p, section .free_text blockquote a.card.listing.post_listing.active .listing-content a.card.active p, button.card.listing.post_listing.active .listing-content a.card.active section .free_text blockquote p, section .free_text blockquote button.card.listing.post_listing.active .listing-content a.card.active p {
  color: #79d7be; }

.card.listing.post_listing:hover .listing-content summary:after, a.card.listing.post_listing.active .listing-content summary:after, button.card.listing.post_listing.active .listing-content summary:after {
  background: url(../../../elf-theme/assets/icons/down-arrow-yellow.svg);
  background-size: 15px 11px;
  width: 15px;
  height: 11px;
  display: inline-block;
  position: relative;
  top: 0px;
  right: -12px;
  margin-top: 0; }

.card.listing.yellow_listing {
  border-left: 10px solid #79d7be; }

.card.listing .guideline_label {
  display: block;
  text-transform: uppercase;
  color: #767175; }

.card.listing .guideline_label span {
  text-transform: none;
  color: #79d7be;
  font-family: "Avenir LT W01_65 Medium1475532", sans-serif;
  font-weight: 400;
  font-size: 0.875rem;
  letter-spacing: initial; }

.card.listing .guideline_label.year {
  float: right; }

.card.listing .tags_label {
  color: #767175; }

.card.listing .listing-content {
  z-index: 1;
  position: relative; }

.card.listing .listing-content .tags {
  margin-bottom: 18px; }

.card.listing .listing-content .authors, .card.listing .listing-content .published-type, .card.listing .listing-content .published-year {
  margin-bottom: 10px; }

.card.listing .overlay-link ~ .listing-content {
  pointer-events: none; }

.card.listing .translations {
  border-top: 2px solid #E4E4E4;
  padding-top: 7px;
  pointer-events: all; }

.card.listing .translations ul {
  margin: 46px 0 0 26px !important; }

.card.listing .translations ul li:before {
  content: none !important; }

.card.listing .translations summary {
  outline: none; }

.card.listing .translations .card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #F0F0F0;
  padding: 18px 60px 18px 20px;
  text-decoration: none;
  pointer-events: all;
  -webkit-transition: all 0.25s;
  -o-transition: all 0.25s;
  transition: all 0.25s; }

.card.listing .translations .card span.label {
  margin-right: 14px;
  -webkit-transition: all 0.25s;
  -o-transition: all 0.25s;
  transition: all 0.25s; }

.card.listing .translations .card .lang {
  text-transform: uppercase; }

.card.listing .translations .card h5, .card.listing .translations .card section .free_text blockquote p, section .free_text blockquote .card.listing .translations .card p {
  margin-bottom: 0;
  -webkit-transition: all 0.25s;
  -o-transition: all 0.25s;
  transition: all 0.25s; }

.card.listing .translations .card:after {
  content: '';
  background: url("../../../elf-theme/assets/icons/new-window-blue.svg") no-repeat center center/contain;
  width: 18px;
  height: 18px;
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .card.listing .translations .card:after {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/new-window-blue.svg);
            mask-image: url(../../../elf-theme/assets/icons/new-window-blue.svg);
    -webkit-mask-size: contain;
            mask-size: contain;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.card.listing .translations .card:hover, .card.listing .translations a.card.active, .card.listing .translations button.card.active, .card.listing .translations .card:focus {
  background: #16404d; }

.card.listing .translations .card:hover span.label, .card.listing .translations a.card.active span.label, .card.listing .translations button.card.active span.label, .card.listing .translations .card:focus span.label {
  background: #79d7be; }

.card.listing .translations .card:hover h5, .card.listing .translations a.card.active h5, .card.listing .translations button.card.active h5, .card.listing .translations .card:hover section .free_text blockquote p, section .free_text blockquote .card.listing .translations .card:hover p, .card.listing .translations a.card.active section .free_text blockquote p, section .free_text blockquote .card.listing .translations a.card.active p, .card.listing .translations button.card.active section .free_text blockquote p, section .free_text blockquote .card.listing .translations button.card.active p, .card.listing .translations .card:focus h5, .card.listing .translations .card:focus section .free_text blockquote p, section .free_text blockquote .card.listing .translations .card:focus p {
  color: #79d7be; }

.card.listing .translations .card:hover:after, .card.listing .translations a.card.active:after, .card.listing .translations button.card.active:after, .card.listing .translations .card:focus:after {
  background-image: url("../../../elf-theme/assets/icons/new-window-yellow.svg"); }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .card.listing .translations .card:hover:after, .card.listing .translations a.card.active:after, .card.listing .translations button.card.active:after, .card.listing .translations .card:focus:after {
    background: #79d7be;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/new-window-yellow.svg);
            mask-image: url(../../../elf-theme/assets/icons/new-window-yellow.svg); } }

.card.card__event .text__wrapper .date {
  display: block;
  margin-bottom: 25px; }

.card.card__event .text__wrapper .category {
  font-size: 0.875rem;
  color: #767175;
  margin-bottom: 25px;
  position: relative; }

.card.card__event .text__wrapper .category.location::before {
  top: 4px;
  margin-right: 10px;
  height: 19px;
  width: 19px;
  position: relative;
  display: inline-block;
  content: "";
  background: url(../../../elf-theme/assets/icons/globe-icon@2x.png) no-repeat;
  background-size: 19px 19px;
  text-decoration: none; }

.card.card__event .text__wrapper.col--first {
  padding-bottom: 40px; }

@media print, screen and (min-width: 40em) {
  .card.card__event .text__wrapper.col--first {
    padding-bottom: unset; } }

.card.card__event .button__wrap a {
  width: 100%;
  max-width: 100%;
  margin: 0 auto 20px auto;
  padding-left: 40px;
  padding-right: 40px; }

.card.card__event.card__event_simple {
  min-height: 110px; }

.card.card__event.card__event_simple .col--first {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%; }

.card.card__event.card__event_simple .col--first .date {
  margin: auto; }

.card.card__event.card__event_image {
  min-height: 150px; }

.card.card__event.card__event_image .event_img_bg {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; }

.card.card__details {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 18px 24px;
  background-color: #F4F4F4; }

@media print, screen and (max-width: 63.99875em) {
  .card.card__details.has-link:hover, a.card.card__details.has-link.active, button.card.card__details.has-link.active {
    background-color: #F4F4F4; }
  .card.card__details.has-link:hover h4, a.card.card__details.has-link.active h4, button.card.card__details.has-link.active h4, .card.card__details.has-link:hover h5, a.card.card__details.has-link.active h5, button.card.card__details.has-link.active h5, .card.card__details.has-link:hover section .free_text blockquote p, section .free_text blockquote .card.card__details.has-link:hover p, a.card.card__details.has-link.active section .free_text blockquote p, section .free_text blockquote a.card.card__details.has-link.active p, button.card.card__details.has-link.active section .free_text blockquote p, section .free_text blockquote button.card.card__details.has-link.active p, .card.card__details.has-link:hover p, a.card.card__details.has-link.active p, button.card.card__details.has-link.active p, .card.card__details.has-link:hover a[href^="mailto:"], a.card.card__details.has-link.active a[href^="mailto:"], button.card.card__details.has-link.active a[href^="mailto:"], .card.card__details.has-link:hover a[href^="tel:"], a.card.card__details.has-link.active a[href^="tel:"], button.card.card__details.has-link.active a[href^="tel:"], .card.card__details.has-link:hover li, a.card.card__details.has-link.active li, button.card.card__details.has-link.active li, .card.card__details.has-link:hover a, a.card.card__details.has-link.active a, button.card.card__details.has-link.active a {
    color: #16404d; } }

.card.card__details .card__details_link {
  width: 100%;
  height: 100%; }

.card.card__details.has-link h4, .card.card__details.has-link h5, .card.card__details.has-link section .free_text blockquote p, section .free_text blockquote .card.card__details.has-link p, .card.card__details.has-link p, .card.card__details.has-link a[href^="mailto:"], .card.card__details.has-link a[href^="tel:"], .card.card__details.has-link li, .card.card__details.has-link a {
  text-decoration: none; }

.card.card__details .text__wrapper h5, .card.card__details .text__wrapper section .free_text blockquote p, section .free_text blockquote .card.card__details .text__wrapper p {
  font-size: 18px; }

.card.card__details .text__wrapper .subheading {
  display: block;
  margin-bottom: 25px; }

.card.card__details .text__wrapper .date {
  display: block;
  margin-bottom: 25px; }

.card.card__details .text__wrapper .category {
  font-size: 0.875rem;
  color: #767175;
  margin-bottom: 25px;
  position: relative; }

.card.card__details .text__wrapper .category.location::before {
  top: 4px;
  margin-right: 10px;
  height: 19px;
  width: 19px;
  position: relative;
  display: inline-block;
  content: "";
  background: url(../../../elf-theme/assets/icons/globe-icon@2x.png) no-repeat;
  background-size: 19px 19px;
  text-decoration: none; }

.card.card__details .text__wrapper .card__details_contacts {
  margin: 10px 0px; }

.card.card__details .text__wrapper .card__details_contacts i {
  margin-right: 10px; }

.card.card__details .text__wrapper .card__details_contacts a {
  display: block;
  margin-top: 20px; }

.card.card__details .text__wrapper.col--first {
  padding-bottom: 40px; }

@media print, screen and (min-width: 40em) {
  .card.card__details .text__wrapper.col--first {
    padding-bottom: unset; } }

.card.card__details .text__wrapper a {
  text-decoration: none;
  border-bottom: 3px solid #79d7be;
  padding-bottom: 4px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

.card.card__details .text__wrapper a:hover, .card.card__details .text__wrapper a.active {
  border-bottom: 3px solid #649ADB; }

.card.card__details a.simple_link {
  font-weight: bold;
  display: block;
  margin-top: 30px; }

.card.card__details .button__wrap a {
  width: 100%;
  max-width: 100%;
  margin: 0 auto 20px auto;
  padding-left: 40px;
  padding-right: 40px; }

.card.card__details .button__wrap a:last-of-type {
  margin-bottom: 10px; }

.card.card__details .content__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.card.card__details.medium-6 {
  padding: 20px;
  display: grid; }

.card.card__details.card__details_simple {
  border-top: 5px solid #79d7be; }

.card.card__details.card__details_simple a {
  font-weight: bold;
  line-height: 33px; }

.card.card__details.card__details_single {
  padding-top: 40px;
  padding-bottom: 40px; }

@media print, screen and (min-width: 40em) {
  .card.card__details.card__details_single .col--first {
    padding-right: 20px; } }

.card.card__details.card__details_single .col--first .button.tag, .card.card__details.card__details_single .col--first li.faux-button a.tag, li.faux-button .card.card__details.card__details_single .col--first a.tag {
  margin-top: 5px; }

@media print, screen and (min-width: 40em) {
  .card.card__details.card__details_single .col--first .button.tag, .card.card__details.card__details_single .col--first li.faux-button a.tag, li.faux-button .card.card__details.card__details_single .col--first a.tag {
    padding: 5px 20px 5px 20px;
    width: 100% !important; } }

.card.card__details.card__details_single .col--first .date {
  margin-bottom: 10px; }

.card.card__details.card__details_society {
  padding: 50px 20px 20px 20px;
  position: relative; }

.card.card__details.card__details_society .button.tag.no_link, .card.card__details.card__details_society li.faux-button a.tag.no_link, li.faux-button .card.card__details.card__details_society a.tag.no_link {
  position: absolute;
  top: 0;
  left: 0;
  border: none; }

.card.card__details.card__details_society .content__wrap {
  margin-bottom: 40px; }

.card.card__details.card__details_society .content__wrap h5, .card.card__details.card__details_society .content__wrap section .free_text blockquote p, section .free_text blockquote .card.card__details.card__details_society .content__wrap p {
  margin-bottom: 10px; }

.card.card__details.card__details_society .button__wrap {
  position: absolute;
  width: 100%;
  padding: 0px 20px;
  left: 0px;
  bottom: 20px; }

.card.card__details.card__details_science {
  padding: 30px 20px; }

.card.card__details.card__details_science .organizer {
  color: #a6cdc6; }

.card.card__details.card__details_science .button__wrap a {
  text-decoration: none; }

.card.card__details.card__details_science .button__wrap a:before {
  top: 2px;
  margin-right: 10px;
  height: 15px;
  width: 15px;
  position: relative;
  display: inline-block;
  content: "";
  background: url(../../../elf-theme/assets/icons/science_barrow.svg) no-repeat;
  background-size: 15px 15px;
  text-decoration: none; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .card.card__details.card__details_science .button__wrap a:before {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/science_barrow.svg);
            mask-image: url(../../../elf-theme/assets/icons/science_barrow.svg);
    -webkit-mask-size: 15px 15px;
            mask-size: 15px 15px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.card.card__details.card__details_tag {
  padding: 46px 24px 18px 24px; }

.card.card__details .tag.no_link {
  display: block;
  padding: 5px 25px;
  background-color: #a6cdc6;
  color: #FFF;
  letter-spacing: 0.275em;
  text-transform: uppercase;
  font-family: "Avenir LT W01_55 Roman1475520";
  font-size: 0.75rem;
  text-decoration: none;
  /* margin-top: -18px; */
  position: absolute;
  top: 0;
  left: 0px;
  width: 100%;
  border-radius: 0px;
  text-align: left; }

.card.card__team .img__wrapper {
  border-radius: 50%;
  text-align: center; }

.card.card__team .img__wrapper img {
  max-height: 50px;
  border-radius: 50%; }

.card.card__team .text__wrapper {
  margin-bottom: 20px; }

.card.card__team .text__wrapper p {
  margin-bottom: 10px; }

.card.card__team .text__wrapper a {
  font-weight: 100 !important;
  color: #767175 !important; }

@media print, screen and (max-width: 39.99875em) {
  .card.card__team .button__simple {
    padding-left: 10px;
    padding-right: 10px; } }

.card.card__team_img .img__wrapper {
  border-radius: 50%;
  text-align: center;
  margin-bottom: 20px; }

.card.card__team_img .text__wrapper {
  text-align: center;
  padding: 20px 40px; }

.card.card__team_img .text__wrapper .h6, .card.card__team_img .text__wrapper h6, .card.card__team_img .text__wrapper .updated .date, .updated .card.card__team_img .text__wrapper .date {
  color: #a6cdc6; }

.card.card__img_details .image__wrapper {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 100%;
  width: 100%; }

.card.card__img_details h4 {
  padding: 200px 20px 20px 20px;
  margin: 0px; }

.card.card__accordian-next {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.card.card_download_list {
  padding-top: 30px; }

.card.card_download_list .download_list, .card.card_download_list .normal_list {
  margin: 0 !important; }

.card.card_download_list .download_list li, .card.card_download_list .normal_list li {
  list-style: none; }

.card.card_download_list .download_list li:last-child, .card.card_download_list .normal_list li:last-child {
  margin-bottom: 0; }

.card.card_download_list .download_list li::before, .card.card_download_list .normal_list li::before {
  content: none !important; }

.card.card_download_list .download_list li a, .card.card_download_list .normal_list li a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 15px 50px 15px 15px;
  width: 100%;
  text-decoration: none;
  position: relative;
  bottom: 0;
  left: 0;
  color: #16404d;
  font-family: "Avenir LT W01_85 Heavy1475544";
  background-color: #F0F0F0;
  border-radius: 5px; }

.card.card_download_list .download_list li a:after, .card.card_download_list .normal_list li a:after {
  content: "";
  background-size: 20px 18px;
  width: 20px;
  height: 18px;
  right: 20px;
  position: absolute;
  top: 50%;
  margin-top: -0.5rem; }

.card.card_download_list .download_list li a:hover, .card.card_download_list .download_list li a.active, .card.card_download_list .normal_list li a:hover, .card.card_download_list .normal_list li a.active {
  text-decoration: none;
  background-color: #16404d;
  color: #79d7be; }

.card.card_download_list .download_list li a:after {
  background-image: url(../../../elf-theme/assets/icons/download-icon.svg); }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .card.card_download_list .download_list li a:after {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/download-icon.svg);
            mask-image: url(../../../elf-theme/assets/icons/download-icon.svg);
    -webkit-mask-size: 20px 18px;
            mask-size: 20px 18px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.card.card_download_list .download_list li a:hover:after, .card.card_download_list .download_list li a.active:after {
  background-image: url(../../../elf-theme/assets/icons/download-icon-yellow.svg); }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .card.card_download_list .download_list li a:hover:after, .card.card_download_list .download_list li a.active:after {
    background: #79d7be;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/download-icon-yellow.svg);
            mask-image: url(../../../elf-theme/assets/icons/download-icon-yellow.svg);
    -webkit-mask-size: 20px 18px;
            mask-size: 20px 18px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.card.card_download_list .normal_list li a:after {
  background-image: url(../../../elf-theme/assets/icons/external-link-icon-blue.svg); }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .card.card_download_list .normal_list li a:after {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/external-link-icon-blue.svg);
            mask-image: url(../../../elf-theme/assets/icons/external-link-icon-blue.svg);
    -webkit-mask-size: 11px 11px;
            mask-size: 11px 11px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.card.card_download_list .normal_list li a:hover:after, .card.card_download_list .normal_list li a.active:after {
  background-image: url(../../../elf-theme/assets/icons/external-link-icon-yellow.svg); }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .card.card_download_list .normal_list li a:hover:after, .card.card_download_list .normal_list li a.active:after {
    background: #79d7be;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/external-link-icon-yellow.svg);
            mask-image: url(../../../elf-theme/assets/icons/external-link-icon-yellow.svg);
    -webkit-mask-size: 11px 11px;
            mask-size: 11px 11px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.card.card_suggested .image__wrapper {
  min-height: 120px;
  margin-bottom: 10px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; }

.card.card_suggested p {
  margin-bottom: 10px; }

@media print, screen and (max-width: 63.99875em) {
  .card.featured_card {
    width: 100vw;
    margin-left: -1.25rem; } }

@media print, screen and (max-width: 63.99875em) {
  .card.promo_card_full {
    border-radius: 0;
    padding: 25px; }
  .card.promo_card_full.promo_card_full_img {
    min-height: 200px;
    background-position: left;
    background-size: cover;
    background-repeat: no-repeat; }
  .card.promo_card_full h2 {
    margin-top: 15px; } }

.card.listing_no_post_msg {
  text-align: center;
  padding-top: 50px; }

.card_table table {
  border-collapse: collapse; }

.card_table table tr th {
  padding: 10px;
  background-color: #D7D7D7;
  border: 1px solid #707070; }

.card_table table tr td {
  padding: 10px;
  border: 1px solid #707070; }

.card_featured {
  margin-bottom: 20px;
  border: 1px solid #F0F0F0;
  overflow: hidden; }

.card_featured .grid-x {
  height: 100%; }

.card_featured .featured_img {
  background: url(../../../elf-theme/assets/images/cards/card-heading.png) no-repeat;
  background-size: cover !important;
  background-position: center !important;
  height: 100%;
  min-height: 130px;
  margin: auto; }

@media print, screen and (min-width: 40em) {
  .card_featured .featured_img {
    min-height: 150px; } }

.card_featured .tag {
  display: block;
  padding: 5px 7px;
  background-color: #a6cdc6;
  color: #FFF;
  letter-spacing: 0.275em;
  text-transform: uppercase;
  font-family: "Avenir LT W01_55 Roman1475520";
  font-size: 0.75rem;
  text-decoration: none; }

.card_featured .featured_text {
  padding: 4px 16px;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s; }

.card_featured .featured_text h3.h5 {
  font-size: 18px; }

.card_featured .featured_text h3.h5:after {
  /* // Removed due to long title conflicts position: relative; left: 30px; display: inline-block; content: ""; background: url(../../../elf-theme/assets/icons/arrow-btn-blue.svg); background-size: 9px 13px; width: 9px; height: 13px; text-decoration: none; @supports(mask-image: url("")) { background: $primary-one; mask-image: url(../../../elf-theme/assets/icons/arrow-btn-blue.svg); mask-size: 9px 13px; mask-repeat: no-repeat; } */ }

@media print, screen and (min-width: 40em) {
  .card_featured .featured_text {
    padding: 20px; } }

.card_featured .featured_text.card__small a {
  text-decoration: none !important; }

.card_featured:hover .featured_text, a.card_featured.active .featured_text, button.card_featured.active .featured_text {
  background-color: #16404d; }

.card_featured:hover .featured_text .subheading, a.card_featured.active .featured_text .subheading, button.card_featured.active .featured_text .subheading, .card_featured:hover .featured_text .caption, a.card_featured.active .featured_text .caption, button.card_featured.active .featured_text .caption {
  color: #FFF; }

.card_featured:hover .featured_text a .h5, a.card_featured.active .featured_text a .h5, button.card_featured.active .featured_text a .h5 {
  color: #79d7be; }

.card_featured:hover .featured_text a .h5:after, a.card_featured.active .featured_text a .h5:after, button.card_featured.active .featured_text a .h5:after {
  /* // Removed due to long title conflicts background-image: url(../../../elf-theme/assets/icons/arrow-btn-yellow.svg); @supports(mask-image: url("")) { background: $secondary-one; mask-image: url(../../../elf-theme/assets/icons/arrow-btn-yellow.svg); mask-size: 9px 13px; mask-repeat: no-repeat; } */ }

.card__callout {
  background-color: #a6cdc6; }

.card__callout .card {
  background-color: #a6cdc6;
  text-align: center;
  color: #FFF;
  padding: 50px 0;
  border-radius: 0; }

@media print, screen and (min-width: 40em) {
  .card__callout .card {
    padding: 70px 0; } }

.card__callout .card h2, .card__callout .card .h2, .card__callout .card h4, .card__callout .card .h4 {
  color: #FFF;
  margin-bottom: 23px; }

.card__callout .card p {
  font-size: 18px;
  margin-bottom: 35px;
  font-weight: 600; }

.card__callout .card .button, .card__callout .card li.faux-button a, li.faux-button .card__callout .card a {
  margin-left: 0 !important;
  margin-bottom: 0; }

.card__callout.full_text .card {
  text-align: left; }

.card__callout.secondary .card, .signup__form .card__callout.button .card, .signup__form li.faux-button a.card__callout .card, li.faux-button .signup__form a.card__callout .card {
  color: #16404d;
  background-color: #79d7be; }

.card__callout.secondary .card h2, .signup__form .card__callout.button .card h2, .signup__form li.faux-button a.card__callout .card h2, li.faux-button .signup__form a.card__callout .card h2, .card__callout.secondary .card .h2, .signup__form .card__callout.button .card .h2, .signup__form li.faux-button a.card__callout .card .h2, li.faux-button .signup__form a.card__callout .card .h2, .card__callout.secondary .card h4, .signup__form .card__callout.button .card h4, .signup__form li.faux-button a.card__callout .card h4, li.faux-button .signup__form a.card__callout .card h4, .card__callout.secondary .card .h4, .signup__form .card__callout.button .card .h4, .signup__form li.faux-button a.card__callout .card .h4, li.faux-button .signup__form a.card__callout .card .h4 {
  color: #16404d; }

.card__fame .cell.single__fame {
  padding: 40px 20px 30px 20px;
  text-align: center;
  background-color: #FFF;
  margin-bottom: 20px; }

.card__fame .cell.single__fame h4 {
  margin-bottom: 20px; }

.card__fame .cell.single__fame h5, .card__fame .cell.single__fame section .free_text blockquote p, section .free_text blockquote .card__fame .cell.single__fame p, .card__fame .cell.single__fame h6, .card__fame .cell.single__fame .updated .date, .updated .card__fame .cell.single__fame .date {
  margin-bottom: 10px; }

.card__fame .cell.single__fame h6, .card__fame .cell.single__fame .updated .date, .updated .card__fame .cell.single__fame .date {
  color: #a6cdc6; }

.card__fame .cell.single__fame hr {
  margin-bottom: 0; }

.bg__img {
  background-size: cover;
  background-repeat: no-repeat;
  padding-top: 70px;
  padding-bottom: 70px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content; }

@media print, screen and (max-width: 39.99875em) {
  .bg__img {
    padding-top: 50px;
    padding-bottom: 50px;
    margin-right: 1.25rem;
    margin-left: 1.25rem; } }

.bg__img.alt {
  padding: 0; }

@media print, screen and (max-width: 39.99875em) {
  .bg__img.hero__carousel {
    overflow: hidden; }
  .bg__img.hero__carousel h1, .bg__img.hero__carousel h2 {
    display: inline-block; }
  .bg__img.hero__carousel h1, .bg__img.hero__carousel h2, .bg__img.hero__carousel h2 span {
    width: 360px; } }

.bg__img .button-group .button, .bg__img .button-group li.faux-button a, li.faux-button .bg__img .button-group a {
  margin-right: 26px; }

.bg__img.bg__hero {
  padding-top: 30px;
  padding-bottom: 30px;
  min-height: 460px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.bg__img.bg__hero h1 {
  margin-bottom: 1.375rem; }

.bg__img.bg__hero .grid-container {
  width: 100%; }

.bg__img.bg__hero .button i, .bg__img.bg__hero li.faux-button a i, li.faux-button .bg__img.bg__hero a i {
  font-size: 14px;
  margin-left: 10px; }

.bg__img.bg__hero a:not(.button) {
  text-decoration: none;
  border-bottom: 3px solid #79d7be;
  padding-bottom: 4px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

.bg__img.bg__hero a:not(.button):hover, .bg__img.bg__hero a.active:not(.button) {
  border-bottom: 3px solid #649ADB; }

@media print, screen and (min-width: 64em) {
  .bg__img.bg__hero a:not(.button) {
    margin: 0 60px; } }

.bg__img.bg__hero.bg__hero_home {
  padding-top: 208px;
  padding-bottom: 36px; }

@media print, screen and (min-width: 40em) {
  .bg__img.bg__hero.bg__hero_home {
    padding-top: 100px;
    padding-bottom: 100px;
    background-position: center;
    background-size: cover; }
  .bg__img.bg__hero.bg__hero_home a {
    display: table;
    margin-top: 10px; } }

@media print, screen and (min-width: 64em) {
  .bg__img.bg__hero.bg__hero_home {
    padding-top: 64px;
    padding-bottom: 148px; }
  .bg__img.bg__hero.bg__hero_home a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin-top: 0px; } }

.bg__img.bg__hero .card__preview {
  background-color: #a6cdc6; }

.footnotes_card {
  margin: 1.5rem .75rem;
  padding-left: 20px;
  border-left: 10px solid #B9B9B9; }

.footnotes_card:first-child {
  margin-top: 0rem; }

.more_news {
  background: #F4F4F4;
  padding: 18px 24px;
  margin-bottom: 1.5rem; }

.more_news a {
  text-decoration: none !important; }

.more_news a, .more_news p, .more_news .show {
  color: #16404d;
  -webkit-transition: color 0.25s;
  -o-transition: color 0.25s;
  transition: color 0.25s; }

.more_news p {
  margin: 1.7rem 0 2.5rem;
  color: #525245; }

.more_news span.faux-link {
  text-decoration: underline;
  font-weight: 500;
  font-family: "Avenir LT W01_65 Medium1475532"; }

.more_news span.faux-link:hover {
  color: #79d7be;
  -webkit-transition: all 0.25s;
  -o-transition: all 0.25s;
  transition: all 0.25s; }

.more_news h4.show {
  font-size: 23px; }

.more_news:hover, a.more_news.active, button.more_news.active {
  background-color: #16404d; }

.more_news:hover a, a.more_news.active a, button.more_news.active a, .more_news:hover p, a.more_news.active p, button.more_news.active p, .more_news:hover .show, a.more_news.active .show, button.more_news.active .show {
  color: #FFF; }

.news_author_info .img_wrapper {
  background-position: center;
  background-size: cover;
  height: 100px;
  width: 100px;
  border-radius: 50%;
  margin: 0px auto 20px auto; }

.heading__team h3 {
  display: inline-block; }

@media print, screen and (max-width: 39.99875em) {
  .heading__team h3 {
    padding-left: 20px;
    padding-right: 20px; } }

.heading__team a {
  float: right; }

.card__voting_stat {
  padding: 20px 40px; }

.card__voting_stat p, .card__voting_stat h2, .card__voting_stat h4 {
  margin-bottom: 10px; }

.card__voting_stat .button, .card__voting_stat li.faux-button a, li.faux-button .card__voting_stat a {
  margin: 10px 0px 0px 0px; }

.card__popup {
  padding: 20px;
  border: 1px solid #EFEDE1;
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex; }

.card__popup.infocard {
  border-top: none;
  border-right: none;
  border-bottom: none;
  padding-top: 0;
  padding-bottom: 0; }

.card__popup.infocard .infocard-content p {
  font-size: 1.125rem;
  line-height: 1.5rem; }

@media print, screen and (min-width: 40em) {
  .card__popup.infocard .infocard-content p {
    font-size: 1.5rem;
    line-height: 1.75rem; } }

.card__popup.popup_check {
  border-left: 10px solid #21A67A; }

.card__popup.popup_info {
  border-left: 10px solid #a6cdc6; }

.card__popup.popup_warning {
  border-left: 10px solid #CE003A; }

.card__popup .popup_close {
  height: 15px;
  width: 15px;
  position: absolute;
  content: "";
  background: url(../../../elf-theme/assets/icons/close-popup.svg);
  background-size: 15px 15px;
  right: 30px; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .card__popup .popup_close {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/close-popup.svg);
            mask-image: url(../../../elf-theme/assets/icons/close-popup.svg);
    -webkit-mask-size: 15px 15px;
            mask-size: 15px 15px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.card__popup .popup-icon {
  display: inline-block;
  margin-right: 10px; }

.card__popup .popup-icon .icon_check {
  height: 30px;
  width: 30px;
  position: relative;
  display: block;
  margin: auto 10px auto 0;
  content: "";
  background: url(../../../elf-theme/assets/icons/popup-check.svg);
  background-size: 30px 30px;
  text-decoration: none; }

.card__popup .popup-icon .icon_info {
  height: 30px;
  width: 30px;
  position: relative;
  display: block;
  margin: auto 10px auto 0;
  content: "";
  background: url(../../../elf-theme/assets/icons/popup-info.svg);
  background-size: 30px 30px;
  text-decoration: none; }

.card__popup .popup-icon .icon_warning {
  height: 30px;
  width: 30px;
  position: relative;
  display: block;
  margin: auto 10px auto 0;
  content: "";
  background: url(../../../elf-theme/assets/icons/popup-warning.svg);
  background-size: 30px 30px;
  text-decoration: none; }

.card__popup .popup-content {
  display: inline-block; }

.card__popup .popup-content p {
  margin-bottom: 0px; }

@media print, screen and (max-width: 39.99875em) {
  .card__carousel {
    display: initial; } }

.card__carousel .owl-stage-outer {
  margin-bottom: 50px; }

.card__carousel .owl-stage-outer .owl-item .carousel_text {
  padding: 60px 20px 0 20px; }

@media print, screen and (min-width: 40em) {
  .card__carousel .owl-stage-outer .owl-item .carousel_text {
    padding: 60px; } }

@media print, screen and (max-width: 39.99875em) {
  .card__carousel .owl-stage-outer .owl-item .carousel_img {
    padding-left: 20px;
    padding-right: 20px; } }

.card__carousel .owl-stage-outer .owl-item .carousel_img img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%; }

.card__carousel .owl-stage-outer .owl-item p {
  font-size: 1.125rem; }

@media print, screen and (min-width: 40em) {
  .card__carousel .owl-stage-outer .owl-item p {
    font-size: 1.25rem; } }

.card__carousel .owl-dots {
  margin-top: 0;
  margin-bottom: -50px; }

@media print, screen and (min-width: 64em) {
  .card__carousel .owl-dots {
    margin-top: 10px; } }

.card__carousel .owl-dots .owl-dot span {
  background: #767175 !important; }

.card__carousel .owl-dots .owl-dot.active span {
  background: #79d7be !important; }

.blue__bg {
  background-color: #a6cdc6; }

.events_nav_register {
  background-color: #a6cdc6;
  padding-left: 0.625rem;
  padding-right: 0.625rem; }

.events_nav_register .card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: auto; }

.events_nav_register .card p {
  padding: 1.2em 1em;
  color: white;
  margin: 0px; }

.events_nav_register .card a {
  margin: 0px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.events_nav_links {
  background-color: #222222;
  padding-left: 0.625rem;
  padding-right: 0.625rem; }

.events_nav_links ul {
  margin: 0px;
  padding: 1.2em 1em; }

.events_nav_links ul li {
  display: inline;
  border-left: 1px solid white;
  padding: 0px 0px 5px 10px;
  margin-right: 20px;
  list-style: none; }

.events_nav_links ul li::before {
  content: none !important; }

.events_nav_links ul li a {
  color: white;
  text-decoration: none; }

.events_heading_links {
  margin: 30px 0px; }

.events_heading_links .events_heading_link {
  padding: 10px;
  background-color: white;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s; }

.events_heading_links .events_heading_link:hover, .events_heading_links a.events_heading_link.active, .events_heading_links button.events_heading_link.active {
  background-color: #707070; }

.events_heading_links .events_heading_link:hover a, .events_heading_links a.events_heading_link.active a, .events_heading_links button.events_heading_link.active a {
  color: #FFF; }

.featherlight .featherlight-content {
  max-height: 95%;
  min-height: 80%;
  width: 90%; }

.featherlight .featherlight-content .featherlight-inner {
  height: 95%;
  position: absolute;
  width: 95%; }

.featherlight .featherlight-content .featherlight-inner .video-box {
  height: 95%; }

.featherlight .featherlight-content .featherlight-inner .video-box iframe {
  width: 100%;
  height: 100%; }

.dynamic-module .overlay-link {
  z-index: 989; }

.dynamic-module .cell .image__preview img {
  -webkit-transition: -webkit-transform .3s ease-in-out;
  transition: -webkit-transform .3s ease-in-out;
  -o-transition: transform .3s ease-in-out;
  transition: transform .3s ease-in-out;
  transition: transform .3s ease-in-out, -webkit-transform .3s ease-in-out; }

.dynamic-module .cell.image-wrap {
  overflow: hidden; }

.dynamic-module .cell.image-wrap .featured_img {
  -webkit-transition: -webkit-transform .3s ease-in-out;
  transition: -webkit-transform .3s ease-in-out;
  -o-transition: transform .3s ease-in-out;
  transition: transform .3s ease-in-out;
  transition: transform .3s ease-in-out, -webkit-transform .3s ease-in-out; }

.dynamic-module .cell.featured_text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  /* Vertical alignment */
  height: 100%;
  /* Optional, depends on parent context */
  position: relative;
  z-index: 990; }

.dynamic-module .cell:hover .featured_img, .dynamic-module a.cell.active .featured_img, .dynamic-module button.cell.active .featured_img {
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2); }

.dynamic-module .cell:hover .image__preview img, .dynamic-module a.cell.active .image__preview img, .dynamic-module button.cell.active .image__preview img {
  -webkit-transform: translate(-50%, -50%) scale(1.1);
      -ms-transform: translate(-50%, -50%) scale(1.1);
          transform: translate(-50%, -50%) scale(1.1); }

.dynamic-module .large-10 .cell.small-5.image-wrap img {
  min-height: 130px; }

@media print, screen and (min-width: 64em) {
  .dynamic-module .large-10 .cell.small-5.image-wrap {
    min-height: 300px; } }

body.microsite.light-brand-colours .card.card__preview .text__wrapper h5, body.microsite.light-brand-colours .card.card__preview .text__wrapper section .free_text blockquote p, section .free_text blockquote body.microsite.light-brand-colours .card.card__preview .text__wrapper p, body.microsite.light-brand-colours .card.card__preview .text__wrapper p {
  color: black; }

body.microsite.dark-brand-colours .card.card__preview .text__wrapper h5, body.microsite.dark-brand-colours .card.card__preview .text__wrapper section .free_text blockquote p, section .free_text blockquote body.microsite.dark-brand-colours .card.card__preview .text__wrapper p, body.microsite.dark-brand-colours .card.card__preview .text__wrapper p {
  color: black; }

body.microsite.dark-brand-colours .card.card__preview:hover .text__wrapper h5, body.microsite.dark-brand-colours a.card.card__preview.active .text__wrapper h5, body.microsite.dark-brand-colours button.card.card__preview.active .text__wrapper h5, body.microsite.dark-brand-colours .card.card__preview:hover .text__wrapper section .free_text blockquote p, section .free_text blockquote body.microsite.dark-brand-colours .card.card__preview:hover .text__wrapper p, body.microsite.dark-brand-colours a.card.card__preview.active .text__wrapper section .free_text blockquote p, section .free_text blockquote body.microsite.dark-brand-colours a.card.card__preview.active .text__wrapper p, body.microsite.dark-brand-colours button.card.card__preview.active .text__wrapper section .free_text blockquote p, section .free_text blockquote body.microsite.dark-brand-colours button.card.card__preview.active .text__wrapper p, body.microsite.dark-brand-colours .card.card__preview:hover .text__wrapper p, body.microsite.dark-brand-colours a.card.card__preview.active .text__wrapper p, body.microsite.dark-brand-colours button.card.card__preview.active .text__wrapper p {
  color: white; }

.carousel {
  background-color: #F4F4F4 !important; }

.owl-carousel .owl-stage-outer {
  max-width: 100%; }

.owl-carousel .owl-stage-outer .owl-stage {
  margin-top: 30px; }

.owl-carousel .owl-stage-outer .owl-stage .item {
  margin-left: 10px;
  margin-right: 10px;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important; }

@media print, screen and (max-width: 39.99875em) {
  .owl-carousel .owl-stage-outer .owl-stage .item {
    max-width: 460px; } }

.owl-carousel .owl-stage-outer .owl-stage .item a {
  color: #a6cdc6;
  font-size: 1rem;
  font-weight: normal;
  text-decoration: none;
  display: block;
  padding: 20px;
  border-bottom: 4px solid #767175; }

.owl-carousel .owl-stage-outer .owl-stage .item a:hover, .owl-carousel .owl-stage-outer .owl-stage .item a.active {
  background-color: #16404d;
  border-bottom: 4px solid #16404d; }

.filters, article .other-translations {
  position: relative;
  color: #FFF;
  background-color: #a6cdc6;
  border-radius: 5px;
  margin-top: -60px;
  padding: 0 20px;
  -webkit-transform: translate(0, -15px);
      -ms-transform: translate(0, -15px);
          transform: translate(0, -15px); }

@media print, screen and (min-width: 40em) {
  .filters, article .other-translations {
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
    margin-top: -80px; } }

.filters select, article .other-translations select {
  color: #FFF;
  border-color: #FFF;
  margin: 30px 0;
  max-width: 285px;
  background-image: url("../../../elf-theme/assets/icons/down-arrow-white.svg");
  background-repeat: no-repeat;
  background-position: center right 10px;
  background-size: 14px 7px;
  background-color: #a6cdc6; }

.filters select option, article .other-translations select option {
  background-color: #a6cdc6; }

@media print, screen and (min-width: 40em) {
  .filters select, article .other-translations select {
    max-width: 305px; } }

.filters:empty, article .other-translations:empty {
  margin-bottom: 40px;
  margin-top: 0; }

.small-two-up .filters, .small-two-up article .other-translations, article .small-two-up .other-translations {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  margin-top: -50px;
  margin-bottom: 40px; }

/** Hero */
.hero__banner {
  background-position: right center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  height: 200px;
  overflow: hidden; }

@media print, screen and (min-width: 40em) {
  .hero__banner {
    height: 300px; } }

.tier_one .text__bg {
  background-color: #16404d; }

.tier_one .text__bg h1, .tier_one .text__bg h2, .tier_one .text__bg .subheading, .tier_one .text__bg p, .tier_one .text__bg a:not(.button) {
  color: #FFF; }

.tier_one .text__bg a.button, .tier_one .text__bg li.faux-button a, li.faux-button .tier_one .text__bg a {
  margin-bottom: 30px; }

@media print, screen and (min-width: 40em) {
  .tier_one .text__bg a.button, .tier_one .text__bg li.faux-button a, li.faux-button .tier_one .text__bg a {
    margin-bottom: 0px; } }

.tier_one .text__bg a:only-of-type {
  margin: 0px; }

.overlap__margin .card.card__preview .card-link .text__wrapper h5:hover, .overlap__margin .card.card__preview .card-link .text__wrapper section .free_text blockquote p:hover, section .free_text blockquote .overlap__margin .card.card__preview .card-link .text__wrapper p:hover {
  text-decoration: none !important; }

.tier_two .hero__banner {
  background-color: #16404d;
  min-height: 300px; }

@media print, screen and (min-width: 40em) {
  .tier_two .hero__banner {
    min-height: unset; } }

.tier_two .hero__offset {
  background-color: #F0F0F0; }

.tier_two .hero__offset h1, .tier_two .hero__offset .h1, .tier_two .hero__offset h2, .tier_two .hero__offset .h2 {
  background: none; }

@media print, screen and (max-width: 63.99875em) {
  .tier_three {
    padding-top: 190px !important; } }

.tier_three .card {
  background: rgba(255, 255, 255, 0.85);
  padding: 28px 24px; }

@media print, screen and (min-width: 64em) {
  .tier_three .card {
    padding-left: 20px;
    padding-right: 20px; } }

.tier_one .card, .tier_two .card, .hero-event .card {
  padding: 32px 20px; }

@media print, screen and (min-width: 40em) {
  .tier_one .card, .tier_two .card, .hero-event .card {
    padding: 32px 40px; } }

.tier_one p, .tier_two p, .tier_three p {
  font-family: 'Avenir LT W01_55 Roman1475520';
  margin-bottom: 2rem; }

.tier_two p, .tier_two .large_intro span, .tier_three p, .tier_three .large_intro span {
  font-size: 1.25rem;
  line-height: 1.75rem;
  letter-spacing: 0;
  color: #16404d; }

@media print, screen and (min-width: 40em) {
  .tier_two p, .tier_two .large_intro span, .tier_three p, .tier_three .large_intro span {
    font-size: 1.25rem;
    line-height: 1.875rem; } }

.hero-event {
  background-color: #F4F4F4;
  padding-bottom: 42px; }

.hero-event .share {
  margin: 23px 0; }

.hero-event .content .cell {
  background-color: #FFF; }

.hero-event .content .content-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.hero-event .content .content-text .hero__button__wrap {
  margin-top: auto; }

.hero-event .content .content-text .hero__button__wrap .button, .hero-event .content .content-text .hero__button__wrap li.faux-button a, li.faux-button .hero-event .content .content-text .hero__button__wrap a {
  display: table; }

@media print, screen and (min-width: 40em) {
  .hero-event .content .content-text {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; } }

.hero__offset {
  position: relative;
  z-index: 100;
  margin-top: -200px;
  min-height: 270px; }

@media print, screen and (min-width: 40em) {
  .hero__offset {
    margin-top: -250px; } }

@media print, screen and (min-width: 64em) {
  .hero__offset {
    margin-top: -200px; } }

.hero_tier3_large {
  margin-bottom: 40px; }

.hero_tier3_img {
  background-repeat: no-repeat;
  background-size: cover; }

.header4_v2 .caption {
  font-family: "Avenir LT W01_85 Heavy1475544", Helvetica, Roboto, Arial, sans-serif;
  font-size: 0.875rem;
  color: #16404d;
  margin-bottom: 15px; }

.header4_v2 .caption.date:before {
  margin-top: 0px; }

.header4_v2 img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center; }

.hero__media {
  padding: 100px 0px;
  background-image: url(../../../elf-theme/assets/images/backgrounds/placeholder.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; }

.hero__media .button, .hero__media li.faux-button a, li.faux-button .hero__media a {
  width: unset !important; }

.hero__media .youtube__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.hero__media .youtube__btn a {
  display: table;
  margin: 0 auto; }

.hero__media .lightbox {
  background-color: rgba(0, 0, 0, 0.7);
  overflow: scroll;
  position: fixed;
  display: none;
  z-index: 1;
  bottom: 0;
  right: 0;
  left: 0;
  top: 0; }

.hero__media .lightbox .lightbox-container {
  position: relative;
  max-width: 960px;
  margin: 7% auto;
  display: block;
  padding: 0 3%;
  height: auto;
  z-index: 10; }

.hero__media .lightbox .lightbox-container .lightbox-content {
  -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.7);
          box-shadow: 0 1px 6px rgba(0, 0, 0, 0.7); }

.hero__media .lightbox .lightbox-container .lightbox-content .lightbox-close {
  text-transform: uppercase;
  background: transparent;
  position: absolute;
  font-weight: 300;
  font-size: 12px;
  display: block;
  border: none;
  color: white;
  top: -22px;
  right: 3%; }

.hero__media .lightbox .lightbox-container .lightbox-content .video-container {
  padding-bottom: 56.25%;
  position: relative;
  padding-top: 30px;
  overflow: hidden;
  height: 0; }

.hero__media .lightbox .lightbox-container .lightbox-content .video-container iframe, .hero__media .lightbox .lightbox-container .lightbox-content .video-container object, .hero__media .lightbox .lightbox-container .lightbox-content .video-container embed {
  position: absolute;
  height: 100%;
  width: 100%;
  left: 0;
  top: 0; }

@media print, screen and (max-width: 39.99875em) {
  .hero_news_version {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    margin-top: 10px; } }

@media print, screen and (max-width: 39.99875em) {
  .hero_news_version .heading_news {
    margin-top: 40px; } }

.hero_news_version .heading_news p {
  margin-bottom: 5px; }

.hero_news_version .heading_news p:last-child {
  margin-bottom: 20px; }

.hero_news_version .news_tags .cell {
  margin: 0px 10px 20px 0px;
  padding: 5px 20px;
  background-color: #004B7E;
  color: #fff;
  border-radius: 15px; }

.hero_news_version .news_tags .cell a {
  color: #fff; }

.hero_news_version .news_supporters .grid-x {
  height: 100%; }

.hero_news_version .news_supporters .grid-x .cell {
  padding: 0px 5px;
  margin: 0px 0px 10px 0px; }

.hero_tier5_large .hero_text_area {
  position: relative; }

.hero_tier5_large .hero_text_area .hero_title_area {
  padding: 0px 50px;
  min-height: 100px; }

.hero_tier5_large .hero_text_area .hero_title_area h4 {
  line-height: 45px; }

.hero_tier5_large .hero_text_area .hero_title_area .subheading {
  padding: 15px 30px;
  background: #D7D7D7;
  position: absolute;
  right: 0px; }

.hero_tier5_large .hero_text_area .hero_info_area {
  padding: 20px 50px 50px 50px;
  background: #D7D7D7; }

.hero_tier5_large .hero_text_area .hero_info_area h5::before, .hero_tier5_large .hero_text_area .hero_info_area section .free_text blockquote p::before, section .free_text blockquote .hero_tier5_large .hero_text_area .hero_info_area p::before {
  content: "";
  background: url(../../../elf-theme/assets/icons/clock-blue.png);
  background-size: 20px 20px;
  width: 20px;
  height: 20px;
  right: 20px;
  position: absolute;
  left: 25px; }

.hero_tier5_large .hero_text_area .hero_info_area p {
  margin-bottom: 10px; }

.hero_tier5_large .hero_text_area .hero_info_area .hero_data {
  padding-left: 20px; }

.hero_tier5_large .hero_thumbnail {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat; }

.factsheet_banner_container {
  position: relative;
  text-align: center; }

.factsheet_banner_container .print_btn {
  text-decoration: none;
  padding: 15px 25px;
  color: #fff;
  background-color: #a6cdc6;
  border-radius: 5px;
  font-weight: 700;
  position: absolute;
  right: 12px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

@media print, screen and (min-width: 40em) {
  .factsheet_banner_container .print_btn {
    right: 10px; } }

@media print, screen and (max-width: 63.99875em) {
  .factsheet_banner_container .print_btn.Toc_print {
    bottom: 0; } }

@media print, screen and (min-width: 40em) {
  .factsheet_banner_container .print_btn i {
    margin-left: 5px; } }

.factsheet_banner_container .print_btn:hover, .factsheet_banner_container a.print_btn.active, .factsheet_banner_container button.print_btn.active {
  background-color: #16404d; }

.factsheet_banner_container .print_btn:hover i, .factsheet_banner_container a.print_btn.active i, .factsheet_banner_container button.print_btn.active i {
  color: #79d7be; }

.factsheet_hero_content {
  padding-left: 60px !important;
  padding-right: 60px !important; }

@media print, screen and (max-width: 63.99875em) {
  .factsheet_hero_content {
    padding: 1.5rem !important; } }

.featherlight .featherlight-close-icon {
  margin: 20px 40px 20px 0;
  text-align: right !important; }

.declarationInterests, .video_lightbox {
  display: none; }

.declarationInterests .declarationHeader, .declarationInterests .video-box, .video_lightbox .declarationHeader, .video_lightbox .video-box {
  margin-top: 50px; }

.declarationInterests table, .video_lightbox table {
  border-collapse: collapse;
  border: 1px solid #767175;
  margin-bottom: 40px; }

.declarationInterests table td, .declarationInterests table th, .video_lightbox table td, .video_lightbox table th {
  padding: 10px;
  padding-right: 30px;
  border: 1px solid #767175; }

#map {
  height: 530px; }

#map button:after {
  content: none; }

.map-wrap {
  position: relative; }

.map-wrap .callout--contact {
  position: absolute;
  bottom: 36px;
  left: 50%;
  width: 100%;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0); }

@media print, screen and (min-width: 40em) {
  .map-wrap .callout--contact {
    top: 50%;
    bottom: auto;
    font-size: 1.25rem;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); } }

.map-wrap .callout--contact .cell {
  background: #FFF;
  padding: 40px; }

.map-wrap .callout--contact address {
  font-family: "Avenir LT W01_55 Roman1475520";
  font-style: normal;
  color: #16404d;
  margin-bottom: 28px; }

/** SECTION  */
section {
  margin-bottom: 30px; }

@media print, screen and (min-width: 40em) {
  section {
    margin-bottom: 50px; } }

@media print, screen and (min-width: 64em) {
  section {
    margin-bottom: 80px; } }

section.section-collapse {
  margin: 0; }

section.section-sidebar {
  margin-bottom: 0;
  padding-bottom: 0; }

section.section-pullup {
  margin-top: -30px; }

@media print, screen and (min-width: 40em) {
  section.section-pullup {
    margin-top: -50px; } }

@media print, screen and (min-width: 64em) {
  section.section-pullup {
    margin-top: -80px; } }

section.greyBg {
  background-color: #F4F4F4; }

section.greyBg .grid-container {
  padding-top: 40px;
  padding-bottom: 40px; }

section.greyBg .grid-container.pushdown-wrap {
  background-color: #F4F4F4; }

section.greyBg .grid-container.pushdown-wrap .accordion__card, section.greyBg .grid-container.pushdown-wrap .accordion-content {
  background-color: #F4F4F4; }

section.greyBg .grid-container.transparent {
  background-color: transparent; }

section.greyBg .grid-container.transparent .grid-x {
  background-color: #a6cdc6; }

section.greyBg .grid-container.transparent .grid-x.transparent {
  background-color: transparent; }

section.greyBg .grid-container.transparent .grid-x:first-child {
  background-color: transparent; }

section.greyBg .grid-container.transparent .cell {
  background-color: #a6cdc6; }

section.greyBg .grid-container.transparent .cell.transparent {
  background-color: transparent; }

section.greyBg .grid-container.transparent .cell.inner {
  background-color: transparent; }

section.greyBg .grid-container.transparent .cell.medium-5 {
  padding: 20px; }

section.greyBg .grid-container.transparent .cell.wrapper {
  background-color: transparent; }

section.greyBg .grid-container.transparent .cell.wrapper .button__halfhalf .button__simple a {
  background-color: #a6cdc6; }

section.greyBg .grid-container.transparent .cell.card__heading__inner {
  background-color: transparent; }

section.greyBg .grid-container .card.card__simple {
  padding: 20px; }

section.accordionBg {
  background-color: #F4F4F4; }

section.accordionBg .accordion, section.accordionBg .accordion-content {
  background-color: #F4F4F4; }

section.listings {
  background: #F4F4F4;
  padding-bottom: 40px; }

section.listings.has-heading {
  background: none; }

section.listings.has-heading .listing {
  background-color: #F4F4F4; }

section.listings.stories {
  padding-top: 40px; }

section.listings.risk-factors {
  margin-top: -80px;
  margin-bottom: 70px;
  padding-top: 40px; }

section.form {
  background: #F0F0F0;
  padding: 40px 0;
  position: relative; }

@media print, screen and (min-width: 40em) {
  section.form {
    padding: 80px 0; } }

section.mb0 {
  margin-bottom: 0px; }

@media print {
  .factsheet-content .medium-8, .factsheet-content .heading.medium-8, .factsheet-content .card__details, .card.card__heading .medium-8, .card.card__heading .heading.medium-8, .card.card__heading .card__details {
    width: 100%;
    left: 0%; }
  .factsheet-content .card__details {
    width: 100% !important;
    left: 0% !important; }
  .factsheet-content .card__details .button, .factsheet-content .card__details li.faux-button a, li.faux-button .factsheet-content .card__details a {
    text-align: left; }
  .factsheet_hero_content {
    width: 100% !important;
    height: 45vh; }
  .dropdown__tableofcontent, .dropdown__tableofcontent_mobile, #cookie-law-info-again {
    display: none !important;
    opacity: 0; }
  .factsheet_banner_container {
    width: 100% !important;
    height: 45vh; }
  .card__featured__text, .card__featured {
    width: 100% !important; } }

/** SHARE */
.share {
  margin: 0 auto; }

.share .share--title {
  display: inline-block; }

.share ul.social--list {
  padding: 0;
  margin: 0;
  display: inline-block;
  list-style: none;
  vertical-align: middle; }

.share ul.social--list li {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 22px;
  height: 22px;
  background: #16404d;
  border-radius: 50%; }

.share ul.social--list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #FFF;
  text-decoration: none;
  font-size: 12px; }

/** VIDEO */
.video h1, .video h2, .video h3, .video h4, .video h5, .video section .free_text blockquote p, section .free_text blockquote .video p, .video h6, .video .updated .date, .updated .video .date, .video .h1, .video .h2, .video .h3, .video .h4, .video .h5, .video .h6 {
  margin-bottom: 30px; }

.video.video__embed .video__wrapper {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  height: 0;
  margin-bottom: 12px; }

.video.video__embed .video__wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.video.video__embed .video__icon {
  background: url(../../../elf-theme/assets/icons/video-player-icon.svg) no-repeat left center/28px 17px;
  min-height: 18px; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .video.video__embed .video__icon {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/video-player-icon.svg);
            mask-image: url(../../../elf-theme/assets/icons/video-player-icon.svg);
    -webkit-mask-size: 28px 17px;
            mask-size: 28px 17px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat; } }

.video.video__embed .video__icon.soundcloud {
  background: url(../../../elf-theme/assets/icons/soundcloud-player-icon.svg) no-repeat;
  background-size: 34px 27px;
  background-position: center 34px; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .video.video__embed .video__icon.soundcloud {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/soundcloud-player-icon.svg);
            mask-image: url(../../../elf-theme/assets/icons/soundcloud-player-icon.svg);
    -webkit-mask-size: 34px 27px;
            mask-size: 34px 27px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center 34px;
            mask-position: center 34px; } }

.video.video__embed .video-text {
  position: relative; }

.video.video__embed .video__description {
  text-transform: capitalize;
  margin-bottom: 0;
  font-weight: normal; }

.video.video__embed .video__info {
  color: #767175;
  font-size: 0.875rem;
  position: relative; }

.video.video__embed .video__info.video__time {
  padding-left: 15px; }

.video.video__embed .video__info.video__time::before {
  content: "";
  top: 50%;
  left: -15px;
  height: 21px;
  width: 21px;
  position: relative;
  display: inline-block;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url(../../../elf-theme/assets/icons/time-icon.svg) no-repeat left center/21px 21px;
  text-decoration: none; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .video.video__embed .video__info.video__time::before {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/time-icon.svg);
            mask-image: url(../../../elf-theme/assets/icons/time-icon.svg);
    -webkit-mask-size: 21px 21px;
            mask-size: 21px 21px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: left center;
            mask-position: left center; } }

.video.video__embed .video__info.view__count {
  margin-left: 30px; }

.video.video__embed .video_margin {
  margin-top: 10px; }

.video .video__banner {
  position: relative;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  margin-bottom: 22px; }

.video .video__banner img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.video .video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden; }

.video .video-container iframe, .video .video-container object, .video .video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.video .playbutton {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: url(../../../elf-theme/assets/icons/video-play.svg) no-repeat center center/50px 50px;
  width: 100%;
  height: 100%;
  z-index: 999; }

@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
  .video .playbutton {
    background: #16404d;
    -webkit-mask-image: url(../../../elf-theme/assets/icons/video-play.svg);
            mask-image: url(../../../elf-theme/assets/icons/video-play.svg);
    -webkit-mask-size: 50px 50px;
            mask-size: 50px 50px;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center center;
            mask-position: center center; } }

@media print, screen and (min-width: 64em) {
  .video .playbutton {
    background-size: 65px 65px; } }

.video .playbutton:hover, .video a.playbutton.active, .video button.playbutton.active {
  cursor: pointer; }

.video .close {
  display: none; }

@media print, screen and (max-width: 39.99875em) {
  .media .video__embed {
    margin-bottom: 30px; } }

.media .video__embed .video__wrapper {
  margin-bottom: 12px; }

.media .video__embed .video__info.video__time {
  position: relative; }

.media .video__embed .video__info.video__time:before {
  position: absolute;
  left: 0; }

.cc-window {
  opacity: 1;
  -webkit-transition: opacity 1s ease;
  -o-transition: opacity 1s ease;
  transition: opacity 1s ease; }

.cc-window.cc-invisible {
  opacity: 0; }

.cc-animate.cc-revoke {
  -webkit-transition: transform 1s ease;
  -webkit-transition: -webkit-transform 1s ease;
  transition: -webkit-transform 1s ease;
  -o-transition: transform 1s ease;
  transition: transform 1s ease;
  transition: transform 1s ease, -webkit-transform 1s ease;
  transition: transform 1s ease,-webkit-transform 1s ease; }

.cc-animate.cc-revoke.cc-top {
  -webkit-transform: translateY(-2em);
  -ms-transform: translateY(-2em);
      transform: translateY(-2em); }

.cc-animate.cc-revoke.cc-bottom {
  -webkit-transform: translateY(2em);
  -ms-transform: translateY(2em);
      transform: translateY(2em); }

.cc-animate.cc-revoke.cc-active.cc-top {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
      transform: translateY(0); }

.cc-animate.cc-revoke.cc-active.cc-bottom {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
      transform: translateY(0); }

.cc-revoke:hover, a.cc-revoke.active, button.cc-revoke.active {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
      transform: translateY(0); }

.cc-grower {
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height 1s;
  -o-transition: max-height 1s;
  transition: max-height 1s; }

.cc-revoke, .cc-window {
  position: fixed;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-family: Helvetica,Calibri,Arial,sans-serif;
  font-size: 16px;
  line-height: 1.5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  z-index: 9999; }

.cc-window.cc-static {
  position: static; }

.cc-window.cc-floating {
  padding: 2em;
  max-width: 24em;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }

.cc-window.cc-banner {
  padding: 1em 1.8em;
  width: 100%;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row; }

.cc-revoke {
  padding: .5em; }

.cc-revoke:hover, a.cc-revoke.active, button.cc-revoke.active {
  text-decoration: underline; }

.cc-header {
  font-size: 18px;
  font-weight: 700; }

.cc-btn, .cc-close, .cc-link, .cc-revoke {
  cursor: pointer; }

.cc-link {
  opacity: .8;
  display: inline-block;
  padding: .2em;
  text-decoration: underline; }

.cc-link:hover, a.cc-link.active, button.cc-link.active {
  opacity: 1; }

.cc-link:active, .cc-link:visited {
  color: initial; }

.cc-btn {
  display: block;
  padding: .4em .8em;
  font-size: .9em;
  font-weight: 700;
  border-width: 2px;
  border-style: solid;
  text-align: center;
  white-space: nowrap; }

.cc-highlight .cc-btn:first-child {
  background-color: transparent;
  border-color: transparent; }

.cc-highlight .cc-btn:first-child:focus, .cc-highlight .cc-btn:first-child:hover, .cc-highlight a.cc-btn.active:first-child, .cc-highlight button.cc-btn.active:first-child {
  background-color: transparent;
  text-decoration: underline; }

.cc-close {
  display: block;
  position: absolute;
  top: .5em;
  right: .5em;
  font-size: 1.6em;
  opacity: .9;
  line-height: .75; }

.cc-close:focus, .cc-close:hover, a.cc-close.active, button.cc-close.active {
  opacity: 1; }

.cc-revoke.cc-top {
  top: 0;
  left: 3em;
  border-bottom-left-radius: .5em;
  border-bottom-right-radius: .5em; }

.cc-revoke.cc-bottom {
  bottom: 0;
  left: 3em;
  border-top-left-radius: .5em;
  border-top-right-radius: .5em; }

.cc-revoke.cc-left {
  left: 3em;
  right: unset; }

.cc-revoke.cc-right {
  right: 3em;
  left: unset; }

.cc-top {
  top: 1em; }

.cc-left {
  left: 1em; }

.cc-right {
  right: 1em; }

.cc-bottom {
  bottom: 1em; }

.cc-floating > .cc-link {
  margin-bottom: 1em; }

.cc-floating .cc-message {
  display: block;
  margin-bottom: 1em; }

.cc-window.cc-floating .cc-compliance {
  -webkit-box-flex: 1;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto; }

.cc-window.cc-banner {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.cc-banner.cc-top {
  left: 0;
  right: 0;
  top: 0; }

.cc-banner.cc-bottom {
  left: 0;
  right: 0;
  bottom: 0; }

.cc-banner .cc-message {
  display: block;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  max-width: 100%;
  margin-right: 1em; }

.cc-compliance {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-line-pack: justify;
  align-content: space-between; }

.cc-floating .cc-compliance > .cc-btn {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1; }

.cc-btn + .cc-btn {
  margin-left: .5em; }

@media print {
  .cc-revoke, .cc-window {
    display: none; } }

@media screen and (max-width: 900px) {
  .cc-btn {
    white-space: normal; } }

@media screen and (max-width: 414px) and (orientation: portrait), screen and (max-width: 736px) and (orientation: landscape) {
  .cc-window.cc-top {
    top: 0; }
  .cc-window.cc-bottom {
    bottom: 0; }
  .cc-window.cc-banner, .cc-window.cc-floating, .cc-window.cc-left, .cc-window.cc-right {
    left: 0;
    right: 0; }
  .cc-window.cc-banner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
  .cc-window.cc-banner .cc-compliance {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto; }
  .cc-window.cc-floating {
    max-width: none; }
  .cc-window .cc-message {
    margin-bottom: 1em; }
  .cc-window.cc-banner {
    -webkit-box-align: unset;
    -ms-flex-align: unset;
    align-items: unset; }
  .cc-window.cc-banner .cc-message {
    margin-right: 0; } }

.cc-floating.cc-theme-classic {
  padding: 1.2em;
  border-radius: 5px; }

.cc-floating.cc-type-info.cc-theme-classic .cc-compliance {
  text-align: center;
  display: inline;
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none; }

.cc-theme-classic .cc-btn {
  border-radius: 5px; }

.cc-theme-classic .cc-btn:last-child {
  min-width: 140px; }

.cc-floating.cc-type-info.cc-theme-classic .cc-btn {
  display: inline-block; }

.cc-theme-edgeless.cc-window {
  padding: 0; }

.cc-floating.cc-theme-edgeless .cc-message {
  margin: 2em;
  margin-bottom: 1.5em; }

.cc-banner.cc-theme-edgeless .cc-btn {
  margin: 0;
  padding: .8em 1.8em;
  height: 100%; }

.cc-banner.cc-theme-edgeless .cc-message {
  margin-left: 1em; }

.cc-floating.cc-theme-edgeless .cc-btn + .cc-btn {
  margin-left: 0; }

.cc-window {
  z-index: 999999; }

.cc-window .inny, .cc-window .cc-compliance, .cc-banner .inny, .cc-banner .cc-compliance, .cc-type-info .inny, .cc-type-info .cc-compliance {
  padding: 0 16px 0; }

.cc-window .inny, .cc-banner .inny, .cc-type-info .inny {
  width: 100%;
  max-width: 62.5rem;
  text-align: center;
  margin: 0 auto; }

.cc-window .cc-message, .cc-banner .cc-message, .cc-type-info .cc-message {
  font-size: 1rem;
  font-family: rooklynSamuelsFiveLight, Arial, sans-serif;
  line-height: 1.5rem;
  float: left;
  width: 78%;
  text-align: left; }

.cc-window .cc-message a, .cc-banner .cc-message a, .cc-type-info .cc-message a {
  text-decoration: underline;
  white-space: nowrap; }

.cc-window .cc-message a:hover, .cc-window .cc-message a.active, .cc-banner .cc-message a:hover, .cc-banner .cc-message a.active, .cc-type-info .cc-message a:hover, .cc-type-info .cc-message a.active {
  color: #00d8ff; }

.cc-window .cc-compliance, .cc-banner .cc-compliance, .cc-type-info .cc-compliance {
  float: right; }

.cc-window .cc-btn, .cc-window .cc-dismiss, .cc-banner .cc-btn, .cc-banner .cc-dismiss, .cc-type-info .cc-btn, .cc-type-info .cc-dismiss {
  border-radius: 3px !important;
  font-size: 1rem;
  width: auto;
  height: auto;
  letter-spacing: 0.1rem;
  text-align: center;
  border-radius: 3px;
  line-height: 1.557;
  padding: .5em 1.5em !important;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif !important;
  border: solid 1px #00d8ff !important;
  color: #000 !important;
  opacity: 0.9; }

.cc-window .cc-btn:hover, .cc-window a.cc-btn.active, .cc-window button.cc-btn.active, .cc-window .cc-dismiss:hover, .cc-window a.cc-dismiss.active, .cc-window button.cc-dismiss.active, .cc-banner .cc-btn:hover, .cc-banner a.cc-btn.active, .cc-banner button.cc-btn.active, .cc-banner .cc-dismiss:hover, .cc-banner a.cc-dismiss.active, .cc-banner button.cc-dismiss.active, .cc-type-info .cc-btn:hover, .cc-type-info a.cc-btn.active, .cc-type-info button.cc-btn.active, .cc-type-info .cc-dismiss:hover, .cc-type-info a.cc-dismiss.active, .cc-type-info button.cc-dismiss.active {
  color: #000 !important;
  border: solid 1px #00d8ff !important;
  background: #00d8ff !important;
  opacity: 1; }

.wcc-modal button:after, .wcc-consent-container button:after {
  display: none; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi9ub2RlX21vZHVsZXMvZm9udC1hd2Vzb21lL3Njc3MvZm9udC1hd2Vzb21lLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm9udC1hd2Vzb21lL3Njc3MvX3BhdGguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvc2Nzcy9fY29yZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9zY3NzL19sYXJnZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvc2Nzcy9fZml4ZWQtd2lkdGguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvc2Nzcy9fbGlzdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9zY3NzL192YXJpYWJsZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvc2Nzcy9fYm9yZGVyZWQtcHVsbGVkLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm9udC1hd2Vzb21lL3Njc3MvX2FuaW1hdGVkLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm9udC1hd2Vzb21lL3Njc3MvX3JvdGF0ZWQtZmxpcHBlZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9zY3NzL19taXhpbnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvc2Nzcy9fc3RhY2tlZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9zY3NzL19pY29ucy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9zY3NzL19zY3JlZW4tcmVhZGVyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL2hhbWJ1cmdlcnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvX2Jhc2Uuc2NzcyIsInZlbmRvci9faGFtYnVyZ2VyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19zdGFuZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc3RhbmQtci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fY29yZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fYW5pbWF0ZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fYXV0b2hlaWdodC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fbGF6eWxvYWQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9vd2wuY2Fyb3VzZWwvc3JjL3Njc3MvX3ZpZGVvLnNjc3MiLCJ2ZW5kb3IvX2ZlYXRoZXJsaWdodC5zY3NzIiwic2V0dGluZ3MvX3NldHRpbmdzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Jvdy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL191bml0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2d1dHRlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3NpemUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWF0aC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NsYXNzZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3V0dGVycy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19ncmlkLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NlbGwuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NvbGxhcHNlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2ZyYW1lLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2ZsZXguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fZmxleC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYWxpZ25tZW50LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fdGV4dC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2xhYmVsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19oZWxwLXRleHQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19maWVsZHNldC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fc2VsZWN0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2xhYmVsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19jb2xvci5zY3NzIiwidXRpbHMvX3V0aWxzLnNjc3MiLCJnbG9iYWwvX3NpdGUtc3RpY2t5LWZvb3Rlci5zY3NzIiwiZ3JpZC9fZ3JpZC14LXkuc2NzcyIsImVsZW1lbnRzL19hY2NvcmRpb24uc2NzcyIsImVsZW1lbnRzL19jYXB0aW9uLnNjc3MiLCJlbGVtZW50cy9fY29sb3JzLnNjc3MiLCJlbGVtZW50cy9fYmFja2dyb3VuZC1jb2xvdXJzLnNjc3MiLCJlbGVtZW50cy9fYmFja2dyb3VuZC1pbWFnZXMuc2NzcyIsImVsZW1lbnRzL19mb3JtLnNjc3MiLCJlbGVtZW50cy9fYnV0dG9ucy5zY3NzIiwiZWxlbWVudHMvX2ltYWdlLnNjc3MiLCJlbGVtZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiZWxlbWVudHMvX3NlYXJjaC5zY3NzIiwiZWxlbWVudHMvX2xpc3Quc2NzcyIsImVsZW1lbnRzL190YWJzLnNjc3MiLCJ0eXBvZ3JhcGh5L190eXBvZ3JhcGh5LnNjc3MiLCJnbG9iYWwvX3NpdGUtaGVhZGVyLnNjc3MiLCJnbG9iYWwvX3NpdGUtZm9vdGVyLnNjc3MiLCJnbG9iYWwvX3NoYXJlZC1lbGVtZW50cy5zY3NzIiwiZ2xvYmFsL19icmVhZGNydW1iLnNjc3MiLCJnbG9iYWwvX3NlYXJjaC5zY3NzIiwiZ2xvYmFsL19zb2xhY2UtbWljcm9zaXRlLnNjc3MiLCJjb21wb25lbnRzL19hcnRpY2xlLnNjc3MiLCJjb21wb25lbnRzL19hd2FyZC5zY3NzIiwiY29tcG9uZW50cy9fY2FyZC5zY3NzIiwiY29tcG9uZW50cy9fY2Fyb3VzZWwuc2NzcyIsImNvbXBvbmVudHMvX2ZpbHRlcnMuc2NzcyIsImNvbXBvbmVudHMvX2hlcm8uc2NzcyIsImNvbXBvbmVudHMvX2xpZ2h0Ym94LnNjc3MiLCJjb21wb25lbnRzL19tYXAuc2NzcyIsImNvbXBvbmVudHMvX3NlY3Rpb24uc2NzcyIsImNvbXBvbmVudHMvX3NoYXJlLnNjc3MiLCJjb21wb25lbnRzL192aWRlby5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Nvb2tpZWNvbnNlbnQvYnVpbGQvY29va2llY29uc2VudC5taW4uY3NzIiwidmVuZG9yL19jb29raWUtY29uc2VudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQiwySkFBQTtBQ0FBLHlDQUFBO0FBR0E7RUFDRSwwQkFBMEI7RUFDMUIsb0RBQXFFO0VBQ3JFLGlYQUltRztFQUVuRyxtQkFBbUI7RUFDbkIsa0JBQWtCLEVBQUE7O0FDVnBCO0VBQ0UscUJBQXFCO0VBQ3JCLDZD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QixFQUFPOztBTXJwQnhCO0VBQWtDLFlOeUluQixFQUFPOztBTXhJdEI7RUFFa0MsWU5xcUJuQixFQUFPOztBTXBxQnRCO0VBQXdDLFlOOGlCbkIsRUFBTzs7QU03aUI1QjtFQUF5QyxZTjRpQm5CLEVBQU87O0FNM2lCN0I7RUFBc0MsWU40Zm5CLEVBQU87O0FNM2YxQjtFQUFtQyxZTmlrQm5CLEVBQU87O0FNaGtCdkI7RUFDZ0MsWU5nS25CLEVBQU87O0FNL0pwQjtFQUFvQyxZTitxQm5CLEVBQU87O0FNOXFCeEI7RUFBaUMsWU53Vm5CLEVBQU87O0FNdlZyQjtFQUFtQyxZTnVQbkIsRUFBTzs7QU10UHZCO0VBQW9DLFlOZ0puQixFQUFPOztBTS9JeEI7RUFBaUMsWU5taEJuQixFQUFPOztBTWxoQnJCO0VBQXFDLFlOZ01uQixFQUFPOztBTS9MekI7RUFBZ0QsWU5ZbkIsRUFBTzs7QU1YcEM7RUFBOEMsWU5jbkIsRUFBTzs7QU1ibEM7RUFBa0MsWU5xV25CLEVBQU87O0FNcFd0QjtFQUEwQyxZTndlbkIsRUFBTzs7QU12ZTlCO0VBQ21DLFlOc2dCbkIsRUFBTzs7QU1yZ0J2QjtFQUFvQyxZTmdnQm5CLEVBQU87O0FNL2Z4QjtFQUFxQyxZTndZbkIsRUFBTzs7QU12WXpCO0VBQWlDLFlOMlluQixFQUFPOztBTTFZckI7RUFBaUMsWU40UG5CLEVBQU87O0FNM1ByQjtFQUF1QyxZTm9VbkIsRUFBTzs7QU1uVTNCO0VBQXVDLFlOaXRCbkIsRUFBTzs7QU1odEIzQjtFQUF3QyxZTitzQm5CLEVBQU87O0FNOXNCNUI7RUFBc0MsWU5ndEJuQixFQUFPOztBTS9zQjFCO0VBQW1DLFlOeWVuQixFQUFPOztBTXhldkI7RUFBb0MsWU53Qm5CLEVBQU87O0FNdkJ4QjtFQUFnQyxZTnltQm5CLEVBQU87O0FNeG1CcEI7RUFBaUMsWU55bUJuQixFQUFPOztBTXhtQnJCO0VBQWlDLFlOeURuQixFQUFPOztBTXhEckI7RUFBcUMsWU55RG5CLEVBQU87O0FNeER6QjtFQUFrQyxZTitkbkIsRUFBTzs7QU05ZHRCO0VBQW1DLFlOMkVuQixFQUFPOztBTTFFdkI7RUFBaUMsWU4wUG5CLEVBQU87O0FNelByQjtFQUFpQyxZTmlEbkIsRUFBTzs7QU1oRHJCO0VBQW1DLFlOMFZuQixFQUFPOztBTXpWdkI7RUFBd0MsWU53bUJuQixFQUFPOztBTXZtQjVCO0VBQXVDLFlOd21CbkIsRUFBTzs7QU12bUIzQjtFQUF1QyxZTnBDbkIsRUFBTzs7QU1xQzNCO0VBQXlDLFlOdkNuQixFQUFPOztBTXdDN0I7RUFBd0MsWU5yQ25CLEVBQU87O0FNc0M1QjtFQUEwQyxZTnhDbkIsRUFBTzs7QU15QzlCO0VBQWlDLFlOK1duQixFQUFPOztBTTlXckI7RUFDb0MsWU4yYW5CLEVBQU87O0FNMWF4QjtFQUFtQyxZTnNVbkIsRUFBTzs7QU1yVXZCO0VBQXlDLFlOa3JCbkIsRUFBTzs7QU1qckI3QjtFQUVzQyxZTjBibkIsRUFBTzs7QU16YjFCO0VBQW1DLFlOa2JuQixFQUFPOztBTWpidkI7RUFBdUMsWU53WG5CLEVBQU87O0FNdlgzQjtFQUFtQyxZTnREbkIsRUFBTzs7QU11RHZCO0VBQWlDLFlObW5CbkIsRUFBTzs7QU1sbkJyQjtFQUM0QyxZTithbkIsRUFBTzs7QU05YWhDO0VBQTJDLFlOOGZuQixFQUFPOztBTTdmL0I7RUFBMkMsWU4rRW5CLEVBQU87O0FNOUUvQjtFQUFtQyxZTnpCbkIsRUFBTzs7QU0wQnZCO0VBQTBDLFlObWpCbkIsRUFBTzs7QU1sakI5QjtFQUEwQyxZTnFMbkIsRUFBTzs7QU1wTDlCO0VBQXFDLFlObEJuQixFQUFPOztBTW1CekI7RUFBaUMsWU5zYm5CLEVBQU87O0FNcmJyQjtFQUFrQyxZTmdhbkIsRUFBTzs7QU0vWnRCO0VBQWlDLFlObWpCbkIsRUFBTzs7QU1sakJyQjtFQUFvQyxZTitObkIsRUFBTzs7QU05TnhCO0VBQXlDLFlOZ0xuQixFQUFPOztBTS9LN0I7RUFBeUMsWU40aUJuQixFQUFPOztBTTNpQjdCO0VBQWtDLFlOK0luQixFQUFPOztBTTlJdEI7RUFBeUMsWU55RW5CLEVBQU87O0FNeEU3QjtFQUEwQyxZTnlFbkIsRUFBTzs7QU14RTlCO0VBQXdDLFlOa2JuQixFQUFPOztBTWpiNUI7RUFBeUMsWU51WG5CLEVBQU87O0FNdFg3QjtFQUF5QyxZTjJsQm5CLEVBQU87O0FNMWxCN0I7RUFBeUMsWU4yRG5CLEVBQU87O0FNMUQ3QjtFQUE0QyxZTnlibkIsRUFBTzs7QU14YmhDO0VBQXdDLFlOMFNuQixFQUFPOztBTXpTNUI7RUFBdUMsWU4wR25CLEVBQU87O0FNekczQjtFQUEyQyxZTnVsQm5CLEVBQU87O0FNdGxCL0I7RUFBMkMsWU51RG5CLEVBQU87O0FNdEQvQjtFQUFnQyxZTm5DbkIsRUFBTzs7QU1vQ3BCO0VBQXVDLFlObkRuQixFQUFPOztBTW9EM0I7RUFBd0MsWU5uRG5CLEVBQU87O0FNb0Q1QjtFQUFxQyxZTm5EbkIsRUFBTzs7QU1vRHpCO0VBQXVDLFlOdkRuQixFQUFPOztBTXdEM0I7RUFDa0MsWU40ZG5CLEVBQU87O0FNM2R0QjtFQUFtQyxZTjhJbkIsRUFBTzs7QU03SXZCO0VBQXFDLFlOc0ZuQixFQUFPOztBTXJGekI7RUFBaUMsWU4rWm5CLEVBQU87O0FNOVpyQjtFQUFrQyxZTm9XbkIsRUFBTzs7QU1uV3RCO0VBQXFDLFlOcERuQixFQUFPOztBTXFEekI7RUFBK0MsWU51SW5CLEVBQU87O0FNdEluQztFQUFpQyxZTmtObkIsRUFBTzs7QU1qTnJCO0VBQWlDLFlOMFNuQixFQUFPOztBTXpTckI7RUFBaUMsWU42S25CLEVBQU87O0FNNUtyQjtFQUFnQyxZTnlJbkIsRUFBTzs7QU14SXBCO0VBQXNDLFlOeUluQixFQUFPOztBTXhJMUI7RUFDaUQsWU5pSW5CLEVBQU87O0FNaElyQztFQUFrQyxZTitZbkIsRUFBTzs7QU05WXRCO0VBQXFDLFlOQW5CLEVBQU87O0FNQ3pCO0VBQW1DLFlOb2FuQixFQUFPOztBTW5hdkI7RUFBb0MsWU5nRW5CLEVBQU87O0FNL0R4QjtFQUFtQyxZTjZUbkIsRUFBTzs7QU01VHZCO0VBQXVDLFlOdUNuQixFQUFPOztBTXRDM0I7RUFBeUMsWU5tQ25CLEVBQU87O0FNbEM3QjtFQUFvQyxZTithbkIsRUFBTzs7QU05YXhCO0VBQTBDLFlOa2RuQixFQUFPOztBTWpkOUI7RUFBbUMsWU4wS25CLEVBQU87O0FNekt2QjtFQUF3QyxZTjJLbkIsRUFBTzs7QU0xSzVCO0VBQXFDLFlOM0VuQixFQUFPOztBTTRFekI7RUFBcUMsWU43RW5CLEVBQU87O0FNOEV6QjtFQUNzQyxZTmxFbkIsRUFBTzs7QU1tRTFCO0VBQTJDLFlOK2tCbkIsRUFBTzs7QU05a0IvQjtFQUE0QyxZTjRIbkIsRUFBTzs7QU0zSGhDO0VBQXlDLFlOVG5CLEVBQU87O0FNVTdCO0VBQWdDLFlOMlFuQixFQUFPOztBTTFRcEI7RUFDaUMsWU42Q25CLEVBQU87O0FNNUNyQjtFQUFxQyxZTmtEbkIsRUFBTzs7QU1qRHpCO0VBQXdDLFlOc2lCbkIsRUFBTzs7QU1yaUI1QjtFQUEwQyxZTm9pQm5CLEVBQU87O0FNbmlCOUI7RUFBc0MsWU4yZW5CLEVBQU87O0FNMWUxQjtFQUFvQyxZTjhObkIsRUFBTzs7QU03TnhCO0VBQXFDLFlOb2NuQixFQUFPOztBTW5jekI7RUFBNEMsWU51Um5CLEVBQU87O0FNdFJoQztFQUF1QyxZTjZoQm5CLEVBQU87O0FNNWhCM0I7RUFBMEMsWU5zR25CLEVBQU87O0FNckc5QjtFQUFvQyxZTjhibkIsRUFBTzs7QU03YnhCO0VBQW1DLFlOcWpCbkIsRUFBTzs7QU1wakJ2QjtFQUEwQyxZTmdMbkIsRUFBTzs7QU0vSzlCO0VBQW1DLFlOdWtCbkIsRUFBTzs7QU10a0J2QjtFQUFvQyxZTnFRbkIsRUFBTzs7QU1wUXhCO0VBQWtDLFlOaVduQixFQUFPOztBTWhXdEI7RUFBcUMsWU4yZG5CLEVBQU87O0FNMWR6QjtFQUF1QyxZTmpEbkIsRUFBTzs7QU1rRDNCO0VBQXlDLFlOK1ZuQixFQUFPOztBTTlWN0I7RUFBb0MsWU5zakJuQixFQUFPOztBTXJqQnhCO0VBQ3FDLFlOZ0duQixFQUFPOztBTS9GekI7RUFBbUMsWU5vS25CLEVBQU87O0FNbkt2QjtFQUFtQyxZTjBqQm5CLEVBQU87O0FNempCdkI7RUFBd0MsWU5vQ25CLEVBQU87O0FNbkM1QjtFQUNnQyxZTitZbkIsRUFBTzs7QU05WXBCO0VBQWtDLFlOb01uQixFQUFPOztBTW5NdEI7RUFBcUMsWU5yRG5CLEVBQU87O0FNc0R6QjtFQUFpQyxZTmhGbkIsRUFBTzs7QU1pRnJCO0VBQXdDLFlOckJuQixFQUFPOztBTXNCNUI7RUFBeUMsWU5vTG5CLEVBQU87O0FNbkw3QjtFQUF3QyxZTmtMbkIsRUFBTzs7QU1qTDVCO0VBQXNDLFlObUxuQixFQUFPOztBTWxMMUI7RUFBd0MsWU4rS25CLEVBQU87O0FNOUs1QjtFQUE4QyxZTnJJbkIsRUFBTzs7QU1zSWxDO0VBQStDLFlOakluQixFQUFPOztBTWtJbkM7RUFBNEMsWU5qSW5CLEVBQU87O0FNa0loQztFQUE4QyxZTnpJbkIsRUFBTzs7QU0wSWxDO0VBQWtDLFlOMkpuQixFQUFPOztBTTFKdEI7RUFBbUMsWU42bEJuQixFQUFPOztBTTVsQnZCO0VBQWtDLFlOcWVuQixFQUFPOztBTXBldEI7RUFBbUMsWU55R25CLEVBQU87O0FNeEd2QjtFQUFzQyxZTnpFbkIsRUFBTzs7QU0wRTFCO0VBQXVDLFlObEluQixFQUFPOztBTW1JM0I7RUFDa0MsWU5pakJuQixFQUFPOztBTWhqQnRCO0VBQ2lDLFlONE9uQixFQUFPOztBTTNPckI7RUFBa0MsWU5kbkIsRUFBTzs7QU1ldEI7RUFBa0MsWU4wR25CLEVBQU87O0FNekd0QjtFQUNxQyxZTjZYbkIsRUFBTzs7QU01WHpCO0VBQ29DLFlOMkZuQixFQUFPOztBTTFGeEI7RUFBc0MsWU42U25CLEVBQU87O0FNNVMxQjtFQUNxQyxZTnFHbkIsRUFBTzs7QU1wR3pCO0VBQW1DLFlOZ2JuQixFQUFPOztBTS9hdkI7RUFFaUMsWU5sSW5CLEVBQU87O0FNbUlyQjtFQUFvQyxZTnNPbkIsRUFBTzs7QU1yT3hCO0VBQW9DLFlOb09uQixFQUFPOztBTW5PeEI7RUFBMEMsWU4rYm5CLEVBQU87O0FNOWI5QjtFQUFzQyxZTjJnQm5CLEVBQU87O0FNMWdCMUI7RUFBa0MsWU51Y25CLEVBQU87O0FNdGN0QjtFQUFrQyxZTnlPbkIsRUFBTzs7QU14T3RCO0VBQWtDLFlONmZuQixFQUFPOztBTTVmdEI7RUFBc0MsWU5tVG5CLEVBQU87O0FNbFQxQjtFQUE2QyxZTm9UbkIsRUFBTzs7QU1uVGpDO0VBQStDLFlOZ0luQixFQUFPOztBTS9IbkM7RUFBd0MsWU40SG5CLEVBQU87O0FNM0g1QjtFQUFrQyxZTnFRbkIsRUFBTzs7QU1wUXRCO0VBQXVDLFlOcEZuQixFQUFPOztBTXFGM0I7RUFBcUMsWU45RW5CLEVBQU87O0FNK0V6QjtFQUF1QyxZTnJGbkIsRUFBTzs7QU1zRjNCO0VBQXdDLFlOckZuQixFQUFPOztBTXNGNUI7RUFBb0MsWU5oQ25CLEVBQU87O0FNaUN4QjtFQUNpQyxZTjBZbkIsRUFBTzs7QU16WXJCO0VBQ3NDLFlOOFluQixFQUFPOztBTTdZMUI7RUFDcUMsWU4yWW5CLEVBQU87O0FNMVl6QjtFQUFxQyxZTlVuQixFQUFPOztBTVR6QjtFQUFxQyxZTnVNbkIsRUFBTzs7QU10TXpCO0VBQ2lDLFlOcWZuQixFQUFPOztBTXBmckI7RUFDa0MsWU5vRm5CLEVBQU87O0FNbkZ0QjtFQUN1QyxZTithbkIsRUFBTzs7QU05YTNCO0VBQXNDLFlON0NuQixFQUFPOztBTThDMUI7RUFBdUMsWU4xQ25CLEVBQU87O0FNMkMzQjtFQUNpQyxZTnBJbkIsRUFBTzs7QU1xSXJCO0VBQW9DLFlONlduQixFQUFPOztBTTVXeEI7RUFBcUMsWU55ZW5CLEVBQU87O0FNeGV6QjtFQUNzQyxZTnJFbkIsRUFBTzs7QU1zRTFCO0VBQXdDLFlOcUxuQixFQUFPOztBTXBMNUI7RUFBcUMsWU5HbkIsRUFBTzs7QU1GekI7RUFBMkMsWU5uRW5CLEVBQU87O0FNb0UvQjtFQUF5QyxZTm5FbkIsRUFBTzs7QU1vRTdCO0VBQW9DLFlOaWZuQixFQUFPOztBTWhmeEI7RUFBd0MsWU44WW5CLEVBQU87O0FNN1k1QjtFQUFxQyxZTnlabkIsRUFBTzs7QU14WnpCO0VBQW1DLFlOOUpuQixFQUFPOztBTStKdkI7RUFBbUMsWU5sRW5CLEVBQU87O0FNbUV2QjtFQUFvQyxZTjFDbkIsRUFBTzs7QU0yQ3hCO0VBQXdDLFlOOEJuQixFQUFPOztBTTdCNUI7RUFBdUMsWU4xSW5CLEVBQU87O0FNMkkzQjtFQUF1QyxZTnNIbkIsRUFBTzs7QU1ySDNCO0VBQXNDLFlOck9uQixFQUFPOztBTXNPMUI7RUFBbUMsWU40TW5CLEVBQU87O0FNM012QjtFQUF3QyxZTlVuQixFQUFPOztBTVQ1QjtFQUFpQyxZTjNLbkIsRUFBTzs7QU00S3JCO0VBQXFDLFlOdUZuQixFQUFPOztBTXRGekI7RUFBd0MsWU4yUW5CLEVBQU87O0FNMVE1QjtFQUE4QyxZTnJPbkIsRUFBTzs7QU1zT2xDO0VBQStDLFlOck9uQixFQUFPOztBTXNPbkM7RUFBNEMsWU5yT25CLEVBQU87O0FNc09oQztFQUE4QyxZTnpPbkIsRUFBTzs7QU0wT2xDO0VBQXVDLFlOck9uQixFQUFPOztBTXNPM0I7RUFBd0MsWU5yT25CLEVBQU87O0FNc081QjtFQUFxQyxZTnJPbkIsRUFBTzs7QU1zT3pCO0VBQXVDLFlOek9uQixFQUFPOztBTTBPM0I7RUFBb0MsWU5wRG5CLEVBQU87O0FNcUR4QjtFQUFtQyxZTjRJbkIsRUFBTzs7QU0zSXZCO0VBQW1DLFlOd1luQixFQUFPOztBTXZZdkI7RUFDbUMsWU51TW5CLEVBQU87O0FNdE12QjtFQUFxQyxZTnpHbkIsRUFBTzs7QU0wR3pCO0VBQXVDLFlOeVFuQixFQUFPOztBTXhRM0I7RUFBd0MsWU55UW5CLEVBQU87O0FNeFE1QjtFQUFvQyxZTitWbkIsRUFBTzs7QU05VnhCO0VBQW1DLFlOOUduQixFQUFPOztBTStHdkI7RUFDa0MsWU5vUm5CLEVBQU87O0FNblJ0QjtFQUF1QyxZTitDbkIsRUFBTzs7QU05QzNCO0VBQXFDLFlObUJuQixFQUFPOztBTWxCekI7RUFBMEMsWU5vQm5CLEVBQU87O0FNbkI5QjtFQUFvQyxZTnFVbkIsRUFBTzs7QU1wVXhCO0VBQW9DLFlOMkJuQixFQUFPOztBTTFCeEI7RUFBa0MsWU5nTG5CLEVBQU87O0FNL0t0QjtFQUFvQyxZTjJCbkIsRUFBTzs7QU0xQnhCO0VBQXVDLFlOdUhuQixFQUFPOztBTXRIM0I7RUFBbUMsWU5NbkIsRUFBTzs7QU1MdkI7RUFBMkMsWU5JbkIsRUFBTzs7QU1IL0I7RUFBcUMsWU42WG5CLEVBQU87O0FNNVh6QjtFQUFpQyxZTmhIbkIsRUFBTzs7QU1pSHJCO0VBQ3NDLFlOdVFuQixFQUFPOztBTXRRMUI7RUFFd0MsWU5zVm5CLEVBQU87O0FNclY1QjtFQUEyQyxZTndJbkIsRUFBTzs7QU12SS9CO0VBQWlDLFlOaEduQixFQUFPOztBTWlHckI7RUFBc0MsWU52SG5CLEVBQU87O0FNd0gxQjtFQUN5QyxZTnRKbkIsRUFBTzs7QU11SjdCO0VBQXFDLFlOeU9uQixFQUFPOztBTXhPekI7RUFBaUMsWU4wRm5CLEVBQU87O0FNekZyQjtFQUF3QyxZTjFEbkIsRUFBTzs7QU0yRDVCO0VBQXdDLFlOa1duQixFQUFPOztBTWpXNUI7RUFBc0MsWU40Vm5CLEVBQU87O0FNM1YxQjtFQUFtQyxZTmxFbkIsRUFBTzs7QU1tRXZCO0VBQXlDLFlOZ09uQixFQUFPOztBTS9ON0I7RUFBdUMsWU4ySm5CLEVBQU87O0FNMUozQjtFQUE2QyxZTjJKbkIsRUFBTzs7QU0xSmpDO0VBQW1DLFlOc1JuQixFQUFPOztBTXJSdkI7RUFBdUMsWU41TG5CLEVBQU87O0FNNkwzQjtFQUE4QyxZTnhCbkIsRUFBTzs7QU15QmxDO0VBQW1DLFlOdVBuQixFQUFPOztBTXRQdkI7RUFBbUMsWU42SW5CLEVBQU87O0FNNUl2QjtFQUFnRCxZTjlKbkIsRUFBTzs7QU0rSnBDO0VBQWlELFlOOUpuQixFQUFPOztBTStKckM7RUFBOEMsWU45Sm5CLEVBQU87O0FNK0psQztFQUFnRCxZTmxLbkIsRUFBTzs7QU1tS3BDO0VBQWtDLFlOOERuQixFQUFPOztBTTdEdEI7RUFBaUMsWU5ySG5CLEVBQU87O0FNc0hyQjtFQUFtQyxZTnZTbkIsRUFBTzs7QU13U3ZCO0VBQXVDLFlOMlpuQixFQUFPOztBTTFaM0I7RUFBcUMsWU5oTm5CLEVBQU87O0FNaU56QjtFQUF1QyxZTjdGbkIsRUFBTzs7QU04RjNCO0VBQXVDLFlON0ZuQixFQUFPOztBTThGM0I7RUFBdUMsWU4rT25CLEVBQU87O0FNOU8zQjtFQUF3QyxZTmlNbkIsRUFBTzs7QU1oTTVCO0VBQW1DLFlONlduQixFQUFPOztBTTVXdkI7RUFBeUMsWU4wSW5CLEVBQU87O0FNekk3QjtFQUEyQyxZTjBJbkIsRUFBTzs7QU16SS9CO0VBQXFDLFlOcUZuQixFQUFPOztBTXBGekI7RUFBdUMsWU5tRm5CLEVBQU87O0FNbEYzQjtFQUF5QyxZTm5MbkIsRUFBTzs7QU1vTDdCO0VBQTBDLFlOMEtuQixFQUFPOztBTXpLOUI7RUFBaUQsWU5wRm5CLEVBQU87O0FNcUZyQztFQUF5QyxZTndQbkIsRUFBTzs7QU12UDdCO0VBQW9DLFlOakpuQixFQUFPOztBTWtKeEI7RUFDZ0QsWU4vTW5CLEVBQU87O0FNZ05wQztFQUM4QyxZTjlNbkIsRUFBTzs7QU0rTWxDO0VBQ2lELFlOak5uQixFQUFPOztBTWtOckM7RUFDZ0MsWU52R25CLEVBQU87O0FNd0dwQjtFQUFnQyxZTmhDbkIsRUFBTzs7QU1pQ3BCO0VBQ2dDLFlOcVluQixFQUFPOztBTXBZcEI7RUFDZ0MsWU40Q25CLEVBQU87O0FNM0NwQjtFQUdnQyxZTmdEbkIsRUFBTzs7QU0vQ3BCO0VBRWdDLFlOaU5uQixFQUFPOztBTWhOcEI7RUFDZ0MsWU4rQ25CLEVBQU87O0FNOUNwQjtFQUNnQyxZTjNQbkIsRUFBTzs7QU00UHBCO0VBQWlDLFlOaEduQixFQUFPOztBTWlHckI7RUFBc0MsWU5wRm5CLEVBQU87O0FNcUYxQjtFQUEyQyxZTjBQbkIsRUFBTzs7QU16UC9CO0VBQTRDLFlOMFBuQixFQUFPOztBTXpQaEM7RUFBNEMsWU4wUG5CLEVBQU87O0FNelBoQztFQUE2QyxZTjBQbkIsRUFBTzs7QU16UGpDO0VBQTZDLFlONlBuQixFQUFPOztBTTVQakM7RUFBOEMsWU42UG5CLEVBQU87O0FNNVBsQztFQUFzQyxZTmtVbkIsRUFBTzs7QU1qVTFCO0VBQXdDLFlOOFRuQixFQUFPOztBTTdUNUI7RUFBMkMsWU55YW5CLEVBQU87O0FNeGEvQjtFQUFvQyxZTnNhbkIsRUFBTzs7QU1yYXhCO0VBQWlDLFlOMlpuQixFQUFPOztBTTFackI7RUFBd0MsWU4yWm5CLEVBQU87O0FNMVo1QjtFQUF5QyxZTm9hbkIsRUFBTzs7QU1uYTdCO0VBQW9DLFlOeEpuQixFQUFPOztBTXlKeEI7RUFBMkMsWU44UG5CLEVBQU87O0FNN1AvQjtFQUFzQyxZTmdCbkIsRUFBTzs7QU1mMUI7RUFBbUMsWU5wRm5CLEVBQU87O0FNcUZ2QjtFQUFnQyxZTjNXbkIsRUFBTzs7QU00V3BCO0VBQXNDLFlOL1JuQixFQUFPOztBTWdTMUI7RUFBNkMsWU4vUm5CLEVBQU87O0FNZ1NqQztFQUFtQyxZTitVbkIsRUFBTzs7QU05VXZCO0VBQTBDLFlOK1VuQixFQUFPOztBTTlVOUI7RUFBNEMsWU5nRG5CLEVBQU87O0FNL0NoQztFQUEwQyxZTmtEbkIsRUFBTzs7QU1qRDlCO0VBQTRDLFlOK0NuQixFQUFPOztBTTlDaEM7RUFBNkMsWU4rQ25CLEVBQU87O0FNOUNqQztFQUFrQyxZTmpXbkIsRUFBTzs7QU1rV3RCO0VBQW9DLFlObVluQixFQUFPOztBTWxZeEI7RUFBb0MsWU43V25CLEVBQU87O0FNOFd4QjtFQUFrQyxZTmtDbkIsRUFBTzs7QU1qQ3RCO0VBQXFDLFlONUtuQixFQUFPOztBTTZLekI7RUFBa0MsWU5nTm5CLEVBQU87O0FNL010QjtFQUF1QyxZTnhGbkIsRUFBTzs7QU15RjNCO0VBQW1DLFlONFRuQixFQUFPOztBTTNUdkI7RUFBbUMsWU50SW5CLEVBQU87O0FNdUl2QjtFQUFpQyxZTjZDbkIsRUFBTzs7QU01Q3JCO0VBQ3FDLFlONURuQixFQUFPOztBTTZEekI7RUFBa0MsWU44UG5CLEVBQU87O0FNN1B0QjtFQUFtQyxZTnVFbkIsRUFBTzs7QU10RXZCO0VBQW9DLFlOOVduQixFQUFPOztBTStXeEI7RUFBZ0MsWU50U25CLEVBQU87O0FNdVNwQjtFQUErQixZTmlXbkIsRUFBTzs7QU1oV25CO0VBQWtDLFlOdVduQixFQUFPOztBTXRXdEI7RUFBbUMsWU4rSW5CLEVBQU87O0FNOUl2QjtFQUFzQyxZTmtGbkIsRUFBTzs7QU1qRjFCO0VBQTJDLFlONk5uQixFQUFPOztBTTVOL0I7RUFBaUQsWU4vV25CLEVBQU87O0FNZ1hyQztFQUFnRCxZTmpYbkIsRUFBTzs7QU1rWHBDO0VBQ2dELFlOelJuQixFQUFPOztBTTBScEM7RUFBeUMsWU5uTW5CLEVBQU87O0FNb003QjtFQUF1QyxZTmlXbkIsRUFBTzs7QU1oVzNCO0VBQXlDLFlOb1ZuQixFQUFPOztBTW5WN0I7RUFDZ0MsWU4wU25CLEVBQU87O0FNelNwQjtFQUEwQyxZTjBHbkIsRUFBTzs7QU16RzlCO0VBQTBDLFlONE1uQixFQUFPOztBTTNNOUI7RUFBa0MsWU5zTG5CLEVBQU87O0FNckx0QjtFQUE0QyxZTnpMbkIsRUFBTzs7QU0wTGhDO0VBQXNDLFlOb1duQixFQUFPOztBTW5XMUI7RUFBbUMsWU44RG5CLEVBQU87O0FNN0R2QjtFQUV1QyxZTjhTbkIsRUFBTzs7QU03UzNCO0VBQzJDLFlOMUZuQixFQUFPOztBTTJGL0I7RUFBa0MsWU5zV25CLEVBQU87O0FNcld0QjtFQUFtQyxZTmxHbkIsRUFBTzs7QU1tR3ZCO0VBQW1DLFlOZ0huQixFQUFPOztBTS9HdkI7RUFBMEMsWU5pSG5CLEVBQU87O0FNaEg5QjtFQUErQyxZTnlObkIsRUFBTzs7QU14Tm5DO0VBQXdDLFlOdU5uQixFQUFPOztBTXRONUI7RUFBc0MsWU4vTm5CLEVBQU87O0FNZ08xQjtFQUFpQyxZTjVObkIsRUFBTzs7QU02TnJCO0VBQTBDLFlOMkVuQixFQUFPOztBTTFFOUI7RUFBMkMsWU55RW5CLEVBQU87O0FNeEUvQjtFQUFtQyxZTnZObkIsRUFBTzs7QU13TnZCO0VBQW1DLFlOekNuQixFQUFPOztBTTBDdkI7RUFBcUMsWU5wQ25CLEVBQU87O0FNcUN6QjtFQUFnQyxZTnRMbkIsRUFBTzs7QU11THBCO0VBQXFDLFlON1VuQixFQUFPOztBTThVekI7RUFBa0MsWU4xUm5CLEVBQU87O0FNMlJ0QjtFQUFnQyxZTnNEbkIsRUFBTzs7QU1yRHBCO0VBQWtDLFlObUxuQixFQUFPOztBTWxMdEI7RUFBaUMsWU5yUG5CLEVBQU87O0FNc1ByQjtFQUFrQyxZTnJQbkIsRUFBTzs7QU1zUHRCO0VBQW9DLFlON1duQixFQUFPOztBTThXeEI7RUFBMkMsWU43V25CLEVBQU87O0FNOFcvQjtFQUFrQyxZTjBMbkIsRUFBTzs7QU16THRCO0VBQXlDLFlOMExuQixFQUFPOztBTXpMN0I7RUFBb0MsWU55Rm5CLEVBQU87O0FNeEZ4QjtFQUNnQyxZTnpVbkIsRUFBTzs7QU0wVXBCO0VBQ2lDLFlOK01uQixFQUFPOztBTTlNckI7RUFBaUMsWU40UG5CLEVBQU87O0FNM1ByQjtFQUFvQyxZTnVLbkIsRUFBTzs7QU10S3hCO0VBQXVDLFlOdFBuQixFQUFPOztBTXVQM0I7RUFBdUMsWU5pS25CLEVBQU87O0FNaEszQjtFQUFxQyxZTjlQbkIsRUFBTzs7QU0rUHpCO0VBQXVDLFlOL0xuQixFQUFPOztBTWdNM0I7RUFBd0MsWU54TG5CLEVBQU87O0FNeUw1QjtFQUF5QyxZTnJNbkIsRUFBTzs7QU1zTTdCO0VBQThDLFlOL0xuQixFQUFPOztBTWdNbEM7RUFFeUMsWU54TW5CLEVBQU87O0FNeU03QjtFQUMyQyxZTjlNbkIsRUFBTzs7QU0rTS9CO0VBQ3lDLFlOL01uQixFQUFPOztBTWdON0I7RUFDeUMsWU5wTW5CLEVBQU87O0FNcU03QjtFQUF3QyxZTmpObkIsRUFBTzs7QU1rTjVCO0VBQWlDLFlOdVJuQixFQUFPOztBTXRSckI7RUFBb0MsWU41U25CLEVBQU87O0FNNlN4QjtFQUFxQyxZTjlFbkIsRUFBTzs7QU0rRXpCO0VBSXNDLFlObkVuQixFQUFPOztBTW9FMUI7RUFBMkMsWU4vVG5CLEVBQU87O0FNZ1UvQjtFQUVrQyxZTnFEbkIsRUFBTzs7QU1wRHRCO0VBQ21DLFlOblFuQixFQUFPOztBTW9RdkI7RUFBdUMsWU56S25CLEVBQU87O0FNMEszQjtFQUFnQyxZTjNLbkIsRUFBTzs7QU00S3BCO0VBRXdDLFlOeEpuQixFQUFPOztBTXlKNUI7RUFBMEMsWU4yS25CLEVBQU87O0FNMUs5QjtFQUErQixZTmlDbkIsRUFBTzs7QU1oQ25CO0VBQ21DLFlOMFFuQixFQUFPOztBTXpRdkI7RUFDd0MsWU5WbkIsRUFBTzs7QU1XNUI7RUFDMEMsWU5YbkIsRUFBTzs7QU1ZOUI7RUFBb0MsWU4xSW5CLEVBQU87O0FNMkl4QjtFQUF3QyxZTmxWbkIsRUFBTzs7QU1tVjVCO0VBQW1DLFlOakpuQixFQUFPOztBTWtKdkI7RUFBc0MsWU5ibkIsRUFBTzs7QU1jMUI7RUFBb0MsWU4rRm5CLEVBQU87O0FNOUZ4QjtFQUFzQyxZTnVFbkIsRUFBTzs7QU10RTFCO0VBQTZDLFlOdUVuQixFQUFPOztBTXRFakM7RUFBaUMsWU56Wm5CLEVBQU87O0FNMFpyQjtFQUNxQyxZTjVNbkIsRUFBTzs7QU02TXpCO0VBQWdDLFlOME1uQixFQUFPOztBTXpNcEI7RUFBdUMsWU54YW5CLEVBQU87O0FNeWEzQjtFQUFpQyxZTkluQixFQUFPOztBTUhyQjtFQUF1QyxZTnVGbkIsRUFBTzs7QU10RjNCO0VBQW1DLFlOMk1uQixFQUFPOztBTTFNdkI7RUFBaUMsWU4rUW5CLEVBQU87O0FNOVFyQjtFQUF3QyxZTnpDbkIsRUFBTzs7QU0wQzVCO0VBQWlDLFlOd1BuQixFQUFPOztBTXZQckI7RUFBdUMsWU5yWm5CLEVBQU87O0FNc1ozQjtFQUFtQyxZTnZCbkIsRUFBTzs7QU13QnZCO0VBQTBDLFlOM0xuQixFQUFPOztBTTRMOUI7RUFBb0MsWU41WG5CLEVBQU87O0FNNlh4QjtFQUEwQyxZTmhZbkIsRUFBTzs7QU1pWTlCO0VBQXdDLFlOblluQixFQUFPOztBTW9ZNUI7RUFBb0MsWU50WW5CLEVBQU87O0FNdVl4QjtFQUFzQyxZTmxZbkIsRUFBTzs7QU1tWTFCO0VBQXNDLFlObFluQixFQUFPOztBTW1ZMUI7RUFBdUMsWU4zYm5CLEVBQU87O0FNNGIzQjtFQUF5QyxZTjNibkIsRUFBTzs7QU00YjdCO0VBQWtDLFlOK0tuQixFQUFPOztBTTlLdEI7RUFBc0MsWU5uVm5CLEVBQU87O0FNb1YxQjtFQUErQixZTjlkbkIsRUFBTzs7QU0rZG5CO0VBQXVDLFlONVJuQixFQUFPOztBTTZSM0I7RUFBd0MsWU4vQ25CLEVBQU87O0FNZ0Q1QjtFQUEwQyxZTjlibkIsRUFBTzs7QU0rYjlCO0VBQXVDLFlOdGZuQixFQUFPOztBTXVmM0I7RUFBc0MsWU4vQm5CLEVBQU87O0FNZ0MxQjtFQUF1QyxZTnpIbkIsRUFBTzs7QU0wSDNCO0VBQW1DLFlOdkluQixFQUFPOztBTXdJdkI7RUFBMEMsWU52SW5CLEVBQU87O0FNd0k5QjtFQUF1QyxZTjRKbkIsRUFBTzs7QU0zSjNCO0VBQXNDLFlONEpuQixFQUFPOztBTTNKMUI7RUFBb0MsWU54Y25CLEVBQU87O0FNeWN4QjtFQUFnQyxZTmpibkIsRUFBTzs7QU1rYnBCO0VBQW9DLFlOdkpuQixFQUFPOztBTXdKeEI7RUFBc0MsWU4zZ0JuQixFQUFPOztBTTRnQjFCO0VBQStCLFlON1puQixFQUFPOztBTThabkI7RUFFZ0MsWU56S25CLEVBQU87O0FNMEtwQjtFQUFxQyxZTnBHbkIsRUFBTzs7QU1xR3pCO0VBQXVDLFlOeGJuQixFQUFPOztBTXliM0I7RUFBMkMsWU41V25CLEVBQU87O0FNNlcvQjtFQUFxQyxZTjlWbkIsRUFBTzs7QU0rVnpCO0VBQXFDLFlOOVBuQixFQUFPOztBTStQekI7RUFBb0MsWU5ySm5CLEVBQU87O0FNc0p4QjtFQUFtQyxZTmVuQixFQUFPOztBTWR2QjtFQUF5QyxZTjJCbkIsRUFBTzs7QU0xQjdCO0VBQXdDLFlOb0NuQixFQUFPOztBTW5DNUI7RUFBcUMsWU5xQ25CLEVBQU87O0FNcEN6QjtFQUFzQyxZTjVhbkIsRUFBTzs7QU02YTFCO0VBQTRDLFlOOWFuQixFQUFPOztBTSthaEM7RUFBb0MsWU4vVm5CLEVBQU87O0FNZ1d4QjtFQUFpQyxZTm9CbkIsRUFBTzs7QU1uQnJCO0VBQXdDLFlOOEtuQixFQUFPOztBTTdLNUI7RUFBdUMsWU4vRm5CLEVBQU87O0FNZ0czQjtFQUF3QyxZTjZFbkIsRUFBTzs7QU01RTVCO0VBQXNDLFlOOU1uQixFQUFPOztBTStNMUI7RUFBa0MsWU4rS25CLEVBQU87O0FNOUt0QjtFQUFpQyxZTjdIbkIsRUFBTzs7QU04SHJCO0VBQW9DLFlObkhuQixFQUFPOztBTW9IeEI7RUFDd0MsWU5rSW5CLEVBQU87O0FNakk1QjtFQUE0QyxZTmtJbkIsRUFBTzs7QU1qSWhDO0VBQXlDLFlOMEtuQixFQUFPOztBTXpLN0I7RUFBd0MsWU5sSW5CLEVBQU87O0FNbUk1QjtFQUF1QyxZTnlLbkIsRUFBTzs7QU14SzNCO0VBQXdDLFlObkluQixFQUFPOztBTW9JNUI7RUFBMEMsWU5sSW5CLEVBQU87O0FNbUk5QjtFQUEwQyxZTnBJbkIsRUFBTzs7QU1xSTlCO0VBQW1DLFlOMUduQixFQUFPOztBTTJHdkI7RUFBdUMsWU43UW5CLEVBQU87O0FNOFEzQjtFQUE4QyxZTjFVbkIsRUFBTzs7QU0yVWxDO0VBQXdDLFlOekVuQixFQUFPOztBTTBFNUI7RUFBcUMsWU5rTG5CLEVBQU87O0FNakx6QjtFQUFtQyxZTlhuQixFQUFPOztBTVl2QjtFQUFzQyxZTnVKbkIsRUFBTzs7QU10SjFCO0VBQXVDLFlOd0puQixFQUFPOztBTXZKM0I7RUFDZ0MsWU4vZm5CLEVBQU87O0FNZ2dCcEI7RUFBb0MsWU40Sm5CLEVBQU87O0FNM0p4QjtFQUFrQyxZTjhHbkIsRUFBTzs7QU03R3RCO0VBQW1DLFlOd0RuQixFQUFPOztBTXZEdkI7RUFBbUMsWU45SW5CLEVBQU87O0FNK0l2QjtFQUN5QyxZTjBMbkIsRUFBTzs7QU16TDdCO0VBQTBDLFlOakhuQixFQUFPOztBTWtIOUI7RUFBcUMsWU5ySG5CLEVBQU87O0FNc0h6QjtFQUF5QyxZTm5XbkIsRUFBTzs7QU1vVzdCO0VBRXlDLFlOL2dCbkIsRUFBTzs7QU1naEI3QjtFQUNtRCxZTjlnQm5CLEVBQU87O0FNK2dCdkM7RUFDeUMsWU5saEJuQixFQUFPOztBTW1oQjdCO0VBQzRDLFlObmhCbkIsRUFBTzs7QU1vaEJoQztFQUMwQyxZTnhoQm5CLEVBQU87O0FNeWhCOUI7RUFBMEMsWU4zSW5CLEVBQU87O0FNNEk5QjtFQUFxQyxZTjNPbkIsRUFBTzs7QU00T3pCO0VBQXlDLFlOeEluQixFQUFPOztBTXlJN0I7RUFBMkMsWU54SW5CLEVBQU87O0FNeUkvQjtFQUF3QyxZTndCbkIsRUFBTzs7QU12QjVCO0VBQTBDLFlOd0JuQixFQUFPOztBTXZCOUI7RUFBbUMsWU4vZG5CLEVBQU87O0FNZ2V2QjtFQUEyQyxZTmxlbkIsRUFBTzs7QU1tZS9CO0VBQWtDLFlOcGNuQixFQUFPOztBTXFjdEI7RUFBMEMsWU5sakJuQixFQUFPOztBTW1qQjlCO0VBQXdDLFlOeFBuQixFQUFPOztBTXlQNUI7RUFDNEMsWU56UG5CLEVBQU87O0FNMFBoQztFQUMyQyxZTjdQbkIsRUFBTzs7QU04UC9CO0VBQzBDLFlOaFFuQixFQUFPOztBTWlROUI7RUFBc0MsWU5yUW5CLEVBQU87O0FNc1ExQjtFQUN3QyxZTnhSbkIsRUFBTzs7QU15UjVCO0VBQ3lDLFlON1JuQixFQUFPOztBTThSN0I7RUFBNEMsWU4xUm5CLEVBQU87O0FNMlJoQztFQUEwQyxZTnBTbkIsRUFBTzs7QU1xUzlCO0VBQXlDLFlOM1JuQixFQUFPOztBTTRSN0I7RUFBMkMsWU4vUm5CLEVBQU87O0FNZ1MvQjtFQUF5QyxZTmpTbkIsRUFBTzs7QU1rUzdCO0VBQXNDLFlOK0RuQixFQUFPOztBTTlEMUI7RUFBdUMsWU4vRm5CLEVBQU87O0FNZ0czQjtFQUE2QyxZTi9ibkIsRUFBTzs7QU1nY2pDO0VBQStCLFlOdFVuQixFQUFPOztBTXVVbkI7RUFBc0MsWU50VW5CLEVBQU87O0FNdVUxQjtFQUF3QyxZTmtFbkIsRUFBTzs7QU1qRTVCO0VBQTBDLFlOcktuQixFQUFPOztBTXNLOUI7RUFBaUQsWU5yS25CLEVBQU87O0FNc0tyQztFQUF1QyxZTjVVbkIsRUFBTzs7QU02VTNCO0VBQXdDLFlOd0huQixFQUFPOztBTXZINUI7RUFBbUMsWU5uRm5CLEVBQU87O0FNb0Z2QjtFQUFtQyxZTnplbkIsRUFBTzs7QU0wZXZCO0VBQW9DLFlOOVduQixFQUFPOztBTStXeEI7RUFBa0MsWU54S25CLEVBQU87O0FNeUt0QjtFQUE4QyxZTnBRbkIsRUFBTzs7QU1xUWxDO0VBQ3VDLFlOU25CLEVBQU87O0FNUjNCO0VBQW1DLFlOamRuQixFQUFPOztBTWtkdkI7RUFBa0MsWU56b0JuQixFQUFPOztBTTBvQnRCO0VBQW1DLFlOL25CbkIsRUFBTzs7QU1nb0J2QjtFQUE0QyxZTjNoQm5CLEVBQU87O0FNNGhCaEM7RUFBNkMsWU45aEJuQixFQUFPOztBTStoQmpDO0VBQTZDLFlONWhCbkIsRUFBTzs7QU02aEJqQztFQUE2QyxZTmppQm5CLEVBQU87O0FNa2lCakM7RUFBcUMsWU5wUm5CLEVBQU87O0FNcVJ6QjtFQUFvQyxZTjVObkIsRUFBTzs7QU02TnhCO0VBQXNDLFlONU5uQixFQUFPOztBTTZOMUI7RUFBa0MsWU4vTm5CLEVBQU87O0FNZ090QjtFQUFnQyxZTmxPbkIsRUFBTzs7QU1tT3BCO0VBQXVDLFlOcGVuQixFQUFPOztBTXFlM0I7RUFBeUMsWU5wZW5CLEVBQU87O0FNcWU3QjtFQUFrQyxZTnRTbkIsRUFBTzs7QU11U3RCO0VBQWtDLFlOaUZuQixFQUFPOztBTWhGdEI7RUFBc0MsWU5sa0JuQixFQUFPOztBTW1rQjFCO0VBQXNDLFlOclhuQixFQUFPOztBTXNYMUI7RUFBeUMsWU5wSW5CLEVBQU87O0FNcUk3QjtFQUFpQyxZTnBjbkIsRUFBTzs7QU1xY3JCO0VBQTRDLFlOaGVuQixFQUFPOztBTWllaEM7RUFBcUMsWU5wZm5CLEVBQU87O0FNcWZ6QjtFQUFpQyxZTmxObkIsRUFBTzs7QU1tTnJCO0VBQXlDLFlOMVhuQixFQUFPOztBTTJYN0I7RUFBZ0MsWU5vRG5CLEVBQU87O0FNbkRwQjtFQUF5QyxZTjNKbkIsRUFBTzs7QU00SjdCO0VBQXFDLFlOek5uQixFQUFPOztBTTBOekI7RUFBbUMsWU5sSG5CLEVBQU87O0FNbUh2QjtFQUF5QyxZTjdMbkIsRUFBTzs7QU04TDdCO0VBQTJDLFlON0xuQixFQUFPOztBTThML0I7RUFBd0MsWU4zQ25CLEVBQU87O0FNNEM1QjtFQUEwQyxZTjNDbkIsRUFBTzs7QU00QzlCO0VBQXlDLFlOckduQixFQUFPOztBTXNHN0I7RUFBNEMsWU5yR25CLEVBQU87O0FNc0doQztFQUFvQyxZTjdVbkIsRUFBTzs7QU04VXhCO0VBQXNDLFlObmxCbkIsRUFBTzs7QU1vbEIxQjtFQUF3QyxZTm5sQm5CLEVBQU87O0FNb2xCNUI7RUFBb0MsWU4vTG5CLEVBQU87O0FNZ014QjtFQUFtQyxZTmxYbkIsRUFBTzs7QU1tWHZCO0VBQXVDLFlOa0ZuQixFQUFPOztBTWpGM0I7RUFBb0MsWU5tRm5CLEVBQU87O0FNbEZ4QjtFQUFtQyxZTjljbkIsRUFBTzs7QU0rY3ZCO0VBQTZDLFlOMkJuQixFQUFPOztBTTFCakM7RUFBMkMsWU5tRW5CLEVBQU87O0FNbEUvQjtFQUE4QyxZTnhLbkIsRUFBTzs7QU15S2xDO0VBQWtDLFlOOWxCbkIsRUFBTzs7QU0rbEJ0QjtFQUE4QyxZTnRvQm5CLEVBQU87O0FNdW9CbEM7RUFBaUQsWU5xRG5CLEVBQU87O0FNcERyQztFQUFvQyxZTnhsQm5CLEVBQU87O0FNeWxCeEI7RUFBd0QsWU41b0JuQixFQUFPOztBTTZvQjVDO0VBQ2dFLFlOOXFCbkIsRUFBTzs7QU0rcUJwRDtFQUVpQyxZTnZmbkIsRUFBTzs7QU13ZnJCO0VBQWtDLFlOaFluQixFQUFPOztBTWlZdEI7RUFBb0MsWU5oWW5CLEVBQU87O0FNaVl4QjtFQUMwQyxZTjFIbkIsRUFBTzs7QU0ySDlCO0VBQXVDLFlOelJuQixFQUFPOztBTTBSM0I7RUFBbUMsWU5pQ25CLEVBQU87O0FNaEN2QjtFQUEwQyxZTmlDbkIsRUFBTzs7QU1oQzlCO0VBQXFDLFlObEhuQixFQUFPOztBTW1IekI7RUFBMkMsWU5sSG5CLEVBQU87O0FNbUgvQjtFQUE0QyxZTmxIbkIsRUFBTzs7QU1tSGhDO0VBQXVDLFlOck5uQixFQUFPOztBTXNOM0I7RUFBd0MsWU5wYm5CLEVBQU87O0FNcWI1QjtFQUFrQyxZTm1FbkIsRUFBTzs7QU1sRXRCO0VBQXNDLFlOcERuQixFQUFPOztBTXFEMUI7RUFDaUQsWU56WW5CLEVBQU87O0FNMFlyQztFQUN5QyxZTjdhbkIsRUFBTzs7QU04YTdCO0VBQXdDLFlOdFhuQixFQUFPOztBTXVYNUI7RUFBMEMsWU5sZm5CLEVBQU87O0FNbWY5QjtFQUE0QyxZTmxmbkIsRUFBTzs7QU1tZmhDO0VBQW1DLFlOdFRuQixFQUFPOztBTXVUdkI7RUFBeUMsWU5wdEJuQixFQUFPOztBTXF0QjdCO0VBQTJDLFlOcHRCbkIsRUFBTzs7QU1xdEIvQjtFQUN5QyxZTnJ0Qm5CLEVBQU87O0FNc3RCN0I7RUFDMkMsWU50dEJuQixFQUFPOztBTXV0Qi9CO0VBQXdDLFlOSm5CLEVBQU87O0FNSzVCO0VBQTBDLFlOSm5CLEVBQU87O0FNSzlCO0VBQW1DLFlOSG5CLEVBQU87O0FNSXZCO0VBQXFDLFlOM1duQixFQUFPOztBTTRXekI7RUFDb0MsWU41V25CLEVBQU87O0FNNld4QjtFQUNzQyxZTjdXbkIsRUFBTzs7QU04VzFCO0VBQWtDLFlOdE5uQixFQUFPOztBTXVOdEI7RUFBMkMsWU4zYm5CLEVBQU87O0FNNGIvQjtFQUFxQyxZTnRGbkIsRUFBTzs7QU11RnpCO0VBRTZDLFlOeEVuQixFQUFPOztBTXlFakM7RUFDdUQsWU52RW5CLEVBQU87O0FNd0UzQztFQUM2QyxZTjNFbkIsRUFBTzs7QU00RWpDO0VBQ2dELFlONUVuQixFQUFPOztBTTZFcEM7RUFDOEMsWU5qRm5CLEVBQU87O0FNa0ZsQztFQUFtQyxZTjNLbkIsRUFBTzs7QU00S3ZCO0VBRWlDLFlOenJCbkIsRUFBTzs7QU0wckJyQjtFQUFvQyxZTmxQbkIsRUFBTzs7QU1tUHhCO0VBQTRDLFlOS25CLEVBQU87O0FNSmhDO0VBQTRDLFlOS25CLEVBQU87O0FNSmhDO0VBQTJDLFlOS25CLEVBQU87O0FNSi9CO0VBQ3lDLFlORG5CLEVBQU87O0FNRTdCO0VBQzJDLFlORm5CLEVBQU87O0FNRy9CO0VBQXFDLFlOeHNCbkIsRUFBTzs7QU15c0J6QjtFQUFpQyxZTnBibkIsRUFBTzs7QU1xYnJCO0VBQWlDLFlOMWhC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Ri9DO0VRM0ROLGVGK0UyRCxFQUFBOztBTjNDdkQ7RUt4RkosZ0JDbUkyRCxFQUFBOztBTnBDbkQ7RVF6RU4sa0JBQWtCO0VBQ2xCLGVBSG1ELEVBQUE7O0FSaUY3QztFUS9FTixrQkFBa0I7RUFDbEIsZ0JBSG1ELEVBQUE7O0FSMkYvQztFUTNETixxQkYrRTJELEVBQUE7O0FOM0N2RDtFS3hGSixVQ21JMkQsRUFBQTs7QU5wQ25EO0VRekVOLGtCQUFrQjtFQUNsQixTQUhtRCxFQUFBOztBUmlGN0M7RVEvRU4sa0JBQWtCO0VBQ2xCLFVBSG1ELEVBQUE7O0FSMkYvQztFUTNETixzQkYrRTJELEVBQUE7O0FOM0N2RDtFS3hGSixnQkNtSTJELEVBQUE7O0FOcENuRDtFUXpFTixrQkFBa0I7RUFDbEIsZUFIbUQsRUFBQTs7QVJpRjdDO0VRL0VOLGtCQUFrQjtFQUNsQixnQkFIbUQsRUFBQTs7QVIyRi9DO0VRM0ROLGdCRitFMkQsRUFBQTs7QU4zQ3ZEO0VLeEZKLGdCQ21JMkQsRUFBQTs7QU5wQ25EO0VRekVOLGtCQUFrQjtFQUNsQixlQUhtRCxFQUFBOztBUmlGN0M7RVEvRU4sa0JBQWtCO0VBQ2xCLGdCQUhtRCxFQUFBOztBUjJGL0M7RVEzRE4sc0JGK0UyRCxFQUFBOztBTjNDdkQ7RUt4RkosVUNtSTJELEVBQUE7O0FOcENuRDtFUXpFTixrQkFBa0I7RUFDbEIsU0FIbUQsRUFBQTs7QVJpRjdDO0VRL0VOLGtCQUFrQjtFQUNsQixVQUhtRCxFQUFBOztBUjJGL0M7RVEzRE4sc0JGK0UyRCxFQUFBOztBTjNDdkQ7RUt4RkosZ0JDbUkyRCxFQUFBOztBTnBDbkQ7RVF6RU4sa0JBQWtCO0VBQ2xCLGVBSG1ELEVBQUE7O0FSaUY3QztFUS9FTixrQkFBa0I7RUFDbEIsZ0JBSG1ELEVBQUE7O0FSMkYvQztFUTNETixnQkYrRTJELEVBQUE7O0FOM0N2RDtFS3hGSixnQkNtSTJELEVBQUE7O0FOcENuRDtFUXpFTixrQkFBa0I7RUFDbEIsZUFIbUQsRUFBQTs7QVJpRjdDO0VRL0VOLGtCQUFrQjtFQUNsQixnQkFIbUQsRUFBQTs7QVIyRi9DO0VRM0ROLHNCRitFMkQsRUFBQTs7QU4zQ3ZEO0VLeEZKLFVDbUkyRCxFQUFBOztBTnBDbkQ7RVF6RU4sa0JBQWtCO0VBQ2xCLFNBSG1ELEVBQUE7O0FSaUY3QztFUS9FTixrQkFBa0I7RUFDbEIsVUFIbUQsRUFBQTs7QVIyRi9DO0VRM0ROLHNCRitFMkQsRUFBQTs7QU4zQ3ZEO0VLeEZKLGdCQ21JMkQsRUFBQTs7QU5wQ25EO0VRekVOLGtCQUFrQjtFQUNsQixlQUhtRCxFQUFBOztBUmlGN0M7RVEvRU4sa0JBQWtCO0VBQ2xCLGdCQUhtRCxFQUFBOztBUjJGL0M7RVEzRE4sZ0JGK0UyRCxFQUFBOztBTjNDdkQ7RUt4RkosZ0JDbUkyRCxFQUFBOztBTnBDbkQ7RVF6RU4sa0JBQWtCO0VBQ2xCLGVBSG1ELEVBQUE7O0FSaUY3QztFUS9FTixrQkFBa0I7RUFDbEIsZ0JBSG1ELEVBQUE7O0FSMkYvQztFUTNETixzQkYrRTJELEVBQUE7O0FOM0N2RDtFS3hGSixXQ21JMkQsRUFBQTs7QU5wQnJEO0VRM0ROLHNCRitFMkQsRUFBQTs7QU5adkQ7RVMvR0YsV1hvR3VEO0VXbkd2RCxXQUF1QixFQUFBOztBVDhHckI7RVN2RkEsV0FBVyxFQUFBOztBVHVGWDtFU25GQSxXQUFXLEVBQUE7O0FUbUZYO0VTL0VBLFdYb0VxRCxFQUFBOztBRVdyRDtFUy9HRixXWG9HdUQ7RVduR3ZELFVBQXVCLEVBQUE7O0FUOEdyQjtFU3ZGQSxXQUFXLEVBQUE7O0FUdUZYO0VTbkZBLFdBQVcsRUFBQTs7QVRtRlg7RVMvRUEsV1hvRXFELEVBQUE7O0FFV3JEO0VTL0dGLFdYb0d1RDtFV25HdkQsZ0JBQXVCLEVBQUE7O0FUOEdyQjtFU3ZGQSxXQUFXLEVBQUE7O0FUdUZYO0VTbkZBLFdBQVcsRUFBQTs7QVRtRlg7RVMvRUEsV1hvRXFELEVBQUE7O0FFV3JEO0VTL0dGLFdYb0d1RDtFV25HdkQsVUFBdUIsRUFBQTs7QVQ4R3JCO0VTdkZBLFdBQVcsRUFBQTs7QVR1Rlg7RVNuRkEsV0FBVyxFQUFBOztBVG1GWDtFUy9FQSxXWG9FcUQsRUFBQTs7QUVXckQ7RVMvR0YsV1hvR3VEO0VXbkd2RCxVQUF1QixFQUFBOztBVDhHckI7RVN2RkEsV0FBVyxFQUFBOztBVHVGWDtFU25GQSxXQUFXLEVBQUE7O0FUbUZYO0VTL0VBLFdYb0VxRCxFQUFBOztBRVdyRDtFUy9HRixXWG9HdUQ7RVduR3ZELGdCQUF1QixFQUFBOztBVDhHckI7RVN2RkEsV0FBVyxFQUFBOztBVHVGWDtFU25GQSxXQUFXLEVBQUE7O0FUbUZYO0VTL0VBLFdYb0VxRCxFQUFBOztBRVdyRDtFUy9HRixXWG9HdUQ7RVduR3ZELGdCQUF1QixFQUFBOztBVDhHckI7RVN2RkEsV0FBVyxFQUFBOztBVHVGWDtFU25GQSxXQUFXLEVBQUE7O0FUbUZYO0VTL0VBLFdYb0VxRCxFQUFBOztBRVdyRDtFUy9HRixXWG9HdUQ7RVduR3ZELFlBQXVCLEVBQUE7O0FUOEdyQjtFU3ZGQSxXQUFXLEVBQUE7O0FUdUZYO0VTbkZBLFdBQVcsRUFBQTs7QVRtRlg7RVMvRUEsV1hvRXFELEVBQUE7O0FFaUJ2RDtFR3JIQSxnQkR1RVM7RUN0RVQsZURzRVMsRUFBQTs7QUY4Q1Q7RUFJSSxlQUFlO0VBQ2YsY0FBYyxFQUFBOztBQUlsQjtFQUNFLGVBQWU7RUFDZixjQUFjLEVBQUE7O0FBR2hCO0VHbklBLHVCQUZxQztFQUdyQyxzQkFIcUMsRUFBQTs7QUgySW5DO0VRakhGLGtCQUFrQjtFQUNsQixpQkFBaUIsRUFBQTs7QUFMakI7RUFDRSxXQUFXO0VBQ1gsV0FBVyxFQUFBOztBUitIWDtFUWpISixnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLGNBQWMsRUFBQTs7QUF6Q1o7RUFDRSxXVnNHcUQ7RVVyR3JELFdBQVcsRUFBQTs7QUFLWDtFQUNFLFlWZ0dvRCxFQUFBOztBTXFEcEQ7RUoxRUY7SUt4RkosZUNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixjQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsZUFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sZUYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLGdCQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLGVBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixnQkFIbUQsRUFBQTtFUjJGL0M7SVEzRE4scUJGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixVQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLFNBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixVQUhtRCxFQUFBO0VSMkYvQztJUTNETixzQkYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLGdCQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLGVBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixnQkFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sZ0JGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixnQkNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixlQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsZ0JBSG1ELEVBQUE7RVIyRi9DO0lRM0ROLHNCRitFMkQsRUFBQTtFTjNDdkQ7SUt4RkosVUNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixTQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsVUFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sc0JGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixnQkNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixlQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsZ0JBSG1ELEVBQUE7RVIyRi9DO0lRM0ROLGdCRitFMkQsRUFBQTtFTjNDdkQ7SUt4RkosZ0JDbUkyRCxFQUFBO0VOcENuRDtJUXpFTixrQkFBa0I7SUFDbEIsZUFIbUQsRUFBQTtFUmlGN0M7SVEvRU4sa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VSMkYvQztJUTNETixzQkYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLFVDbUkyRCxFQUFBO0VOcENuRDtJUXpFTixrQkFBa0I7SUFDbEIsU0FIbUQsRUFBQTtFUmlGN0M7SVEvRU4sa0JBQWtCO0lBQ2xCLFVBSG1ELEVBQUE7RVIyRi9DO0lRM0ROLHNCRitFMkQsRUFBQTtFTjNDdkQ7SUt4RkosZ0JDbUkyRCxFQUFBO0VOcENuRDtJUXpFTixrQkFBa0I7SUFDbEIsZUFIbUQsRUFBQTtFUmlGN0M7SVEvRU4sa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VSMkYvQztJUTNETixnQkYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLGdCQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLGVBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixnQkFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sc0JGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixXQ21JMkQsRUFBQTtFTnBCckQ7SVEzRE4sc0JGK0UyRCxFQUFBO0VOWnZEO0lTL0dGLFdYb0d1RDtJV25HdkQsV0FBdUIsRUFBQTtFVDhHckI7SVN2RkEsV0FBVyxFQUFBO0VUdUZYO0lTbkZBLFdBQVcsRUFBQTtFVG1GWDtJUy9FQSxXWG9FcUQsRUFBQTtFRVdyRDtJUy9HRixXWG9HdUQ7SVduR3ZELFVBQXVCLEVBQUE7RVQ4R3JCO0lTdkZBLFdBQVcsRUFBQTtFVHVGWDtJU25GQSxXQUFXLEVBQUE7RVRtRlg7SVMvRUEsV1hvRXFELEVBQUE7RUVXckQ7SVMvR0YsV1hvR3VEO0lXbkd2RCxnQkFBdUIsRUFBQTtFVDhHckI7SVN2RkEsV0FBVyxFQUFBO0VUdUZYO0lTbkZBLFdBQVcsRUFBQTtFVG1GWDtJUy9FQSxXWG9FcUQsRUFBQTtFRVdyRDtJUy9HRixXWG9HdUQ7SVduR3ZELFVBQXVCLEVBQUE7RVQ4R3JCO0lTdkZBLFdBQVcsRUFBQTtFVHVGWDtJU25GQSxXQUFXLEVBQUE7RVRtRlg7SVMvRUEsV1hvRXFELEVBQUE7RUVXckQ7SVMvR0YsV1hvR3VEO0lXbkd2RCxVQUF1QixFQUFBO0VUOEdyQjtJU3ZGQSxXQUFXLEVBQUE7RVR1Rlg7SVNuRkEsV0FBVyxFQUFBO0VUbUZYO0lTL0VBLFdYb0VxRCxFQUFBO0VFV3JEO0lTL0dGLFdYb0d1RDtJV25HdkQsZ0JBQXVCLEVBQUE7RVQ4R3JCO0lTdkZBLFdBQVcsRUFBQTtFVHVGWDtJU25GQSxXQUFXLEVBQUE7RVRtRlg7SVMvRUEsV1hvRXFELEVBQUE7RUVXckQ7SVMvR0YsV1hvR3VEO0lXbkd2RCxnQkFBdUIsRUFBQTtFVDhHckI7SVN2RkEsV0FBVyxFQUFBO0VUdUZYO0lTbkZBLFdBQVcsRUFBQTtFVG1GWDtJUy9FQSxXWG9FcUQsRUFBQTtFRVdyRDtJUy9HRixXWG9HdUQ7SVduR3ZELFlBQXVCLEVBQUE7RVQ4R3JCO0lTdkZBLFdBQVcsRUFBQTtFVHVGWDtJU25GQSxXQUFXLEVBQUE7RVRtRlg7SVMvRUEsV1hvRXFELEVBQUE7RUVpQnZEO0lHckhBLGdCRHVFUztJQ3RFVCxlRHNFUyxFQUFBO0VGOENUO0lBSUksZUFBZTtJQUNmLGNBQWMsRUFBQTtFQUlsQjtJQUNFLGVBQWU7SUFDZixjQUFjLEVBQUE7RUFHaEI7SUduSUEsd0JBRnFDO0lBR3JDLHVCQUhxQyxFQUFBO0VIMkluQztJUWpIRixrQkFBa0I7SUFDbEIsaUJBQWlCLEVBQUE7RUFMakI7SUFDRSxXQUFXO0lBQ1gsV0FBVyxFQUFBO0VSK0hYO0lRakhKLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2YsY0FBYyxFQUFBO0VBekNaO0lBQ0UsV1ZzR3FEO0lVckdyRCxXQUFXLEVBQUE7RUFLWDtJQUNFLFlWZ0dvRCxFQUFBLEVVL0ZyRDs7QUpvSkM7RUoxRUY7SUt4RkosZUNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixjQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsZUFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sZUYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLGdCQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLGVBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixnQkFIbUQsRUFBQTtFUjJGL0M7SVEzRE4scUJGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixVQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLFNBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixVQUhtRCxFQUFBO0VSMkYvQztJUTNETixzQkYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLGdCQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLGVBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixnQkFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sZ0JGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixnQkNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixlQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsZ0JBSG1ELEVBQUE7RVIyRi9DO0lRM0ROLHNCRitFMkQsRUFBQTtFTjNDdkQ7SUt4RkosVUNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixTQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsVUFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sc0JGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixnQkNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixlQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsZ0JBSG1ELEVBQUE7RVIyRi9DO0lRM0ROLGdCRitFMkQsRUFBQTtFTjNDdkQ7SUt4RkosZ0JDbUkyRCxFQUFBO0VOcENuRDtJUXpFTixrQkFBa0I7SUFDbEIsZUFIbUQsRUFBQTtFUmlGN0M7SVEvRU4sa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VSMkYvQztJUTNETixzQkYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLFVDbUkyRCxFQUFBO0VOcENuRDtJUXpFTixrQkFBa0I7SUFDbEIsU0FIbUQsRUFBQTtFUmlGN0M7SVEvRU4sa0JBQWtCO0lBQ2xCLFVBSG1ELEVBQUE7RVIyRi9DO0lRM0ROLHNCRitFMkQsRUFBQTtFTjNDdkQ7SUt4RkosZ0JDbUkyRCxFQUFBO0VOcENuRDtJUXpFTixrQkFBa0I7SUFDbEIsZUFIbUQsRUFBQTtFUmlGN0M7SVEvRU4sa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VSMkYvQztJUTNETixnQkYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLGdCQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLGVBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixnQkFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sc0JGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixXQ21JMkQsRUFBQTtFTnBCckQ7SVEzRE4sc0JGK0UyRCxFQUFBO0VOWnZEO0lTL0dGLFdYb0d1RDtJV25HdkQsV0FBdUIsRUFBQTtFVDhHckI7SVN2RkEsV0FBVyxFQUFBO0VUdUZYO0lTbkZBLFdBQVcsRUFBQTtFVG1GWDtJUy9FQSxXWG9FcUQsRUFBQTtFRVdyRDtJUy9HRixXWG9HdUQ7SVduR3ZELFVBQXVCLEVBQUE7RVQ4R3JCO0lTdkZBLFdBQVcsRUFBQTtFVHVGWDtJU25GQSxXQUFXLEVBQUE7RVRtRlg7SVMvRUEsV1hvRXFELEVBQUE7RUVXckQ7SVMvR0YsV1hvR3VEO0lXbkd2RCxnQkFBdUIsRUFBQTtFVDhHckI7SVN2RkEsV0FBVyxFQUFBO0VUdUZYO0lTbkZBLFdBQVcsRUFBQTtFVG1GWDtJUy9FQSxXWG9FcUQsRUFBQTtFRVdyRDtJUy9HRixXWG9HdUQ7SVduR3ZELFVBQXVCLEVBQUE7RVQ4R3JCO0lTdkZBLFdBQVcsRUFBQTtFVHVGWDtJU25GQSxXQUFXLEVBQUE7RVRtRlg7SVMvRUEsV1hvRXFELEVBQUE7RUVXckQ7SVMvR0YsV1hvR3VEO0lXbkd2RCxVQUF1QixFQUFBO0VUOEdyQjtJU3ZGQSxXQUFXLEVBQUE7RVR1Rlg7SVNuRkEsV0FBVyxFQUFBO0VUbUZYO0lTL0VBLFdYb0VxRCxFQUFBO0VFV3JEO0lTL0dGLFdYb0d1RDtJV25HdkQsZ0JBQXVCLEVB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dER2RDtFR3lFRixnQlBuQnlELEVBQUE7O0FJdER2RDtFR3lFRixXUG5CeUQsRUFBQTs7QUYrQnJEO0VNekdGO0lHa0RKLG1CQUFNO1FBQU4saUJBQU07WUFBTixhQUFNO0lBMkNKLFdBbEZZLEVBQUE7RUhOWjtJRzZDRixtQkFBTTtRQUFOLGtCQUFNO1lBQU4sY0FBTSxFQUFBO0VIdkNGO0lHa0ZGLFdBbEZZLEVBQUE7RUhTVjtJR3lFRixlUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsZ0JQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixVUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsZ0JQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixnQlBuQnlELEVBQUE7RUl0RHZEO0lHeUVGLFVQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixnQlBuQnlELEVBQUE7RUl0RHZEO0lHeUVGLGdCUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsVVBuQnlELEVBQUE7RUl0RHZEO0lHeUVGLGdCUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsZ0JQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixXUG5CeUQsRUFBQSxFSW5EdEQ7O0FOa0ZDO0VNekdGO0lHa0RKLG1CQUFNO1FBQU4saUJBQU07WUFBTixhQUFNO0lBMkNKLFdBbEZZLEVBQUE7RUhOWjtJRzZDRixtQkFBTTtRQUFOLGtCQUFNO1lBQU4sY0FBTSxFQUFBO0VIdkNGO0lHa0ZGLFdBbEZZLEVBQUE7RUhTVjtJR3lFRixlUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsZ0JQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixVUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsZ0JQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixnQlBuQnlELEVBQUE7RUl0RHZEO0lHeUVGLFVQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixnQlBuQnlELEVBQUE7RUl0RHZEO0lHeUVGLGdCUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsVVBuQnlELEVBQUE7RUl0RHZEO0lHeUVGLGdCUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsZ0JQbkJ5RCxFQUFB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QUFJRDtFQ3BKSSxzQkFBNkQ7RUFBN0QscUJBQTZELEVBQUE7O0FQZ0o3RDtFTUlKO0lDcEpJLHVCQUE2RDtJQUE3RCxzQkFBNkQsRUFBQSxFRHNKaEU7O0FBWEg7RUMzSU0sc0JBQTZEO0VBQTdELHFCQUE2RCxFQUFBOztBUGdKN0Q7RU1MTjtJQzNJTSx1QkFBNkQ7SUFBN0Qsc0JBQTZELEVBQUEsRUQySmhFOztBSTNKSDtFRG9JRSxXUG5CeUQsRUFBQTs7QVFqSDNEO0VEb0lFLFVQbkJ5RCxFQUFBOztBUWpIM0Q7RURvSUUsZ0JQbkJ5RCxFQUFBOztBUWpIM0Q7RURvSUUsVVBuQnlELEVBQUE7O0FRakgzRDtFRG9JRSxVUG5CeUQsRUFBQTs7QVFqSDNEO0VEb0lFLGdCUG5CeUQsRUFBQTs7QVFqSDNEO0VEb0lFLGdCUG5CeUQsRUFBQTs7QVFqSDNEO0VEb0lFLFlQbkJ5RCxFQUFBOztBRitCckQ7RVVoSk47SURvSUUsV1BuQnlELEVBQUE7RVFqSDNEO0lEb0lFLFVQbkJ5RCxFQUFBO0VRakgzRDtJRG9JRSxnQlBuQnlELEVBQUE7RVFqSDNEO0lEb0lFLFVQbkJ5RCxFQUFBO0VRakgzRDtJRG9JRSxVUG5CeUQsRUFBQTtFUWpIM0Q7SURvSUUsZ0JQbkJ5RCxFQUFBO0VRakgzRDtJRG9JRSxnQlBuQnlELEVBQUE7RVFqSDNEO0lEb0lFLFlQbkJ5RCxFQUFBLEVRL0cxRDs7QVY4SUs7RVVoSk47SURvSUUsV1BuQnlELEVBQUE7RVFqSDNEO0lEb0lFLFVQbkJ5RCxFQUFBO0VRakgzRDtJRG9JRSxnQlBuQnlELEVBQUE7RVFqSDNEO0lEb0lFLFVQbkJ5RCxFQUFBO0VRakgzRDtJRG9JRSxVUG5CeUQsRUFBQTtFUWpIM0Q7SURvSUUsZ0JQbkJ5RCxFQUFBO0VRakgzRDtJRG9JRSxnQlBuQnlELEVBQUE7RVFqSDNEO0lEb0lFLFlQbkJ5RCxFQUFBLEVRL0cxRDs7QUFGRDtFRG9JRSwwQkF0RDhGLEVBQUE7O0FDOUVoRztFRG9JRSx5QkF0RDhGLEVBQUE7O0FDOUVoRztFRG9JRSwrQkF0RDhGLEVBQUE7O0FDOUVoRztFRG9JRSx5QkF0RDhGLEVBQUE7O0FDOUVoRztFRG9JRSx5QkF0RDhGLEVBQUE7O0FDOUVoRztFRG9JRSwrQkF0RDhGLEVBQUE7O0FDOUVoRztFRG9JRSwrQkF0RDhGLEVBQUE7O0FDOUVoRztFRG9JRSwyQkF0RDhGLEVBQUE7O0FUa0UxRjtFVWhKTjtJRG9JRSwyQkF0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLDBCQXREOEYsRUFBQTtFQzlFaEc7SURvSUUsZ0NBdEQ4RixFQUFBO0VDOUVoRztJRG9JRSwwQkF0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLDBCQXREOEYsRUFBQTtFQzlFaEc7SURvSUUsZ0NBdEQ4RixFQUFBO0VDOUVoRztJRG9JRSxnQ0F0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLDRCQXREOEYsRUFBQTtFQzlFaEc7SURvSUUsMkJBdEQ4RixFQUFBO0VDOUVoRztJRG9JRSwwQkF0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLGdDQXREOEYsRUFBQTtFQzlFaEc7SURvSUUsMEJBdEQ4RixFQUFBO0VDOUVoRztJRG9JRSwwQkF0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLGdDQXREOEYsRUFBQTtFQzlFaEc7SURvSUUsZ0NBdEQ4RixFQUFBO0VDOUVoRztJRG9JRSw0QkF0RDhGLEVBQUEsRUM1RS9GOztBVjhJSztFVWhKTjtJRG9JRSwyQkF0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLDBCQXREOEYsRUFBQTtFQzlFaEc7SURvSUUsZ0NBdEQ4RixFQUFBO0VDOUVoRztJRG9JRSwwQkF0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLDBCQXREOEYsRUFBQTtFQzlFaEc7SURvSUUsZ0NBdEQ4RixFQUFBO0VDOUVoRztJRG9JRSxnQ0F0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLDRCQXREOEYsRUFBQSxFQzVFL0Y7O0FKcU1HO0VLOU1FLGVBQTBCO0VBQTFCLGNBQTBCLEVBQUE7O0FBRzVCO0VBRUksZUFBMEI7RUFBMUIsY0FBMEIsRUFBQTs7QUFzQnhCO0VGZ0hSLGVQbkJ5RCxFQUFBOztBUzdGakQ7RUZnSFIsZ0JQbkJ5RCxFQUFBOztBUzdGakQ7RUZnSFIsVVBuQnlELEVBQUE7O0FTN0ZqRDtFRmdIUixnQlBuQnlELEVBQUE7O0FTN0ZqRDtFRmdIUixnQlBuQnlELEVBQUE7O0FTN0ZqRDtFRmdIUixVUG5CeUQsRUFBQTs7QVM3RmpEO0VGZ0hSLGdCUG5CeUQsRUFBQTs7QVM3RmpEO0VGZ0hSLGdCUG5CeUQsRUFBQTs7QVM3RmpEO0VGZ0hSLFVQbkJ5RCxFQUFBOztBUzdGakQ7RUZnSFIsZ0JQbkJ5RCxFQUFBOztBUzdGakQ7RUZnSFIsZ0JQbkJ5RCxFQUFBOztBUzdGakQ7RUZnSFIsV1BuQnlELEVBQUE7O0FGK0JyRDtFVzVISTtJRmdIUixlUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixVUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLFVQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsVVBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixXUG5CeUQsRUFBQSxFUzNGaEQ7O0FYMEhMO0VXNUhJO0lGZ0hSLGVQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLFVQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsVVBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixVUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLFdQbkJ5RCxFQUFBLEVTM0ZoRDs7QUx1TFA7RUs3S0UsZUFBMEI7RUFBMUIsY0FBMEIsRUFBQTs7QUFHNUI7RUFFSSxnQkFBNEI7RUFBNUIsZUFBNEIsRUFBQTs7QVgyRzlCO0VNdURGO0lLOU1FLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7RUFHNUI7SUFFSSxlQUEwQjtJQUExQixjQUEwQixFQUFBLEVBRTdCOztBWGdKQztFV3JJSTtJRnlIUixlUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixVUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixnQlBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLFVQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixnQlBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLGdCUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsVVBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLGdCUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixXUG5CeUQsRUFBQSxFU3BHaEQ7O0FYbUlMO0VXNUhJO0lGZ0hSLGVQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLFVQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsVVBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixVUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLFdQbkJ5RCxFQUFBLEVTM0ZoRDs7QVgwSEw7RVc1SEk7SUZnSFIsZVBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsVVBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixVUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLFVQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsV1BuQnlELEVBQUEsRVMzRmhEOztBWDBITDtFTTZERjtJSzdLRSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0VBRzVCO0lBRUksZ0JBQTRCO0lBQTVCLGVBQTRCLEVBQUEsRUFFL0I7O0FYeUdDO0VNdURGO0lLOU1FLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7RUFHNUI7SUFFSSxlQUEwQjtJQUExQixjQUEwQixFQUFBLEVBRTdCOztBWGdKQztFV3JJSTtJRnlIUixlUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixVUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixnQlBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLFVQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixnQlBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLGdCUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsVVBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLGdCUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixXUG5CeUQsRUFBQSxFU3BHaEQ7O0FYbUlMO0VXcklJO0lGeUhSLGVQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixnQlBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLFVQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixnQlBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLGdCUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsVVBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLGdCUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixVUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixnQlBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLFdQbkJ5RCxFQUFBLEVTcEdoRDs7QVhtSUw7RVc1SEk7SUZnSFIsZVBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsVVBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixVUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLFVQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsV1BuQnlELEVBQUEsRVMzRmhEOztBWDBITDtFTTZERjtJSzdLRSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0VBRzVCO0lBRUksZ0JBQTRCO0lBQTVCLGVBQTRCLEVBQUEsRUFFL0I7O0Fmc0RDO0VnQnpFSixlQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsK0JBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHFCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYscUNBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHNCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsc0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLGdCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsZ0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHNCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsc0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHNCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsc0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLGdCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsZ0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHNCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsc0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHNCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsc0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLGdCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsZ0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHNCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsc0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHNCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsc0NBQTZCLEVBQUE7O0FaNEh6QjtFSm5EQTtJZ0J6RUosZUFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsZ0NBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUoscUJBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHNDQUE2QixFQUFBO0VoQnlFekI7SWdCekVKLHNCQUE2QixFQUFBO0VOMk0zQjtJTTNNRix1Q0FBNkIsRUFBQTtFaEJ5RXpCO0lnQnpFSixnQkFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsaUNBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUosc0JBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHVDQUE2QixFQUFBO0VoQnlFekI7SWdCekVKLHNCQUE2QixFQUFBO0VOMk0zQjtJTTNNRix1Q0FBNkIsRUFBQTtFaEJ5RXpCO0lnQnpFSixnQkFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsaUNBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUosc0JBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHVDQUE2QixFQUFBO0VoQnlFekI7SWdCekVKLHNCQUE2QixFQUFBO0VOMk0zQjtJTTNNRix1Q0FBNkIsRUFBQTtFaEJ5RXpCO0lnQnpFSixnQkFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsaUNBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUosc0JBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHVDQUE2QixFQUFBO0VoQnlFekI7SWdCekVKLHNCQUE2QixFQUFBO0VOMk0zQjtJTTNNRix1Q0FBNkIsRUFBQSxFTjZNMUI7O0FOakZDO0VKbkRBO0lnQnpFSixlQUE2QixFQUFBO0VOMk0zQjtJTTNNRixnQ0FBNkIsRUFBQTtFaEJ5RXpCO0lnQnpFSixxQkFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsc0NBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUosc0JBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHVDQUE2QixFQUFBO0VoQnlFekI7SWdCekVKLGdCQUE2QixFQUFBO0VOMk0zQjtJTTNNRixpQ0FBNkIsRUFBQTtFaEJ5RXpCO0lnQnpFSixzQkFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsdUNBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUosc0JBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHVDQUE2QixFQUFBO0VoQnlFekI7SWdCekVKLGdCQUE2QixFQUFBO0VOMk0zQjtJTTNNRixpQ0FBNkIsRUFBQTtFaEJ5RXpCO0lnQnpFSixzQkFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsdUNBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUosc0JBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHVDQUE2QixFQUFBO0VoQnlFekI7SWdCekVKLGdCQUE2QixFQUFBO0VOMk0zQjtJTTNNRixpQ0FBNkIsRUFBQTtFaEJ5RXpCO0lnQnpFSixzQkFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsdUNBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUosc0JBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHVDQUE2QixFQUFBLEVONk0xQjs7QUF6SlM7RUV0RWQsb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYiw0QkFINkI7RUFHN0IsNkJBSDZCO01BRzdCLDRCQUg2QjtVQUc3Qix3QkFINkIsRUFBQTs7QUZpUDdCO0VHMUlBLFlBQW1CO0VBQ25CLGdCQUEyQixFQUFBOztBSHlJM0I7RUc3R0UsWUFsRlksRUFBQTs7QUgrTGQ7RUc3R0UsWUFsRlksRUFBQTs7QUgrTGQ7RUEyQk0sNkJBQWdCO01BQWhCLGdCQUFnQixFQUFBOztBTjVIaEI7RU1pR047SUEyQk0sNkJBQWdCO1FBQWhCLGdCQUFnQixFQUFBLEVBQ2pCOztBTjdIQztFTWlHTjtJQTJCTSw2QkFBZ0I7UUFBaEIsZ0JBQWdCLEVBQUEsRUFDakI7O0FBNUJMO0VHeEpBLG1CQUFNO01BQU4sa0JBQU07VUFBTixjQUFNLEVBQUE7O0FId0pOO0VHN0dFLGdCUG5CeUQsRUFBQTs7QUlnSTNEO0VHN0dFLGlCUG5CeUQsRUFBQTs7QUlnSTNEO0VHN0dFLFdQbkJ5RCxFQUFBOztBSWdJM0Q7RUc3R0UsaUJQbkJ5RCxFQUFBOztBSWdJM0Q7RUc3R0UsaUJQbkJ5RCxFQUFBOztBSWdJM0Q7RUc3R0UsV1BuQnlELEVBQUE7O0FJZ0kzRDtFRzdHRSxpQlBuQnlELEVBQUE7O0FJZ0kzRDtFRzdHRSxpQlBuQnlELEVBQUE7O0FJZ0kzRDtFRzdHRSxXUG5CeUQsRUFBQTs7QUlnSTNEO0VHN0dFLGlCUG5CeUQsRUFBQTs7QUlnSTNEO0VHN0dFLGlCUG5CeUQsRUFBQTs7QUlnSTNEO0VHN0dFLFlQbkJ5RCxFQUFBOztBRitCckQ7RU1pR047SUd4SkEsbUJBQU07UUFBTixpQkFBTTtZQUFOLGFBQU07SUEyQ0osWUFsRlksRUFBQTtFSCtMZDtJR3hKQSxtQkFBTTtRQUFOLGtCQUFNO1lBQU4sY0FBTSxFQUFBO0VId0pOO0lHN0dFLFlBbEZZLEVBQUE7RUgrTGQ7SUc3R0UsZ0JQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxpQlBuQnlELEVBQUE7RUlnSTNEO0lHN0dFLFdQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxpQlBuQnlELEVBQUE7RUlnSTNEO0lHN0dFLGlCUG5CeUQsRUFBQTtFSWdJM0Q7SUc3R0UsV1BuQnlELEVBQUE7RUlnSTNEO0lHN0dFLGlCUG5CeUQsRUFBQTtFSWdJM0Q7SUc3R0UsaUJQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxXUG5CeUQsRUFBQTtFSWdJM0Q7SUc3R0UsaUJQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxpQlBuQnlELEVBQUE7RUlnSTNEO0lHN0dFLFlQbkJ5RCxFQUFBLEVJeUxwRDs7QU4xSkQ7RU1pR047SUd4SkEsbUJBQU07UUFBTixpQkFBTTtZQUFOLGFBQU07SUEyQ0osWUFsRlksRUFBQTtFSCtMZDtJR3hKQSxtQkFBTTtRQUFOLGtCQUFNO1lBQU4sY0FBTSxFQUFBO0VId0pOO0lHN0dFLFlBbEZZLEVBQUE7RUgrTGQ7SUc3R0UsZ0JQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxpQlBuQnlELEVBQUE7RUlnSTNEO0lHN0dFLFdQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxpQlBuQnlELEVBQUE7RUlnSTNEO0lHN0dFLGlCUG5CeUQsRUFBQTtFSWdJM0Q7SUc3R0UsV1BuQnlELEVBQUE7RUlnSTNEO0lHN0dFLGlCUG5CeUQsRUFBQTtFSWdJM0Q7SUc3R0UsaUJQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxXUG5CeUQsRUFBQTtFSWdJM0Q7SUc3R0UsaUJQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxpQlBuQnlELEVBQUE7RUlnSTNEO0lHN0dFLFlQbkJ5RCxFQUFBLEVJeUxwRDs7QUFPTDtFQ2pUSSxvQkFBNkQ7RUFBN0QsdUJBQTZELEVBQUE7O0FQZ0o3RDtFTWlLSjtJQ2pUSSxxQkFBNkQ7SUFBN0Qsd0JBQTZELEVBQUEsRURxVDlEOztBQUpIO0VDalRJLG9CQUE2RDtFQUE3RCx1QkFBNkQsRUFBQTs7QVBnSjdEO0VNaUtKO0lDalRJLHFCQUE2RDtJQUE3RCx3QkFBNkQsRUFBQSxFRDBUOUQ7O0FBbk5MO0VDdkdNLG9CQUE2RDtFQUE3RCx1QkFBNkQsRUFBQTs7QVBnSjdEO0VNekNOO0lDdkdNLHFCQUE2RDtJQUE3RCx3QkFBNkQsRUFBQSxFRHNJbEU7O0FBL0JEO0VHNkJFLDJCQXREOEY7RUZyRTVGLG1CQUE2RDtFQUE3RCxzQkFBNkQsRUFBQTs7QVB1STNEO0VNekNOO0lHNkJFLDRCQXREOEY7SUZyRTVGLG9CQUE2RDtJQUE3RCx1QkFBNkQsRUFBQSxFRDJHMUQ7O0FBckNQO0VHcURFLFlBbEZZLEVBQUE7O0FIaUNkO0VHaURFLFlBbEZZLEVBQUE7O0FIeUNaO0VHeUNBLCtCQXREOEYsRUFBQTs7QUhhOUY7RUd5Q0EsZ0NBdEQ4RixFQUFBOztBSGE5RjtFR3lDQSwwQkF0RDhGLEVBQUE7O0FIYTlGO0VHeUNBLGdDQXREOEYsRUFBQTs7QUhhOUY7RUd5Q0EsZ0NBdEQ4RixFQUFBOztBSGE5RjtFR3lDQSwwQkF0RDhGLEVBQUE7O0FIYTlGO0VHeUNBLGdDQXREOEYsRUFBQTs7QUhhOUY7RUd5Q0EsZ0NBdEQ4RixFQUFBOztBSGE5RjtFR3lDQSwwQkF0RDhGLEVBQUE7O0FIYTlGO0VHeUNBLGdDQXREOEYsRUFBQTs7QUhhOUY7RUd5Q0EsZ0NBdEQ4RixFQUFBOztBSGE5RjtFR3lDQSwyQkF0RDhGLEVBQUE7O0FUa0UxRjtFTWpFTjtJR3FERSxZQWxGWSxFQUFBO0VIaUNkO0lHaURFLFlBbEZZLEVBQUE7RUh5Q1o7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSw0QkF0RDhGLEVBQUE7RUhDaEc7SUdxREUsWUFsRlksRUFBQTtFSGlDZDtJR2lERSxZQWxGWSxFQUFBO0VIeUNaO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFB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QUFBOztBSGE5RjtFR3lDQSxnQ0F0RDhGLEVBQUE7O0FIYTlGO0VHeUNBLDBCQXREOEYsRUFBQTs7QUhhOUY7RUd5Q0EsZ0NBdEQ4RixFQUFBOztBSGE5RjtFR3lDQSxnQ0F0RDhGLEVBQUE7O0FIYTlGO0VHeUNBLDJCQXREOEYsRUFBQTs7QVRrRTFGO0VNakVOO0lHcURFLFlBbEZZLEVBQUE7RUhpQ2Q7SUdpREUsWUFsRlksRUFBQTtFSHlDWjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDRCQXREOEYsRUFBQTtFSENoRztJR3FERSxZQWxGWSxFQUFBO0VIaUNkO0lHaURFLFlBbEZZLEVBQUE7RUh5Q1o7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSw0QkF0RDhGLEVBQUEsRUhlN0Y7O0FObURHO0VNakVOO0lHcURFLFlBbEZZLEVBQUE7RUhpQ2Q7SUdpREUsWUFsRlksRUFBQTtFSHlDWjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDRCQXREOEYsRUFBQSxFSGU3Rjs7QUFrVEQ7RU81WUksNEJBQW1DLEVBQUE7O0FiNkluQztFTStQSjtJTzVZSSw2QkFBbUMsRUFBQSxFUDhZdEM7O0FOalFHO0VNK1BKO0lPNVlJLDZCQUFtQyxFQUFBLEVQOFl0Qzs7QU5qUUc7RU1tUUY7SU9oWkUsNkJBQW1DLEVBQUEsRVBrWnBDOztBTnJRQztFTW1RRjtJT2haRSw2QkFBbUMsRUFBQSxFUGtacEM7O0FRM1dIO0VDbkJGLHVCQXJEeUQ7TUFxRHpELG9CQXJEeUQ7VUFxRHpELDJCQXJEeUQsRUFBQTs7QUR3RXZEO0VDbkJGLHFCQXBEMEQ7TUFvRDFELGtCQXBEMEQ7VUFvRDFELHlCQXBEMEQsRUFBQTs7QUR1RXhEO0VDbkJGLHdCQW5Ea0I7TUFtRGxCLHFCQW5Ea0I7VUFtRGxCLHVCQW5Ea0IsRUFBQTs7QURzRWhCO0VDbkJGLHlCQWxEMEI7TUFrRDFCLHNCQWxEMEI7VUFrRDFCLDhCQWxEMEIsRUFBQTs7QURxRXhCO0VDbkJGLHlCQWpEd0I7TUFpRHhCLDZCQWpEd0IsRUFBQTs7QUQyRXRCO0VDMUJGLHVCQXJEeUQ7TUFxRHpELG9CQXJEeUQ7VUFxRHpELDJCQXJEeUQsRUFBQTs7QUQrRXZEO0VDMUJGLHFCQXBEMEQ7TUFvRDFELGtCQXBEMEQ7VUFvRDFELHlCQXBEMEQsRUFBQTs7QUQ4RXhEO0VDMUJGLHdCQW5Ea0I7TUFtRGxCLHFCQW5Ea0I7VUFtRGxCLHVCQW5Ea0IsRUFBQTs7QUR3RmhCO0VDcENGLHdCQTFDaUI7TUEwQ2pCLHFCQTFDaUI7VUEwQ2pCLHVCQTFDaUIsRUFBQTs7QURrRmY7RUN4QkYsMEJBMURpQjtNQTBEakIsc0JBMURpQixFQUFBOztBRDhFZjtFQ3BDRixzQkF6Q2tCO01BeUNsQixtQkF6Q2tCO1VBeUNsQixxQkF6Q2tCLEVBQUE7O0FEaUZoQjtFQ3hCRix3QkF6RGtCO01BeURsQixvQkF6RGtCLEVBQUE7O0FENkVoQjtFQ3BDRix5QkF4Q2dCO01Bd0NoQixzQkF4Q2dCO1VBd0NoQixtQkF4Q2dCLEVBQUE7O0FEZ0ZkO0VDeEJGLDJCQXhEZ0I7TUF3RGhCLGtCQXhEZ0IsRUFBQTs7QUQ0RWQ7RUNwQ0YsMEJBdkNrQjtNQXVDbEIsdUJBdkNrQjtVQXVDbEIsb0JBdkNrQixFQUFBOztBRCtFaEI7RUN4QkYsNEJBdkRrQjtNQXVEbEIsbUJBdkRrQixFQUFBOztBRHFGbEI7RUMvQ0Esd0JBbkRrQjtNQW1EbEIscUJBbkRrQjtVQW1EbEIsdUJBbkRrQjtFQW9EbEIseUJBeENnQjtNQXdDaEIsc0JBeENnQjtVQXdDaEIsbUJBeENnQjtFRHdGZCwwQkFBcUI7TUFBckIscUJBQXFCLEVBQUE7O0FBTW5CO0VDaENKLDRCRCtCZ0I7TUMvQmhCLGlCRCtCZ0I7VUMvQmhCLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLDRCRCtCZ0I7TUMvQmhCLGlCRCtCZ0I7VUMvQmhCLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLDRCRCtCZ0I7TUMvQmhCLGlCRCtCZ0I7VUMvQmhCLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLDRCRCtCZ0I7TUMvQmhCLGlCRCtCZ0I7VUMvQmhCLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLDRCRCtCZ0I7TUMvQmhCLGlCRCtCZ0I7VUMvQmhCLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLDRCRCtCZ0I7TUMvQmhCLGlCRCtCZ0I7VUMvQmhCLFFEK0JnQixFQUFBOztBZG1FVjtFY2xFRjtJQ2hDSiw0QkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSiw0QkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUEsRUFHWDs7QWRnRUM7RWNsRUY7SUNoQ0osNEJEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSiw0QkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSiw0QkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBLEVBR1g7O0FBL0ZMO0VDWUEsb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWEsRUFBQTs7QURSYjtFQUNFLG1CQUFjO01BQWQsa0JBQWM7VUFBZCxjQUFjLEVBQUE7O0FBR2hCO0VBQ0UsbUJBQWM7TUFBZCxrQkFBYztVQUFkLGNBQWMsRUFBQTs7QUFHaEI7RUFDRSxtQkFBYztNQUFkLGtCQUFjO1VBQWQsY0FBYyxFQUFBOztBQUlkO0VDc0RGLDhCQW5FVTtFQW1FViw2QkFuRVU7TUFtRVYsdUJBbkVVO1VBbUVWLG1CQW5FVSxFQUFBOztBRGFSO0VDc0RGLDhCQWxFMEI7RUFrRTFCLDhCQWxFMEI7TUFrRTFCLCtCQWxFMEI7VUFrRTFCLDJCQWxFMEIsRUFBQTs7QURZeEI7RUNzREYsNEJBakVnQjtFQWlFaEIsNkJBakVnQjtNQWlFaEIsMEJBakVnQjtVQWlFaEIsc0JBakVnQixFQUFBOztBRFdkO0VDc0RGLDRCQWhFZ0M7RUFnRWhDLDhCQWhFZ0M7TUFnRWhDLGtDQWhFZ0M7VUFnRWhDLDhCQWhFZ0MsRUFBQTs7QWZ3SjFCO0VjcElFO0lDZlIsb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWEsRUFBQTtFRG1CTDtJQUNFLG1CQUFjO1FBQWQsa0JBQWM7WUFBZCxjQUFjLEVBQUE7RUFHaEI7SUFDRSxtQkFBYztRQUFkLGtCQUFjO1lBQWQsY0FBYyxFQUFBO0VBR2hCO0lBQ0UsbUJBQWM7UUFBZCxrQkFBYztZQUFkLGNBQWMsRUFBQTtFQUlkO0lDMkJWLDhCQW5FVTtJQW1FViw2QkFuRVU7UUFtRVYsdUJBbkVVO1lBbUVWLG1CQW5FVSxFQUFBO0VEd0NBO0lDMkJWLDhCQWxFMEI7SUFrRTFCLDhCQWxFMEI7UUFrRTFCLCtCQWxFMEI7WUFrRTFCLDJCQWxFMEIsRUFBQTtFRHVDaEI7SUMyQlYsNEJBakVnQjtJQWlFaEIsNkJBakVnQjtRQWlFaEIsMEJBakVnQjtZQWlFaEIsc0JBakVnQixFQUFBO0VEc0NOO0lDMkJWLDRCQWhFZ0M7SUFnRWhDLDhCQWhFZ0M7UUFnRWhDLGtDQWhFZ0M7WUFnRWhDLDhCQWhFZ0MsRUFBQSxFRHVDckI7O0FkaUhMO0VjcElFO0lDZlIsb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWEsRUFBQTtFRG1CTDtJQUNFLG1CQUFjO1FBQWQsa0JBQWM7WUFBZCxjQUFjLEVBQUE7RUFHaEI7SUFDRSxtQkFBYztRQUFkLGtCQUFjO1lBQWQsY0FBYyxFQUFBO0VBR2hCO0lBQ0UsbUJBQWM7UUFBZCxrQkFBYztZQUFkLGNBQWMsRUFBQTtFQUlkO0lDMkJWLDhCQW5FVTtJQW1FViw2QkFuRVU7UUFtRVYsdUJBbkVVO1lBbUVWLG1CQW5FVSxFQUFBO0VEd0NBO0lDMkJWLDhCQWxFMEI7SUFrRTFCLDhCQWxFMEI7UUFrRTFCLCtCQWxFMEI7WUFrRTFCLDJCQWxFMEIsRUFBQTtFRHVDaEI7SUMyQlYsNEJBakVnQjtJQWlFaEIsNkJBakVnQjtRQWlFaEIsMEJBakVnQjtZQWlFaEIsc0JBakVnQixFQUFBO0VEc0NOO0lDMkJWLDRCQWhFZ0M7SUFnRWhDLDhCQWhFZ0M7UUFnRWhDLGtDQWhFZ0M7WUFnRWhDLDhCQWhFZ0MsRUFBQSxFRHVDckI7O0FFb0tYO0VBbUJFLFNBQVM7RUFDVCxVQUFVLEVBQUE7O0FBSVo7RUFDRSxtQnpCbkQwQjtFeUJxRDFCLGtCQUFrQjtFQUNsQixnQnpCdkRzQjtFeUJ3RHRCLGtDekJ0RHlDLEVBQUE7O0F5QjBEM0M7RUFFRSxrQkFBa0I7RUFDbEIsb0JBQW9CLEVBQUE7O0F2Qi9MdEI7RXVCcU1FLGlCekJwSnFCO0V5QnFKckIsb0JBQW9CLEVBQUE7O0F2QnRMdEI7RXVCMkxFLGN6QjdFaUI7RXlCOEVqQixvQkFBb0IsRUFBQTs7QUFJdEI7RUFNRSxrRnpCMUhzRjtFeUIySHRGLGtCekJ6SHNCO0V5QjBIdEIsaUJ6QnZLcUI7RXlCd0tyQixjekI5TWlCO0V5QitNakIsa0N6QjdGc0MsRUFBQTs7QXlCbUZ4QztFQWFJLGNBQWM7RUFDZCxjekJuTWUsRUFBQTs7QXlCNE1iO0VBT0ksbUJsQjlONkM7RWtCcU83QyxvQnpCaEppQjtFeUIwSmpCLGFBQWE7RUFLYix3QmxCcFA2QyxFQUFBOztBa0J1TmpEO0VBT0ksbUJsQjlONkM7RWtCcU83QyxvQnpCL0lpQjtFeUJ5SmpCLGFBQWE7RUFLYix3QmxCcFA2QyxFQUFBOztBa0J1TmpEO0VBT0ksb0JsQjlONkM7RWtCcU83QyxpQnpCOUlpQjtFeUJ3SmpCLGFBQWE7RUFLYix3QmxCcFA2QyxFQUFBOztBa0J1TmpEO0VBT0ksbUJsQjlONkM7RWtCcU83QyxvQnpCN0lpQjtFeUJ1SmpCLGFBQWE7RUFLYixtQmxCcFA2QyxFQUFBOztBa0JzSnZEO0VBd0VVLGVsQjlONkM7RWtCcU83QyxnQnpCNUlpQjtFeUJzSmpCLGFBQWE7RUFLYixtQmxCcFA2QyxFQUFBOztBa0J1SnZEO0VBdUVVLGVsQjlONkM7RWtCcU83QyxnQnpCM0lpQjtFeUJxSmpCLGFBQWE7RUFLYixtQmxCcFA2QyxFQUFBOztBRXdGakQ7RWdCK0hBO0lBT0ksbUJsQjlONkM7SWtCcU83QyxvQnpCeElpQjtJeUJ1SmpCLHVCbEJwUDZDLEVBQUE7RWtCdU5qRDtJQU9JLG1CbEI5TjZDO0lrQnFPN0Msb0J6QnZJaUI7SXlCc0pqQixxQmxCcFA2QyxFQUFBO0VrQnVOakQ7SUFPSSxtQmxCOU42QztJa0JxTzdDLG9CekJ0SWlCO0l5QnFKakIsdUJsQnBQNkMsRUFBQTtFa0J1TmpEO0lBT0ksbUJsQjlONkM7SWtCcU83QyxvQnpCcklpQjtJeUJvSmpCLHNCbEJwUDZDLEVBQUE7RWtCc0p2RDtJQXdFVSxtQmxCOU42QztJa0JxTzdDLG9CekJwSWlCO0l5Qm1KakIsc0JsQnBQNkMsRUFBQTtFa0J1SnZEO0lBdUVVLGVsQjlONkM7SWtCcU83QyxnQnpCbklpQjtJeUJrSmpCLHNCbEJwUDZDLEVBQUEsRWtCd1BoRDs7QWhCaEtEO0VnQitIQTtJQU9JLG9CbEI5TjZDO0lrQnFPN0Msb0J6QmhJaUI7SXlCK0lqQixzQmxCcFA2QyxFQUFBO0VrQnVOakQ7SUFPSSxtQmxCOU42QztJa0JxTzdDLG9CekIvSGlCO0l5QjhJakIscUJsQnBQNkMsRUFBQTtFa0J1TmpEO0lBT0ksbUJsQjlONkM7SWtCcU83QyxvQnpCOUhpQjtJeUI2SWpCLHVCbEJwUDZDLEVBQUE7RWtCdU5qRDtJQU9JLG9CbEI5TjZDO0lrQnFPN0MsaUJ6QjdIaUI7SXlCNElqQixzQmxCcFA2QyxFQUFBO0VrQnNKdkQ7SUF3RVUsa0JsQjlONkM7SWtCcU83QyxnQnpCNUhpQjtJeUIySWpCLHNCbEJwUDZDLEVBQUE7RWtCdUp2RDtJQXVFVSxlbEI5TjZDO0lrQnFPN0MsZ0J6QjNIaUI7SXlCMElqQixzQmxCcFA2QyxFQUFBLEVrQndQaEQ7O0F2QnhSUDtFdUIrUkUsb0JBQW9CO0VBQ3BCLGN6QnJRaUI7RXlCc1FqQiwwQnpCdEk4QjtFeUJ3STlCLGVBQWUsRUFBQTs7QUFMakI7RUFTSSxjekIzUWlCLEVBQUE7O0F5QmtRckI7RUFnQkksU0FBUyxFQUFBOztBdkJqVWI7RXVCdVVFLFdBQVc7RUFFWCxtQmxCdFJxRDtFa0J1UnJELFNBQVM7RUFDVCxvQnpCekp5QjtFeUIySnpCLGFBQWE7RUFDYixlQUFlO0VBQ2YsZ0N6QmpSaUI7RXlCa1JqQixjQUFjLEVBQUE7O0FBSWhCO0VBR0UsbUJ6Qm5MMEI7RXlCb0wxQiw0QnpCbEt5QjtFeUJtS3pCLGdCekJ0THNCLEVBQUE7O0F5QjBMeEI7RUFDRSxrQkFBa0IsRUFBQTs7QUFJcEI7RUFDRSxvQnpCNUtzQjtFeUI2S3RCLHFCekIvS2tCLEVBQUE7O0F5Qm1McEI7RUFDRSxvQnpCbExzQixFQUFBOztBeUJzTHhCO0VBRUksb0J6QnZMMkI7RXlCd0wzQixnQkFBZ0IsRUFBQTs7QUFLcEI7RUFDRSxtQnpCN0x5QixFQUFBOztBeUI0TDNCO0VBSUkscUJ6QjlMOEI7RXlCK0w5QixpQnpCdFNtQixFQUFBOztBeUIyU3ZCO0VBQ0UsZ0J6QjVOMEI7RXlCNk4xQix5Q2xCOVVxRDtFa0IrVXJELGlCekJwTW9CLEVBQUE7O0F5QmlNdEI7RUFNSSxnQnpCbE9vQjtFeUJtT3BCLGN6QnhWZSxFQUFBOztBeUJzV25CO0VBQ0UsOEJ6QjNWUTtFeUI0VlIsWUFBWTtFQUNaLHFCQUFxQixFQUFBOztBQUl2QjtFQUNFLFNBQVMsRUFBQTs7QUFXWDtFQUNFLFNBQVM7RUFDVCwyQmxCalhTO0VrQm1YVCx5QnpCNVdnQjtFeUI4V2hCLHlEekIvVjJEO0V5QmdXM0QsV3pCcFhRO0V5QnVYTixrQnpCNVZhLEVBQUE7O0EwQldqQjtFQUNFLGtCMUJnSHlCO0UwQi9HekIscUIxQmdINEI7RTBCOUc1QixtQjFCakJ5QjtFMEJrQnpCLGdCMUJ5R3NCO0UwQnhHdEIsYzFCekNlLEVBQUE7O0EwQjZDakI7RUFDRSxlMUJpR3FDO0UwQmhHckMsZ0IxQmlHaUIsRUFBQTs7QTBCN0ZuQjtFQUNFLGlCMUJrR21CO0UwQmpHbkIsY0FBYyxFQUFBOztBQUVkO0VBQ0UsaUJBQWlCLEVBQUE7O0FBSXJCO0VBR0ksY0FBZ0M7RUFDaEMsZ0JBQWdCLEVBQUE7O0FBSXBCO0VBakZBLGNBQWM7RUFDZCxjMUJZaUI7RTBCWGpCLG9CbkJDdUQsRUFBQTs7QW1CQ3ZEO0VBQ0UsYTFCNElrQixFQUFhOztBMEI1RGpDO0VBekVBLHlCMUJFbUI7RTBCRG5CLHlCMUJFa0I7RTBCQWxCLHlEMUJlNkQ7RTBCZDdELG1CMUJtQjJCO0UwQmxCM0IsVzFCUFU7RTBCYVYsZUFBZTtFQUNmLGVBQWU7RUFDZixxQkFBcUI7RUFFckIscUNuQnhCdUQsRUFBQTs7QW1CdUZ2RDtFQTlFQSx5QjFCRW1CO0UwQkRuQix5QjFCRWtCO0UwQkFsQix5RDFCZTZEO0UwQmQ3RCxtQjFCbUIyQjtFMEJsQjNCLFcxQlBVO0UwQnVCVixjQUFjO0VBQ2QsY0FBYztFQUNkLGdCQUFnQjtFQUVoQixhQTVDdUI7RUE2Q3ZCLHFCQXpDK0IsRUFBQTs7QUNwRXZCO0VBQ0UsZ0JBUmUsRUFBQTs7QUFPakI7RUFDRSxpQkFSc0IsRUFBQTs7QUFPeEI7RUFDRSxrQkFSOEIsRUFBQTs7QUFPaEM7RUFDRSxtQkFSdUMsRUFBQTs7QWxCeUszQztFa0J2S0U7SUFDRSxnQkFIZSxFQUFBO0VBRWpCO0lBQ0UsaUJBSHNCLEVBQUE7RUFFeEI7SUFDRSxrQkFIOEIsRUFBQTtFQUVoQztJQUNFLG1CQUh1QyxFQUFBLEVBSXhDOztBbEJxS0g7RWtCdktFO0lBQ0UsZ0JBSGUsRUFBQTtFQUVqQjtJQUNFLGlCQUhzQixFQUFBO0VBRXhCO0lBQ0Usa0JBSDhCLEVBQUE7RUFFaEM7SUFDRSxtQkFIdUMsRUFBQSxFQUl4Qzs7QUNNVDtFQUFrQix3QkFBd0IsRUFBQTs7QUFFMUM7RUFDRTtJQUlJLGtDQUFrQztJQUNsQyx1QkFBdUI7SUFDdkIsbUNBQXFCO1lBQXJCLHFCQUFxQjtJQU92QixtQ0FBMkI7WUFBM0IsMkJBQTJCO0lBQzNCLDRCQUE0QixFQUFBO0VBakJoQztJQW9Cb0IseUJBQXlCLEVBQUE7RUFDM0M7SUFBa0Isd0JBQXdCLEVBQUE7RUFFMUM7SUFBdUIseUJBQXlCLEVBQUE7RUFDaEQ7SUFBdUIsc0NBQXNDLEVBQUE7RUFDN0Q7SUFBdUIsbUNBQW1DLEVBQUE7RUFDMUQ7SUFBb0IsNkJBQTZCLEVBQUE7RUFDakQ7SUFBb0IsOEJBQThCLEVBQUE7RUFDbEQ7SUFBb0IsOEJBQThCLEVBQUE7RUFHbEQ7SUFDWSwwQkFBMEIsRUFBQTtFQU10QztJQUVxQixXQUFXLEVBQUE7RUFHaEM7SUFBb0IsNkJBQTZCLEVBQUE7RUFHakQ7SUFFRSx5QjVCaUNhO0k0QmhDYix3QkFBd0IsRUFBQTtFQUkxQjtJQUFRLDJCQUEyQixFQUFBO0VBRW5DO0lBQ00sd0JBQXdCLEVBQUE7RTFCMkNoQztJMEJ6Q1EsMEJBQTBCLEVBQUE7RUFFaEM7SUFBUSxhQUFhLEVBQUE7RUFFckI7SUFHRSxVQUFVO0lBQ1YsU0FBUyxFQUFBO0VBSVg7SUFDSyx1QkFBdUIsRUFBQTtFQUc1QjtJQUNFLHVCQUF1QixFQUFBLEVBQ3hCOztBQytPSDtFQTFPQSxxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLGtCN0I4TmtDO0U2QnBOaEMsa0M3Qm1Oc0M7RTZCaE54Qyw2QkE5RG1DO0VBK0RuQyxrQjdCc05pQjtFNkJyTmpCLHlFN0JpT3VFO0U2QmpPdkUsb0U3QmlPdUU7RTZCak92RSxpRTdCaU91RTtFNkJoT3ZFLGtGN0JnRHdGO0U2Qi9DeEYsbUI3QndOaUI7RTZCdE5qQix3QkFBd0I7RUFDeEIsY0FBYztFQUNkLGtCQUFrQjtFQUNsQixlQUFlLEVBQUE7O0F2RHUwS2pCO0U4QnZ2S0ksVUFBVSxFQUFBOztBeUJrSVo7RUFNTSxtQjdCUFEsRUFBQTs7QTZCQ2Q7RUFNTSxtQjdCTlMsRUFBQTs7QTZCQWY7RUFNTSxtQjdCSlMsRUFBQTs7QTZCRmY7RUEzTUUsY0FBYztFQUNkLFdBQVc7RUFDWCxlQUFlO0VBQ2YsY0FBYyxFQUFBOztBQWlFaEI7RUFJRSx5QjdCaEhtQjtFNkJpSG5CLGM3QnZIaUIsRUFBQTs7QTZCMEhuQjtFQUNFLHlCN0IzSGlCO0U2QjRIakIsYzdCNUhpQixFQUFBOztBNkJvSWpCO0VBQ0UsNkJBQTZCLEVBQUE7O0FBaUJqQztFQUlFLHlCN0JwSm1CO0U2QnFKbkIsYzdCckptQixFQUFBOztBNkJ3SnJCO0VBQ0UscUJBWjZEO0VBYTdELGNBYjZELEVBQUE7O0FBcUI3RDtFQUNFLHlCQUF5QjtFQUN6Qiw2QkFBNkIsRUFBQTs7QUFlakM7RUFJRSxjN0J2TG1CLEVBQUE7O0E2QjBMckI7RUFDRSxjQVg2RCxFQUFBOztBQW1FL0Q7RUEvQ0EsVTdCb0R5QjtFNkJuRHpCLG1CQUFtQixFQUFBOztBQVluQjtFekJoUUEsY0FBYztFQUNkLFFBQVE7RUFDUixTQUFTO0VBRVQsbUJ5QndQWTtFekJ0UFosV0FBVztFQUdULHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsMENBQXFEO0V5QnVQckQsa0JBQWtCO0VBQ2xCLFVBQVU7RUFFVixxQkFBcUI7RUFDckIsWUFBTztFQUNQLGtCN0JnQnlCLEVBQUE7O0E2QlczQjtFQW9FUSx5QjdCdlRhLEVBQUE7O0E2Qm1QckI7RUFtRkksV0FBVztFQUNYLFdBQVc7RUFDWCxjQUFnQyxFQUFBOztBQUlwQztFQUdJLHFCQUFxQixFQUFBOztBdkRzbUszQjtFd0R2N0tFLGNBQWM7RUFDZCw4QkFBc0I7VUFBdEIsc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxnQkFMc0o7RUFNdEosb0J2Qkh1RDtFdUJJdkQscUI5Qm9ZbUM7RThCbFluQyxZOUJnWWlCO0U4Qi9YakIsZ0I5QnVZYztFOEJ0WWQsNkI5QjJYNEI7RThCMVg1Qix3QjlCZ1lpQjtVOEJoWWpCLGdCOUJnWWlCO0U4QjlYakIsb0I5Qm9YeUI7RThCblh6QixldkJadUQ7RXVCYXZELG1COUJtQjJCO0U4QmxCM0IsZ0I5QmpDcUI7RThCa0NyQixjOUJwQm1CO0U4QnVCakIsMkU5QjBYOEQ7RThCMVg5RCxtRTlCMFg4RDtFOEIxWDlELDhEOUIwWDhEO0U4QjFYOUQsMkQ5QjBYOEQ7RThCMVg5RCxvRjlCMFg4RDtFOEJyVzlELHdCQUFnQjtLQUFoQixxQkFBZ0I7VUFBaEIsZ0JBQWdCLEVBQUE7O0F4RGs2S3BCO0V3RGw3S0ksYUFBYTtFQUNiLFk5QjhXZTtFOEI3V2YsNkI5QjJXZ0M7RThCMVdoQyx3QjlCZ1hxQjtVOEJoWHJCLGdCOUJnWHFCO0U4QjdXbkIsMkU5QitXNEQ7RThCL1c1RCxtRTlCK1c0RDtFOEIvVzVELDhEOUIrVzREO0U4Qi9XNUQsMkQ5QitXNEQ7RThCL1c1RCxvRjlCK1c0RCxFQUFBOztBRW5SaEU7RTRCN0VFLGVBQWUsRUFBQTs7QUFEakI7RUFJSSxZQUFZLEVBQUE7O0FBSWhCO0VBS0kseUI5QjVDYztFOEI2Q2QsbUI5QmtWNkIsRUFBQTs7QTFCK2tLbkM7RXdEMTVLSSx3QkFBZ0I7S0FBaEIscUJBQWdCO1VBQWhCLGdCQUFnQjtFQUNoQixrQjlCL0JlLEVBQUE7O0E4Qm1DakI7RUFDRSw4QkFBc0I7VUFBdEIsc0JBQXNCLEVBQUE7O0FBaUJ4QjtFQUNFLGM5Qi9FaUIsRUFBQTs7QThCOEVuQjtFQUNFLGM5Qi9FaUIsRUFBQTs7QThCOEVuQjtFQUNFLGM5Qi9FaUIsRUFBQTs7QThCOEVuQjtFQUNFLGM5Qi9FaUIsRUFBQTs7QThCOEVuQjtFQUNFLGM5Qi9FaUIsRUFBQTs7QTFCMjlLckI7RXlEaGpMSSxvQnhCNEVxRCxFQUFBOztBakN1K0t6RDtFeUQ3aUxJLHFCQUFxQjtFQUNyQix3QkFBd0I7RUFFeEIsc0JBQWtEO0VBQ2xELHNCeEJrRXFEO0V3QmpFckQsZ0JBQWdCLEVBQUE7O0F6RCtpTHBCO0V5RDVpTE0sZUFBZSxFQUFBOztBQUtuQjtFQUVFLHVCQUFtRCxFQUFBOztBekQyaUx2RDtFeUR0aUxJLFdBQVcsRUFBQTs7QUNJYjtFQWpCQSxjQUFjO0VBQ2QsU0FBUztFQUVULG1CekI0RHVEO0V5QjNEdkQsbUJoQzJGMkI7RWdDMUYzQixnQmhDbWIwQjtFZ0NsYjFCLFdoQ2dFVSxFQUFBOztBZ0NyRFY7RUFMQSxvQnpCbUR1RDtFeUJsRHZELG9CQUE4RCxFQUFBOztBQ2pCOUQ7RUFHRSxzQkFGdUM7RUFHdkMsb0IxQitEcUQ7RTBCOURyRCxrQmpDK2F3QjtFaUM5YXhCLFdqQ29FUSxFQUFBOztBa0NyRVY7RUFDRSxvQkFBaUM7RUFBakMsb0JBQWlDO0VBQWpDLGFBQWlDO0VBQ2pDLFdBQVc7RUFDWCx1QjNCMkRxRDtFMkJ4RG5ELDBCQUFvQjtNQUFwQix1QkFBb0I7VUFBcEIsb0JBQW9CLEVBQUE7O0FBTnhCO0VBV00sc0JsQ2ljUSxFQUFBOztBa0M1Y2Q7RUFpQk0sc0JBQWlILEVBQUE7O0FBS3ZIO0VBQ0UsU0FBUztFQUNULG1CQUFtQixFQUFBOztBQVFyQjtFQUVFLGVsQ2ladUI7RWtDaFp2Qix5QmxDc0NpQjtFa0NyQ2pCLG1CbENzQ2dCO0VrQ3BDaEIsV2xDK0JRO0VrQzlCUixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBR2pCLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IsbUJBQWM7TUFBZCxrQkFBYztVQUFkLGNBQWM7RUFDZCx5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQixFQUFBOztBQWJ2QjtFQXNCTSxlQUFpQyxFQUFBOztBQXRCdkM7RUEwQk0sY0FBZ0MsRUFBQTs7QUFLdEM7RUFFRSxnQkFBZ0I7RUFHZCxtQkFBYTtNQUFiLGlCQUFhO1VBQWIsYUFBYTtFQUNiLFlBQVksRUFBQTs7QUFJaEI7RUFFRSxjQUFjO0VBQ2QsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUdoQixvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLG1CQUFjO01BQWQsa0JBQWM7VUFBZCxjQUFjLEVBQUE7O0FBUmxCO0VBc0JNLDRCQUFtQjtNQUFuQixtQkFBbUI7RUFDbkIsWUFBWTtFQUtkLGNBQWM7RUFDZCxpQkFBaUI7RUFDakIsZTNCekNtRCxFQUFBOztBTCtGdkQ7RWlDaEpFLFNBQVM7RUFDVCxVQUFVO0VBQ1YsU0FBUyxFQUFBOztBakN1Slg7RWlDbkpFLGVBQWU7RUFDZix3QkFBa0MsRUFBQTs7QUFHcEM7RUF4QkEsa0I1Qm9FVztFNEJuRVgsZ0I1QjhEdUQ7RTRCN0R2RCx5Qm5Dd0VtQixFQUFBOztBbUN0RW5CO0VBRUUsU0FBUztFQUNULHVCNUJ3RHFEO0U0QnZEckQsb0I1QnVEcUQsRUFBQTs7QUp3R3ZEO0VpQ3pLQSxnQkFGc0o7RUFHdEosb0I3QmdFdUQ7RTZCL0R2RCxxQnBDdWNtQztFb0NyY25DLHdCQUFnQjtLQUFoQixxQkFBZ0I7VUFBaEIsZ0JBQWdCO0VBQ2hCLFlwQ2tjaUI7RW9DamNqQixnQnBDdWJlO0VvQ3RiZixzQnBDeUVVO0VvQ3ZFVixvQnBDdWJ5QjtFb0N0YnpCLGU3QnVEdUQ7RTZCdER2RCxtQnBDc0YyQjtFb0NyRjNCLGdCcENrQ3FCO0VvQ2pDckIsY3BDK0NtQjtFSW1FbkIsb09BQXlOO0VnQzlHdk4sOEJBQThCO0VBQzlCLDJDQUEwRDtFQUMxRCw0QkFBNEI7RUFDNUIsd0JBQXdCO0VBRXhCLHdCQUF1RDtFQUl2RCwyRXBDbWI4RDtFb0NuYjlELG1FcENtYjhEO0VvQ25iOUQsOERwQ21iOEQ7RW9DbmI5RCwyRHBDbWI4RDtFb0NuYjlELG9GcENtYjhELEVBQUE7O0FJNVVoRTtFRHdDQTtJQ3JDSSx1V0FBdVcsRUFBQSxFZ0NuRTFXOztBQW5DRDtFQUNFLGFBQWE7RUFDYixZcEN1YWU7RW9DdGFmLDZCcENvYWdDO0VvQ25haEMsd0JwQ3lhcUI7VW9DemFyQixnQnBDeWFxQjtFb0N0YW5CLDJFcEN3YTREO0VvQ3hhNUQsbUVwQ3dhNEQ7RW9DeGE1RCw4RHBDd2E0RDtFb0N4YTVELDJEcEN3YTREO0VvQ3hhNUQsb0ZwQ3dhNEQsRUFBQTs7QW9DbmFoRTtFQUNFLHlCcENrQ2dCO0VvQ2pDaEIsbUJwQ2dhK0IsRUFBQTs7QW9DNVpqQztFQUNFLGFBQWEsRUFBQTs7QUFHZjtFQUNFLFlBQVk7RUFDWixzQkFBc0IsRUFBQTs7QUFFeEI7RUFDRSxjQUFjO0VBQ2QsaUJBQWlCLEVBQUE7O0FDckNuQjtFQUNFLHFCckMrQlk7RXFDOUJaLHlCQUErRCxFQUFBOztBQUUvRDtFQUNFLGNyQzJCVSxFQUFBOztBcUM1Qlo7RUFDRSxjckMyQlUsRUFBQTs7QXFDNUJaO0VBQ0UsY3JDMkJVLEVBQUE7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OlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohIEZvbnQgQXdlc29tZSA0LjcuMCBieSBAZGF2ZWdhbmR5IC0gaHR0cDovL2ZvbnRhd2Vzb21lLmlvIC0gQGZvbnRhd2Vzb21lIExpY2Vuc2UgLSBodHRwOi8vZm9udGF3ZXNvbWUuaW8vbGljZW5zZSAoRm9udDogU0lMIE9GTCAxLjEsIENTUzogTUlUIExpY2Vuc2UpICovXG4vKiBGT05UIFBBVEggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBmb250LWZhY2UgeyBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJzsgc3JjOiB1cmwoXCIuLi9mb250cy9mb250YXdlc29tZS13ZWJmb250LmVvdD92PTQuNy4wXCIpOyBzcmM6IHVybChcIi4uL2ZvbnRzL2ZvbnRhd2Vzb21lLXdlYmZvbnQuZW90PyNpZWZpeCZ2PTQuNy4wXCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9mb250YXdlc29tZS13ZWJmb250LndvZmYyP3Y9NC43LjBcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ZvbnRhd2Vzb21lLXdlYmZvbnQud29mZj92PTQuNy4wXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL2ZvbnRhd2Vzb21lLXdlYmZvbnQudHRmP3Y9NC43LjBcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2ZvbnRhd2Vzb21lLXdlYmZvbnQuc3ZnP3Y9NC43LjAjZm9udGF3ZXNvbWVyZWd1bGFyXCIpIGZvcm1hdChcInN2Z1wiKTsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbi5mYSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lOyBmb250LXNpemU6IGluaGVyaXQ7IHRleHQtcmVuZGVyaW5nOiBhdXRvOyAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG4vKiBtYWtlcyB0aGUgZm9udCAzMyUgbGFyZ2VyIHJlbGF0aXZlIHRvIHRoZSBpY29uIGNvbnRhaW5lciAqL1xuLmZhLWxnIHsgZm9udC1zaXplOiAxLjMzMzMzZW07IGxpbmUtaGVpZ2h0OiAwLjc1ZW07IHZlcnRpY2FsLWFsaWduOiAtMTUlOyB9XG5cbi5mYS0yeCB7IGZvbnQtc2l6ZTogMmVtOyB9XG5cbi5mYS0zeCB7IGZvbnQtc2l6ZTogM2VtOyB9XG5cbi5mYS00eCB7IGZvbnQtc2l6ZTogNGVtOyB9XG5cbi5mYS01eCB7IGZvbnQtc2l6ZTogNWVtOyB9XG5cbi5mYS1mdyB7IHdpZHRoOiAxLjI4NTcxZW07IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZmEtdWwgeyBwYWRkaW5nLWxlZnQ6IDA7IG1hcmdpbi1sZWZ0OiAyLjE0Mjg2ZW07IGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuXG4uZmEtdWwgPiBsaSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uZmEtbGkgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IC0yLjE0Mjg2ZW07IHdpZHRoOiAyLjE0Mjg2ZW07IHRvcDogMC4xNDI4NmVtOyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmZhLWxpLmZhLWxnIHsgbGVmdDogLTEuODU3MTRlbTsgfVxuXG4uZmEtYm9yZGVyIHsgcGFkZGluZzogLjJlbSAuMjVlbSAuMTVlbTsgYm9yZGVyOiBzb2xpZCAwLjA4ZW0gI2VlZTsgYm9yZGVyLXJhZGl1czogLjFlbTsgfVxuXG4uZmEtcHVsbC1sZWZ0IHsgZmxvYXQ6IGxlZnQ7IH1cblxuLmZhLXB1bGwtcmlnaHQgeyBmbG9hdDogcmlnaHQ7IH1cblxuLmZhLmZhLXB1bGwtbGVmdCB7IG1hcmdpbi1yaWdodDogLjNlbTsgfVxuXG4uZmEuZmEtcHVsbC1yaWdodCB7IG1hcmdpbi1sZWZ0OiAuM2VtOyB9XG5cbi8qIERlcHJlY2F0ZWQgYXMgb2YgNC40LjAgKi9cbi5wdWxsLXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5wdWxsLWxlZnQgeyBmbG9hdDogbGVmdDsgfVxuXG4uZmEucHVsbC1sZWZ0IHsgbWFyZ2luLXJpZ2h0OiAuM2VtOyB9XG5cbi5mYS5wdWxsLXJpZ2h0IHsgbWFyZ2luLWxlZnQ6IC4zZW07IH1cblxuLmZhLXNwaW4geyAtd2Via2l0LWFuaW1hdGlvbjogZmEtc3BpbiAycyBpbmZpbml0ZSBsaW5lYXI7IGFuaW1hdGlvbjogZmEtc3BpbiAycyBpbmZpbml0ZSBsaW5lYXI7IH1cblxuLmZhLXB1bHNlIHsgLXdlYmtpdC1hbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7IGFuaW1hdGlvbjogZmEtc3BpbiAxcyBpbmZpbml0ZSBzdGVwcyg4KTsgfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmEtc3BpbiB7IDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGZhLXNwaW4geyAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpOyB9IH1cblxuLmZhLXJvdGF0ZS05MCB7IC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MSlcIjsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgfVxuXG4uZmEtcm90YXRlLTE4MCB7IC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MilcIjsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuXG4uZmEtcm90YXRlLTI3MCB7IC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MylcIjsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpOyAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsgfVxuXG4uZmEtZmxpcC1ob3Jpem9udGFsIHsgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0wLCBtaXJyb3I9MSlcIjsgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTsgLW1zLXRyYW5zZm9ybTogc2NhbGUoLTEsIDEpOyB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTsgfVxuXG4uZmEtZmxpcC12ZXJ0aWNhbCB7IC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MiwgbWlycm9yPTEpXCI7IC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7IC1tcy10cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTsgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7IH1cblxuOnJvb3QgLmZhLXJvdGF0ZS05MCwgOnJvb3QgLmZhLXJvdGF0ZS0xODAsIDpyb290IC5mYS1yb3RhdGUtMjcwLCA6cm9vdCAuZmEtZmxpcC1ob3Jpem9udGFsLCA6cm9vdCAuZmEtZmxpcC12ZXJ0aWNhbCB7IGZpbHRlcjogbm9uZTsgfVxuXG4uZmEtc3RhY2sgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgd2lkdGg6IDJlbTsgaGVpZ2h0OiAyZW07IGxpbmUtaGVpZ2h0OiAyZW07IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLmZhLXN0YWNrLTF4LCAuZmEtc3RhY2stMnggeyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDA7IHdpZHRoOiAxMDAlOyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmZhLXN0YWNrLTF4IHsgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuLmZhLXN0YWNrLTJ4IHsgZm9udC1zaXplOiAyZW07IH1cblxuLmZhLWludmVyc2UgeyBjb2xvcjogI2ZmZjsgfVxuXG4vKiBGb250IEF3ZXNvbWUgdXNlcyB0aGUgVW5pY29kZSBQcml2YXRlIFVzZSBBcmVhIChQVUEpIHRvIGVuc3VyZSBzY3JlZW4gcmVhZGVycyBkbyBub3QgcmVhZCBvZmYgcmFuZG9tIGNoYXJhY3RlcnMgdGhhdCByZXByZXNlbnQgaWNvbnMgKi9cbi5mYS1nbGFzczpiZWZvcmUgeyBjb250ZW50OiBcIu+AgFwiOyB9XG5cbi5mYS1tdXNpYzpiZWZvcmUgeyBjb250ZW50OiBcIu+AgVwiOyB9XG5cbi5mYS1zZWFyY2g6YmVmb3JlIHsgY29udGVudDogXCLvgIJcIjsgfVxuXG4uZmEtZW52ZWxvcGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+Ag1wiOyB9XG5cbi5mYS1oZWFydDpiZWZvcmUgeyBjb250ZW50OiBcIu+AhFwiOyB9XG5cbi5mYS1zdGFyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CFXCI7IH1cblxuLmZhLXN0YXItbzpiZWZvcmUgeyBjb250ZW50OiBcIu+AhlwiOyB9XG5cbi5mYS11c2VyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CHXCI7IH1cblxuLmZhLWZpbG06YmVmb3JlIHsgY29udGVudDogXCLvgIhcIjsgfVxuXG4uZmEtdGgtbGFyZ2U6YmVmb3JlIHsgY29udGVudDogXCLvgIlcIjsgfVxuXG4uZmEtdGg6YmVmb3JlIHsgY29udGVudDogXCLvgIpcIjsgfVxuXG4uZmEtdGgtbGlzdDpiZWZvcmUgeyBjb250ZW50OiBcIu+Ai1wiOyB9XG5cbi5mYS1jaGVjazpiZWZvcmUgeyBjb250ZW50OiBcIu+AjFwiOyB9XG5cbi5mYS1yZW1vdmU6YmVmb3JlLCAuZmEtY2xvc2U6YmVmb3JlLCAuZmEtdGltZXM6YmVmb3JlIHsgY29udGVudDogXCLvgI1cIjsgfVxuXG4uZmEtc2VhcmNoLXBsdXM6YmVmb3JlIHsgY29udGVudDogXCLvgI5cIjsgfVxuXG4uZmEtc2VhcmNoLW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CQXCI7IH1cblxuLmZhLXBvd2VyLW9mZjpiZWZvcmUgeyBjb250ZW50OiBcIu+AkVwiOyB9XG5cbi5mYS1zaWduYWw6YmVmb3JlIHsgY29udGVudDogXCLvgJJcIjsgfVxuXG4uZmEtZ2VhcjpiZWZvcmUsIC5mYS1jb2c6YmVmb3JlIHsgY29udGVudDogXCLvgJNcIjsgfVxuXG4uZmEtdHJhc2gtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+AlFwiOyB9XG5cbi5mYS1ob21lOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CVXCI7IH1cblxuLmZhLWZpbGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+AllwiOyB9XG5cbi5mYS1jbG9jay1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CXXCI7IH1cblxuLmZhLXJvYWQ6YmVmb3JlIHsgY29udGVudDogXCLvgJhcIjsgfVxuXG4uZmEtZG93bmxvYWQ6YmVmb3JlIHsgY29udGVudDogXCLvgJlcIjsgfVxuXG4uZmEtYXJyb3ctY2lyY2xlLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIu+AmlwiOyB9XG5cbi5mYS1hcnJvdy1jaXJjbGUtby11cDpiZWZvcmUgeyBjb250ZW50OiBcIu+Am1wiOyB9XG5cbi5mYS1pbmJveDpiZWZvcmUgeyBjb250ZW50OiBcIu+AnFwiOyB9XG5cbi5mYS1wbGF5LWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CdXCI7IH1cblxuLmZhLXJvdGF0ZS1yaWdodDpiZWZvcmUsIC5mYS1yZXBlYXQ6YmVmb3JlIHsgY29udGVudDogXCLvgJ5cIjsgfVxuXG4uZmEtcmVmcmVzaDpiZWZvcmUgeyBjb250ZW50OiBcIu+AoVwiOyB9XG5cbi5mYS1saXN0LWFsdDpiZWZvcmUgeyBjb250ZW50OiBcIu+AolwiOyB9XG5cbi5mYS1sb2NrOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CjXCI7IH1cblxuLmZhLWZsYWc6YmVmb3JlIHsgY29udGVudDogXCLvgKRcIjsgfVxuXG4uZmEtaGVhZHBob25lczpiZWZvcmUgeyBjb250ZW50OiBcIu+ApVwiOyB9XG5cbi5mYS12b2x1bWUtb2ZmOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CmXCI7IH1cblxuLmZhLXZvbHVtZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CnXCI7IH1cblxuLmZhLXZvbHVtZS11cDpiZWZvcmUgeyBjb250ZW50OiBcIu+AqFwiOyB9XG5cbi5mYS1xcmNvZGU6YmVmb3JlIHsgY29udGVudDogXCLvgKlcIjsgfVxuXG4uZmEtYmFyY29kZTpiZWZvcmUgeyBjb250ZW50OiBcIu+AqlwiOyB9XG5cbi5mYS10YWc6YmVmb3JlIHsgY29udGVudDogXCLvgKtcIjsgfVxuXG4uZmEtdGFnczpiZWZvcmUgeyBjb250ZW50OiBcIu+ArFwiOyB9XG5cbi5mYS1ib29rOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CtXCI7IH1cblxuLmZhLWJvb2ttYXJrOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CuXCI7IH1cblxuLmZhLXByaW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CvXCI7IH1cblxuLmZhLWNhbWVyYTpiZWZvcmUgeyBjb250ZW50OiBcIu+AsFwiOyB9XG5cbi5mYS1mb250OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CxXCI7IH1cblxuLmZhLWJvbGQ6YmVmb3JlIHsgY29udGVudDogXCLvgLJcIjsgfVxuXG4uZmEtaXRhbGljOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CzXCI7IH1cblxuLmZhLXRleHQtaGVpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74C0XCI7IH1cblxuLmZhLXRleHQtd2lkdGg6YmVmb3JlIHsgY29udGVudDogXCLvgLVcIjsgfVxuXG4uZmEtYWxpZ24tbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIu+AtlwiOyB9XG5cbi5mYS1hbGlnbi1jZW50ZXI6YmVmb3JlIHsgY29udGVudDogXCLvgLdcIjsgfVxuXG4uZmEtYWxpZ24tcmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCLvgLhcIjsgfVxuXG4uZmEtYWxpZ24tanVzdGlmeTpiZWZvcmUgeyBjb250ZW50OiBcIu+AuVwiOyB9XG5cbi5mYS1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74C6XCI7IH1cblxuLmZhLWRlZGVudDpiZWZvcmUsIC5mYS1vdXRkZW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74C7XCI7IH1cblxuLmZhLWluZGVudDpiZWZvcmUgeyBjb250ZW50OiBcIu+AvFwiOyB9XG5cbi5mYS12aWRlby1jYW1lcmE6YmVmb3JlIHsgY29udGVudDogXCLvgL1cIjsgfVxuXG4uZmEtcGhvdG86YmVmb3JlLCAuZmEtaW1hZ2U6YmVmb3JlLCAuZmEtcGljdHVyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74C+XCI7IH1cblxuLmZhLXBlbmNpbDpiZWZvcmUgeyBjb250ZW50OiBcIu+BgFwiOyB9XG5cbi5mYS1tYXAtbWFya2VyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GBXCI7IH1cblxuLmZhLWFkanVzdDpiZWZvcmUgeyBjb250ZW50OiBcIu+BglwiOyB9XG5cbi5mYS10aW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GDXCI7IH1cblxuLmZhLWVkaXQ6YmVmb3JlLCAuZmEtcGVuY2lsLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GEXCI7IH1cblxuLmZhLXNoYXJlLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GFXCI7IH1cblxuLmZhLWNoZWNrLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GGXCI7IH1cblxuLmZhLWFycm93czpiZWZvcmUgeyBjb250ZW50OiBcIu+Bh1wiOyB9XG5cbi5mYS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GIXCI7IH1cblxuLmZhLWZhc3QtYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogXCLvgYlcIjsgfVxuXG4uZmEtYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogXCLvgYpcIjsgfVxuXG4uZmEtcGxheTpiZWZvcmUgeyBjb250ZW50OiBcIu+Bi1wiOyB9XG5cbi5mYS1wYXVzZTpiZWZvcmUgeyBjb250ZW50OiBcIu+BjFwiOyB9XG5cbi5mYS1zdG9wOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GNXCI7IH1cblxuLmZhLWZvcndhcmQ6YmVmb3JlIHsgY29udGVudDogXCLvgY5cIjsgfVxuXG4uZmEtZmFzdC1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GQXCI7IH1cblxuLmZhLXN0ZXAtZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIu+BkVwiOyB9XG5cbi5mYS1lamVjdDpiZWZvcmUgeyBjb250ZW50OiBcIu+BklwiOyB9XG5cbi5mYS1jaGV2cm9uLWxlZnQ6YmVmb3JlIHsgY29udGVudDogXCLvgZNcIjsgfVxuXG4uZmEtY2hldnJvbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIu+BlFwiOyB9XG5cbi5mYS1wbHVzLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+BlVwiOyB9XG5cbi5mYS1taW51cy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCLvgZZcIjsgfVxuXG4uZmEtdGltZXMtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GXXCI7IH1cblxuLmZhLWNoZWNrLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+BmFwiOyB9XG5cbi5mYS1xdWVzdGlvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCLvgZlcIjsgfVxuXG4uZmEtaW5mby1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCLvgZpcIjsgfVxuXG4uZmEtY3Jvc3NoYWlyczpiZWZvcmUgeyBjb250ZW50OiBcIu+Bm1wiOyB9XG5cbi5mYS10aW1lcy1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+BnFwiOyB9XG5cbi5mYS1jaGVjay1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+BnVwiOyB9XG5cbi5mYS1iYW46YmVmb3JlIHsgY29udGVudDogXCLvgZ5cIjsgfVxuXG4uZmEtYXJyb3ctbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIu+BoFwiOyB9XG5cbi5mYS1hcnJvdy1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIu+BoVwiOyB9XG5cbi5mYS1hcnJvdy11cDpiZWZvcmUgeyBjb250ZW50OiBcIu+BolwiOyB9XG5cbi5mYS1hcnJvdy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GjXCI7IH1cblxuLmZhLW1haWwtZm9yd2FyZDpiZWZvcmUsIC5mYS1zaGFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+BpFwiOyB9XG5cbi5mYS1leHBhbmQ6YmVmb3JlIHsgY29udGVudDogXCLvgaVcIjsgfVxuXG4uZmEtY29tcHJlc3M6YmVmb3JlIHsgY29udGVudDogXCLvgaZcIjsgfVxuXG4uZmEtcGx1czpiZWZvcmUgeyBjb250ZW50OiBcIu+Bp1wiOyB9XG5cbi5mYS1taW51czpiZWZvcmUgeyBjb250ZW50OiBcIu+BqFwiOyB9XG5cbi5mYS1hc3RlcmlzazpiZWZvcmUgeyBjb250ZW50OiBcIu+BqVwiOyB9XG5cbi5mYS1leGNsYW1hdGlvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCLvgapcIjsgfVxuXG4uZmEtZ2lmdDpiZWZvcmUgeyBjb250ZW50OiBcIu+Bq1wiOyB9XG5cbi5mYS1sZWFmOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GsXCI7IH1cblxuLmZhLWZpcmU6YmVmb3JlIHsgY29udGVudDogXCLvga1cIjsgfVxuXG4uZmEtZXllOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GuXCI7IH1cblxuLmZhLWV5ZS1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBcIu+BsFwiOyB9XG5cbi5mYS13YXJuaW5nOmJlZm9yZSwgLmZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GxXCI7IH1cblxuLmZhLXBsYW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GyXCI7IH1cblxuLmZhLWNhbGVuZGFyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GzXCI7IH1cblxuLmZhLXJhbmRvbTpiZWZvcmUgeyBjb250ZW50OiBcIu+BtFwiOyB9XG5cbi5mYS1jb21tZW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74G1XCI7IH1cblxuLmZhLW1hZ25ldDpiZWZvcmUgeyBjb250ZW50OiBcIu+BtlwiOyB9XG5cbi5mYS1jaGV2cm9uLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74G3XCI7IH1cblxuLmZhLWNoZXZyb24tZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIu+BuFwiOyB9XG5cbi5mYS1yZXR3ZWV0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74G5XCI7IH1cblxuLmZhLXNob3BwaW5nLWNhcnQ6YmVmb3JlIHsgY29udGVudDogXCLvgbpcIjsgfVxuXG4uZmEtZm9sZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74G7XCI7IH1cblxuLmZhLWZvbGRlci1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74G8XCI7IH1cblxuLmZhLWFycm93cy12OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74G9XCI7IH1cblxuLmZhLWFycm93cy1oOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74G+XCI7IH1cblxuLmZhLWJhci1jaGFydC1vOmJlZm9yZSwgLmZhLWJhci1jaGFydDpiZWZvcmUgeyBjb250ZW50OiBcIu+CgFwiOyB9XG5cbi5mYS10d2l0dGVyLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+CgVwiOyB9XG5cbi5mYS1mYWNlYm9vay1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvgoJcIjsgfVxuXG4uZmEtY2FtZXJhLXJldHJvOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KDXCI7IH1cblxuLmZhLWtleTpiZWZvcmUgeyBjb250ZW50OiBcIu+ChFwiOyB9XG5cbi5mYS1nZWFyczpiZWZvcmUsIC5mYS1jb2dzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KFXCI7IH1cblxuLmZhLWNvbW1lbnRzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KGXCI7IH1cblxuLmZhLXRodW1icy1vLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KHXCI7IH1cblxuLmZhLXRodW1icy1vLWRvd246YmVmb3JlIHsgY29udGVudDogXCLvgohcIjsgfVxuXG4uZmEtc3Rhci1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KJXCI7IH1cblxuLmZhLWhlYXJ0LW86YmVmb3JlIHsgY29udGVudDogXCLvgopcIjsgfVxuXG4uZmEtc2lnbi1vdXQ6YmVmb3JlIHsgY29udGVudDogXCLvgotcIjsgfVxuXG4uZmEtbGlua2VkaW4tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KMXCI7IH1cblxuLmZhLXRodW1iLXRhY2s6YmVmb3JlIHsgY29udGVudDogXCLvgo1cIjsgfVxuXG4uZmEtZXh0ZXJuYWwtbGluazpiZWZvcmUgeyBjb250ZW50OiBcIu+CjlwiOyB9XG5cbi5mYS1zaWduLWluOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KQXCI7IH1cblxuLmZhLXRyb3BoeTpiZWZvcmUgeyBjb250ZW50OiBcIu+CkVwiOyB9XG5cbi5mYS1naXRodWItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KSXCI7IH1cblxuLmZhLXVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiBcIu+Ck1wiOyB9XG5cbi5mYS1sZW1vbi1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KUXCI7IH1cblxuLmZhLXBob25lOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KVXCI7IH1cblxuLmZhLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KWXCI7IH1cblxuLmZhLWJvb2ttYXJrLW86YmVmb3JlIHsgY29udGVudDogXCLvgpdcIjsgfVxuXG4uZmEtcGhvbmUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KYXCI7IH1cblxuLmZhLXR3aXR0ZXI6YmVmb3JlIHsgY29udGVudDogXCLvgplcIjsgfVxuXG4uZmEtZmFjZWJvb2stZjpiZWZvcmUsIC5mYS1mYWNlYm9vazpiZWZvcmUgeyBjb250ZW50OiBcIu+CmlwiOyB9XG5cbi5mYS1naXRodWI6YmVmb3JlIHsgY29udGVudDogXCLvgptcIjsgfVxuXG4uZmEtdW5sb2NrOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KcXCI7IH1cblxuLmZhLWNyZWRpdC1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KdXCI7IH1cblxuLmZhLWZlZWQ6YmVmb3JlLCAuZmEtcnNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KeXCI7IH1cblxuLmZhLWhkZC1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KgXCI7IH1cblxuLmZhLWJ1bGxob3JuOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KhXCI7IH1cblxuLmZhLWJlbGw6YmVmb3JlIHsgY29udGVudDogXCLvg7NcIjsgfVxuXG4uZmEtY2VydGlmaWNhdGU6YmVmb3JlIHsgY29udGVudDogXCLvgqNcIjsgfVxuXG4uZmEtaGFuZC1vLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KkXCI7IH1cblxuLmZhLWhhbmQtby1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KlXCI7IH1cblxuLmZhLWhhbmQtby11cDpiZWZvcmUgeyBjb250ZW50OiBcIu+CplwiOyB9XG5cbi5mYS1oYW5kLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIu+Cp1wiOyB9XG5cbi5mYS1hcnJvdy1jaXJjbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIu+CqFwiOyB9XG5cbi5mYS1hcnJvdy1jaXJjbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCLvgqlcIjsgfVxuXG4uZmEtYXJyb3ctY2lyY2xlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KqXCI7IH1cblxuLmZhLWFycm93LWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KrXCI7IH1cblxuLmZhLWdsb2JlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KsXCI7IH1cblxuLmZhLXdyZW5jaDpiZWZvcmUgeyBjb250ZW50OiBcIu+CrVwiOyB9XG5cbi5mYS10YXNrczpiZWZvcmUgeyBjb250ZW50OiBcIu+CrlwiOyB9XG5cbi5mYS1maWx0ZXI6YmVmb3JlIHsgY29udGVudDogXCLvgrBcIjsgfVxuXG4uZmEtYnJpZWZjYXNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KxXCI7IH1cblxuLmZhLWFycm93cy1hbHQ6YmVmb3JlIHsgY29udGVudDogXCLvgrJcIjsgfVxuXG4uZmEtZ3JvdXA6YmVmb3JlLCAuZmEtdXNlcnM6YmVmb3JlIHsgY29udGVudDogXCLvg4BcIjsgfVxuXG4uZmEtY2hhaW46YmVmb3JlLCAuZmEtbGluazpiZWZvcmUgeyBjb250ZW50OiBcIu+DgVwiOyB9XG5cbi5mYS1jbG91ZDpiZWZvcmUgeyBjb250ZW50OiBcIu+DglwiOyB9XG5cbi5mYS1mbGFzazpiZWZvcmUgeyBjb250ZW50OiBcIu+Dg1wiOyB9XG5cbi5mYS1jdXQ6YmVmb3JlLCAuZmEtc2Npc3NvcnM6YmVmb3JlIHsgY29udGVudDogXCLvg4RcIjsgfVxuXG4uZmEtY29weTpiZWZvcmUsIC5mYS1maWxlcy1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OFXCI7IH1cblxuLmZhLXBhcGVyY2xpcDpiZWZvcmUgeyBjb250ZW50OiBcIu+DhlwiOyB9XG5cbi5mYS1zYXZlOmJlZm9yZSwgLmZhLWZsb3BweS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OHXCI7IH1cblxuLmZhLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+DiFwiOyB9XG5cbi5mYS1uYXZpY29uOmJlZm9yZSwgLmZhLXJlb3JkZXI6YmVmb3JlLCAuZmEtYmFyczpiZWZvcmUgeyBjb250ZW50OiBcIu+DiVwiOyB9XG5cbi5mYS1saXN0LXVsOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OKXCI7IH1cblxuLmZhLWxpc3Qtb2w6YmVmb3JlIHsgY29udGVudDogXCLvg4tcIjsgfVxuXG4uZmEtc3RyaWtldGhyb3VnaDpiZWZvcmUgeyBjb250ZW50OiBcIu+DjFwiOyB9XG5cbi5mYS11bmRlcmxpbmU6YmVmb3JlIHsgY29udGVudDogXCLvg41cIjsgfVxuXG4uZmEtdGFibGU6YmVmb3JlIHsgY29udGVudDogXCLvg45cIjsgfVxuXG4uZmEtbWFnaWM6YmVmb3JlIHsgY29udGVudDogXCLvg5BcIjsgfVxuXG4uZmEtdHJ1Y2s6YmVmb3JlIHsgY29udGVudDogXCLvg5FcIjsgfVxuXG4uZmEtcGludGVyZXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OSXCI7IH1cblxuLmZhLXBpbnRlcmVzdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvg5NcIjsgfVxuXG4uZmEtZ29vZ2xlLXBsdXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OUXCI7IH1cblxuLmZhLWdvb2dsZS1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OVXCI7IH1cblxuLmZhLW1vbmV5OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OWXCI7IH1cblxuLmZhLWNhcmV0LWRvd246YmVmb3JlIHsgY29udGVudDogXCLvg5dcIjsgfVxuXG4uZmEtY2FyZXQtdXA6YmVmb3JlIHsgY29udGVudDogXCLvg5hcIjsgfVxuXG4uZmEtY2FyZXQtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIu+DmVwiOyB9XG5cbi5mYS1jYXJldC1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIu+DmlwiOyB9XG5cbi5mYS1jb2x1bW5zOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ObXCI7IH1cblxuLmZhLXVuc29ydGVkOmJlZm9yZSwgLmZhLXNvcnQ6YmVmb3JlIHsgY29udGVudDogXCLvg5xcIjsgfVxuXG4uZmEtc29ydC1kb3duOmJlZm9yZSwgLmZhLXNvcnQtZGVzYzpiZWZvcmUgeyBjb250ZW50OiBcIu+DnVwiOyB9XG5cbi5mYS1zb3J0LXVwOmJlZm9yZSwgLmZhLXNvcnQtYXNjOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OeXCI7IH1cblxuLmZhLWVudmVsb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OgXCI7IH1cblxuLmZhLWxpbmtlZGluOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OhXCI7IH1cblxuLmZhLXJvdGF0ZS1sZWZ0OmJlZm9yZSwgLmZhLXVuZG86YmVmb3JlIHsgY29udGVudDogXCLvg6JcIjsgfVxuXG4uZmEtbGVnYWw6YmVmb3JlLCAuZmEtZ2F2ZWw6YmVmb3JlIHsgY29udGVudDogXCLvg6NcIjsgfVxuXG4uZmEtZGFzaGJvYXJkOmJlZm9yZSwgLmZhLXRhY2hvbWV0ZXI6YmVmb3JlIHsgY29udGVudDogXCLvg6RcIjsgfVxuXG4uZmEtY29tbWVudC1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OlXCI7IH1cblxuLmZhLWNvbW1lbnRzLW86YmVmb3JlIHsgY29udGVudDogXCLvg6ZcIjsgfVxuXG4uZmEtZmxhc2g6YmVmb3JlLCAuZmEtYm9sdDpiZWZvcmUgeyBjb250ZW50OiBcIu+Dp1wiOyB9XG5cbi5mYS1zaXRlbWFwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OoXCI7IH1cblxuLmZhLXVtYnJlbGxhOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OpXCI7IH1cblxuLmZhLXBhc3RlOmJlZm9yZSwgLmZhLWNsaXBib2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIu+DqlwiOyB9XG5cbi5mYS1saWdodGJ1bGItbzpiZWZvcmUgeyBjb250ZW50OiBcIu+Dq1wiOyB9XG5cbi5mYS1leGNoYW5nZTpiZWZvcmUgeyBjb250ZW50OiBcIu+DrFwiOyB9XG5cbi5mYS1jbG91ZC1kb3dubG9hZDpiZWZvcmUgeyBjb250ZW50OiBcIu+DrVwiOyB9XG5cbi5mYS1jbG91ZC11cGxvYWQ6YmVmb3JlIHsgY29udGVudDogXCLvg65cIjsgfVxuXG4uZmEtdXNlci1tZDpiZWZvcmUgeyBjb250ZW50OiBcIu+DsFwiOyB9XG5cbi5mYS1zdGV0aG9zY29wZTpiZWZvcmUgeyBjb250ZW50OiBcIu+DsVwiOyB9XG5cbi5mYS1zdWl0Y2FzZTpiZWZvcmUgeyBjb250ZW50OiBcIu+DslwiOyB9XG5cbi5mYS1iZWxsLW86YmVmb3JlIHsgY29udGVudDogXCLvgqJcIjsgfVxuXG4uZmEtY29mZmVlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74O0XCI7IH1cblxuLmZhLWN1dGxlcnk6YmVmb3JlIHsgY29udGVudDogXCLvg7VcIjsgfVxuXG4uZmEtZmlsZS10ZXh0LW86YmVmb3JlIHsgY29udGVudDogXCLvg7ZcIjsgfVxuXG4uZmEtYnVpbGRpbmctbzpiZWZvcmUgeyBjb250ZW50OiBcIu+Dt1wiOyB9XG5cbi5mYS1ob3NwaXRhbC1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74O4XCI7IH1cblxuLmZhLWFtYnVsYW5jZTpiZWZvcmUgeyBjb250ZW50OiBcIu+DuVwiOyB9XG5cbi5mYS1tZWRraXQ6YmVmb3JlIHsgY29udGVudDogXCLvg7pcIjsgfVxuXG4uZmEtZmlnaHRlci1qZXQ6YmVmb3JlIHsgY29udGVudDogXCLvg7tcIjsgfVxuXG4uZmEtYmVlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+DvFwiOyB9XG5cbi5mYS1oLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+DvVwiOyB9XG5cbi5mYS1wbHVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+DvlwiOyB9XG5cbi5mYS1hbmdsZS1kb3VibGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIu+EgFwiOyB9XG5cbi5mYS1hbmdsZS1kb3VibGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCLvhIFcIjsgfVxuXG4uZmEtYW5nbGUtZG91YmxlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SCXCI7IH1cblxuLmZhLWFuZ2xlLWRvdWJsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SDXCI7IH1cblxuLmZhLWFuZ2xlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogXCLvhIRcIjsgfVxuXG4uZmEtYW5nbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCLvhIVcIjsgfVxuXG4uZmEtYW5nbGUtdXA6YmVmb3JlIHsgY29udGVudDogXCLvhIZcIjsgfVxuXG4uZmEtYW5nbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIu+Eh1wiOyB9XG5cbi5mYS1kZXNrdG9wOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SIXCI7IH1cblxuLmZhLWxhcHRvcDpiZWZvcmUgeyBjb250ZW50OiBcIu+EiVwiOyB9XG5cbi5mYS10YWJsZXQ6YmVmb3JlIHsgY29udGVudDogXCLvhIpcIjsgfVxuXG4uZmEtbW9iaWxlLXBob25lOmJlZm9yZSwgLmZhLW1vYmlsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Ei1wiOyB9XG5cbi5mYS1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+EjFwiOyB9XG5cbi5mYS1xdW90ZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SNXCI7IH1cblxuLmZhLXF1b3RlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SOXCI7IH1cblxuLmZhLXNwaW5uZXI6YmVmb3JlIHsgY29udGVudDogXCLvhJBcIjsgfVxuXG4uZmEtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SRXCI7IH1cblxuLmZhLW1haWwtcmVwbHk6YmVmb3JlLCAuZmEtcmVwbHk6YmVmb3JlIHsgY29udGVudDogXCLvhJJcIjsgfVxuXG4uZmEtZ2l0aHViLWFsdDpiZWZvcmUgeyBjb250ZW50OiBcIu+Ek1wiOyB9XG5cbi5mYS1mb2xkZXItbzpiZWZvcmUgeyBjb250ZW50OiBcIu+ElFwiOyB9XG5cbi5mYS1mb2xkZXItb3Blbi1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SVXCI7IH1cblxuLmZhLXNtaWxlLW86YmVmb3JlIHsgY29udGVudDogXCLvhJhcIjsgfVxuXG4uZmEtZnJvd24tbzpiZWZvcmUgeyBjb250ZW50OiBcIu+EmVwiOyB9XG5cbi5mYS1tZWgtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+EmlwiOyB9XG5cbi5mYS1nYW1lcGFkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SbXCI7IH1cblxuLmZhLWtleWJvYXJkLW86YmVmb3JlIHsgY29udGVudDogXCLvhJxcIjsgfVxuXG4uZmEtZmxhZy1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SdXCI7IH1cblxuLmZhLWZsYWctY2hlY2tlcmVkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SeXCI7IH1cblxuLmZhLXRlcm1pbmFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SgXCI7IH1cblxuLmZhLWNvZGU6YmVmb3JlIHsgY29udGVudDogXCLvhKFcIjsgfVxuXG4uZmEtbWFpbC1yZXBseS1hbGw6YmVmb3JlLCAuZmEtcmVwbHktYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SiXCI7IH1cblxuLmZhLXN0YXItaGFsZi1lbXB0eTpiZWZvcmUsIC5mYS1zdGFyLWhhbGYtZnVsbDpiZWZvcmUsIC5mYS1zdGFyLWhhbGYtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+Eo1wiOyB9XG5cbi5mYS1sb2NhdGlvbi1hcnJvdzpiZWZvcmUgeyBjb250ZW50OiBcIu+EpFwiOyB9XG5cbi5mYS1jcm9wOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SlXCI7IH1cblxuLmZhLWNvZGUtZm9yazpiZWZvcmUgeyBjb250ZW50OiBcIu+EplwiOyB9XG5cbi5mYS11bmxpbms6YmVmb3JlLCAuZmEtY2hhaW4tYnJva2VuOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SnXCI7IH1cblxuLmZhLXF1ZXN0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SoXCI7IH1cblxuLmZhLWluZm86YmVmb3JlIHsgY29udGVudDogXCLvhKlcIjsgfVxuXG4uZmEtZXhjbGFtYXRpb246YmVmb3JlIHsgY29udGVudDogXCLvhKpcIjsgfVxuXG4uZmEtc3VwZXJzY3JpcHQ6YmVmb3JlIHsgY29udGVudDogXCLvhKtcIjsgfVxuXG4uZmEtc3Vic2NyaXB0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SsXCI7IH1cblxuLmZhLWVyYXNlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+ErVwiOyB9XG5cbi5mYS1wdXp6bGUtcGllY2U6YmVmb3JlIHsgY29udGVudDogXCLvhK5cIjsgfVxuXG4uZmEtbWljcm9waG9uZTpiZWZvcmUgeyBjb250ZW50OiBcIu+EsFwiOyB9XG5cbi5mYS1taWNyb3Bob25lLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SxXCI7IH1cblxuLmZhLXNoaWVsZDpiZWZvcmUgeyBjb250ZW50OiBcIu+EslwiOyB9XG5cbi5mYS1jYWxlbmRhci1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SzXCI7IH1cblxuLmZhLWZpcmUtZXh0aW5ndWlzaGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74S0XCI7IH1cblxuLmZhLXJvY2tldDpiZWZvcmUgeyBjb250ZW50OiBcIu+EtVwiOyB9XG5cbi5mYS1tYXhjZG46YmVmb3JlIHsgY29udGVudDogXCLvhLZcIjsgfVxuXG4uZmEtY2hldnJvbi1jaXJjbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIu+Et1wiOyB9XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIu+EuFwiOyB9XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiBcIu+EuVwiOyB9XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74S6XCI7IH1cblxuLmZhLWh0bWw1OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74S7XCI7IH1cblxuLmZhLWNzczM6YmVmb3JlIHsgY29udGVudDogXCLvhLxcIjsgfVxuXG4uZmEtYW5jaG9yOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74S9XCI7IH1cblxuLmZhLXVubG9jay1hbHQ6YmVmb3JlIHsgY29udGVudDogXCLvhL5cIjsgfVxuXG4uZmEtYnVsbHNleWU6YmVmb3JlIHsgY29udGVudDogXCLvhYBcIjsgfVxuXG4uZmEtZWxsaXBzaXMtaDpiZWZvcmUgeyBjb250ZW50OiBcIu+FgVwiOyB9XG5cbi5mYS1lbGxpcHNpcy12OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WCXCI7IH1cblxuLmZhLXJzcy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvhYNcIjsgfVxuXG4uZmEtcGxheS1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCLvhYRcIjsgfVxuXG4uZmEtdGlja2V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WFXCI7IH1cblxuLmZhLW1pbnVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+FhlwiOyB9XG5cbi5mYS1taW51cy1zcXVhcmUtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+Fh1wiOyB9XG5cbi5mYS1sZXZlbC11cDpiZWZvcmUgeyBjb250ZW50OiBcIu+FiFwiOyB9XG5cbi5mYS1sZXZlbC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WJXCI7IH1cblxuLmZhLWNoZWNrLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+FilwiOyB9XG5cbi5mYS1wZW5jaWwtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WLXCI7IH1cblxuLmZhLWV4dGVybmFsLWxpbmstc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WMXCI7IH1cblxuLmZhLXNoYXJlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+FjVwiOyB9XG5cbi5mYS1jb21wYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WOXCI7IH1cblxuLmZhLXRvZ2dsZS1kb3duOmJlZm9yZSwgLmZhLWNhcmV0LXNxdWFyZS1vLWRvd246YmVmb3JlIHsgY29udGVudDogXCLvhZBcIjsgfVxuXG4uZmEtdG9nZ2xlLXVwOmJlZm9yZSwgLmZhLWNhcmV0LXNxdWFyZS1vLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WRXCI7IH1cblxuLmZhLXRvZ2dsZS1yaWdodDpiZWZvcmUsIC5mYS1jYXJldC1zcXVhcmUtby1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIu+FklwiOyB9XG5cbi5mYS1ldXJvOmJlZm9yZSwgLmZhLWV1cjpiZWZvcmUgeyBjb250ZW50OiBcIu+Fk1wiOyB9XG5cbi5mYS1nYnA6YmVmb3JlIHsgY29udGVudDogXCLvhZRcIjsgfVxuXG4uZmEtZG9sbGFyOmJlZm9yZSwgLmZhLXVzZDpiZWZvcmUgeyBjb250ZW50OiBcIu+FlVwiOyB9XG5cbi5mYS1ydXBlZTpiZWZvcmUsIC5mYS1pbnI6YmVmb3JlIHsgY29udGVudDogXCLvhZZcIjsgfVxuXG4uZmEtY255OmJlZm9yZSwgLmZhLXJtYjpiZWZvcmUsIC5mYS15ZW46YmVmb3JlLCAuZmEtanB5OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WXXCI7IH1cblxuLmZhLXJ1YmxlOmJlZm9yZSwgLmZhLXJvdWJsZTpiZWZvcmUsIC5mYS1ydWI6YmVmb3JlIHsgY29udGVudDogXCLvhZhcIjsgfVxuXG4uZmEtd29uOmJlZm9yZSwgLmZhLWtydzpiZWZvcmUgeyBjb250ZW50OiBcIu+FmVwiOyB9XG5cbi5mYS1iaXRjb2luOmJlZm9yZSwgLmZhLWJ0YzpiZWZvcmUgeyBjb250ZW50OiBcIu+FmlwiOyB9XG5cbi5mYS1maWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WbXCI7IH1cblxuLmZhLWZpbGUtdGV4dDpiZWZvcmUgeyBjb250ZW50OiBcIu+FnFwiOyB9XG5cbi5mYS1zb3J0LWFscGhhLWFzYzpiZWZvcmUgeyBjb250ZW50OiBcIu+FnVwiOyB9XG5cbi5mYS1zb3J0LWFscGhhLWRlc2M6YmVmb3JlIHsgY29udGVudDogXCLvhZ5cIjsgfVxuXG4uZmEtc29ydC1hbW91bnQtYXNjOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WgXCI7IH1cblxuLmZhLXNvcnQtYW1vdW50LWRlc2M6YmVmb3JlIHsgY29udGVudDogXCLvhaFcIjsgfVxuXG4uZmEtc29ydC1udW1lcmljLWFzYzpiZWZvcmUgeyBjb250ZW50OiBcIu+FolwiOyB9XG5cbi5mYS1zb3J0LW51bWVyaWMtZGVzYzpiZWZvcmUgeyBjb250ZW50OiBcIu+Fo1wiOyB9XG5cbi5mYS10aHVtYnMtdXA6YmVmb3JlIHsgY29udGVudDogXCLvhaRcIjsgfVxuXG4uZmEtdGh1bWJzLWRvd246YmVmb3JlIHsgY29udGVudDogXCLvhaVcIjsgfVxuXG4uZmEteW91dHViZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvhaZcIjsgfVxuXG4uZmEteW91dHViZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Fp1wiOyB9XG5cbi5mYS14aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WoXCI7IH1cblxuLmZhLXhpbmctc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WpXCI7IH1cblxuLmZhLXlvdXR1YmUtcGxheTpiZWZvcmUgeyBjb250ZW50OiBcIu+FqlwiOyB9XG5cbi5mYS1kcm9wYm94OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WrXCI7IH1cblxuLmZhLXN0YWNrLW92ZXJmbG93OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WsXCI7IH1cblxuLmZhLWluc3RhZ3JhbTpiZWZvcmUgeyBjb250ZW50OiBcIu+FrVwiOyB9XG5cbi5mYS1mbGlja3I6YmVmb3JlIHsgY29udGVudDogXCLvha5cIjsgfVxuXG4uZmEtYWRuOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WwXCI7IH1cblxuLmZhLWJpdGJ1Y2tldDpiZWZvcmUgeyBjb250ZW50OiBcIu+FsVwiOyB9XG5cbi5mYS1iaXRidWNrZXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WyXCI7IH1cblxuLmZhLXR1bWJscjpiZWZvcmUgeyBjb250ZW50OiBcIu+Fs1wiOyB9XG5cbi5mYS10dW1ibHItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74W0XCI7IH1cblxuLmZhLWxvbmctYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIu+FtVwiOyB9XG5cbi5mYS1sb25nLWFycm93LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74W2XCI7IH1cblxuLmZhLWxvbmctYXJyb3ctbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIu+Ft1wiOyB9XG5cbi5mYS1sb25nLWFycm93LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74W4XCI7IH1cblxuLmZhLWFwcGxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74W5XCI7IH1cblxuLmZhLXdpbmRvd3M6YmVmb3JlIHsgY29udGVudDogXCLvhbpcIjsgfVxuXG4uZmEtYW5kcm9pZDpiZWZvcmUgeyBjb250ZW50OiBcIu+Fu1wiOyB9XG5cbi5mYS1saW51eDpiZWZvcmUgeyBjb250ZW50OiBcIu+FvFwiOyB9XG5cbi5mYS1kcmliYmJsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+FvVwiOyB9XG5cbi5mYS1za3lwZTpiZWZvcmUgeyBjb250ZW50OiBcIu+FvlwiOyB9XG5cbi5mYS1mb3Vyc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aAXCI7IH1cblxuLmZhLXRyZWxsbzpiZWZvcmUgeyBjb250ZW50OiBcIu+GgVwiOyB9XG5cbi5mYS1mZW1hbGU6YmVmb3JlIHsgY29udGVudDogXCLvhoJcIjsgfVxuXG4uZmEtbWFsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Gg1wiOyB9XG5cbi5mYS1naXR0aXA6YmVmb3JlLCAuZmEtZ3JhdGlwYXk6YmVmb3JlIHsgY29udGVudDogXCLvhoRcIjsgfVxuXG4uZmEtc3VuLW86YmVmb3JlIHsgY29udGVudDogXCLvhoVcIjsgfVxuXG4uZmEtbW9vbi1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aGXCI7IH1cblxuLmZhLWFyY2hpdmU6YmVmb3JlIHsgY29udGVudDogXCLvhodcIjsgfVxuXG4uZmEtYnVnOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aIXCI7IH1cblxuLmZhLXZrOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aJXCI7IH1cblxuLmZhLXdlaWJvOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aKXCI7IH1cblxuLmZhLXJlbnJlbjpiZWZvcmUgeyBjb250ZW50OiBcIu+Gi1wiOyB9XG5cbi5mYS1wYWdlbGluZXM6YmVmb3JlIHsgY29udGVudDogXCLvhoxcIjsgfVxuXG4uZmEtc3RhY2stZXhjaGFuZ2U6YmVmb3JlIHsgY29udGVudDogXCLvho1cIjsgfVxuXG4uZmEtYXJyb3ctY2lyY2xlLW8tcmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCLvho5cIjsgfVxuXG4uZmEtYXJyb3ctY2lyY2xlLW8tbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIu+GkFwiOyB9XG5cbi5mYS10b2dnbGUtbGVmdDpiZWZvcmUsIC5mYS1jYXJldC1zcXVhcmUtby1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aRXCI7IH1cblxuLmZhLWRvdC1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+GklwiOyB9XG5cbi5mYS13aGVlbGNoYWlyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aTXCI7IH1cblxuLmZhLXZpbWVvLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+GlFwiOyB9XG5cbi5mYS10dXJraXNoLWxpcmE6YmVmb3JlLCAuZmEtdHJ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aVXCI7IH1cblxuLmZhLXBsdXMtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogXCLvhpZcIjsgfVxuXG4uZmEtc3BhY2Utc2h1dHRsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Gl1wiOyB9XG5cbi5mYS1zbGFjazpiZWZvcmUgeyBjb250ZW50OiBcIu+GmFwiOyB9XG5cbi5mYS1lbnZlbG9wZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvhplcIjsgfVxuXG4uZmEtd29yZHByZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aaXCI7IH1cblxuLmZhLW9wZW5pZDpiZWZvcmUgeyBjb250ZW50OiBcIu+Gm1wiOyB9XG5cbi5mYS1pbnN0aXR1dGlvbjpiZWZvcmUsIC5mYS1iYW5rOmJlZm9yZSwgLmZhLXVuaXZlcnNpdHk6YmVmb3JlIHsgY29udGVudDogXCLvhpxcIjsgfVxuXG4uZmEtbW9ydGFyLWJvYXJkOmJlZm9yZSwgLmZhLWdyYWR1YXRpb24tY2FwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74adXCI7IH1cblxuLmZhLXlhaG9vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aeXCI7IH1cblxuLmZhLWdvb2dsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+GoFwiOyB9XG5cbi5mYS1yZWRkaXQ6YmVmb3JlIHsgY29udGVudDogXCLvhqFcIjsgfVxuXG4uZmEtcmVkZGl0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+GolwiOyB9XG5cbi5mYS1zdHVtYmxldXBvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCLvhqNcIjsgfVxuXG4uZmEtc3R1bWJsZXVwb246YmVmb3JlIHsgY29udGVudDogXCLvhqRcIjsgfVxuXG4uZmEtZGVsaWNpb3VzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74alXCI7IH1cblxuLmZhLWRpZ2c6YmVmb3JlIHsgY29udGVudDogXCLvhqZcIjsgfVxuXG4uZmEtcGllZC1waXBlci1wcDpiZWZvcmUgeyBjb250ZW50OiBcIu+Gp1wiOyB9XG5cbi5mYS1waWVkLXBpcGVyLWFsdDpiZWZvcmUgeyBjb250ZW50OiBcIu+GqFwiOyB9XG5cbi5mYS1kcnVwYWw6YmVmb3JlIHsgY29udGVudDogXCLvhqlcIjsgfVxuXG4uZmEtam9vbWxhOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aqXCI7IH1cblxuLmZhLWxhbmd1YWdlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74arXCI7IH1cblxuLmZhLWZheDpiZWZvcmUgeyBjb250ZW50OiBcIu+GrFwiOyB9XG5cbi5mYS1idWlsZGluZzpiZWZvcmUgeyBjb250ZW50OiBcIu+GrVwiOyB9XG5cbi5mYS1jaGlsZDpiZWZvcmUgeyBjb250ZW50OiBcIu+GrlwiOyB9XG5cbi5mYS1wYXc6YmVmb3JlIHsgY29udGVudDogXCLvhrBcIjsgfVxuXG4uZmEtc3Bvb246YmVmb3JlIHsgY29udGVudDogXCLvhrFcIjsgfVxuXG4uZmEtY3ViZTpiZWZvcmUgeyBjb250ZW50OiBcIu+GslwiOyB9XG5cbi5mYS1jdWJlczpiZWZvcmUgeyBjb250ZW50OiBcIu+Gs1wiOyB9XG5cbi5mYS1iZWhhbmNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74a0XCI7IH1cblxuLmZhLWJlaGFuY2Utc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74a1XCI7IH1cblxuLmZhLXN0ZWFtOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74a2XCI7IH1cblxuLmZhLXN0ZWFtLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Gt1wiOyB9XG5cbi5mYS1yZWN5Y2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74a4XCI7IH1cblxuLmZhLWF1dG9tb2JpbGU6YmVmb3JlLCAuZmEtY2FyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74a5XCI7IH1cblxuLmZhLWNhYjpiZWZvcmUsIC5mYS10YXhpOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74a6XCI7IH1cblxuLmZhLXRyZWU6YmVmb3JlIHsgY29udGVudDogXCLvhrtcIjsgfVxuXG4uZmEtc3BvdGlmeTpiZWZvcmUgeyBjb250ZW50OiBcIu+GvFwiOyB9XG5cbi5mYS1kZXZpYW50YXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74a9XCI7IH1cblxuLmZhLXNvdW5kY2xvdWQ6YmVmb3JlIHsgY29udGVudDogXCLvhr5cIjsgfVxuXG4uZmEtZGF0YWJhc2U6YmVmb3JlIHsgY29udGVudDogXCLvh4BcIjsgfVxuXG4uZmEtZmlsZS1wZGYtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+HgVwiOyB9XG5cbi5mYS1maWxlLXdvcmQtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+HglwiOyB9XG5cbi5mYS1maWxlLWV4Y2VsLW86YmVmb3JlIHsgY29udGVudDogXCLvh4NcIjsgfVxuXG4uZmEtZmlsZS1wb3dlcnBvaW50LW86YmVmb3JlIHsgY29udGVudDogXCLvh4RcIjsgfVxuXG4uZmEtZmlsZS1waG90by1vOmJlZm9yZSwgLmZhLWZpbGUtcGljdHVyZS1vOmJlZm9yZSwgLmZhLWZpbGUtaW1hZ2UtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+HhVwiOyB9XG5cbi5mYS1maWxlLXppcC1vOmJlZm9yZSwgLmZhLWZpbGUtYXJjaGl2ZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eGXCI7IH1cblxuLmZhLWZpbGUtc291bmQtbzpiZWZvcmUsIC5mYS1maWxlLWF1ZGlvLW86YmVmb3JlIHsgY29udGVudDogXCLvh4dcIjsgfVxuXG4uZmEtZmlsZS1tb3ZpZS1vOmJlZm9yZSwgLmZhLWZpbGUtdmlkZW8tbzpiZWZvcmUgeyBjb250ZW50OiBcIu+HiFwiOyB9XG5cbi5mYS1maWxlLWNvZGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+HiVwiOyB9XG5cbi5mYS12aW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eKXCI7IH1cblxuLmZhLWNvZGVwZW46YmVmb3JlIHsgY29udGVudDogXCLvh4tcIjsgfVxuXG4uZmEtanNmaWRkbGU6YmVmb3JlIHsgY29udGVudDogXCLvh4xcIjsgfVxuXG4uZmEtbGlmZS1ib3V5OmJlZm9yZSwgLmZhLWxpZmUtYnVveTpiZWZvcmUsIC5mYS1saWZlLXNhdmVyOmJlZm9yZSwgLmZhLXN1cHBvcnQ6YmVmb3JlLCAuZmEtbGlmZS1yaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eNXCI7IH1cblxuLmZhLWNpcmNsZS1vLW5vdGNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eOXCI7IH1cblxuLmZhLXJhOmJlZm9yZSwgLmZhLXJlc2lzdGFuY2U6YmVmb3JlLCAuZmEtcmViZWw6YmVmb3JlIHsgY29udGVudDogXCLvh5BcIjsgfVxuXG4uZmEtZ2U6YmVmb3JlLCAuZmEtZW1waXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eRXCI7IH1cblxuLmZhLWdpdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvh5JcIjsgfVxuXG4uZmEtZ2l0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eTXCI7IH1cblxuLmZhLXktY29tYmluYXRvci1zcXVhcmU6YmVmb3JlLCAuZmEteWMtc3F1YXJlOmJlZm9yZSwgLmZhLWhhY2tlci1uZXdzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eUXCI7IH1cblxuLmZhLXRlbmNlbnQtd2VpYm86YmVmb3JlIHsgY29udGVudDogXCLvh5VcIjsgfVxuXG4uZmEtcXE6YmVmb3JlIHsgY29udGVudDogXCLvh5ZcIjsgfVxuXG4uZmEtd2VjaGF0OmJlZm9yZSwgLmZhLXdlaXhpbjpiZWZvcmUgeyBjb250ZW50OiBcIu+Hl1wiOyB9XG5cbi5mYS1zZW5kOmJlZm9yZSwgLmZhLXBhcGVyLXBsYW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eYXCI7IH1cblxuLmZhLXNlbmQtbzpiZWZvcmUsIC5mYS1wYXBlci1wbGFuZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eZXCI7IH1cblxuLmZhLWhpc3Rvcnk6YmVmb3JlIHsgY29udGVudDogXCLvh5pcIjsgfVxuXG4uZmEtY2lyY2xlLXRoaW46YmVmb3JlIHsgY29udGVudDogXCLvh5tcIjsgfVxuXG4uZmEtaGVhZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ecXCI7IH1cblxuLmZhLXBhcmFncmFwaDpiZWZvcmUgeyBjb250ZW50OiBcIu+HnVwiOyB9XG5cbi5mYS1zbGlkZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eeXCI7IH1cblxuLmZhLXNoYXJlLWFsdDpiZWZvcmUgeyBjb250ZW50OiBcIu+HoFwiOyB9XG5cbi5mYS1zaGFyZS1hbHQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ehXCI7IH1cblxuLmZhLWJvbWI6YmVmb3JlIHsgY29udGVudDogXCLvh6JcIjsgfVxuXG4uZmEtc29jY2VyLWJhbGwtbzpiZWZvcmUsIC5mYS1mdXRib2wtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+Ho1wiOyB9XG5cbi5mYS10dHk6YmVmb3JlIHsgY29udGVudDogXCLvh6RcIjsgfVxuXG4uZmEtYmlub2N1bGFyczpiZWZvcmUgeyBjb250ZW50OiBcIu+HpVwiOyB9XG5cbi5mYS1wbHVnOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74emXCI7IH1cblxuLmZhLXNsaWRlc2hhcmU6YmVmb3JlIHsgY29udGVudDogXCLvh6dcIjsgfVxuXG4uZmEtdHdpdGNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eoXCI7IH1cblxuLmZhLXllbHA6YmVmb3JlIHsgY29udGVudDogXCLvh6lcIjsgfVxuXG4uZmEtbmV3c3BhcGVyLW86YmVmb3JlIHsgY29udGVudDogXCLvh6pcIjsgfVxuXG4uZmEtd2lmaTpiZWZvcmUgeyBjb250ZW50OiBcIu+Hq1wiOyB9XG5cbi5mYS1jYWxjdWxhdG9yOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74esXCI7IH1cblxuLmZhLXBheXBhbDpiZWZvcmUgeyBjb250ZW50OiBcIu+HrVwiOyB9XG5cbi5mYS1nb29nbGUtd2FsbGV0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74euXCI7IH1cblxuLmZhLWNjLXZpc2E6YmVmb3JlIHsgY29udGVudDogXCLvh7BcIjsgfVxuXG4uZmEtY2MtbWFzdGVyY2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIu+HsVwiOyB9XG5cbi5mYS1jYy1kaXNjb3ZlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+HslwiOyB9XG5cbi5mYS1jYy1hbWV4OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ezXCI7IH1cblxuLmZhLWNjLXBheXBhbDpiZWZvcmUgeyBjb250ZW50OiBcIu+HtFwiOyB9XG5cbi5mYS1jYy1zdHJpcGU6YmVmb3JlIHsgY29udGVudDogXCLvh7VcIjsgfVxuXG4uZmEtYmVsbC1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBcIu+HtlwiOyB9XG5cbi5mYS1iZWxsLXNsYXNoLW86YmVmb3JlIHsgY29udGVudDogXCLvh7dcIjsgfVxuXG4uZmEtdHJhc2g6YmVmb3JlIHsgY29udGVudDogXCLvh7hcIjsgfVxuXG4uZmEtY29weXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74e5XCI7IH1cblxuLmZhLWF0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74e6XCI7IH1cblxuLmZhLWV5ZWRyb3BwZXI6YmVmb3JlIHsgY29udGVudDogXCLvh7tcIjsgfVxuXG4uZmEtcGFpbnQtYnJ1c2g6YmVmb3JlIHsgY29udGVudDogXCLvh7xcIjsgfVxuXG4uZmEtYmlydGhkYXktY2FrZTpiZWZvcmUgeyBjb250ZW50OiBcIu+HvVwiOyB9XG5cbi5mYS1hcmVhLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74e+XCI7IH1cblxuLmZhLXBpZS1jaGFydDpiZWZvcmUgeyBjb250ZW50OiBcIu+IgFwiOyB9XG5cbi5mYS1saW5lLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iBXCI7IH1cblxuLmZhLWxhc3RmbTpiZWZvcmUgeyBjb250ZW50OiBcIu+IglwiOyB9XG5cbi5mYS1sYXN0Zm0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iDXCI7IH1cblxuLmZhLXRvZ2dsZS1vZmY6YmVmb3JlIHsgY29udGVudDogXCLviIRcIjsgfVxuXG4uZmEtdG9nZ2xlLW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iFXCI7IH1cblxuLmZhLWJpY3ljbGU6YmVmb3JlIHsgY29udGVudDogXCLviIZcIjsgfVxuXG4uZmEtYnVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iHXCI7IH1cblxuLmZhLWlveGhvc3Q6YmVmb3JlIHsgY29udGVudDogXCLviIhcIjsgfVxuXG4uZmEtYW5nZWxsaXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iJXCI7IH1cblxuLmZhLWNjOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iKXCI7IH1cblxuLmZhLXNoZWtlbDpiZWZvcmUsIC5mYS1zaGVxZWw6YmVmb3JlLCAuZmEtaWxzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iLXCI7IH1cblxuLmZhLW1lYW5wYXRoOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iMXCI7IH1cblxuLmZhLWJ1eXNlbGxhZHM6YmVmb3JlIHsgY29udGVudDogXCLviI1cIjsgfVxuXG4uZmEtY29ubmVjdGRldmVsb3A6YmVmb3JlIHsgY29udGVudDogXCLviI5cIjsgfVxuXG4uZmEtZGFzaGN1YmU6YmVmb3JlIHsgY29udGVudDogXCLviJBcIjsgfVxuXG4uZmEtZm9ydW1iZWU6YmVmb3JlIHsgY29udGVudDogXCLviJFcIjsgfVxuXG4uZmEtbGVhbnB1YjpiZWZvcmUgeyBjb250ZW50OiBcIu+IklwiOyB9XG5cbi5mYS1zZWxsc3k6YmVmb3JlIHsgY29udGVudDogXCLviJNcIjsgfVxuXG4uZmEtc2hpcnRzaW5idWxrOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iUXCI7IH1cblxuLmZhLXNpbXBseWJ1aWx0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iVXCI7IH1cblxuLmZhLXNreWF0bGFzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iWXCI7IH1cblxuLmZhLWNhcnQtcGx1czpiZWZvcmUgeyBjb250ZW50OiBcIu+Il1wiOyB9XG5cbi5mYS1jYXJ0LWFycm93LWRvd246YmVmb3JlIHsgY29udGVudDogXCLviJhcIjsgfVxuXG4uZmEtZGlhbW9uZDpiZWZvcmUgeyBjb250ZW50OiBcIu+ImVwiOyB9XG5cbi5mYS1zaGlwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iaXCI7IH1cblxuLmZhLXVzZXItc2VjcmV0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ibXCI7IH1cblxuLmZhLW1vdG9yY3ljbGU6YmVmb3JlIHsgY29udGVudDogXCLviJxcIjsgfVxuXG4uZmEtc3RyZWV0LXZpZXc6YmVmb3JlIHsgY29udGVudDogXCLviJ1cIjsgfVxuXG4uZmEtaGVhcnRiZWF0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ieXCI7IH1cblxuLmZhLXZlbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ihXCI7IH1cblxuLmZhLW1hcnM6YmVmb3JlIHsgY29udGVudDogXCLviKJcIjsgfVxuXG4uZmEtbWVyY3VyeTpiZWZvcmUgeyBjb250ZW50OiBcIu+Io1wiOyB9XG5cbi5mYS1pbnRlcnNleDpiZWZvcmUsIC5mYS10cmFuc2dlbmRlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+IpFwiOyB9XG5cbi5mYS10cmFuc2dlbmRlci1hbHQ6YmVmb3JlIHsgY29udGVudDogXCLviKVcIjsgfVxuXG4uZmEtdmVudXMtZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74imXCI7IH1cblxuLmZhLW1hcnMtZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74inXCI7IH1cblxuLmZhLXZlbnVzLW1hcnM6YmVmb3JlIHsgY29udGVudDogXCLviKhcIjsgfVxuXG4uZmEtbWFycy1zdHJva2U6YmVmb3JlIHsgY29udGVudDogXCLviKlcIjsgfVxuXG4uZmEtbWFycy1zdHJva2UtdjpiZWZvcmUgeyBjb250ZW50OiBcIu+IqlwiOyB9XG5cbi5mYS1tYXJzLXN0cm9rZS1oOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74irXCI7IH1cblxuLmZhLW5ldXRlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+IrFwiOyB9XG5cbi5mYS1nZW5kZXJsZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74itXCI7IH1cblxuLmZhLWZhY2Vib29rLW9mZmljaWFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iwXCI7IH1cblxuLmZhLXBpbnRlcmVzdC1wOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ixXCI7IH1cblxuLmZhLXdoYXRzYXBwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iyXCI7IH1cblxuLmZhLXNlcnZlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+Is1wiOyB9XG5cbi5mYS11c2VyLXBsdXM6YmVmb3JlIHsgY29udGVudDogXCLviLRcIjsgfVxuXG4uZmEtdXNlci10aW1lczpiZWZvcmUgeyBjb250ZW50OiBcIu+ItVwiOyB9XG5cbi5mYS1ob3RlbDpiZWZvcmUsIC5mYS1iZWQ6YmVmb3JlIHsgY29udGVudDogXCLviLZcIjsgfVxuXG4uZmEtdmlhY29pbjpiZWZvcmUgeyBjb250ZW50OiBcIu+It1wiOyB9XG5cbi5mYS10cmFpbjpiZWZvcmUgeyBjb250ZW50OiBcIu+IuFwiOyB9XG5cbi5mYS1zdWJ3YXk6YmVmb3JlIHsgY29udGVudDogXCLviLlcIjsgfVxuXG4uZmEtbWVkaXVtOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74i6XCI7IH1cblxuLmZhLXljOmJlZm9yZSwgLmZhLXktY29tYmluYXRvcjpiZWZvcmUgeyBjb250ZW50OiBcIu+Iu1wiOyB9XG5cbi5mYS1vcHRpbi1tb25zdGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74i8XCI7IH1cblxuLmZhLW9wZW5jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74i9XCI7IH1cblxuLmZhLWV4cGVkaXRlZHNzbDpiZWZvcmUgeyBjb250ZW50OiBcIu+IvlwiOyB9XG5cbi5mYS1iYXR0ZXJ5LTQ6YmVmb3JlLCAuZmEtYmF0dGVyeTpiZWZvcmUsIC5mYS1iYXR0ZXJ5LWZ1bGw6YmVmb3JlIHsgY29udGVudDogXCLviYBcIjsgfVxuXG4uZmEtYmF0dGVyeS0zOmJlZm9yZSwgLmZhLWJhdHRlcnktdGhyZWUtcXVhcnRlcnM6YmVmb3JlIHsgY29udGVudDogXCLviYFcIjsgfVxuXG4uZmEtYmF0dGVyeS0yOmJlZm9yZSwgLmZhLWJhdHRlcnktaGFsZjpiZWZvcmUgeyBjb250ZW50OiBcIu+JglwiOyB9XG5cbi5mYS1iYXR0ZXJ5LTE6YmVmb3JlLCAuZmEtYmF0dGVyeS1xdWFydGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mDXCI7IH1cblxuLmZhLWJhdHRlcnktMDpiZWZvcmUsIC5mYS1iYXR0ZXJ5LWVtcHR5OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mEXCI7IH1cblxuLmZhLW1vdXNlLXBvaW50ZXI6YmVmb3JlIHsgY29udGVudDogXCLviYVcIjsgfVxuXG4uZmEtaS1jdXJzb3I6YmVmb3JlIHsgY29udGVudDogXCLviYZcIjsgfVxuXG4uZmEtb2JqZWN0LWdyb3VwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mHXCI7IH1cblxuLmZhLW9iamVjdC11bmdyb3VwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mIXCI7IH1cblxuLmZhLXN0aWNreS1ub3RlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mJXCI7IH1cblxuLmZhLXN0aWNreS1ub3RlLW86YmVmb3JlIHsgY29udGVudDogXCLviYpcIjsgfVxuXG4uZmEtY2MtamNiOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mLXCI7IH1cblxuLmZhLWNjLWRpbmVycy1jbHViOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mMXCI7IH1cblxuLmZhLWNsb25lOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mNXCI7IH1cblxuLmZhLWJhbGFuY2Utc2NhbGU6YmVmb3JlIHsgY29udGVudDogXCLviY5cIjsgfVxuXG4uZmEtaG91cmdsYXNzLW86YmVmb3JlIHsgY29udGVudDogXCLviZBcIjsgfVxuXG4uZmEtaG91cmdsYXNzLTE6YmVmb3JlLCAuZmEtaG91cmdsYXNzLXN0YXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mRXCI7IH1cblxuLmZhLWhvdXJnbGFzcy0yOmJlZm9yZSwgLmZhLWhvdXJnbGFzcy1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mSXCI7IH1cblxuLmZhLWhvdXJnbGFzcy0zOmJlZm9yZSwgLmZhLWhvdXJnbGFzcy1lbmQ6YmVmb3JlIHsgY29udGVudDogXCLviZNcIjsgfVxuXG4uZmEtaG91cmdsYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mUXCI7IH1cblxuLmZhLWhhbmQtZ3JhYi1vOmJlZm9yZSwgLmZhLWhhbmQtcm9jay1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mVXCI7IH1cblxuLmZhLWhhbmQtc3RvcC1vOmJlZm9yZSwgLmZhLWhhbmQtcGFwZXItbzpiZWZvcmUgeyBjb250ZW50OiBcIu+JllwiOyB9XG5cbi5mYS1oYW5kLXNjaXNzb3JzLW86YmVmb3JlIHsgY29udGVudDogXCLviZdcIjsgfVxuXG4uZmEtaGFuZC1saXphcmQtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+JmFwiOyB9XG5cbi5mYS1oYW5kLXNwb2NrLW86YmVmb3JlIHsgY29udGVudDogXCLviZlcIjsgfVxuXG4uZmEtaGFuZC1wb2ludGVyLW86YmVmb3JlIHsgY29udGVudDogXCLviZpcIjsgfVxuXG4uZmEtaGFuZC1wZWFjZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mbXCI7IH1cblxuLmZhLXRyYWRlbWFyazpiZWZvcmUgeyBjb250ZW50OiBcIu+JnFwiOyB9XG5cbi5mYS1yZWdpc3RlcmVkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mdXCI7IH1cblxuLmZhLWNyZWF0aXZlLWNvbW1vbnM6YmVmb3JlIHsgY29udGVudDogXCLviZ5cIjsgfVxuXG4uZmEtZ2c6YmVmb3JlIHsgY29udGVudDogXCLviaBcIjsgfVxuXG4uZmEtZ2ctY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mhXCI7IH1cblxuLmZhLXRyaXBhZHZpc29yOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74miXCI7IH1cblxuLmZhLW9kbm9rbGFzc25pa2k6YmVmb3JlIHsgY29udGVudDogXCLviaNcIjsgfVxuXG4uZmEtb2Rub2tsYXNzbmlraS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLviaRcIjsgfVxuXG4uZmEtZ2V0LXBvY2tldDpiZWZvcmUgeyBjb250ZW50OiBcIu+JpVwiOyB9XG5cbi5mYS13aWtpcGVkaWEtdzpiZWZvcmUgeyBjb250ZW50OiBcIu+JplwiOyB9XG5cbi5mYS1zYWZhcmk6YmVmb3JlIHsgY29udGVudDogXCLviadcIjsgfVxuXG4uZmEtY2hyb21lOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74moXCI7IH1cblxuLmZhLWZpcmVmb3g6YmVmb3JlIHsgY29udGVudDogXCLvialcIjsgfVxuXG4uZmEtb3BlcmE6YmVmb3JlIHsgY29udGVudDogXCLviapcIjsgfVxuXG4uZmEtaW50ZXJuZXQtZXhwbG9yZXI6YmVmb3JlIHsgY29udGVudDogXCLviatcIjsgfVxuXG4uZmEtdHY6YmVmb3JlLCAuZmEtdGVsZXZpc2lvbjpiZWZvcmUgeyBjb250ZW50OiBcIu+JrFwiOyB9XG5cbi5mYS1jb250YW86YmVmb3JlIHsgY29udGVudDogXCLvia1cIjsgfVxuXG4uZmEtNTAwcHg6YmVmb3JlIHsgY29udGVudDogXCLvia5cIjsgfVxuXG4uZmEtYW1hem9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mwXCI7IH1cblxuLmZhLWNhbGVuZGFyLXBsdXMtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+JsVwiOyB9XG5cbi5mYS1jYWxlbmRhci1taW51cy1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74myXCI7IH1cblxuLmZhLWNhbGVuZGFyLXRpbWVzLW86YmVmb3JlIHsgY29udGVudDogXCLvibNcIjsgfVxuXG4uZmEtY2FsZW5kYXItY2hlY2stbzpiZWZvcmUgeyBjb250ZW50OiBcIu+JtFwiOyB9XG5cbi5mYS1pbmR1c3RyeTpiZWZvcmUgeyBjb250ZW50OiBcIu+JtVwiOyB9XG5cbi5mYS1tYXAtcGluOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74m2XCI7IH1cblxuLmZhLW1hcC1zaWduczpiZWZvcmUgeyBjb250ZW50OiBcIu+Jt1wiOyB9XG5cbi5mYS1tYXAtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+JuFwiOyB9XG5cbi5mYS1tYXA6YmVmb3JlIHsgY29udGVudDogXCLviblcIjsgfVxuXG4uZmEtY29tbWVudGluZzpiZWZvcmUgeyBjb250ZW50OiBcIu+JulwiOyB9XG5cbi5mYS1jb21tZW50aW5nLW86YmVmb3JlIHsgY29udGVudDogXCLvibtcIjsgfVxuXG4uZmEtaG91eno6YmVmb3JlIHsgY29udGVudDogXCLvibxcIjsgfVxuXG4uZmEtdmltZW86YmVmb3JlIHsgY29udGVudDogXCLvib1cIjsgfVxuXG4uZmEtYmxhY2stdGllOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74m+XCI7IH1cblxuLmZhLWZvbnRpY29uczpiZWZvcmUgeyBjb250ZW50OiBcIu+KgFwiOyB9XG5cbi5mYS1yZWRkaXQtYWxpZW46YmVmb3JlIHsgY29udGVudDogXCLvioFcIjsgfVxuXG4uZmEtZWRnZTpiZWZvcmUgeyBjb250ZW50OiBcIu+KglwiOyB9XG5cbi5mYS1jcmVkaXQtY2FyZC1hbHQ6YmVmb3JlIHsgY29udGVudDogXCLvioNcIjsgfVxuXG4uZmEtY29kaWVwaWU6YmVmb3JlIHsgY29udGVudDogXCLvioRcIjsgfVxuXG4uZmEtbW9keDpiZWZvcmUgeyBjb250ZW50OiBcIu+KhVwiOyB9XG5cbi5mYS1mb3J0LWF3ZXNvbWU6YmVmb3JlIHsgY29udGVudDogXCLvioZcIjsgfVxuXG4uZmEtdXNiOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qHXCI7IH1cblxuLmZhLXByb2R1Y3QtaHVudDpiZWZvcmUgeyBjb250ZW50OiBcIu+KiFwiOyB9XG5cbi5mYS1taXhjbG91ZDpiZWZvcmUgeyBjb250ZW50OiBcIu+KiVwiOyB9XG5cbi5mYS1zY3JpYmQ6YmVmb3JlIHsgY29udGVudDogXCLviopcIjsgfVxuXG4uZmEtcGF1c2UtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qLXCI7IH1cblxuLmZhLXBhdXNlLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qMXCI7IH1cblxuLmZhLXN0b3AtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qNXCI7IH1cblxuLmZhLXN0b3AtY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogXCLvio5cIjsgfVxuXG4uZmEtc2hvcHBpbmctYmFnOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qQXCI7IH1cblxuLmZhLXNob3BwaW5nLWJhc2tldDpiZWZvcmUgeyBjb250ZW50OiBcIu+KkVwiOyB9XG5cbi5mYS1oYXNodGFnOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qSXCI7IH1cblxuLmZhLWJsdWV0b290aDpiZWZvcmUgeyBjb250ZW50OiBcIu+Kk1wiOyB9XG5cbi5mYS1ibHVldG9vdGgtYjpiZWZvcmUgeyBjb250ZW50OiBcIu+KlFwiOyB9XG5cbi5mYS1wZXJjZW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qVXCI7IH1cblxuLmZhLWdpdGxhYjpiZWZvcmUgeyBjb250ZW50OiBcIu+KllwiOyB9XG5cbi5mYS13cGJlZ2lubmVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qXXCI7IH1cblxuLmZhLXdwZm9ybXM6YmVmb3JlIHsgY29udGVudDogXCLviphcIjsgfVxuXG4uZmEtZW52aXJhOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qZXCI7IH1cblxuLmZhLXVuaXZlcnNhbC1hY2Nlc3M6YmVmb3JlIHsgY29udGVudDogXCLvippcIjsgfVxuXG4uZmEtd2hlZWxjaGFpci1hbHQ6YmVmb3JlIHsgY29udGVudDogXCLviptcIjsgfVxuXG4uZmEtcXVlc3Rpb24tY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogXCLvipxcIjsgfVxuXG4uZmEtYmxpbmQ6YmVmb3JlIHsgY29udGVudDogXCLvip1cIjsgfVxuXG4uZmEtYXVkaW8tZGVzY3JpcHRpb246YmVmb3JlIHsgY29udGVudDogXCLvip5cIjsgfVxuXG4uZmEtdm9sdW1lLWNvbnRyb2wtcGhvbmU6YmVmb3JlIHsgY29udGVudDogXCLviqBcIjsgfVxuXG4uZmEtYnJhaWxsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+KoVwiOyB9XG5cbi5mYS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlIHsgY29udGVudDogXCLviqJcIjsgfVxuXG4uZmEtYXNsLWludGVycHJldGluZzpiZWZvcmUsIC5mYS1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZzpiZWZvcmUgeyBjb250ZW50OiBcIu+Ko1wiOyB9XG5cbi5mYS1kZWFmbmVzczpiZWZvcmUsIC5mYS1oYXJkLW9mLWhlYXJpbmc6YmVmb3JlLCAuZmEtZGVhZjpiZWZvcmUgeyBjb250ZW50OiBcIu+KpFwiOyB9XG5cbi5mYS1nbGlkZTpiZWZvcmUgeyBjb250ZW50OiBcIu+KpVwiOyB9XG5cbi5mYS1nbGlkZS1nOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qmXCI7IH1cblxuLmZhLXNpZ25pbmc6YmVmb3JlLCAuZmEtc2lnbi1sYW5ndWFnZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Kp1wiOyB9XG5cbi5mYS1sb3ctdmlzaW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qoXCI7IH1cblxuLmZhLXZpYWRlbzpiZWZvcmUgeyBjb250ZW50OiBcIu+KqVwiOyB9XG5cbi5mYS12aWFkZW8tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qqXCI7IH1cblxuLmZhLXNuYXBjaGF0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qrXCI7IH1cblxuLmZhLXNuYXBjaGF0LWdob3N0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qsXCI7IH1cblxuLmZhLXNuYXBjaGF0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+KrVwiOyB9XG5cbi5mYS1waWVkLXBpcGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74quXCI7IH1cblxuLmZhLWZpcnN0LW9yZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qwXCI7IH1cblxuLmZhLXlvYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qxXCI7IH1cblxuLmZhLXRoZW1laXNsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+KslwiOyB9XG5cbi5mYS1nb29nbGUtcGx1cy1jaXJjbGU6YmVmb3JlLCAuZmEtZ29vZ2xlLXBsdXMtb2ZmaWNpYWw6YmVmb3JlIHsgY29udGVudDogXCLvirNcIjsgfVxuXG4uZmEtZmE6YmVmb3JlLCAuZmEtZm9udC1hd2Vzb21lOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74q0XCI7IH1cblxuLmZhLWhhbmRzaGFrZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74q1XCI7IH1cblxuLmZhLWVudmVsb3BlLW9wZW46YmVmb3JlIHsgY29udGVudDogXCLvirZcIjsgfVxuXG4uZmEtZW52ZWxvcGUtb3Blbi1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74q3XCI7IH1cblxuLmZhLWxpbm9kZTpiZWZvcmUgeyBjb250ZW50OiBcIu+KuFwiOyB9XG5cbi5mYS1hZGRyZXNzLWJvb2s6YmVmb3JlIHsgY29udGVudDogXCLvirlcIjsgfVxuXG4uZmEtYWRkcmVzcy1ib29rLW86YmVmb3JlIHsgY29udGVudDogXCLvirpcIjsgfVxuXG4uZmEtdmNhcmQ6YmVmb3JlLCAuZmEtYWRkcmVzcy1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74q7XCI7IH1cblxuLmZhLXZjYXJkLW86YmVmb3JlLCAuZmEtYWRkcmVzcy1jYXJkLW86YmVmb3JlIHsgY29udGVudDogXCLvirxcIjsgfVxuXG4uZmEtdXNlci1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCLvir1cIjsgfVxuXG4uZmEtdXNlci1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+KvlwiOyB9XG5cbi5mYS11c2VyLW86YmVmb3JlIHsgY29udGVudDogXCLvi4BcIjsgfVxuXG4uZmEtaWQtYmFkZ2U6YmVmb3JlIHsgY29udGVudDogXCLvi4FcIjsgfVxuXG4uZmEtZHJpdmVycy1saWNlbnNlOmJlZm9yZSwgLmZhLWlkLWNhcmQ6YmVmb3JlIHsgY29udGVudDogXCLvi4JcIjsgfVxuXG4uZmEtZHJpdmVycy1saWNlbnNlLW86YmVmb3JlLCAuZmEtaWQtY2FyZC1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uDXCI7IH1cblxuLmZhLXF1b3JhOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uEXCI7IH1cblxuLmZhLWZyZWUtY29kZS1jYW1wOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uFXCI7IH1cblxuLmZhLXRlbGVncmFtOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uGXCI7IH1cblxuLmZhLXRoZXJtb21ldGVyLTQ6YmVmb3JlLCAuZmEtdGhlcm1vbWV0ZXI6YmVmb3JlLCAuZmEtdGhlcm1vbWV0ZXItZnVsbDpiZWZvcmUgeyBjb250ZW50OiBcIu+Lh1wiOyB9XG5cbi5mYS10aGVybW9tZXRlci0zOmJlZm9yZSwgLmZhLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uIXCI7IH1cblxuLmZhLXRoZXJtb21ldGVyLTI6YmVmb3JlLCAuZmEtdGhlcm1vbWV0ZXItaGFsZjpiZWZvcmUgeyBjb250ZW50OiBcIu+LiVwiOyB9XG5cbi5mYS10aGVybW9tZXRlci0xOmJlZm9yZSwgLmZhLXRoZXJtb21ldGVyLXF1YXJ0ZXI6YmVmb3JlIHsgY29udGVudDogXCLvi4pcIjsgfVxuXG4uZmEtdGhlcm1vbWV0ZXItMDpiZWZvcmUsIC5mYS10aGVybW9tZXRlci1lbXB0eTpiZWZvcmUgeyBjb250ZW50OiBcIu+Li1wiOyB9XG5cbi5mYS1zaG93ZXI6YmVmb3JlIHsgY29udGVudDogXCLvi4xcIjsgfVxuXG4uZmEtYmF0aHR1YjpiZWZvcmUsIC5mYS1zMTU6YmVmb3JlLCAuZmEtYmF0aDpiZWZvcmUgeyBjb250ZW50OiBcIu+LjVwiOyB9XG5cbi5mYS1wb2RjYXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uOXCI7IH1cblxuLmZhLXdpbmRvdy1tYXhpbWl6ZTpiZWZvcmUgeyBjb250ZW50OiBcIu+LkFwiOyB9XG5cbi5mYS13aW5kb3ctbWluaW1pemU6YmVmb3JlIHsgY29udGVudDogXCLvi5FcIjsgfVxuXG4uZmEtd2luZG93LXJlc3RvcmU6YmVmb3JlIHsgY29udGVudDogXCLvi5JcIjsgfVxuXG4uZmEtdGltZXMtcmVjdGFuZ2xlOmJlZm9yZSwgLmZhLXdpbmRvdy1jbG9zZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Lk1wiOyB9XG5cbi5mYS10aW1lcy1yZWN0YW5nbGUtbzpiZWZvcmUsIC5mYS13aW5kb3ctY2xvc2UtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+LlFwiOyB9XG5cbi5mYS1iYW5kY2FtcDpiZWZvcmUgeyBjb250ZW50OiBcIu+LlVwiOyB9XG5cbi5mYS1ncmF2OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uWXCI7IH1cblxuLmZhLWV0c3k6YmVmb3JlIHsgY29udGVudDogXCLvi5dcIjsgfVxuXG4uZmEtaW1kYjpiZWZvcmUgeyBjb250ZW50OiBcIu+LmFwiOyB9XG5cbi5mYS1yYXZlbHJ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uZXCI7IH1cblxuLmZhLWVlcmNhc3Q6YmVmb3JlIHsgY29udGVudDogXCLvi5pcIjsgfVxuXG4uZmEtbWljcm9jaGlwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ubXCI7IH1cblxuLmZhLXNub3dmbGFrZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ucXCI7IH1cblxuLmZhLXN1cGVycG93ZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74udXCI7IH1cblxuLmZhLXdwZXhwbG9yZXI6YmVmb3JlIHsgY29udGVudDogXCLvi55cIjsgfVxuXG4uZmEtbWVldHVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ugXCI7IH1cblxuLnNyLW9ubHkgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxcHg7IGhlaWdodDogMXB4OyBwYWRkaW5nOiAwOyBtYXJnaW46IC0xcHg7IG92ZXJmbG93OiBoaWRkZW47IGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7IGJvcmRlcjogMDsgfVxuXG4uc3Itb25seS1mb2N1c2FibGU6YWN0aXZlLCAuc3Itb25seS1mb2N1c2FibGU6Zm9jdXMgeyBwb3NpdGlvbjogc3RhdGljOyB3aWR0aDogYXV0bzsgaGVpZ2h0OiBhdXRvOyBtYXJnaW46IDA7IG92ZXJmbG93OiB2aXNpYmxlOyBjbGlwOiBhdXRvOyB9XG5cbi8qISBIYW1idXJnZXJzIEBkZXNjcmlwdGlvbiBUYXN0eSBDU1MtYW5pbWF0ZWQgaGFtYnVyZ2VycyBAYXV0aG9yIEpvbmF0aGFuIFN1aCBAam9uc3VoIEBzaXRlIGh0dHBzOi8vam9uc3VoLmNvbS9oYW1idXJnZXJzIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9qb25zdWgvaGFtYnVyZ2VycyAqL1xuLmhhbWJ1cmdlciB7IHBhZGRpbmc6IDEwcHggMTBweDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBjdXJzb3I6IHBvaW50ZXI7IHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIGZpbHRlcjsgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7IHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7IGZvbnQ6IGluaGVyaXQ7IGNvbG9yOiBpbmhlcml0OyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGJvcmRlcjogMDsgbWFyZ2luOiAwOyBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4uaGFtYnVyZ2VyOmhvdmVyLCBhLmhhbWJ1cmdlci5hY3RpdmUsIGJ1dHRvbi5oYW1idXJnZXIuYWN0aXZlIHsgb3BhY2l0eTogMC43OyB9XG5cbi5oYW1idXJnZXIuaXMtYWN0aXZlOmhvdmVyLCBhLmhhbWJ1cmdlci5pcy1hY3RpdmUuYWN0aXZlLCBidXR0b24uaGFtYnVyZ2VyLmlzLWFjdGl2ZS5hY3RpdmUgeyBvcGFjaXR5OiAwLjc7IH1cblxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciwgLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuLmhhbWJ1cmdlci1ib3ggeyB3aWR0aDogMjJweDsgaGVpZ2h0OiAxNnB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaGFtYnVyZ2VyLWlubmVyIHsgZGlzcGxheTogYmxvY2s7IHRvcDogNTAlOyBtYXJnaW4tdG9wOiAtMXB4OyB9XG5cbi5oYW1idXJnZXItaW5uZXIsIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIgeyB3aWR0aDogMjJweDsgaGVpZ2h0OiAycHg7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDRweDsgcG9zaXRpb246IGFic29sdXRlOyB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07IHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzOyB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTsgfVxuXG4uaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHsgY29udGVudDogXCJcIjsgZGlzcGxheTogYmxvY2s7IH1cblxuLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHsgdG9wOiAtN3B4OyB9XG5cbi5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHsgYm90dG9tOiAtN3B4OyB9XG5cbi8qIFN0YW5kICovXG4uaGFtYnVyZ2VyLS1zdGFuZCAuaGFtYnVyZ2VyLWlubmVyIHsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjA3NXMgbGluZWFyOyB9XG5cbi5oYW1idXJnZXItLXN0YW5kIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7IHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cblxuLmhhbWJ1cmdlci0tc3RhbmQgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIgeyB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMDc1cyBlYXNlLWluLCB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG5cbi5oYW1idXJnZXItLXN0YW5kLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHsgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTVzIGxpbmVhcjsgfVxuXG4uaGFtYnVyZ2VyLS1zdGFuZC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHsgdG9wOiAwOyB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cblxuLmhhbWJ1cmdlci0tc3RhbmQuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHsgYm90dG9tOiAwOyB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4vKiBTdGFuZCBSZXZlcnNlICovXG4uaGFtYnVyZ2VyLS1zdGFuZC1yIC5oYW1idXJnZXItaW5uZXIgeyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMDc1cyBsaW5lYXI7IH1cblxuLmhhbWJ1cmdlci0tc3RhbmQtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUgeyB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMDc1cyBlYXNlLWluLCB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG5cbi5oYW1idXJnZXItLXN0YW5kLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIgeyB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMDc1cyBlYXNlLWluLCB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG5cbi5oYW1idXJnZXItLXN0YW5kLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIgeyB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTVzIGxpbmVhcjsgfVxuXG4uaGFtYnVyZ2VyLS1zdGFuZC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUgeyB0b3A6IDA7IHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7IHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS1zdGFuZC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7IGJvdHRvbTogMDsgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cblxuLyogT3dsIENhcm91c2VsIC0gQ29yZSAqL1xuLm93bC1jYXJvdXNlbCB7IGRpc3BsYXk6IG5vbmU7IHdpZHRoOiAxMDAlOyAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiBwb3NpdGlvbiByZWxhdGl2ZSBhbmQgei1pbmRleCBmaXggd2Via2l0IHJlbmRlcmluZyBmb250cyBpc3N1ZSAqLyBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDE7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlIHsgcG9zaXRpb246IHJlbGF0aXZlOyAtbXMtdG91Y2gtYWN0aW9uOiBwYW4tWTsgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247IC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyAvKiBmaXggZmlyZWZveCBhbmltYXRpb24gZ2xpdGNoICovIH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlOmFmdGVyIHsgY29udGVudDogXCIuXCI7IGRpc3BsYXk6IGJsb2NrOyBjbGVhcjogYm90aDsgdmlzaWJpbGl0eTogaGlkZGVuOyBsaW5lLWhlaWdodDogMDsgaGVpZ2h0OiAwOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgb3ZlcmZsb3c6IGhpZGRlbjsgLyogZml4IGZvciBmbGFzaGluZyBiYWNrZ3JvdW5kICovIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtd3JhcHBlciwgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0geyAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbWluLWhlaWdodDogMXB4OyBmbG9hdDogbGVmdDsgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWcgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDEwMCU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLW5hdi5kaXNhYmxlZCwgLm93bC1jYXJvdXNlbCAub3dsLWRvdHMuZGlzYWJsZWQgeyBkaXNwbGF5OiBub25lOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1wcmV2LCAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtbmV4dCwgLm93bC1jYXJvdXNlbCAub3dsLWRvdCB7IGN1cnNvcjogcG9pbnRlcjsgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgLWtodG1sLXVzZXItc2VsZWN0OiBub25lOyAtbW96LXVzZXItc2VsZWN0OiBub25lOyAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7IHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1wcmV2LCAub3dsLWNhcm91c2VsIC5vd2wtbmF2IGJ1dHRvbi5vd2wtbmV4dCwgLm93bC1jYXJvdXNlbCBidXR0b24ub3dsLWRvdCB7IGJhY2tncm91bmQ6IG5vbmU7IGNvbG9yOiBpbmhlcml0OyBib3JkZXI6IG5vbmU7IHBhZGRpbmc6IDAgIWltcG9ydGFudDsgZm9udDogaW5oZXJpdDsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1sb2FkZWQgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1sb2FkaW5nIHsgb3BhY2l0eTogMDsgZGlzcGxheTogYmxvY2s7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtaGlkZGVuIHsgb3BhY2l0eTogMDsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1yZWZyZXNoIC5vd2wtaXRlbSB7IHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1kcmFnIC5vd2wtaXRlbSB7IHRvdWNoLWFjdGlvbjogcGFuLXk7IC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7IC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7IC1tcy11c2VyLXNlbGVjdDogbm9uZTsgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtZ3JhYiB7IGN1cnNvcjogbW92ZTsgY3Vyc29yOiBncmFiOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLXJ0bCB7IGRpcmVjdGlvbjogcnRsOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLXJ0bCAub3dsLWl0ZW0geyBmbG9hdDogcmlnaHQ7IH1cblxuLyogTm8gSnMgKi9cbi5uby1qcyAub3dsLWNhcm91c2VsIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLyogT3dsIENhcm91c2VsIC0gQW5pbWF0ZSBQbHVnaW4gKi9cbi5vd2wtY2Fyb3VzZWwgLmFuaW1hdGVkIHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAxMDAwbXM7IGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLWluIHsgei1pbmRleDogMDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtYW5pbWF0ZWQtb3V0IHsgei1pbmRleDogMTsgfVxuXG4ub3dsLWNhcm91c2VsIC5mYWRlT3V0IHsgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7IH1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHsgMCUgeyBvcGFjaXR5OiAxOyB9XG4gIDEwMCUgeyBvcGFjaXR5OiAwOyB9IH1cblxuLyogT3dsIENhcm91c2VsIC0gQXV0byBIZWlnaHQgUGx1Z2luICovXG4ub3dsLWhlaWdodCB7IHRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDsgfVxuXG4vKiBPd2wgQ2Fyb3VzZWwgLSBMYXp5IExvYWQgUGx1Z2luICovXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7IC8qKiBUaGlzIGlzIGludHJvZHVjZWQgZHVlIHRvIGEgYnVnIGluIElFMTEgd2hlcmUgbGF6eSBsb2FkaW5nIGNvbWJpbmVkIHdpdGggYXV0b2hlaWdodCBwbHVnaW4gY2F1c2VzIGEgd3JvbmcgY2FsY3VsYXRpb24gb2YgdGhlIGhlaWdodCBvZiB0aGUgb3dsLWl0ZW0gdGhhdCBicmVha3MgcGFnZSBsYXlvdXRzICovIH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gLm93bC1sYXp5IHsgb3BhY2l0eTogMDsgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5vd2wtbGF6eVtzcmNePVwiXCJdLCAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenk6bm90KFtzcmNdKSB7IG1heC1oZWlnaHQ6IDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nLm93bC1sYXp5IHsgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsgfVxuXG4vKiBPd2wgQ2Fyb3VzZWwgLSBWaWRlbyBQbHVnaW4gKi9cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby13cmFwcGVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyBoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQ6ICMwMDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbiB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgaGVpZ2h0OiA4MHB4OyB3aWR0aDogODBweDsgbGVmdDogNTAlOyB0b3A6IDUwJTsgbWFyZ2luLWxlZnQ6IC00MHB4OyBtYXJnaW4tdG9wOiAtNDBweDsgYmFja2dyb3VuZDogdXJsKFwib3dsLnZpZGVvLnBsYXkucG5nXCIpIG5vLXJlcGVhdDsgY3Vyc29yOiBwb2ludGVyOyB6LWluZGV4OiAxOyAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEwMG1zIGVhc2U7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbjpob3ZlciwgLm93bC1jYXJvdXNlbCBhLm93bC12aWRlby1wbGF5LWljb24uYWN0aXZlLCAub3dsLWNhcm91c2VsIGJ1dHRvbi5vd2wtdmlkZW8tcGxheS1pY29uLmFjdGl2ZSB7IHRyYW5zZm9ybTogc2NhbGUoMS4zLCAxLjMpOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tdG4sIC5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tcGxheS1pY29uIHsgZGlzcGxheTogbm9uZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tdG4geyBvcGFjaXR5OiAwOyBoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogY29udGFpbjsgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1mcmFtZSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogMTsgaGVpZ2h0OiAxMDAlOyB3aWR0aDogMTAwJTsgfVxuXG4uZmVhdGhlcmxpZ2h0LWNsb3NlLWljb246YWZ0ZXIgeyBjb250ZW50OiBub25lOyB9XG5cbi8qKiBCcmFuZCBDb2xvcnMgSW1wb3J0YW50OiBJZiBjaGFuZ2luZyB0aGVtZSBjb2xvdXJzLCByZW1lbWJlciB0byBjaGFuZ2UgdGhlbSBpbiB0aGUgRUxGIGNoaWxkIHRoZW1lIHRvbyBmb3Igc3RyaW5nIHJlcGxhY2VtZW50ICovXG4vKiBvbGQgc3R5bGluZyBmYWxsYmFjayAqL1xuLnB3LXByb3RlY3QgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlciB7IGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4vKiogRm91bmRhdGlvbiBmb3IgU2l0ZXMgVmVyc2lvbiA2LjYuMyBodHRwczovL2dldC5mb3VuZGF0aW9uIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZSAqL1xuLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuaHRtbCB7IGxpbmUtaGVpZ2h0OiAxLjE1OyAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IH1cblxuYm9keSB7IG1hcmdpbjogMDsgfVxuXG5oMSB7IGZvbnQtc2l6ZTogMmVtOyBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbmhyIHsgYm94LXNpemluZzogY29udGVudC1ib3g7IGhlaWdodDogMDsgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxucHJlIHsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyBmb250LXNpemU6IDFlbTsgfVxuXG5hIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuYWJiclt0aXRsZV0geyBib3JkZXItYm90dG9tOiBub25lOyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyB9XG5cbmIsIHN0cm9uZywgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgaDEsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IGgyLCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBoMywgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgaDQsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IGg1LCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBwLCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBoNiwgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgLnVwZGF0ZWQgLmRhdGUsIC51cGRhdGVkIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IC5kYXRlIHsgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG5jb2RlLCBrYmQsIHNhbXAgeyBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IGZvbnQtc2l6ZTogMWVtOyB9XG5cbnNtYWxsIHsgZm9udC1zaXplOiA4MCU7IH1cblxuc3ViLCBzdXAgeyBmb250LXNpemU6IDc1JTsgbGluZS1oZWlnaHQ6IDA7IHBvc2l0aW9uOiByZWxhdGl2ZTsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1YiB7IGJvdHRvbTogLTAuMjVlbTsgfVxuXG5zdXAgeyB0b3A6IC0wLjVlbTsgfVxuXG5pbWcgeyBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuYnV0dG9uLCBpbnB1dCwgb3B0Z3JvdXAsIHNlbGVjdCwgdGV4dGFyZWEgeyBmb250LWZhbWlseTogaW5oZXJpdDsgZm9udC1zaXplOiAxMDAlOyBsaW5lLWhlaWdodDogMS4xNTsgbWFyZ2luOiAwOyB9XG5cbmJ1dHRvbiwgaW5wdXQgeyBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG5idXR0b24sIHNlbGVjdCB7IHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbmJ1dHRvbiwgW3R5cGU9XCJidXR0b25cIl0sIFt0eXBlPVwicmVzZXRcIl0sIFt0eXBlPVwic3VibWl0XCJdIHsgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IH1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLCBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lciwgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lciwgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIgeyBib3JkZXItc3R5bGU6IG5vbmU7IHBhZGRpbmc6IDA7IH1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLCBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZywgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZywgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3JpbmcgeyBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7IH1cblxuZmllbGRzZXQgeyBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07IH1cblxubGVnZW5kIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgY29sb3I6IGluaGVyaXQ7IGRpc3BsYXk6IHRhYmxlOyBtYXgtd2lkdGg6IDEwMCU7IHBhZGRpbmc6IDA7IHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cblxucHJvZ3Jlc3MgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxudGV4dGFyZWEgeyBvdmVyZmxvdzogYXV0bzsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdLCBbdHlwZT1cInJhZGlvXCJdIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgcGFkZGluZzogMDsgfVxuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiwgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24geyBoZWlnaHQ6IGF1dG87IH1cblxuW3R5cGU9XCJzZWFyY2hcIl0geyAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IH1cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24geyAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7IC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyBmb250OiBpbmhlcml0OyB9XG5cbmRldGFpbHMgeyBkaXNwbGF5OiBibG9jazsgfVxuXG5zdW1tYXJ5IHsgZGlzcGxheTogbGlzdC1pdGVtOyB9XG5cbnRlbXBsYXRlIHsgZGlzcGxheTogbm9uZTsgfVxuXG5baGlkZGVuXSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvdW5kYXRpb24tbXEgeyBmb250LWZhbWlseTogXCJzbWFsbD0wZW0mbWVkaXVtPTQwZW0mbGFyZ2U9NjRlbSZ4bGFyZ2U9NzVlbSZ4eGxhcmdlPTkwZW1cIjsgfVxuXG5odG1sIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgZm9udC1zaXplOiAxMDAlOyB9XG5cbiosICo6OmJlZm9yZSwgKjo6YWZ0ZXIgeyBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkgeyBtYXJnaW46IDA7IHBhZGRpbmc6IDA7IGJhY2tncm91bmQ6ICNGRkY7IGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfNjUgTWVkaXVtMTQ3NTUzMlwiLCBzYW5zLXNlcmlmOyBmb250LXdlaWdodDogbm9ybWFsOyBsaW5lLWhlaWdodDogMS41OyBjb2xvcjogIzUyNTI0NTsgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuaW1nIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBtYXgtd2lkdGg6IDEwMCU7IGhlaWdodDogYXV0bzsgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgfVxuXG50ZXh0YXJlYSB7IGhlaWdodDogYXV0bzsgbWluLWhlaWdodDogNTBweDsgYm9yZGVyLXJhZGl1czogNXB4OyB9XG5cbnNlbGVjdCB7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IHdpZHRoOiAxMDAlOyBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuLm1hcF9jYW52YXMgaW1nLCAubWFwX2NhbnZhcyBlbWJlZCwgLm1hcF9jYW52YXMgb2JqZWN0LCAubXFhLWRpc3BsYXkgaW1nLCAubXFhLWRpc3BsYXkgZW1iZWQsIC5tcWEtZGlzcGxheSBvYmplY3QgeyBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5idXR0b24geyBwYWRkaW5nOiAwOyBhcHBlYXJhbmNlOiBub25lOyBib3JkZXI6IDA7IGJvcmRlci1yYWRpdXM6IDVweDsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IGxpbmUtaGVpZ2h0OiAxOyBjdXJzb3I6IGF1dG87IH1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGJ1dHRvbiB7IG91dGxpbmU6IDA7IH1cblxucHJlIHsgb3ZlcmZsb3c6IGF1dG87IH1cblxuYnV0dG9uLCBpbnB1dCwgb3B0Z3JvdXAsIHNlbGVjdCwgdGV4dGFyZWEgeyBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuXG4uaXMtdmlzaWJsZSB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmlzLWhpZGRlbiB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ucm93IHsgbWF4LXdpZHRoOiA4My43NXJlbTsgbWFyZ2luLXJpZ2h0OiBhdXRvOyBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4ucm93OjpiZWZvcmUsIC5yb3c6OmFmdGVyIHsgZGlzcGxheTogdGFibGU7IGNvbnRlbnQ6ICcgJzsgZmxleC1iYXNpczogMDsgb3JkZXI6IDE7IH1cblxuLnJvdzo6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuXG4ucm93LmNvbGxhcHNlID4gLmNvbHVtbiwgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zIHsgcGFkZGluZy1yaWdodDogMDsgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5yb3cgLnJvdyB7IG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5yb3cgLnJvdyB7IG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTsgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAucm93IC5yb3cgeyBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07IG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cblxuLnJvdyAucm93LmNvbGxhcHNlIHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuXG4ucm93LmV4cGFuZGVkIHsgbWF4LXdpZHRoOiBub25lOyB9XG5cbi5yb3cuZXhwYW5kZWQgLnJvdyB7IG1hcmdpbi1yaWdodDogYXV0bzsgbWFyZ2luLWxlZnQ6IGF1dG87IH1cblxuLnJvdzpub3QoLmV4cGFuZGVkKSAucm93IHsgbWF4LXdpZHRoOiBub25lOyB9XG5cbi5yb3cuZ3V0dGVyLXNtYWxsID4gLmNvbHVtbiwgLnJvdy5ndXR0ZXItc21hbGwgPiAuY29sdW1ucyB7IHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtOyBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG5cbi5yb3cuZ3V0dGVyLW1lZGl1bSA+IC5jb2x1bW4sIC5yb3cuZ3V0dGVyLW1lZGl1bSA+IC5jb2x1bW5zIHsgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfVxuXG4uY29sdW1uLCAuY29sdW1ucyB7IHdpZHRoOiAxMDAlOyBmbG9hdDogbGVmdDsgcGFkZGluZy1yaWdodDogMC42MjVyZW07IHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmNvbHVtbiwgLmNvbHVtbnMgeyBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuLmNvbHVtbiwgLmNvbHVtbnMsIC5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7IGZsb2F0OiBsZWZ0OyBjbGVhcjogbm9uZTsgfVxuXG4uY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgeyBmbG9hdDogcmlnaHQ7IH1cblxuLmNvbHVtbi5lbmQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAuZW5kLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHsgZmxvYXQ6IGxlZnQ7IH1cblxuLmNvbHVtbi5yb3cucm93LCAucm93LnJvdy5jb2x1bW5zIHsgZmxvYXQ6IG5vbmU7IH1cblxuLnJvdyAuY29sdW1uLnJvdy5yb3csIC5yb3cgLnJvdy5yb3cuY29sdW1ucyB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IHBhZGRpbmctcmlnaHQ6IDA7IHBhZGRpbmctbGVmdDogMDsgfVxuXG4uc21hbGwtMSB7IHdpZHRoOiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtcHVzaC0xIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtcHVsbC0xIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtOC4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC0wIHsgbWFyZ2luLWxlZnQ6IDAlOyB9XG5cbi5zbWFsbC0yIHsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtcHVzaC0yIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtMiB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTE2LjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEgeyBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLTMgeyB3aWR0aDogMjUlOyB9XG5cbi5zbWFsbC1wdXNoLTMgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDI1JTsgfVxuXG4uc21hbGwtcHVsbC0zIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtMjUlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMiB7IG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLTQgeyB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTQgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtcHVsbC00IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMyB7IG1hcmdpbi1sZWZ0OiAyNSU7IH1cblxuLnNtYWxsLTUgeyB3aWR0aDogNDEuNjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTUgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uc21hbGwtcHVsbC01IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtNDEuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtNCB7IG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLTYgeyB3aWR0aDogNTAlOyB9XG5cbi5zbWFsbC1wdXNoLTYgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDUwJTsgfVxuXG4uc21hbGwtcHVsbC02IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtNTAlOyB9XG5cbi5zbWFsbC1vZmZzZXQtNSB7IG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLTcgeyB3aWR0aDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTcgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtcHVsbC03IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtNTguMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtNiB7IG1hcmdpbi1sZWZ0OiA1MCU7IH1cblxuLnNtYWxsLTggeyB3aWR0aDogNjYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTggeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uc21hbGwtcHVsbC04IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtNjYuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtNyB7IG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cblxuLnNtYWxsLTkgeyB3aWR0aDogNzUlOyB9XG5cbi5zbWFsbC1wdXNoLTkgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDc1JTsgfVxuXG4uc21hbGwtcHVsbC05IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtNzUlOyB9XG5cbi5zbWFsbC1vZmZzZXQtOCB7IG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLTEwIHsgd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtcHVzaC0xMCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogODMuMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTEwIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtODMuMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtOSB7IG1hcmdpbi1sZWZ0OiA3NSU7IH1cblxuLnNtYWxsLTExIHsgd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtcHVzaC0xMSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogOTEuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTExIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtOTEuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTAgeyBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG5cbi5zbWFsbC0xMiB7IHdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTEgeyBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbi5zbWFsbC11cC0xID4gLmNvbHVtbiwgLnNtYWxsLXVwLTEgPiAuY29sdW1ucyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogMTAwJTsgfVxuXG4uc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG5cbi5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7IGNsZWFyOiBib3RoOyB9XG5cbi5zbWFsbC11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtMiA+IC5jb2x1bW4sIC5zbWFsbC11cC0yID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG5cbi5zbWFsbC11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7IGNsZWFyOiBib3RoOyB9XG5cbi5zbWFsbC11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtMyA+IC5jb2x1bW4sIC5zbWFsbC11cC0zID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG5cbi5zbWFsbC11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7IGNsZWFyOiBib3RoOyB9XG5cbi5zbWFsbC11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtNCA+IC5jb2x1bW4sIC5zbWFsbC11cC00ID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDI1JTsgfVxuXG4uc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7IGNsZWFyOiBib3RoOyB9XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtNSA+IC5jb2x1bW4sIC5zbWFsbC11cC01ID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDIwJTsgfVxuXG4uc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG5cbi5zbWFsbC11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7IGNsZWFyOiBib3RoOyB9XG5cbi5zbWFsbC11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtNiA+IC5jb2x1bW4sIC5zbWFsbC11cC02ID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG5cbi5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7IGNsZWFyOiBib3RoOyB9XG5cbi5zbWFsbC11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtNyA+IC5jb2x1bW4sIC5zbWFsbC11cC03ID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDE0LjI4NTcxJTsgfVxuXG4uc21hbGwtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG5cbi5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7IGNsZWFyOiBib3RoOyB9XG5cbi5zbWFsbC11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtOCA+IC5jb2x1bW4sIC5zbWFsbC11cC04ID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDEyLjUlOyB9XG5cbi5zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cblxuLnNtYWxsLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHsgY2xlYXI6IGJvdGg7IH1cblxuLnNtYWxsLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW5zIHsgcGFkZGluZy1yaWdodDogMDsgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5zbWFsbC1jb2xsYXBzZSAucm93IHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuXG4uZXhwYW5kZWQucm93IC5zbWFsbC1jb2xsYXBzZS5yb3cgeyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7IHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtOyBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG5cbi5zbWFsbC1jZW50ZXJlZCB7IG1hcmdpbi1yaWdodDogYXV0bzsgbWFyZ2luLWxlZnQ6IGF1dG87IH1cblxuLnNtYWxsLWNlbnRlcmVkLCAuc21hbGwtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7IGZsb2F0OiBub25lOyBjbGVhcjogYm90aDsgfVxuXG4uc21hbGwtdW5jZW50ZXJlZCwgLnNtYWxsLXB1c2gtMCwgLnNtYWxsLXB1bGwtMCB7IHBvc2l0aW9uOiBzdGF0aWM7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLnNtYWxsLXVuY2VudGVyZWQsIC5zbWFsbC11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5zbWFsbC1wdXNoLTAsIC5zbWFsbC1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLnNtYWxsLXB1bGwtMCwgLnNtYWxsLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHsgZmxvYXQ6IGxlZnQ7IGNsZWFyOiBub25lOyB9XG5cbi5zbWFsbC11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5zbWFsbC1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLnNtYWxsLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHsgZmxvYXQ6IHJpZ2h0OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5tZWRpdW0tMSB7IHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtMSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdWxsLTEgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC04LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0wIHsgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5tZWRpdW0tMiB7IHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTIgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtMiB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC0xIHsgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tMyB7IHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1wdXNoLTMgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDI1JTsgfVxuICAubWVkaXVtLXB1bGwtMyB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTI1JTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHsgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLTQgeyB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC00IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdWxsLTQgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC0zMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7IG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLm1lZGl1bS01IHsgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtNSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC01IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQgeyBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tNiB7IHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1wdXNoLTYgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDUwJTsgfVxuICAubWVkaXVtLXB1bGwtNiB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTUwJTsgfVxuICAubWVkaXVtLW9mZnNldC01IHsgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLTcgeyB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC03IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdWxsLTcgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC01OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNiB7IG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLm1lZGl1bS04IHsgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtOCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC04IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTcgeyBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tOSB7IHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1wdXNoLTkgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDc1JTsgfVxuICAubWVkaXVtLXB1bGwtOSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTc1JTsgfVxuICAubWVkaXVtLW9mZnNldC04IHsgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLTEwIHsgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtMTAgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtMTAgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC04My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7IG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLm1lZGl1bS0xMSB7IHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTExIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTExIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHsgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLTEyIHsgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEgeyBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuICAubWVkaXVtLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7IGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHsgY2xlYXI6IGJvdGg7IH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHsgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC0zID4gLmNvbHVtbiwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cbiAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkgeyBjbGVhcjogYm90aDsgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uLCAubWVkaXVtLXVwLTQgPiAuY29sdW1ucyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7IGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAyMCU7IH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHsgY2xlYXI6IGJvdGg7IH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHsgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC02ID4gLmNvbHVtbiwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cbiAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkgeyBjbGVhcjogYm90aDsgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTcgPiAuY29sdW1uLCAubWVkaXVtLXVwLTcgPiAuY29sdW1ucyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuICAubWVkaXVtLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7IGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAxMi41JTsgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkgeyBjbGVhcjogYm90aDsgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbiwgLm1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW5zIHsgcGFkZGluZy1yaWdodDogMDsgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5tZWRpdW0tY29sbGFwc2UgLnJvdyB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmV4cGFuZGVkLnJvdyAubWVkaXVtLWNvbGxhcHNlLnJvdyB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLm1lZGl1bS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLm1lZGl1bS11bmNvbGxhcHNlID4gLmNvbHVtbnMgeyBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG4gIC5tZWRpdW0tY2VudGVyZWQgeyBtYXJnaW4tcmlnaHQ6IGF1dG87IG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5tZWRpdW0tY2VudGVyZWQsIC5tZWRpdW0tY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7IGZsb2F0OiBub25lOyBjbGVhcjogYm90aDsgfVxuICAubWVkaXVtLXVuY2VudGVyZWQsIC5tZWRpdW0tcHVzaC0wLCAubWVkaXVtLXB1bGwtMCB7IHBvc2l0aW9uOiBzdGF0aWM7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLm1lZGl1bS11bmNlbnRlcmVkLCAubWVkaXVtLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLm1lZGl1bS1wdXNoLTAsIC5tZWRpdW0tcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5tZWRpdW0tcHVsbC0wLCAubWVkaXVtLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHsgZmxvYXQ6IGxlZnQ7IGNsZWFyOiBub25lOyB9XG4gIC5tZWRpdW0tdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubWVkaXVtLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubWVkaXVtLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHsgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmxhcmdlLTEgeyB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1c2gtMSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtMSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTguMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMCB7IG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubGFyZ2UtMiB7IHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLXB1c2gtMiB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdWxsLTIgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC0xNi42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC0xIHsgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS0zIHsgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtcHVzaC0zIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAyNSU7IH1cbiAgLmxhcmdlLXB1bGwtMyB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTI1JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTIgeyBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS00IHsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC00IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtNCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTMzLjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTMgeyBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5sYXJnZS01IHsgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC01IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtNSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTQxLjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTQgeyBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS02IHsgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtcHVzaC02IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiA1MCU7IH1cbiAgLmxhcmdlLXB1bGwtNiB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTUwJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTUgeyBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS03IHsgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC03IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtNyB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTU4LjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTYgeyBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5sYXJnZS04IHsgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC04IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtOCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTY2LjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTcgeyBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS05IHsgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtcHVzaC05IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiA3NSU7IH1cbiAgLmxhcmdlLXB1bGwtOSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTc1JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTggeyBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS0xMCB7IHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1c2gtMTAgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC0xMCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTgzLjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTkgeyBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5sYXJnZS0xMSB7IHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLXB1c2gtMTEgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC0xMSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTkxLjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEwIHsgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtMTIgeyB3aWR0aDogMTAwJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHsgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC5sYXJnZS11cC0xID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkgeyBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHsgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkgeyBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHsgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkgeyBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHsgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTQgPiAuY29sdW1uLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkgeyBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHsgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTUgPiAuY29sdW1uLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAyMCU7IH1cbiAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkgeyBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHsgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkgeyBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHsgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkgeyBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHsgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAxMi41JTsgfVxuICAubGFyZ2UtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7IGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7IHBhZGRpbmctcmlnaHQ6IDA7IHBhZGRpbmctbGVmdDogMDsgfVxuICAubGFyZ2UtY29sbGFwc2UgLnJvdyB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmV4cGFuZGVkLnJvdyAubGFyZ2UtY29sbGFwc2Uucm93IHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuICAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMgeyBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG4gIC5sYXJnZS1jZW50ZXJlZCB7IG1hcmdpbi1yaWdodDogYXV0bzsgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLmxhcmdlLWNlbnRlcmVkLCAubGFyZ2UtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7IGZsb2F0OiBub25lOyBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtdW5jZW50ZXJlZCwgLmxhcmdlLXB1c2gtMCwgLmxhcmdlLXB1bGwtMCB7IHBvc2l0aW9uOiBzdGF0aWM7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmxhcmdlLXVuY2VudGVyZWQsIC5sYXJnZS11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5sYXJnZS1wdXNoLTAsIC5sYXJnZS1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmxhcmdlLXB1bGwtMCwgLmxhcmdlLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHsgZmxvYXQ6IGxlZnQ7IGNsZWFyOiBub25lOyB9XG4gIC5sYXJnZS11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5sYXJnZS1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmxhcmdlLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHsgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLmNvbHVtbi1ibG9jayB7IG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuY29sdW1uLWJsb2NrIHsgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi5ncmlkLWNvbnRhaW5lciB7IHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07IHBhZGRpbmctbGVmdDogMS4yNXJlbTsgbWF4LXdpZHRoOiA4My43NXJlbTsgbWFyZ2luLWxlZnQ6IGF1dG87IG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1jb250YWluZXIgeyBwYWRkaW5nLXJpZ2h0OiAycmVtOyBwYWRkaW5nLWxlZnQ6IDJyZW07IH0gfVxuXG4uZ3JpZC1jb250YWluZXIuZmx1aWQgeyBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtOyBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07IG1heC13aWR0aDogMTAwJTsgbWFyZ2luLWxlZnQ6IGF1dG87IG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1jb250YWluZXIuZmx1aWQgeyBwYWRkaW5nLXJpZ2h0OiAycmVtOyBwYWRkaW5nLWxlZnQ6IDJyZW07IH0gfVxuXG4uZ3JpZC1jb250YWluZXIuZnVsbCB7IHBhZGRpbmctcmlnaHQ6IDA7IHBhZGRpbmctbGVmdDogMDsgbWF4LXdpZHRoOiAxMDAlOyBtYXJnaW4tbGVmdDogYXV0bzsgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5ncmlkLXggeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG5cbi5jZWxsIHsgZmxleDogMCAwIGF1dG87IG1pbi1oZWlnaHQ6IDBweDsgbWluLXdpZHRoOiAwcHg7IHdpZHRoOiAxMDAlOyB9XG5cbi5jZWxsLmF1dG8geyBmbGV4OiAxIDEgMHB4OyB9XG5cbi5jZWxsLnNocmluayB7IGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5ncmlkLXggPiAuYXV0byB7IHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc2hyaW5rIHsgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQteCA+IC5zbWFsbC1zaHJpbmssIC5ncmlkLXggPiAuc21hbGwtZnVsbCwgLmdyaWQteCA+IC5zbWFsbC0xLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMiB7IGZsZXgtYmFzaXM6IGF1dG87IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC14ID4gLm1lZGl1bS1mdWxsLCAuZ3JpZC14ID4gLm1lZGl1bS0xLCAuZ3JpZC14ID4gLm1lZGl1bS0yLCAuZ3JpZC14ID4gLm1lZGl1bS0zLCAuZ3JpZC14ID4gLm1lZGl1bS00LCAuZ3JpZC14ID4gLm1lZGl1bS01LCAuZ3JpZC14ID4gLm1lZGl1bS02LCAuZ3JpZC14ID4gLm1lZGl1bS03LCAuZ3JpZC14ID4gLm1lZGl1bS04LCAuZ3JpZC14ID4gLm1lZGl1bS05LCAuZ3JpZC14ID4gLm1lZGl1bS0xMCwgLmdyaWQteCA+IC5tZWRpdW0tMTEsIC5ncmlkLXggPiAubWVkaXVtLTEyIHsgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLmxhcmdlLWZ1bGwsIC5ncmlkLXggPiAubGFyZ2UtMSwgLmdyaWQteCA+IC5sYXJnZS0yLCAuZ3JpZC14ID4gLmxhcmdlLTMsIC5ncmlkLXggPiAubGFyZ2UtNCwgLmdyaWQteCA+IC5sYXJnZS01LCAuZ3JpZC14ID4gLmxhcmdlLTYsIC5ncmlkLXggPiAubGFyZ2UtNywgLmdyaWQteCA+IC5sYXJnZS04LCAuZ3JpZC14ID4gLmxhcmdlLTksIC5ncmlkLXggPiAubGFyZ2UtMTAsIC5ncmlkLXggPiAubGFyZ2UtMTEsIC5ncmlkLXggPiAubGFyZ2UtMTIgeyBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMiB7IGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMSB7IHdpZHRoOiA4LjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTIgeyB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMyB7IHdpZHRoOiAyNSU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC00IHsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTUgeyB3aWR0aDogNDEuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNiB7IHdpZHRoOiA1MCU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC03IHsgd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTggeyB3aWR0aDogNjYuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtOSB7IHdpZHRoOiA3NSU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMCB7IHdpZHRoOiA4My4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMSB7IHdpZHRoOiA5MS42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMiB7IHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLXggPiAubWVkaXVtLWF1dG8geyBmbGV4OiAxIDEgMHB4OyB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXggPiAubWVkaXVtLTEsIC5ncmlkLXggPiAubWVkaXVtLTIsIC5ncmlkLXggPiAubWVkaXVtLTMsIC5ncmlkLXggPiAubWVkaXVtLTQsIC5ncmlkLXggPiAubWVkaXVtLTUsIC5ncmlkLXggPiAubWVkaXVtLTYsIC5ncmlkLXggPiAubWVkaXVtLTcsIC5ncmlkLXggPiAubWVkaXVtLTgsIC5ncmlkLXggPiAubWVkaXVtLTksIC5ncmlkLXggPiAubWVkaXVtLTEwLCAuZ3JpZC14ID4gLm1lZGl1bS0xMSwgLmdyaWQteCA+IC5tZWRpdW0tMTIgeyBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmsgeyB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xIHsgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTIgeyB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTMgeyB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTQgeyB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTUgeyB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTYgeyB3aWR0aDogNTAlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTcgeyB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTggeyB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTkgeyB3aWR0aDogNzUlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEwIHsgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMSB7IHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTIgeyB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5ncmlkLXggPiAubGFyZ2UtYXV0byB7IGZsZXg6IDEgMSAwcHg7IHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLmxhcmdlLTEsIC5ncmlkLXggPiAubGFyZ2UtMiwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTQsIC5ncmlkLXggPiAubGFyZ2UtNSwgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTcsIC5ncmlkLXggPiAubGFyZ2UtOCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTEwLCAuZ3JpZC14ID4gLmxhcmdlLTExLCAuZ3JpZC14ID4gLmxhcmdlLTEyIHsgZmxleDogMCAwIGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmsgeyB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEgeyB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0yIHsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTMgeyB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNCB7IHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS01IHsgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTYgeyB3aWR0aDogNTAlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNyB7IHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS04IHsgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTkgeyB3aWR0aDogNzUlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTAgeyB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTEgeyB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTIgeyB3aWR0aDogMTAwJTsgfSB9XG5cbi5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHsgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQtbWFyZ2luLXk6bm90KC5ncmlkLXkpID4gLmNlbGwgeyBoZWlnaHQ6IGF1dG87IH1cblxuLmdyaWQtbWFyZ2luLXggeyBtYXJnaW4tbGVmdDogLTAuNzVyZW07IG1hcmdpbi1yaWdodDogLTAuNzVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdyaWQtbWFyZ2luLXggeyBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTsgfSB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLmNlbGwgeyB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgbWFyZ2luLWxlZnQ6IDAuNzVyZW07IG1hcmdpbi1yaWdodDogMC43NXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyBtYXJnaW4tbGVmdDogMC42MjVyZW07IG1hcmdpbi1yaWdodDogMC42MjVyZW07IH0gfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5hdXRvIHsgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHsgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMSB7IHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0yIHsgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHsgd2lkdGg6IGNhbGMoMjUlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHsgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC01IHsgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHsgd2lkdGg6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC03IHsgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC04IHsgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHsgd2lkdGg6IGNhbGMoNzUlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMCB7IHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTEgeyB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHsgd2lkdGg6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7IHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7IHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEgeyB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIgeyB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHsgd2lkdGg6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7IHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUgeyB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHsgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7IHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTggeyB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHsgd2lkdGg6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAgeyB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7IHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHsgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHsgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLXNocmluayB7IHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHsgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMiB7IHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0zIHsgd2lkdGg6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTQgeyB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNSB7IHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS02IHsgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcgeyB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOCB7IHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS05IHsgd2lkdGg6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHsgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTExIHsgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEyIHsgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtYXV0byB7IHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLXNocmluayB7IHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEgeyB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTIgeyB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0zIHsgd2lkdGg6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNCB7IHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTUgeyB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS02IHsgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNyB7IHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTggeyB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS05IHsgd2lkdGg6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTAgeyB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMSB7IHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEyIHsgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9IH1cblxuLmdyaWQtcGFkZGluZy14IC5ncmlkLXBhZGRpbmcteCB7IG1hcmdpbi1yaWdodDogLTAuNzVyZW07IG1hcmdpbi1sZWZ0OiAtMC43NXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHsgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07IG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH0gfVxuXG4uZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7IG1hcmdpbi1yaWdodDogLTAuNzVyZW07IG1hcmdpbi1sZWZ0OiAtMC43NXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7IG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9IH1cblxuLmdyaWQtcGFkZGluZy14ID4gLmNlbGwgeyBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtOyBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdyaWQtcGFkZGluZy14ID4gLmNlbGwgeyBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTsgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG5cbi5zbWFsbC11cC0xID4gLmNlbGwgeyB3aWR0aDogMTAwJTsgfVxuXG4uc21hbGwtdXAtMiA+IC5jZWxsIHsgd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtdXAtMyA+IC5jZWxsIHsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtdXAtNCA+IC5jZWxsIHsgd2lkdGg6IDI1JTsgfVxuXG4uc21hbGwtdXAtNSA+IC5jZWxsIHsgd2lkdGg6IDIwJTsgfVxuXG4uc21hbGwtdXAtNiA+IC5jZWxsIHsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtdXAtNyA+IC5jZWxsIHsgd2lkdGg6IDE0LjI4NTcxJTsgfVxuXG4uc21hbGwtdXAtOCA+IC5jZWxsIHsgd2lkdGg6IDEyLjUlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5tZWRpdW0tdXAtMSA+IC5jZWxsIHsgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS11cC0yID4gLmNlbGwgeyB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jZWxsIHsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLXVwLTQgPiAuY2VsbCB7IHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS11cC01ID4gLmNlbGwgeyB3aWR0aDogMjAlOyB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jZWxsIHsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLXVwLTcgPiAuY2VsbCB7IHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLm1lZGl1bS11cC04ID4gLmNlbGwgeyB3aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAubGFyZ2UtdXAtMSA+IC5jZWxsIHsgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLXVwLTIgPiAuY2VsbCB7IHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLXVwLTMgPiAuY2VsbCB7IHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXVwLTQgPiAuY2VsbCB7IHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLXVwLTUgPiAuY2VsbCB7IHdpZHRoOiAyMCU7IH1cbiAgLmxhcmdlLXVwLTYgPiAuY2VsbCB7IHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTcgPiAuY2VsbCB7IHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLmxhcmdlLXVwLTggPiAuY2VsbCB7IHdpZHRoOiAxMi41JTsgfSB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDEwMCUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDUwJSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMyA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwgeyB3aWR0aDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDIwJSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNiA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwgeyB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDEyLjUlIC0gMS41cmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0xID4gLmNlbGwgeyB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMiA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMyA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNCA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNSA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMjAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNiA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNyA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtOCA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMSA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0yID4gLmNlbGwgeyB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMyA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTQgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC01ID4gLmNlbGwgeyB3aWR0aDogY2FsYygyMCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNiA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTcgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC04ID4gLmNlbGwgeyB3aWR0aDogY2FsYygxMi41JSAtIDEuMjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMSA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTIgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTMgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTQgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTUgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDIwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTYgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTcgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTggPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDEyLjUlIC0gMS4yNXJlbSk7IH0gfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlIHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwgeyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7IHdpZHRoOiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIgeyB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7IHdpZHRoOiAyNSU7IH1cblxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUgeyB3aWR0aDogNDEuNjY2NjclOyB9XG5cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7IHdpZHRoOiA1MCU7IH1cblxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHsgd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTggeyB3aWR0aDogNjYuNjY2NjclOyB9XG5cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7IHdpZHRoOiA3NSU7IH1cblxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7IHdpZHRoOiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7IHdpZHRoOiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7IHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEgeyB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7IHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7IHdpZHRoOiAyNSU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7IHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7IHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7IHdpZHRoOiA1MCU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7IHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7IHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7IHdpZHRoOiA3NSU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAgeyB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHsgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7IHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHsgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7IHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHsgd2lkdGg6IDI1JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQgeyB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7IHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHsgd2lkdGg6IDUwJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcgeyB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7IHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHsgd2lkdGg6IDc1JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHsgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHsgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHsgd2lkdGg6IDEwMCU7IH0gfVxuXG4uc21hbGwtcGFkZGluZy1jb2xsYXBzZSB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLnNtYWxsLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7IHBhZGRpbmctcmlnaHQ6IDA7IHBhZGRpbmctbGVmdDogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHsgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIgeyB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMgeyB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQgeyB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUgeyB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYgeyB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcgeyB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTggeyB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkgeyB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHsgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7IHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIgeyB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHsgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7IHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQgeyB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHsgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7IHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcgeyB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHsgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7IHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHsgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEgeyB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7IHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7IHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHsgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHsgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHsgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHsgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHsgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHsgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7IHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEgeyB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHsgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAubWVkaXVtLXBhZGRpbmctY29sbGFwc2UgeyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5tZWRpdW0tcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHsgcGFkZGluZy1yaWdodDogMDsgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7IHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIgeyB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7IHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUgeyB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7IHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHsgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTggeyB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7IHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7IHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7IHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7IHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7IHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHsgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHsgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHsgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHsgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHsgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHsgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7IHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEgeyB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHsgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEgeyB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMgeyB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7IHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHsgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYgeyB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7IHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHsgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkgeyB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAgeyB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEgeyB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIgeyB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuICAubGFyZ2UtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHsgcGFkZGluZy1yaWdodDogMDsgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuLnNtYWxsLW9mZnNldC0wIHsgbWFyZ2luLWxlZnQ6IDAlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0wIHsgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAwLjc1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEgeyBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEgeyBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMiB7IG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTIgeyBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjc1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTMgeyBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0zIHsgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC43NXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC00IHsgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNCB7IG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNSB7IG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTUgeyBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjc1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTYgeyBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC02IHsgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC43NXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC03IHsgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNyB7IG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtOCB7IG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTggeyBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjc1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTkgeyBtYXJnaW4tbGVmdDogNzUlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC05IHsgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC43NXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7IG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEwIHsgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC43NXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0xMSB7IG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTExIHsgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC43NXJlbSk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLm1lZGl1bS1vZmZzZXQtMCB7IG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTAgeyBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xIHsgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMSB7IG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIgeyBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMiB7IG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0zIHsgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTMgeyBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjYyNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNCB7IG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC00IHsgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTUgeyBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNSB7IG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC02IHsgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTYgeyBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjYyNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7IG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC03IHsgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTggeyBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtOCB7IG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC05IHsgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTkgeyBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjYyNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAgeyBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTAgeyBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEgeyBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTEgeyBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAwLjYyNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAubGFyZ2Utb2Zmc2V0LTAgeyBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTAgeyBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuNjI1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEgeyBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEgeyBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTIgeyBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0yIHsgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC42MjVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7IG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTMgeyBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC00IHsgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNCB7IG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTUgeyBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC01IHsgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC42MjVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7IG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTYgeyBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC03IHsgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNyB7IG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTggeyBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC04IHsgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC42MjVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7IG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTkgeyBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7IG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTEwIHsgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC42MjVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTEgeyBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xMSB7IG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuNjI1cmVtKTsgfSB9XG5cbi5ncmlkLXkgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cblxuLmdyaWQteSA+IC5jZWxsIHsgaGVpZ2h0OiBhdXRvOyBtYXgtaGVpZ2h0OiBub25lOyB9XG5cbi5ncmlkLXkgPiAuYXV0byB7IGhlaWdodDogYXV0bzsgfVxuXG4uZ3JpZC15ID4gLnNocmluayB7IGhlaWdodDogYXV0bzsgfVxuXG4uZ3JpZC15ID4gLnNtYWxsLXNocmluaywgLmdyaWQteSA+IC5zbWFsbC1mdWxsLCAuZ3JpZC15ID4gLnNtYWxsLTEsIC5ncmlkLXkgPiAuc21hbGwtMiwgLmdyaWQteSA+IC5zbWFsbC0zLCAuZ3JpZC15ID4gLnNtYWxsLTQsIC5ncmlkLXkgPiAuc21hbGwtNSwgLmdyaWQteSA+IC5zbWFsbC02LCAuZ3JpZC15ID4gLnNtYWxsLTcsIC5ncmlkLXkgPiAuc21hbGwtOCwgLmdyaWQteSA+IC5zbWFsbC05LCAuZ3JpZC15ID4gLnNtYWxsLTEwLCAuZ3JpZC15ID4gLnNtYWxsLTExLCAuZ3JpZC15ID4gLnNtYWxsLTEyIHsgZmxleC1iYXNpczogYXV0bzsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXkgPiAubWVkaXVtLWZ1bGwsIC5ncmlkLXkgPiAubWVkaXVtLTEsIC5ncmlkLXkgPiAubWVkaXVtLTIsIC5ncmlkLXkgPiAubWVkaXVtLTMsIC5ncmlkLXkgPiAubWVkaXVtLTQsIC5ncmlkLXkgPiAubWVkaXVtLTUsIC5ncmlkLXkgPiAubWVkaXVtLTYsIC5ncmlkLXkgPiAubWVkaXVtLTcsIC5ncmlkLXkgPiAubWVkaXVtLTgsIC5ncmlkLXkgPiAubWVkaXVtLTksIC5ncmlkLXkgPiAubWVkaXVtLTEwLCAuZ3JpZC15ID4gLm1lZGl1bS0xMSwgLmdyaWQteSA+IC5tZWRpdW0tMTIgeyBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAubGFyZ2UtZnVsbCwgLmdyaWQteSA+IC5sYXJnZS0xLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS00LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS03LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMiB7IGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG4uZ3JpZC15ID4gLnNtYWxsLTEsIC5ncmlkLXkgPiAuc21hbGwtMiwgLmdyaWQteSA+IC5zbWFsbC0zLCAuZ3JpZC15ID4gLnNtYWxsLTQsIC5ncmlkLXkgPiAuc21hbGwtNSwgLmdyaWQteSA+IC5zbWFsbC02LCAuZ3JpZC15ID4gLnNtYWxsLTcsIC5ncmlkLXkgPiAuc21hbGwtOCwgLmdyaWQteSA+IC5zbWFsbC05LCAuZ3JpZC15ID4gLnNtYWxsLTEwLCAuZ3JpZC15ID4gLnNtYWxsLTExLCAuZ3JpZC15ID4gLnNtYWxsLTEyIHsgZmxleDogMCAwIGF1dG87IH1cblxuLmdyaWQteSA+IC5zbWFsbC0xIHsgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuXG4uZ3JpZC15ID4gLnNtYWxsLTIgeyBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuXG4uZ3JpZC15ID4gLnNtYWxsLTMgeyBoZWlnaHQ6IDI1JTsgfVxuXG4uZ3JpZC15ID4gLnNtYWxsLTQgeyBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC15ID4gLnNtYWxsLTUgeyBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuXG4uZ3JpZC15ID4gLnNtYWxsLTYgeyBoZWlnaHQ6IDUwJTsgfVxuXG4uZ3JpZC15ID4gLnNtYWxsLTcgeyBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuXG4uZ3JpZC15ID4gLnNtYWxsLTggeyBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuXG4uZ3JpZC15ID4gLnNtYWxsLTkgeyBoZWlnaHQ6IDc1JTsgfVxuXG4uZ3JpZC15ID4gLnNtYWxsLTEwIHsgaGVpZ2h0OiA4My4zMzMzMyU7IH1cblxuLmdyaWQteSA+IC5zbWFsbC0xMSB7IGhlaWdodDogOTEuNjY2NjclOyB9XG5cbi5ncmlkLXkgPiAuc21hbGwtMTIgeyBoZWlnaHQ6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdyaWQteSA+IC5tZWRpdW0tYXV0byB7IGZsZXg6IDEgMSAwcHg7IGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXkgPiAubWVkaXVtLTEsIC5ncmlkLXkgPiAubWVkaXVtLTIsIC5ncmlkLXkgPiAubWVkaXVtLTMsIC5ncmlkLXkgPiAubWVkaXVtLTQsIC5ncmlkLXkgPiAubWVkaXVtLTUsIC5ncmlkLXkgPiAubWVkaXVtLTYsIC5ncmlkLXkgPiAubWVkaXVtLTcsIC5ncmlkLXkgPiAubWVkaXVtLTgsIC5ncmlkLXkgPiAubWVkaXVtLTksIC5ncmlkLXkgPiAubWVkaXVtLTEwLCAuZ3JpZC15ID4gLm1lZGl1bS0xMSwgLmdyaWQteSA+IC5tZWRpdW0tMTIgeyBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmsgeyBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMSB7IGhlaWdodDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMiB7IGhlaWdodDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTMgeyBoZWlnaHQ6IDI1JTsgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS00IHsgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tNSB7IGhlaWdodDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTYgeyBoZWlnaHQ6IDUwJTsgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS03IHsgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tOCB7IGhlaWdodDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTkgeyBoZWlnaHQ6IDc1JTsgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS0xMCB7IGhlaWdodDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTExIHsgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMTIgeyBoZWlnaHQ6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuZ3JpZC15ID4gLmxhcmdlLWF1dG8geyBmbGV4OiAxIDEgMHB4OyBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAubGFyZ2UtMSwgLmdyaWQteSA+IC5sYXJnZS0yLCAuZ3JpZC15ID4gLmxhcmdlLTMsIC5ncmlkLXkgPiAubGFyZ2UtNCwgLmdyaWQteSA+IC5sYXJnZS01LCAuZ3JpZC15ID4gLmxhcmdlLTYsIC5ncmlkLXkgPiAubGFyZ2UtNywgLmdyaWQteSA+IC5sYXJnZS04LCAuZ3JpZC15ID4gLmxhcmdlLTksIC5ncmlkLXkgPiAubGFyZ2UtMTAsIC5ncmlkLXkgPiAubGFyZ2UtMTEsIC5ncmlkLXkgPiAubGFyZ2UtMTIgeyBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC15ID4gLmxhcmdlLXNocmluayB7IGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTEgeyBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMiB7IGhlaWdodDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMyB7IGhlaWdodDogMjUlOyB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtNCB7IGhlaWdodDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtNSB7IGhlaWdodDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtNiB7IGhlaWdodDogNTAlOyB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtNyB7IGhlaWdodDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtOCB7IGhlaWdodDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtOSB7IGhlaWdodDogNzUlOyB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMTAgeyBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTExIHsgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5sYXJnZS0xMiB7IGhlaWdodDogMTAwJTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteSAuZ3JpZC1wYWRkaW5nLXkgeyBtYXJnaW4tdG9wOiAtMC43NXJlbTsgbWFyZ2luLWJvdHRvbTogLTAuNzVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7IG1hcmdpbi10b3A6IC0wLjYyNXJlbTsgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9IH1cblxuLmdyaWQtcGFkZGluZy15ID4gLmNlbGwgeyBwYWRkaW5nLXRvcDogMC43NXJlbTsgcGFkZGluZy1ib3R0b206IDAuNzVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdyaWQtcGFkZGluZy15ID4gLmNlbGwgeyBwYWRkaW5nLXRvcDogMC42MjVyZW07IHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTsgfSB9XG5cbi5ncmlkLW1hcmdpbi15IHsgbWFyZ2luLXRvcDogLTAuNzVyZW07IG1hcmdpbi1ib3R0b206IC0wLjc1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLW1hcmdpbi15IHsgbWFyZ2luLXRvcDogLTAuNjI1cmVtOyBtYXJnaW4tYm90dG9tOiAtMC42MjVyZW07IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHsgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pOyBtYXJnaW4tdG9wOiAwLjc1cmVtOyBtYXJnaW4tYm90dG9tOiAwLjc1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLW1hcmdpbi15ID4gLmNlbGwgeyBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyBtYXJnaW4tdG9wOiAwLjYyNXJlbTsgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHsgaGVpZ2h0OiBhdXRvOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7IGhlaWdodDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHsgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHsgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7IGhlaWdodDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQgeyBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHsgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7IGhlaWdodDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcgeyBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHsgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7IGhlaWdodDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHsgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEgeyBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7IGhlaWdodDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHsgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7IGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHsgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7IGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHsgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQgeyBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7IGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHsgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcgeyBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7IGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHsgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHsgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHsgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHsgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7IGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHsgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHsgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIgeyBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMgeyBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQgeyBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUgeyBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYgeyBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcgeyBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTggeyBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkgeyBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHsgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7IGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIgeyBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7IGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsgeyBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7IGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTIgeyBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMyB7IGhlaWdodDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHsgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUgeyBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7IGhlaWdodDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHsgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTggeyBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7IGhlaWdodDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7IGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMSB7IGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMiB7IGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH0gfVxuXG4uZ3JpZC1mcmFtZSB7IG92ZXJmbG93OiBoaWRkZW47IHBvc2l0aW9uOiByZWxhdGl2ZTsgZmxleC13cmFwOiBub3dyYXA7IGFsaWduLWl0ZW1zOiBzdHJldGNoOyB3aWR0aDogMTAwdnc7IH1cblxuLmNlbGwgLmdyaWQtZnJhbWUgeyB3aWR0aDogMTAwJTsgfVxuXG4uY2VsbC1ibG9jayB7IG92ZXJmbG93LXg6IGF1dG87IG1heC13aWR0aDogMTAwJTsgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuXG4uY2VsbC1ibG9jay15IHsgb3ZlcmZsb3cteTogYXV0bzsgbWF4LWhlaWdodDogMTAwJTsgbWluLWhlaWdodDogMTAwJTsgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuXG4uY2VsbC1ibG9jay1jb250YWluZXIgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBtYXgtaGVpZ2h0OiAxMDAlOyB9XG5cbi5jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXggeyBtYXgtaGVpZ2h0OiAxMDAlOyBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAubWVkaXVtLWdyaWQtZnJhbWUgeyBvdmVyZmxvdzogaGlkZGVuOyBwb3NpdGlvbjogcmVsYXRpdmU7IGZsZXgtd3JhcDogbm93cmFwOyBhbGlnbi1pdGVtczogc3RyZXRjaDsgd2lkdGg6IDEwMHZ3OyB9XG4gIC5jZWxsIC5tZWRpdW0tZ3JpZC1mcmFtZSB7IHdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jayB7IG92ZXJmbG93LXg6IGF1dG87IG1heC13aWR0aDogMTAwJTsgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgbWF4LWhlaWdodDogMTAwJTsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7IG1heC1oZWlnaHQ6IDEwMCU7IGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jay15IHsgb3ZlcmZsb3cteTogYXV0bzsgbWF4LWhlaWdodDogMTAwJTsgbWluLWhlaWdodDogMTAwJTsgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5sYXJnZS1ncmlkLWZyYW1lIHsgb3ZlcmZsb3c6IGhpZGRlbjsgcG9zaXRpb246IHJlbGF0aXZlOyBmbGV4LXdyYXA6IG5vd3JhcDsgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IHdpZHRoOiAxMDB2dzsgfVxuICAuY2VsbCAubGFyZ2UtZ3JpZC1mcmFtZSB7IHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrIHsgb3ZlcmZsb3cteDogYXV0bzsgbWF4LXdpZHRoOiAxMDAlOyAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7IG1heC1oZWlnaHQ6IDEwMCU7IGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLXkgeyBvdmVyZmxvdy15OiBhdXRvOyBtYXgtaGVpZ2h0OiAxMDAlOyBtaW4taGVpZ2h0OiAxMDAlOyAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuLmdyaWQteS5ncmlkLWZyYW1lIHsgd2lkdGg6IGF1dG87IG92ZXJmbG93OiBoaWRkZW47IHBvc2l0aW9uOiByZWxhdGl2ZTsgZmxleC13cmFwOiBub3dyYXA7IGFsaWduLWl0ZW1zOiBzdHJldGNoOyBoZWlnaHQ6IDEwMHZoOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUgeyB3aWR0aDogYXV0bzsgb3ZlcmZsb3c6IGhpZGRlbjsgcG9zaXRpb246IHJlbGF0aXZlOyBmbGV4LXdyYXA6IG5vd3JhcDsgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IGhlaWdodDogMTAwdmg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuZ3JpZC15LmxhcmdlLWdyaWQtZnJhbWUgeyB3aWR0aDogYXV0bzsgb3ZlcmZsb3c6IGhpZGRlbjsgcG9zaXRpb246IHJlbGF0aXZlOyBmbGV4LXdyYXA6IG5vd3JhcDsgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IGhlaWdodDogMTAwdmg7IH0gfVxuXG4uY2VsbCAuZ3JpZC15LmdyaWQtZnJhbWUgeyBoZWlnaHQ6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmNlbGwgLmdyaWQteS5tZWRpdW0tZ3JpZC1mcmFtZSB7IGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5jZWxsIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7IGhlaWdodDogMTAwJTsgfSB9XG5cbi5ncmlkLW1hcmdpbi15IHsgbWFyZ2luLXRvcDogLTAuNzVyZW07IG1hcmdpbi1ib3R0b206IC0wLjc1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLW1hcmdpbi15IHsgbWFyZ2luLXRvcDogLTAuNjI1cmVtOyBtYXJnaW4tYm90dG9tOiAtMC42MjVyZW07IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHsgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pOyBtYXJnaW4tdG9wOiAwLjc1cmVtOyBtYXJnaW4tYm90dG9tOiAwLjc1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLW1hcmdpbi15ID4gLmNlbGwgeyBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyBtYXJnaW4tdG9wOiAwLjYyNXJlbTsgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHsgaGVpZ2h0OiBhdXRvOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7IGhlaWdodDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHsgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHsgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7IGhlaWdodDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQgeyBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHsgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7IGhlaWdodDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcgeyBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHsgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7IGhlaWdodDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHsgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEgeyBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7IGhlaWdodDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHsgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7IGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHsgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7IGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHsgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQgeyBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7IGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHsgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcgeyBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7IGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHsgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHsgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHsgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHsgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7IGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHsgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHsgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIgeyBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMgeyBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQgeyBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUgeyBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYgeyBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcgeyBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTggeyBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkgeyBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHsgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7IGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIgeyBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7IGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsgeyBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7IGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTIgeyBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMyB7IGhlaWdodDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHsgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUgeyBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7IGhlaWdodDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHsgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTggeyBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7IGhlaWdodDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7IGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMSB7IGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMiB7IGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH0gfVxuXG4uZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHsgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS41cmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHsgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS4yNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHsgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS4yNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1tYXJnaW4teS5tZWRpdW0tZ3JpZC1mcmFtZSB7IGhlaWdodDogY2FsYygxMDB2aCArIDEuMjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmdyaWQtbWFyZ2luLXkubGFyZ2UtZ3JpZC1mcmFtZSB7IGhlaWdodDogY2FsYygxMDB2aCArIDEuMjVyZW0pOyB9IH1cblxuLmFsaWduLWxlZnQgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLXJpZ2h0IHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tY2VudGVyIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLWp1c3RpZnkgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuLmFsaWduLXNwYWNlZCB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cbi5hbGlnbi1sZWZ0LnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLXJpZ2h0LnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1jZW50ZXIudmVydGljYWwubWVudSA+IGxpID4gYSB7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5hbGlnbi10b3AgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tc2VsZi10b3AgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1ib3R0b20geyBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cblxuLmFsaWduLXNlbGYtYm90dG9tIHsgYWxpZ24tc2VsZjogZmxleC1lbmQ7IH1cblxuLmFsaWduLW1pZGRsZSB7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmFsaWduLXNlbGYtbWlkZGxlIHsgYWxpZ24tc2VsZjogY2VudGVyOyB9XG5cbi5hbGlnbi1zdHJldGNoIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cblxuLmFsaWduLXNlbGYtc3RyZXRjaCB7IGFsaWduLXNlbGY6IHN0cmV0Y2g7IH1cblxuLmFsaWduLWNlbnRlci1taWRkbGUgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgYWxpZ24taXRlbXM6IGNlbnRlcjsgYWxpZ24tY29udGVudDogY2VudGVyOyB9XG5cbi5zbWFsbC1vcmRlci0xIHsgb3JkZXI6IDE7IH1cblxuLnNtYWxsLW9yZGVyLTIgeyBvcmRlcjogMjsgfVxuXG4uc21hbGwtb3JkZXItMyB7IG9yZGVyOiAzOyB9XG5cbi5zbWFsbC1vcmRlci00IHsgb3JkZXI6IDQ7IH1cblxuLnNtYWxsLW9yZGVyLTUgeyBvcmRlcjogNTsgfVxuXG4uc21hbGwtb3JkZXItNiB7IG9yZGVyOiA2OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5tZWRpdW0tb3JkZXItMSB7IG9yZGVyOiAxOyB9XG4gIC5tZWRpdW0tb3JkZXItMiB7IG9yZGVyOiAyOyB9XG4gIC5tZWRpdW0tb3JkZXItMyB7IG9yZGVyOiAzOyB9XG4gIC5tZWRpdW0tb3JkZXItNCB7IG9yZGVyOiA0OyB9XG4gIC5tZWRpdW0tb3JkZXItNSB7IG9yZGVyOiA1OyB9XG4gIC5tZWRpdW0tb3JkZXItNiB7IG9yZGVyOiA2OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmxhcmdlLW9yZGVyLTEgeyBvcmRlcjogMTsgfVxuICAubGFyZ2Utb3JkZXItMiB7IG9yZGVyOiAyOyB9XG4gIC5sYXJnZS1vcmRlci0zIHsgb3JkZXI6IDM7IH1cbiAgLmxhcmdlLW9yZGVyLTQgeyBvcmRlcjogNDsgfVxuICAubGFyZ2Utb3JkZXItNSB7IG9yZGVyOiA1OyB9XG4gIC5sYXJnZS1vcmRlci02IHsgb3JkZXI6IDY7IH0gfVxuXG4uZmxleC1jb250YWluZXIgeyBkaXNwbGF5OiBmbGV4OyB9XG5cbi5mbGV4LWNoaWxkLWF1dG8geyBmbGV4OiAxIDEgYXV0bzsgfVxuXG4uZmxleC1jaGlsZC1ncm93IHsgZmxleDogMSAwIGF1dG87IH1cblxuLmZsZXgtY2hpbGQtc2hyaW5rIHsgZmxleDogMCAxIGF1dG87IH1cblxuLmZsZXgtZGlyLXJvdyB7IGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cblxuLmZsZXgtZGlyLXJvdy1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG5cbi5mbGV4LWRpci1jb2x1bW4geyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAubWVkaXVtLWZsZXgtY29udGFpbmVyIHsgZGlzcGxheTogZmxleDsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtYXV0byB7IGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1ncm93IHsgZmxleDogMSAwIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLXNocmluayB7IGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93IHsgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItY29sdW1uIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmxhcmdlLWZsZXgtY29udGFpbmVyIHsgZGlzcGxheTogZmxleDsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1hdXRvIHsgZmxleDogMSAxIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtZ3JvdyB7IGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLXNocmluayB7IGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3cgeyBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5kaXYsIGRsLCBkdCwgZGQsIHVsLCBvbCwgbGksIGgxLCBoMiwgaDMsIGg0LCBoNSwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgaDYsIC51cGRhdGVkIC5kYXRlLCBwcmUsIGZvcm0sIHAsIGJsb2NrcXVvdGUsIHRoLCB0ZCB7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgfVxuXG5wIHsgbWFyZ2luLWJvdHRvbTogMXJlbTsgZm9udC1zaXplOiBpbmhlcml0OyBsaW5lLWhlaWdodDogMS42OyB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbmVtLCBpIHsgZm9udC1zdHlsZTogaXRhbGljOyBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5zdHJvbmcsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IGgxLCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBoMiwgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgaDMsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IGg0LCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBoNSwgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgcCwgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgaDYsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IC51cGRhdGVkIC5kYXRlLCAudXBkYXRlZCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCAuZGF0ZSwgYiB7IGZvbnQtd2VpZ2h0OiBib2xkOyBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5zbWFsbCB7IGZvbnQtc2l6ZTogODAlOyBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5oMSwgLmgxLCBoMiwgLmgyLCBoMywgLmgzLCBoNCwgLmg0LCBoNSwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgLmg1LCBoNiwgLnVwZGF0ZWQgLmRhdGUsIC5oNiB7IGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfODUgSGVhdnkxNDc1NTQ0XCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXdlaWdodDogYm9sZDsgY29sb3I6ICMwNDMyNjM7IHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cblxuaDEgc21hbGwsIC5oMSBzbWFsbCwgaDIgc21hbGwsIC5oMiBzbWFsbCwgaDMgc21hbGwsIC5oMyBzbWFsbCwgaDQgc21hbGwsIC5oNCBzbWFsbCwgaDUgc21hbGwsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAgc21hbGwsIC5oNSBzbWFsbCwgaDYgc21hbGwsIC51cGRhdGVkIC5kYXRlIHNtYWxsLCAuaDYgc21hbGwgeyBsaW5lLWhlaWdodDogMDsgY29sb3I6ICNCMUIxQjE7IH1cblxuaDEsIC5oMSB7IGZvbnQtc2l6ZTogMi4zNzVyZW07IGxpbmUtaGVpZ2h0OiAxLjA1MjYzOyBtYXJnaW4tdG9wOiAwOyBtYXJnaW4tYm90dG9tOiAxLjQzNzVyZW07IH1cblxuaDIsIC5oMiB7IGZvbnQtc2l6ZTogMS44NzVyZW07IGxpbmUtaGVpZ2h0OiAxLjA2NjY3OyBtYXJnaW4tdG9wOiAwOyBtYXJnaW4tYm90dG9tOiAxLjMxMjVyZW07IH1cblxuaDMsIC5oMyB7IGZvbnQtc2l6ZTogMS41NjI1cmVtOyBsaW5lLWhlaWdodDogMS4wNDsgbWFyZ2luLXRvcDogMDsgbWFyZ2luLWJvdHRvbTogMS4xODc1cmVtOyB9XG5cbmg0LCAuaDQgeyBmb250LXNpemU6IDEuMTI1cmVtOyBsaW5lLWhlaWdodDogMS4zMzMzMzsgbWFyZ2luLXRvcDogMDsgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG5oNSwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgLmg1IHsgZm9udC1zaXplOiAxcmVtOyBsaW5lLWhlaWdodDogMS41OyBtYXJnaW4tdG9wOiAwOyBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbmg2LCAudXBkYXRlZCAuZGF0ZSwgLmg2IHsgZm9udC1zaXplOiAxcmVtOyBsaW5lLWhlaWdodDogMS41OyBtYXJnaW4tdG9wOiAwOyBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IGgxLCAuaDEgeyBmb250LXNpemU6IDIuNjI1cmVtOyBsaW5lLWhlaWdodDogMS4xNDI4NjsgbWFyZ2luLWJvdHRvbTogMS42MjVyZW07IH1cbiAgaDIsIC5oMiB7IGZvbnQtc2l6ZTogMi4xMjVyZW07IGxpbmUtaGVpZ2h0OiAxLjIzNTI5OyBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgaDMsIC5oMyB7IGZvbnQtc2l6ZTogMS42MjVyZW07IGxpbmUtaGVpZ2h0OiAxLjIzMDc3OyBtYXJnaW4tYm90dG9tOiAxLjM3NXJlbTsgfVxuICBoNCwgLmg0IHsgZm9udC1zaXplOiAxLjM3NXJlbTsgbGluZS1oZWlnaHQ6IDEuMjcyNzM7IG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgIGg1LCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCAuaDUgeyBmb250LXNpemU6IDEuMTI1cmVtOyBsaW5lLWhlaWdodDogMS4zMzMzMzsgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgaDYsIC51cGRhdGVkIC5kYXRlLCAuaDYgeyBmb250LXNpemU6IDFyZW07IGxpbmUtaGVpZ2h0OiAxLjU7IG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyBoMSwgLmgxIHsgZm9udC1zaXplOiAyLjkzNzVyZW07IGxpbmUtaGVpZ2h0OiAxLjEwNjM4OyBtYXJnaW4tYm90dG9tOiAxLjc1cmVtOyB9XG4gIGgyLCAuaDIgeyBmb250LXNpemU6IDIuMzc1cmVtOyBsaW5lLWhlaWdodDogMS4xODQyMTsgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gIGgzLCAuaDMgeyBmb250LXNpemU6IDEuODc1cmVtOyBsaW5lLWhlaWdodDogMS4xNjY2NzsgbWFyZ2luLWJvdHRvbTogMS4zNzVyZW07IH1cbiAgaDQsIC5oNCB7IGZvbnQtc2l6ZTogMS41NjI1cmVtOyBsaW5lLWhlaWdodDogMS4xMjsgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgaDUsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIC5oNSB7IGZvbnQtc2l6ZTogMS4yNXJlbTsgbGluZS1oZWlnaHQ6IDEuMzsgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgaDYsIC51cGRhdGVkIC5kYXRlLCAuaDYgeyBmb250LXNpemU6IDFyZW07IGxpbmUtaGVpZ2h0OiAxLjU7IG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH0gfVxuXG5hIHsgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IGNvbG9yOiAjMDQzMjYzOyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmE6aG92ZXIsIGEuYWN0aXZlLCBhLmJ1dHRvbi5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlLCBhOmZvY3VzIHsgY29sb3I6ICMwRjU4OUE7IH1cblxuYSBpbWcgeyBib3JkZXI6IDA7IH1cblxuaHIgeyBjbGVhcjogYm90aDsgbWF4LXdpZHRoOiA4My43NXJlbTsgaGVpZ2h0OiAwOyBtYXJnaW46IDEuMjVyZW0gYXV0bzsgYm9yZGVyLXRvcDogMDsgYm9yZGVyLXJpZ2h0OiAwOyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0IxQjFCMTsgYm9yZGVyLWxlZnQ6IDA7IH1cblxudWwsIG9sLCBkbCB7IG1hcmdpbi1ib3R0b206IDFyZW07IGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7IGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxubGkgeyBmb250LXNpemU6IGluaGVyaXQ7IH1cblxudWwgeyBtYXJnaW4tbGVmdDogMS4yNXJlbTsgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyB9XG5cbm9sIHsgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cblxudWwgdWwsIG9sIHVsLCB1bCBvbCwgb2wgb2wgeyBtYXJnaW4tbGVmdDogMS4yNXJlbTsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5kbCB7IG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuZGwgZHQgeyBtYXJnaW4tYm90dG9tOiAwLjNyZW07IGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbmJsb2NrcXVvdGUgeyBtYXJnaW46IDAgMCAxcmVtOyBwYWRkaW5nOiAwLjVyZW0gMS43NXJlbSAwLjA2MjVyZW0gMS43NXJlbTsgYm9yZGVyLWxlZnQ6IG5vbmU7IH1cblxuYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHsgbGluZS1oZWlnaHQ6IDEuNjsgY29sb3I6ICMwNDMyNjM7IH1cblxuYWJiciwgYWJiclt0aXRsZV0geyBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMwMDA7IGN1cnNvcjogaGVscDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmZpZ3VyZSB7IG1hcmdpbjogMDsgfVxuXG5rYmQgeyBtYXJnaW46IDA7IHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDsgYmFja2dyb3VuZC1jb2xvcjogI0U0RTRFNDsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV82NSBNZWRpdW0xNDc1NTMyXCIsIHNhbnMtc2VyaWY7IGNvbG9yOiAjMDAwOyBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuLnN1YmhlYWRlciB7IG1hcmdpbi10b3A6IDAuMnJlbTsgbWFyZ2luLWJvdHRvbTogMC41cmVtOyBmb250LXdlaWdodDogbm9ybWFsOyBsaW5lLWhlaWdodDogMS40OyBjb2xvcjogIzcwNzA3MDsgfVxuXG4ubGVhZCB7IGZvbnQtc2l6ZTogMTI1JTsgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG4uc3RhdCB7IGZvbnQtc2l6ZTogMi41cmVtOyBsaW5lLWhlaWdodDogMTsgfVxuXG5wICsgLnN0YXQgeyBtYXJnaW4tdG9wOiAtMXJlbTsgfVxuXG51bC5uby1idWxsZXQsIG9sLm5vLWJ1bGxldCB7IG1hcmdpbi1sZWZ0OiAwOyBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5jaXRlLWJsb2NrLCBjaXRlIHsgZGlzcGxheTogYmxvY2s7IGNvbG9yOiAjNzA3MDcwOyBmb250LXNpemU6IDAuODEyNXJlbTsgfVxuXG4uY2l0ZS1ibG9jazpiZWZvcmUsIGNpdGU6YmVmb3JlIHsgY29udGVudDogXCLigJQgXCI7IH1cblxuLmNvZGUtaW5saW5lLCBjb2RlIHsgYm9yZGVyOiAxcHggc29saWQgI0IxQjFCMTsgYmFja2dyb3VuZC1jb2xvcjogI0U0RTRFNDsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV82NSBNZWRpdW0xNDc1NTMyXCIsIHNhbnMtc2VyaWY7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGNvbG9yOiAjMDAwOyBkaXNwbGF5OiBpbmxpbmU7IG1heC13aWR0aDogMTAwJTsgd29yZC13cmFwOiBicmVhay13b3JkOyBwYWRkaW5nOiAwLjEyNXJlbSAwLjMxMjVyZW0gMC4wNjI1cmVtOyB9XG5cbi5jb2RlLWJsb2NrIHsgYm9yZGVyOiAxcHggc29saWQgI0IxQjFCMTsgYmFja2dyb3VuZC1jb2xvcjogI0U0RTRFNDsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV82NSBNZWRpdW0xNDc1NTMyXCIsIHNhbnMtc2VyaWY7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGNvbG9yOiAjMDAwOyBkaXNwbGF5OiBibG9jazsgb3ZlcmZsb3c6IGF1dG87IHdoaXRlLXNwYWNlOiBwcmU7IHBhZGRpbmc6IDFyZW07IG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuXG4udGV4dC1sZWZ0IHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4udGV4dC1yaWdodCB7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50ZXh0LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGV4dC1qdXN0aWZ5IHsgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAubWVkaXVtLXRleHQtbGVmdCB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLm1lZGl1bS10ZXh0LXJpZ2h0IHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVkaXVtLXRleHQtanVzdGlmeSB7IHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAubGFyZ2UtdGV4dC1sZWZ0IHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubGFyZ2UtdGV4dC1yaWdodCB7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubGFyZ2UtdGV4dC1qdXN0aWZ5IHsgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbi5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQgeyAqIHsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IGNvbG9yLWFkanVzdDogZWNvbm9teTsgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0ZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICBhLCBhOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuaXIgYTphZnRlciwgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlciwgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cbiAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7IH1cbiAgcHJlLCBibG9ja3F1b3RlIHsgYm9yZGVyOiAxcHggc29saWQgIzcwNzA3MDsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG4gIHRyLCBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG4gIHAsIGgyLCBoMyB7IG9ycGhhbnM6IDM7IHdpZG93czogMzsgfVxuICBoMiwgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuICAucHJpbnQtYnJlYWstaW5zaWRlIHsgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87IH0gfVxuXG4uYnV0dG9uLCBsaS5mYXV4LWJ1dHRvbiBhIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBtYXJnaW46IDAgMCAxcmVtIDA7IHBhZGRpbmc6IDEuMjVlbSAyLjhlbSAxLjI1ZW0gMS40ZW07IGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyBib3JkZXItcmFkaXVzOiA1cHg7IHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0OyBmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzg1IEhlYXZ5MTQ3NTU0NFwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMS4xMjVyZW07IC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgbGluZS1oZWlnaHQ6IDE7IHRleHQtYWxpZ246IGNlbnRlcjsgY3Vyc29yOiBwb2ludGVyOyB9XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnV0dG9uLCBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGEgeyBvdXRsaW5lOiAwOyB9XG5cbi5idXR0b24udGlueSwgbGkuZmF1eC1idXR0b24gYS50aW55IHsgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuXG4uYnV0dG9uLnNtYWxsLCBsaS5mYXV4LWJ1dHRvbiBhLnNtYWxsIHsgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuXG4uYnV0dG9uLmxhcmdlLCBsaS5mYXV4LWJ1dHRvbiBhLmxhcmdlIHsgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuXG4uYnV0dG9uLmV4cGFuZGVkLCBsaS5mYXV4LWJ1dHRvbiBhLmV4cGFuZGVkIHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxMDAlOyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5idXR0b24sIGxpLmZhdXgtYnV0dG9uIGEsIC5idXR0b24uZGlzYWJsZWQsIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQsIC5idXR0b25bZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiBhW2Rpc2FibGVkXSwgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgYS5idXR0b24uZGlzYWJsZWQuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmRpc2FibGVkLmFjdGl2ZSwgYnV0dG9uLmJ1dHRvbi5kaXNhYmxlZC5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCBhLmJ1dHRvbi5hY3RpdmVbZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZVtkaXNhYmxlZF0sIGJ1dHRvbi5idXR0b24uYWN0aXZlW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gYVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiBhW2Rpc2FibGVkXTpmb2N1cyB7IGJhY2tncm91bmQtY29sb3I6ICNGREM0MDA7IGNvbG9yOiAjMDQzMjYzOyB9XG5cbi5idXR0b246aG92ZXIsIGEuYnV0dG9uLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmUsIGJ1dHRvbi5idXR0b24uYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyLCAuYnV0dG9uOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiBhOmZvY3VzIHsgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MzsgY29sb3I6ICMwNDMyNjM7IH1cblxuLmJ1dHRvbi5ob2xsb3csIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93LCAuYnV0dG9uLmhvbGxvdzpob3ZlciwgYS5idXR0b24uaG9sbG93LmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5ob2xsb3cuYWN0aXZlLCBidXR0b24uYnV0dG9uLmhvbGxvdy5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cywgbGkuZmF1eC1idXR0b24gYS5ob2xsb3c6Zm9jdXMsIC5idXR0b24uaG9sbG93LmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiBhLmhvbGxvdy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6aG92ZXIsIGEuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZC5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93LmRpc2FibGVkLmFjdGl2ZSwgYnV0dG9uLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLCBhLmJ1dHRvbi5ob2xsb3cuYWN0aXZlW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gYS5ob2xsb3cuYWN0aXZlW2Rpc2FibGVkXSwgYnV0dG9uLmJ1dHRvbi5ob2xsb3cuYWN0aXZlW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gYS5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93W2Rpc2FibGVkXTpmb2N1cyB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5idXR0b24uaG9sbG93LCBsaS5mYXV4LWJ1dHRvbiBhLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6aG92ZXIsIGEuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZC5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93LmRpc2FibGVkLmFjdGl2ZSwgYnV0dG9uLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLCBhLmJ1dHRvbi5ob2xsb3cuYWN0aXZlW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gYS5ob2xsb3cuYWN0aXZlW2Rpc2FibGVkXSwgYnV0dG9uLmJ1dHRvbi5ob2xsb3cuYWN0aXZlW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gYS5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgbGkuZmF1eC1idXR0b24gYS5ob2xsb3cuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cywgbGkuZmF1eC1idXR0b24gYS5ob2xsb3dbZGlzYWJsZWRdOmZvY3VzIHsgYm9yZGVyOiAxcHggc29saWQgI0ZEQzQwMDsgY29sb3I6ICNGREM0MDA7IH1cblxuLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIGEuYnV0dG9uLmhvbGxvdy5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93LmFjdGl2ZSwgYnV0dG9uLmJ1dHRvbi5ob2xsb3cuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93OmZvY3VzIHsgYm9yZGVyLWNvbG9yOiAjN2Y2MjAwOyBjb2xvcjogIzdmNjIwMDsgfVxuXG4uYnV0dG9uLmNsZWFyLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyLCAuYnV0dG9uLmNsZWFyOmhvdmVyLCBhLmJ1dHRvbi5jbGVhci5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXIuYWN0aXZlLCBidXR0b24uYnV0dG9uLmNsZWFyLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cywgbGkuZmF1eC1idXR0b24gYS5jbGVhcjpmb2N1cywgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gYS5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgYS5idXR0b24uY2xlYXIuZGlzYWJsZWQuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyLmRpc2FibGVkLmFjdGl2ZSwgYnV0dG9uLmJ1dHRvbi5jbGVhci5kaXNhYmxlZC5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIGEuYnV0dG9uLmNsZWFyLmFjdGl2ZVtkaXNhYmxlZF0sIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXIuYWN0aXZlW2Rpc2FibGVkXSwgYnV0dG9uLmJ1dHRvbi5jbGVhci5hY3RpdmVbZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmJ1dHRvbi5jbGVhciwgbGkuZmF1eC1idXR0b24gYS5jbGVhciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gYS5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLCBhLmJ1dHRvbi5jbGVhci5kaXNhYmxlZC5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXIuZGlzYWJsZWQuYWN0aXZlLCBidXR0b24uYnV0dG9uLmNsZWFyLmRpc2FibGVkLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIGEuYnV0dG9uLmNsZWFyLmFjdGl2ZVtkaXNhYmxlZF0sIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXIuYWN0aXZlW2Rpc2FibGVkXSwgYnV0dG9uLmJ1dHRvbi5jbGVhci5hY3RpdmVbZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgbGkuZmF1eC1idXR0b24gYS5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHsgY29sb3I6ICNGREM0MDA7IH1cblxuLmJ1dHRvbi5jbGVhcjpob3ZlciwgYS5idXR0b24uY2xlYXIuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyLmFjdGl2ZSwgYnV0dG9uLmJ1dHRvbi5jbGVhci5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXI6Zm9jdXMgeyBjb2xvcjogIzdmNjIwMDsgfVxuXG4uYnV0dG9uLmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiBhLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gYVtkaXNhYmxlZF0geyBvcGFjaXR5OiAxOyBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5idXR0b24uZHJvcGRvd246OmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmRyb3Bkb3duOjphZnRlciB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMDsgaGVpZ2h0OiAwOyBib3JkZXI6IGluc2V0IDAuNGVtOyBjb250ZW50OiAnJzsgYm9yZGVyLWJvdHRvbS13aWR0aDogMDsgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7IGJvcmRlci1jb2xvcjogI0ZGRiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgcG9zaXRpb246IHJlbGF0aXZlOyB0b3A6IDAuNGVtOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZsb2F0OiByaWdodDsgbWFyZ2luLWxlZnQ6IDIuOGVtOyB9XG5cbi5idXR0b24uZHJvcGRvd24uaG9sbG93OjphZnRlciwgbGkuZmF1eC1idXR0b24gYS5kcm9wZG93bi5ob2xsb3c6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyOjphZnRlciwgbGkuZmF1eC1idXR0b24gYS5kcm9wZG93bi5jbGVhcjo6YWZ0ZXIgeyBib3JkZXItdG9wLWNvbG9yOiAjRkRDNDAwOyB9XG5cbi5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuYXJyb3ctb25seTo6YWZ0ZXIgeyB0b3A6IC0wLjFlbTsgZmxvYXQ6IG5vbmU7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbmEuYnV0dG9uOmhvdmVyLCBhLmJ1dHRvbi5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyLCBhLmJ1dHRvbjpmb2N1cywgbGkuZmF1eC1idXR0b24gYTpmb2N1cyB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5bdHlwZT0ndGV4dCddLCBbdHlwZT0ncGFzc3dvcmQnXSwgW3R5cGU9J2RhdGUnXSwgW3R5cGU9J2RhdGV0aW1lJ10sIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBbdHlwZT0nbW9udGgnXSwgW3R5cGU9J3dlZWsnXSwgW3R5cGU9J2VtYWlsJ10sIFt0eXBlPSdudW1iZXInXSwgW3R5cGU9J3NlYXJjaCddLCBbdHlwZT0ndGVsJ10sIFt0eXBlPSd0aW1lJ10sIFt0eXBlPSd1cmwnXSwgW3R5cGU9J2NvbG9yJ10sIHRleHRhcmVhIHsgZGlzcGxheTogYmxvY2s7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDIuMzc1cmVtOyBtYXJnaW46IDAgMCAxLjg3NXJlbTsgcGFkZGluZzogMC40Njg3NXJlbSAwOyBib3JkZXI6IG5vbmU7IGJvcmRlci1yYWRpdXM6IDA7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBib3gtc2hhZG93OiBub25lOyBmb250LWZhbWlseTogaW5oZXJpdDsgZm9udC1zaXplOiAxcmVtOyBmb250LXdlaWdodDogbm9ybWFsOyBsaW5lLWhlaWdodDogMS41OyBjb2xvcjogIzA0MzI2MzsgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IGFwcGVhcmFuY2U6IG5vbmU7IH1cblxuW3R5cGU9J3RleHQnXTpmb2N1cywgW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIFt0eXBlPSdkYXRlJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cywgW3R5cGU9J21vbnRoJ106Zm9jdXMsIFt0eXBlPSd3ZWVrJ106Zm9jdXMsIFt0eXBlPSdlbWFpbCddOmZvY3VzLCBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsIFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgW3R5cGU9J3RlbCddOmZvY3VzLCBbdHlwZT0ndGltZSddOmZvY3VzLCBbdHlwZT0ndXJsJ106Zm9jdXMsIFt0eXBlPSdjb2xvciddOmZvY3VzLCB0ZXh0YXJlYTpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IGJvcmRlcjogbm9uZTsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGJveC1zaGFkb3c6IG5vbmU7IHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG5cbnRleHRhcmVhIHsgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbnRleHRhcmVhW3Jvd3NdIHsgaGVpZ2h0OiBhdXRvOyB9XG5cbmlucHV0OmRpc2FibGVkLCBpbnB1dFtyZWFkb25seV0sIHRleHRhcmVhOmRpc2FibGVkLCB0ZXh0YXJlYVtyZWFkb25seV0geyBiYWNrZ3JvdW5kLWNvbG9yOiAjRTRFNEU0OyBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cblt0eXBlPSdzdWJtaXQnXSwgW3R5cGU9J2J1dHRvbiddIHsgYXBwZWFyYW5jZTogbm9uZTsgYm9yZGVyLXJhZGl1czogNXB4OyB9XG5cbmlucHV0W3R5cGU9J3NlYXJjaCddIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG46OnBsYWNlaG9sZGVyIHsgY29sb3I6ICM1MjUyNDU7IH1cblxuW3R5cGU9J2ZpbGUnXSwgW3R5cGU9J2NoZWNrYm94J10sIFt0eXBlPSdyYWRpbyddIHsgbWFyZ2luOiAwIDAgMS44NzVyZW07IH1cblxuW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCwgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyBtYXJnaW4tcmlnaHQ6IDEuODc1cmVtOyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblt0eXBlPSdjaGVja2JveCddICsgbGFiZWxbZm9yXSwgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbFtmb3JdIHsgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sIGxhYmVsID4gW3R5cGU9J3JhZGlvJ10geyBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfVxuXG5bdHlwZT0nZmlsZSddIHsgd2lkdGg6IDEwMCU7IH1cblxubGFiZWwgeyBkaXNwbGF5OiBibG9jazsgbWFyZ2luOiAwOyBmb250LXNpemU6IDAuODc1cmVtOyBmb250LXdlaWdodDogbm9ybWFsOyBsaW5lLWhlaWdodDogMS44OyBjb2xvcjogIzAwMDsgfVxuXG5sYWJlbC5taWRkbGUgeyBtYXJnaW46IDAgMCAxLjg3NXJlbTsgcGFkZGluZzogMC45Mzc1cmVtIDA7IH1cblxuLmhlbHAtdGV4dCB7IG1hcmdpbi10b3A6IC0wLjkzNzVyZW07IGZvbnQtc2l6ZTogMC44MTI1cmVtOyBmb250LXN0eWxlOiBpdGFsaWM7IGNvbG9yOiAjMDAwOyB9XG5cbi5pbnB1dC1ncm91cCB7IGRpc3BsYXk6IGZsZXg7IHdpZHRoOiAxMDAlOyBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cblxuLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7IGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICogeyBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5pbnB1dC1ncm91cC1sYWJlbCwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtYnV0dG9uLCAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsIC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsIC5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLCAuaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHsgbWFyZ2luOiAwOyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5pbnB1dC1ncm91cC1sYWJlbCB7IHBhZGRpbmc6IDAgMXJlbTsgYm9yZGVyOiAxcHggc29saWQgI0IxQjFCMTsgYmFja2dyb3VuZDogI0U0RTRFNDsgY29sb3I6ICMwMDA7IHRleHQtYWxpZ246IGNlbnRlcjsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgZGlzcGxheTogZmxleDsgZmxleDogMCAwIGF1dG87IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsOmZpcnN0LWNoaWxkIHsgYm9yZGVyLXJpZ2h0OiAwOyB9XG5cbi5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxkIHsgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHsgYm9yZGVyLXJhZGl1czogMDsgZmxleDogMSAxIDBweDsgbWluLXdpZHRoOiAwOyB9XG5cbi5pbnB1dC1ncm91cC1idXR0b24geyBwYWRkaW5nLXRvcDogMDsgcGFkZGluZy1ib3R0b206IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgZGlzcGxheTogZmxleDsgZmxleDogMCAwIGF1dG87IH1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiBhLCAuaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LCAuaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbiwgLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7IGFsaWduLXNlbGY6IHN0cmV0Y2g7IGhlaWdodDogYXV0bzsgcGFkZGluZy10b3A6IDA7IHBhZGRpbmctYm90dG9tOiAwOyBmb250LXNpemU6IDFyZW07IH1cblxuZmllbGRzZXQgeyBtYXJnaW46IDA7IHBhZGRpbmc6IDA7IGJvcmRlcjogMDsgfVxuXG5sZWdlbmQgeyBtYXgtd2lkdGg6IDEwMCU7IG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfVxuXG4uZmllbGRzZXQgeyBtYXJnaW46IDEuMTI1cmVtIDA7IHBhZGRpbmc6IDEuMjVyZW07IGJvcmRlcjogMXB4IHNvbGlkICNCMUIxQjE7IH1cblxuLmZpZWxkc2V0IGxlZ2VuZCB7IG1hcmdpbjogMDsgbWFyZ2luLWxlZnQ6IC0wLjE4NzVyZW07IHBhZGRpbmc6IDAgMC4xODc1cmVtOyB9XG5cbnNlbGVjdCB7IGhlaWdodDogMi4zNzVyZW07IG1hcmdpbjogMCAwIDEuODc1cmVtOyBwYWRkaW5nOiAwLjQ2ODc1cmVtIDA7IGFwcGVhcmFuY2U6IG5vbmU7IGJvcmRlcjogbm9uZTsgYm9yZGVyLXJhZGl1czogMDsgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjsgZm9udC1mYW1pbHk6IGluaGVyaXQ7IGZvbnQtc2l6ZTogMXJlbTsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgbGluZS1oZWlnaHQ6IDEuNTsgY29sb3I6ICMwNDMyNjM7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4NCwgNTAsIDk5JTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpOyBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7IGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xLjg3NXJlbSBjZW50ZXI7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDsgcGFkZGluZy1yaWdodDogMi44MTI1cmVtOyB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7IHNlbGVjdCB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT1cIik7IH0gfVxuXG5zZWxlY3Q6Zm9jdXMgeyBvdXRsaW5lOiBub25lOyBib3JkZXI6IG5vbmU7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBib3gtc2hhZG93OiBub25lOyB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuXG5zZWxlY3Q6ZGlzYWJsZWQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRTRFNEU0OyBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbnNlbGVjdDo6LW1zLWV4cGFuZCB7IGRpc3BsYXk6IG5vbmU7IH1cblxuc2VsZWN0W211bHRpcGxlXSB7IGhlaWdodDogYXV0bzsgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG5zZWxlY3Q6bm90KFttdWx0aXBsZV0pIHsgcGFkZGluZy10b3A6IDA7IHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHsgYm9yZGVyLWNvbG9yOiAjYWQwMDMxOyBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdlNmVhOyB9XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7IGNvbG9yOiAjYWQwMDMxOyB9XG5cbi5pcy1pbnZhbGlkLWxhYmVsIHsgY29sb3I6ICNhZDAwMzE7IH1cblxuLmZvcm0tZXJyb3IgeyBkaXNwbGF5OiBub25lOyBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtOyBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgZm9udC1zaXplOiAwLjc1cmVtOyBmb250LXdlaWdodDogYm9sZDsgY29sb3I6ICNhZDAwMzE7IH1cblxuLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5oaWRlIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5pbnZpc2libGUgeyB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgLmhpZGUtZm9yLXNtYWxsLW9ubHkgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAwZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLnNob3ctZm9yLXNtYWxsLW9ubHkgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuaGlkZS1mb3ItbWVkaXVtIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgeyAuc2hvdy1mb3ItbWVkaXVtIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5oaWRlLWZvci1tZWRpdW0tb25seSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLnNob3ctZm9yLW1lZGl1bS1vbmx5IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmhpZGUtZm9yLWxhcmdlIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgeyAuc2hvdy1mb3ItbGFyZ2UgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHsgLmhpZGUtZm9yLWxhcmdlLW9ubHkgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7IC5zaG93LWZvci1sYXJnZS1vbmx5IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXNyLCAuc2hvdy1vbi1mb2N1cyB7IHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50OyB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7IGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7IHBhZGRpbmc6IDAgIWltcG9ydGFudDsgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50OyBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7IHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cblxuLnNob3ctb24tZm9jdXM6YWN0aXZlLCAuc2hvdy1vbi1mb2N1czpmb2N1cyB7IHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDsgd2lkdGg6IGF1dG8gIWltcG9ydGFudDsgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7IGNsaXA6IGF1dG8gIWltcG9ydGFudDsgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG5cbi5zaG93LWZvci1sYW5kc2NhcGUsIC5oaWRlLWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHsgLnNob3ctZm9yLWxhbmRzY2FwZSwgLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHsgLnNob3ctZm9yLWxhbmRzY2FwZSwgLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSwgLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7IC5oaWRlLWZvci1sYW5kc2NhcGUsIC5zaG93LWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHsgLmhpZGUtZm9yLWxhbmRzY2FwZSwgLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbi5hY2NvcmRpb24geyBtYXJnaW4tbGVmdDogMDsgYmFja2dyb3VuZDogI0ZGRjsgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG5cbi5hY2NvcmRpb25bZGlzYWJsZWRdIC5hY2NvcmRpb24tdGl0bGUgeyBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7IGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwOyB9XG5cbi5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQgeyBib3JkZXItcmFkaXVzOiAwIDAgNXB4IDVweDsgfVxuXG4uYWNjb3JkaW9uLXRpdGxlIHsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogMS4yNXJlbSAxcmVtOyBib3JkZXI6IDFweCBzb2xpZCAjRTRFNEU0OyBib3JkZXItYm90dG9tOiAwOyBmb250LXNpemU6IDAuNzVyZW07IGxpbmUtaGVpZ2h0OiAxOyBjb2xvcjogIzA0MzI2MzsgfVxuXG46bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAuYWNjb3JkaW9uLXRpdGxlIHsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFNEU0RTQ7IGJvcmRlci1yYWRpdXM6IDAgMCA1cHggNXB4OyB9XG5cbi5hY2NvcmRpb24tdGl0bGU6aG92ZXIsIGEuYWNjb3JkaW9uLXRpdGxlLmFjdGl2ZSwgYnV0dG9uLmFjY29yZGlvbi10aXRsZS5hY3RpdmUsIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRTRFNEU0OyB9XG5cbi5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1MCU7IHJpZ2h0OiAxcmVtOyBtYXJnaW4tdG9wOiAtMC41cmVtOyBjb250ZW50OiBcIitcIjsgfVxuXG4uaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHsgY29udGVudDogXCLigJNcIjsgfVxuXG4uYWNjb3JkaW9uLWNvbnRlbnQgeyBkaXNwbGF5OiBub25lOyBwYWRkaW5nOiAwIDFyZW07IGJvcmRlcjogMXB4IHNvbGlkICNFNEU0RTQ7IGJvcmRlci1ib3R0b206IDA7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBjb2xvcjogIzUyNTI0NTsgfVxuXG46bGFzdC1jaGlsZCA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFNEU0RTQ7IH1cblxuLmJ1dHRvbi1ncm91cCB7IG1hcmdpbi1ib3R0b206IDFyZW07IGRpc3BsYXk6IGZsZXg7IGZsZXgtd3JhcDogd3JhcDsgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IGZsZXgtZ3JvdzogMTsgfVxuXG4uYnV0dG9uLWdyb3VwOjpiZWZvcmUsIC5idXR0b24tZ3JvdXA6OmFmdGVyIHsgZGlzcGxheTogdGFibGU7IGNvbnRlbnQ6ICcgJzsgZmxleC1iYXNpczogMDsgb3JkZXI6IDE7IH1cblxuLmJ1dHRvbi1ncm91cDo6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuXG4uYnV0dG9uLWdyb3VwOjpiZWZvcmUsIC5idXR0b24tZ3JvdXA6OmFmdGVyIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uYnV0dG9uLWdyb3VwIC5idXR0b24sIC5idXR0b24tZ3JvdXAgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cCBhIHsgbWFyZ2luOiAwOyBtYXJnaW4tcmlnaHQ6IDFweDsgbWFyZ2luLWJvdHRvbTogMXB4OyBmb250LXNpemU6IDEuMTI1cmVtOyBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uYnV0dG9uLWdyb3VwIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cCBsaS5mYXV4LWJ1dHRvbiBhOmxhc3QtY2hpbGQsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAgYTpsYXN0LWNoaWxkIHsgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5idXR0b24tZ3JvdXAudGlueSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnRpbnkgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC50aW55IGEgeyBmb250LXNpemU6IDEuMTI1cmVtOyB9XG5cbi5idXR0b24tZ3JvdXAuc21hbGwgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zbWFsbCBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnNtYWxsIGEgeyBmb250LXNpemU6IDEuMTI1cmVtOyB9XG5cbi5idXR0b24tZ3JvdXAubGFyZ2UgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5sYXJnZSBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmxhcmdlIGEgeyBmb250LXNpemU6IDEuMTI1cmVtOyB9XG5cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIGEgeyBmbGV4OiAxIDEgMHB4OyBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgYS5idXR0b24uYWN0aXZlLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYS5hY3RpdmUsIC5idXR0b24tZ3JvdXAuaG9sbG93IGJ1dHRvbi5idXR0b24uYWN0aXZlLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhLmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhLmJ1dHRvbi5kaXNhYmxlZC5hY3RpdmUsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhLmRpc2FibGVkLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgYnV0dG9uLmJ1dHRvbi5kaXNhYmxlZC5hY3RpdmUsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQ6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQ6Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhLmJ1dHRvbi5hY3RpdmVbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZVtkaXNhYmxlZF0sIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuYWN0aXZlW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgYnV0dG9uLmJ1dHRvbi5hY3RpdmVbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhW2Rpc2FibGVkXTpob3ZlciwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhW2Rpc2FibGVkXTpmb2N1cywgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYVtkaXNhYmxlZF06Zm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhLmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgbGkuZmF1eC1idXR0b24gYVtkaXNhYmxlZF0sIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGFbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhLmJ1dHRvbi5kaXNhYmxlZC5hY3RpdmUsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhLmRpc2FibGVkLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgYnV0dG9uLmJ1dHRvbi5kaXNhYmxlZC5hY3RpdmUsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQ6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhLmJ1dHRvbi5hY3RpdmVbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZVtkaXNhYmxlZF0sIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuYWN0aXZlW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgYnV0dG9uLmJ1dHRvbi5hY3RpdmVbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhW2Rpc2FibGVkXTpob3ZlciwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQ6Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhW2Rpc2FibGVkXTpmb2N1cywgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYVtkaXNhYmxlZF06Zm9jdXMgeyBib3JkZXI6IDFweCBzb2xpZCAjRkRDNDAwOyBjb2xvcjogI0ZEQzQwMDsgfVxuXG4uYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhLmJ1dHRvbi5hY3RpdmUsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgYnV0dG9uLmJ1dHRvbi5hY3RpdmUsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGE6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGE6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGE6Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGE6Zm9jdXMgeyBib3JkZXItY29sb3I6ICM3ZjYyMDA7IGNvbG9yOiAjN2Y2MjAwOyB9XG5cbi5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGEsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciBhLmJ1dHRvbi5hY3RpdmUsIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgYS5hY3RpdmUsIC5idXR0b24tZ3JvdXAuY2xlYXIgYnV0dG9uLmJ1dHRvbi5hY3RpdmUsIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYTpob3ZlciwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYTpmb2N1cywgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgYS5idXR0b24uZGlzYWJsZWQuYWN0aXZlLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGEuZGlzYWJsZWQuYWN0aXZlLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGJ1dHRvbi5idXR0b24uZGlzYWJsZWQuYWN0aXZlLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQ6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgYS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQ6Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgYS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciBhLmJ1dHRvbi5hY3RpdmVbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhLmFjdGl2ZVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgYnV0dG9uLmJ1dHRvbi5hY3RpdmVbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGFbZGlzYWJsZWRdOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGFbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGFbZGlzYWJsZWRdOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGFbZGlzYWJsZWRdOmZvY3VzIHsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgYSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgYS5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGEuYnV0dG9uLmRpc2FibGVkLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhLmRpc2FibGVkLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhLmRpc2FibGVkLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5jbGVhciBidXR0b24uYnV0dG9uLmRpc2FibGVkLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhLmRpc2FibGVkOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGEuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgYS5idXR0b24uYWN0aXZlW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZVtkaXNhYmxlZF0sIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgYS5hY3RpdmVbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGJ1dHRvbi5idXR0b24uYWN0aXZlW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhW2Rpc2FibGVkXTpob3ZlciwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQ6Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgYS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhW2Rpc2FibGVkXTpmb2N1cywgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhW2Rpc2FibGVkXTpmb2N1cyB7IGNvbG9yOiAjRkRDNDAwOyB9XG5cbi5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciBhLmJ1dHRvbi5hY3RpdmUsIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgYS5hY3RpdmUsIC5idXR0b24tZ3JvdXAuY2xlYXIgYnV0dG9uLmJ1dHRvbi5hY3RpdmUsIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYTpob3ZlciwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYTpmb2N1cywgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhOmZvY3VzIHsgY29sb3I6ICM3ZjYyMDA7IH1cblxuLmJ1dHRvbi1ncm91cC5uby1nYXBzIC5idXR0b24sIC5idXR0b24tZ3JvdXAubm8tZ2FwcyBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLm5vLWdhcHMgYSB7IG1hcmdpbi1yaWdodDogLTAuMDYyNXJlbTsgfVxuXG4uYnV0dG9uLWdyb3VwLm5vLWdhcHMgLmJ1dHRvbiArIC5idXR0b24sIC5idXR0b24tZ3JvdXAubm8tZ2FwcyBsaS5mYXV4LWJ1dHRvbiBhICsgLmJ1dHRvbiwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5uby1nYXBzIGEgKyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLm5vLWdhcHMgbGkuZmF1eC1idXR0b24gLmJ1dHRvbiArIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAubm8tZ2FwcyAuYnV0dG9uICsgYSwgLmJ1dHRvbi1ncm91cC5uby1nYXBzIGxpLmZhdXgtYnV0dG9uIGEgKyBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLm5vLWdhcHMgYSArIGEgeyBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSB7IGZsZXgtd3JhcDogd3JhcDsgfVxuXG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZCBhLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCBhLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSBhIHsgZmxleDogMCAwIDEwMCU7IH1cblxuLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkIGxpLmZhdXgtYnV0dG9uIGE6bGFzdC1jaGlsZCwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkIGE6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgbGkuZmF1eC1idXR0b24gYTpsYXN0LWNoaWxkLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIGE6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSBsaS5mYXV4LWJ1dHRvbiBhOmxhc3QtY2hpbGQsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIGE6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgYSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgYSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgYSB7IGZsZXg6IDEgMSAwcHg7IG1hcmdpbi1yaWdodDogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCBhIHsgZmxleDogMCAwIGF1dG87IG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSBhIHsgZmxleDogMCAwIGF1dG87IG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgeyAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgYSB7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgeyAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIGEgeyBkaXNwbGF5OiBibG9jazsgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuLmRyb3Bkb3duLXBhbmUgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHotaW5kZXg6IDEwOyBkaXNwbGF5OiBub25lOyB3aWR0aDogMzAwcHg7IHBhZGRpbmc6IDFyZW07IHZpc2liaWxpdHk6IGhpZGRlbjsgYm9yZGVyOiAxcHggc29saWQgI0IxQjFCMTsgYm9yZGVyLXJhZGl1czogNXB4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOyBmb250LXNpemU6IDFyZW07IH1cblxuLmRyb3Bkb3duLXBhbmUuaXMtb3BlbmluZyB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5kcm9wZG93bi1wYW5lLmlzLW9wZW4geyBkaXNwbGF5OiBibG9jazsgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG4uZHJvcGRvd24tcGFuZS50aW55IHsgd2lkdGg6IDEwMHB4OyB9XG5cbi5kcm9wZG93bi1wYW5lLnNtYWxsIHsgd2lkdGg6IDIwMHB4OyB9XG5cbi5kcm9wZG93bi1wYW5lLmxhcmdlIHsgd2lkdGg6IDQwMHB4OyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHsgdG9wOiAxMDAlOyByaWdodDogMDsgbGVmdDogYXV0bzsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyB0b3A6IDEwMCU7IHJpZ2h0OiBhdXRvOyBsZWZ0OiAwOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHsgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAwOyBoZWlnaHQ6IDA7IGJvcmRlcjogaW5zZXQgNnB4OyBjb250ZW50OiAnJzsgYm9yZGVyLWJvdHRvbS13aWR0aDogMDsgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7IGJvcmRlci1jb2xvcjogIzA0MzI2MyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgcmlnaHQ6IDVweDsgbGVmdDogYXV0bzsgbWFyZ2luLXRvcDogLTNweDsgfVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmRyb3Bkb3duLm1lbnUgYSB7IG91dGxpbmU6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaSA+IGEgeyBiYWNrZ3JvdW5kOiAjRkZGOyBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWFjdGl2ZSA+IGEgeyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgY29sb3I6ICMwNDMyNjM7IH1cblxuLm5vLWpzIC5kcm9wZG93bi5tZW51IHVsIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uZHJvcGRvd24ubWVudSAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyB0b3A6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyB0b3A6IDA7IHJpZ2h0OiAxMDAlOyBsZWZ0OiBhdXRvOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7IHJpZ2h0OiBhdXRvOyBsZWZ0OiAxMDAlOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7IHJpZ2h0OiAxNHB4OyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAwOyBoZWlnaHQ6IDA7IGJvcmRlcjogaW5zZXQgNnB4OyBjb250ZW50OiAnJzsgYm9yZGVyLWxlZnQtd2lkdGg6IDA7IGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7IGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzA0MzI2MyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgcmlnaHQ6IGF1dG87IGxlZnQ6IDVweDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDA7IGhlaWdodDogMDsgYm9yZGVyOiBpbnNldCA2cHg7IGNvbnRlbnQ6ICcnOyBib3JkZXItcmlnaHQtd2lkdGg6IDA7IGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMDQzMjYzOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHsgdG9wOiAxMDAlOyByaWdodDogMDsgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyB0b3A6IDEwMCU7IHJpZ2h0OiBhdXRvOyBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHsgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAwOyBoZWlnaHQ6IDA7IGJvcmRlcjogaW5zZXQgNnB4OyBjb250ZW50OiAnJzsgYm9yZGVyLWJvdHRvbS13aWR0aDogMDsgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7IGJvcmRlci1jb2xvcjogIzA0MzI2MyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgcmlnaHQ6IDVweDsgbGVmdDogYXV0bzsgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7IHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyB0b3A6IDA7IHJpZ2h0OiAxMDAlOyBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyByaWdodDogYXV0bzsgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHsgcmlnaHQ6IDE0cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAwOyBoZWlnaHQ6IDA7IGJvcmRlcjogaW5zZXQgNnB4OyBjb250ZW50OiAnJzsgYm9yZGVyLWxlZnQtd2lkdGg6IDA7IGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7IGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzA0MzI2MyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgcmlnaHQ6IGF1dG87IGxlZnQ6IDVweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAwOyBoZWlnaHQ6IDA7IGJvcmRlcjogaW5zZXQgNnB4OyBjb250ZW50OiAnJzsgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwOyBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7IGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzA0MzI2MzsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyB0b3A6IDEwMCU7IHJpZ2h0OiAwOyBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHsgdG9wOiAxMDAlOyByaWdodDogYXV0bzsgbGVmdDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHsgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDA7IGhlaWdodDogMDsgYm9yZGVyOiBpbnNldCA2cHg7IGNvbnRlbnQ6ICcnOyBib3JkZXItYm90dG9tLXdpZHRoOiAwOyBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDsgYm9yZGVyLWNvbG9yOiAjMDQzMjYzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyByaWdodDogNXB4OyBsZWZ0OiBhdXRvOyBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyB0b3A6IDA7IHJpZ2h0OiAxMDAlOyBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7IHJpZ2h0OiBhdXRvOyBsZWZ0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7IHJpZ2h0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAwOyBoZWlnaHQ6IDA7IGJvcmRlcjogaW5zZXQgNnB4OyBjb250ZW50OiAnJzsgYm9yZGVyLWxlZnQtd2lkdGg6IDA7IGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7IGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzA0MzI2MyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgcmlnaHQ6IGF1dG87IGxlZnQ6IDVweDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDA7IGhlaWdodDogMDsgYm9yZGVyOiBpbnNldCA2cHg7IGNvbnRlbnQ6ICcnOyBib3JkZXItcmlnaHQtd2lkdGg6IDA7IGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMDQzMjYzOyB9IH1cblxuLmRyb3Bkb3duLm1lbnUuYWxpZ24tcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHsgdG9wOiAxMDAlOyByaWdodDogMDsgbGVmdDogYXV0bzsgfVxuXG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7IHdpZHRoOiAxMDBweDsgfVxuXG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbC5hbGlnbi1yaWdodCB7IGZsb2F0OiByaWdodDsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6OmFmdGVyIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDUwJTsgcmlnaHQ6IDVweDsgbGVmdDogYXV0bzsgbWFyZ2luLXRvcDogLTZweDsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7IHRvcDogMTAwJTsgbGVmdDogYXV0bzsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHsgcmlnaHQ6IDEwMCU7IGxlZnQ6IGF1dG87IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyByaWdodDogYXV0bzsgbGVmdDogMTAwJTsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAxMDAlOyB6LWluZGV4OiAxOyBkaXNwbGF5OiBub25lOyBtaW4td2lkdGg6IDIwMHB4OyBib3JkZXI6IDFweCBzb2xpZCAjQjFCMUIxOyBiYWNrZ3JvdW5kOiAjRkZGOyB9XG5cbi5kcm9wZG93biAuaXMtZHJvcGRvd24tc3VibWVudSBhIHsgcGFkZGluZzogMC43cmVtIDFyZW07IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIgeyByaWdodDogMTRweDsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAwOyBoZWlnaHQ6IDA7IGJvcmRlcjogaW5zZXQgNnB4OyBjb250ZW50OiAnJzsgYm9yZGVyLWxlZnQtd2lkdGg6IDA7IGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7IGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzA0MzI2MyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgcmlnaHQ6IGF1dG87IGxlZnQ6IDVweDsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMDsgaGVpZ2h0OiAwOyBib3JkZXI6IGluc2V0IDZweDsgY29udGVudDogJyc7IGJvcmRlci1yaWdodC13aWR0aDogMDsgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkOyBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwNDMyNjM7IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyBtYXJnaW4tdG9wOiAtMXB4OyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51ID4gbGkgeyB3aWR0aDogMTAwJTsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS5qcy1kcm9wZG93bi1hY3RpdmUgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4ubGFiZWwgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHBhZGRpbmc6IDVweCAxNHB4OyBib3JkZXItcmFkaXVzOiAwOyBmb250LXNpemU6IDFyZW07IGxpbmUtaGVpZ2h0OiAxOyB3aGl0ZS1zcGFjZTogbm93cmFwOyBjdXJzb3I6IGRlZmF1bHQ7IGJhY2tncm91bmQ6ICNGRkY7IGNvbG9yOiAjMDQzMjYzOyB9XG5cbi5tZW51IHsgcGFkZGluZzogMDsgbWFyZ2luOiAwOyBsaXN0LXN0eWxlOiBub25lOyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGZsZXg7IGZsZXgtd3JhcDogd3JhcDsgfVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm1lbnUgbGkgeyBvdXRsaW5lOiAwOyB9XG5cbi5tZW51IGEsIC5tZW51IC5idXR0b24sIC5tZW51IGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5tZW51IGEgeyBsaW5lLWhlaWdodDogMTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogMC43cmVtIDFyZW07IH1cblxuLm1lbnUgaW5wdXQsIC5tZW51IHNlbGVjdCwgLm1lbnUgYSwgLm1lbnUgYnV0dG9uIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubWVudSBpbnB1dCB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ubWVudSwgLm1lbnUuaG9yaXpvbnRhbCB7IGZsZXgtd3JhcDogd3JhcDsgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4ubWVudS52ZXJ0aWNhbCB7IGZsZXgtd3JhcDogbm93cmFwOyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5tZW51LmV4cGFuZGVkIGxpIHsgZmxleDogMSAxIDBweDsgfVxuXG4ubWVudS5zaW1wbGUgeyBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5tZW51LnNpbXBsZSBsaSArIGxpIHsgbWFyZ2luLWxlZnQ6IDFyZW07IH1cblxuLm1lbnUuc2ltcGxlIGEgeyBwYWRkaW5nOiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5tZW51Lm1lZGl1bS1ob3Jpem9udGFsIHsgZmxleC13cmFwOiB3cmFwOyBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZW51Lm1lZGl1bS12ZXJ0aWNhbCB7IGZsZXgtd3JhcDogbm93cmFwOyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5tZW51Lm1lZGl1bS1leHBhbmRlZCBsaSB7IGZsZXg6IDEgMSAwcHg7IH1cbiAgLm1lbnUubWVkaXVtLXNpbXBsZSBsaSB7IGZsZXg6IDEgMSAwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAubWVudS5sYXJnZS1ob3Jpem9udGFsIHsgZmxleC13cmFwOiB3cmFwOyBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZW51LmxhcmdlLXZlcnRpY2FsIHsgZmxleC13cmFwOiBub3dyYXA7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLm1lbnUubGFyZ2UtZXhwYW5kZWQgbGkgeyBmbGV4OiAxIDEgMHB4OyB9XG4gIC5tZW51LmxhcmdlLXNpbXBsZSBsaSB7IGZsZXg6IDEgMSAwcHg7IH0gfVxuXG4ubWVudS5uZXN0ZWQgeyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG5cbi5tZW51Lmljb25zIGEgeyBkaXNwbGF5OiBmbGV4OyB9XG5cbi5tZW51Lmljb24tdG9wIGEsIC5tZW51Lmljb24tcmlnaHQgYSwgLm1lbnUuaWNvbi1ib3R0b20gYSwgLm1lbnUuaWNvbi1sZWZ0IGEgeyBkaXNwbGF5OiBmbGV4OyB9XG5cbi5tZW51Lmljb24tbGVmdCBsaSBhIHsgZmxleC1mbG93OiByb3cgbm93cmFwOyB9XG5cbi5tZW51Lmljb24tbGVmdCBsaSBhIGltZywgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaSwgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgc3ZnIHsgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtOyB9XG5cbi5tZW51Lmljb24tcmlnaHQgbGkgYSB7IGZsZXgtZmxvdzogcm93IG5vd3JhcDsgfVxuXG4ubWVudS5pY29uLXJpZ2h0IGxpIGEgaW1nLCAubWVudS5pY29uLXJpZ2h0IGxpIGEgaSwgLm1lbnUuaWNvbi1yaWdodCBsaSBhIHN2ZyB7IG1hcmdpbi1sZWZ0OiAwLjI1cmVtOyB9XG5cbi5tZW51Lmljb24tdG9wIGxpIGEgeyBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cblxuLm1lbnUuaWNvbi10b3AgbGkgYSBpbWcsIC5tZW51Lmljb24tdG9wIGxpIGEgaSwgLm1lbnUuaWNvbi10b3AgbGkgYSBzdmcgeyBhbGlnbi1zZWxmOiBzdHJldGNoOyBtYXJnaW4tYm90dG9tOiAwLjI1cmVtOyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLm1lbnUuaWNvbi1ib3R0b20gbGkgYSB7IGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuXG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIGltZywgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpLCAubWVudS5pY29uLWJvdHRvbSBsaSBhIHN2ZyB7IGFsaWduLXNlbGY6IHN0cmV0Y2g7IG1hcmdpbi1ib3R0b206IDAuMjVyZW07IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ubWVudSAuaXMtYWN0aXZlID4gYSB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IGNvbG9yOiAjRkZGOyB9XG5cbi5tZW51IC5hY3RpdmUgPiBhIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgY29sb3I6ICNGRkY7IH1cblxuLm1lbnUuYWxpZ24tbGVmdCB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4ubWVudS5hbGlnbi1yaWdodCBsaSB7IGRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLm1lbnUuYWxpZ24tcmlnaHQgbGkgLnN1Ym1lbnUgbGkgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLm1lbnUuYWxpZ24tcmlnaHQudmVydGljYWwgbGkgeyBkaXNwbGF5OiBibG9jazsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLm1lbnUuYWxpZ24tcmlnaHQudmVydGljYWwgbGkgLnN1Ym1lbnUgbGkgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4ubWVudS5hbGlnbi1yaWdodCAubmVzdGVkIHsgbWFyZ2luLXJpZ2h0OiAxcmVtOyBtYXJnaW4tbGVmdDogMDsgfVxuXG4ubWVudS5hbGlnbi1jZW50ZXIgbGkgeyBkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4ubWVudS5hbGlnbi1jZW50ZXIgbGkgLnN1Ym1lbnUgbGkgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLm1lbnUgLm1lbnUtdGV4dCB7IHBhZGRpbmc6IDAuN3JlbSAxcmVtOyBmb250LXdlaWdodDogYm9sZDsgbGluZS1oZWlnaHQ6IDE7IGNvbG9yOiBpbmhlcml0OyB9XG5cbi5tZW51LWNlbnRlcmVkID4gLm1lbnUgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4ubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIHsgZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLm1lbnUtY2VudGVyZWQgPiAubWVudSBsaSAuc3VibWVudSBsaSB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4ubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLnBhZ2luYXRpb24sIHVsLnBhZ2UtbnVtYmVycyB7IG1hcmdpbi1sZWZ0OiAwOyBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi5wYWdpbmF0aW9uOjpiZWZvcmUsIHVsLnBhZ2UtbnVtYmVyczo6YmVmb3JlLCAucGFnaW5hdGlvbjo6YWZ0ZXIsIHVsLnBhZ2UtbnVtYmVyczo6YWZ0ZXIgeyBkaXNwbGF5OiB0YWJsZTsgY29udGVudDogJyAnOyBmbGV4LWJhc2lzOiAwOyBvcmRlcjogMTsgfVxuXG4ucGFnaW5hdGlvbjo6YWZ0ZXIsIHVsLnBhZ2UtbnVtYmVyczo6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuXG4ucGFnaW5hdGlvbiBsaSwgdWwucGFnZS1udW1iZXJzIGxpIHsgbWFyZ2luLXJpZ2h0OiAwLjA2MjVyZW07IGJvcmRlci1yYWRpdXM6IDVweDsgZm9udC1zaXplOiAxcmVtOyBkaXNwbGF5OiBub25lOyB9XG5cbi5wYWdpbmF0aW9uIGxpOmxhc3QtY2hpbGQsIHVsLnBhZ2UtbnVtYmVycyBsaTpsYXN0LWNoaWxkLCAucGFnaW5hdGlvbiBsaTpmaXJzdC1jaGlsZCwgdWwucGFnZS1udW1iZXJzIGxpOmZpcnN0LWNoaWxkIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5wYWdpbmF0aW9uIGxpLCB1bC5wYWdlLW51bWJlcnMgbGkgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG4ucGFnaW5hdGlvbiBhLCB1bC5wYWdlLW51bWJlcnMgYSwgLnBhZ2luYXRpb24gYnV0dG9uLCB1bC5wYWdlLW51bWJlcnMgYnV0dG9uIHsgZGlzcGxheTogYmxvY2s7IHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTsgYm9yZGVyLXJhZGl1czogNXB4OyBjb2xvcjogIzBGNTg5QTsgfVxuXG4ucGFnaW5hdGlvbiBhOmhvdmVyLCB1bC5wYWdlLW51bWJlcnMgYTpob3ZlciwgLnBhZ2luYXRpb24gYS5hY3RpdmUsIHVsLnBhZ2UtbnVtYmVycyBhLmFjdGl2ZSwgLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyLCB1bC5wYWdlLW51bWJlcnMgYnV0dG9uOmhvdmVyLCAucGFnaW5hdGlvbiBidXR0b24uYWN0aXZlLCB1bC5wYWdlLW51bWJlcnMgYnV0dG9uLmFjdGl2ZSB7IGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLnBhZ2luYXRpb24gLmN1cnJlbnQsIHVsLnBhZ2UtbnVtYmVycyAuY3VycmVudCB7IHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTsgYmFja2dyb3VuZDogbm9uZTsgY29sb3I6ICMwNDMyNjM7IGN1cnNvcjogZGVmYXVsdDsgfVxuXG4ucGFnaW5hdGlvbiAuZGlzYWJsZWQsIHVsLnBhZ2UtbnVtYmVycyAuZGlzYWJsZWQgeyBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07IGNvbG9yOiAjQjFCMUIxOyBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5wYWdpbmF0aW9uIC5kaXNhYmxlZDpob3ZlciwgdWwucGFnZS1udW1iZXJzIC5kaXNhYmxlZDpob3ZlciwgLnBhZ2luYXRpb24gYS5kaXNhYmxlZC5hY3RpdmUsIHVsLnBhZ2UtbnVtYmVycyBhLmRpc2FibGVkLmFjdGl2ZSwgLnBhZ2luYXRpb24gYnV0dG9uLmRpc2FibGVkLmFjdGl2ZSwgdWwucGFnZS1udW1iZXJzIGJ1dHRvbi5kaXNhYmxlZC5hY3RpdmUgeyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4ucGFnaW5hdGlvbiAuZWxsaXBzaXM6OmFmdGVyLCB1bC5wYWdlLW51bWJlcnMgLmVsbGlwc2lzOjphZnRlciB7IHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTsgY29udGVudDogJ1xcMjAyNic7IGNvbG9yOiAjMDQzMjYzOyB9XG5cbi5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSwgLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IGNvbnRlbnQ6IFwiwqtcIjsgfVxuXG4ucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLCAucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luLWxlZnQ6IDAuNXJlbTsgY29udGVudDogXCLCu1wiOyB9XG5cbnRhYmxlIHsgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgd2lkdGg6IDEwMCU7IG1hcmdpbi1ib3R0b206IDFyZW07IGJvcmRlci1yYWRpdXM6IDVweDsgfVxuXG50aGVhZCwgdGJvZHksIHRmb290IHsgYm9yZGVyOiAxcHggc29saWQgI2U0ZTVlOTsgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjsgfVxuXG5jYXB0aW9uIHsgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtOyBmb250LXdlaWdodDogYm9sZDsgfVxuXG50aGVhZCB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IGNvbG9yOiAjRkZGOyB9XG5cbnRmb290IHsgYmFja2dyb3VuZDogI0Y0RjRGNDsgY29sb3I6ICMwNDMyNjM7IH1cblxudGhlYWQgdHIsIHRmb290IHRyIHsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxudGhlYWQgdGgsIHRoZWFkIHRkLCB0Zm9vdCB0aCwgdGZvb3QgdGQgeyBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07IGZvbnQtd2VpZ2h0OiBib2xkOyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbnRib2R5IHRoLCB0Ym9keSB0ZCB7IHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTsgfVxuXG50Ym9keSB0ciB7IGJvcmRlci1ib3R0b206IDA7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTRlNWU5OyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOyB9XG5cbnRhYmxlLnN0cmlwZWQgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHsgYm9yZGVyLWJvdHRvbTogMDsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgeyB0YWJsZS5zdGFjayB0aGVhZCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdGZvb3QgeyBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRyLCB0YWJsZS5zdGFjayB0aCwgdGFibGUuc3RhY2sgdGQgeyBkaXNwbGF5OiBibG9jazsgfVxuICB0YWJsZS5zdGFjayB0ZCB7IGJvcmRlci10b3A6IDA7IH0gfVxuXG50YWJsZS5zY3JvbGwgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDEwMCU7IG92ZXJmbG93LXg6IGF1dG87IH1cblxudGFibGUuaG92ZXIgdGhlYWQgdHI6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQzMjYzOyB9XG5cbnRhYmxlLmhvdmVyIHRmb290IHRyOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgfVxuXG50YWJsZS5ob3ZlciB0Ym9keSB0cjpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7IH1cblxudGFibGUuaG92ZXIuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7IH1cblxuLnRhYmxlLXNjcm9sbCB7IG92ZXJmbG93LXg6IGF1dG87IH1cblxuLnRhYnMgeyBtYXJnaW46IDA7IGJvcmRlcjogMXB4IHNvbGlkICNFNEU0RTQ7IGJhY2tncm91bmQ6ICNGRkY7IGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuXG4udGFiczo6YmVmb3JlLCAudGFiczo6YWZ0ZXIgeyBkaXNwbGF5OiB0YWJsZTsgY29udGVudDogJyAnOyBmbGV4LWJhc2lzOiAwOyBvcmRlcjogMTsgfVxuXG4udGFiczo6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuXG4udGFicy52ZXJ0aWNhbCA+IGxpIHsgZGlzcGxheTogYmxvY2s7IGZsb2F0OiBub25lOyB3aWR0aDogYXV0bzsgfVxuXG4udGFicy5zaW1wbGUgPiBsaSA+IGEgeyBwYWRkaW5nOiAwOyB9XG5cbi50YWJzLnNpbXBsZSA+IGxpID4gYTpob3ZlciwgLnRhYnMuc2ltcGxlID4gbGkgPiBhLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnRhYnMuc2ltcGxlID4gbGkgPiBhLmFjdGl2ZSB7IGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi50YWJzLnByaW1hcnkgeyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyB9XG5cbi50YWJzLnByaW1hcnkgPiBsaSA+IGEgeyBjb2xvcjogI0ZGRjsgfVxuXG4udGFicy5wcmltYXJ5ID4gbGkgPiBhOmhvdmVyLCAudGFicy5wcmltYXJ5ID4gbGkgPiBhLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnRhYnMucHJpbWFyeSA+IGxpID4gYS5hY3RpdmUsIC50YWJzLnByaW1hcnkgPiBsaSA+IGE6Zm9jdXMgeyBiYWNrZ3JvdW5kOiAjMDUzYzc3OyB9XG5cbi50YWJzLXRpdGxlIHsgZmxvYXQ6IGxlZnQ7IH1cblxuLnRhYnMtdGl0bGUgPiBhIHsgZGlzcGxheTogYmxvY2s7IHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtOyBmb250LXNpemU6IDAuNzVyZW07IGxpbmUtaGVpZ2h0OiAxOyBjb2xvcjogIzA0MzI2MzsgfVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnRhYnMtdGl0bGUgPiBhIHsgb3V0bGluZTogMDsgfVxuXG4udGFicy10aXRsZSA+IGE6aG92ZXIsIC50YWJzLXRpdGxlID4gYS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIC50YWJzLXRpdGxlID4gYS5hY3RpdmUgeyBiYWNrZ3JvdW5kOiAjRkZGOyBjb2xvcjogIzAzMmI1NTsgfVxuXG4udGFicy10aXRsZSA+IGE6Zm9jdXMsIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10geyBiYWNrZ3JvdW5kOiAjRTRFNEU0OyBjb2xvcjogIzA0MzI2MzsgfVxuXG4udGFicy1jb250ZW50IHsgYm9yZGVyOiAxcHggc29saWQgI0U0RTRFNDsgYm9yZGVyLXRvcDogMDsgYmFja2dyb3VuZDogI0ZGRjsgY29sb3I6ICM1MjUyNDU7IHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cblxuLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7IGJvcmRlcjogMXB4IHNvbGlkICNFNEU0RTQ7IGJvcmRlci1sZWZ0OiAwOyB9XG5cbi50YWJzLXBhbmVsIHsgZGlzcGxheTogbm9uZTsgcGFkZGluZzogMXJlbTsgfVxuXG4udGFicy1wYW5lbC5pcy1hY3RpdmUgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiogTUlYSU5TICovXG5Aa2V5ZnJhbWVzIGZhZGVpbiB7IGZyb20geyBvcGFjaXR5OiAwOyB9XG4gIHRvIHsgb3BhY2l0eTogMTsgfSB9XG5cbi5zY3JvbGxiYXIsIC5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX2VxdWFsaXplIC5hY2NvcmRpb24tY29udGVudCwgLmNlbGwuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWNvbnRlbnQsIC5jZWxsIC5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWNvbnRlbnQgeyBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5zY3JvbGxiYXIsIC5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX2VxdWFsaXplIC5hY2NvcmRpb24tY29udGVudCwgLmNlbGwuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWNvbnRlbnQsIC5jZWxsIC5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWNvbnRlbnQgeyBvdmVyZmxvdy15OiBzY3JvbGw7IH1cbiAgLnNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXIsIC5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX2VxdWFsaXplIC5hY2NvcmRpb24tY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXIsIC5jZWxsLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbi1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhciwgLmNlbGwgLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uIC5hY2NvcmRpb24tY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXIgeyAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IHdpZHRoOiA4cHg7IH1cbiAgLnNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXI6dmVydGljYWwsIC5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX2VxdWFsaXplIC5hY2NvcmRpb24tY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXI6dmVydGljYWwsIC5jZWxsLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbi1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhcjp2ZXJ0aWNhbCwgLmNlbGwgLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uIC5hY2NvcmRpb24tY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXI6dmVydGljYWwgeyB3aWR0aDogOHB4OyB9XG4gIC5zY3JvbGxiYXI6Oi13ZWJraXQtc2Nyb2xsYmFyOmhvcml6b250YWwsIC5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX2VxdWFsaXplIC5hY2NvcmRpb24tY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXI6aG9yaXpvbnRhbCwgLmNlbGwuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyOmhvcml6b250YWwsIC5jZWxsIC5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyOmhvcml6b250YWwgeyBoZWlnaHQ6IDhweDsgfVxuICAuc2Nyb2xsYmFyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiwgLmFjY29yZGlvbl9fY2FyZC5hY2NvcmRpb25fX2NhcmRfZXF1YWxpemUgLmFjY29yZGlvbi1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiwgLmNlbGwuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iLCAuY2VsbCAuYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24gLmFjY29yZGlvbi1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7IGJvcmRlci1yYWRpdXM6IDhweDsgYm9yZGVyOiAxcHggc29saWQgI0Y0RjRGNDsgLyogc2hvdWxkIG1hdGNoIGJhY2tncm91bmQsIGNhbid0IGJlIHRyYW5zcGFyZW50ICovIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTsgfSB9XG5cbi8qKiAxLiBBdm9pZCB0aGUgSUUgMTAtMTEgYG1pbi1oZWlnaHRgIGJ1Zy4gMi4gU2V0IGBmbGV4LXNocmlua2AgdG8gYDBgIHRvIHByZXZlbnQgc29tZSBicm93c2VycyBmcm9tIGxldHRpbmcgdGhlc2UgaXRlbXMgc2hyaW5rIHRvIHNtYWxsZXIgdGhhbiB0aGVpciBjb250ZW50J3MgZGVmYXVsdCBtaW5pbXVtIHNpemUuIFNlZSBodHRwOi8vYml0Lmx5LzFNbjM1VVMgZm9yIGRldGFpbHMuIDMuIFVzZSBgJWAgaW5zdGVhZCBvZiBgdmhgIHNpbmNlIGB2aGAgaXMgYnVnZ3kgaW4gb2xkZXIgbW9iaWxlIFNhZmFyaS4gKi9cbmh0bWwgeyBoZWlnaHQ6IDEwMCU7IH1cblxuYm9keSB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGhlaWdodDogMTAwJTsgfVxuXG4uc2l0ZS1oZWFkZXIsIC5zaXRlLWZvb3RlciB7IGZsZXg6IG5vbmU7IH1cblxuLnNpdGUtY29udGVudCB7IGZsZXg6IDEgMCBhdXRvOyBwYWRkaW5nOiB2YXIoLS1zcGFjZSkgdmFyKC0tc3BhY2UpIDA7IHdpZHRoOiAxMDAlOyB9XG5cbi5zaXRlLWNvbnRlbnQ6OmFmdGVyIHsgY29udGVudDogJ1xcMDBhMCc7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZSk7IGhlaWdodDogMHB4OyB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLyoqIEdSSUQgWC1ZICovXG4uZ3JpZC1jb250YWluZXItd3JhcHBlciB7IHdpZHRoOiAxMDAlOyB9XG5cbi5ncmlkLWNvbnRhaW5lci5ncmlkLWNvbnRhaW5lci1jb2xsYXBzZSB7IHBhZGRpbmctbGVmdDogMDsgcGFkZGluZy1yaWdodDogMDsgfVxuXG4uYWNjb3JkaW9uIC5hY2NvcmRpb24tdGl0bGUgeyBwYWRkaW5nOiAxMHB4IDAgMTBweCAwOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJvcmRlcjogMDsgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNlNGU1ZTk7IH1cblxuLmFjY29yZGlvbiAuYWNjb3JkaW9uLXRpdGxlIGg1LCAuYWNjb3JkaW9uIC5hY2NvcmRpb24tdGl0bGUgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmFjY29yZGlvbiAuYWNjb3JkaW9uLXRpdGxlIHAsIC5hY2NvcmRpb24gLmFjY29yZGlvbi10aXRsZSAuaDUgeyBtYXgtd2lkdGg6IDk1JTsgbWFyZ2luLWJvdHRvbTogMTBweDsgbWFyZ2luLXRvcDogMTBweDsgfVxuXG4uYWNjb3JkaW9uIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHsgY29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTsgYmFja2dyb3VuZC1zaXplOiAxNXB4IDExcHg7IHdpZHRoOiAxNXB4OyBoZWlnaHQ6IDExcHg7IHJpZ2h0OiAxMHB4OyBtYXJnaW4tdG9wOiAwOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1czsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuYWNjb3JkaW9uIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTsgbWFzay1zaXplOiAxNXB4IDExcHg7IG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7IH0gfVxuXG4uYWNjb3JkaW9uIC5hY2NvcmRpb24tdGl0bGU6aG92ZXIsIC5hY2NvcmRpb24gYS5hY2NvcmRpb24tdGl0bGUuYWN0aXZlLCAuYWNjb3JkaW9uIGJ1dHRvbi5hY2NvcmRpb24tdGl0bGUuYWN0aXZlLCAuYWNjb3JkaW9uIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uYWNjb3JkaW9uIC5hY2NvcmRpb24tY29udGVudCB7IGJvcmRlcjogMDsgbWFyZ2luLXRvcDogMTVweDsgfVxuXG4uYWNjb3JkaW9uIC5hY2NvcmRpb24tY29udGVudCBhIHsgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAxOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5hY2NvcmRpb24gLmFjY29yZGlvbi1jb250ZW50IHAgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cblxuLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtMTgwZGVnKTsgfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9fZ3JpZCAuYWNjb3JkaW9uLWNvbnRlbnQgLmNhcmQuY2FyZF9fdGlsZSAudGlsZS0td3JhcCB7IHBhZGRpbmc6IDIwcHg7IG1pbi1oZWlnaHQ6IDE1MHB4OyBkaXNwbGF5OiB0YWJsZTsgdGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW46IGF1dG87IH1cblxuLmFjY29yZGlvbi5hY2NvcmRpb25fX2dyaWQgLmFjY29yZGlvbi1jb250ZW50IC5jYXJkLmNhcmRfX3RpbGUgLnRpbGUtLXdyYXAgLnRpbGUtLWlubmVyIHsgZGlzcGxheTogdGFibGUtY2VsbDsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9faW5mbyB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmFjY29yZGlvbi5hY2NvcmRpb25fX2luZm8gLmdyaWQtY29udGFpbmVyIHsgcGFkZGluZy1sZWZ0OiA1NXB4OyB9IH1cblxuLmFjY29yZGlvbi5hY2NvcmRpb25fX2luZm8gLmFjY29yZGlvbi10aXRsZSB7IGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDsgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MzsgY29sb3I6ICMwRjU4OUE7IG1hcmdpbi1ib3R0b206IDBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuYWNjb3JkaW9uLmFjY29yZGlvbl9faW5mbyAuYWNjb3JkaW9uLXRpdGxlIHsgcGFkZGluZzogMTBweCA4MHB4OyB9IH1cblxuLmFjY29yZGlvbi5hY2NvcmRpb25fX2luZm8gLmFjY29yZGlvbi10aXRsZSBpbWcgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IG1hcmdpbi1yaWdodDogMjBweDsgfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9faW5mbyAuYWNjb3JkaW9uLXRpdGxlIGg0IHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBtYXJnaW4tdG9wOiAyMHB4ICFpbXBvcnRhbnQ7IH1cblxuLmFjY29yZGlvbi5hY2NvcmRpb25fX2luZm8gLmFjY29yZGlvbi10aXRsZSBoNC5wYXJhZ3JhcGggeyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmFjY29yZGlvbi5hY2NvcmRpb25fX2luZm8gLmFjY29yZGlvbi10aXRsZTpiZWZvcmUgeyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy13aGl0ZS5zdmcpOyBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTFweDsgcmlnaHQ6IDQwcHg7IHRvcDogNTUlOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IC5hY2NvcmRpb24uYWNjb3JkaW9uX19pbmZvIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHsgYmFja2dyb3VuZDogI0ZGRjsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3ctd2hpdGUuc3ZnKTsgbWFzay1zaXplOiAxNXB4IDExcHg7IG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuYWNjb3JkaW9uLmFjY29yZGlvbl9faW5mbyAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7IHJpZ2h0OiAxNTBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5hY2NvcmRpb24uYWNjb3JkaW9uX19pbmZvIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHsgcmlnaHQ6IDIxMHB4OyB9IH1cblxuLmFjY29yZGlvbi5hY2NvcmRpb25fX2luZm8gLmFjY29yZGlvbi10aXRsZTphZnRlciB7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LXdoaXRlLnN2Zyk7IGJhY2tncm91bmQtc2l6ZTogMTVweCAxMXB4OyBsZWZ0OiAwOyB0b3A6IDU1JTsgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgLmFjY29yZGlvbi5hY2NvcmRpb25fX2luZm8gLmFjY29yZGlvbi10aXRsZTphZnRlciB7IGJhY2tncm91bmQ6ICNGRkY7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LXdoaXRlLnN2Zyk7IG1hc2stc2l6ZTogMTVweCAxMXB4OyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9IH1cblxuLmFjY29yZGlvbi5hY2NvcmRpb25fX2luZm8gLmFjY29yZGlvbi1jb250ZW50IHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgY29sb3I6ICM3NjcxNzU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmFjY29yZGlvbi5hY2NvcmRpb25fX2luZm8gLmFjY29yZGlvbi1jb250ZW50IHsgcGFkZGluZzogMzBweCA4MHB4OyB9IH1cblxuLmFjY29yZGlvbi5hY2NvcmRpb25fX2luZm8gLmFjY29yZGlvbi1jb250ZW50IHAgeyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIHsgbGlzdC1zdHlsZTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkLnB1YmxpY2F0aW9uIHsgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWl0ZW0sIC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIFtkYXRhLWFjY29yZGlvbi1pdGVtXSB7IGRpc3BsYXk6IGJsb2NrOyBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7IH1cblxuLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGUsIC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIFtkYXRhLWFjY29yZGlvbi1pdGVtXSAuYWNjb3JkaW9uLXRpdGxlIHsgdGV4dC1hbGlnbjogY2VudGVyOyBib3JkZXI6IDA7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgcGFkZGluZzogMDsgfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTpiZWZvcmUsIC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIFtkYXRhLWFjY29yZGlvbi1pdGVtXSAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7IGJhY2tncm91bmQtc2l6ZTogMTVweCAxMXB4OyB3aWR0aDogMTVweDsgaGVpZ2h0OiAxMXB4OyB0b3A6IDIwcHg7IHJpZ2h0OiAwOyBtYXJnaW4tdG9wOiAwOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTsgbWFzay1zaXplOiAxNXB4IDExcHg7IG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7IH0gfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbi1pdGVtIGEuYWNjb3JkaW9uLXRpdGxlLmFjdGl2ZSwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbi1pdGVtIGJ1dHRvbi5hY2NvcmRpb24tdGl0bGUuYWN0aXZlLCAuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTpmb2N1cywgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dIC5hY2NvcmRpb24tdGl0bGU6aG92ZXIsIC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIFtkYXRhLWFjY29yZGlvbi1pdGVtXSBhLmFjY29yZGlvbi10aXRsZS5hY3RpdmUsIC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIFtkYXRhLWFjY29yZGlvbi1pdGVtXSBidXR0b24uYWNjb3JkaW9uLXRpdGxlLmFjdGl2ZSwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTpob3ZlcjpiZWZvcmUsIC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24taXRlbSBhLmFjY29yZGlvbi10aXRsZS5hY3RpdmU6YmVmb3JlLCAuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWl0ZW0gYnV0dG9uLmFjY29yZGlvbi10aXRsZS5hY3RpdmU6YmVmb3JlLCAuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTpmb2N1czpiZWZvcmUsIC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIFtkYXRhLWFjY29yZGlvbi1pdGVtXSAuYWNjb3JkaW9uLXRpdGxlOmhvdmVyOmJlZm9yZSwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dIGEuYWNjb3JkaW9uLXRpdGxlLmFjdGl2ZTpiZWZvcmUsIC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIFtkYXRhLWFjY29yZGlvbi1pdGVtXSBidXR0b24uYWNjb3JkaW9uLXRpdGxlLmFjdGl2ZTpiZWZvcmUsIC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIFtkYXRhLWFjY29yZGlvbi1pdGVtXSAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzOmJlZm9yZSB7IGJvcmRlci1jb2xvcjogI0ZGRiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSAuc3ViaGVhZGluZywgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dIC5hY2NvcmRpb24tdGl0bGUgLnN1YmhlYWRpbmcgeyBkaXNwbGF5OiBibG9jazsgcGFkZGluZy1yaWdodDogNDBweDsgfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50LCAuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCBbZGF0YS1hY2NvcmRpb24taXRlbV0gLmFjY29yZGlvbi1jb250ZW50IHsgYm9yZGVyOiAwOyBwYWRkaW5nOiAwOyB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24taXRlbS5pcy1hY3RpdmUgLmFjY29yZGlvbi10aXRsZTpiZWZvcmUsIC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIFtkYXRhLWFjY29yZGlvbi1pdGVtXS5pcy1hY3RpdmUgLmFjY29yZGlvbi10aXRsZTpiZWZvcmUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC0xODBkZWcpOyB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24taXRlbSAubGluaywgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dIC5saW5rIHsgZGlzcGxheTogYmxvY2s7IGNvbG9yOiAjMDQzMjYzOyBtYXJnaW4tYm90dG9tOiAxcmVtOyB3aGl0ZS1zcGFjZTogbm93cmFwOyBvdmVyZmxvdzogaGlkZGVuOyB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkLmFjY29yZGlvbl9fY2FyZF9ub2ltZyAuYWNjb3JkaW9uLXRpdGxlIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZC5hY2NvcmRpb25fX2NhcmRfbm9pbWcgLmFjY29yZGlvbl9fY29udGVudCB7IHdpZHRoOiA5NSU7IH1cblxuLmFjY29yZGlvbl9fY2FyZC5ncmV5QmcsIC5hY2NvcmRpb25fX2NhcmQudGFiLWNvbG91ci1iZyB7IGJhY2tncm91bmQtY29sb3I6ICNGNEY0RjQ7IH1cblxuLmFjY29yZGlvbl9fY2FyZC5ncmV5QmcgLmFjY29yZGlvbi1pdGVtLCAuYWNjb3JkaW9uX19jYXJkLnRhYi1jb2xvdXItYmcgLmFjY29yZGlvbi1pdGVtIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgfVxuXG4uYWNjb3JkaW9uX19jYXJkLmdyZXlCZyAuYWNjb3JkaW9uLWNvbnRlbnQsIC5hY2NvcmRpb25fX2NhcmQudGFiLWNvbG91ci1iZyAuYWNjb3JkaW9uLWNvbnRlbnQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyB9XG5cbi5hY2NvcmRpb25fX2NhcmQgLnRhZyB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5hY2NvcmRpb25fX2NhcmQgLnRhZy5idXR0b24sIC5hY2NvcmRpb25fX2NhcmQgbGkuZmF1eC1idXR0b24gYS50YWcsIGxpLmZhdXgtYnV0dG9uIC5hY2NvcmRpb25fX2NhcmQgYS50YWcgeyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9IH1cblxuLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uX3RhZyB7IGNvbG9yOiAjMDQzMjYzICFpbXBvcnRhbnQ7IGJvcmRlcjogMXB4IHNvbGlkICMwNDMyNjMgIWltcG9ydGFudDsgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IG1hcmdpbjogMTVweCAhaW1wb3J0YW50OyBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7IH1cblxuLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uX3RhZy5ub19tYXJnaW4geyBtYXJnaW46IDE1cHggMTVweCAxNXB4IDAgIWltcG9ydGFudDsgfVxuXG4uYWNjb3JkaW9uX19jYXJkLmFjY29yZGlvbl9fY2FyZF9lcXVhbGl6ZSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXG4uYWNjb3JkaW9uX19jYXJkLmFjY29yZGlvbl9fY2FyZF9lcXVhbGl6ZSAuYnJvdyAudGFnIHsgYm9yZGVyOiBzb2xpZCAxcHggbGltZTsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4uYWNjb3JkaW9uX19jYXJkLmFjY29yZGlvbl9fY2FyZF9lcXVhbGl6ZSAuYWNjb3JkaW9uLXRpdGxlIHsgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nOiAwOyBtYXJnaW46IDA7IH1cblxuLmFjY29yZGlvbl9fY2FyZC5hY2NvcmRpb25fX2NhcmRfZXF1YWxpemUgLmFjY29yZGlvbi10aXRsZTpiZWZvcmUgeyB0b3A6IDFlbTsgcmlnaHQ6IDA7IH1cblxuLmFjY29yZGlvbl9fY2FyZC5hY2NvcmRpb25fX2NhcmRfZXF1YWxpemUgLmFjY29yZGlvbi10aXRsZSAucHVzaGRvd25fX2hlYWRpbmcgeyBtYXJnaW46IDAgMCAxcmVtOyBwYWRkaW5nOiAwIDI0cHggMCAwOyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX2VxdWFsaXplIC5hY2NvcmRpb24tdGl0bGUgaDMsIC5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX2VxdWFsaXplIC5hY2NvcmRpb24tdGl0bGUgLmg0LCAuYWNjb3JkaW9uX19jYXJkLmFjY29yZGlvbl9fY2FyZF9lcXVhbGl6ZSAuYWNjb3JkaW9uLXRpdGxlIC5oNSB7IG1heC13aWR0aDogOTUlOyB9XG5cbi5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX2JveGVkIC50YWcgeyBwYWRkaW5nOiAxcmVtIDFyZW0gMDsgfVxuXG4uYWNjb3JkaW9uX19jYXJkLmFjY29yZGlvbl9fY2FyZF9ib3hlZCAuYWNjb3JkaW9uLXRpdGxlIC5wdXNoZG93bl9faGVhZGluZyB7IG1hcmdpbjogMCAxcmVtIDFyZW07IG1heC13aWR0aDogMTAwJTsgfVxuXG4uYWNjb3JkaW9uX19jYXJkLmFjY29yZGlvbl9fY2FyZF9ib3hlZCAuYWNjb3JkaW9uLWNvbnRlbnQgeyBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cblxuLmFjY29yZGlvbl9fY2FyZC5hY2NvcmRpb25fX2NhcmRfYm94ZWQgLmxpbmsgeyBwYWRkaW5nOiAxLjVyZW0gMjBweDsgfVxuXG4uY2FyZF9fZXhwYW5kYWJsZSAuYWNjb3JkaW9uLXRpdGxlIHsgei1pbmRleDogMTsgfVxuXG4uY2FyZF9fZXhwYW5kYWJsZSAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7IGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uY2FyZF9fZXhwYW5kYWJsZSBoNSwgLmNhcmRfX2V4cGFuZGFibGUgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmRfX2V4cGFuZGFibGUgcCwgLmNhcmRfX2V4cGFuZGFibGUgLmg1IHsgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9XG5cbi5jYXJkX19leHBhbmRhYmxlIGg1OmJlZm9yZSwgLmNhcmRfX2V4cGFuZGFibGUgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcDpiZWZvcmUsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkX19leHBhbmRhYmxlIHA6YmVmb3JlLCAuY2FyZF9fZXhwYW5kYWJsZSAuaDU6YmVmb3JlIHsgY29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTsgYmFja2dyb3VuZC1zaXplOiAxNXB4IDExcHg7IHdpZHRoOiAxNXB4OyBoZWlnaHQ6IDExcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAxNnB4OyByaWdodDogMDsgbWFyZ2luLXRvcDogMDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXM7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgLmNhcmRfX2V4cGFuZGFibGUgaDU6YmVmb3JlLCAuY2FyZF9fZXhwYW5kYWJsZSBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwOmJlZm9yZSwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmRfX2V4cGFuZGFibGUgcDpiZWZvcmUsIC5jYXJkX19leHBhbmRhYmxlIC5oNTpiZWZvcmUgeyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpOyBtYXNrLXNpemU6IDE1cHggMTFweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbi5jZWxsLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbi1jb250ZW50LCAuY2VsbCAuYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24gLmFjY29yZGlvbi1jb250ZW50IHsgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG46bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAuYWNjb3JkaW9uLXRpdGxlIHsgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNlNGU1ZTk7IH1cblxuLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLXRpdGxlLW5vLWJvcmRlciwgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZS1uby1ib3JkZXIsIDpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLmFjY29yZGlvbi1mdWxsIC5hY2NvcmRpb24tY29udGVudCB7IGJvcmRlci1sZWZ0OiA1cHggc29saWQgI0ZEQzQwMDsgfVxuXG5kZXRhaWxzIHsgY29sb3I6ICMwNDMyNjM7IH1cblxuZGV0YWlscyBzdW1tYXJ5IHsgcG9zaXRpb246IHJlbGF0aXZlOyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuZGV0YWlscyBzdW1tYXJ5OjptYXJrZXIsIGRldGFpbHMgc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7IGNvbnRlbnQ6ICcnOyBkaXNwbGF5OiBub25lOyB9XG5cbmRldGFpbHMgc3VtbWFyeTphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7IGJhY2tncm91bmQtc2l6ZTogMTVweCAxMXB4OyB3aWR0aDogMTVweDsgaGVpZ2h0OiAxMXB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHBvc2l0aW9uOiByZWxhdGl2ZTsgdG9wOiAwcHg7IHJpZ2h0OiAtMTJweDsgbWFyZ2luLXRvcDogMDsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IGRldGFpbHMgc3VtbWFyeTphZnRlciB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7IG1hc2stc2l6ZTogMTVweCAxMXB4OyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9IH1cblxuZGV0YWlsc1tvcGVuXSBzdW1tYXJ5OmFmdGVyIHsgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7IH1cblxuLmFjY29yZGlvbl9fc2lkZWJhcl9zZWN0aW9uIC5hY2NvcmRpb24uYWNjb3JkaW9uX19zaWRlYmFyIHsgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cblxuLmFjY29yZGlvbl9fc2lkZWJhcl9zZWN0aW9uIC5hY2NvcmRpb24uYWNjb3JkaW9uX19zaWRlYmFyIC5hY2NvcmRpb24tdGl0bGUgeyBwYWRkaW5nOiAyMHB4IDAgNXB4IDA7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLmFjY29yZGlvbl9fc2lkZWJhcl9zZWN0aW9uIC5hY2NvcmRpb24uYWNjb3JkaW9uX19zaWRlYmFyIC5hY2NvcmRpb24tY29udGVudCB7IHBhZGRpbmc6IDIwcHg7IH1cblxuLmFjY29yZGlvbl9fc2lkZWJhcl9zZWN0aW9uIC5hY2NvcmRpb24uYWNjb3JkaW9uX19zaWRlYmFyIC5hY2NvcmRpb24tY29udGVudCAuY2FyZCB7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLmFjY29yZGlvbl9fc2lkZWJhcl9zZWN0aW9uIC5hY2NvcmRpb24uYWNjb3JkaW9uX19zaWRlYmFyIC5hY2NvcmRpb24tY29udGVudCAuY2FyZCAuYWNjb3JkaW9uX3NpZGViYXJfc3BhbiB7IGhlaWdodDogMTFweDsgd2lkdGg6IDJweDsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbjogYXV0byA1cHggYXV0byAwOyB9XG5cbi5jYXB0aW9uIHsgZGlzcGxheTogZmxleDsgbWFyZ2luLWJvdHRvbTogNnB4OyB9XG5cbi5jYXB0aW9uLmRhdGU6YmVmb3JlLCAuY2FwdGlvbi50aW1lOmJlZm9yZSwgLmNhcHRpb24ubG9jYXRpb246YmVmb3JlLCAuY2FwdGlvbi5hZGRyZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXCI7IHRvcDogNTAlOyBsZWZ0OiAwOyBtYXJnaW4tcmlnaHQ6IDEycHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uY2FwdGlvbi5kYXRlOmJlZm9yZSwgLmNhcHRpb24udGltZTpiZWZvcmUgeyBoZWlnaHQ6IDE3cHg7IHdpZHRoOiAxN3B4OyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvdGltZS1pY29uLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIvY29udGFpbjsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuY2FwdGlvbi5kYXRlOmJlZm9yZSwgLmNhcHRpb24udGltZTpiZWZvcmUgeyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvdGltZS1pY29uLnN2Zyk7IG1hc2stc2l6ZTogY29udGFpbjsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgbWFzay1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5jYXB0aW9uLmRhdGU6YmVmb3JlLCAuY2FwdGlvbi50aW1lOmJlZm9yZSB7IG1hcmdpbi10b3A6IDExcHg7IH0gfVxuXG4uY2FwdGlvbi5sb2NhdGlvbiBhLCAuY2FwdGlvbi5hZGRyZXNzIGEgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmNhcHRpb24ubG9jYXRpb246YmVmb3JlLCAuY2FwdGlvbi5hZGRyZXNzOmJlZm9yZSB7IGhlaWdodDogMjFweDsgd2lkdGg6IDE3cHg7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9waW4uc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlci9jb250YWluOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IC5jYXB0aW9uLmxvY2F0aW9uOmJlZm9yZSwgLmNhcHRpb24uYWRkcmVzczpiZWZvcmUgeyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvcGluLnN2Zyk7IG1hc2stc2l6ZTogY29udGFpbjsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgbWFzay1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfSB9XG5cbi8qKiBDb2xvcnMgICovXG4vKiBDb2xvciB2YXJpYWJsZSBkZWZpbmVkIGluICAgfi9zY3NzL3NldHRpbmdzL19zZXR0aW5ncy5zY3NzICAqL1xuLyogTG9vcHMgdGhydSAkY29sb3JzIGFuZCBjcmVhdGUgIGNvbG9yIGJhY2tncm91bmQtY29sb3IgIGJvcmRlciAodW5jb21tZW50IGJvcmRlciBzZWN0aW9uIGJlbG93IHRvIHJlbmRlcikgKi9cbi5jb2xvci1ibGFjayB7IGNvbG9yOiAjMDAwOyB9XG5cbi5jb2xvci1ibGFjay1iZyB7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IH1cblxuLmNvbG9yLXdoaXRlIHsgY29sb3I6ICNGRkY7IH1cblxuLmNvbG9yLXdoaXRlLWJnIHsgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjsgfVxuXG4uY29sb3ItbGlnaHQtZ3JheSB7IGNvbG9yOiAjRTRFNEU0OyB9XG5cbi5jb2xvci1saWdodC1ncmF5LWJnIHsgYmFja2dyb3VuZC1jb2xvcjogI0U0RTRFNDsgfVxuXG4uY29sb3ItbWVkaXVtLWdyYXkgeyBjb2xvcjogI0IxQjFCMTsgfVxuXG4uY29sb3ItbWVkaXVtLWdyYXktYmcgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjQjFCMUIxOyB9XG5cbi5jb2xvci1kYXJrLWdyYXkgeyBjb2xvcjogIzcwNzA3MDsgfVxuXG4uY29sb3ItZGFyay1ncmF5LWJnIHsgYmFja2dyb3VuZC1jb2xvcjogIzcwNzA3MDsgfVxuXG4uY29sb3Itd3JhcC1ncmV5IHsgY29sb3I6ICNGNEY0RjQ7IH1cblxuLmNvbG9yLXdyYXAtZ3JleS1iZyB7IGJhY2tncm91bmQtY29sb3I6ICNGNEY0RjQ7IH1cblxuLyoqIEJhY2tncm91bmQgY29sb3VycyAqL1xuLmJnLXRyYW5zcGFyZW50IHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuXG4vKiogQmFja2dyb3VuZCAqL1xuLmJnIHsgcG9zaXRpb246IHJlbGF0aXZlOyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cbi5iZy5iZy1jb3ZlciB7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cblxuLmJnLmJnLWNlbnRlciB7IGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IH1cblxuLmJnLmJnLXRpbnQ6YmVmb3JlIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IHotaW5kZXg6IDE7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGNvbnRlbnQ6ICcgJzsgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpOyB9XG5cblt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSwgdGV4dGFyZWEsIHNlbGVjdCB7IGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDQzMjYzOyBwYWRkaW5nOiAuNDY4NzVyZW07IH1cblxuW3R5cGU9J3RleHQnXTpmb2N1cywgW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIFt0eXBlPSdkYXRlJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cywgW3R5cGU9J21vbnRoJ106Zm9jdXMsIFt0eXBlPSd3ZWVrJ106Zm9jdXMsIFt0eXBlPSdlbWFpbCddOmZvY3VzLCBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsIFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgW3R5cGU9J3RlbCddOmZvY3VzLCBbdHlwZT0ndGltZSddOmZvY3VzLCBbdHlwZT0ndXJsJ106Zm9jdXMsIFt0eXBlPSdjb2xvciddOmZvY3VzLCB0ZXh0YXJlYTpmb2N1cywgc2VsZWN0OmZvY3VzIHsgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwNDMyNjM7IHBhZGRpbmc6IC40Njg3NXJlbTsgfVxuXG5bdHlwZT0ndGV4dCddOjpwbGFjZWhvbGRlciwgW3R5cGU9J3Bhc3N3b3JkJ106OnBsYWNlaG9sZGVyLCBbdHlwZT0nZGF0ZSddOjpwbGFjZWhvbGRlciwgW3R5cGU9J2RhdGV0aW1lJ106OnBsYWNlaG9sZGVyLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTo6cGxhY2Vob2xkZXIsIFt0eXBlPSdtb250aCddOjpwbGFjZWhvbGRlciwgW3R5cGU9J3dlZWsnXTo6cGxhY2Vob2xkZXIsIFt0eXBlPSdlbWFpbCddOjpwbGFjZWhvbGRlciwgW3R5cGU9J251bWJlciddOjpwbGFjZWhvbGRlciwgW3R5cGU9J3NlYXJjaCddOjpwbGFjZWhvbGRlciwgW3R5cGU9J3RlbCddOjpwbGFjZWhvbGRlciwgW3R5cGU9J3RpbWUnXTo6cGxhY2Vob2xkZXIsIFt0eXBlPSd1cmwnXTo6cGxhY2Vob2xkZXIsIFt0eXBlPSdjb2xvciddOjpwbGFjZWhvbGRlciwgdGV4dGFyZWE6OnBsYWNlaG9sZGVyLCBzZWxlY3Q6OnBsYWNlaG9sZGVyIHsgLyogQ2hyb21lLCBGaXJlZm94LCBPcGVyYSwgU2FmYXJpIDEwLjErICovIG9wYWNpdHk6IDE7IC8qIEZpcmVmb3ggKi8gfVxuXG50ZXh0YXJlYSB7IGJhY2tncm91bmQ6ICNGRkY7IHBhZGRpbmc6IDE0cHg7IGJvcmRlcjogbm9uZTsgcmVzaXplOiBub25lOyB9XG5cbnRleHRhcmVhOmZvY3VzIHsgYm9yZGVyOiBub25lOyB9XG5cbnNlbGVjdCB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbnNlbGVjdDpmb2N1cyB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5zaWdudXBfX2Zvcm0geyBwb3NpdGlvbjogcmVsYXRpdmU7IG92ZXJmbG93OiBoaWRkZW47IG1hcmdpbi10b3A6IC0yMHB4ICFpbXBvcnRhbnQ7IH1cblxuLnNpZ251cF9fZm9ybSAuYmdfX2ltZyB7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IHBhZGRpbmctdG9wOiA3MHB4OyBwYWRkaW5nLWJvdHRvbTogNzBweDsgaGVpZ2h0OiAtd2Via2l0LWZpdC1jb250ZW50OyBoZWlnaHQ6IC1tb3otZml0LWNvbnRlbnQ7IGhlaWdodDogZml0LWNvbnRlbnQ7IGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuc2lnbnVwX19mb3JtIHsgbWFyZ2luLXRvcDogLTQwcHggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5zaWdudXBfX2Zvcm0geyBtYXJnaW4tdG9wOiAtNzBweCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHsgLnNpZ251cF9fZm9ybSAuc2lnbnVwX19mb3JtX2NvbnRhaW5lciB7IG1hcmdpbi1ib3R0b206IDBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7IC5zaWdudXBfX2Zvcm0geyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAuc2lnbnVwX19mb3JtIC5zaWdudXBfX2Zvcm1fY29udGFpbmVyIHsgb3JkZXI6IDI7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLnNpZ251cF9fZm9ybSAuc2lnbnVwX19mb3JtX2NvbnRhaW5lciAuZ3JpZC14IHsgYmFja2dyb3VuZC1jb2xvcjogI0ZEQzQwMDsgcGFkZGluZzogMjVweDsgfSB9XG5cbi5zaWdudXBfX2Zvcm0gKiB7IGNvbG9yOiAjMDQzMjYzOyB9XG5cbi5zaWdudXBfX2Zvcm0gW3R5cGU9J3RleHQnXSwgLnNpZ251cF9fZm9ybSBbdHlwZT0ncGFzc3dvcmQnXSwgLnNpZ251cF9fZm9ybSBbdHlwZT0nZGF0ZSddLCAuc2lnbnVwX19mb3JtIFt0eXBlPSdkYXRldGltZSddLCAuc2lnbnVwX19mb3JtIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCAuc2lnbnVwX19mb3JtIFt0eXBlPSdtb250aCddLCAuc2lnbnVwX19mb3JtIFt0eXBlPSd3ZWVrJ10sIC5zaWdudXBfX2Zvcm0gW3R5cGU9J2VtYWlsJ10sIC5zaWdudXBfX2Zvcm0gW3R5cGU9J251bWJlciddLCAuc2lnbnVwX19mb3JtIFt0eXBlPSdzZWFyY2gnXSwgLnNpZ251cF9fZm9ybSBbdHlwZT0ndGVsJ10sIC5zaWdudXBfX2Zvcm0gW3R5cGU9J3RpbWUnXSwgLnNpZ251cF9fZm9ybSBbdHlwZT0ndXJsJ10sIC5zaWdudXBfX2Zvcm0gW3R5cGU9J2NvbG9yJ10sIC5zaWdudXBfX2Zvcm0gdGV4dGFyZWEsIC5zaWdudXBfX2Zvcm0gc2VsZWN0IHsgcGFkZGluZy1sZWZ0OiAxMHB4OyBwYWRkaW5nLXJpZ2h0OiAxMHB4OyBmb250LXdlaWdodDogYm9sZDsgY29sb3I6ICMwNDMyNjMgIWltcG9ydGFudDsgfVxuXG4uc2lnbnVwX19mb3JtIFt0eXBlPSd0ZXh0J106OnBsYWNlaG9sZGVyLCAuc2lnbnVwX19mb3JtIFt0eXBlPSdwYXNzd29yZCddOjpwbGFjZWhvbGRlciwgLnNpZ251cF9fZm9ybSBbdHlwZT0nZGF0ZSddOjpwbGFjZWhvbGRlciwgLnNpZ251cF9fZm9ybSBbdHlwZT0nZGF0ZXRpbWUnXTo6cGxhY2Vob2xkZXIsIC5zaWdudXBfX2Zvcm0gW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106OnBsYWNlaG9sZGVyLCAuc2lnbnVwX19mb3JtIFt0eXBlPSdtb250aCddOjpwbGFjZWhvbGRlciwgLnNpZ251cF9fZm9ybSBbdHlwZT0nd2VlayddOjpwbGFjZWhvbGRlciwgLnNpZ251cF9fZm9ybSBbdHlwZT0nZW1haWwnXTo6cGxhY2Vob2xkZXIsIC5zaWdudXBfX2Zvcm0gW3R5cGU9J251bWJlciddOjpwbGFjZWhvbGRlciwgLnNpZ251cF9fZm9ybSBbdHlwZT0nc2VhcmNoJ106OnBsYWNlaG9sZGVyLCAuc2lnbnVwX19mb3JtIFt0eXBlPSd0ZWwnXTo6cGxhY2Vob2xkZXIsIC5zaWdudXBfX2Zvcm0gW3R5cGU9J3RpbWUnXTo6cGxhY2Vob2xkZXIsIC5zaWdudXBfX2Zvcm0gW3R5cGU9J3VybCddOjpwbGFjZWhvbGRlciwgLnNpZ251cF9fZm9ybSBbdHlwZT0nY29sb3InXTo6cGxhY2Vob2xkZXIsIC5zaWdudXBfX2Zvcm0gdGV4dGFyZWE6OnBsYWNlaG9sZGVyLCAuc2lnbnVwX19mb3JtIHNlbGVjdDo6cGxhY2Vob2xkZXIgeyBmb250LXdlaWdodDogYm9sZDsgY29sb3I6ICMwNDMyNjM7IH1cblxuLnNpZ251cF9fZm9ybSAuZm9ybS1jb250ZW50IHsgcGFkZGluZzogMzBweCAwOyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkRDNDAwOyBwYWRkaW5nOiAyNXB4OyBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLnNpZ251cF9fZm9ybSAuZm9ybS1jb250ZW50IHsgcGFkZGluZzogMzJweCA0MHB4OyB9IH1cblxuLnNpZ251cF9fZm9ybSBmb3JtIHsgbWFyZ2luLXRvcDogNDBweDsgfVxuXG4uc2lnbnVwX19mb3JtIGZvcm0gaW5wdXQ6bm90KC5idXR0b24pLCAuc2lnbnVwX19mb3JtIGZvcm0gaW5wdXQ6Zm9jdXM6bm90KC5idXR0b24pIHsgY29sb3I6ICMwRjU4OUE7IGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDsgYm9yZGVyLWJvdHRvbS1jb2xvcjogI0ZGRjsgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4uc2lnbnVwX19mb3JtIGZvcm0gbGFiZWwgeyBtYXJnaW4tdG9wOiAyMHB4OyB9XG5cbi5zaWdudXBfX2Zvcm0gLmJ1dHRvbiwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEgeyBtYXJnaW4tdG9wOiAxNnB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5zaWdudXBfX2Zvcm0gaW1nIHsgcGFkZGluZy1yaWdodDogMS4yNXJlbTsgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyBtYXJnaW4tbGVmdDogYXV0bzsgbWFyZ2luLXJpZ2h0OiBhdXRvOyBvcmRlcjogMTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5zaWdudXBfX2Zvcm0gaW1nIHsgbWFyZ2luLXRvcDogMDsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDUwJTsgbGVmdDogY2FsYyg1MCUgKyAyMHB4KTsgd2lkdGg6IDUwJTsgaGVpZ2h0OiAxMDAlOyBvYmplY3QtZml0OiBjb3ZlcjsgfSB9XG5cbmZvcm0jbG9hZF9tb3JlIHsgcGFkZGluZy10b3A6IDUwcHg7IH1cblxuZm9ybSNsb2FkX21vcmUgI2xvYWRNb3JlIHsgbWFyZ2luOiAwIGF1dG87IH1cblxuLmdmb3JtX3dyYXBwZXIgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmdmb3JtX3dyYXBwZXIgZm9ybSB7IG1hcmdpbi10b3A6IDA7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2ZpZWxkcyB7IGxpc3Qtc3R5bGU6IG5vbmU7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5nZm9ybV93cmFwcGVyIC5oaWRkZW5fbGFiZWwgbGVnZW5kLmdmaWVsZF9sYWJlbCB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdmX3Byb2dyZXNzYmFyIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fdGl0bGUgeyBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX3RpdGxlIHsgbWFyZ2luLWJvdHRvbTogM3JlbTsgfSB9XG5cbi5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29udGFpbmVyX2RhdGUgc3Bhbi5zY3JlZW4tcmVhZGVyLXRleHQgeyBkaXNwbGF5OiBub25lOyB9XG5cbi5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29udGFpbmVyX2NoZWNrYm94IHVsLmdmaWVsZF9jaGVja2JveCwgLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb250YWluZXJfY2hlY2tib3ggdWwuZ2ZpZWxkX3JhZGlvLCAuZ2Zvcm1fd3JhcHBlciAuZ2lucHV0X2NvbnRhaW5lcl9yYWRpbyB1bC5nZmllbGRfY2hlY2tib3gsIC5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29udGFpbmVyX3JhZGlvIHVsLmdmaWVsZF9yYWRpbyB7IG1hcmdpbjogMjBweCAwcHggIWltcG9ydGFudDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2lucHV0X2NvbnRhaW5lcl9jaGVja2JveCB1bC5nZmllbGRfY2hlY2tib3ggbGk6OmJlZm9yZSwgLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb250YWluZXJfY2hlY2tib3ggdWwuZ2ZpZWxkX3JhZGlvIGxpOjpiZWZvcmUsIC5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29udGFpbmVyX3JhZGlvIHVsLmdmaWVsZF9jaGVja2JveCBsaTo6YmVmb3JlLCAuZ2Zvcm1fd3JhcHBlciAuZ2lucHV0X2NvbnRhaW5lcl9yYWRpbyB1bC5nZmllbGRfcmFkaW8gbGk6OmJlZm9yZSB7IGNvbnRlbnQ6IHVuc2V0ICFpbXBvcnRhbnQ7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb250YWluZXJfdGV4dGFyZWEgdGV4dGFyZWEgeyBib3JkZXItcmFkaXVzOiA1cHggIWltcG9ydGFudDsgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNCAhaW1wb3J0YW50OyB9XG5cbi5nZm9ybV93cmFwcGVyIC5nZm9ybV92YWxpZGF0aW9uX2NvbnRhaW5lciB7IGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb250YWluZXJfbmFtZSB7IGRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgY29sdW1uLWdhcDogMjBweDsgfVxuICAuZ2Zvcm1fd3JhcHBlciAuZ2lucHV0X2NvbnRhaW5lcl9uYW1lID4gc3BhbiB7IGZsZXg6IDE7IH0gfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2xpc3QgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5nZm9ybV93cmFwcGVyIHRoZWFkLCAuZ2Zvcm1fd3JhcHBlciB0Ym9keSwgLmdmb3JtX3dyYXBwZXIgdGJvZHkgdHIsIC5nZm9ybV93cmFwcGVyIHRmb290IHsgYmFja2dyb3VuZDogbm9uZTsgYm9yZGVyOiBub25lOyB9XG5cbi5nZm9ybV93cmFwcGVyIHRib2R5IHRkIHsgcGFkZGluZy1sZWZ0OiAwOyBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2lucHV0X2NvbnRhaW5lcl90ZXh0YXJlYSB0ZXh0YXJlYSB7IGJhY2tncm91bmQ6ICNGRkYgIWltcG9ydGFudDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2NvbnNlbnRfbGFiZWwgeyBtYXJnaW4tdG9wOiAxMHB4OyBjb2xvcjogIzUyNTI0NTsgfVxuXG4uZ2Zvcm1fd3JhcHBlciB0ZXh0YXJlYSB7IG1hcmdpbi10b3A6IDEwcHg7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdmX21hcmdpbl9idG0geyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi52YWxpZGF0aW9uX2Vycm9yLCAudmFsaWRhdGlvbl9tZXNzYWdlIHsgY29sb3I6ICNhZDAwMzE7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLnZhbGlkYXRpb25fbWVzc2FnZSB7IG1hcmdpbi10b3A6IC0yMHB4OyB9XG5cblthcmlhLWludmFsaWQ9dHJ1ZV0sIC5nZmllbGRfZXJyb3IgaW5wdXQsIC5nZmllbGRfZXJyb3Igc2VsZWN0IHsgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2FkMDAzMTsgY29sb3I6ICM1MjUyNDU7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9lcnJvckAyeC5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQgNXB4LzE3cHggMThweDsgfVxuXG5bYXJpYS1pbnZhbGlkPXRydWVdOjpwbGFjZWhvbGRlciwgLmdmaWVsZF9lcnJvciBpbnB1dDo6cGxhY2Vob2xkZXIsIC5nZmllbGRfZXJyb3Igc2VsZWN0OjpwbGFjZWhvbGRlciB7IGNvbG9yOiAjYWQwMDMxOyB9XG5cbi5nZmllbGRfbGFiZWwgeyBmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzY1IE1lZGl1bTE0NzU1MzJcIixzYW5zLXNlcmlmOyB9XG5cbi5nZmllbGRfZXJyb3IgLmdmaWVsZF9sYWJlbCwgLmdmaWVsZF9lcnJvciAuZ2ZpZWxkX2xhYmVsIHNwYW4geyBjb2xvcjogI2FkMDAzMTsgfVxuXG4uZ2ZpZWxkX2Vycm9yIC5naW5wdXRfY29udGFpbmVyX2ZpbGV1cGxvYWQsIC5nZmllbGRfZXJyb3IgLmdpbnB1dF9yZWNhcHRjaGEgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbnRleHRhcmVhW2FyaWEtaW52YWxpZD10cnVlXSB7IGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLmdmb3JtX2NvbmZpcm1hdGlvbl93cmFwcGVyIHsgdGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW4tYm90dG9tOiA3MHB4OyB9XG5cbi5nZm9ybV9jb25maXJtYXRpb25fd3JhcHBlciAuZ2Zvcm1fY29uZmlybWF0aW9uX21lc3NhZ2UgeyBjb2xvcjogIzA0MzI2MzsgZm9udC1zaXplOiAxLjI1cmVtOyB9XG5cbi5nZm9ybV9hbmNob3IgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogLTE1MHB4OyB9XG5cbi5nZm9ybV9tYXJnaW5fdG9wIHsgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4vKiogQnV0dG9ucyBhbmQgbGlua3MgKi9cbmEsIGJ1dHRvbiwgYS5idXR0b24sIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIGEgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuYS5kb25hdGVfYnRuLCBidXR0b24uZG9uYXRlX2J0biwgYS5idXR0b24uZG9uYXRlX2J0biwgbGkuZmF1eC1idXR0b24gYS5kb25hdGVfYnRuLCBsaS5mYXV4LWJ1dHRvbiBhLmRvbmF0ZV9idG4geyBib3JkZXItcmFkaXVzOiAyM3B4OyB9XG5cbmEgeyB0ZXh0LXVuZGVybGluZS1wb3NpdGlvbjogdW5kZXI7IHRyYW5zaXRpb246IGNvbG9yIDAuMjVzOyB9XG5cbmJ1dHRvbiwgYS5idXR0b24sIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIGEsIGlucHV0LmJ1dHRvbiwgLmJ1dHRvbjp2aXNpdGVkLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQgeyBwb3NpdGlvbjogcmVsYXRpdmU7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi50b3VjaCBidXR0b246bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAudG91Y2ggYnV0dG9uLmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBhLmJ1dHRvbjpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC50b3VjaCBhLmJ1dHRvbi5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAudG91Y2ggbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCBsaS5mYXV4LWJ1dHRvbiAudG91Y2ggYS5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAudG91Y2ggbGkuZmF1eC1idXR0b24gYTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC50b3VjaCBhOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIGE6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAudG91Y2ggbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAudG91Y2ggaW5wdXQuYnV0dG9uOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIC5idXR0b246dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC50b3VjaCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgbGkuZmF1eC1idXR0b24gLnRvdWNoIGEuYWN0aXZlOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAudG91Y2ggYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAudG91Y2ggYTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciB7IGJhY2tncm91bmQ6ICNGREM0MDAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgdHJhbnNwYXJlbnQgMSUsICNGREM0MDAgMSUpIGNlbnRlci8xNTAwMCU7IH1cblxuLnRvdWNoIGJ1dHRvbjpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggYS5idXR0b246bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIGE6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnRvdWNoIGE6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIGE6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIGlucHV0LmJ1dHRvbjpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggLmJ1dHRvbjp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnRvdWNoIGE6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlIHsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZDEzMTsgYmFja2dyb3VuZC1zaXplOiAxMDAlOyB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDBzOyB9XG5cbmJ1dHRvbjphZnRlciwgYS5idXR0b246YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6YWZ0ZXIsIGlucHV0LmJ1dHRvbjphZnRlciwgLmJ1dHRvbjp2aXNpdGVkOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6YWZ0ZXIgeyBjb250ZW50OiAnJzsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiA4cHg7IGhlaWdodDogMTVweDsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDUwJTsgcmlnaHQ6IDI1cHg7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgYmFja2dyb3VuZDogdXJsKFwiLi4vaWNvbnMvYXJyb3ctYnRuLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyL2NvbnRhaW47IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgYnV0dG9uOmFmdGVyLCBhLmJ1dHRvbjphZnRlciwgbGkuZmF1eC1idXR0b24gYTphZnRlciwgbGkuZmF1eC1idXR0b24gYTphZnRlciwgaW5wdXQuYnV0dG9uOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQ6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZDphZnRlciB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9hcnJvdy1idG4tYmx1ZS5zdmcpOyBtYXNrLXNpemU6IGNvbnRhaW47IG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7IG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IH0gfVxuXG5idXR0b246aG92ZXI6YWZ0ZXIsIGJ1dHRvbi5hY3RpdmU6YWZ0ZXIsIGJ1dHRvbjphY3RpdmU6YWZ0ZXIsIGEuYnV0dG9uOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbjphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYTphY3RpdmU6YWZ0ZXIsIGlucHV0LmJ1dHRvbjpob3ZlcjphZnRlciwgaW5wdXQuYnV0dG9uOmFjdGl2ZTphZnRlciwgLmJ1dHRvbjp2aXNpdGVkOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZDphZnRlciwgYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOmhvdmVyOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6YWN0aXZlOmFmdGVyIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaWNvbnMvYXJyb3ctYnRuLXllbGxvdy5zdmdcIik7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgYnV0dG9uOmhvdmVyOmFmdGVyLCBidXR0b24uYWN0aXZlOmFmdGVyLCBidXR0b246YWN0aXZlOmFmdGVyLCBhLmJ1dHRvbjpob3ZlcjphZnRlciwgYS5idXR0b24uYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYTpob3ZlcjphZnRlciwgYS5idXR0b246YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYTpob3ZlcjphZnRlciwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6YWN0aXZlOmFmdGVyLCBpbnB1dC5idXR0b246aG92ZXI6YWZ0ZXIsIGlucHV0LmJ1dHRvbjphY3RpdmU6YWZ0ZXIsIC5idXR0b246dmlzaXRlZDpob3ZlcjphZnRlciwgYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIGJ1dHRvbi5idXR0b24uYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZDpob3ZlcjphZnRlciwgLmJ1dHRvbjp2aXNpdGVkOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOmFjdGl2ZTphZnRlciB7IGJhY2tncm91bmQ6ICNGREM0MDA7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9hcnJvdy1idG4teWVsbG93LnN2Zyk7IH0gfVxuXG5idXR0b24ucHJpbWFyeSwgYnV0dG9uLnByaW1hcnk6dmlzaXRlZCwgYnV0dG9uLnByaW1hcnk6YWN0aXZlLCBhLmJ1dHRvbi5wcmltYXJ5LCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnksIGEuYnV0dG9uLnByaW1hcnk6dmlzaXRlZCwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OnZpc2l0ZWQsIGEuYnV0dG9uLnByaW1hcnk6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnksIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTp2aXNpdGVkLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWN0aXZlLCBpbnB1dC5idXR0b24ucHJpbWFyeSwgaW5wdXQuYnV0dG9uLnByaW1hcnk6dmlzaXRlZCwgaW5wdXQuYnV0dG9uLnByaW1hcnk6YWN0aXZlLCAuYnV0dG9uOnZpc2l0ZWQucHJpbWFyeSwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnksIC5idXR0b246dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQsIC5idXR0b246dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnk6YWN0aXZlIHsgYmFja2dyb3VuZC1jb2xvcjogI0ZEQzQwMDsgY29sb3I6ICMwNDMyNjM7IH1cblxuYnV0dG9uLnByaW1hcnk6aG92ZXIsIGJ1dHRvbi5wcmltYXJ5LmFjdGl2ZSwgYnV0dG9uLnByaW1hcnk6YWN0aXZlLCBidXR0b24ucHJpbWFyeTp2aXNpdGVkOmhvdmVyLCBidXR0b24ucHJpbWFyeS5hY3RpdmU6dmlzaXRlZCwgYnV0dG9uLnByaW1hcnk6dmlzaXRlZDphY3RpdmUsIGJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTpob3ZlciwgYnV0dG9uLnByaW1hcnkuYWN0aXZlOmFjdGl2ZSwgYnV0dG9uLnByaW1hcnk6YWN0aXZlOmFjdGl2ZSwgYS5idXR0b24ucHJpbWFyeTpob3ZlciwgYS5idXR0b24ucHJpbWFyeS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTpob3ZlciwgYS5idXR0b24ucHJpbWFyeTphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphY3RpdmUsIGEuYnV0dG9uLnByaW1hcnk6dmlzaXRlZDpob3ZlciwgYS5idXR0b24ucHJpbWFyeS5hY3RpdmU6dmlzaXRlZCwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LmFjdGl2ZTp2aXNpdGVkLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6dmlzaXRlZDpob3ZlciwgYS5idXR0b24ucHJpbWFyeTp2aXNpdGVkOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OnZpc2l0ZWQ6YWN0aXZlLCBhLmJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTpob3ZlciwgYS5idXR0b24ucHJpbWFyeS5hY3RpdmU6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnkuYWN0aXZlOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmFjdGl2ZTpob3ZlciwgYS5idXR0b24ucHJpbWFyeTphY3RpdmU6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWN0aXZlOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnkuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6dmlzaXRlZDpob3ZlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LmFjdGl2ZTp2aXNpdGVkLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6dmlzaXRlZDphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphY3RpdmU6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeS5hY3RpdmU6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWN0aXZlOmFjdGl2ZSwgaW5wdXQuYnV0dG9uLnByaW1hcnk6aG92ZXIsIGlucHV0LmJ1dHRvbi5wcmltYXJ5OmFjdGl2ZSwgaW5wdXQuYnV0dG9uLnByaW1hcnk6dmlzaXRlZDpob3ZlciwgaW5wdXQuYnV0dG9uLnByaW1hcnk6dmlzaXRlZDphY3RpdmUsIGlucHV0LmJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTpob3ZlciwgaW5wdXQuYnV0dG9uLnByaW1hcnk6YWN0aXZlOmFjdGl2ZSwgLmJ1dHRvbjp2aXNpdGVkLnByaW1hcnk6aG92ZXIsIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnksIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOnZpc2l0ZWQucHJpbWFyeSwgYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5LCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQucHJpbWFyeTpob3ZlciwgLmJ1dHRvbjp2aXNpdGVkLnByaW1hcnk6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQucHJpbWFyeTphY3RpdmUsIC5idXR0b246dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQ6aG92ZXIsIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZCwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQsIGJ1dHRvbi5idXR0b24uYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTp2aXNpdGVkLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQucHJpbWFyeTp2aXNpdGVkOmhvdmVyLCAuYnV0dG9uOnZpc2l0ZWQucHJpbWFyeTp2aXNpdGVkOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZDphY3RpdmUsIC5idXR0b246dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZTpob3ZlciwgYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTphY3RpdmUsIGJ1dHRvbi5idXR0b24uYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZTpob3ZlciwgLmJ1dHRvbjp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmFjdGl2ZSB7IGNvbG9yOiAjRkZGOyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQzMjYzOyB9XG5cbmJ1dHRvbi5wcmltYXJ5OmhvdmVyOmFmdGVyLCBidXR0b24ucHJpbWFyeS5hY3RpdmU6YWZ0ZXIsIGJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTphZnRlciwgYnV0dG9uLnByaW1hcnk6dmlzaXRlZDpob3ZlcjphZnRlciwgYnV0dG9uLnByaW1hcnkuYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIGJ1dHRvbi5wcmltYXJ5OnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCBidXR0b24ucHJpbWFyeTphY3RpdmU6aG92ZXI6YWZ0ZXIsIGJ1dHRvbi5wcmltYXJ5LmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnk6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnkuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnkuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnk6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWN0aXZlOmFmdGVyLCBhLmJ1dHRvbi5wcmltYXJ5OnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnkuYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeS5hY3RpdmU6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnk6dmlzaXRlZDphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTp2aXNpdGVkOmFjdGl2ZTphZnRlciwgYS5idXR0b24ucHJpbWFyeTphY3RpdmU6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnkuYWN0aXZlOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphY3RpdmU6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnk6YWN0aXZlOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTpob3ZlcjphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeS5hY3RpdmU6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWN0aXZlOmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnkuYWN0aXZlOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGlucHV0LmJ1dHRvbi5wcmltYXJ5OmhvdmVyOmFmdGVyLCBpbnB1dC5idXR0b24ucHJpbWFyeTphY3RpdmU6YWZ0ZXIsIGlucHV0LmJ1dHRvbi5wcmltYXJ5OnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIGlucHV0LmJ1dHRvbi5wcmltYXJ5OnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCBpbnB1dC5idXR0b24ucHJpbWFyeTphY3RpdmU6aG92ZXI6YWZ0ZXIsIGlucHV0LmJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIC5idXR0b246dmlzaXRlZC5wcmltYXJ5OmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6YWZ0ZXIsIGJ1dHRvbi5idXR0b24uYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnk6aG92ZXI6YWZ0ZXIsIC5idXR0b246dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQucHJpbWFyeTp2aXNpdGVkOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQ6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTp2aXNpdGVkOmFmdGVyLCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZDpob3ZlcjphZnRlciwgLmJ1dHRvbjp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZDphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQucHJpbWFyeTphY3RpdmU6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmFmdGVyLCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQucHJpbWFyeTphY3RpdmU6aG92ZXI6YWZ0ZXIsIC5idXR0b246dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZTphY3RpdmU6YWZ0ZXIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pY29ucy9hcnJvdy1idG4teWVsbG93LnN2Z1wiKTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyBidXR0b24ucHJpbWFyeTpob3ZlcjphZnRlciwgYnV0dG9uLnByaW1hcnkuYWN0aXZlOmFmdGVyLCBidXR0b24ucHJpbWFyeTphY3RpdmU6YWZ0ZXIsIGJ1dHRvbi5wcmltYXJ5OnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIGJ1dHRvbi5wcmltYXJ5LmFjdGl2ZTp2aXNpdGVkOmFmdGVyLCBidXR0b24ucHJpbWFyeTp2aXNpdGVkOmFjdGl2ZTphZnRlciwgYnV0dG9uLnByaW1hcnk6YWN0aXZlOmhvdmVyOmFmdGVyLCBidXR0b24ucHJpbWFyeS5hY3RpdmU6YWN0aXZlOmFmdGVyLCBidXR0b24ucHJpbWFyeTphY3RpdmU6YWN0aXZlOmFmdGVyLCBhLmJ1dHRvbi5wcmltYXJ5OmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5wcmltYXJ5LmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmFjdGl2ZTphZnRlciwgYS5idXR0b24ucHJpbWFyeTp2aXNpdGVkOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5wcmltYXJ5LmFjdGl2ZTp2aXNpdGVkOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnkuYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTp2aXNpdGVkOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5wcmltYXJ5OnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6dmlzaXRlZDphY3RpdmU6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnk6YWN0aXZlOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5wcmltYXJ5LmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeS5hY3RpdmU6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWN0aXZlOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphY3RpdmU6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6aG92ZXI6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeS5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTp2aXNpdGVkOmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnkuYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTp2aXNpdGVkOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmFjdGl2ZTpob3ZlcjphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphY3RpdmU6YWN0aXZlOmFmdGVyLCBpbnB1dC5idXR0b24ucHJpbWFyeTpob3ZlcjphZnRlciwgaW5wdXQuYnV0dG9uLnByaW1hcnk6YWN0aXZlOmFmdGVyLCBpbnB1dC5idXR0b24ucHJpbWFyeTp2aXNpdGVkOmhvdmVyOmFmdGVyLCBpbnB1dC5idXR0b24ucHJpbWFyeTp2aXNpdGVkOmFjdGl2ZTphZnRlciwgaW5wdXQuYnV0dG9uLnByaW1hcnk6YWN0aXZlOmhvdmVyOmFmdGVyLCBpbnB1dC5idXR0b24ucHJpbWFyeTphY3RpdmU6YWN0aXZlOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQucHJpbWFyeTpob3ZlcjphZnRlciwgYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OmFmdGVyLCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5wcmltYXJ5OmhvdmVyOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQucHJpbWFyeTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZTphZnRlciwgLmJ1dHRvbjp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZDpob3ZlcjphZnRlciwgYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTp2aXNpdGVkOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZDphZnRlciwgYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQ6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIC5idXR0b246dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQucHJpbWFyeTp2aXNpdGVkOmFjdGl2ZTphZnRlciwgLmJ1dHRvbjp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZTphZnRlciwgYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmhvdmVyOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQucHJpbWFyeTphY3RpdmU6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQucHJpbWFyeTphY3RpdmU6YWN0aXZlOmFmdGVyIHsgYmFja2dyb3VuZDogI0ZEQzQwMDsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnKTsgfSB9XG5cbmJ1dHRvbi5zZWNvbmRhcnksIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbiwgYS5idXR0b24uc2Vjb25kYXJ5LCAuc2lnbnVwX19mb3JtIGEuYnV0dG9uLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYSwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnksIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5LCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYSwgaW5wdXQuYnV0dG9uLnNlY29uZGFyeSwgLnNpZ251cF9fZm9ybSBpbnB1dC5idXR0b24sIC5idXR0b246dmlzaXRlZC5zZWNvbmRhcnksIC5zaWdudXBfX2Zvcm0gLmJ1dHRvbjp2aXNpdGVkLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZCwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOnZpc2l0ZWQsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5zZWNvbmRhcnkgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMEY1ODlBOyBjb2xvcjogI0ZGRjsgfVxuXG4udG91Y2ggYnV0dG9uLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC50b3VjaCAuc2lnbnVwX19mb3JtIGJ1dHRvbi5idXR0b246bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAuc2lnbnVwX19mb3JtIC50b3VjaCBidXR0b24uYnV0dG9uOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbi5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAuc2lnbnVwX19mb3JtIC50b3VjaCBidXR0b24uYnV0dG9uLmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBidXR0b24uc2Vjb25kYXJ5LmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBhLmJ1dHRvbi5zZWNvbmRhcnk6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAudG91Y2ggLnNpZ251cF9fZm9ybSBhLmJ1dHRvbjpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC5zaWdudXBfX2Zvcm0gLnRvdWNoIGEuYnV0dG9uOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gYS5idXR0b24uYWN0aXZlOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnNpZ251cF9fZm9ybSAudG91Y2ggYS5idXR0b24uYWN0aXZlOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC50b3VjaCBhLmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEuYWN0aXZlOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAudG91Y2ggYS5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAudG91Y2ggLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiAudG91Y2ggYTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIC50b3VjaCBhOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIGEuYnV0dG9uLnNlY29uZGFyeS5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAudG91Y2ggbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnkuYWN0aXZlOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgbGkuZmF1eC1idXR0b24gLnRvdWNoIGEuc2Vjb25kYXJ5LmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC50b3VjaCBhLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC50b3VjaCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnNpZ251cF9fZm9ybSAudG91Y2ggbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAudG91Y2ggbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAuc2lnbnVwX19mb3JtIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeS5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAudG91Y2ggaW5wdXQuYnV0dG9uLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC50b3VjaCAuc2lnbnVwX19mb3JtIGlucHV0LmJ1dHRvbjpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC5zaWdudXBfX2Zvcm0gLnRvdWNoIGlucHV0LmJ1dHRvbjpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC50b3VjaCAuYnV0dG9uOnZpc2l0ZWQuc2Vjb25kYXJ5Om5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gLmJ1dHRvbjp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnNpZ251cF9fZm9ybSAudG91Y2ggLmJ1dHRvbjp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAuc2lnbnVwX19mb3JtIC50b3VjaCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC50b3VjaCBhLmFjdGl2ZTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5hY3RpdmU6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gLnRvdWNoIGEuYWN0aXZlOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAudG91Y2ggLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnNpZ251cF9fZm9ybSAudG91Y2ggYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnRvdWNoIGE6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gLnRvdWNoIGE6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC50b3VjaCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5zZWNvbmRhcnk6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAudG91Y2ggbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZC5zZWNvbmRhcnk6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCBsaS5mYXV4LWJ1dHRvbiAudG91Y2ggYS5hY3RpdmU6dmlzaXRlZC5zZWNvbmRhcnk6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAudG91Y2ggYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5zZWNvbmRhcnk6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAudG91Y2ggbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC50b3VjaCBhOnZpc2l0ZWQuc2Vjb25kYXJ5Om5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciB7IGJhY2tncm91bmQ6ICMwNDMyNjMgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgdHJhbnNwYXJlbnQgMSUsICMwNDMyNjMgMSUpIGNlbnRlci8xNTAwMCU7IH1cblxuLnRvdWNoIGJ1dHRvbi5zZWNvbmRhcnk6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbjpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAuc2lnbnVwX19mb3JtIC50b3VjaCBidXR0b24uYnV0dG9uOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC50b3VjaCBhLmJ1dHRvbi5zZWNvbmRhcnk6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gYS5idXR0b246bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnNpZ251cF9fZm9ybSAudG91Y2ggYS5idXR0b246bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC50b3VjaCBhOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAudG91Y2ggYTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnk6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnRvdWNoIGEuc2Vjb25kYXJ5Om5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC5zaWdudXBfX2Zvcm0gLnRvdWNoIGxpLmZhdXgtYnV0dG9uIGE6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggaW5wdXQuYnV0dG9uLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggLnNpZ251cF9fZm9ybSBpbnB1dC5idXR0b246bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnNpZ251cF9fZm9ybSAudG91Y2ggaW5wdXQuYnV0dG9uOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC50b3VjaCAuYnV0dG9uOnZpc2l0ZWQuc2Vjb25kYXJ5Om5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC50b3VjaCAuc2lnbnVwX19mb3JtIC5idXR0b246dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAuc2lnbnVwX19mb3JtIC50b3VjaCAuYnV0dG9uOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnRvdWNoIGE6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAudG91Y2ggYTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQuc2Vjb25kYXJ5Om5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIC50b3VjaCBhOnZpc2l0ZWQuc2Vjb25kYXJ5Om5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDY0Yjk0OyBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7IHRyYW5zaXRpb246IGJhY2tncm91bmQgMHM7IH1cblxuYnV0dG9uLnNlY29uZGFyeTphZnRlciwgLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uOmFmdGVyLCBhLmJ1dHRvbi5zZWNvbmRhcnk6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYS5idXR0b246YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnk6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmFmdGVyLCBpbnB1dC5idXR0b24uc2Vjb25kYXJ5OmFmdGVyLCAuc2lnbnVwX19mb3JtIGlucHV0LmJ1dHRvbjphZnRlciwgLmJ1dHRvbjp2aXNpdGVkLnNlY29uZGFyeTphZnRlciwgLnNpZ251cF9fZm9ybSAuYnV0dG9uOnZpc2l0ZWQ6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnNlY29uZGFyeTphZnRlciB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ljb25zL2Fycm93LWJ0bi13aGl0ZS5zdmdcIik7IH1cblxuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uOmhvdmVyLCAuc2lnbnVwX19mb3JtIGJ1dHRvbi5idXR0b24uYWN0aXZlLCBidXR0b24uc2Vjb25kYXJ5LmFjdGl2ZSwgYnV0dG9uLnNlY29uZGFyeTphY3RpdmUsIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbjphY3RpdmUsIGEuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLnNpZ251cF9fZm9ybSBhLmJ1dHRvbjpob3ZlciwgLnNpZ251cF9fZm9ybSBhLmJ1dHRvbi5hY3RpdmUsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5hY3RpdmUsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTpob3ZlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmhvdmVyLCBhLmJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5OmhvdmVyLCBhLmJ1dHRvbi5zZWNvbmRhcnk6YWN0aXZlLCAuc2lnbnVwX19mb3JtIGEuYnV0dG9uOmFjdGl2ZSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnk6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTpob3ZlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmFjdGl2ZSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5LmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnk6YWN0aXZlLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6YWN0aXZlLCBpbnB1dC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuc2lnbnVwX19mb3JtIGlucHV0LmJ1dHRvbjpob3ZlciwgaW5wdXQuYnV0dG9uLnNlY29uZGFyeTphY3RpdmUsIC5zaWdudXBfX2Zvcm0gaW5wdXQuYnV0dG9uOmFjdGl2ZSwgLmJ1dHRvbjp2aXNpdGVkLnNlY29uZGFyeTpob3ZlciwgLnNpZ251cF9fZm9ybSAuYnV0dG9uOnZpc2l0ZWQ6aG92ZXIsIC5zaWdudXBfX2Zvcm0gYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZCwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmFjdGl2ZTp2aXNpdGVkLCAuc2lnbnVwX19mb3JtIGJ1dHRvbi5idXR0b24uYWN0aXZlOnZpc2l0ZWQsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6dmlzaXRlZDpob3ZlciwgYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQuc2Vjb25kYXJ5LCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkLnNlY29uZGFyeSwgYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5zZWNvbmRhcnksIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b246dmlzaXRlZC5zZWNvbmRhcnk6YWN0aXZlLCAuc2lnbnVwX19mb3JtIC5idXR0b246dmlzaXRlZDphY3RpdmUsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOnZpc2l0ZWQ6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQuc2Vjb25kYXJ5OmFjdGl2ZSB7IGJhY2tncm91bmQtY29sb3I6ICMwNDMyNjM7IH1cblxuYnV0dG9uLnNlY29uZGFyeTpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uOmhvdmVyOmFmdGVyLCAuc2lnbnVwX19mb3JtIGJ1dHRvbi5idXR0b24uYWN0aXZlOmFmdGVyLCBidXR0b24uc2Vjb25kYXJ5LmFjdGl2ZTphZnRlciwgYnV0dG9uLnNlY29uZGFyeTphY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbjphY3RpdmU6YWZ0ZXIsIGEuYnV0dG9uLnNlY29uZGFyeTpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSBhLmJ1dHRvbjpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSBhLmJ1dHRvbi5hY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5hY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTpob3ZlcjphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeS5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5OmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5zZWNvbmRhcnk6YWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIGEuYnV0dG9uOmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnk6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6aG92ZXI6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5LmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnk6YWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6YWN0aXZlOmFmdGVyLCBpbnB1dC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyOmFmdGVyLCAuc2lnbnVwX19mb3JtIGlucHV0LmJ1dHRvbjpob3ZlcjphZnRlciwgaW5wdXQuYnV0dG9uLnNlY29uZGFyeTphY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gaW5wdXQuYnV0dG9uOmFjdGl2ZTphZnRlciwgLmJ1dHRvbjp2aXNpdGVkLnNlY29uZGFyeTpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSAuYnV0dG9uOnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmFjdGl2ZTp2aXNpdGVkOmFmdGVyLCAuc2lnbnVwX19mb3JtIGJ1dHRvbi5idXR0b24uYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6dmlzaXRlZDpob3ZlcjphZnRlciwgYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQuc2Vjb25kYXJ5OmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkLnNlY29uZGFyeTphZnRlciwgYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5zZWNvbmRhcnk6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5zZWNvbmRhcnk6aG92ZXI6YWZ0ZXIsIC5idXR0b246dmlzaXRlZC5zZWNvbmRhcnk6YWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIC5idXR0b246dmlzaXRlZDphY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQuc2Vjb25kYXJ5OmFjdGl2ZTphZnRlciB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnXCIpOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IGJ1dHRvbi5zZWNvbmRhcnk6aG92ZXI6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbjpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uLmFjdGl2ZTphZnRlciwgYnV0dG9uLnNlY29uZGFyeS5hY3RpdmU6YWZ0ZXIsIGJ1dHRvbi5zZWNvbmRhcnk6YWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIGJ1dHRvbi5idXR0b246YWN0aXZlOmFmdGVyLCBhLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXI6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYS5idXR0b246aG92ZXI6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYS5idXR0b24uYWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEuYWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6aG92ZXI6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTpob3ZlcjphZnRlciwgYS5idXR0b24uc2Vjb25kYXJ5LmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnkuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTpob3ZlcjphZnRlciwgYS5idXR0b24uc2Vjb25kYXJ5OmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBhLmJ1dHRvbjphY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5OmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnk6aG92ZXI6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5hY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTpob3ZlcjphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeS5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5OmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmFjdGl2ZTphZnRlciwgaW5wdXQuYnV0dG9uLnNlY29uZGFyeTpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSBpbnB1dC5idXR0b246aG92ZXI6YWZ0ZXIsIGlucHV0LmJ1dHRvbi5zZWNvbmRhcnk6YWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIGlucHV0LmJ1dHRvbjphY3RpdmU6YWZ0ZXIsIC5idXR0b246dmlzaXRlZC5zZWNvbmRhcnk6aG92ZXI6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gLmJ1dHRvbjp2aXNpdGVkOmhvdmVyOmFmdGVyLCAuc2lnbnVwX19mb3JtIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkOmFmdGVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5hY3RpdmU6dmlzaXRlZDphZnRlciwgLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkOmFmdGVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZDpob3ZlcjphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnNlY29uZGFyeTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZC5zZWNvbmRhcnk6YWZ0ZXIsIGJ1dHRvbi5idXR0b24uYWN0aXZlOnZpc2l0ZWQuc2Vjb25kYXJ5OmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQuc2Vjb25kYXJ5OmhvdmVyOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQuc2Vjb25kYXJ5OmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSAuYnV0dG9uOnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZDphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTp2aXNpdGVkOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnNlY29uZGFyeTphY3RpdmU6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiAjRkRDNDAwOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvYXJyb3ctYnRuLXllbGxvdy5zdmcpOyB9IH1cblxuYnV0dG9uLmNsZWFyLCBhLmJ1dHRvbi5jbGVhciwgbGkuZmF1eC1idXR0b24gYS5jbGVhciwgbGkuZmF1eC1idXR0b24gYS5jbGVhciwgaW5wdXQuYnV0dG9uLmNsZWFyLCAuYnV0dG9uOnZpc2l0ZWQuY2xlYXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5jbGVhciB7IGJvcmRlci1yYWRpdXM6IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwNDMyNjM7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5idXR0b24uY2xlYXI6YWZ0ZXIsIGEuYnV0dG9uLmNsZWFyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyOmFmdGVyLCBpbnB1dC5idXR0b24uY2xlYXI6YWZ0ZXIsIC5idXR0b246dmlzaXRlZC5jbGVhcjphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLmNsZWFyOmFmdGVyIHsgY29udGVudDogJyc7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMWVtOyBib3R0b206IDEwcHg7IGhlaWdodDogM3B4OyB3aWR0aDogY2FsYygxMDAlIC0gMmVtKTsgYmFja2dyb3VuZDogI0ZEQzQwMDsgfVxuXG5idXR0b24uY2xlYXI6YWN0aXZlLCBidXR0b24uY2xlYXI6aG92ZXIsIGJ1dHRvbi5jbGVhci5hY3RpdmUsIGEuYnV0dG9uLmNsZWFyOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5jbGVhcjphY3RpdmUsIGEuYnV0dG9uLmNsZWFyOmhvdmVyLCBhLmJ1dHRvbi5jbGVhci5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXIuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5jbGVhcjpob3ZlciwgbGkuZmF1eC1idXR0b24gYS5jbGVhci5hY3RpdmUsIGlucHV0LmJ1dHRvbi5jbGVhcjphY3RpdmUsIGlucHV0LmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbjp2aXNpdGVkLmNsZWFyOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLmNsZWFyOmFjdGl2ZSwgLmJ1dHRvbjp2aXNpdGVkLmNsZWFyOmhvdmVyLCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5jbGVhciwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZC5jbGVhciwgYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5jbGVhciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLmNsZWFyOmhvdmVyIHsgYmFja2dyb3VuZDogIzBGNTg5QTsgY29sb3I6ICNGRkY7IH1cblxuYnV0dG9uLmRpc2FibGVkLCBidXR0b246ZGlzYWJsZWQsIGEuYnV0dG9uLmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiBhLmRpc2FibGVkLCBhLmJ1dHRvbjpkaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gYTpkaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gYTpkaXNhYmxlZCwgaW5wdXQuYnV0dG9uLmRpc2FibGVkLCBpbnB1dC5idXR0b246ZGlzYWJsZWQsIC5idXR0b246dmlzaXRlZC5kaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLmRpc2FibGVkLCAuYnV0dG9uOnZpc2l0ZWQ6ZGlzYWJsZWQsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZDpkaXNhYmxlZCB7IGJhY2tncm91bmQ6ICNCMUIxQjE7IGNvbG9yOiAjRkZGOyB9XG5cbmJ1dHRvbi5kaXNhYmxlZDphY3RpdmUsIGJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgYnV0dG9uLmRpc2FibGVkLmFjdGl2ZSwgYnV0dG9uOmRpc2FibGVkOmFjdGl2ZSwgYnV0dG9uOmRpc2FibGVkOmhvdmVyLCBidXR0b24uYWN0aXZlOmRpc2FibGVkLCBhLmJ1dHRvbi5kaXNhYmxlZDphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQ6YWN0aXZlLCBhLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgYS5idXR0b24uZGlzYWJsZWQuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmRpc2FibGVkLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZDpob3ZlciwgYS5idXR0b246ZGlzYWJsZWQ6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhOmRpc2FibGVkOmFjdGl2ZSwgYS5idXR0b246ZGlzYWJsZWQ6aG92ZXIsIGEuYnV0dG9uLmFjdGl2ZTpkaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6ZGlzYWJsZWQsIGxpLmZhdXgtYnV0dG9uIGE6ZGlzYWJsZWQ6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQ6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmRpc2FibGVkOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiBhLmRpc2FibGVkLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYTpkaXNhYmxlZDphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGE6ZGlzYWJsZWQ6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOmRpc2FibGVkLCBpbnB1dC5idXR0b24uZGlzYWJsZWQ6YWN0aXZlLCBpbnB1dC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIGlucHV0LmJ1dHRvbjpkaXNhYmxlZDphY3RpdmUsIGlucHV0LmJ1dHRvbjpkaXNhYmxlZDpob3ZlciwgLmJ1dHRvbjp2aXNpdGVkLmRpc2FibGVkOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLmRpc2FibGVkOmFjdGl2ZSwgLmJ1dHRvbjp2aXNpdGVkLmRpc2FibGVkOmhvdmVyLCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5kaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZC5kaXNhYmxlZCwgYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5kaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uOnZpc2l0ZWQ6ZGlzYWJsZWQ6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6ZGlzYWJsZWQ6YWN0aXZlLCAuYnV0dG9uOnZpc2l0ZWQ6ZGlzYWJsZWQ6aG92ZXIsIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkOmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkOmRpc2FibGVkLCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkOmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6ZGlzYWJsZWQ6aG92ZXIgeyBiYWNrZ3JvdW5kOiAjQjFCMUIxOyBjb2xvcjogI0ZGRjsgfVxuXG5idXR0b246aG92ZXIsIGJ1dHRvbi5hY3RpdmUsIGJ1dHRvbjphY3RpdmUsIGJ1dHRvbjpmb2N1cywgYS5idXR0b246aG92ZXIsIGEuYnV0dG9uLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGE6aG92ZXIsIGEuYnV0dG9uOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYTphY3RpdmUsIGEuYnV0dG9uOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiBhOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYTphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGE6Zm9jdXMsIGlucHV0LmJ1dHRvbjpob3ZlciwgaW5wdXQuYnV0dG9uOmFjdGl2ZSwgaW5wdXQuYnV0dG9uOmZvY3VzLCAuYnV0dG9uOnZpc2l0ZWQ6aG92ZXIsIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkLCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6aG92ZXIsIC5idXR0b246dmlzaXRlZDphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZDphY3RpdmUsIC5idXR0b246dmlzaXRlZDpmb2N1cywgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOmZvY3VzIHsgY29sb3I6ICNGRkY7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgYnV0dG9uLCBhLmJ1dHRvbiwgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gYSwgaW5wdXQuYnV0dG9uLCAuYnV0dG9uOnZpc2l0ZWQsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZCB7IHdpZHRoOiAxMDAlOyB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cblxuaW5wdXQuYnV0dG9uLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNy45ODYnIGhlaWdodD0nMTUuNjk2JyB2aWV3Qm94PScwIDAgNy45ODYgMTUuNjk2JyUzRSUzQ3BhdGggaWQ9J2Fycm93JyBkYXRhLW5hbWU9J1BhdGggNTQ2OCcgZD0nTS0xODA5NS4zOTMsMzIxMy4xODJsNC4zNzksNS45NDktNC4zNzksNS41NDInIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDE4MDk3LjUgLTMyMTEuMDg0KScgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMwNDMyNjMnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJy8lM0UlM0Mvc3ZnJTNFXCIpOyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAyNXB4KSBjZW50ZXI7IGJhY2tncm91bmQtc2l6ZTogOHB4IDE1cHg7IH1cblxuaW5wdXQuYnV0dG9uOmhvdmVyLCBpbnB1dC5idXR0b246YWN0aXZlLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmFjdGl2ZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzcuOTg2JyBoZWlnaHQ9JzE1LjY5Nicgdmlld0JveD0nMCAwIDcuOTg2IDE1LjY5NiclM0UlM0NwYXRoIGlkPSdhcnJvdycgZGF0YS1uYW1lPSdQYXRoIDU0NjgnIGQ9J00tMTgwOTUuMzkzLDMyMTMuMTgybDQuMzc5LDUuOTQ5LTQuMzc5LDUuNTQyJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgxODA5Ny41IC0zMjExLjA4NCknIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzRkRDNDAwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycvJTNFJTNDL3N2ZyUzRVwiKTsgfVxuXG5pbnB1dC5idXR0b24uc2Vjb25kYXJ5LCAuc2lnbnVwX19mb3JtIGlucHV0LmJ1dHRvbiwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5zZWNvbmRhcnksIC5zaWdudXBfX2Zvcm0gaW5wdXQuYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc3Ljk4NicgaGVpZ2h0PScxNS42OTYnIHZpZXdCb3g9JzAgMCA3Ljk4NiAxNS42OTYnJTNFJTNDcGF0aCBpZD0nYXJyb3cnIGRhdGEtbmFtZT0nUGF0aCA1NDY4JyBkPSdNLTE4MDk1LjM5MywzMjEzLjE4Mmw0LjM3OSw1Ljk0OS00LjM3OSw1LjU0MicgdHJhbnNmb3JtPSd0cmFuc2xhdGUoMTgwOTcuNSAtMzIxMS4wODQpJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM0ZGRkZGRicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnLyUzRSUzQy9zdmclM0VcIik7IH1cblxuaW5wdXQuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLnNpZ251cF9fZm9ybSBpbnB1dC5idXR0b246aG92ZXIsIGlucHV0LmJ1dHRvbi5zZWNvbmRhcnk6YWN0aXZlLCAuc2lnbnVwX19mb3JtIGlucHV0LmJ1dHRvbjphY3RpdmUsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uc2Vjb25kYXJ5OmhvdmVyLCAuc2lnbnVwX19mb3JtIGlucHV0LmJ1dHRvblt0eXBlPVwic3VibWl0XCJdOmhvdmVyLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLnNlY29uZGFyeTphY3RpdmUsIC5zaWdudXBfX2Zvcm0gaW5wdXQuYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl06YWN0aXZlIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNy45ODYnIGhlaWdodD0nMTUuNjk2JyB2aWV3Qm94PScwIDAgNy45ODYgMTUuNjk2JyUzRSUzQ3BhdGggaWQ9J2Fycm93JyBkYXRhLW5hbWU9J1BhdGggNTQ2OCcgZD0nTS0xODA5NS4zOTMsMzIxMy4xODJsNC4zNzksNS45NDktNC4zNzksNS41NDInIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDE4MDk3LjUgLTMyMTEuMDg0KScgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNGREM0MDAnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJy8lM0UlM0Mvc3ZnJTNFXCIpOyB9XG5cbmlucHV0LmJ1dHRvbi5nZm9ybV9wcmV2aW91c19idXR0b24sIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uZ2Zvcm1fcHJldmlvdXNfYnV0dG9uIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNy45ODYnIGhlaWdodD0nMTUuNjk2JyB2aWV3Qm94PScwIDAgNy45ODYgMTUuNjk2JyUzRSUzQ3BhdGggaWQ9J1BhdGhfNTQ2OCcgZGF0YS1uYW1lPSdQYXRoIDU0NjgnIGQ9J00tMTgwOTUuMzkzLDMyMTMuMTgybDQuMzc5LDUuOTQ5LTQuMzc5LDUuNTQyJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgtMTgwODkuNTE0IDMyMjYuNzgpIHJvdGF0ZSgxODApJyBmaWxsPSdub25lJyBzdHJva2U9JyUyMzA0MzI2Mycgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnLyUzRSUzQy9zdmclM0VcIik7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoNiUpIGNlbnRlcjsgcGFkZGluZzogMS4yNWVtIDEuNGVtIDEuMjVlbSAyLjhlbTsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IGlucHV0LmJ1dHRvbi5nZm9ybV9wcmV2aW91c19idXR0b24sIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uZ2Zvcm1fcHJldmlvdXNfYnV0dG9uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygxOSUpIGNlbnRlcjsgfSB9XG5cbmlucHV0LmJ1dHRvbi5nZm9ybV9wcmV2aW91c19idXR0b246aG92ZXIsIGlucHV0LmJ1dHRvbi5nZm9ybV9wcmV2aW91c19idXR0b246YWN0aXZlLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmdmb3JtX3ByZXZpb3VzX2J1dHRvbjpob3ZlciwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5nZm9ybV9wcmV2aW91c19idXR0b246YWN0aXZlIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNy45ODYnIGhlaWdodD0nMTUuNjk2JyB2aWV3Qm94PScwIDAgNy45ODYgMTUuNjk2JyUzRSUzQ3BhdGggaWQ9J1BhdGhfNTQ2OCcgZGF0YS1uYW1lPSdQYXRoIDU0NjgnIGQ9J00tMTgwOTUuMzkzLDMyMTMuMTgybDQuMzc5LDUuOTQ5LTQuMzc5LDUuNTQyJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgtMTgwODkuNTE0IDMyMjYuNzgpIHJvdGF0ZSgxODApJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM0ZEQzQwMCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnLyUzRSUzQy9zdmclM0VcIik7IH1cblxuLmJ1dHRvbl9yb3cgLmNlbGwgeyBwYWRkaW5nOiA0MHB4IDA7IH1cblxuLmJ1dHRvbl9fZ3JpZCAuZ3JleV9fY2VsbCwgLmJ1dHRvbl9fZ3JpZCBhIC5ncmV5X19jZWxsIHsgYm9yZGVyLXRvcDogNXB4IHNvbGlkICNGREM0MDA7IGJhY2tncm91bmQtY29sb3I6ICNGNEY0RjQ7IGNvbG9yOiAjNzA3MDcwOyBwYWRkaW5nOiAyMHB4OyBtYXJnaW4tYm90dG9tOiAxMHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IHRyYW5zaXRpb246IGFsbCAwLjNzOyB9XG5cbi5idXR0b25fX2dyaWQgLmdyZXlfX2NlbGwgdWwsIC5idXR0b25fX2dyaWQgYSAuZ3JleV9fY2VsbCB1bCB7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLmJ1dHRvbl9fZ3JpZCBhLmdyZXlfX2lubmVyIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5idXR0b25fX2dyaWQgYS5ncmV5X19pbm5lcjpob3ZlciAuZ3JleV9fY2VsbCwgLmJ1dHRvbl9fZ3JpZCBhLmdyZXlfX2lubmVyLmFjdGl2ZSAuZ3JleV9fY2VsbCwgLmJ1dHRvbl9fZ3JpZCBhLmdyZXlfX2lubmVyOmFjdGl2ZSAuZ3JleV9fY2VsbCB7IHRyYW5zaXRpb246IGFsbCAwLjdzOyBiYWNrZ3JvdW5kLWNvbG9yOiAjMEY1ODlBOyBjb2xvcjogIzBGNTg5QTsgfVxuXG4uYnV0dG9uX19ncmlkIGEuZ3JleV9faW5uZXI6aG92ZXIgLmdyZXlfX2NlbGwgaDMsIC5idXR0b25fX2dyaWQgYS5ncmV5X19pbm5lci5hY3RpdmUgLmdyZXlfX2NlbGwgaDMsIC5idXR0b25fX2dyaWQgYS5ncmV5X19pbm5lcjpob3ZlciAuZ3JleV9fY2VsbCAuaDUsIC5idXR0b25fX2dyaWQgYS5ncmV5X19pbm5lci5hY3RpdmUgLmdyZXlfX2NlbGwgLmg1LCAuYnV0dG9uX19ncmlkIGEuZ3JleV9faW5uZXI6aG92ZXIgLmdyZXlfX2NlbGwgcCwgLmJ1dHRvbl9fZ3JpZCBhLmdyZXlfX2lubmVyLmFjdGl2ZSAuZ3JleV9fY2VsbCBwLCAuYnV0dG9uX19ncmlkIGEuZ3JleV9faW5uZXI6aG92ZXIgLmdyZXlfX2NlbGwgYSwgLmJ1dHRvbl9fZ3JpZCBhLmdyZXlfX2lubmVyLmFjdGl2ZSAuZ3JleV9fY2VsbCBhLCAuYnV0dG9uX19ncmlkIGEuZ3JleV9faW5uZXI6aG92ZXIgLmdyZXlfX2NlbGwgc3BhbiwgLmJ1dHRvbl9fZ3JpZCBhLmdyZXlfX2lubmVyLmFjdGl2ZSAuZ3JleV9fY2VsbCBzcGFuLCAuYnV0dG9uX19ncmlkIGEuZ3JleV9faW5uZXI6YWN0aXZlIC5ncmV5X19jZWxsIGgzLCAuYnV0dG9uX19ncmlkIGEuZ3JleV9faW5uZXI6YWN0aXZlIC5ncmV5X19jZWxsIC5oNSwgLmJ1dHRvbl9fZ3JpZCBhLmdyZXlfX2lubmVyOmFjdGl2ZSAuZ3JleV9fY2VsbCBwLCAuYnV0dG9uX19ncmlkIGEuZ3JleV9faW5uZXI6YWN0aXZlIC5ncmV5X19jZWxsIGEsIC5idXR0b25fX2dyaWQgYS5ncmV5X19pbm5lcjphY3RpdmUgLmdyZXlfX2NlbGwgc3BhbiB7IGNvbG9yOiAjZmZmOyB9XG5cbi5idXR0b25fX2dyaWQgLmJ1dHRvbl9fc2ltcGxlIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgY29sb3I6ICNGREM0MDA7IHBhZGRpbmc6IDIwcHg7IG1hcmdpbi1ib3R0b206IDEwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgdHJhbnNpdGlvbjogYWxsIDAuM3M7IH1cblxuLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGUgaDUsIC5idXR0b25fX2dyaWQgLmJ1dHRvbl9fc2ltcGxlIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5idXR0b25fX2dyaWQgLmJ1dHRvbl9fc2ltcGxlIHAgeyBtaW4taGVpZ2h0OiA1NXB4OyB9XG5cbi5idXR0b25fX2dyaWQgLmJ1dHRvbl9fc2ltcGxlIHAgeyBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5idXR0b25fX2dyaWQgLmJ1dHRvbl9fc2ltcGxlIGEgeyBjb2xvcjogI0ZEQzQwMDsgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IDIwcHg7IGxlZnQ6IDIwcHg7IHRyYW5zaXRpb246IGFsbCAwLjNzOyB9XG5cbi5idXR0b25fX2dyaWQgLmJ1dHRvbl9fc2ltcGxlOmhvdmVyLCAuYnV0dG9uX19ncmlkIGEuYnV0dG9uX19zaW1wbGUuYWN0aXZlLCAuYnV0dG9uX19ncmlkIGJ1dHRvbi5idXR0b25fX3NpbXBsZS5hY3RpdmUsIC5idXR0b25fX2dyaWQgLmJ1dHRvbl9fc2ltcGxlOmFjdGl2ZSB7IGJhY2tncm91bmQtY29sb3I6ICM3NjcxNzU7IGNvbG9yOiAjMEY1ODlBOyB9XG5cbi5idXR0b25fX2dyaWQgLmJ1dHRvbl9fc2ltcGxlOmhvdmVyIGEsIC5idXR0b25fX2dyaWQgYS5idXR0b25fX3NpbXBsZS5hY3RpdmUgYSwgLmJ1dHRvbl9fZ3JpZCBidXR0b24uYnV0dG9uX19zaW1wbGUuYWN0aXZlIGEsIC5idXR0b25fX2dyaWQgLmJ1dHRvbl9fc2ltcGxlOmFjdGl2ZSBhIHsgY29sb3I6ICMwRjU4OUE7IH1cblxuLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGUuZGV0YWlscyB7IHRleHQtYWxpZ246IGNlbnRlcjsgcGFkZGluZy10b3A6IDUwcHg7IHBhZGRpbmctYm90dG9tOiA3MHB4OyB9XG5cbi5idXR0b25fX2dyaWQgLmJ1dHRvbl9fc2ltcGxlLmRldGFpbHMgaDUsIC5idXR0b25fX2dyaWQgLmJ1dHRvbl9fc2ltcGxlLmRldGFpbHMgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGUuZGV0YWlscyBwIHsgbWFyZ2luLWJvdHRvbTogMjBweDsgbWluLWhlaWdodDogdW5zZXQ7IH1cblxuLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGUuZGV0YWlscyBwIHsgZm9udC1zaXplOiAxLjEyNXJlbTsgY29sb3I6ICMwRjU4OUE7IH1cblxuLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGUuZGV0YWlscyBhIHsgdGV4dC1hbGlnbjogY2VudGVyOyBmb250LXdlaWdodDogYm9sZDsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiB1bnNldDsgYm90dG9tOiB1bnNldDsgfVxuXG4uYnV0dG9uX19ncmlkIC5idXR0b25fX3NpbXBsZS5kZXRhaWxzOmhvdmVyIHAsIC5idXR0b25fX2dyaWQgYS5idXR0b25fX3NpbXBsZS5kZXRhaWxzLmFjdGl2ZSBwLCAuYnV0dG9uX19ncmlkIGJ1dHRvbi5idXR0b25fX3NpbXBsZS5kZXRhaWxzLmFjdGl2ZSBwLCAuYnV0dG9uX19ncmlkIC5idXR0b25fX3NpbXBsZS5kZXRhaWxzOmFjdGl2ZSBwIHsgY29sb3I6ICMwRjU4OUE7IH1cblxuLmhlcm9fX2J1dHRvbl9fd3JhcCAuYnV0dG9uLCAuaGVyb19fYnV0dG9uX193cmFwIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5oZXJvX19idXR0b25fX3dyYXAgYSB7IG1hcmdpbi10b3A6IDM1cHg7IH1cblxuLmJ1dHRvbl9fZnVsbHdpZHRoIC5idXR0b25fX3NpbXBsZSB7IGRpc3BsYXk6IGlubGluZS1mbGV4OyBwYWRkaW5nOiAyMHB4OyBib3JkZXI6IDFweCBzb2xpZCAjRkRDNDAwOyB9XG5cbi5idXR0b25fX2Z1bGx3aWR0aCAuYnV0dG9uX19zaW1wbGUgcCB7IGhlaWdodDogZml0LWNvbnRlbnQ7IG1hcmdpbjogYXV0byAwOyB9XG5cbi5idXR0b25fX2Z1bGx3aWR0aCAuYnV0dG9uX19zaW1wbGUgYSB7IG1hcmdpbjogYXV0byAwIGF1dG8gYXV0bzsgfVxuXG4uYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgeyBwYWRkaW5nOiAwcHg7IH1cblxuLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIGEsIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBzcGFuLm5vLWxpbmsgeyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgcGFkZGluZzogMjBweDsgd2lkdGg6IDEwMCU7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgcG9zaXRpb246IHJlbGF0aXZlOyBib3R0b206IDA7IGxlZnQ6IDA7IGJhY2tncm91bmQtY29sb3I6ICNGNEY0RjQ7IG1hcmdpbi1ib3R0b206IDE1cHg7IGNvbG9yOiAjMDQzMjYzOyBib3JkZXItcmFkaXVzOiA1cHg7IHRyYW5zaXRpb246IGFsbCAwLjI1czsgfVxuXG4ubWVkaWEgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIGEsIC5tZWRpYSAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgc3Bhbi5uby1saW5rIHsgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50OyBwYWRkaW5nOiAwIDAgMjBweDsgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNFNEU0RTQ7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgLm1lZGlhIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBhLCAubWVkaWEgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIHNwYW4ubm8tbGluayB7IG1hcmdpbi1ib3R0b206IDE1cHg7IH0gfVxuXG4ubWVkaWEgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIGE6aG92ZXIsIC5tZWRpYSAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYS5hY3RpdmUsIC5tZWRpYSAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYTphY3RpdmUsIC5tZWRpYSAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgc3Bhbi5uby1saW5rOmhvdmVyLCAubWVkaWEgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIHNwYW4ubm8tbGluazphY3RpdmUgeyBjb2xvcjogIzA0MzI2MzsgfVxuXG4uYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYTpob3ZlciwgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIGEuYWN0aXZlLCAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYTphY3RpdmUsIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBzcGFuLm5vLWxpbms6aG92ZXIsIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBzcGFuLm5vLWxpbms6YWN0aXZlIHsgY29sb3I6ICNGREM0MDA7IGJhY2tncm91bmQtY29sb3I6ICMwNDMyNjM7IH1cblxuLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIGE6aG92ZXIgLmFycm93LWJ0biwgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIGEuYWN0aXZlIC5hcnJvdy1idG4sIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBhOmFjdGl2ZSAuYXJyb3ctYnRuLCAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgc3Bhbi5uby1saW5rOmhvdmVyIC5hcnJvdy1idG4sIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBzcGFuLm5vLWxpbms6YWN0aXZlIC5hcnJvdy1idG4geyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYnRuYXJyb3ctaG92ZXIuc3ZnKTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYTpob3ZlciAuYXJyb3ctYnRuLCAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYS5hY3RpdmUgLmFycm93LWJ0biwgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIGE6YWN0aXZlIC5hcnJvdy1idG4sIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBzcGFuLm5vLWxpbms6aG92ZXIgLmFycm93LWJ0biwgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIHNwYW4ubm8tbGluazphY3RpdmUgLmFycm93LWJ0biB7IGJhY2tncm91bmQ6ICNGREM0MDA7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9idG5hcnJvdy1ob3Zlci5zdmcpOyBtYXNrLXNpemU6IDE1cHggMTVweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbi5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBhIHAsIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBzcGFuLm5vLWxpbmsgcCB7IGhlaWdodDogZml0LWNvbnRlbnQ7IG1hcmdpbjogYXV0byAwOyBmb250LXdlaWdodDogODAwOyBsaW5lLWhlaWdodDogMS4yOyB9XG5cbi5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBhIC5hcnJvdy1idG4sIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBzcGFuLm5vLWxpbmsgLmFycm93LWJ0biB7IGhlaWdodDogMTVweDsgbWluLXdpZHRoOiAxNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luOiBhdXRvIDEwcHggYXV0byAwOyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYnRuYXJyb3cuc3ZnKTsgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYSAuYXJyb3ctYnRuLCAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgc3Bhbi5uby1saW5rIC5hcnJvdy1idG4geyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvYnRuYXJyb3cuc3ZnKTsgbWFzay1zaXplOiAxNXB4IDE1cHg7IG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7IH0gfVxuXG4uYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYSAuZG93bmxvYWQtYnRuLCAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgc3Bhbi5uby1saW5rIC5kb3dubG9hZC1idG4geyBoZWlnaHQ6IDE1cHg7IHdpZHRoOiAxNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luOiBhdXRvIDEwcHggYXV0byAwOyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bmxvYWQtYnRuQDJ4LnBuZyk7IGJhY2tncm91bmQtc2l6ZTogMTVweCAxNXB4OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIGEgLmRvd25sb2FkLWJ0biwgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIHNwYW4ubm8tbGluayAuZG93bmxvYWQtYnRuIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd25sb2FkLWljb24uc3ZnKTsgbWFzay1zaXplOiAxNXB4IDE1cHg7IG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7IH0gfVxuXG4uYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgc3Bhbi5uby1saW5rIHsgY29sb3I6ICMwNDMyNjM7IH1cblxuLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIHNwYW4ubm8tbGluazpob3ZlciwgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIHNwYW4ubm8tbGluazphY3RpdmUgeyBjb2xvcjogIzA0MzI2MzsgfVxuXG4uYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUuYnV0dG9uX19zaW1wbGVfZWxlY3Rpb24gYSB7IGJhY2tncm91bmQtY29sb3I6ICMwRjU4OUE7IH1cblxuLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlLmJ1dHRvbl9fc2ltcGxlX2VsZWN0aW9uIC5lbGVjdGlvbi1idG4geyBoZWlnaHQ6IDE1cHg7IHdpZHRoOiAxNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luOiBhdXRvIDEwcHggYXV0byAwOyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYnRuZWxlY3Rpb24uc3ZnKTsgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uYnV0dG9uX19jYXJkIHsgYm9yZGVyLXRvcDogMTRweCBzb2xpZCAjMEY1ODlBOyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U0ZTVlOTsgcGFkZGluZzogMTBweCAwcHg7IH1cblxuLmJ1dHRvbl9fY2FyZCBhIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5idXR0b25fX2NhcmQgYSBoNTphZnRlciwgLmJ1dHRvbl9fY2FyZCBhIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHA6YWZ0ZXIsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5idXR0b25fX2NhcmQgYSBwOmFmdGVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAxMHB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9hcnJvdy1uZXh0QDJ4LnBuZyk7IGJhY2tncm91bmQtc2l6ZTogOXB4IDEzcHg7IHdpZHRoOiA5cHg7IGhlaWdodDogMTNweDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5icmVhZGNydW1iLXdyYXAgKyAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50IHsgdG9wOiAxMzVweDsgfSB9XG5cbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgeyBtaW4td2lkdGg6IDIyMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQzMjYzOyBjb2xvcjogI0ZGRjsgYm9yZGVyLXJhZGl1czogMHB4IDBweCA1cHggNXB4OyBtYXJnaW4tbGVmdDogMy42cmVtOyBwb3NpdGlvbjogZml4ZWQ7IHRvcDogMTI4cHg7IHotaW5kZXg6IDk5NjsgcGFkZGluZzogMTBweCAzMHB4OyBkaXNwbGF5OiBub25lOyB9XG5cbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50X21vYmlsZSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgeyAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50IHsgZGlzcGxheTogbm9uZTsgfVxuICAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50LmRyb3Bkb3duX190YWJsZW9mY29udGVudF9tb2JpbGUgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyBtYXJnaW4tbGVmdDogMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMHB4OyBtaW4td2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7IC5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50X21vYmlsZSB7IG1pbi13aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50X21vYmlsZSAuZHJvcGRvd24tY29udGVudCB7IG1pbi13aWR0aDogMTAwJTsgfSB9XG5cbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgcCB7IGZvbnQtd2VpZ2h0OiA3MDA7IG1hcmdpbjogMHB4OyB9XG5cbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgcDphZnRlciB7IGNvbnRlbnQ6ICcnOyB3aWR0aDogMTVweDsgaGVpZ2h0OiAyNXB4OyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy15ZWxsb3cuc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlci9jb250YWluOyBmbG9hdDogcmlnaHQ7IHRyYW5zaXRpb246IGFsbCAwLjVzOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IC5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgcDphZnRlciB7IGJhY2tncm91bmQ6ICNGREM0MDA7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LXllbGxvdy5zdmcpOyBtYXNrLXNpemU6IGNvbnRhaW47IG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7IG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IH0gfVxuXG4uZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50IC5kcm9wZG93bi1jb250ZW50IHsgZGlzcGxheTogbm9uZTsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwcHg7IGJhY2tncm91bmQtY29sb3I6ICMwNDMyNjM7IGNvbG9yOiAjRkZGOyBtaW4td2lkdGg6IDIyMHB4OyBtYXgtaGVpZ2h0OiA1MHZoOyBvdmVyZmxvdzogc2Nyb2xsOyBib3gtc2hhZG93OiAwcHggOHB4IDE2cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgcGFkZGluZzogMTVweCAxMHB4OyB6LWluZGV4OiAxOyBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA1cHg7IGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1cHg7IH1cblxuLmRyb3Bkb3duX190YWJsZW9mY29udGVudCAuZHJvcGRvd24tY29udGVudCB1bCB7IG1hcmdpbjogMHB4OyBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgLmRyb3Bkb3duLWNvbnRlbnQgdWwgbGkgeyBwYWRkaW5nOiAxMHB4IDBweCAxMHB4IDIwcHg7IGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKDIyOCwgMjI4LCAyMjgsIDAuMik7IH1cblxuLmRyb3Bkb3duX190YWJsZW9mY29udGVudCAuZHJvcGRvd24tY29udGVudCB1bCBsaSBhIHsgY29sb3I6ICNmZmY7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgZm9udC1zaXplOiAxNnB4OyB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuXG4uZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50IC5kcm9wZG93bi1jb250ZW50IHVsIGxpOmJlZm9yZSB7IGNvbnRlbnQ6ICcnOyB3aWR0aDogMTNweDsgaGVpZ2h0OiAyNXB4OyBmbG9hdDogbGVmdDsgbWFyZ2luLWxlZnQ6IC0xOXB4OyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvdGJjX3doaXRlLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIvY29udGFpbjsgdHJhbnNpdGlvbjogYWxsIDAuNXM7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgLmRyb3Bkb3duX190YWJsZW9mY29udGVudCAuZHJvcGRvd24tY29udGVudCB1bCBsaTpiZWZvcmUgeyBiYWNrZ3JvdW5kOiAjRkZGOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvdGJjX3doaXRlLnN2Zyk7IG1hc2stc2l6ZTogY29udGFpbjsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgbWFzay1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfSB9XG5cbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgLmRyb3Bkb3duLWNvbnRlbnQgdWwgbGk6aG92ZXIgYSwgLmRyb3Bkb3duX190YWJsZW9mY29udGVudCAuZHJvcGRvd24tY29udGVudCB1bCBsaTphY3RpdmUgYSB7IGNvbG9yOiAjRkRDNDAwOyB9XG5cbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgLmRyb3Bkb3duLWNvbnRlbnQgdWwgbGk6aG92ZXI6YmVmb3JlLCAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50IC5kcm9wZG93bi1jb250ZW50IHVsIGxpOmFjdGl2ZTpiZWZvcmUgeyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvdGJjX3llbGxvdy5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyL2NvbnRhaW47IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgLmRyb3Bkb3duX190YWJsZW9mY29udGVudCAuZHJvcGRvd24tY29udGVudCB1bCBsaTpob3ZlcjpiZWZvcmUsIC5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgLmRyb3Bkb3duLWNvbnRlbnQgdWwgbGk6YWN0aXZlOmJlZm9yZSB7IGJhY2tncm91bmQ6ICNGREM0MDA7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy90YmNfeWVsbG93LnN2Zyk7IH0gfVxuXG4uZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50IC5kcm9wZG93bi1jb250ZW50LmRyb3Bkb3duLWNvbnRlbnRfY2xvc2UgeyBkaXNwbGF5OiBibG9jazsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChob3ZlcjogaG92ZXIpIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHsgLmRyb3Bkb3duX190YWJsZW9mY29udGVudDpob3ZlciBwOmFmdGVyLCBhLmRyb3Bkb3duX190YWJsZW9mY29udGVudC5hY3RpdmUgcDphZnRlciwgYnV0dG9uLmRyb3Bkb3duX190YWJsZW9mY29udGVudC5hY3RpdmUgcDphZnRlciwgLmRyb3Bkb3duX190YWJsZW9mY29udGVudDphY3RpdmUgcDphZnRlciB7IHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChob3ZlcjogaG92ZXIpIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHsgLmRyb3Bkb3duX190YWJsZW9mY29udGVudDpob3ZlciAuZHJvcGRvd24tY29udGVudCwgYS5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQuYWN0aXZlIC5kcm9wZG93bi1jb250ZW50LCBidXR0b24uZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50LmFjdGl2ZSAuZHJvcGRvd24tY29udGVudCwgLmRyb3Bkb3duX190YWJsZW9mY29udGVudDphY3RpdmUgLmRyb3Bkb3duLWNvbnRlbnQgeyBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQudG9jX3Nob3cgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4uZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50IHVsLmRyb3Bkb3duLWNvbnRlbnRfY2xvc2UgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4uZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50LmRyb3Bkb3duX190YWJsZW9mY29udGVudF9yb3RhdGUgcDphZnRlciB7IHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cblxuYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIC5idXR0b24ucHJpbWFyeSwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeSwgbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGEucHJpbWFyeSB7IGNvbG9yOiB3aGl0ZTsgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MzsgYm9yZGVyOiAycHggc29saWQgI0ZEQzQwMDsgfVxuXG5ib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLmJ1dHRvbi5wcmltYXJ5OmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5wcmltYXJ5OmFmdGVyIHsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cblxuYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIC5idXR0b24ucHJpbWFyeTpob3ZlciwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGEuYnV0dG9uLnByaW1hcnkuYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGEucHJpbWFyeS5hY3RpdmUsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBidXR0b24uYnV0dG9uLnByaW1hcnkuYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5wcmltYXJ5OmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogI0ZEQzQwMDsgYm9yZGVyOiAycHggc29saWQgIzA0MzI2MzsgfVxuXG5ib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLmJ1dHRvbi5zZWNvbmRhcnksIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIC5idXR0b24sIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIC5idXR0b24sIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGEsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGEsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeSwgbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGEuc2Vjb25kYXJ5IHsgY29sb3I6IGJsYWNrOyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgYm9yZGVyOiAycHggc29saWQgI0ZEQzQwMDsgfVxuXG5ib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIC5idXR0b246aG92ZXIsIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIC5idXR0b246aG92ZXIsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIGEuYnV0dG9uLmFjdGl2ZSwgLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5idXR0b24uYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5hY3RpdmUsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhLmFjdGl2ZSwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbi5hY3RpdmUsIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGJ1dHRvbi5idXR0b24uYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhOmhvdmVyLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhOmhvdmVyLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5idXR0b24uc2Vjb25kYXJ5LmFjdGl2ZSwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5LmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGEuc2Vjb25kYXJ5LmFjdGl2ZSwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGJ1dHRvbi5idXR0b24uc2Vjb25kYXJ5LmFjdGl2ZSwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5OmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5zZWNvbmRhcnk6aG92ZXIgeyBjb2xvcjogd2hpdGU7IGJhY2tncm91bmQtY29sb3I6ICMwNDMyNjM7IH1cblxuYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLnNpZ251cF9fZm9ybSAuYnV0dG9uOmhvdmVyOmFmdGVyLCAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuYnV0dG9uOmhvdmVyOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLnNpZ251cF9fZm9ybSBhLmJ1dHRvbi5hY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGEuYnV0dG9uLmFjdGl2ZTphZnRlciwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGEuYWN0aXZlOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5hY3RpdmU6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIGJ1dHRvbi5idXR0b24uYWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBidXR0b24uYnV0dG9uLmFjdGl2ZTphZnRlciwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYTpob3ZlcjphZnRlciwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTpob3ZlcjphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYTpob3ZlcjphZnRlciwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGEuYnV0dG9uLnNlY29uZGFyeS5hY3RpdmU6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeS5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhLnNlY29uZGFyeS5hY3RpdmU6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBidXR0b24uYnV0dG9uLnNlY29uZGFyeS5hY3RpdmU6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTpob3ZlcjphZnRlciwgbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGEuc2Vjb25kYXJ5OmhvdmVyOmFmdGVyIHsgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7IH1cblxuYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuYnV0dG9uLnByaW1hcnksIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGEucHJpbWFyeSB7IGNvbG9yOiBibGFjazsgYmFja2dyb3VuZC1jb2xvcjogIzBGNTg5QTsgYm9yZGVyOiAycHggc29saWQgIzA0MzI2MzsgfVxuXG5ib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5idXR0b24ucHJpbWFyeTphZnRlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYS5wcmltYXJ5OmFmdGVyIHsgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7IH1cblxuYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYS5idXR0b24ucHJpbWFyeS5hY3RpdmUsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhLnByaW1hcnkuYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGJ1dHRvbi5idXR0b24ucHJpbWFyeS5hY3RpdmUsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGEucHJpbWFyeTpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6ICMwNDMyNjM7IGJvcmRlcjogMnB4IHNvbGlkICMwRjU4OUE7IH1cblxuYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuYnV0dG9uLnNlY29uZGFyeSwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIC5idXR0b24sIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuYnV0dG9uLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGEsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYSwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeSwgbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhLnNlY29uZGFyeSB7IGNvbG9yOiB3aGl0ZTsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGJvcmRlcjogMnB4IHNvbGlkICNGREM0MDA7IH1cblxuYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuYnV0dG9uLnNlY29uZGFyeTphZnRlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIC5idXR0b246YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuYnV0dG9uOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGE6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYTphZnRlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTphZnRlciwgbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhLnNlY29uZGFyeTphZnRlciB7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG5cbmJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgLnNpZ251cF9fZm9ybSAuYnV0dG9uOmhvdmVyLCAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgLmJ1dHRvbjpob3ZlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIGEuYnV0dG9uLmFjdGl2ZSwgLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGEuYnV0dG9uLmFjdGl2ZSwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYS5hY3RpdmUsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGEuYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbi5hY3RpdmUsIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBidXR0b24uYnV0dG9uLmFjdGl2ZSwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6aG92ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhOmhvdmVyLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTpob3ZlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGE6aG92ZXIsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYS5idXR0b24uc2Vjb25kYXJ5LmFjdGl2ZSwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYS5zZWNvbmRhcnkuYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGJ1dHRvbi5idXR0b24uc2Vjb25kYXJ5LmFjdGl2ZSwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTpob3ZlciwgbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhLnNlY29uZGFyeTpob3ZlciB7IGNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiAjMEY1ODlBOyB9XG5cbmJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXI6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgLnNpZ251cF9fZm9ybSAuYnV0dG9uOmhvdmVyOmFmdGVyLCAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgLmJ1dHRvbjpob3ZlcjphZnRlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIGEuYnV0dG9uLmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGEuYnV0dG9uLmFjdGl2ZTphZnRlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYS5hY3RpdmU6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGEuYWN0aXZlOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbi5hY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBidXR0b24uYnV0dG9uLmFjdGl2ZTphZnRlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6aG92ZXI6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhOmhvdmVyOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTpob3ZlcjphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGE6aG92ZXI6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYS5idXR0b24uc2Vjb25kYXJ5LmFjdGl2ZTphZnRlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeS5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYS5zZWNvbmRhcnkuYWN0aXZlOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGJ1dHRvbi5idXR0b24uc2Vjb25kYXJ5LmFjdGl2ZTphZnRlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTpob3ZlcjphZnRlciwgbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhLnNlY29uZGFyeTpob3ZlcjphZnRlciB7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG5cbmltZy5pbWFnZSB7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuQG1lZGlhIG9ubHkgcHJpbnQgeyBpbWcgeyBwYWdlLWJyZWFrLWJlZm9yZTogYXV0byAhaW1wb3J0YW50OyBwYWdlLWJyZWFrLWFmdGVyOiBhdXRvICFpbXBvcnRhbnQ7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZCAhaW1wb3J0YW50OyB9IH1cblxuaW1nLmFsaWdubGVmdCB7IGZsb2F0OiBsZWZ0OyBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cblxuaW1nLmFsaWducmlnaHQgeyBmbG9hdDogcmlnaHQ7IG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG5cbmltZy5hbGlnbmNlbnRlciB7IG1hcmdpbjogYXV0bzsgZGlzcGxheTogZmxleDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgeyBpbWcuYWxpZ25jZW50ZXIsIGltZy5hbGlnbnJpZ2h0LCBpbWcuYWxpZ25sZWZ0IHsgZmxvYXQ6IG5vbmU7IGRpc3BsYXk6IGZsZXg7IG1hcmdpbjogMjBweCBhdXRvOyB9IH1cblxuLmZhY3RzaGVldF9iYW5uZXJfY29udGFpbmVyIGltZyB7IGhlaWdodDogY2xhbXAoMzUwcHgsIDQwMHB4LCA1MDBweCk7IHdpZHRoOiBhdXRvOyBvYmplY3QtZml0OiBjb3Zlcjsgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9XG5cbmltZy5hcnRpY2xlX2ltYWdlIHsgd2lkdGg6IDEwMCU7IGhlaWdodDogYXV0bzsgfVxuXG4uY2FwdGlvbi13cmFwIHsgcGFkZGluZy10b3A6IDEwcHg7IHBhZGRpbmctYm90dG9tOiAwcHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmNhcHRpb24td3JhcCB7IHBhZGRpbmctdG9wOiAyMHB4OyBwYWRkaW5nLWJvdHRvbTogMjBweDsgfSB9XG5cbnVsLnBhZ2UtbnVtYmVycyB7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBiYXNlbGluZTsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGZsZXgtd3JhcDogd3JhcDsgfVxuXG51bC5wYWdlLW51bWJlcnMgYSwgdWwucGFnZS1udW1iZXJzIGxpLmN1cnJlbnQsIHVsLnBhZ2UtbnVtYmVycyBsaS5lbGxpcHNpcyB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG51bC5wYWdlLW51bWJlcnMgYTpob3ZlciwgdWwucGFnZS1udW1iZXJzIGEuYWN0aXZlLCB1bC5wYWdlLW51bWJlcnMgbGkuY3VycmVudDpob3ZlciwgdWwucGFnZS1udW1iZXJzIGxpLmVsbGlwc2lzOmhvdmVyIHsgY29sb3I6ICMwNDMyNjM7IH1cblxudWwucGFnZS1udW1iZXJzIGxpIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBoZWlnaHQ6IDMxcHg7IH1cblxudWwucGFnZS1udW1iZXJzIGxpIC5jdXJyZW50IHsgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICMwRjU4OUE7IH1cblxudWwucGFnZS1udW1iZXJzIC5wcmV2OmFmdGVyLCB1bC5wYWdlLW51bWJlcnMgLm5leHQ6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBkaXNwbGF5OiBmbGV4OyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyBiYWNrZ3JvdW5kLXNpemU6IDExcHggMTdweDsgd2lkdGg6IDExcHg7IGhlaWdodDogMTdweDsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyB1bC5wYWdlLW51bWJlcnMgLnByZXY6YWZ0ZXIsIHVsLnBhZ2UtbnVtYmVycyAubmV4dDphZnRlciB7IG1hc2stc2l6ZTogY29udGFpbjsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgbWFzay1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfSB9XG5cbnVsLnBhZ2UtbnVtYmVycyAucHJldjphZnRlciB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pY29ucy9wcmV2LWJ0bi5zdmcpOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IHVsLnBhZ2UtbnVtYmVycyAucHJldjphZnRlciB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9wcmV2LWJ0bi5zdmcpOyB9IH1cblxudWwucGFnZS1udW1iZXJzIC5uZXh0OmFmdGVyIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ljb25zL25leHQtYnRuLnN2Zyk7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgdWwucGFnZS1udW1iZXJzIC5uZXh0OmFmdGVyIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL25leHQtYnRuLnN2Zyk7IH0gfVxuXG4uc2VhcmNoX3dyYXBwZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0ICFpbXBvcnRhbnQ7IH1cblxuLnNlYXJjaF93cmFwcGVyIC5zZWFyY2ggaW5wdXQsIC5zZWFyY2hfd3JhcHBlciAuc2VhcmNoIGlucHV0OmZvY3VzIHsgbWFyZ2luLWJvdHRvbTogMjBweDsgY29sb3I6ICM3NjcxNzU7IGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDsgYm9yZGVyOiBub25lOyBib3gtc2hhZG93OiBub25lOyB9XG5cbi5zZWFyY2hfd3JhcHBlciAuc2VhcmNoIGlucHV0LCAuc2VhcmNoX3dyYXBwZXIgLnNlYXJjaCBzZWxlY3QsIC5zZWFyY2hfd3JhcHBlciAuc2VhcmNoIDo6cGxhY2Vob2xkZXIgeyBmb250LXNpemU6IDEuMjVyZW07IGNvbG9yOiAjNzY3MTc1OyBib3JkZXI6IG5vbmU7IGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLnNlYXJjaF93cmFwcGVyIC5zZWFyY2ggZGl2LnNlYXJjaF9faW5wdXQgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnNlYXJjaF93cmFwcGVyIC5zZWFyY2ggZGl2LnNlYXJjaF9faW5wdXQ6OmFmdGVyIHsgY29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3NlYXJjaC1pY29uLWdyZXkuc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlci9jb250YWluOyBoZWlnaHQ6IDIwcHg7IHdpZHRoOiAyMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMTBweDsgcmlnaHQ6IDEwcHg7IH1cblxuLnNlYXJjaF93cmFwcGVyIC5zZWFyY2ggLnNlYXJjaF9fZmlsdGVycyB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5zZWFyY2hfd3JhcHBlciAuc2VhcmNoIC5zZWFyY2hfX2ZpbHRlcnMgeyBkaXNwbGF5OiBmbGV4OyB9IH1cblxuLnNlYXJjaF93cmFwcGVyIC5zZWFyY2ggLnNlYXJjaF9fZmlsdGVycyBzZWxlY3QgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpOyBiYWNrZ3JvdW5kLXNpemU6IDE1cHggOHB4OyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IC5zZWFyY2hfd3JhcHBlciAuc2VhcmNoIC5zZWFyY2hfX2ZpbHRlcnMgc2VsZWN0IHsgYmFja2dyb3VuZDogIzA0MzI2MzsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTsgbWFzay1zaXplOiAxNXB4IDhweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuc2VhcmNoX3dyYXBwZXIgLnNlYXJjaCAuc2VhcmNoX19maWx0ZXJzIGxhYmVsIHsgZmxleDogMTsgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gIC5zZWFyY2hfd3JhcHBlciAuc2VhcmNoIC5zZWFyY2hfX2ZpbHRlcnMgbGFiZWwubGFzdCB7IG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbiNteS1jdXN0b20tc2VhcmNoZm9ybSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4jbXktY3VzdG9tLXNlYXJjaGZvcm0gaW5wdXRbdHlwZT10ZXh0XSB7IGJvcmRlcjogbm9uZTsgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4jbXktY3VzdG9tLXNlYXJjaGZvcm0gc2VsZWN0IHsgcGFkZGluZy10b3A6IDA7IHBhZGRpbmctYm90dG9tOiAwOyB3aWR0aDogNDklOyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgYm9yZGVyOiBub25lOyBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbiNteS1jdXN0b20tc2VhcmNoZm9ybSBzZWxlY3Q6bnRoLWNoaWxkKG9kZCkgeyBmbG9hdDogcmlnaHQ7IH1cblxuI215LWN1c3RvbS1zZWFyY2hmb3JtIGlucHV0W3R5cGU9c3VibWl0XSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgcmlnaHQ6IDA7IGhlaWdodDogNDBweDsgd2lkdGg6IDQwcHg7IHRleHQtaW5kZW50OiAtOTk5OTlweDsgY3Vyc29yOiBwb2ludGVyOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJvcmRlcjogbm9uZTsgei1pbmRleDogOTk5OTk5OTk5OTk5OTsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3NlYXJjaC1pY29uLXJlZC5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyB0b3A6IDBweDsgfVxuXG4uc2VhcmNoLWZvcm0geyBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLnNlYXJjaC1mb3JtIGlucHV0W3R5cGU9c2VhcmNoXTphY3RpdmUsIC5zZWFyY2gtZm9ybSBpbnB1dFt0eXBlPXNlYXJjaF06Zm9jdXMgeyBib3JkZXI6IG5vbmU7IGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNDRTAwM0E7IH1cblxuLnNlYXJjaF9yZXN1bHRzIC5yZXN1bHRzX3RvdGFsIHsgbWFyZ2luLXRvcDogMjBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuc2VhcmNoX3Jlc3VsdHMgLnJlc3VsdHNfdG90YWwgeyBtYXJnaW4tdG9wOiA1MHB4OyB9IH1cblxuLnNlYXJjaF9yZXN1bHRzIC5yZXN1bHRzX2luZm8geyBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5zZWFyY2hfcmVzdWx0cyAucGlua190ZXh0IHsgY29sb3I6ICMwNDMyNjM7IGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfODUgSGVhdnkxNDc1NTQ0XCI7IH1cblxuLnNlYXJjaF9yZXN1bHRzIHVsIHsgbGlzdC1zdHlsZTogbm9uZTsgbWFyZ2luOiAwcHggIWltcG9ydGFudDsgfVxuXG4uc2VhcmNoX3Jlc3VsdHMgdWwgbGkgeyBsaXN0LXN0eWxlOiBub25lOyBib3JkZXItbGVmdDogM3B4IHNvbGlkICMwNDMyNjM7IHBhZGRpbmctbGVmdDogMXJlbTsgfVxuXG4uc2VhcmNoX3Jlc3VsdHMgdWwgbGkgaDIgeyBtYXJnaW4tdG9wOiA2MHB4OyB9XG5cbi5zZWFyY2hfcmVzdWx0cyB1bCBsaSBoNSwgLnNlYXJjaF9yZXN1bHRzIHVsIGxpIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5zZWFyY2hfcmVzdWx0cyB1bCBsaSBwIHsgbWFyZ2luLWJvdHRvbTogOHB4OyB9XG5cbi5zZWFyY2hfcmVzdWx0cyB1bCBsaSBwIHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4uc2VhcmNoX3Jlc3VsdHMgdWwgbGkgYSB7IGZvbnQtd2VpZ2h0OiA4MDA7IH1cblxuLnNlYXJjaF9yZXN1bHRzIHVsIGxpIGE6OmFmdGVyIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW4tbGVmdDogMTBweDsgaGVpZ2h0OiAxM3B4OyB3aWR0aDogOXB4OyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYXJyb3ctYnRuLWJsdWUuc3ZnKSBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogOXB4IDEzcHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuc2VhcmNoX3Jlc3VsdHMgdWwgbGkgYTo6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvYXJyb3ctYnRuLWJsdWUuc3ZnKTsgbWFzay1zaXplOiA5cHggMTNweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbi5zZWFyY2hfcmVzdWx0cyB1bCBsaTpiZWZvcmUgeyBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7IH1cblxuI3NlYXJjaGZvcm0uc2VhcmNoX2Rlc2t0b3AgeyBkaXNwbGF5OiBmbGV4OyB9XG5cbiNzZWFyY2hmb3JtLnNlYXJjaF9kZXNrdG9wIGlucHV0W3R5cGU9J3RleHQnXSB7IG1hcmdpbjogMDsgfVxuXG4jc2VhcmNoZm9ybS5zZWFyY2hfZGVza3RvcCAjc2VhcmNoLWxhbmcgeyBib3JkZXItcmFkaXVzOiAyM3B4OyBwYWRkaW5nOiAwLjdyZW0gMnJlbSAwLjdyZW0gMXJlbTsgbWFyZ2luOiAwIDAgMCAyMHB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAxNXB4KSBjZW50ZXI7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7ICNzZWFyY2hmb3JtLnNlYXJjaF9kZXNrdG9wIHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7ICNzZWFyY2hmb3JtLnNlYXJjaF9kZXNrdG9wIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAjc2VhcmNoZm9ybS5zZWFyY2hfZGVza3RvcCBpbnB1dFt0eXBlPSd0ZXh0J10geyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICNzZWFyY2hmb3JtLnNlYXJjaF9kZXNrdG9wICNzZWFyY2gtbGFuZyB7IG1hcmdpbjogMCAwIDIwcHggMDsgd2lkdGg6IGZpdC1jb250ZW50OyB9IH1cblxuLyoqIExpc3RzICovXG5zZWN0aW9uIC5jZWxsIHVsOm5vdCgucGFnaW5hdGlvbik6bm90KHVsLnBhZ2UtbnVtYmVycyk6bm90KC5wYWdlLW51bWJlcnMpOm5vdCgudGFicyk6bm90KC5hY2NvcmRpb24pOm5vdCguc29jaWFsLS1saXN0KTpub3QoLnNpZGViYXJfbGlzdCk6bm90KC5icmVhZGNydW1iLS1uYXZpZ2F0aW9uKTpub3QoLmRhc2hlZCk6bm90KC5nZm9ybV9maWVsZHMpIHsgbGlzdC1zdHlsZTogbm9uZTsgLyogUmVtb3ZlIGRlZmF1bHQgYnVsbGV0cyAqLyBtYXJnaW4tbGVmdDogMjRweDsgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG5cbnNlY3Rpb24gLmNlbGwgdWw6bm90KC5wYWdpbmF0aW9uKTpub3QodWwucGFnZS1udW1iZXJzKTpub3QoLnBhZ2UtbnVtYmVycyk6bm90KC50YWJzKTpub3QoLmFjY29yZGlvbik6bm90KC5zb2NpYWwtLWxpc3QpOm5vdCguc2lkZWJhcl9saXN0KTpub3QoLmJyZWFkY3J1bWItLW5hdmlnYXRpb24pOm5vdCguZGFzaGVkKTpub3QoLmdmb3JtX2ZpZWxkcykgbGk6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMDIyXCI7IC8qIEFkZCBjb250ZW50OiBcXDIwMjIgaXMgdGhlIENTUyBDb2RlL3VuaWNvZGUgZm9yIGEgYnVsbGV0ICovIGNvbG9yOiAjMEY1ODlBOyAvKiBDaGFuZ2UgdGhlIGNvbG9yICovIGZvbnQtd2VpZ2h0OiBib2xkOyAvKiBJZiB5b3Ugd2FudCBpdCB0byBiZSBib2xkICovIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogTmVlZGVkIHRvIGFkZCBzcGFjZSBiZXR3ZWVuIHRoZSBidWxsZXQgYW5kIHRoZSB0ZXh0ICovIHdpZHRoOiAxLjVlbTsgLyogQWxzbyBuZWVkZWQgZm9yIHNwYWNlICh0d2VhayBpZiBuZWVkZWQpICovIG1hcmdpbi1sZWZ0OiAtMS41ZW07IC8qIEFsc28gbmVlZGVkIGZvciBzcGFjZSAodHdlYWsgaWYgbmVlZGVkKSAqLyB9XG5cbnNlY3Rpb24gLmNlbGwgdWwuYWNjb3JkaW9uIGxpOjpiZWZvcmUgeyBjb250ZW50OiBub25lOyB9XG5cbnNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHsgcG9zaXRpb246IHJlbGF0aXZlOyBtYXJnaW46IDQwcHggMDsgfVxuXG5zZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZTpiZWZvcmUgeyBjb250ZW50OiAnJzsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IHdpZHRoOiAxMnB4OyBoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQ6ICMwNDMyNjM7IGJvcmRlci1yYWRpdXM6IDZweDsgfVxuXG4vKiogVGFicyAqL1xuLnRhYnMgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgYm9yZGVyOiBub25lOyB9XG5cbi50YWJzIGxpLnRhYnMtdGl0bGUgeyBtYXJnaW4tcmlnaHQ6IDRweDsgfVxuXG4udGFicyBsaS50YWJzLXRpdGxlID4gYSB7IGNvbG9yOiAjRkRDNDAwOyBmb250LXNpemU6IDFyZW07IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgfVxuXG4udGFicyBsaS50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPXRydWVdIHsgYmFja2dyb3VuZDogIzBGNTg5QTsgY29sb3I6ICMwRjU4OUE7IH1cblxuLnRhYnMgbGkudGFicy10aXRsZSBhOmZvY3VzIHsgYm9yZGVyLXJhZGl1czogMDsgb3V0bGluZTogbm9uZTsgYm94LXNoYWRvdzogMCAwIDJweCAjMEY1ODlBOyB9XG5cbi50YWJzLWNvbnRlbnQgeyBib3JkZXI6IG5vbmU7IH1cblxuLnRhYnMtY29udGVudCAudGFicy1wYW5lbCB7IHBhZGRpbmc6IDQwcHggMDsgbWFyZ2luOiAwOyB9XG5cbi8qKiBUeXBvZ3JhcGh5ICovXG5oMSwgaDIsIGgzLCBoNCwgaDUsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIGg2LCAudXBkYXRlZCAuZGF0ZSwgLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7IGZvbnQtc3ludGhlc2lzOiBub25lICFpbXBvcnRhbnQ7IH1cblxuQGZvbnQtZmFjZSB7IGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfNTUgUm9tYW4xNDc1NTIwXCI7IHNyYzogdXJsKFwiLi4vZm9udHMvMTQ3NTUyMC9iMjkwZTc3NS1lMGY5LTQ5ODAtOTE0Yi1hNGMzMmE1ZTNlMzYud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzLzE0NzU1MjAvNGI5NzhmNzItYmI0OC00NmMzLTkwOWEtMmE4Y2QyZjg4MTljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV82NSBNZWRpdW0xNDc1NTMyXCI7IHNyYzogdXJsKFwiLi4vZm9udHMvMTQ3NTUzMi8xN2I5MGVmNS1iNjNmLTQ1N2ItYTk4MS01MDNiYjdhZmUzYzAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzLzE0NzU1MzIvYzlhZWVhYmQtZGQ2NS00OTFkLWI0YmUtM2UwZGI5YWU0N2EwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV84NSBIZWF2eTE0NzU1NDRcIjsgc3JjOiB1cmwoXCIuLi9mb250cy8xNDc1NTQ0L2Q1MTNlMTVlLThmMzUtNDEyOS1hZDA1LTQ4MTgxNWU1MjYyNS53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvMTQ3NTU0NC82MWJkMzYyZS03MTYyLTQ2YmQtYjY3ZS0yOGYzNjZjNGFmYmUud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2UgeyBmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzk1IEJsYWNrMTQ3NTU1NlwiOyBzcmM6IHVybChcIi4uL2ZvbnRzLzE0NzU1NTYvYzc4ZWI3YWYtYTFjOC00ODkyLTk3NGItNTIzNzk2NDZmZWY0LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLmZvbnRzLzE0NzU1NTYvNzViMzZjNTgtMmEwMi00MDU3LWE1MzctMDlhZjA4MzJhZTQ2LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5ib2R5IHsgZm9udC1zaXplOiAxcmVtOyBsaW5lLWhlaWdodDogMS40OyBsZXR0ZXItc3BhY2luZzogMDsgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4uc3ViaGVhZGluZyB7IGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfODUgSGVhdnkxNDc1NTQ0XCI7IGZvbnQtc2l6ZTogMC44NzVyZW07IGxpbmUtaGVpZ2h0OiAxLjQ1OyBsZXR0ZXItc3BhY2luZzogMC4yNzVlbTsgbWFyZ2luLWJvdHRvbTogOHB4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBjb2xvcjogIzBGNTg5QTsgfVxuXG4uc3RhbmRhcmQtbGluayB7IGZvbnQtc2l6ZTogMS4xMjVyZW07IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNGREM0MDA7IHRyYW5zaXRpb246IGFsbCAwLjNzOyBjb2xvcjogIzA0MzI2MzsgfVxuXG4uc3RhbmRhcmQtbGluazpob3ZlciwgYS5zdGFuZGFyZC1saW5rLmFjdGl2ZSwgYnV0dG9uLnN0YW5kYXJkLWxpbmsuYWN0aXZlIHsgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICM0NTk1RTY7IGNvbG9yOiAjMDQzMjYzOyB9XG5cbnAubGFyZ2UgeyBmb250LXNpemU6IDEuMjVyZW07IG1hcmdpbi1ib3R0b206IDEuMjVlbTsgfVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIGg2LCAudXBkYXRlZCAuZGF0ZSB7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxuYiwgc3Ryb25nLCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBoMSwgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgaDIsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IGgzLCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBoNCwgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgaDUsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IHAsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IGg2LCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCAudXBkYXRlZCAuZGF0ZSwgLnVwZGF0ZWQgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgLmRhdGUgeyBmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzg1IEhlYXZ5MTQ3NTU0NFwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbmh0bWwgeyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuKiBodG1sIGJvZHkgeyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuLyoqIFNpdGUgSGVhZGVyICAqL1xuLnNpdGUtaGVhZGVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyBtYXgtd2lkdGg6IDEwMCU7IHdpZHRoOiAxMDAlOyB9XG5cbi5zaXRlLWhlYWRlciA+IC5ncmlkLWNvbnRhaW5lciB7IGhlaWdodDogMTAwJTsgfVxuXG4uc2l0ZS1oZWFkZXIgLmhlYWRlci13cmFwIHsgZGlzcGxheTogZmxleDsgYWxpZ24tY29udGVudDogY2VudGVyOyBtaW4taGVpZ2h0OiA1NXB4OyB9XG5cbi5zaXRlLWhlYWRlciBhIHsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG4uc2l0ZS1oZWFkZXIgLmhhbWJ1cmdlciB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAxMHB4OyByaWdodDogMTZweDsgfVxuXG4uc2l0ZS1oZWFkZXIgLmhhbWJ1cmdlciAuaGFtYnVyZ2VyLWJveCB7IGhlaWdodDogMTBweDsgfVxuXG4uc2l0ZS1oZWFkZXIgLmhhbWJ1cmdlciAuaGFtYl9jbG9zZSB7IGNvbG9yOiAjMDQzMjYzOyBmb250LXNpemU6IDE0cHg7IG9wYWNpdHk6IDA7IHRyYW5zaXRpb246IGFsbCAwLjNzOyB9XG5cbi5zaXRlLWhlYWRlciAuaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYl9jbG9zZSB7IG9wYWNpdHk6IDE7IH1cblxuLnNpdGUtaGVhZGVyIC5oYW1idXJnZXItaW5uZXIsIC5zaXRlLWhlYWRlciAuaGFtYnVyZ2VyLWlubmVyOmFmdGVyLCAuc2l0ZS1oZWFkZXIgLmhhbWJ1cmdlci1pbm5lcjpiZWZvcmUsIC5zaXRlLWhlYWRlciAuaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOmFmdGVyLCAuc2l0ZS1oZWFkZXIgLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjpiZWZvcmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQzMjYzOyB9XG5cbi5zaXRlLWhlYWRlciAuaWNvbiB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMzFweDsgaGVpZ2h0OiAzMXB4OyB9XG5cbi5zaXRlLWhlYWRlciAuaWNvbiBpbWcgeyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBvYmplY3QtZml0OiBjb250YWluOyBvYmplY3QtcG9zaXRpb246IGNlbnRlciBsZWZ0OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5zaXRlLWhlYWRlciAuaWNvbiB7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDQ0cHg7IG1hcmdpbjogNXB4IDE2cHggNXB4IDA7IH0gfVxuXG4uc2l0ZS1oZWFkZXIgLmljb24gc3BhbiB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogLTk5OTk5cHg7IH1cblxuLnNpdGUtaGVhZGVyIC5pY29uLmljb24tc21hbGwgeyBvcGFjaXR5OiAwOyB2aXNpYmlsaXR5OiBoaWRkZW47IHBvaW50ZXItZXZlbnRzOiBub25lOyB0cmFuc2l0aW9uOiB3aWR0aCAwLjI1cywgaGVpZ2h0IDAuMjVzOyB3aWR0aDogMzBweDsgaGVpZ2h0OiAzMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNTAlOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IG1hcmdpbi10b3A6IDA7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHsgLnNpdGUtaGVhZGVyIC5pY29uIHsgd2lkdGg6IDQwcHg7IH0gfVxuXG4uc2l0ZS1oZWFkZXIgLnNlYXJjaF9fd3JhcHBlciB7IHdpZHRoOiAxMDAlOyBwYWRkaW5nLWxlZnQ6IDI0cHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgLnNpdGUtaGVhZGVyIC5zZWFyY2hfX3dyYXBwZXIgeyB3aWR0aDogODUlOyBwYWRkaW5nLWxlZnQ6IDEwcHg7IG1hcmdpbjogMCBhdXRvOyB9IH1cblxuLnNpdGUtaGVhZGVyIC5zZWFyY2hfX3dyYXBwZXIgZm9ybSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uc2l0ZS1oZWFkZXIgLnNlYXJjaF9fd3JhcHBlciBpbnB1dFt0eXBlPVwidGV4dFwiXSB7IG1hcmdpbjogMHB4OyBwYWRkaW5nOiA0cHggMjBweDsgYm9yZGVyOiAxcHggc29saWQgI2U0ZTVlOTsgYm9yZGVyLXJhZGl1czogMzVweDsgYm94LXNoYWRvdzogbm9uZTsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV81NSBSb21hbjE0NzU1MjBcIjsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuc2l0ZS1oZWFkZXIgLnNlYXJjaF9fd3JhcHBlciBpbnB1dFt0eXBlPVwidGV4dFwiXSB7IHBhZGRpbmc6IDI0cHggMjBweDsgfSB9XG5cbi5zaXRlLWhlYWRlciAubWVudSB7IGRpc3BsYXk6IG5vbmU7IHdpZHRoOiAxMDAlOyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnNpdGUtaGVhZGVyIC5tZW51IGxpIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLnNpdGUtaGVhZGVyIC5tZW51IGxpOmZpcnN0LWNoaWxkIHsgcGFkZGluZy1sZWZ0OiAwcHg7IH1cbiAgLnNpdGUtaGVhZGVyIC5tZW51IGxpOmxhc3QtY2hpbGQgeyBwYWRkaW5nLXJpZ2h0OiAwcHg7IH0gfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUgbGk6bm90KC5mYXV4LWJ1dHRvbikgYSwgLnNpdGUtaGVhZGVyIC5tZW51IGxpOm5vdCguZmF1eC1idXR0b24pIGg2LCAuc2l0ZS1oZWFkZXIgLm1lbnUgbGk6bm90KC5mYXV4LWJ1dHRvbikgLnVwZGF0ZWQgLmRhdGUsIC51cGRhdGVkIC5zaXRlLWhlYWRlciAubWVudSBsaTpub3QoLmZhdXgtYnV0dG9uKSAuZGF0ZSB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMTAwJTsgcGFkZGluZzogMTZweCAwIDVweDsgZm9udC1zaXplOiAxLjEyNXJlbTsgZm9udC13ZWlnaHQ6IDQwMDsgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHRyYW5zcGFyZW50OyBtYXJnaW4tYm90dG9tOiAwOyBsaW5lLWhlaWdodDogMTsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUgbGk6bm90KC5mYXV4LWJ1dHRvbikgYTpob3ZlciwgLnNpdGUtaGVhZGVyIC5tZW51IGxpOm5vdCguZmF1eC1idXR0b24pIGEuYWN0aXZlIHsgY29sb3I6ICMwRjU4OUE7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYm9yZGVyLWJvdHRvbS1jb2xvcjogI0ZEQzQwMDsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUgbGk6bm90KC5mYXV4LWJ1dHRvbikgYS5zZWFyY2gtLWxpbmsgeyB3aWR0aDogMjBweDsgY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9zZWFyY2gtaWNvbi5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQ7IHRleHQtaW5kZW50OiAtOTk5OTlweDsgb3BhY2l0eTogMDsgaGVpZ2h0OiAwOyB9XG5cbi5zaXRlLWhlYWRlciAubWVudSBsaTpub3QoLmZhdXgtYnV0dG9uKSBhLnNlY3Rpb24tbGFuZGluZyB7IHBhZGRpbmc6IDBweCAwcHggNXB4IDBweDsgYm9yZGVyLWJvdHRvbTogMDsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUgbGk6bm90KC5mYXV4LWJ1dHRvbikgYS5zZWN0aW9uLWxhbmRpbmc6aG92ZXIsIC5zaXRlLWhlYWRlciAubWVudSBsaTpub3QoLmZhdXgtYnV0dG9uKSBhLnNlY3Rpb24tbGFuZGluZy5hY3RpdmUgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuc2Vjb25kYXJ5LCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24sIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIC5tZW51LmJ1dHRvbiwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51LCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC5zaXRlLWhlYWRlciBhLm1lbnUsIC5zaXRlLWhlYWRlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgYS5tZW51IHsgbWFyZ2luOiAxMHB4IDAgMTdweDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuc2Vjb25kYXJ5ID4gbGksIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiA+IGxpLCAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciAubWVudS5idXR0b24gPiBsaSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51ID4gbGksIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpLCAuc2l0ZS1oZWFkZXIgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLm1lbnUgPiBsaSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkgeyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmc6IDAgMjFweDsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuc2Vjb25kYXJ5ID4gbGk6bnRoLWNoaWxkKC1uKzIpLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24gPiBsaTpudGgtY2hpbGQoLW4rMiksIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIC5tZW51LmJ1dHRvbiA+IGxpOm50aC1jaGlsZCgtbisyKSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51ID4gbGk6bnRoLWNoaWxkKC1uKzIpLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaTpudGgtY2hpbGQoLW4rMiksIC5zaXRlLWhlYWRlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSA+IGxpOm50aC1jaGlsZCgtbisyKSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGk6bnRoLWNoaWxkKC1uKzIpIHsgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2U0ZTVlOTsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuc2Vjb25kYXJ5ID4gbGk6bnRoLWxhc3QtY2hpbGQoMiksIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiA+IGxpOm50aC1sYXN0LWNoaWxkKDIpLCAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciAubWVudS5idXR0b24gPiBsaTpudGgtbGFzdC1jaGlsZCgyKSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51ID4gbGk6bnRoLWxhc3QtY2hpbGQoMiksIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpOm50aC1sYXN0LWNoaWxkKDIpLCAuc2l0ZS1oZWFkZXIgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLm1lbnUgPiBsaTpudGgtbGFzdC1jaGlsZCgyKSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGk6bnRoLWxhc3QtY2hpbGQoMikgeyBwYWRkaW5nLXJpZ2h0OiAwcHg7IGJvcmRlcjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5zaXRlLWhlYWRlciAubWVudS5zZWNvbmRhcnkgPiBsaTpsYXN0LWNoaWxkLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24gPiBsaTpsYXN0LWNoaWxkLCAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciAubWVudS5idXR0b24gPiBsaTpsYXN0LWNoaWxkLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgPiBsaTpsYXN0LWNoaWxkLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaTpsYXN0LWNoaWxkLCAuc2l0ZS1oZWFkZXIgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLm1lbnUgPiBsaTpsYXN0LWNoaWxkLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaTpsYXN0LWNoaWxkIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuc2Vjb25kYXJ5ID4gbGk6bm90KC5mYXV4LWJ1dHRvbikgYSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uID4gbGk6bm90KC5mYXV4LWJ1dHRvbikgYSwgLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgLm1lbnUuYnV0dG9uID4gbGk6bm90KC5mYXV4LWJ1dHRvbikgYSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51ID4gbGk6bm90KC5mYXV4LWJ1dHRvbikgYSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGk6bm90KC5mYXV4LWJ1dHRvbikgYSwgLnNpdGUtaGVhZGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51ID4gbGk6bm90KC5mYXV4LWJ1dHRvbikgYSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGk6bm90KC5mYXV4LWJ1dHRvbikgYSB7IGZvbnQtc2l6ZTogMXJlbTsgYm9yZGVyLWJvdHRvbTogbm9uZTsgcGFkZGluZzogMDsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuc2Vjb25kYXJ5ID4gbGkubGFuZ3VhZ2VzLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24gPiBsaS5sYW5ndWFnZXMsIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIC5tZW51LmJ1dHRvbiA+IGxpLmxhbmd1YWdlcywgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51ID4gbGkubGFuZ3VhZ2VzLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaS5sYW5ndWFnZXMsIC5zaXRlLWhlYWRlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSA+IGxpLmxhbmd1YWdlcywgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkubGFuZ3VhZ2VzIHsgYm9yZGVyOiAwOyBwYWRkaW5nOiAwOyB9XG5cbi5zaXRlLWhlYWRlciAubWVudS5zZWNvbmRhcnkgPiBsaS5sYW5ndWFnZXMgPiBhLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24gPiBsaS5sYW5ndWFnZXMgPiBhLCAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciAubWVudS5idXR0b24gPiBsaS5sYW5ndWFnZXMgPiBhLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgPiBsaS5sYW5ndWFnZXMgPiBhLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaS5sYW5ndWFnZXMgPiBhLCAuc2l0ZS1oZWFkZXIgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLm1lbnUgPiBsaS5sYW5ndWFnZXMgPiBhLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaS5sYW5ndWFnZXMgPiBhIHsgZGlzcGxheTogaW5saW5lLWZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjsgb3ZlcmZsb3c6IGhpZGRlbjsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2dsb2JlLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIvY29udGFpbjsgdGV4dC1pbmRlbnQ6IC05OTk5cHg7IHdpZHRoOiA1MHB4OyBoZWlnaHQ6IDE2cHg7IH1cblxuLnNpdGUtaGVhZGVyIC5tZW51LnNlY29uZGFyeSA+IGxpLmxhbmd1YWdlcyA+IGE6YWZ0ZXIsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiA+IGxpLmxhbmd1YWdlcyA+IGE6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIC5tZW51LmJ1dHRvbiA+IGxpLmxhbmd1YWdlcyA+IGE6YWZ0ZXIsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEubWVudSA+IGxpLmxhbmd1YWdlcyA+IGE6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpLmxhbmd1YWdlcyA+IGE6YWZ0ZXIsIC5zaXRlLWhlYWRlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSA+IGxpLmxhbmd1YWdlcyA+IGE6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpLmxhbmd1YWdlcyA+IGE6YWZ0ZXIgeyBjb250ZW50OiAnJzsgd2lkdGg6IDhweDsgaGVpZ2h0OiA1cHg7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIvY29udGFpbjsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuc2Vjb25kYXJ5ID4gbGkubGFuZ3VhZ2VzOmhvdmVyOmJlZm9yZSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uID4gbGkubGFuZ3VhZ2VzOmhvdmVyOmJlZm9yZSwgLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgLm1lbnUuYnV0dG9uID4gbGkubGFuZ3VhZ2VzOmhvdmVyOmJlZm9yZSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51ID4gbGkubGFuZ3VhZ2VzOmhvdmVyOmJlZm9yZSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkubGFuZ3VhZ2VzOmhvdmVyOmJlZm9yZSwgLnNpdGUtaGVhZGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51ID4gbGkubGFuZ3VhZ2VzOmhvdmVyOmJlZm9yZSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkubGFuZ3VhZ2VzOmhvdmVyOmJlZm9yZSwgLnNpdGUtaGVhZGVyIC5tZW51LnNlY29uZGFyeSA+IGxpLmxhbmd1YWdlczpmb2N1czpiZWZvcmUsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiA+IGxpLmxhbmd1YWdlczpmb2N1czpiZWZvcmUsIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIC5tZW51LmJ1dHRvbiA+IGxpLmxhbmd1YWdlczpmb2N1czpiZWZvcmUsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEubWVudSA+IGxpLmxhbmd1YWdlczpmb2N1czpiZWZvcmUsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpLmxhbmd1YWdlczpmb2N1czpiZWZvcmUsIC5zaXRlLWhlYWRlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSA+IGxpLmxhbmd1YWdlczpmb2N1czpiZWZvcmUsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpLmxhbmd1YWdlczpmb2N1czpiZWZvcmUsIC5zaXRlLWhlYWRlciAubWVudS5zZWNvbmRhcnkgPiBsaS5sYW5ndWFnZXM6Zm9jdXMtd2l0aGluOmJlZm9yZSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uID4gbGkubGFuZ3VhZ2VzOmZvY3VzLXdpdGhpbjpiZWZvcmUsIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIC5tZW51LmJ1dHRvbiA+IGxpLmxhbmd1YWdlczpmb2N1cy13aXRoaW46YmVmb3JlLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgPiBsaS5sYW5ndWFnZXM6Zm9jdXMtd2l0aGluOmJlZm9yZSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkubGFuZ3VhZ2VzOmZvY3VzLXdpdGhpbjpiZWZvcmUsIC5zaXRlLWhlYWRlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSA+IGxpLmxhbmd1YWdlczpmb2N1cy13aXRoaW46YmVmb3JlLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaS5sYW5ndWFnZXM6Zm9jdXMtd2l0aGluOmJlZm9yZSB7IGNvbnRlbnQ6ICcnOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMTAwJTsgcmlnaHQ6IC04MHB4OyB3aWR0aDogNzV2dzsgaGVpZ2h0OiAyMDBweDsgei1pbmRleDogOTk4OyB9XG5cbi5zaXRlLWhlYWRlciAubWVudS5zZWNvbmRhcnkgPiBsaS5sYW5ndWFnZXM6aG92ZXIgI2xhbmd1YWdlLW1lbnUsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiA+IGxpLmxhbmd1YWdlczpob3ZlciAjbGFuZ3VhZ2UtbWVudSwgLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgLm1lbnUuYnV0dG9uID4gbGkubGFuZ3VhZ2VzOmhvdmVyICNsYW5ndWFnZS1tZW51LCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgPiBsaS5sYW5ndWFnZXM6aG92ZXIgI2xhbmd1YWdlLW1lbnUsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpLmxhbmd1YWdlczpob3ZlciAjbGFuZ3VhZ2UtbWVudSwgLnNpdGUtaGVhZGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51ID4gbGkubGFuZ3VhZ2VzOmhvdmVyICNsYW5ndWFnZS1tZW51LCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaS5sYW5ndWFnZXM6aG92ZXIgI2xhbmd1YWdlLW1lbnUsIC5zaXRlLWhlYWRlciAubWVudS5zZWNvbmRhcnkgPiBsaS5sYW5ndWFnZXM6Zm9jdXMgI2xhbmd1YWdlLW1lbnUsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiA+IGxpLmxhbmd1YWdlczpmb2N1cyAjbGFuZ3VhZ2UtbWVudSwgLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgLm1lbnUuYnV0dG9uID4gbGkubGFuZ3VhZ2VzOmZvY3VzICNsYW5ndWFnZS1tZW51LCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgPiBsaS5sYW5ndWFnZXM6Zm9jdXMgI2xhbmd1YWdlLW1lbnUsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpLmxhbmd1YWdlczpmb2N1cyAjbGFuZ3VhZ2UtbWVudSwgLnNpdGUtaGVhZGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51ID4gbGkubGFuZ3VhZ2VzOmZvY3VzICNsYW5ndWFnZS1tZW51LCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaS5sYW5ndWFnZXM6Zm9jdXMgI2xhbmd1YWdlLW1lbnUsIC5zaXRlLWhlYWRlciAubWVudS5zZWNvbmRhcnkgPiBsaS5sYW5ndWFnZXM6Zm9jdXMtd2l0aGluICNsYW5ndWFnZS1tZW51LCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24gPiBsaS5sYW5ndWFnZXM6Zm9jdXMtd2l0aGluICNsYW5ndWFnZS1tZW51LCAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciAubWVudS5idXR0b24gPiBsaS5sYW5ndWFnZXM6Zm9jdXMtd2l0aGluICNsYW5ndWFnZS1tZW51LCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgPiBsaS5sYW5ndWFnZXM6Zm9jdXMtd2l0aGluICNsYW5ndWFnZS1tZW51LCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaS5sYW5ndWFnZXM6Zm9jdXMtd2l0aGluICNsYW5ndWFnZS1tZW51LCAuc2l0ZS1oZWFkZXIgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLm1lbnUgPiBsaS5sYW5ndWFnZXM6Zm9jdXMtd2l0aGluICNsYW5ndWFnZS1tZW51LCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaS5sYW5ndWFnZXM6Zm9jdXMtd2l0aGluICNsYW5ndWFnZS1tZW51IHsgZGlzcGxheTogYmxvY2s7IH1cblxuLnNpdGUtaGVhZGVyIC5tZW51LnNlY29uZGFyeSA+IGxpICNsYW5ndWFnZS1tZW51LCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24gPiBsaSAjbGFuZ3VhZ2UtbWVudSwgLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgLm1lbnUuYnV0dG9uID4gbGkgI2xhbmd1YWdlLW1lbnUsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEubWVudSA+IGxpICNsYW5ndWFnZS1tZW51LCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaSAjbGFuZ3VhZ2UtbWVudSwgLnNpdGUtaGVhZGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnUsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpICNsYW5ndWFnZS1tZW51IHsgZGlzcGxheTogbm9uZTsgcG9zaXRpb246IGZpeGVkOyB0b3A6IDEzNnB4OyBsZWZ0OiAwOyByaWdodDogMDsgei1pbmRleDogOTk5OyBiYWNrZ3JvdW5kOiAjZmZmOyB0ZXh0LWFsaWduOiBsZWZ0OyBwYWRkaW5nOiAyMHB4IDA7IHRyYW5zaXRpb246IGRpc3BsYXkgMCAyczsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuc2Vjb25kYXJ5ID4gbGkgI2xhbmd1YWdlLW1lbnUgaDMsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiA+IGxpICNsYW5ndWFnZS1tZW51IGgzLCAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciAubWVudS5idXR0b24gPiBsaSAjbGFuZ3VhZ2UtbWVudSBoMywgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnUgaDMsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpICNsYW5ndWFnZS1tZW51IGgzLCAuc2l0ZS1oZWFkZXIgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLm1lbnUgPiBsaSAjbGFuZ3VhZ2UtbWVudSBoMywgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnUgaDMgeyBib3JkZXItYm90dG9tOiAycHggc29saWQgI0U0RTRFNDsgcGFkZGluZy1ib3R0b206IDEwcHg7IG1hcmdpbi10b3A6IDMwcHg7IH1cblxuLnNpdGUtaGVhZGVyIC5tZW51LnNlY29uZGFyeSA+IGxpICNsYW5ndWFnZS1tZW51IHVsLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24gPiBsaSAjbGFuZ3VhZ2UtbWVudSB1bCwgLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgLm1lbnUuYnV0dG9uID4gbGkgI2xhbmd1YWdlLW1lbnUgdWwsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEubWVudSA+IGxpICNsYW5ndWFnZS1tZW51IHVsLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaSAjbGFuZ3VhZ2UtbWVudSB1bCwgLnNpdGUtaGVhZGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnUgdWwsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpICNsYW5ndWFnZS1tZW51IHVsIHsgZGlzcGxheTogZmxleDsgZmxleC13cmFwOiB3cmFwOyBtYXJnaW46IDAgMCAxMHB4OyB9XG5cbi5zaXRlLWhlYWRlciAubWVudS5zZWNvbmRhcnkgPiBsaSAjbGFuZ3VhZ2UtbWVudSB1bCBsaSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uID4gbGkgI2xhbmd1YWdlLW1lbnUgdWwgbGksIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIC5tZW51LmJ1dHRvbiA+IGxpICNsYW5ndWFnZS1tZW51IHVsIGxpLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgPiBsaSAjbGFuZ3VhZ2UtbWVudSB1bCBsaSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnUgdWwgbGksIC5zaXRlLWhlYWRlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSA+IGxpICNsYW5ndWFnZS1tZW51IHVsIGxpLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaSAjbGFuZ3VhZ2UtbWVudSB1bCBsaSB7IHRleHQtYWxpZ246IGxlZnQ7IHdpZHRoOiAzMyU7IGZsZXg6IDAgMCBhdXRvOyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLnNpdGUtaGVhZGVyIC5tZW51LnNlY29uZGFyeSA+IGxpICNsYW5ndWFnZS1tZW51IHVsIGxpIC5sYWJlbCwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uID4gbGkgI2xhbmd1YWdlLW1lbnUgdWwgbGkgLmxhYmVsLCAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciAubWVudS5idXR0b24gPiBsaSAjbGFuZ3VhZ2UtbWVudSB1bCBsaSAubGFiZWwsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEubWVudSA+IGxpICNsYW5ndWFnZS1tZW51IHVsIGxpIC5sYWJlbCwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnUgdWwgbGkgLmxhYmVsLCAuc2l0ZS1oZWFkZXIgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLm1lbnUgPiBsaSAjbGFuZ3VhZ2UtbWVudSB1bCBsaSAubGFiZWwsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpICNsYW5ndWFnZS1tZW51IHVsIGxpIC5sYWJlbCB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGJhY2tncm91bmQ6ICNGMEYwRjA7IHdpZHRoOiA0NnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuc2Vjb25kYXJ5ID4gbGkgI2xhbmd1YWdlLW1lbnUgYSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uID4gbGkgI2xhbmd1YWdlLW1lbnUgYSwgLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgLm1lbnUuYnV0dG9uID4gbGkgI2xhbmd1YWdlLW1lbnUgYSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnUgYSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnUgYSwgLnNpdGUtaGVhZGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnUgYSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnUgYSB7IGRpc3BsYXk6IGlubGluZTsgd2lkdGg6IGF1dG87IH1cblxuLnNpdGUtaGVhZGVyIC5tZW51LnNlY29uZGFyeSA+IGxpICNsYW5ndWFnZS1tZW51IGFbdGFyZ2V0PVwiX2JsYW5rXCJdOmFmdGVyLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24gPiBsaSAjbGFuZ3VhZ2UtbWVudSBhW3RhcmdldD1cIl9ibGFua1wiXTphZnRlciwgLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgLm1lbnUuYnV0dG9uID4gbGkgI2xhbmd1YWdlLW1lbnUgYVt0YXJnZXQ9XCJfYmxhbmtcIl06YWZ0ZXIsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEubWVudSA+IGxpICNsYW5ndWFnZS1tZW51IGFbdGFyZ2V0PVwiX2JsYW5rXCJdOmFmdGVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaSAjbGFuZ3VhZ2UtbWVudSBhW3RhcmdldD1cIl9ibGFua1wiXTphZnRlciwgLnNpdGUtaGVhZGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnUgYVt0YXJnZXQ9XCJfYmxhbmtcIl06YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpICNsYW5ndWFnZS1tZW51IGFbdGFyZ2V0PVwiX2JsYW5rXCJdOmFmdGVyIHsgY29udGVudDogJyc7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgd2lkdGg6IDEycHg7IGhlaWdodDogMTJweDsgbWFyZ2luLWxlZnQ6IDZweDsgbWFyZ2luLXJpZ2h0OiAycHg7IGJhY2tncm91bmQ6IHVybChcIi4uL2ljb25zL25ldy13aW5kb3ctYmx1ZS5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIvY29udGFpbjsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuc2Vjb25kYXJ5ID4gbGkgI2xhbmd1YWdlLW1lbnU6aG92ZXIsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiA+IGxpICNsYW5ndWFnZS1tZW51OmhvdmVyLCAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciAubWVudS5idXR0b24gPiBsaSAjbGFuZ3VhZ2UtbWVudTpob3ZlciwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnU6aG92ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpICNsYW5ndWFnZS1tZW51OmhvdmVyLCAuc2l0ZS1oZWFkZXIgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLm1lbnUgPiBsaSAjbGFuZ3VhZ2UtbWVudTpob3ZlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnU6aG92ZXIsIC5zaXRlLWhlYWRlciAubWVudS5zZWNvbmRhcnkgPiBsaSBhI2xhbmd1YWdlLW1lbnUuYWN0aXZlLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24gPiBsaSBhI2xhbmd1YWdlLW1lbnUuYWN0aXZlLCAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciAubWVudS5idXR0b24gPiBsaSBhI2xhbmd1YWdlLW1lbnUuYWN0aXZlLCAuc2l0ZS1oZWFkZXIgLm1lbnUuc2Vjb25kYXJ5ID4gbGkgYnV0dG9uI2xhbmd1YWdlLW1lbnUuYWN0aXZlLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24gPiBsaSBidXR0b24jbGFuZ3VhZ2UtbWVudS5hY3RpdmUsIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIC5tZW51LmJ1dHRvbiA+IGxpIGJ1dHRvbiNsYW5ndWFnZS1tZW51LmFjdGl2ZSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51ID4gbGkgYnV0dG9uI2xhbmd1YWdlLW1lbnUuYWN0aXZlLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaSBidXR0b24jbGFuZ3VhZ2UtbWVudS5hY3RpdmUsIC5zaXRlLWhlYWRlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSA+IGxpIGJ1dHRvbiNsYW5ndWFnZS1tZW51LmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkgYnV0dG9uI2xhbmd1YWdlLW1lbnUuYWN0aXZlLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgPiBsaSBhI2xhbmd1YWdlLW1lbnUuYWN0aXZlLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaSBhI2xhbmd1YWdlLW1lbnUuYWN0aXZlLCAuc2l0ZS1oZWFkZXIgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLm1lbnUgPiBsaSBhI2xhbmd1YWdlLW1lbnUuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaSBhI2xhbmd1YWdlLW1lbnUuYWN0aXZlLCAuc2l0ZS1oZWFkZXIgLm1lbnUuc2Vjb25kYXJ5ID4gbGkgI2xhbmd1YWdlLW1lbnU6Zm9jdXMsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiA+IGxpICNsYW5ndWFnZS1tZW51OmZvY3VzLCAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciAubWVudS5idXR0b24gPiBsaSAjbGFuZ3VhZ2UtbWVudTpmb2N1cywgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnU6Zm9jdXMsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpICNsYW5ndWFnZS1tZW51OmZvY3VzLCAuc2l0ZS1oZWFkZXIgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLm1lbnUgPiBsaSAjbGFuZ3VhZ2UtbWVudTpmb2N1cywgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnU6Zm9jdXMsIC5zaXRlLWhlYWRlciAubWVudS5zZWNvbmRhcnkgPiBsaSAjbGFuZ3VhZ2UtbWVudTpmb2N1cy13aXRoaW4sIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiA+IGxpICNsYW5ndWFnZS1tZW51OmZvY3VzLXdpdGhpbiwgLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgLm1lbnUuYnV0dG9uID4gbGkgI2xhbmd1YWdlLW1lbnU6Zm9jdXMtd2l0aGluLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgPiBsaSAjbGFuZ3VhZ2UtbWVudTpmb2N1cy13aXRoaW4sIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpICNsYW5ndWFnZS1tZW51OmZvY3VzLXdpdGhpbiwgLnNpdGUtaGVhZGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51ID4gbGkgI2xhbmd1YWdlLW1lbnU6Zm9jdXMtd2l0aGluLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaSAjbGFuZ3VhZ2UtbWVudTpmb2N1cy13aXRoaW4geyBkaXNwbGF5OiBibG9jazsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuc2Vjb25kYXJ5ID4gbGkuZmF1eC1idXR0b24gYSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uID4gbGkuZmF1eC1idXR0b24gYSwgLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgLm1lbnUuYnV0dG9uID4gbGkuZmF1eC1idXR0b24gYSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51ID4gbGkuZmF1eC1idXR0b24gYSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkuZmF1eC1idXR0b24gYSwgLnNpdGUtaGVhZGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51ID4gbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkuZmF1eC1idXR0b24gYSB7IGZvbnQtc2l6ZTogMXJlbTsgbWFyZ2luLWJvdHRvbTogMDsgYm9yZGVyOiAwOyBwYWRkaW5nLWxlZnQ6IDIuNzVyZW07IHBhZGRpbmctcmlnaHQ6IDIuNzVyZW07IH1cblxuLnNpdGUtaGVhZGVyIC5tZW51LnNlY29uZGFyeSA+IGxpLmZhdXgtYnV0dG9uIGE6YWZ0ZXIsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiA+IGxpLmZhdXgtYnV0dG9uIGE6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIC5tZW51LmJ1dHRvbiA+IGxpLmZhdXgtYnV0dG9uIGE6YWZ0ZXIsIC5zaXRlLWhlYWRlciAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEubWVudSA+IGxpLmZhdXgtYnV0dG9uIGE6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpLmZhdXgtYnV0dG9uIGE6YWZ0ZXIsIC5zaXRlLWhlYWRlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSA+IGxpLmZhdXgtYnV0dG9uIGE6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIGEubWVudSA+IGxpLmZhdXgtYnV0dG9uIGE6YWZ0ZXIgeyBjb250ZW50OiBub25lOyB9XG5cbi5zaXRlLWhlYWRlciAubWVudS5zZWNvbmRhcnkgPiBsaS5zZWFyY2gtaXRlbSwgLnNpdGUtaGVhZGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uID4gbGkuc2VhcmNoLWl0ZW0sIC5zaWdudXBfX2Zvcm0gLnNpdGUtaGVhZGVyIC5tZW51LmJ1dHRvbiA+IGxpLnNlYXJjaC1pdGVtLCAuc2l0ZS1oZWFkZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgPiBsaS5zZWFyY2gtaXRlbSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiAuc2l0ZS1oZWFkZXIgYS5tZW51ID4gbGkuc2VhcmNoLWl0ZW0sIC5zaXRlLWhlYWRlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSA+IGxpLnNlYXJjaC1pdGVtLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIC5zaXRlLWhlYWRlciBhLm1lbnUgPiBsaS5zZWFyY2gtaXRlbSB7IGJvcmRlcjogMDsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuaGlkZS1mb3ItbGFyZ2UgeyBib3JkZXItdG9wOiAxcHggc29saWQgIzg2ODY4NjsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuZHJvcGRvd24geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IG1hcmdpbi10b3A6IDEycHg7IG1hcmdpbi1ib3R0b206IDZweDsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuZHJvcGRvd24uaXRlbXMtMiwgLnNpdGUtaGVhZGVyIC5tZW51LmRyb3Bkb3duLml0ZW1zLTMgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IGNvbHVtbi1nYXA6IDQwcHg7IH1cblxuLnNpdGUtaGVhZGVyIC5tZW51LmRyb3Bkb3duLm5hdl9jaGlsZCBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCBhOmFmdGVyLCAuc2l0ZS1oZWFkZXIgLm1lbnUuZHJvcGRvd24ubmF2X2NoaWxkIGxpIGE6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpOyBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTFweDsgd2lkdGg6IDE1cHg7IGhlaWdodDogMTFweDsgdG9wOiAyMHB4OyByaWdodDogLTI1cHg7IG1hcmdpbi10b3A6IDA7IGJvcmRlcjogbm9uZTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuc2l0ZS1oZWFkZXIgLm1lbnUuZHJvcGRvd24ubmF2X2NoaWxkIGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6YWZ0ZXIsIC5zaXRlLWhlYWRlciAubWVudS5kcm9wZG93bi5uYXZfY2hpbGQgbGkgYTphZnRlciB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7IG1hc2stc2l6ZTogMTVweCAxMXB4OyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9IH1cblxuLnNpdGUtaGVhZGVyIC5tZW51LmRyb3Bkb3duLm5hdl9jaGlsZCBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCBhOmhvdmVyLCAuc2l0ZS1oZWFkZXIgLm1lbnUuZHJvcGRvd24ubmF2X2NoaWxkIGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGEuYWN0aXZlLCAuc2l0ZS1oZWFkZXIgLm1lbnUuZHJvcGRvd24ubmF2X2NoaWxkIGxpIGE6aG92ZXIsIC5zaXRlLWhlYWRlciAubWVudS5kcm9wZG93bi5uYXZfY2hpbGQgbGkgYS5hY3RpdmUgeyBjb2xvcjogIzBGNTg5QTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uc2l0ZS1oZWFkZXIgLm1lbnUuZHJvcGRvd24ubmF2X2NoaWxkIGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6aG92ZXI6YWZ0ZXIsIC5zaXRlLWhlYWRlciAubWVudS5kcm9wZG93bi5uYXZfY2hpbGQgbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYS5hY3RpdmU6YWZ0ZXIsIC5zaXRlLWhlYWRlciAubWVudS5kcm9wZG93bi5uYXZfY2hpbGQgbGkgYTpob3ZlcjphZnRlciwgLnNpdGUtaGVhZGVyIC5tZW51LmRyb3Bkb3duLm5hdl9jaGlsZCBsaSBhLmFjdGl2ZTphZnRlciB7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LXllbGxvdy5zdmcpOyBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTFweDsgd2lkdGg6IDE1cHg7IGhlaWdodDogMTFweDsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuc2l0ZS1oZWFkZXIgLm1lbnUuZHJvcGRvd24ubmF2X2NoaWxkIGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6aG92ZXI6YWZ0ZXIsIC5zaXRlLWhlYWRlciAubWVudS5kcm9wZG93bi5uYXZfY2hpbGQgbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYS5hY3RpdmU6YWZ0ZXIsIC5zaXRlLWhlYWRlciAubWVudS5kcm9wZG93bi5uYXZfY2hpbGQgbGkgYTpob3ZlcjphZnRlciwgLnNpdGUtaGVhZGVyIC5tZW51LmRyb3Bkb3duLm5hdl9jaGlsZCBsaSBhLmFjdGl2ZTphZnRlciB7IGJhY2tncm91bmQ6ICNGREM0MDA7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LXllbGxvdy5zdmcpOyBtYXNrLXNpemU6IDE1cHggMTFweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbi5zaXRlLWhlYWRlciAubWVudS5kcm9wZG93bi5uYXZfY2hpbGQgbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5zaXRlLWhlYWRlciAubWVudS5kcm9wZG93bi5uYXZfY2hpbGQgbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyBtYXJnaW46IDBweDsgbGlzdC1zdHlsZTogbm9uZTsgYm9yZGVyOiBub25lOyB9XG5cbi5zaXRlLWhlYWRlciAubWVudS5kcm9wZG93bi5uYXZfY2hpbGQgbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgbGkgYSwgLnNpdGUtaGVhZGVyIC5tZW51LmRyb3Bkb3duLm5hdl9jaGlsZCBsaSAuaXMtZHJvcGRvd24tc3VibWVudSBsaSBhIHsgdGV4dC1hbGlnbjogbGVmdDsgYm9yZGVyOiBub25lOyBwYWRkaW5nOiAxMHB4IDI1cHg7IHRyYW5zaXRpb246IGFsbCAwLjNzOyB9XG5cbi5zaXRlLWhlYWRlciAubWVudS5kcm9wZG93bi5uYXZfY2hpbGQgbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgbGkgYTo6YWZ0ZXIsIC5zaXRlLWhlYWRlciAubWVudS5kcm9wZG93bi5uYXZfY2hpbGQgbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgbGkgYTo6YWZ0ZXIgeyBjb250ZW50OiBub25lOyB9XG5cbi5zaXRlLWhlYWRlciAubWVudS5kcm9wZG93bi5uYXZfY2hpbGQgbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgbGkgYTpob3ZlciwgLnNpdGUtaGVhZGVyIC5tZW51LmRyb3Bkb3duLm5hdl9jaGlsZCBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCAuaXMtZHJvcGRvd24tc3VibWVudSBsaSBhLmFjdGl2ZSwgLnNpdGUtaGVhZGVyIC5tZW51LmRyb3Bkb3duLm5hdl9jaGlsZCBsaSAuaXMtZHJvcGRvd24tc3VibWVudSBsaSBhOmhvdmVyLCAuc2l0ZS1oZWFkZXIgLm1lbnUuZHJvcGRvd24ubmF2X2NoaWxkIGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IGxpIGEuYWN0aXZlIHsgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MzsgY29sb3I6ICNGRkY7IH1cblxuLnNpdGUtaGVhZGVyIC5tZW51LmRyb3Bkb3duLm5hdl9jaGlsZCBsaTpub3QoLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50KSBhOmhvdmVyLCAuc2l0ZS1oZWFkZXIgLm1lbnUuZHJvcGRvd24ubmF2X2NoaWxkIGxpOm5vdCguaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQpIGEuYWN0aXZlIHsgY29sb3I6ICMwRjU4OUE7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYm9yZGVyLWJvdHRvbS1jb2xvcjogI0ZEQzQwMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuc2l0ZS1oZWFkZXIgLm1lbnUgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogcm93OyB3aWR0aDogYXV0bzsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnNpdGUtaGVhZGVyIC5tZW51IGxpIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuXG4vKiogUGFuZWwgJiYgIEZpeGVkIFBvc2l0aW9uIG5hdmlnYXRpb24gKi9cbmJvZHkucGFuZWwtb3BlbiB7IHRyYW5zaXRpb246IGFsbCAxcyBib3VuY2U7IH1cblxuYm9keS5wYW5lbC1vcGVuIC5zaXRlLWhlYWRlciB7IGhlaWdodDogMTg0cHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHsgYm9keS5wYW5lbC1vcGVuIC5zaXRlLWhlYWRlciB7IGhlaWdodDogMTAwJSAhaW1wb3J0YW50OyBtYXgtaGVpZ2h0OiAxMDB2aDsgfVxuICBib2R5LnBhbmVsLW9wZW4gLnNpdGUtaGVhZGVyIC5tZW51IHsgZGlzcGxheTogYmxvY2s7IH1cbiAgYm9keS5wYW5lbC1vcGVuIC5zaXRlLWhlYWRlciAubWVudSBsaSB7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRjRGNEY0OyB9XG4gIGJvZHkucGFuZWwtb3BlbiAuc2l0ZS1oZWFkZXIgLm1lbnUgbGkgYSB7IHRleHQtYWxpZ246IGxlZnQ7IGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgYm9keS5wYW5lbC1vcGVuIC5zaXRlLWhlYWRlciAubWVudSBsaSBhOmhvdmVyLCBib2R5LnBhbmVsLW9wZW4gLnNpdGUtaGVhZGVyIC5tZW51IGxpIGEuYWN0aXZlIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIGJvZHkucGFuZWwtb3BlbiAuc2l0ZS1oZWFkZXIgLm1lbnUgbGk6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgYm9keS5wYW5lbC1vcGVuIC5zaXRlLWhlYWRlciAubWVudSAuZHJvcGRvd24tcGFuZSB1bCB7IHBhZGRpbmctbGVmdDogMDsgcGFkZGluZy1yaWdodDogMDsgfVxuICBib2R5LnBhbmVsLW9wZW4gLnNpdGUtaGVhZGVyIC5tZW51IC5kcm9wZG93bi1wYW5lIHVsIGxpIGEgeyBmb250LXdlaWdodDogNDAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgYm9keS5wYW5lbC1vcGVuICNtZWdhX19tZW51X193cmFwcGVyIHsgcG9zaXRpb246IGZpeGVkOyB0b3A6IDU1cHg7IGxlZnQ6IDA7IHBhZGRpbmc6IDAgMjBweDsgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNTVweCk7IH1cbiAgYm9keS5wYW5lbC1vcGVuICNtZWdhX19tZW51X193cmFwcGVyIC5kcm9wZG93bi1wYW5lIHsgcG9zaXRpb246IHJlbGF0aXZlOyB0b3A6IDEwcHggIWltcG9ydGFudDsgfSB9XG5cbmJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciAubWVudS5zZWNvbmRhcnksIGJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiwgLnNpZ251cF9fZm9ybSBib2R5LnBhbmVsLW9wZW4gI21lZ2FfX21lbnVfX3dyYXBwZXIgLm1lbnUuYnV0dG9uLCBib2R5LnBhbmVsLW9wZW4gI21lZ2FfX21lbnVfX3dyYXBwZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYm9keS5wYW5lbC1vcGVuICNtZWdhX19tZW51X193cmFwcGVyIGEubWVudSwgYm9keS5wYW5lbC1vcGVuICNtZWdhX19tZW51X193cmFwcGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51LCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciBhLm1lbnUgeyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgYm9yZGVyLXRvcDogbm9uZTsgfVxuXG5ib2R5LnBhbmVsLW9wZW4gI21lZ2FfX21lbnVfX3dyYXBwZXIgLm1lbnUuc2Vjb25kYXJ5IGxpLCBib2R5LnBhbmVsLW9wZW4gI21lZ2FfX21lbnVfX3dyYXBwZXIgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24gbGksIC5zaWdudXBfX2Zvcm0gYm9keS5wYW5lbC1vcGVuICNtZWdhX19tZW51X193cmFwcGVyIC5tZW51LmJ1dHRvbiBsaSwgYm9keS5wYW5lbC1vcGVuICNtZWdhX19tZW51X193cmFwcGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51IGxpLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciBhLm1lbnUgbGksIGJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSBsaSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBib2R5LnBhbmVsLW9wZW4gI21lZ2FfX21lbnVfX3dyYXBwZXIgYS5tZW51IGxpIHsgYm9yZGVyLXJpZ2h0OiBub25lOyBib3JkZXItYm90dG9tOiBub25lOyB3aWR0aDogNDAlOyB9XG5cbmJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciAubWVudS5zZWNvbmRhcnkgbGkuZmF1eC1idXR0b24sIGJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiBsaS5mYXV4LWJ1dHRvbiwgLnNpZ251cF9fZm9ybSBib2R5LnBhbmVsLW9wZW4gI21lZ2FfX21lbnVfX3dyYXBwZXIgLm1lbnUuYnV0dG9uIGxpLmZhdXgtYnV0dG9uLCBib2R5LnBhbmVsLW9wZW4gI21lZ2FfX21lbnVfX3dyYXBwZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgbGkuZmF1eC1idXR0b24sIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYm9keS5wYW5lbC1vcGVuICNtZWdhX19tZW51X193cmFwcGVyIGEubWVudSBsaS5mYXV4LWJ1dHRvbiwgYm9keS5wYW5lbC1vcGVuICNtZWdhX19tZW51X193cmFwcGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51IGxpLmZhdXgtYnV0dG9uLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciBhLm1lbnUgbGkuZmF1eC1idXR0b24geyBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogMHB4OyB3aWR0aDogNjAlOyB9XG5cbmJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciAubWVudS5zZWNvbmRhcnkgbGkuZmF1eC1idXR0b24gYSwgYm9keS5wYW5lbC1vcGVuICNtZWdhX19tZW51X193cmFwcGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uIGxpLmZhdXgtYnV0dG9uIGEsIC5zaWdudXBfX2Zvcm0gYm9keS5wYW5lbC1vcGVuICNtZWdhX19tZW51X193cmFwcGVyIC5tZW51LmJ1dHRvbiBsaS5mYXV4LWJ1dHRvbiBhLCBib2R5LnBhbmVsLW9wZW4gI21lZ2FfX21lbnVfX3dyYXBwZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgbGkuZmF1eC1idXR0b24gYSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBib2R5LnBhbmVsLW9wZW4gI21lZ2FfX21lbnVfX3dyYXBwZXIgYS5tZW51IGxpLmZhdXgtYnV0dG9uIGEsIGJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciBhLm1lbnUgbGkuZmF1eC1idXR0b24gYSB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LnBhbmVsLW9wZW4gI21lZ2FfX21lbnVfX3dyYXBwZXIgLm1lbnUuc2Vjb25kYXJ5IGxpLmxhbmd1YWdlcyA+IGEsIGJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiBsaS5sYW5ndWFnZXMgPiBhLCAuc2lnbnVwX19mb3JtIGJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciAubWVudS5idXR0b24gbGkubGFuZ3VhZ2VzID4gYSwgYm9keS5wYW5lbC1vcGVuICNtZWdhX19tZW51X193cmFwcGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51IGxpLmxhbmd1YWdlcyA+IGEsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYm9keS5wYW5lbC1vcGVuICNtZWdhX19tZW51X193cmFwcGVyIGEubWVudSBsaS5sYW5ndWFnZXMgPiBhLCBib2R5LnBhbmVsLW9wZW4gI21lZ2FfX21lbnVfX3dyYXBwZXIgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLm1lbnUgbGkubGFuZ3VhZ2VzID4gYSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBib2R5LnBhbmVsLW9wZW4gI21lZ2FfX21lbnVfX3dyYXBwZXIgYS5tZW51IGxpLmxhbmd1YWdlcyA+IGEgeyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZ2xvYmUuc3ZnKSBuby1yZXBlYXQgbGVmdCBjZW50ZXIvY29udGFpbjsgd2lkdGg6IDEwMCU7IGp1c3RpZnktY29udGVudDogbm9ybWFsOyB9XG5cbmJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciAubWVudS5zZWNvbmRhcnkgbGkubGFuZ3VhZ2VzID4gYTphZnRlciwgYm9keS5wYW5lbC1vcGVuICNtZWdhX19tZW51X193cmFwcGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uIGxpLmxhbmd1YWdlcyA+IGE6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYm9keS5wYW5lbC1vcGVuICNtZWdhX19tZW51X193cmFwcGVyIC5tZW51LmJ1dHRvbiBsaS5sYW5ndWFnZXMgPiBhOmFmdGVyLCBib2R5LnBhbmVsLW9wZW4gI21lZ2FfX21lbnVfX3dyYXBwZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgbGkubGFuZ3VhZ2VzID4gYTphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBib2R5LnBhbmVsLW9wZW4gI21lZ2FfX21lbnVfX3dyYXBwZXIgYS5tZW51IGxpLmxhbmd1YWdlcyA+IGE6YWZ0ZXIsIGJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSBsaS5sYW5ndWFnZXMgPiBhOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGJvZHkucGFuZWwtb3BlbiAjbWVnYV9fbWVudV9fd3JhcHBlciBhLm1lbnUgbGkubGFuZ3VhZ2VzID4gYTphZnRlciB7IG1hcmdpbi1sZWZ0OiAyNXB4OyB9XG5cbmJvZHkuZml4ZWQtbWVudSAuc2l0ZS1oZWFkZXItZml4ZWQgeyBwb3NpdGlvbjogZml4ZWQ7IHRvcDogMDsgei1pbmRleDogOTk3OyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOyBoZWlnaHQ6IDU1cHg7IH1cblxuQG1lZGlhIG9ubHkgcHJpbnQgeyBib2R5LmZpeGVkLW1lbnUgLnNpdGUtaGVhZGVyLWZpeGVkIHsgcG9zaXRpb246IHJlbGF0aXZlOyBib3JkZXI6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IGJvZHkuZml4ZWQtbWVudSAuc2l0ZS1oZWFkZXItZml4ZWQgeyBoZWlnaHQ6IDE4NHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgYm9keS5maXhlZC1tZW51IC5zaXRlLWhlYWRlci5jaGlsZF9oZWFkZXIgeyBoZWlnaHQ6IDE3MHB4OyB9IH1cblxuYm9keS5maXhlZC1tZW51IC5zaXRlLWNvbnRlbnQgeyBtYXJnaW4tdG9wOiA1NXB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IGJvZHkuZml4ZWQtbWVudSAuc2l0ZS1jb250ZW50IHsgbWFyZ2luLXRvcDogMTg0cHg7IH0gfVxuXG5AbWVkaWEgb25seSBwcmludCB7IGJvZHkuZml4ZWQtbWVudSAuc2l0ZS1jb250ZW50IHsgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgYm9keS5maXhlZC1tZW51IC5zaXRlLWNvbnRlbnQuY2hpbGRfdGhlbWUgeyBtYXJnaW4tdG9wOiAxNzBweDsgfSB9XG5cbi8qIE1lZ2EgTWVudSAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHsgI21lZ2FfX21lbnVfX3dyYXBwZXIgeyBvdmVyZmxvdy15OiBzY3JvbGw7IH1cbiAgI21lZ2FfX21lbnVfX3dyYXBwZXIgI21lbnUtZXllYnJvdy1saW5rcy0xIHsgcGFkZGluZzogMTVweCAwcHg7IG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgI21lZ2FfX21lbnVfX3dyYXBwZXIgI21lbnUtZXllYnJvdy1saW5rcy0xIGxpIGEgeyBmb250LXdlaWdodDogNDAwOyB9IH1cblxuI21lZ2FfX21lbnVfX3dyYXBwZXIuc2hyaW5rZWRfbWVudSAubWVnYS1tZW51IC5tZWdhX21lbnVfaW5uZXIuZHJvcGRvd24tcGFuZSB7IHRvcDogMTI2cHggIWltcG9ydGFudDsgfVxuXG4jbWVnYV9fbWVudV9fd3JhcHBlciAubWVudS5zZWNvbmRhcnkgLmxhbmd1YWdlcyAjbGFuZ3VhZ2UtbWVudV9tb2IsICNtZWdhX19tZW51X193cmFwcGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uIC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iLCAuc2lnbnVwX19mb3JtICNtZWdhX19tZW51X193cmFwcGVyIC5tZW51LmJ1dHRvbiAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiwgI21lZ2FfX21lbnVfX3dyYXBwZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgLmxhbmd1YWdlcyAjbGFuZ3VhZ2UtbWVudV9tb2IsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gI21lZ2FfX21lbnVfX3dyYXBwZXIgYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iLCAjbWVnYV9fbWVudV9fd3JhcHBlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAjbWVnYV9fbWVudV9fd3JhcHBlciBhLm1lbnUgLmxhbmd1YWdlcyAjbGFuZ3VhZ2UtbWVudV9tb2IgeyBkaXNwbGF5OiBub25lOyBwb3NpdGlvbjogZml4ZWQ7IGhlaWdodDogMTAwJTsgei1pbmRleDogOTk5OyB0b3A6IDA7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBiYWNrZ3JvdW5kOiAjZmZmOyB0ZXh0LWFsaWduOiBsZWZ0OyBwYWRkaW5nOiAyMHB4IDA7IH1cblxuI21lZ2FfX21lbnVfX3dyYXBwZXIgLm1lbnUuc2Vjb25kYXJ5IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIGgzLCAjbWVnYV9fbWVudV9fd3JhcHBlciAuc2lnbnVwX19mb3JtIC5tZW51LmJ1dHRvbiAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiBoMywgLnNpZ251cF9fZm9ybSAjbWVnYV9fbWVudV9fd3JhcHBlciAubWVudS5idXR0b24gLmxhbmd1YWdlcyAjbGFuZ3VhZ2UtbWVudV9tb2IgaDMsICNtZWdhX19tZW51X193cmFwcGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIGgzLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uICNtZWdhX19tZW51X193cmFwcGVyIGEubWVudSAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiBoMywgI21lZ2FfX21lbnVfX3dyYXBwZXIgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLm1lbnUgLmxhbmd1YWdlcyAjbGFuZ3VhZ2UtbWVudV9tb2IgaDMsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gI21lZ2FfX21lbnVfX3dyYXBwZXIgYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIGgzIHsgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNFNEU0RTQ7IHBhZGRpbmctYm90dG9tOiAxMHB4OyBtYXJnaW4tdG9wOiAzMHB4OyB9XG5cbiNtZWdhX19tZW51X193cmFwcGVyIC5tZW51LnNlY29uZGFyeSAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiB1bCwgI21lZ2FfX21lbnVfX3dyYXBwZXIgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24gLmxhbmd1YWdlcyAjbGFuZ3VhZ2UtbWVudV9tb2IgdWwsIC5zaWdudXBfX2Zvcm0gI21lZ2FfX21lbnVfX3dyYXBwZXIgLm1lbnUuYnV0dG9uIC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIHVsLCAjbWVnYV9fbWVudV9fd3JhcHBlciAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEubWVudSAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiB1bCwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiAjbWVnYV9fbWVudV9fd3JhcHBlciBhLm1lbnUgLmxhbmd1YWdlcyAjbGFuZ3VhZ2UtbWVudV9tb2IgdWwsICNtZWdhX19tZW51X193cmFwcGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIHVsLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtICNtZWdhX19tZW51X193cmFwcGVyIGEubWVudSAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiB1bCB7IGZsZXgtd3JhcDogd3JhcDsgbWFyZ2luOiAwIDAgMTBweDsgZGlzcGxheTogZmxleDsgfVxuXG4jbWVnYV9fbWVudV9fd3JhcHBlciAubWVudS5zZWNvbmRhcnkgLmxhbmd1YWdlcyAjbGFuZ3VhZ2UtbWVudV9tb2IgdWwgbGksICNtZWdhX19tZW51X193cmFwcGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uIC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIHVsIGxpLCAuc2lnbnVwX19mb3JtICNtZWdhX19tZW51X193cmFwcGVyIC5tZW51LmJ1dHRvbiAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiB1bCBsaSwgI21lZ2FfX21lbnVfX3dyYXBwZXIgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgLmxhbmd1YWdlcyAjbGFuZ3VhZ2UtbWVudV9tb2IgdWwgbGksIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gI21lZ2FfX21lbnVfX3dyYXBwZXIgYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIHVsIGxpLCAjbWVnYV9fbWVudV9fd3JhcHBlciBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEubWVudSAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiB1bCBsaSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAjbWVnYV9fbWVudV9fd3JhcHBlciBhLm1lbnUgLmxhbmd1YWdlcyAjbGFuZ3VhZ2UtbWVudV9tb2IgdWwgbGkgeyB3aWR0aDogNTAlOyBtYXJnaW4tYm90dG9tOiAyMHB4OyB0ZXh0LWFsaWduOiBsZWZ0OyBmbGV4OiAwIDAgYXV0bzsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbiNtZWdhX19tZW51X193cmFwcGVyIC5tZW51LnNlY29uZGFyeSAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiB1bCBsaSAubGFiZWwsICNtZWdhX19tZW51X193cmFwcGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uIC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIHVsIGxpIC5sYWJlbCwgLnNpZ251cF9fZm9ybSAjbWVnYV9fbWVudV9fd3JhcHBlciAubWVudS5idXR0b24gLmxhbmd1YWdlcyAjbGFuZ3VhZ2UtbWVudV9tb2IgdWwgbGkgLmxhYmVsLCAjbWVnYV9fbWVudV9fd3JhcHBlciAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEubWVudSAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiB1bCBsaSAubGFiZWwsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gI21lZ2FfX21lbnVfX3dyYXBwZXIgYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIHVsIGxpIC5sYWJlbCwgI21lZ2FfX21lbnVfX3dyYXBwZXIgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLm1lbnUgLmxhbmd1YWdlcyAjbGFuZ3VhZ2UtbWVudV9tb2IgdWwgbGkgLmxhYmVsLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtICNtZWdhX19tZW51X193cmFwcGVyIGEubWVudSAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiB1bCBsaSAubGFiZWwgeyBtYXJnaW4tcmlnaHQ6IDE1cHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGJhY2tncm91bmQ6ICNGMEYwRjA7IHdpZHRoOiA0NnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuI21lZ2FfX21lbnVfX3dyYXBwZXIgLm1lbnUuc2Vjb25kYXJ5IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIGEsICNtZWdhX19tZW51X193cmFwcGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uIC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIGEsIC5zaWdudXBfX2Zvcm0gI21lZ2FfX21lbnVfX3dyYXBwZXIgLm1lbnUuYnV0dG9uIC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIGEsICNtZWdhX19tZW51X193cmFwcGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIGEsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gI21lZ2FfX21lbnVfX3dyYXBwZXIgYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIGEsICNtZWdhX19tZW51X193cmFwcGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIGEsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gI21lZ2FfX21lbnVfX3dyYXBwZXIgYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIGEgeyBkaXNwbGF5OiBpbmxpbmU7IHdpZHRoOiBhdXRvOyB9XG5cbiNtZWdhX19tZW51X193cmFwcGVyIC5tZW51LnNlY29uZGFyeSAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiBhW3RhcmdldD1cIl9ibGFua1wiXTphZnRlciwgI21lZ2FfX21lbnVfX3dyYXBwZXIgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24gLmxhbmd1YWdlcyAjbGFuZ3VhZ2UtbWVudV9tb2IgYVt0YXJnZXQ9XCJfYmxhbmtcIl06YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gI21lZ2FfX21lbnVfX3dyYXBwZXIgLm1lbnUuYnV0dG9uIC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIGFbdGFyZ2V0PVwiX2JsYW5rXCJdOmFmdGVyLCAjbWVnYV9fbWVudV9fd3JhcHBlciAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEubWVudSAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiBhW3RhcmdldD1cIl9ibGFua1wiXTphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiAjbWVnYV9fbWVudV9fd3JhcHBlciBhLm1lbnUgLmxhbmd1YWdlcyAjbGFuZ3VhZ2UtbWVudV9tb2IgYVt0YXJnZXQ9XCJfYmxhbmtcIl06YWZ0ZXIsICNtZWdhX19tZW51X193cmFwcGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIGFbdGFyZ2V0PVwiX2JsYW5rXCJdOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtICNtZWdhX19tZW51X193cmFwcGVyIGEubWVudSAubGFuZ3VhZ2VzICNsYW5ndWFnZS1tZW51X21vYiBhW3RhcmdldD1cIl9ibGFua1wiXTphZnRlciB7IGNvbnRlbnQ6ICcnOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiAxMnB4OyBoZWlnaHQ6IDEycHg7IG1hcmdpbi1sZWZ0OiA2cHg7IG1hcmdpbi1yaWdodDogMnB4OyBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pY29ucy9uZXctd2luZG93LWJsdWUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyL2NvbnRhaW47IH1cblxuI21lZ2FfX21lbnVfX3dyYXBwZXIgLm1lbnUuc2Vjb25kYXJ5IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIC5sYW5ndWFnZV9tb2JpbGVfYXJyb3csICNtZWdhX19tZW51X193cmFwcGVyIC5zaWdudXBfX2Zvcm0gLm1lbnUuYnV0dG9uIC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIC5sYW5ndWFnZV9tb2JpbGVfYXJyb3csIC5zaWdudXBfX2Zvcm0gI21lZ2FfX21lbnVfX3dyYXBwZXIgLm1lbnUuYnV0dG9uIC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIC5sYW5ndWFnZV9tb2JpbGVfYXJyb3csICNtZWdhX19tZW51X193cmFwcGVyIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIC5sYW5ndWFnZV9tb2JpbGVfYXJyb3csIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gI21lZ2FfX21lbnVfX3dyYXBwZXIgYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIC5sYW5ndWFnZV9tb2JpbGVfYXJyb3csICNtZWdhX19tZW51X193cmFwcGVyIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIC5sYW5ndWFnZV9tb2JpbGVfYXJyb3csIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gI21lZ2FfX21lbnVfX3dyYXBwZXIgYS5tZW51IC5sYW5ndWFnZXMgI2xhbmd1YWdlLW1lbnVfbW9iIC5sYW5ndWFnZV9tb2JpbGVfYXJyb3cgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNjVweDsgcmlnaHQ6IDM1cHg7IH1cblxuLm1lZ2EtbWVudSAubWVnYV9tZW51X2lubmVyLmRyb3Bkb3duLXBhbmUgeyB3aWR0aDogMTAwJTsgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDsgdG9wOiAxODRweCAhaW1wb3J0YW50OyBsZWZ0OiAwICFpbXBvcnRhbnQ7IHJpZ2h0OiAwICFpbXBvcnRhbnQ7IHBvc2l0aW9uOiBmaXhlZDsgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4ubWVnYS1tZW51IC5tZWdhX21lbnVfaW5uZXIuZHJvcGRvd24tcGFuZSAuZ3JpZC1jb250YWluZXIgeyB3aWR0aDogMTAwJTsgfVxuXG4ubWVnYS1tZW51IC5tZWdhX21lbnVfaW5uZXIuZHJvcGRvd24tcGFuZSBsaSB7IHBhZGRpbmc6IDBweDsgfVxuXG4ubWVnYS1tZW51IC5tZWdhX21lbnVfaW5uZXIuZHJvcGRvd24tcGFuZSBsaSBhIHsgYm9yZGVyLWJvdHRvbTogbm9uZTsgdGV4dC11bmRlcmxpbmUtcG9zaXRpb246IGF1dG87IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLm1lZ2EtbWVudSAubWVnYV9tZW51X2lubmVyLmRyb3Bkb3duLXBhbmUgbGkgYSB7IHBhZGRpbmc6IDVweCAxMHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG4ubWVnYS1tZW51IC5tZWdhX21lbnVfaW5uZXIuZHJvcGRvd24tcGFuZSBsaSBhOmhvdmVyLCAubWVnYS1tZW51IC5tZWdhX21lbnVfaW5uZXIuZHJvcGRvd24tcGFuZSBsaSBhLmFjdGl2ZSB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5tZWdhLW1lbnUgLm1lbnUgeyBiYWNrZ3JvdW5kOiBub25lOyB9XG5cbi5tZWdhLW1lbnUgLm1lbnUudmVydGljYWwgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5tZWdhLW1lbnUgLm1lbnUudmVydGljYWwgbGkgeyBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi5tZWdhLW1lbnUgLm1lbnUudmVydGljYWwgbGk6OmJlZm9yZSB7IGNvbnRlbnQ6IG5vbmU7IH1cblxuLm1lZ2EtbWVudSAubWVnYS0tcGFkZGluZyB7IHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG5cbi5tZWdhLW1lbnUgLm1lbnUtc3RyZXRjaCB7IG1hcmdpbi1sZWZ0OiAtMjBweDsgbWFyZ2luLXJpZ2h0OiAtMjBweDsgfVxuXG4ubWVnYS1tZW51IC5iYW5uZXItbGluayB7IGJvcmRlcjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5tZWdhLW1lbnUgLnNlY3Rpb24tLWhvbWUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyBtYXJnaW4tYm90dG9tOiAyMHB4OyBwYWRkaW5nOiAxMHB4IDA7IH1cblxuLm1lZ2EtbWVudSAuc2VjdGlvbi0taG9tZSBhIHsgZm9udC1zaXplOiAxcmVtOyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ubWVnYS1tZW51IC5ib3JkZXItLXJpZ2h0IHsgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2U0ZTVlOTsgYm9yZGVyLXJpZ2h0OiBub25lOyB9XG5cbi5tZWdhLW1lbnUgLnNpZGUtLXBhbmVsIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAubWVnYS1tZW51IC5zaWRlLS1wYW5lbCB7IHBhZGRpbmctcmlnaHQ6IDIwcHg7IH0gfVxuXG4ubWVnYS1tZW51IC5zaWRlLS1wYW5lbCBzcGFuIHsgZGlzcGxheTogYmxvY2s7IGNvbG9yOiAjRkZGOyB9XG5cbi5tZWdhLW1lbnUgLnNpZGUtLXBhbmVsIGEgeyBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG5cbi5tZWdhLW1lbnUgLnNpZGUtLXBhbmVsIC5tZW51X2N0YV9ibG9jayB7IGZsZXg6IDEgMCBhdXRvOyBiYWNrZ3JvdW5kLWNvbG9yOiAjMEY1ODlBOyBwYWRkaW5nOiAyMnB4OyB9XG5cbi5tZWdhLW1lbnUgLnNpZGUtLXBhbmVsIC5tZW51X2N0YV9ibG9jayBhIHsgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IGNvbG9yOiAjRkZGICFpbXBvcnRhbnQ7IGJvcmRlci1ib3R0b20tY29sb3I6ICNGREM0MDAgIWltcG9ydGFudDsgfVxuXG4ubWVnYS1tZW51IC5zaWRlLS1wYW5lbCAubWVudV9jdGFfYmxvY2sgYTpob3ZlciwgLm1lZ2EtbWVudSAuc2lkZS0tcGFuZWwgLm1lbnVfY3RhX2Jsb2NrIGEuYWN0aXZlIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5tZWdhLW1lbnUgLnNpZGUtLXBhbmVsIC5tZW51X2N0YV9ibG9jayAubW9iaWxlX2Jhbm5lciB7IG1hcmdpbi10b3A6IDQwcHg7IH1cblxuLm1lZ2EtbWVudSAuY29sIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW46IDA7IHdpZHRoOiAxMDAlOyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5tZWdhLW1lbnUgLmNvbCB7IHdpZHRoOiAzMyU7IH0gfVxuXG4ubWVnYS1tZW51IC5jb2wgdWwgeyBwYWRkaW5nLWxlZnQ6IDEwcHg7IHBhZGRpbmctcmlnaHQ6IDEwcHg7IHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG5cbi5tZWdhLW1lbnUgLmNvbCB1bCBsaSBhIHsgcGFkZGluZzogNXB4IDEwcHggNXB4IDEwcHg7IGZvbnQtc2l6ZTogMXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAubWVnYS1tZW51IC5jb2wgLm1lbnUtLXRpdGxlIHsgcGFkZGluZzogMCAyMHB4IDAgMjBweDsgfSB9XG5cbi5tZWdhLW1lbnUgLmNvbCAubWVudS0tdGl0bGUgYSwgLm1lZ2EtbWVudSAuY29sIC5tZW51LS10aXRsZSBoNiwgLm1lZ2EtbWVudSAuY29sIC5tZW51LS10aXRsZSAudXBkYXRlZCAuZGF0ZSwgLnVwZGF0ZWQgLm1lZ2EtbWVudSAuY29sIC5tZW51LS10aXRsZSAuZGF0ZSB7IGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ubWVnYS1tZW51IC5jb2wgLm1lbnUtLXRpdGxlIGhyIHsgaGVpZ2h0OiAxcHg7IG1hcmdpbi10b3A6IDEwcHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgLm1lZ2EtbWVudSAuY29sIC5tZW51LS10aXRsZSBociB7IG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4ubWVnYS1tZW51IC5tZW51LS1jdGEgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDEwMCU7IH1cblxuLm1lZ2EtbWVudSAubWVudS0tY3RhIC5tZW51LS1iYW5uZXIgeyB3aWR0aDogMTAwJTsgcGFkZGluZzogMjBweDsgfVxuXG4uc2hyaW5rLS1oaWRlIHsgaGVpZ2h0OiBhdXRvOyBvcGFjaXR5OiAxOyB0cmFuc2l0aW9uOiBoZWlnaHQgMG1zIDBtcywgb3BhY2l0eSA2MDBtcyAwbXM7IH1cblxuI3NpdGUtaGVhZGVyLm1lbnVfX3NtYWxsIHsgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICMwRjU4OUE7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgI3NpdGUtaGVhZGVyLm1lbnVfX3NtYWxsIHsgaGVpZ2h0OiBhdXRvOyBtaW4taGVpZ2h0OiAxMzBweDsgfSB9XG5cbiNzaXRlLWhlYWRlci5tZW51X19zbWFsbCAuc2hyaW5rLS1oaWRlIHsgb3BhY2l0eTogMDsgaGVpZ2h0OiAwOyB0cmFuc2l0aW9uOiBoZWlnaHQgMG1zIDEwMG1zLCBvcGFjaXR5IDEwMG1zIDBtczsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAjc2l0ZS1oZWFkZXIubWVudV9fc21hbGwgLmljb24uaWNvbi1zbWFsbCB7IG9wYWNpdHk6IDE7IHZpc2liaWxpdHk6IHZpc2libGU7IHBvaW50ZXItZXZlbnRzOiBhbGw7IHdpZHRoOiA3MHB4OyBoZWlnaHQ6IDcwcHg7IH0gfVxuXG4jc2l0ZS1oZWFkZXIubWVudV9fc21hbGwgI2xhbmd1YWdlLW1lbnUgeyB0b3A6IDEyNnB4OyB9XG5cbiNzaXRlLWhlYWRlci5tZW51X19zbWFsbCAubWVudSBsaSBhLnNlYXJjaC0tbGluayB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgaGVpZ2h0OiAxOHB4OyBvcGFjaXR5OiAxOyB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIDBtczsgcmlnaHQ6IDA7IH1cblxuI3NpdGUtaGVhZGVyLm1lbnVfX3NtYWxsIC5tZW51LmRyb3Bkb3duIHsgZmxvYXQ6IHJpZ2h0OyB3aWR0aDogOTAlOyB9XG5cbiNzaXRlLWhlYWRlci5tZW51X19zbWFsbCAubWVudS5zZWNvbmRhcnkgPiBsaTpsYXN0LWNoaWxkLCAjc2l0ZS1oZWFkZXIubWVudV9fc21hbGwgLnNpZ251cF9fZm9ybSAubWVudS5idXR0b24gPiBsaTpsYXN0LWNoaWxkLCAuc2lnbnVwX19mb3JtICNzaXRlLWhlYWRlci5tZW51X19zbWFsbCAubWVudS5idXR0b24gPiBsaTpsYXN0LWNoaWxkLCAjc2l0ZS1oZWFkZXIubWVudV9fc21hbGwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLm1lbnUgPiBsaTpsYXN0LWNoaWxkLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uICNzaXRlLWhlYWRlci5tZW51X19zbWFsbCBhLm1lbnUgPiBsaTpsYXN0LWNoaWxkLCAjc2l0ZS1oZWFkZXIubWVudV9fc21hbGwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLm1lbnUgPiBsaTpsYXN0LWNoaWxkLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtICNzaXRlLWhlYWRlci5tZW51X19zbWFsbCBhLm1lbnUgPiBsaTpsYXN0LWNoaWxkIHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiA0MHB4OyBwYWRkaW5nOiAwOyB9XG5cbi5kcm9wZG93bi1wYW5lLmN1c3RvbSB7IHBhZGRpbmc6IDA7IHRleHQtYWxpZ246IGxlZnQ7IGJvcmRlcjogMDsgfVxuXG4uaGVhZGVyLXNwYWNlciB7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDgwcHg7IGRpc3BsYXk6IGdyaWQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmhlYWRlci1zcGFjZXIgeyBoZWlnaHQ6IDIwMHB4OyB9IH1cblxuLmJnRmlsdGVyIHsgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2Mzsgb3BhY2l0eTogMDsgd2lkdGg6IDEwMHZ3OyBoZWlnaHQ6IDEwMHZoOyB6LWluZGV4OiA5OTY7IH1cblxuLmhlYWRlcjRfdjIgLmhlYWRlcjRfdjJfdHJhZmZpY0xpZ2h0IHsgbWFyZ2luOiAycmVtIDAgMS41cmVtIDA7IH1cblxuLmhlYWRlcjRfdjIgLmhlYWRlcjRfdjJfdHJhZmZpY0xpZ2h0IC50cmFmZmljTGlnaHRfZ3JlZW4geyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBwYWRkaW5nOiAuODVlbSAyLjNlbTsgYmFja2dyb3VuZC1jb2xvcjogI0NDRTBEMDsgd2lkdGg6IGZpdC1jb250ZW50OyB9XG5cbi5oZWFkZXI0X3YyIC5oZWFkZXI0X3YyX3RyYWZmaWNMaWdodCAudHJhZmZpY0xpZ2h0X3JlZCB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IHBhZGRpbmc6IC44NWVtIDIuM2VtOyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkFFN0VDOyB3aWR0aDogZml0LWNvbnRlbnQ7IH1cblxuLyoqIEZPT1RFUiAgKi9cbi5zaXRlLWZvb3RlciB7IGNvbG9yOiAjRkZGOyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQzMjYzOyBwYWRkaW5nOiA4MHB4IDAgMjBweCAwOyB9XG5cbi5zaXRlLWZvb3RlciBoNiwgLnNpdGUtZm9vdGVyIC51cGRhdGVkIC5kYXRlLCAudXBkYXRlZCAuc2l0ZS1mb290ZXIgLmRhdGUgeyBjb2xvcjogI0ZGRjsgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4uc2l0ZS1mb290ZXIgYTpub3QoLmJ1dHRvbikgeyBjb2xvcjogI0ZGRjsgdGV4dC11bmRlcmxpbmUtcG9zaXRpb246IGF1dG87IH1cblxuLnNpdGUtZm9vdGVyIC5idXR0b24sIC5zaXRlLWZvb3RlciBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuc2l0ZS1mb290ZXIgYSB7IHdpZHRoOiAxMDAlOyBtYXJnaW4tdG9wOiAyMHB4OyB9XG5cbi5zaXRlLWZvb3RlciAuY2VsbC5hdXRvIHsgbWFyZ2luLWxlZnQ6IGF1dG87IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgLnNpdGUtZm9vdGVyIC5jZWxsLmF1dG8geyB3aWR0aDogMTAwJTsgfSB9XG5cbi5zaXRlLWZvb3RlciB1bCB7IGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5zaXRlLWZvb3RlciB1bC5mb290ZXItLWxpbmtzIHsgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG5cbi5zaXRlLWZvb3RlciB1bC5mb290ZXItLWxpbmtzIGxpIGEgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHBhZGRpbmctcmlnaHQ6IDMwcHg7IH1cblxuLnNpdGUtZm9vdGVyIHVsLmZvb3Rlci0tbGlua3MgbGkgYVt0YXJnZXQ9XCJfYmxhbmtcIl06YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZXh0ZXJuYWwtbGluay1pY29uLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIvY29udGFpbjsgd2lkdGg6IDMwcHg7IGhlaWdodDogMTFweDsgbWFyZ2luLXJpZ2h0OiAtMzBweDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5zaXRlLWZvb3RlciB1bC50ZXJtcy1saXN0IHsgd2lkdGg6IDEwMCU7IGJvcmRlci10b3A6IDJweCBzb2xpZCAjMEY1ODlBOyBib3JkZXItdG9wOiAycHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpOyBtYXJnaW4tdG9wOiA0MHB4OyBwYWRkaW5nLXRvcDogMjBweDsgfVxuXG4uc2l0ZS1mb290ZXIgdWwudGVybXMtbGlzdCBsaSB7IGZsb2F0OiBsZWZ0OyBtYXJnaW4tcmlnaHQ6IDEwcHg7IHBhZGRpbmctYm90dG9tOiA1cHg7IH1cblxuLnNpdGUtZm9vdGVyIHVsLnRlcm1zLWxpc3QgbGkgYSB7IGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNGRkY7IHBhZGRpbmctcmlnaHQ6IDEwcHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uc2l0ZS1mb290ZXIgdWwudGVybXMtbGlzdCBsaSBhOmhvdmVyLCAuc2l0ZS1mb290ZXIgdWwudGVybXMtbGlzdCBsaSBhLmFjdGl2ZSB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5zaXRlLWZvb3RlciB1bC50ZXJtcy1saXN0IGxpIGEubGFzdCB7IGJvcmRlci1yaWdodDogbm9uZTsgfVxuXG4uc2l0ZS1mb290ZXIgdWwudGVybXMtbGlzdCBsaSBhOmxhc3QtY2hpbGQgYSB7IGJvcmRlci1yaWdodDogbm9uZTsgfVxuXG4uc2l0ZS1mb290ZXIgdWwudGVybXMtbGlzdCBsaTpsYXN0LWNoaWxkIGEgeyBib3JkZXItcmlnaHQ6IG5vbmU7IH1cblxuLnNpdGUtZm9vdGVyIHVsLnNvY2lhbCB7IGRpc3BsYXk6IGZsZXg7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IG1hcmdpbi10b3A6IDIwcHg7IG1hcmdpbi1sZWZ0OiAwcHg7IH1cblxuLnNpdGUtZm9vdGVyIHVsLnNvY2lhbCBsaSB7IHdpZHRoOiAyNSU7IG1heC13aWR0aDogNjBweDsgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cblxuLnNpdGUtZm9vdGVyIHVsLnNvY2lhbCBsaSBhIGkgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgY29sb3I6ICMwNDMyNjM7IGJhY2tncm91bmQ6ICNGRkY7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDA7IHBhZGRpbmctYm90dG9tOiAxMDAlOyBib3JkZXItcmFkaXVzOiA1MCU7IG1hcmdpbjogMDsgdHJhbnNpdGlvbjogYWxsIDAuMjVzOyB9XG5cbi5zaXRlLWZvb3RlciB1bC5zb2NpYWwgbGkgYSBpOmJlZm9yZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1MCU7IGxlZnQ6IDUwJTsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IGZvbnQtc2l6ZTogMS41cmVtOyB9XG5cbi5zaXRlLWZvb3RlciB1bC5zb2NpYWwgbGkgYTpob3ZlciBpLCAuc2l0ZS1mb290ZXIgdWwuc29jaWFsIGxpIGEuYWN0aXZlIGkgeyBiYWNrZ3JvdW5kOiAjRkRDNDAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5zaXRlLWZvb3RlciB1bC5zb2NpYWwgbGkgeyBtYXJnaW4tbGVmdDogMTVweDsgfSB9XG5cbi5zaXRlLWZvb3RlciB1bC5zb2NpYWwgbGk6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tbGVmdDogMHB4OyB9XG5cbi5zaXRlLWZvb3RlciAubWljcm9zaXRlLWxvZ28geyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnNpdGUtZm9vdGVyIC5mb290ZXJfX2xvZ28geyBkaXNwbGF5OiBmbGV4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5zaXRlLWZvb3RlciAuZm9vdGVyX19sb2dvIHsgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG5cbi5zaXRlLWZvb3RlciAuZm9vdGVyX19sb2dvIGEuaWNvbjpmaXJzdC1jaGlsZCB7IG1hcmdpbi1yaWdodDogMjBweDsgcGFkZGluZy1yaWdodDogMjBweDsgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2ZmZjsgfVxuXG4uc2l0ZS1mb290ZXIgLmljb24geyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbjogMDsgbWF4LXdpZHRoOiAxMDAlOyB3aWR0aDogMjI5cHg7IGhlaWdodDogNTNweDsgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXG4uc2l0ZS1mb290ZXIgLmljb24gaW1nIHsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgbGVmdDsgb2JqZWN0LWZpdDogY29udGFpbjsgfVxuXG4uc2l0ZS1mb290ZXIgLmljb24gc3BhbiB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogLTk5OTk5cHg7IH1cblxuLnNpdGUtZm9vdGVyIC5ib3JkZXItY29sIHsgcGFkZGluZy10b3A6IDIwcHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLnNpdGUtZm9vdGVyIC5ib3JkZXItY29sIHsgcGFkZGluZy10b3A6IGluaXRpYWw7IHBhZGRpbmctbGVmdDogMDsgYm9yZGVyLXRvcDogMDsgfSB9XG5cbi5zaXRlLWZvb3RlciAuYm9yZGVyLWNvbCBzcGFuIHsgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG4uc2l0ZS1mb290ZXIgLnNlYXJjaF9fd3JhcHBlciB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuc2l0ZS1mb290ZXIgLnNlYXJjaF9fd3JhcHBlciB7IG1hcmdpbi1ib3R0b206IGF1dG87IH0gfVxuXG4uc2l0ZS1mb290ZXIgLnNlYXJjaF9fd3JhcHBlciBpbnB1dFt0eXBlPVwidGV4dFwiXSB7IHBhZGRpbmc6IDI0cHggMjBweDsgd2lkdGg6IDEwMCU7IGJvcmRlci1yYWRpdXM6IDI1cHg7IGJhY2tncm91bmQtY29sb3I6ICNGRkY7IH1cblxuLnNpdGUtZm9vdGVyIC5zZWFyY2hfX3dyYXBwZXIgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMgeyBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLnNpdGUtZm9vdGVyIC5zZWFyY2hfX3dyYXBwZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7IHJpZ2h0OiAxMHB4OyB9IH1cblxuLmRpc2NsYWltZXJfZm9vdGVyIHsgcGFkZGluZzogMjBweCAwcHg7IH1cblxuLmRpc2NsYWltZXJfZm9vdGVyIC5kaXNjbGFpbWVyX2NvbnRlbnQgcCB7IGZvbnQtc2l6ZTogMTJweDsgY29sb3I6ICM3MDcwNzA7IG1hcmdpbjogMHB4OyB9XG5cbi5kaXNjbGFpbWVyX2Zvb3RlciAuZGlzY2xhaW1lcl9pbWdzIHsgYm9yZGVyLXJhZGl1czogMDsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLmRpc2NsYWltZXJfZm9vdGVyIC5kaXNjbGFpbWVyX2ltZ3MgaW1nLmRpc2NsYWltZXJfaW1nIHsgbWFyZ2luLXRvcDogMjBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZGlzY2xhaW1lcl9mb290ZXIgLmRpc2NsYWltZXJfaW1ncyBpbWcuZGlzY2xhaW1lcl9pbWcgeyBtYXJnaW4tdG9wOiAwcHg7IG1hcmdpbi1sZWZ0OiAzMHB4OyB9IH1cblxuYm9keS5taWNyb3NpdGUgLnNpdGUtZm9vdGVyIHsgcGFkZGluZzogMzRweCAwIDM0cHg7IH1cblxuLmhlYWRpbmcgeyBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IHJlbGF0aXZlOyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5oZWFkaW5nIGgxLCAuaGVhZGluZyBoMiwgLmhlYWRpbmcgaDMsIC5oZWFkaW5nIGg0LCAuaGVhZGluZyBoNSwgLmhlYWRpbmcgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmhlYWRpbmcgcCwgLmhlYWRpbmcgaDYsIC5oZWFkaW5nIC51cGRhdGVkIC5kYXRlLCAudXBkYXRlZCAuaGVhZGluZyAuZGF0ZSwgLmhlYWRpbmcgc3BhbiwgLmhlYWRpbmcgYSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uaGVhZGluZyBoMiB7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLmhlYWRpbmcgaHIgeyBtYXJnaW4tdG9wOiAwOyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5oZWFkaW5nIHAgeyBjb2xvcjogIzA0MzI2MzsgfVxuXG4uaGVhZGluZyAuaGVhZGluZy0tdGFnIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLmhlYWRpbmcgLnRleHQtcmlnaHQgeyB0ZXh0LWFsaWduOiB1bnNldDsgbWFyZ2luLXRvcDogMTBweDsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuaGVhZGluZyAudGV4dC1yaWdodCB7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH0gfVxuXG5hcnRpY2xlIC5oZWFkaW5nIHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG5ociB7IGJvcmRlcjogbm9uZTsgaGVpZ2h0OiAycHg7IGJhY2tncm91bmQ6ICNFNEU0RTQ7IG1hcmdpbi10b3A6IDMwcHg7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLm92ZXJsYXBfX21hcmdpbiB7IG1hcmdpbi10b3A6IDMwcHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLm92ZXJsYXBfX21hcmdpbiB7IG1hcmdpbi10b3A6IC03MnB4OyB9IH1cblxuLm92ZXJsYXBfX21hcmdpbiAudGV4dF9fd3JhcHBlciB7IGJhY2tncm91bmQtY29sb3I6ICNGRkY7IH1cblxuLm92ZXJsYXBfX21hcmdpbiAudGV4dF9fd3JhcHBlciBoNSwgLm92ZXJsYXBfX21hcmdpbiAudGV4dF9fd3JhcHBlciBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAub3ZlcmxhcF9fbWFyZ2luIC50ZXh0X193cmFwcGVyIHAgeyBmb250LXNpemU6IDEuMzc1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5maWx0ZXJfb3B0aW9ucyB7IGRpc3BsYXk6IGZsZXg7IH0gfVxuXG4uZmlsdGVyX29wdGlvbnMgc2VsZWN0LCAuZmlsdGVyX29wdGlvbnMgaW5wdXQgeyBkaXNwbGF5OiBibG9jazsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZmlsdGVyX29wdGlvbnMgc2VsZWN0LCAuZmlsdGVyX29wdGlvbnMgaW5wdXQgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZsZXgtZ3JvdzogMTsgfSB9XG5cbi5maWx0ZXJfb3B0aW9ucyBzZWxlY3QsIC5maWx0ZXJfb3B0aW9ucyBpbnB1dCB7IHdpZHRoOiAxMDAlOyBtYXgtd2lkdGg6IDEwMCU7IGhlaWdodDogNDVweDsgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5maWx0ZXJfb3B0aW9ucyBzZWxlY3QsIC5maWx0ZXJfb3B0aW9ucyBpbnB1dCB7IHdpZHRoOiBhdXRvOyBtYXgtd2lkdGg6IDIwMHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmZpbHRlcl9vcHRpb25zIGlucHV0W3R5cGU9c3VibWl0XSB7IHdpZHRoOiAxMDAlOyBtYXgtd2lkdGg6IDI2MHB4OyBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4uZ3JleV9vdXRlcl93cmFwIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNCAhaW1wb3J0YW50OyB9XG5cbi51cGRhdGVkIHNwYW4geyBmb250LXNpemU6IDAuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnVwZGF0ZWQgLmRhdGUgeyBjb2xvcjogI0IxQjFCMTsgfVxuXG4udGFncyB7IGZvbnQtc2l6ZTogMC44NzVyZW07IGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfNTUgUm9tYW4xNDc1NTIwXCI7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiAjMDQzMjYzOyB9XG5cbi8qKiBCcmVhZGNydW1iICovXG4uYnJlYWRjcnVtYi13cmFwIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgfVxuXG4uYnJlYWRjcnVtYiAuYnJlYWRjcnVtYi0tbmF2aWdhdGlvbiB7IG92ZXJmbG93OiBoaWRkZW47IGxpc3Qtc3R5bGU6IG5vbmU7IG1hcmdpbjogMTVweCAwIDE1cHg7IGNvbG9yOiAjMDQzMjYzOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5icmVhZGNydW1iIC5icmVhZGNydW1iLS1uYXZpZ2F0aW9uIHsgbWFyZ2luLWxlZnQ6IDBweDsgfSB9XG5cbi5icmVhZGNydW1iIC5icmVhZGNydW1iLS1uYXZpZ2F0aW9uIGxpIGEgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uYnJlYWRjcnVtYiAuYnJlYWRjcnVtYi0tbmF2aWdhdGlvbiBsaSBhLmFjdGl2ZSwgLmJyZWFkY3J1bWIgLmJyZWFkY3J1bWItLW5hdmlnYXRpb24gbGkgYTpob3ZlciwgLmJyZWFkY3J1bWIgLmJyZWFkY3J1bWItLW5hdmlnYXRpb24gbGkgYS5hY3RpdmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuQG1lZGlhIG9ubHkgcHJpbnQgeyAuYnJlYWRjcnVtYiB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBvbmx5IHByaW50IHsgI2JyZWFkY3J1bWJzIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmhvbWUgcCNicmVhZGNydW1icyB7IGRpc3BsYXk6IG5vbmU7IH1cblxuI3NlYXJjaF9fd3JhcHBlciB7IHBvc2l0aW9uOiBmaXhlZDsgdG9wOiAtMTAwJTsgbGVmdDogMDsgcmlnaHQ6IDA7IG9wYWNpdHk6IDA7IHotaW5kZXg6IDk5OCAhaW1wb3J0YW50OyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyB9XG5cbiNzZWFyY2hfX3dyYXBwZXIuc2hvdyB7IG9wYWNpdHk6IDE7IHRvcDogMDsgfVxuXG4jc2VhcmNoX193cmFwcGVyLnNob3cgI3NlYXJjaC1jbG9zZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbiNzZWFyY2hfX3dyYXBwZXIgLmljb24geyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbi10b3A6IDlweDsgd2lkdGg6IDMxcHg7IGhlaWdodDogMzFweDsgfVxuXG4jc2VhcmNoX193cmFwcGVyIC5pY29uIHNwYW4geyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IC05OTk5OXB4OyB9XG5cbiNzZWFyY2hfX3dyYXBwZXIgLmljb24uaWNvbi1zbWFsbCB7IGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQ7IGJhY2tncm91bmQtc2l6ZTogY29udGFpbjsgZGlzcGxheTogbm9uZTsgfVxuXG4jc2VhcmNoX193cmFwcGVyICNzZWFyY2gtY2xvc2UgeyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvY2xvc2UtcG9wdXAuc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlci9jb250YWluOyBoZWlnaHQ6IDE3cHg7IHdpZHRoOiAxN3B4OyB0ZXh0LWluZGVudDogLTk5OTlweDsgcG9zaXRpb246IGZpeGVkOyByaWdodDogMjBweDsgdG9wOiAxOXB4OyBkaXNwbGF5OiBub25lOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7ICNzZWFyY2hfX3dyYXBwZXIgI3NlYXJjaC1jbG9zZSB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9jbG9zZS1wb3B1cC5zdmcpOyBtYXNrLXNpemU6IGNvbnRhaW47IG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7IG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAjc2VhcmNoX193cmFwcGVyICNzZWFyY2gtY2xvc2UgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMzRweDsgcmlnaHQ6IDlweDsgfSB9XG5cbiNzZWFyY2hfX3dyYXBwZXIgZm9ybSB7IG1hcmdpbi10b3A6IDIwcHg7IH1cblxuI3NlYXJjaF9fd3JhcHBlciAuc2VhcmNoLWZvcm0geyBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG5cbiNzZWFyY2hfX3dyYXBwZXIgLmNhcmQgdWwgeyBtYXJnaW4tbGVmdDogdW5zZXQ7IH1cblxuI3NlYXJjaF9fd3JhcHBlciAuY2FyZCB1bCBsaTpiZWZvcmUgeyBjb250ZW50OiB1bnNldDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAjc2VhcmNoX193cmFwcGVyIHsgbWluLWhlaWdodDogMTg0cHg7IH0gfVxuXG4uc2VhcmNoX193cmFwcGVyIGlucHV0W3R5cGU9c3VibWl0XSwgLnNlYXJjaF9fd3JhcHBlciAuc2VhcmNoLWljb24geyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvc2VhcmNoLWljb24uc3ZnKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0IDIwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1MCU7IHJpZ2h0OiAwcHg7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgaGVpZ2h0OiA1MHB4OyB3aWR0aDogMTAwJTsgdGV4dC1pbmRlbnQ6IC05OTk5OXB4OyBjdXJzb3I6IHBvaW50ZXI7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYm9yZGVyOiBub25lOyBvdXRsaW5lOiBub25lOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5zZWFyY2hfX3dyYXBwZXIgaW5wdXRbdHlwZT1zdWJtaXRdLCAuc2VhcmNoX193cmFwcGVyIC5zZWFyY2gtaWNvbiB7IHotaW5kZXg6IDk5NTsgfSB9XG5cbi8qKiBTb2xhY2UgTWljcm9zaXRlICovXG5AZm9udC1mYWNlIHsgLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIHsgZm9udC1mYW1pbHk6IFwiQXZlbmlyTmV4dFwiOyBzcmM6IHVybChcIi4uL2ZvbnRzL3R3by1CaDdzRTAzOC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKTsgZm9udC13ZWlnaHQ6IDEwMDsgZm9udC1zdHlsZTogbm9ybWFsOyB9IH1cblxuQGZvbnQtZmFjZSB7IC5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSB7IGZvbnQtZmFtaWx5OiBcIkF2ZW5pck5leHRcIjsgc3JjOiB1cmwoXCIuLi9mb250cy9vbmUtUG5zOXROUTkud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7IGZvbnQtd2VpZ2h0OiA0MDA7IGZvbnQtc3R5bGU6IG5vcm1hbDsgfSB9XG5cbkBmb250LWZhY2UgeyAuc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgeyBmb250LWZhbWlseTogXCJBdmVuaXJOZXh0XCI7IHNyYzogdXJsKFwiLi4vZm9udHMvdGhyZWUtRGZWZHFfNW8ud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7IGZvbnQtd2VpZ2h0OiA2MDA7IGZvbnQtc3R5bGU6IG5vcm1hbDsgfSB9XG5cbi5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAucGFnZS13aWR0aCB7IG1heC13aWR0aDogdmFyKC0tcGFnZS13aWR0aCk7IG1hcmdpbi1sZWZ0OiBhdXRvOyBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5idXJnZXItbWVudTphZnRlciB7IGNvbnRlbnQ6IG5vbmU7IH1cblxuLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5zaXRlLWhlYWRlciBhIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAuc2l0ZS1oZWFkZXIgYTpob3ZlciwgLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5zaXRlLWhlYWRlciBhLmFjdGl2ZSB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB0cmFuc2l0aW9uOiBub25lOyB9XG5cbi5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAuc2l0ZS1oZWFkZXIgdWwjbWVudS11cHBlciB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5zaXRlLWhlYWRlciB1bCNtZW51LXVwcGVyIGxpIGEgeyBmb250LXNpemU6IDEuMTI1cmVtOyB9XG5cbi5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAuc2l0ZS1oZWFkZXIgdWwjbWVudS11cHBlciBsaSBhOmhvdmVyLCAuc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLnNpdGUtaGVhZGVyIHVsI21lbnUtdXBwZXIgbGkgYS5hY3RpdmUsIC5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAuc2l0ZS1oZWFkZXIgdWwjbWVudS11cHBlciBsaSBhOmZvY3VzIHsgY29sb3I6ICMwOTYyNmY7IH1cblxuLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5zaXRlLWhlYWRlciB1bCNtZW51LW1haW4gbGk6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDk2MjZmOyB9XG5cbi5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAuc2l0ZS1oZWFkZXIgdWwjbWVudS1tYWluIGxpOmhvdmVyIGEgeyBjb2xvcjogI0ZGRjsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAuc2l0ZS1oZWFkZXIgdWwjbWVudS1tYWluIGxpLnNlbGVjdGVkIHsgYmFja2dyb3VuZC1jb2xvcjogIzA5NjI2ZjsgfVxuXG4uc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLnNpdGUtaGVhZGVyIHVsI21lbnUtbWFpbiBsaS5zZWxlY3RlZCBhIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAuc2l0ZS1oZWFkZXIgYnV0dG9uICNsYW5ndWFnZXMgeyBkaXNwbGF5OiBub25lOyBvcGFjaXR5OiAwOyB9XG5cbi5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAuc2l0ZS1oZWFkZXIgYnV0dG9uOmFmdGVyIHsgY29udGVudDogbm9uZTsgfVxuXG4uc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLnNpdGUtaGVhZGVyIGJ1dHRvbjpob3ZlciwgLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5zaXRlLWhlYWRlciBidXR0b24uYWN0aXZlIHsgY29sb3I6ICMwOTYyNmY7IH1cblxuLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5zaXRlLWhlYWRlciAuc2l0ZS1zd2l0Y2hlciBhIHsgZm9udC1zaXplOiAxLjEyNXJlbTsgbGluZS1oZWlnaHQ6IDEuNTc1cmVtOyB9XG5cbi5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAuc2l0ZS1oZWFkZXIgLnNpdGUtc3dpdGNoZXIgYS5hY3RpdmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5zaXRlLWhlYWRlciAuc2l0ZS1zd2l0Y2hlciBhOm5vdCguYWN0aXZlKTpob3ZlciwgLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5zaXRlLWhlYWRlciAuc2l0ZS1zd2l0Y2hlciBhLmFjdGl2ZTpub3QoLmFjdGl2ZSkgeyBjb2xvcjogIzA5NjI2ZjsgdGV4dC11bmRlcmxpbmUtcG9zaXRpb246IGF1dG87IH1cblxuLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5zaXRlLWZvb3RlciB7IHBhZGRpbmc6IDA7IGNvbG9yOiB1bnNldDsgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjsgfVxuXG4uc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLnNpdGUtZm9vdGVyIC5tZW51IHsgZGlzcGxheTogYmxvY2s7IH1cblxuLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5zaXRlLWZvb3RlciAubWVudSBsaSB7IG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG4uc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLnNpdGUtZm9vdGVyIC5tZW51IGxpIGEgeyBwYWRkaW5nOiAwOyBsaW5lLWhlaWdodDogMS41NzVyZW07IH1cblxuLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5zaXRlLWZvb3RlciAuZm9vdGVyLWJvdHRvbSAubGVnYWxNZW51cyAubWVudSB7IGRpc3BsYXk6IGZsZXg7IGdhcDogMS4yNXJlbTsgfVxuXG4uc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLnNpdGUtZm9vdGVyIC5mb290ZXItYm90dG9tIC5sZWdhbE1lbnVzIC5tZW51IGxpIGEgeyBjb2xvcjogYmxhY2sgIWltcG9ydGFudDsgZm9udC1zaXplOiAxLjEyNXJlbTsgbGluZS1oZWlnaHQ6IDEuNTc1cmVtOyB9XG5cbi5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAuc2l0ZS1mb290ZXIgLmZvb3Rlci1ib3R0b20gLmRpc2NsYWltZXItdGV4dCB7IGNvbG9yOiAjMDAwOyB9XG5cbi5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAuc2l0ZS1mb290ZXIgLmZvb3Rlci1ib3R0b20gLnNpdGUtYnJhbmRpbmcgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5iZ0ZpbHRlciB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLnNlYXJjaC1vdmVybGF5LmFjdGl2ZSAucGxhY2Vob2xkZXIgeyBoZWlnaHQ6IDUwcHg7IH1cblxuLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5zZWFyY2gtb3ZlcmxheS5hY3RpdmUgYnV0dG9uI3NlYXJjaENsb3NlIHNwYW4geyBjb2xvcjogIzA5NjI2ZjsgYmFja2dyb3VuZC1jb2xvcjogIzA5NjI2ZjsgfVxuXG4uc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLnNlYXJjaC1vdmVybGF5LmFjdGl2ZSBidXR0b24jc2VhcmNoQ2xvc2U6YWZ0ZXIgeyBjb250ZW50OiBub25lOyB9XG5cbi5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAjc2VhcmNoZm9ybS5zZWFyY2hfZGVza3RvcCAjc2VhcmNoLWxhbmcgeyBjb2xvcjogI0ZGRiAhaW1wb3J0YW50OyBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlICNzZWFyY2hmb3JtLnNlYXJjaF9kZXNrdG9wICNzZWFyY2gtbGFuZzphZnRlciB7IGNvbnRlbnQ6IG5vbmU7IH1cblxuLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5tb2JpbGUtbWVudS1wYW5lbCBidXR0b24jbGFuZ3VhZ2VzIHsgZGlzcGxheTogbm9uZTsgb3BhY2l0eTogMDsgfVxuXG4uc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLm1vYmlsZS1tZW51LXBhbmVsIGJ1dHRvbi5zZWFyY2gtdG9nZ2xlIHsgcGFkZGluZzogMDsgfVxuXG4uc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLm1vYmlsZS1tZW51LXBhbmVsIGJ1dHRvbi5zZWFyY2gtdG9nZ2xlOmFmdGVyIHsgY29udGVudDogbm9uZTsgfVxuXG4uc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLm1vYmlsZS1tZW51LXBhbmVsIC5tb2JpbGUtbWVudS1wYW5lbF9fbWFpbiBhLCAuc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLm1vYmlsZS1tZW51LXBhbmVsIC5tb2JpbGUtbWVudS1wYW5lbF9fbG93ZXIgYSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLm1vYmlsZS1tZW51LXBhbmVsIC5tb2JpbGUtbWVudS1wYW5lbF9fbWFpbiBhOmhvdmVyLCAuc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLm1vYmlsZS1tZW51LXBhbmVsIC5tb2JpbGUtbWVudS1wYW5lbF9fbWFpbiBhLmFjdGl2ZSwgLnNvbGFjZS1taWNyb3NpdGUubWljcm9zaXRlIC5tb2JpbGUtbWVudS1wYW5lbCAubW9iaWxlLW1lbnUtcGFuZWxfX21haW4gYTphY3RpdmUsIC5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAubW9iaWxlLW1lbnUtcGFuZWwgLm1vYmlsZS1tZW51LXBhbmVsX19sb3dlciBhOmhvdmVyLCAuc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLm1vYmlsZS1tZW51LXBhbmVsIC5tb2JpbGUtbWVudS1wYW5lbF9fbG93ZXIgYS5hY3RpdmUsIC5zb2xhY2UtbWljcm9zaXRlLm1pY3Jvc2l0ZSAubW9iaWxlLW1lbnUtcGFuZWwgLm1vYmlsZS1tZW51LXBhbmVsX19sb3dlciBhOmFjdGl2ZSB7IGNvbG9yOiAjRkZGOyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLm1vYmlsZS1tZW51LXBhbmVsIC5tb2JpbGUtbWVudS1wYW5lbF9fbW9iaWxlIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uc29sYWNlLW1pY3Jvc2l0ZS5taWNyb3NpdGUgLndwbWwtbHMtc3RhdGljcy1mb290ZXIgeyBkaXNwbGF5OiBub25lOyB9XG5cbi8qKiBBUlRJQ0xFICAqL1xuYXJ0aWNsZSB7IHBhZGRpbmctdG9wOiA0MHB4OyBwYWRkaW5nLWJvdHRvbTogNDBweDsgfVxuXG5hcnRpY2xlIC5vdGhlci10cmFuc2xhdGlvbnMgeyB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDsgcGFkZGluZzogNDBweCA1NXB4ICFpbXBvcnRhbnQ7IG1hcmdpbi10b3A6IDQwcHggIWltcG9ydGFudDsgfVxuXG5hcnRpY2xlIC5vdGhlci10cmFuc2xhdGlvbnMgc2VsZWN0IHsgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cblxuYXJ0aWNsZSAuZmFjdHNoZWV0LWNvbnRlbnQgeyBtYXJnaW4tdG9wOiA1NXB4OyB9XG5cbmFydGljbGUgKyAuc2lnbnVwX2Zvcm0geyBtYXJnaW4tdG9wOiAwcHggIWltcG9ydGFudDsgfVxuXG4vKiogVHlwb2dyYXBoeSBwYWdlICovXG4uYXJ0aWNsZV9fcGFnZSAuYXJ0aWNsZV9fdGl0bGUsIC5hcnRpY2xlX19wYWdlIC5idXR0b25fX3RpdGxlLCAuYnV0dG9uX19wYWdlIC5hcnRpY2xlX190aXRsZSwgLmJ1dHRvbl9fcGFnZSAuYnV0dG9uX190aXRsZSB7IG1hcmdpbjogNjBweCAwOyB9XG5cbi5hcnRpY2xlX19wYWdlIC5hcnRpY2xlX190aXRsZSAuYXJ0aWNsZV9fdGl0bGVfYm9yZGVyLCAuYXJ0aWNsZV9fcGFnZSAuYXJ0aWNsZV9fdGl0bGUgLmJ1dHRvbl90aXRsZV9ib3JkZXIsIC5hcnRpY2xlX19wYWdlIC5idXR0b25fX3RpdGxlIC5hcnRpY2xlX190aXRsZV9ib3JkZXIsIC5hcnRpY2xlX19wYWdlIC5idXR0b25fX3RpdGxlIC5idXR0b25fdGl0bGVfYm9yZGVyLCAuYnV0dG9uX19wYWdlIC5hcnRpY2xlX190aXRsZSAuYXJ0aWNsZV9fdGl0bGVfYm9yZGVyLCAuYnV0dG9uX19wYWdlIC5hcnRpY2xlX190aXRsZSAuYnV0dG9uX3RpdGxlX2JvcmRlciwgLmJ1dHRvbl9fcGFnZSAuYnV0dG9uX190aXRsZSAuYXJ0aWNsZV9fdGl0bGVfYm9yZGVyLCAuYnV0dG9uX19wYWdlIC5idXR0b25fX3RpdGxlIC5idXR0b25fdGl0bGVfYm9yZGVyIHsgY29sb3I6ICM4OTg5ODk7IHBhZGRpbmctYm90dG9tOiAyMHB4OyBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzg5ODk4OTsgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXG4uYXJ0aWNsZV9fcGFnZSAuYXJ0aWNsZV9faW5saW5lLCAuYnV0dG9uX19wYWdlIC5hcnRpY2xlX19pbmxpbmUgeyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgbWFyZ2luOiAwOyB9XG5cbi5hcnRpY2xlX19wYWdlIC5hcnRpY2xlX19jb2xvcl9zcGhlcmUsIC5idXR0b25fX3BhZ2UgLmFydGljbGVfX2NvbG9yX3NwaGVyZSB7IGJvcmRlci1yYWRpdXM6IDUwJTsgd2lkdGg6IDQwJTsgaGVpZ2h0OiAwOyBwYWRkaW5nLWJvdHRvbTogNDAlOyBtYXJnaW46IGF1dG87IH1cblxuLmFydGljbGVfX3BhZ2UgLmFydGljbGVfX2NvbG9yX3NwaGVyZS5wcmltYXJ5X29uZSwgLmJ1dHRvbl9fcGFnZSAuYXJ0aWNsZV9fY29sb3Jfc3BoZXJlLnByaW1hcnlfb25lIHsgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MzsgfVxuXG4uYXJ0aWNsZV9fcGFnZSAuYXJ0aWNsZV9fY29sb3Jfc3BoZXJlLnByaW1hcnlfdHdvLCAuYnV0dG9uX19wYWdlIC5hcnRpY2xlX19jb2xvcl9zcGhlcmUucHJpbWFyeV90d28geyBiYWNrZ3JvdW5kLWNvbG9yOiAjMEY1ODlBOyB9XG5cbi5hcnRpY2xlX19wYWdlIC5hcnRpY2xlX19jb2xvcl9zcGhlcmUucHJpbWFyeV90aHJlZSwgLmJ1dHRvbl9fcGFnZSAuYXJ0aWNsZV9fY29sb3Jfc3BoZXJlLnByaW1hcnlfdGhyZWUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMEY1ODlBOyB9XG5cbi5hcnRpY2xlX19wYWdlIC5hcnRpY2xlX19jb2xvcl9zcGhlcmUuc2Vjb25kYXJ5X29uZSwgLmJ1dHRvbl9fcGFnZSAuYXJ0aWNsZV9fY29sb3Jfc3BoZXJlLnNlY29uZGFyeV9vbmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkRDNDAwOyB9XG5cbi5hcnRpY2xlX19wYWdlIC5hcnRpY2xlX19jb2xvcl9oZXhfcHJpbWFyeSwgLmFydGljbGVfX3BhZ2UgLmFydGljbGVfX2NvbG9yX2hleF9zZWNvbmRhcnksIC5idXR0b25fX3BhZ2UgLmFydGljbGVfX2NvbG9yX2hleF9wcmltYXJ5LCAuYnV0dG9uX19wYWdlIC5hcnRpY2xlX19jb2xvcl9oZXhfc2Vjb25kYXJ5IHsgd2lkdGg6IDQwJTsgbWFyZ2luOiAzMHB4IGF1dG87IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uYXJ0aWNsZV9fcGFnZSAuYXJ0aWNsZV9fdGV4dCAuYXJ0aWNsZV9fdGV4dF9sYWJlbCwgLmJ1dHRvbl9fcGFnZSAuYXJ0aWNsZV9fdGV4dCAuYXJ0aWNsZV9fdGV4dF9sYWJlbCB7IGNvbG9yOiAjODk4OTg5OyBtYXJnaW4tdG9wOiA0MHB4OyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5hcnRpY2xlX19wYWdlIC5hcnRpY2xlX190ZXh0IC5hcnRpY2xlX190ZXh0X2NvbG9yLCAuYnV0dG9uX19wYWdlIC5hcnRpY2xlX190ZXh0IC5hcnRpY2xlX190ZXh0X2NvbG9yIHsgd2lkdGg6IDYwcHg7IGhlaWdodDogNjBweDsgYm9yZGVyLXJhZGl1czogNTAlOyBtYXJnaW4tcmlnaHQ6IDIwcHg7IGJvcmRlcjogMXB4IHNvbGlkICNGREM0MDA7IH1cblxuLmFydGljbGVfX3BhZ2UgLmFydGljbGVfX3RleHQgLmFydGljbGVfX3RleHRfY29sb3IudGV4dF9ibGFjaywgLmJ1dHRvbl9fcGFnZSAuYXJ0aWNsZV9fdGV4dCAuYXJ0aWNsZV9fdGV4dF9jb2xvci50ZXh0X2JsYWNrIHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgfVxuXG4uYXJ0aWNsZV9fcGFnZSAuYXJ0aWNsZV9fdGV4dCAuYXJ0aWNsZV9fdGV4dF9jb2xvci50ZXh0X3doaXRlLCAuYnV0dG9uX19wYWdlIC5hcnRpY2xlX190ZXh0IC5hcnRpY2xlX190ZXh0X2NvbG9yLnRleHRfd2hpdGUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOyB9XG5cbi5hcnRpY2xlX19wYWdlIC5hcnRpY2xlX190ZXh0IC5hcnRpY2xlX190ZXh0X2NvbG9yLnRleHRfY29iYWx0LCAuYnV0dG9uX19wYWdlIC5hcnRpY2xlX190ZXh0IC5hcnRpY2xlX190ZXh0X2NvbG9yLnRleHRfY29iYWx0IHsgYmFja2dyb3VuZC1jb2xvcjogIzBGNTg5QTsgfVxuXG4uYXJ0aWNsZV9fcGFnZSAuYXJ0aWNsZV9fdGV4dCAuYXJ0aWNsZV9fdGV4dF9jb2xvci50ZXh0X2dyZXksIC5idXR0b25fX3BhZ2UgLmFydGljbGVfX3RleHQgLmFydGljbGVfX3RleHRfY29sb3IudGV4dF9ncmV5IHsgYmFja2dyb3VuZC1jb2xvcjogI0ZEQzQwMDsgfVxuXG4uYXJ0aWNsZV9fcGFnZSAuYXJ0aWNsZV9fdGV4dCAuYXJ0aWNsZV9fdGV4dF9jb2xvci50ZXh0X2dyZXlfbGlnaHQsIC5idXR0b25fX3BhZ2UgLmFydGljbGVfX3RleHQgLmFydGljbGVfX3RleHRfY29sb3IudGV4dF9ncmV5X2xpZ2h0IHsgYmFja2dyb3VuZC1jb2xvcjogIzc2NzE3NTsgfVxuXG4uYXJ0aWNsZV9fcGFnZSAuYXJ0aWNsZV9fdGV4dCAuYXJ0aWNsZV9fdGV4dF9jb2xvci50ZXh0X2JsdWUsIC5idXR0b25fX3BhZ2UgLmFydGljbGVfX3RleHQgLmFydGljbGVfX3RleHRfY29sb3IudGV4dF9ibHVlIHsgYmFja2dyb3VuZC1jb2xvcjogI0ZEQzQwMDsgfVxuXG4uZnJlZV90ZXh0IC5jZWxsIHsgbWFyZ2luLWxlZnQ6IDA7IG1hcmdpbi1yaWdodDogMDsgfVxuXG4uZnJlZV90ZXh0IGgyIHsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV84NSBIZWF2eTE0NzU1NDRcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDEuMjVyZW07IGxpbmUtaGVpZ2h0OiAxLjYyNXJlbTsgbWFyZ2luLWJvdHRvbTogMTlweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZnJlZV90ZXh0IGgyIHsgZm9udC1zaXplOiAxLjc1cmVtOyBsaW5lLWhlaWdodDogMnJlbTsgbWFyZ2luLWJvdHRvbTogMjJweDsgfSB9XG5cbi5hcnRpY2xlX19mZWF0dXJlIGgxOm5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hcnRpY2xlX19mZWF0dXJlIGgyOm5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hcnRpY2xlX19mZWF0dXJlIGgzOm5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hcnRpY2xlX19mZWF0dXJlIGg0Om5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hcnRpY2xlX19mZWF0dXJlIGg1Om5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hcnRpY2xlX19mZWF0dXJlIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHA6bm90KDpmaXJzdC1vZi10eXBlKSwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmFydGljbGVfX2ZlYXR1cmUgcDpub3QoOmZpcnN0LW9mLXR5cGUpLCAuYXJ0aWNsZV9fZmVhdHVyZSBoNjpub3QoOmZpcnN0LW9mLXR5cGUpLCAuYXJ0aWNsZV9fZmVhdHVyZSAudXBkYXRlZCAuZGF0ZTpub3QoOmZpcnN0LW9mLXR5cGUpLCAudXBkYXRlZCAuYXJ0aWNsZV9fZmVhdHVyZSAuZGF0ZTpub3QoOmZpcnN0LW9mLXR5cGUpLCAuYXJ0aWNsZV9fZmVhdHVyZSAuaDE6bm90KDpmaXJzdC1vZi10eXBlKSwgLmFydGljbGVfX2ZlYXR1cmUgLmgyOm5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hcnRpY2xlX19mZWF0dXJlIC5oMzpub3QoOmZpcnN0LW9mLXR5cGUpLCAuYXJ0aWNsZV9fZmVhdHVyZSAuaDQ6bm90KDpmaXJzdC1vZi10eXBlKSwgLmFydGljbGVfX2ZlYXR1cmUgLmg1Om5vdCg6Zmlyc3Qtb2YtdHlwZSksIC5hcnRpY2xlX19mZWF0dXJlIC5oNjpub3QoOmZpcnN0LW9mLXR5cGUpIHsgbWFyZ2luLXRvcDogNDBweDsgfVxuXG4uYXJ0aWNsZV9fZmVhdHVyZSB1bCB7IG1hcmdpbi1sZWZ0OiA0MHB4OyBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cblxuLmFydGljbGVfX2ZlYXR1cmUgb2wgeyBtYXJnaW4tbGVmdDogMS41cmVtOyBsaXN0LXN0eWxlOiBub25lOyBjb3VudGVyLXJlc2V0OiBsaTsgfVxuXG4uYXJ0aWNsZV9fZmVhdHVyZSBvbCBsaSB7IG1hcmdpbi1sZWZ0OiAxLjVyZW07IG1hcmdpbi1ib3R0b206IDVweDsgY291bnRlci1pbmNyZW1lbnQ6IGxpOyB9XG5cbi5hcnRpY2xlX19mZWF0dXJlIG9sIGxpOjpiZWZvcmUgeyBjb250ZW50OiBjb3VudGVyKGxpKTsgYmFja2dyb3VuZC1jb2xvcjogIzBGNTg5QTsgY29sb3I6ICNGRkY7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgd2lkdGg6IDEuMnJlbTsgaGVpZ2h0OiAxLjJyZW07IG1hcmdpbi1sZWZ0OiAtNGVtOyBtYXJnaW4tcmlnaHQ6IDIuNGVtOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGRpcmVjdGlvbjogcnRsOyBib3JkZXItcmFkaXVzOiA1MCU7IGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuXG4ubmV3c19pbnRyb19jb250ZW50IHsgbWFyZ2luLXRvcDogODBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAubmV3c19pbnRyb19jb250ZW50LCAubmV3c19jb250ZW50IHsgcGFkZGluZy1sZWZ0OiAyMHB4OyBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9IH1cblxuLmNvbnRlbnRzX3RhYmxlIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgYm9yZGVyLXJhZGl1czogOHB4OyB9XG5cbi5jb250ZW50c190YWJsZSAuYWNjb3JkaW9uIHsgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4uY29udGVudHNfdGFibGUgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSB7IG1hcmdpbjogMzBweCAyNHB4IDA7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgYm9yZGVyLXJhZGl1czogMHB4ICFpbXBvcnRhbnQ7IHBhZGRpbmctdG9wOiAwcHggIWltcG9ydGFudDsgdHJhbnNpdGlvbjogYm9yZGVyIDAuMjVzOyB9XG5cbi5jb250ZW50c190YWJsZSAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IH1cblxuLmNvbnRlbnRzX3RhYmxlIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLXRpdGxlIHsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNhM2EzYTM7IH1cblxuLmNvbnRlbnRzX3RhYmxlIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSkgcm90YXRlKC0xODBkZWcpOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5jb250ZW50c190YWJsZSAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgeyBwYWRkaW5nOiAyMHB4IDU4cHg7IH0gfVxuXG4uY29udGVudHNfdGFibGUgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IGEgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5jb250ZW50c190YWJsZSAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgYSAuYXJyb3ctYnRuIHsgdG9wOiAycHg7IGhlaWdodDogMTVweDsgbWluLXdpZHRoOiAxNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luOiBhdXRvIDEwcHggYXV0byAwOyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYnRuYXJyb3cuc3ZnKTsgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuY29udGVudHNfdGFibGUgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IGEgLmFycm93LWJ0biB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9idG5hcnJvdy5zdmcpOyBtYXNrLXNpemU6IDE1cHggMTVweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbi5jb250ZW50c190YWJsZSAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgYTpob3ZlciwgLmNvbnRlbnRzX3RhYmxlIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCBhLmFjdGl2ZSB7IGNvbG9yOiAjMDQzMjYzOyB9XG5cbi5jb250ZW50c190YWJsZSAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgYTpob3ZlciAuYXJyb3ctYnRuLCAuY29udGVudHNfdGFibGUgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IGEuYWN0aXZlIC5hcnJvdy1idG4geyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYnRuYXJyb3ctaG92ZXIuc3ZnKTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuY29udGVudHNfdGFibGUgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IGE6aG92ZXIgLmFycm93LWJ0biwgLmNvbnRlbnRzX3RhYmxlIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCBhLmFjdGl2ZSAuYXJyb3ctYnRuIHsgYmFja2dyb3VuZDogI0ZEQzQwMDsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2J0bmFycm93LWhvdmVyLnN2Zyk7IG1hc2stc2l6ZTogMTVweCAxNXB4OyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9IH1cblxuLyoqIEFXQVJEICovXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuYXdhcmRfX2hlcm8geyBwYWRkaW5nLWxlZnQ6IDIwcHg7IHBhZGRpbmctcmlnaHQ6IDIwcHg7IH0gfVxuXG4uYXdhcmRfX2hlcm8gLnJlZ19vcGVucywgLmF3YXJkX19oZXJvIC5yZWdfY2xvc2VzIHsgcGFkZGluZy1yaWdodDogMzBweDsgfVxuXG4uYXdhcmRfX2hlcm8gLnJlZ19vcGVucyB7IG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmF3YXJkX19oZXJvIC5yZWdfb3BlbnMgeyBtYXJnaW4tYm90dG9tOiB1bnNldDsgfSB9XG5cbi5hd2FyZF9faGVybyAuYnV0dG9uLCAuYXdhcmRfX2hlcm8gbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmF3YXJkX19oZXJvIGEgeyBtYXJnaW4tdG9wOiAzMHB4OyB9XG5cbi8qKiBDQVJEICovXG4uY2FyZCB7IG92ZXJmbG93OiBoaWRkZW47IGJvcmRlci1yYWRpdXM6IDVweDsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5jYXJkIHVsIHsgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uY2FyZCB1bCBsaSB7IG1hcmdpbi1ib3R0b206IDFlbTsgfVxuXG4uY2FyZCB1bCBsaTo6YmVmb3JlIHsgY29udGVudDogXCJcXDI1Q0ZcIjsgY29sb3I6ICM2NDlBREI7IGZvbnQtd2VpZ2h0OiBib2xkOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiAxZW07IG1hcmdpbi1sZWZ0OiAtMWVtOyB9XG5cbi5jYXJkIC5pbWdfbGluayB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uY2FyZCAuY2FyZC1saW5rIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBjb2xvcjogaW5pdGlhbDsgfVxuXG4uY2FyZCAuY2FyZC1saW5rID4gZGl2Om5vdChbY2xhc3NdKSB7IGhlaWdodDogMTAwJTsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4uY2FyZCAuY2FyZC1saW5rID4gZGl2Om5vdChbY2xhc3NdKSAudGV4dF9fd3JhcHBlciB7IGZsZXg6IDEgMCBhdXRvOyB9XG5cbi5jYXJkIC5jYXJkLWxpbmsub3ZlcnJpZGU6aG92ZXIsIC5jYXJkIGEuY2FyZC1saW5rLm92ZXJyaWRlLmFjdGl2ZSwgLmNhcmQgYnV0dG9uLmNhcmQtbGluay5vdmVycmlkZS5hY3RpdmUgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uY2FyZCAuY2FyZC1saW5rIGg1OmhvdmVyLCAuY2FyZCAuY2FyZC1saW5rIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHA6aG92ZXIsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkIC5jYXJkLWxpbmsgcDpob3ZlciwgLmNhcmQgLmNhcmQtbGluayAuaDU6aG92ZXIsIC5jYXJkIC5jYXJkLWxpbmsgYS5oNS5hY3RpdmUsIC5jYXJkIC5jYXJkLWxpbmsgYnV0dG9uLmg1LmFjdGl2ZSB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7IH1cblxuLmNhcmQgLmNhcmQtbGluayAudGV4dF9fd3JhcHBlciB7IGNvbG9yOiAjMDQzMjYzOyB0cmFuc2l0aW9uOiBhbGwgMC4yNXM7IHBhZGRpbmc6IDIwcHg7IH1cblxuLmNhcmQgLmNhcmQtbGluayAudGV4dF9fd3JhcHBlciAuc3ViaGVhZGluZyB7IHRyYW5zaXRpb246IGFsbCAwLjI1czsgfVxuXG4uY2FyZCAuY2FyZC1saW5rIC50ZXh0X193cmFwcGVyIGg1LCAuY2FyZCAuY2FyZC1saW5rIC50ZXh0X193cmFwcGVyIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkIC5jYXJkLWxpbmsgLnRleHRfX3dyYXBwZXIgcCwgLmNhcmQgLmNhcmQtbGluayAudGV4dF9fd3JhcHBlciAuaDUgeyB0cmFuc2l0aW9uOiBhbGwgMC4yNXM7IH1cblxuLmNhcmQgLmNhcmQtbGluazpob3ZlciAudGV4dF9fd3JhcHBlciwgLmNhcmQgYS5jYXJkLWxpbmsuYWN0aXZlIC50ZXh0X193cmFwcGVyLCAuY2FyZCBidXR0b24uY2FyZC1saW5rLmFjdGl2ZSAudGV4dF9fd3JhcHBlciB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IGNvbG9yOiAjRkZGOyBib3JkZXItY29sb3I6ICMwNDMyNjM7IH1cblxuLmNhcmQgLmNhcmQtbGluazpob3ZlciAudGV4dF9fd3JhcHBlciBsaSwgLmNhcmQgYS5jYXJkLWxpbmsuYWN0aXZlIC50ZXh0X193cmFwcGVyIGxpLCAuY2FyZCBidXR0b24uY2FyZC1saW5rLmFjdGl2ZSAudGV4dF9fd3JhcHBlciBsaSB7IGNvbG9yOiAjRkZGOyB9XG5cbi5jYXJkIC5jYXJkLWxpbms6aG92ZXIgLnRleHRfX3dyYXBwZXIgLnN1YmhlYWRpbmcsIC5jYXJkIGEuY2FyZC1saW5rLmFjdGl2ZSAudGV4dF9fd3JhcHBlciAuc3ViaGVhZGluZywgLmNhcmQgYnV0dG9uLmNhcmQtbGluay5hY3RpdmUgLnRleHRfX3dyYXBwZXIgLnN1YmhlYWRpbmcgeyBjb2xvcjogI0ZGRjsgfVxuXG4uY2FyZCAuY2FyZC1saW5rOmhvdmVyIC50ZXh0X193cmFwcGVyIGg1LCAuY2FyZCBhLmNhcmQtbGluay5hY3RpdmUgLnRleHRfX3dyYXBwZXIgaDUsIC5jYXJkIGJ1dHRvbi5jYXJkLWxpbmsuYWN0aXZlIC50ZXh0X193cmFwcGVyIGg1LCAuY2FyZCAuY2FyZC1saW5rOmhvdmVyIC50ZXh0X193cmFwcGVyIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkIC5jYXJkLWxpbms6aG92ZXIgLnRleHRfX3dyYXBwZXIgcCwgLmNhcmQgYS5jYXJkLWxpbmsuYWN0aXZlIC50ZXh0X193cmFwcGVyIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkIGEuY2FyZC1saW5rLmFjdGl2ZSAudGV4dF9fd3JhcHBlciBwLCAuY2FyZCBidXR0b24uY2FyZC1saW5rLmFjdGl2ZSAudGV4dF9fd3JhcHBlciBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZCBidXR0b24uY2FyZC1saW5rLmFjdGl2ZSAudGV4dF9fd3JhcHBlciBwLCAuY2FyZCAuY2FyZC1saW5rOmhvdmVyIC50ZXh0X193cmFwcGVyIC5oNSwgLmNhcmQgYS5jYXJkLWxpbmsuYWN0aXZlIC50ZXh0X193cmFwcGVyIC5oNSwgLmNhcmQgYnV0dG9uLmNhcmQtbGluay5hY3RpdmUgLnRleHRfX3dyYXBwZXIgLmg1IHsgY29sb3I6ICNGREM0MDA7IH1cblxuLmNhcmQgLmNhcmQtbGluazpob3ZlciAudGV4dF9fd3JhcHBlciBoNTphZnRlciwgLmNhcmQgYS5jYXJkLWxpbmsuYWN0aXZlIC50ZXh0X193cmFwcGVyIGg1OmFmdGVyLCAuY2FyZCBidXR0b24uY2FyZC1saW5rLmFjdGl2ZSAudGV4dF9fd3JhcHBlciBoNTphZnRlciwgLmNhcmQgLmNhcmQtbGluazpob3ZlciAudGV4dF9fd3JhcHBlciBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwOmFmdGVyLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZCAuY2FyZC1saW5rOmhvdmVyIC50ZXh0X193cmFwcGVyIHA6YWZ0ZXIsIC5jYXJkIGEuY2FyZC1saW5rLmFjdGl2ZSAudGV4dF9fd3JhcHBlciBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwOmFmdGVyLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZCBhLmNhcmQtbGluay5hY3RpdmUgLnRleHRfX3dyYXBwZXIgcDphZnRlciwgLmNhcmQgYnV0dG9uLmNhcmQtbGluay5hY3RpdmUgLnRleHRfX3dyYXBwZXIgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcDphZnRlciwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmQgYnV0dG9uLmNhcmQtbGluay5hY3RpdmUgLnRleHRfX3dyYXBwZXIgcDphZnRlciwgLmNhcmQgLmNhcmQtbGluazpob3ZlciAudGV4dF9fd3JhcHBlciAuaDU6YWZ0ZXIsIC5jYXJkIGEuY2FyZC1saW5rLmFjdGl2ZSAudGV4dF9fd3JhcHBlciAuaDU6YWZ0ZXIsIC5jYXJkIGJ1dHRvbi5jYXJkLWxpbmsuYWN0aXZlIC50ZXh0X193cmFwcGVyIC5oNTphZnRlciB7IC8qIC8vIFJlbW92ZWQgZHVlIHRvIGxvbmcgdGl0bGUgY29uZmxpY3RzIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pY29ucy9hcnJvdy1idG4teWVsbG93LnN2Zyk7IEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgYmFja2dyb3VuZDogJHNlY29uZGFyeS1vbmU7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9hcnJvdy1idG4teWVsbG93LnN2Zyk7IG1hc2stc2l6ZTogOXB4IDEzcHg7IG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7IH0gKi8gfVxuXG4uY2FyZCAub3ZlcmxheS1saW5rIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGJvdHRvbTogMDsgbGVmdDogMDsgcmlnaHQ6IDA7IHRleHQtaW5kZW50OiAtOTk5OTlweDsgei1pbmRleDogMDsgfVxuXG4uY2FyZC5oYXMtaW1hZ2UgeyBtaW4taGVpZ2h0OiAyNTVweDsgfVxuXG4uY2FyZC5oYXMtaW1hZ2U6aG92ZXIgLm92ZXJsYXktaW1hZ2UsIGEuY2FyZC5oYXMtaW1hZ2UuYWN0aXZlIC5vdmVybGF5LWltYWdlLCBidXR0b24uY2FyZC5oYXMtaW1hZ2UuYWN0aXZlIC5vdmVybGF5LWltYWdlIHsgb3BhY2l0eTogMDsgfVxuXG4uY2FyZC5oYXMtbGluayB7IHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4yNXM7IH1cblxuLmNhcmQuaGFzLWxpbms6aG92ZXIsIGEuY2FyZC5oYXMtbGluay5hY3RpdmUsIGJ1dHRvbi5jYXJkLmhhcy1saW5rLmFjdGl2ZSwgLmNhcmQuaGFzLWxpbmsuaGFzLWltYWdlIHsgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MzsgfVxuXG4uY2FyZC5oYXMtbGluazpob3ZlciBhLCBhLmNhcmQuaGFzLWxpbmsuYWN0aXZlIGEsIGJ1dHRvbi5jYXJkLmhhcy1saW5rLmFjdGl2ZSBhLCAuY2FyZC5oYXMtbGluay5oYXMtaW1hZ2UgYSB7IGNvbG9yOiAjRkRDNDAwOyB9XG5cbi5jYXJkLmhhcy1saW5rOmhvdmVyIGg0LCBhLmNhcmQuaGFzLWxpbmsuYWN0aXZlIGg0LCBidXR0b24uY2FyZC5oYXMtbGluay5hY3RpdmUgaDQsIC5jYXJkLmhhcy1saW5rOmhvdmVyIGg1LCBhLmNhcmQuaGFzLWxpbmsuYWN0aXZlIGg1LCBidXR0b24uY2FyZC5oYXMtbGluay5hY3RpdmUgaDUsIC5jYXJkLmhhcy1saW5rOmhvdmVyIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkLmhhcy1saW5rOmhvdmVyIHAsIGEuY2FyZC5oYXMtbGluay5hY3RpdmUgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgYS5jYXJkLmhhcy1saW5rLmFjdGl2ZSBwLCBidXR0b24uY2FyZC5oYXMtbGluay5hY3RpdmUgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgYnV0dG9uLmNhcmQuaGFzLWxpbmsuYWN0aXZlIHAsIGEuY2FyZC5oYXMtbGluay5idXR0b24uYWN0aXZlIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIGEuY2FyZC5oYXMtbGluay5idXR0b24uYWN0aXZlIHAsIGxpLmZhdXgtYnV0dG9uIGEuY2FyZC5oYXMtbGluay5hY3RpdmUgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgbGkuZmF1eC1idXR0b24gYS5jYXJkLmhhcy1saW5rLmFjdGl2ZSBwLCAuY2FyZC5oYXMtbGluazpob3ZlciBwLCBhLmNhcmQuaGFzLWxpbmsuYWN0aXZlIHAsIGJ1dHRvbi5jYXJkLmhhcy1saW5rLmFjdGl2ZSBwLCAuY2FyZC5oYXMtbGluazpob3ZlciBhW2hyZWZePVwibWFpbHRvOlwiXSwgYS5jYXJkLmhhcy1saW5rLmFjdGl2ZSBhW2hyZWZePVwibWFpbHRvOlwiXSwgYnV0dG9uLmNhcmQuaGFzLWxpbmsuYWN0aXZlIGFbaHJlZl49XCJtYWlsdG86XCJdLCAuY2FyZC5oYXMtbGluazpob3ZlciBhW2hyZWZePVwidGVsOlwiXSwgYS5jYXJkLmhhcy1saW5rLmFjdGl2ZSBhW2hyZWZePVwidGVsOlwiXSwgYnV0dG9uLmNhcmQuaGFzLWxpbmsuYWN0aXZlIGFbaHJlZl49XCJ0ZWw6XCJdLCAuY2FyZC5oYXMtbGluazpob3ZlciBsaSwgYS5jYXJkLmhhcy1saW5rLmFjdGl2ZSBsaSwgYnV0dG9uLmNhcmQuaGFzLWxpbmsuYWN0aXZlIGxpLCAuY2FyZC5oYXMtbGluay5oYXMtaW1hZ2UgaDQsIC5jYXJkLmhhcy1saW5rLmhhcy1pbWFnZSBoNSwgLmNhcmQuaGFzLWxpbmsuaGFzLWltYWdlIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkLmhhcy1saW5rLmhhcy1pbWFnZSBwLCAuY2FyZC5oYXMtbGluay5oYXMtaW1hZ2UgcCwgLmNhcmQuaGFzLWxpbmsuaGFzLWltYWdlIGFbaHJlZl49XCJtYWlsdG86XCJdLCAuY2FyZC5oYXMtbGluay5oYXMtaW1hZ2UgYVtocmVmXj1cInRlbDpcIl0sIC5jYXJkLmhhcy1saW5rLmhhcy1pbWFnZSBsaSB7IGNvbG9yOiAjRkZGOyB9XG5cbi5jYXJkIC5vdmVybGF5LWltYWdlIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDUwJTsgbGVmdDogNTAlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgdGV4dC1pbmRlbnQ6IC05OTk5OXB4OyB6LWluZGV4OiAyOyBvYmplY3QtZml0OiBjb3Zlcjsgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyBwb2ludGVyLWV2ZW50czogbm9uZTsgb3BhY2l0eTogMTsgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1czsgfVxuXG4uY2FyZC50cmFuc3BhcmVudCB7IHBhZGRpbmctdG9wOiA3MHB4OyBwYWRkaW5nLWxlZnQ6IDMwcHg7IHBhZGRpbmctcmlnaHQ6IDMwcHg7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcmQudHJhbnNwYXJlbnQgLmNhcmQtbGlua3MgeyBtYXJnaW4tYm90dG9tOiA3MHB4OyB9XG5cbi5jYXJkLnRyYW5zcGFyZW50IC5jYXJkLWxpbmtzIGEubGluay1zZWNvbmQgeyBmbG9hdDogcmlnaHQ7IH1cblxuLmNhcmQudHJhbnNwYXJlbnQgLnRhZywgLmNhcmQudHJhbnNwYXJlbnQgLmNhcmQtbGlua3MgYSB7IGNvbG9yOiAjMEY1ODlBOyB9XG5cbi5jYXJkLnRyYW5zcGFyZW50IC50YWcgeyBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uY2FyZC50cmFuc3BhcmVudCAuY2FyZC1saW5rcyBhIHsgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4uY2FyZC5ib3JkZXJlZCB7IGJvcmRlci10b3A6IDEycHggc29saWQgIzA0MzI2MzsgdHJhbnNpdGlvbjogYWxsIDAuMjVzOyB9XG5cbi5jYXJkLmJvcmRlcmVkOmhvdmVyLCBhLmNhcmQuYm9yZGVyZWQuYWN0aXZlLCBidXR0b24uY2FyZC5ib3JkZXJlZC5hY3RpdmUgeyBib3JkZXItdG9wLWNvbG9yOiAjRkRDNDAwOyB9XG5cbi5jYXJkLmNhcmRfX3NpbXBsZSB7IHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5jYXJkLmNhcmRfX3NpbXBsZSAuYnV0dG9uX3dyYXAgeyBtYXJnaW4tdG9wOiAzMHB4OyB9XG5cbi5jYXJkLmNhcmRfX3NpbXBsZS5tZWRpdW0tNiBhIHsgbWluLXdpZHRoOiAxMDAlOyB3aWR0aDogMTAwJTsgbWFyZ2luOiAzMHB4IDBweCAxMHB4IDBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuY2FyZC5jYXJkX19zaW1wbGUuaGVyby1wYWRkaW5nIGRpdiB7IHBhZGRpbmctbGVmdDogMjBweDsgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG5cbi5jYXJkLmNhcmRfX2xpbmsgeyBib3JkZXItdG9wOiBzb2xpZCA1cHggI0ZEQzQwMDsgcGFkZGluZy10b3A6IDIwcHg7IH1cblxuLmNhcmQuY2FyZF9fbGlzdCBociB7IG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgLmNhcmQuY2FyZF9fY2FsbG91dCB7IHBhZGRpbmc6IDUwcHggMjVweCAhaW1wb3J0YW50OyB9IH1cblxuLmNhcmQuY2FyZF9fY2FsbG91dCAuYnV0dG9uLCAuY2FyZC5jYXJkX19jYWxsb3V0IGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5jYXJkLmNhcmRfX2NhbGxvdXQgYSB7IG1hcmdpbi10b3A6IHVuc2V0OyBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG4uY2FyZC5jYXJkX19leHBhbmRhYmxlIHsgcG9zaXRpb246IHJlbGF0aXZlOyB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMjVzOyB9XG5cbi5jYXJkLmNhcmRfX2V4cGFuZGFibGUgLmNvbnRlbnQtd3JhcCB7IHBhZGRpbmc6IDE4cHggMjRweDsgfVxuXG4uY2FyZC5jYXJkX19leHBhbmRhYmxlIC5hY2NvcmRpb24tY29udGVudCB7IHBhZGRpbmctdG9wOiAwOyBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uY2FyZC5jYXJkX19leHBhbmRhYmxlIC5hY2NvcmRpb24tY29udGVudCAuY29udGVudCB7IGJvcmRlci1sZWZ0OiA1cHggc29saWQgI0ZEQzQwMDsgcGFkZGluZy1sZWZ0OiAxNnB4OyB9XG5cbi5jYXJkLmNhcmRfX2V4cGFuZGFibGUgLmFjY29yZGlvbi1jb250ZW50IGg2Om5vdCg6Zmlyc3QtY2hpbGQpLCAuY2FyZC5jYXJkX19leHBhbmRhYmxlIC5hY2NvcmRpb24tY29udGVudCAudXBkYXRlZCAuZGF0ZTpub3QoOmZpcnN0LWNoaWxkKSwgLnVwZGF0ZWQgLmNhcmQuY2FyZF9fZXhwYW5kYWJsZSAuYWNjb3JkaW9uLWNvbnRlbnQgLmRhdGU6bm90KDpmaXJzdC1jaGlsZCkgeyBtYXJnaW4tdG9wOiAyMHB4OyB9XG5cbi5jYXJkLmNhcmRfX2V4cGFuZGFibGUgLmFjY29yZGlvbi1jb250ZW50IHAgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkLmNhcmRfX2V4cGFuZGFibGUgLmFjY29yZGlvbi10aXRsZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyByaWdodDogMDsgaGVpZ2h0OiAzMDBweDsgbGVmdDogMDsgdGV4dC1pbmRlbnQ6IC05OTk5cHg7IH1cblxuLmNhcmQuY2FyZF9fZXhwYW5kYWJsZSAubGluayB7IHotaW5kZXg6IDI7IGRpc3BsYXk6IGJsb2NrOyBjb2xvcjogIzA0MzI2MzsgbWFyZ2luLWJvdHRvbTogMXJlbTsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgb3ZlcmZsb3c6IGhpZGRlbjsgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IGN1cnNvcjogcG9pbnRlcjsgbWFyZ2luLXRvcDogLTE4cHg7IHBhZGRpbmc6IDBweCAxOHB4IDI0cHggMThweDsgfVxuXG4uY2FyZC5jYXJkX19leHBhbmRhYmxlIC5saW5rOmZpcnN0LWNoaWxkIHsgbWFyZ2luLXRvcDogMHB4OyB9XG5cbi5jYXJkLmNhcmRfX2V4cGFuZGFibGU6aG92ZXIsIGEuY2FyZC5jYXJkX19leHBhbmRhYmxlLmFjdGl2ZSwgYnV0dG9uLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6Zm9jdXMgeyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyB9XG5cbi5jYXJkLmNhcmRfX2V4cGFuZGFibGU6aG92ZXIgaDUsIGEuY2FyZC5jYXJkX19leHBhbmRhYmxlLmFjdGl2ZSBoNSwgYnV0dG9uLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgaDUsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6aG92ZXIgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmQuY2FyZF9fZXhwYW5kYWJsZTpob3ZlciBwLCBhLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgYS5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIHAsIGJ1dHRvbi5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIGJ1dHRvbi5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIHAsIGEuY2FyZC5jYXJkX19leHBhbmRhYmxlLmJ1dHRvbi5hY3RpdmUgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgYS5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYnV0dG9uLmFjdGl2ZSBwLCBsaS5mYXV4LWJ1dHRvbiBhLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgbGkuZmF1eC1idXR0b24gYS5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIHAsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6aG92ZXIgLmg1LCBhLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgLmg1LCBidXR0b24uY2FyZC5jYXJkX19leHBhbmRhYmxlLmFjdGl2ZSAuaDUsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6aG92ZXIgLmg2LCBhLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgLmg2LCBidXR0b24uY2FyZC5jYXJkX19leHBhbmRhYmxlLmFjdGl2ZSAuaDYsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6aG92ZXIgaDYsIGEuY2FyZC5jYXJkX19leHBhbmRhYmxlLmFjdGl2ZSBoNiwgYnV0dG9uLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgaDYsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6aG92ZXIgLnVwZGF0ZWQgLmRhdGUsIC51cGRhdGVkIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6aG92ZXIgLmRhdGUsIGEuY2FyZC5jYXJkX19leHBhbmRhYmxlLmFjdGl2ZSAudXBkYXRlZCAuZGF0ZSwgLnVwZGF0ZWQgYS5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIC5kYXRlLCBidXR0b24uY2FyZC5jYXJkX19leHBhbmRhYmxlLmFjdGl2ZSAudXBkYXRlZCAuZGF0ZSwgLnVwZGF0ZWQgYnV0dG9uLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgLmRhdGUsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6aG92ZXIgcCwgYS5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIHAsIGJ1dHRvbi5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIHAsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6aG92ZXIgYSwgYS5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIGEsIGJ1dHRvbi5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIGEsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6aG92ZXIgLnN1YmhlYWRpbmcsIGEuY2FyZC5jYXJkX19leHBhbmRhYmxlLmFjdGl2ZSAuc3ViaGVhZGluZywgYnV0dG9uLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgLnN1YmhlYWRpbmcsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6aG92ZXIgLmFjY29yZGlvbi1jb250ZW50ICosIGEuY2FyZC5jYXJkX19leHBhbmRhYmxlLmFjdGl2ZSAuYWNjb3JkaW9uLWNvbnRlbnQgKiwgYnV0dG9uLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgLmFjY29yZGlvbi1jb250ZW50ICosIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6aG92ZXIgLmxpbmssIGEuY2FyZC5jYXJkX19leHBhbmRhYmxlLmFjdGl2ZSAubGluaywgYnV0dG9uLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgLmxpbmssIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6Zm9jdXMgaDUsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6Zm9jdXMgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmQuY2FyZF9fZXhwYW5kYWJsZTpmb2N1cyBwLCAuY2FyZC5jYXJkX19leHBhbmRhYmxlOmZvY3VzIC5oNSwgLmNhcmQuY2FyZF9fZXhwYW5kYWJsZTpmb2N1cyAuaDYsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6Zm9jdXMgaDYsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6Zm9jdXMgLnVwZGF0ZWQgLmRhdGUsIC51cGRhdGVkIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6Zm9jdXMgLmRhdGUsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6Zm9jdXMgcCwgLmNhcmQuY2FyZF9fZXhwYW5kYWJsZTpmb2N1cyBhLCAuY2FyZC5jYXJkX19leHBhbmRhYmxlOmZvY3VzIC5zdWJoZWFkaW5nLCAuY2FyZC5jYXJkX19leHBhbmRhYmxlOmZvY3VzIC5hY2NvcmRpb24tY29udGVudCAqLCAuY2FyZC5jYXJkX19leHBhbmRhYmxlOmZvY3VzIC5saW5rIHsgY29sb3I6ICNGRkY7IH1cblxuLmNhcmQuY2FyZF9fZXhwYW5kYWJsZTpob3ZlciBoNTpiZWZvcmUsIGEuY2FyZC5jYXJkX19leHBhbmRhYmxlLmFjdGl2ZSBoNTpiZWZvcmUsIGJ1dHRvbi5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIGg1OmJlZm9yZSwgLmNhcmQuY2FyZF9fZXhwYW5kYWJsZTpob3ZlciBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwOmJlZm9yZSwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmQuY2FyZF9fZXhwYW5kYWJsZTpob3ZlciBwOmJlZm9yZSwgYS5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHA6YmVmb3JlLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBhLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgcDpiZWZvcmUsIGJ1dHRvbi5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHA6YmVmb3JlLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBidXR0b24uY2FyZC5jYXJkX19leHBhbmRhYmxlLmFjdGl2ZSBwOmJlZm9yZSwgLmNhcmQuY2FyZF9fZXhwYW5kYWJsZTpob3ZlciAuaDU6YmVmb3JlLCBhLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgLmg1OmJlZm9yZSwgYnV0dG9uLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgLmg1OmJlZm9yZSwgLmNhcmQuY2FyZF9fZXhwYW5kYWJsZTpmb2N1cyBoNTpiZWZvcmUsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6Zm9jdXMgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcDpiZWZvcmUsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6Zm9jdXMgcDpiZWZvcmUsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6Zm9jdXMgLmg1OmJlZm9yZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LXdoaXRlLnN2Zyk7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgLmNhcmQuY2FyZF9fZXhwYW5kYWJsZTpob3ZlciBoNTpiZWZvcmUsIGEuY2FyZC5jYXJkX19leHBhbmRhYmxlLmFjdGl2ZSBoNTpiZWZvcmUsIGJ1dHRvbi5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIGg1OmJlZm9yZSwgLmNhcmQuY2FyZF9fZXhwYW5kYWJsZTpob3ZlciBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwOmJlZm9yZSwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmQuY2FyZF9fZXhwYW5kYWJsZTpob3ZlciBwOmJlZm9yZSwgYS5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHA6YmVmb3JlLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBhLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgcDpiZWZvcmUsIGJ1dHRvbi5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHA6YmVmb3JlLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBidXR0b24uY2FyZC5jYXJkX19leHBhbmRhYmxlLmFjdGl2ZSBwOmJlZm9yZSwgLmNhcmQuY2FyZF9fZXhwYW5kYWJsZTpob3ZlciAuaDU6YmVmb3JlLCBhLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgLmg1OmJlZm9yZSwgYnV0dG9uLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgLmg1OmJlZm9yZSwgLmNhcmQuY2FyZF9fZXhwYW5kYWJsZTpmb2N1cyBoNTpiZWZvcmUsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6Zm9jdXMgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcDpiZWZvcmUsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6Zm9jdXMgcDpiZWZvcmUsIC5jYXJkLmNhcmRfX2V4cGFuZGFibGU6Zm9jdXMgLmg1OmJlZm9yZSB7IGJhY2tncm91bmQ6ICNGRkY7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LXdoaXRlLnN2Zyk7IH0gfVxuXG4uY2FyZC5jYXJkX19leHBhbmRhYmxlOmhvdmVyIGgzLmg1LCBhLmNhcmQuY2FyZF9fZXhwYW5kYWJsZS5hY3RpdmUgaDMuaDUsIGJ1dHRvbi5jYXJkLmNhcmRfX2V4cGFuZGFibGUuYWN0aXZlIGgzLmg1LCAuY2FyZC5jYXJkX19leHBhbmRhYmxlOmZvY3VzIGgzLmg1IHsgY29sb3I6ICNGREM0MDA7IH1cblxuLmNhcmQuY2FyZF9fc3RhdCAudGV4dF9fd3JhcHBlciB7IHRleHQtYWxpZ246IGNlbnRlcjsgcGFkZGluZy1sZWZ0OiAzMHB4OyBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9XG5cbi5jYXJkLmNhcmRfX3N0YXQgLnRleHRfX3dyYXBwZXIgLnN0YXRfX3dyYXBwZXJfX291dGVyIHsgbWFyZ2luOiAwIGF1dG87IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgLmNhcmQuY2FyZF9fc3RhdCAudGV4dF9fd3JhcHBlciAuc3RhdF9fd3JhcHBlcl9fb3V0ZXIgeyBtYXgtd2lkdGg6IDIwMHB4OyB9IH1cblxuLmNhcmQuY2FyZF9fc3RhdCAudGV4dF9fd3JhcHBlciAuc3RhdF9fd3JhcHBlciB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAwOyBwYWRkaW5nOiA1MCUgMDsgYm9yZGVyLXJhZGl1czogNTAlOyBtYXJnaW4tYm90dG9tOiAzMHB4OyBiYWNrZ3JvdW5kOiAjRTRFNEU0OyB9XG5cbi5jYXJkLmNhcmRfX3N0YXQgLnRleHRfX3dyYXBwZXIgLnN0YXRfX3dyYXBwZXIgLnN0YXQgeyBjb2xvcjogIzBGNTg5QTsgZm9udC1zaXplOiAzLjM3NXJlbTsgZm9udC13ZWlnaHQ6IDcwMDsgbGluZS1oZWlnaHQ6IDA7IH1cblxuLmNhcmQuY2FyZF9fYmdfX2ltZyB7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IGNvbG9yOiAjMEY1ODlBOyBwYWRkaW5nLXRvcDogODBweDsgcGFkZGluZy1ib3R0b206IDYwcHg7IH1cblxuLmNhcmQuY2FyZF9fYmdfX2ltZyBzcGFuLnN1YmhlYWRpbmcsIC5jYXJkLmNhcmRfX2JnX19pbWcgcCA+IGEgeyBjb2xvcjogIzBGNTg5QTsgfVxuXG4uY2FyZC5jYXJkX19iZ19faW1nIC5jdGFfd3JhcCB7IG1hcmdpbi10b3A6IDQwcHg7IH1cblxuLmNhcmQuY2FyZF9fYmdfX2ltZy5kYXJrX190ZXh0IHsgY29sb3I6ICNGREM0MDAgIWltcG9ydGFudDsgfVxuXG4uY2FyZC5jYXJkX19iZ19faW1nLmRhcmtfX3RleHQgc3Bhbi5zdWJoZWFkaW5nLCAuY2FyZC5jYXJkX19iZ19faW1nLmRhcmtfX3RleHQgYTpub3QoLmJ1dHRvbikgeyBjb2xvcjogI0ZEQzQwMCAhaW1wb3J0YW50OyB9XG5cbi5jYXJkLmNhcmRfX2JnX19pbWcuZ3JleUJnIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgfVxuXG4uY2FyZC5jYXJkcy1oZWFkaW5nLW1hcmdpbi1ib3R0b20geyBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi5jYXJkLmNhcmRfX2hlYWRpbmcgaDIuaDMgc3BhbiwgLmNhcmQuY2FyZF9faGVhZGluZ19faW5uZXIgaDIuaDMgc3BhbiB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbWFyZ2luLXRvcDogLTIwMHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5jYXJkLmNhcmRfX2hlYWRpbmcgLnN0YW5kYXJkLWxpbmssIC5jYXJkLmNhcmRfX2hlYWRpbmdfX2lubmVyIC5zdGFuZGFyZC1saW5rIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW4tYm90dG9tOiAxNnB4OyB9IH1cblxuLmNhcmQuY2FyZF9faGVhZGluZ19faW5uZXIubWFyZ2luLWJvdHRvbSwgLmNhcmQuY2FyZF9faGVhZGluZ19faW5uZXIgLm1hcmdpbi1ib3R0b20geyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5jYXJkLmNhcmRfX2hlYWRpbmdfX2lubmVyIC5oZWFkaW5nIHsgcGFkZGluZy1ib3R0b206IDIwcHg7IH1cblxuLmNhcmQuY2FyZF9faGVhZGluZ19faW5uZXIgLmhlYWRpbmcgYSB7IGZsb2F0OiBub25lOyBkaXNwbGF5OiBibG9jazsgbWFyZ2luLXRvcDogMjBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuY2FyZC5jYXJkX19oZWFkaW5nX19pbm5lciAuaGVhZGluZyB7IHBhZGRpbmctYm90dG9tOiAwcHg7IH1cbiAgLmNhcmQuY2FyZF9faGVhZGluZ19faW5uZXIgLmhlYWRpbmcgYSB7IGZsb2F0OiByaWdodDsgfVxuICAuY2FyZC5jYXJkX19oZWFkaW5nX19pbm5lciAuaGVhZGluZyBhOmhvdmVyLCAuY2FyZC5jYXJkX19oZWFkaW5nX19pbm5lciAuaGVhZGluZyBhLmFjdGl2ZSB7IGNvbG9yOiAjMDQzMjYzICFpbXBvcnRhbnQ7IH0gfVxuXG4uY2FyZC5jYXJkX19wcmV2aWV3IHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4uY2FyZC5jYXJkX19wcmV2aWV3IC5oNSwgLmNhcmQuY2FyZF9fcHJldmlldyBoNSwgLmNhcmQuY2FyZF9fcHJldmlldyBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZC5jYXJkX19wcmV2aWV3IHAgeyBtYXJnaW4tdG9wOiAxMHB4OyBtYXgtd2lkdGg6IDEwMCU7IGZvbnQtc2l6ZTogMThweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuY2FyZC5jYXJkX19wcmV2aWV3IC5oNSwgLmNhcmQuY2FyZF9fcHJldmlldyBoNSwgLmNhcmQuY2FyZF9fcHJldmlldyBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZC5jYXJkX19wcmV2aWV3IHAgeyBtYXgtd2lkdGg6IDkyJTsgfSB9XG5cbi5jYXJkLmNhcmRfX3ByZXZpZXcgLmg1OjphZnRlciwgLmNhcmQuY2FyZF9fcHJldmlldyBoNTo6YWZ0ZXIsIC5jYXJkLmNhcmRfX3ByZXZpZXcgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcDo6YWZ0ZXIsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkLmNhcmRfX3ByZXZpZXcgcDo6YWZ0ZXIgeyAvKiAvLyBSZW1vdmVkIGR1ZSB0byBsb25nIHRpdGxlIGNvbmZsaWN0cyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDEwcHg7IEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbGVmdDogMzBweDsgfSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9hcnJvdy1idG4tYmx1ZS5zdmcpOyBiYWNrZ3JvdW5kLXNpemU6IDlweCAxM3B4OyB3aWR0aDogOXB4OyBoZWlnaHQ6IDEzcHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgLy90cmFuc2l0aW9uOiBsZWZ0IDAuNXMgZWFzZTsgQHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9hcnJvdy1idG4tYmx1ZS5zdmcpOyBtYXNrLXNpemU6IDlweCAxM3B4OyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9ICovIH1cblxuLmNhcmQuY2FyZF9fcHJldmlldyAuaDUgYSwgLmNhcmQuY2FyZF9fcHJldmlldyBoNSBhLCAuY2FyZC5jYXJkX19wcmV2aWV3IHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAgYSwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmQuY2FyZF9fcHJldmlldyBwIGEgeyBjb2xvcjogIzA0MzI2MzsgfVxuXG4uY2FyZC5jYXJkX19wcmV2aWV3IHAgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5jYXJkLmNhcmRfX3ByZXZpZXcgLmltYWdlX19wcmV2aWV3IHsgcG9zaXRpb246IHJlbGF0aXZlOyBoZWlnaHQ6IDA7IHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IG92ZXJmbG93OiBoaWRkZW47IGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDVweDsgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDVweDsgfVxuXG4uY2FyZC5jYXJkX19wcmV2aWV3IC5pbWFnZV9fcHJldmlldyBpbWcgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGxlZnQ6IDUwJTsgdG9wOiA1MCU7IHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyBvYmplY3QtZml0OiBjb3ZlcjsgfVxuXG4uY2FyZC5jYXJkX19wcmV2aWV3IC5pbWFnZV9fcHJldmlldyAudGFnX2ltZyB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgei1pbmRleDogMTsgZGlzcGxheTogYmxvY2s7IHBhZGRpbmc6IDVweCA3cHg7IGJhY2tncm91bmQtY29sb3I6ICMwRjU4OUE7IGNvbG9yOiAjRkZGOyBsZXR0ZXItc3BhY2luZzogLjI3NWVtOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzU1IFJvbWFuMTQ3NTUyMFwiOyBmb250LXNpemU6IC43NXJlbTsgd2lkdGg6IDEwMCU7IH1cblxuLmNhcmQuY2FyZF9fcHJldmlldyAuaW1hZ2VfX3ByZXZpZXcuZXJzLXZpc2lvbiBpbWc6OmJlZm9yZSB7IC8qIHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogMTBweDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYXJyb3ctbmV4dEAyeC5wbmcpOyBiYWNrZ3JvdW5kLXNpemU6IDlweCAxM3B4OyB3aWR0aDogOXB4OyBoZWlnaHQ6IDEzcHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgLy90cmFuc2l0aW9uOiBsZWZ0IDAuNXMgZWFzZTsgKi8gfVxuXG4uY2FyZC5jYXJkX19wcmV2aWV3IC5pbWFnZV9fcHJldmlldy5haXJsaW5lcywgLmNhcmQuY2FyZF9fcHJldmlldyAuaW1hZ2VfX3ByZXZpZXcucGF0aWVudC1vcmdhbmlzYXRpb24sIC5jYXJkLmNhcmRfX3ByZXZpZXcgLmltYWdlX19wcmV2aWV3LnBhcnRuZXJfc29jaWV0aWVzLCAuY2FyZC5jYXJkX19wcmV2aWV3IC5pbWFnZV9fcHJldmlldy5jb250YWluIHsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGJhY2tncm91bmQ6ICNGRkY7IGJvcmRlcjogMXB4IHNvbGlkICNGMEYwRjA7IGJvcmRlci1ib3R0b206IDA7IH1cblxuLmNhcmQuY2FyZF9fcHJldmlldyAuaW1hZ2VfX3ByZXZpZXcuYWlybGluZXMgaW1nLCAuY2FyZC5jYXJkX19wcmV2aWV3IC5pbWFnZV9fcHJldmlldy5wYXRpZW50LW9yZ2FuaXNhdGlvbiBpbWcsIC5jYXJkLmNhcmRfX3ByZXZpZXcgLmltYWdlX19wcmV2aWV3LnBhcnRuZXJfc29jaWV0aWVzIGltZywgLmNhcmQuY2FyZF9fcHJldmlldyAuaW1hZ2VfX3ByZXZpZXcuY29udGFpbiBpbWcgeyB3aWR0aDogNTAlOyBvYmplY3QtZml0OiBjb250YWluOyBvYmplY3QtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IH1cblxuLmNhcmQuY2FyZF9fcHJldmlldyAudGV4dF9fd3JhcHBlciB7IHBhZGRpbmc6IDE1cHg7IGJvcmRlcjogMXB4IHNvbGlkICNGMEYwRjA7IGJvcmRlci10b3A6IDA7IGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDsgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDVweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuY2FyZC5jYXJkX19wcmV2aWV3IC50ZXh0X193cmFwcGVyIHsgcGFkZGluZy10b3A6IDIwcHg7IH0gfVxuXG4uY2FyZC5jYXJkX19wcmV2aWV3IC50ZXh0X193cmFwcGVyIC5oNSwgLmNhcmQuY2FyZF9fcHJldmlldyAudGV4dF9fd3JhcHBlciBoNSwgLmNhcmQuY2FyZF9fcHJldmlldyAudGV4dF9fd3JhcHBlciBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZC5jYXJkX19wcmV2aWV3IC50ZXh0X193cmFwcGVyIHAgeyB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uY2FyZC5jYXJkX19wcmV2aWV3LnBvZGNhc3RfYmxvY2sgLnRleHRfX3dyYXBwZXIgYSB7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5jYXJkLmNhcmRfX3ByZXZpZXcucG9kY2FzdF9ibG9jayAudGV4dF9fd3JhcHBlciAuaDU6OmFmdGVyIHsgY29udGVudDogbm9uZTsgfVxuXG4uY2FyZC5jYXJkX19wcmV2aWV3IC5mYXV4LS1saW5rIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IG1hcmdpbi1sZWZ0OiA0cHg7IH1cblxuLmNhcmQuY2FyZF9fcHJldmlldyAuZGF0ZSwgLmNhcmQuY2FyZF9fcHJldmlldyAuY2F0ZWdvcnkgeyBjb2xvcjogIzc2NzE3NTsgZm9udC1zaXplOiAwLjc1cmVtOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBkaXNwbGF5OiBibG9jazsgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4uY2FyZC5jYXJkX19wcmV2aWV3IC5jYXRlZ29yeSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmNhcmQuY2FyZF9fcHJldmlldyAuY2F0ZWdvcnk6OmJlZm9yZSB7IHRvcDogNnB4OyBoZWlnaHQ6IDIxcHg7IHdpZHRoOiAxOXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luLXJpZ2h0OiAxMHB4OyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYXJ0aWNsZS1pY29uQDJ4LnBuZyk7IGJhY2tncm91bmQtc2l6ZTogMTlweCAyMXB4OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmNhcmQuY2FyZF9fcHJldmlldyAuY2FwdGlvbiB7IG1hcmdpbi1ib3R0b206IDEycHg7IH1cblxuLmNhcmQuY2FyZF9fcHJldmlldyAuY2FwdGlvbi5sYXN0IHsgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG4uY2FyZC5jYXJkX19wcmV2aWV3IHNwYW4uY2FwdGlvbjo6YmVmb3JlIHsgdG9wOiA2cHg7IGhlaWdodDogMjFweDsgd2lkdGg6IDE5cHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW4tcmlnaHQ6IDEwcHg7IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9hcnRpY2xlLWljb25AMngucG5nKTsgYmFja2dyb3VuZC1zaXplOiAxOXB4IDIxcHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uY2FyZC5jYXJkX19wcmV2aWV3LnByZXZpZXdfX2RldGFpbHMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBwYWRkaW5nOiAyMHB4IDMwcHg7IH1cblxuLmNhcmQuY2FyZF9fcHJldmlldy5wcmV2aWV3X19kZXRhaWxzIHVsIHsgbWFyZ2luOiAwcHg7IGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLmNhcmQuY2FyZF9fcHJldmlldy5wcmV2aWV3X19kZXRhaWxzIHVsIGE6bnRoLWNoaWxkKG9kZCkgbGkgeyBiYWNrZ3JvdW5kOiAjZjdmN2Y3OyB9XG5cbi5jYXJkLmNhcmRfX3ByZXZpZXcucHJldmlld19fZGV0YWlscyB1bCBhIGxpLmRvd25sb2FkIHsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogMTBweDsgbWFyZ2luLWJvdHRvbTogMHB4OyB9XG5cbi5jYXJkLmNhcmRfX3ByZXZpZXcucHJldmlld19fZGV0YWlscyB1bCBhIGxpLmRvd25sb2FkOjpiZWZvcmUgeyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bmxvYWQucG5nKTsgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7IHdpZHRoOiAxNXB4OyBoZWlnaHQ6IDE1cHg7IHJpZ2h0OiAxMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNTAlOyBtYXJnaW4tdG9wOiAtLjVyZW07IH1cblxuLmNhcmQuY2FyZF9fcHJldmlldy5wcmV2aWV3X19kZXRhaWxzIHVsIGEgbGkuZG93bmxvYWQgYSB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5jYXJkLmNhcmRfX3ByZXZpZXcuY2FyZF9fcHJldmlld19ob21lIHsgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG4uY2FyZC5jYXJkX19wcmV2aWV3LmNhcmRfX3ByZXZpZXdfaG9tZSAuaW1hZ2VfX3ByZXZpZXcgeyBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkICMwRjU4OUE7IH1cblxuLmNhcmQuY2FyZF9fcHVzaGRvd24gLmltYWdlX19wcmV2aWV3IHsgd2lkdGg6IDEwMCU7IGhlaWdodDogYXV0bzsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuY2FyZC5jYXJkX19wdXNoZG93biAuaW1hZ2VfX3ByZXZpZXcgeyBtYXgtaGVpZ2h0OiAyMzBweDsgbWluLWhlaWdodDogMjMwcHg7IH0gfVxuXG4uY2FyZC5jYXJkX19wdXNoZG93biAuaW1hZ2VfX3ByZXZpZXcgaW1nIHsgb2JqZWN0LWZpdDogY292ZXI7IGhlaWdodDogMjMwcHg7IHdpZHRoOiAxMDAlOyB9XG5cbi5jYXJkLmNhcmRfX3B1c2hkb3duIC5pbWFnZV9fcHJldmlldy5haXJsaW5lcywgLmNhcmQuY2FyZF9fcHVzaGRvd24gLmltYWdlX19wcmV2aWV3LnBhdGllbnQtb3JnYW5pc2F0aW9uLCAuY2FyZC5jYXJkX19wdXNoZG93biAuaW1hZ2VfX3ByZXZpZXcucGFydG5lcl9zb2NpZXRpZXMsIC5jYXJkLmNhcmRfX3B1c2hkb3duIC5pbWFnZV9fcHJldmlldy5jb250YWluIHsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGJhY2tncm91bmQ6ICNGRkY7IGJvcmRlcjogMXB4IHNvbGlkICNGMEYwRjA7IGJvcmRlci1ib3R0b206IDA7IH1cblxuLmNhcmQuY2FyZF9fcHVzaGRvd24gLmltYWdlX19wcmV2aWV3LmFpcmxpbmVzIGltZywgLmNhcmQuY2FyZF9fcHVzaGRvd24gLmltYWdlX19wcmV2aWV3LnBhdGllbnQtb3JnYW5pc2F0aW9uIGltZywgLmNhcmQuY2FyZF9fcHVzaGRvd24gLmltYWdlX19wcmV2aWV3LnBhcnRuZXJfc29jaWV0aWVzIGltZywgLmNhcmQuY2FyZF9fcHVzaGRvd24gLmltYWdlX19wcmV2aWV3LmNvbnRhaW4gaW1nIHsgd2lkdGg6IDUwJTsgb2JqZWN0LWZpdDogY29udGFpbjsgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9XG5cbi5jYXJkLmNhcmRfX3B1c2hkb3duIC5pbWFnZV9fcHJldmlldy5wYXRpZW50LW9yZ2FuaXNhdGlvbi5kZWZhdWx0LWJnIHsgYmFja2dyb3VuZDogI0YwRjBGMDsgfVxuXG4uY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBoMSwgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgaDIsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IGgzLCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBoNCwgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgaDUsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IHAsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IGg2LCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCAudXBkYXRlZCAuZGF0ZSwgLnVwZGF0ZWQgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgLmRhdGUgeyBmb250LXNpemU6IDFyZW07IGxpbmUtaGVpZ2h0OiAxLjY7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uY2FyZC5jYXJkX19wdXNoZG93biAuY29udGVudC13cmFwIGgzLmg1IHsgZm9udC1zaXplOiAxOHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5jYXJkLmNhcmRfX3B1c2hkb3duLm1lZGl1bS02IC5pbWFnZV9fcHJldmlldyB7IG1heC1oZWlnaHQ6IDMxMnB4OyBtaW4taGVpZ2h0OiAzMTJweDsgfSB9XG5cbi5jYXJkLmNhcmRfX3B1c2hkb3duLm1lZGl1bS02IC5pbWFnZV9fcHJldmlldyBpbWcgeyBoZWlnaHQ6IDMxMnB4OyB9XG5cbi5jYXJkLmNhcmRfX3B1c2hkb3duIC50ZXh0X193cmFwcGVyIHsgLyogLnRhZyB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiAkcHJpbWFyeS10d287IGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpOyB9ICovIH1cblxuLmNhcmQuY2FyZF9fcHVzaGRvd24gLnRleHRfX3dyYXBwZXIgLnB1c2hkb3duX19oZWFkaW5nIHsgbWFyZ2luLXRvcDogMTBweDsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBibG9jazsgdGV4dC1hbGlnbjogbGVmdDsgbWF4LXdpZHRoOiA5MCU7IH1cblxuLmNhcmQuY2FyZF9fcHVzaGRvd24gLnRleHRfX3dyYXBwZXIgLnB1c2hkb3duX19oZWFkaW5nOjphZnRlciB7IC8qIHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1cHg7IHJpZ2h0OiAwOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7IGJhY2tncm91bmQtc2l6ZTogMTVweCAxMXB4OyB3aWR0aDogMTVweDsgaGVpZ2h0OiAxMXB4OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7ICovIH1cblxuLmNhcmQuY2FyZF9fcHVzaGRvd24gLnRleHRfX3dyYXBwZXIgLnJlYWRfX21vcmUgeyBjb2xvcjogIzBGNTg5QTsgZm9udC1zaXplOiAxcmVtOyB9XG5cbi5jYXJkLmNhcmRfX3B1c2hkb3duIC50ZXh0X193cmFwcGVyIGhyIHsgYm9yZGVyOiBub25lOyBoZWlnaHQ6IDJweDsgYmFja2dyb3VuZDogI0U0RTRFNDsgfVxuXG4uY2FyZC5jYXJkX19wdXNoZG93bi5jYXJkX19wcm9maWxlIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4uY2FyZC5jYXJkX19wdXNoZG93bi5jYXJkX19wcm9maWxlIC5hY2NvcmRpb24tY29udGVudCB7IHRleHQtYWxpZ246IGNlbnRlcjsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uY2FyZC5jYXJkX19wdXNoZG93bi5jYXJkX19wcm9maWxlIGg0LCAuY2FyZC5jYXJkX19wdXNoZG93bi5jYXJkX19wcm9maWxlIC5oNCwgLmNhcmQuY2FyZF9fcHVzaGRvd24uY2FyZF9fcHJvZmlsZSBoNSwgLmNhcmQuY2FyZF9fcHVzaGRvd24uY2FyZF9fcHJvZmlsZSBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZC5jYXJkX19wdXNoZG93bi5jYXJkX19wcm9maWxlIHAsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmNhcmRfX3Byb2ZpbGUgLmg1LCAuY2FyZC5jYXJkX19wdXNoZG93bi5jYXJkX19wcm9maWxlIGg2LCAuY2FyZC5jYXJkX19wdXNoZG93bi5jYXJkX19wcm9maWxlIC51cGRhdGVkIC5kYXRlLCAudXBkYXRlZCAuY2FyZC5jYXJkX19wdXNoZG93bi5jYXJkX19wcm9maWxlIC5kYXRlLCAuY2FyZC5jYXJkX19wdXNoZG93bi5jYXJkX19wcm9maWxlIC5oNiB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uY2FyZC5jYXJkX19wdXNoZG93bi5jYXJkX19wcm9maWxlIGEgeyBkaXNwbGF5OiB0YWJsZTsgdGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW46IDAgYXV0bzsgfVxuXG4uY2FyZC5jYXJkX19wdXNoZG93bi5jYXJkX19wcm9maWxlIGEuYnV0dG9uLCAuY2FyZC5jYXJkX19wdXNoZG93bi5jYXJkX19wcm9maWxlIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5jYXJkLmNhcmRfX3B1c2hkb3duLmNhcmRfX3Byb2ZpbGUgYSB7IG1hcmdpbi10b3A6IDIwcHg7IG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuLmNhcmQuY2FyZF9fcHVzaGRvd24uY2FyZF9fcHJvZmlsZSBhLnN0YW5kYXJkX2xpbmsgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjRkRDNDAwOyBwYWRkaW5nLWJvdHRvbTogNHB4OyB0cmFuc2l0aW9uOiBhbGwgMC4zczsgfVxuXG4uY2FyZC5jYXJkX19wdXNoZG93bi5jYXJkX19wcm9maWxlIGEuc3RhbmRhcmRfbGluazpob3ZlciwgLmNhcmQuY2FyZF9fcHVzaGRvd24uY2FyZF9fcHJvZmlsZSBhLnN0YW5kYXJkX2xpbmsuYWN0aXZlIHsgY29sb3I6ICMwMTE1NDI7IGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjNjQ5QURCOyB9XG5cbi5jYXJkLmNhcmRfX3B1c2hkb3duLmNhcmRfX3Byb2ZpbGUgLnB1c2hkb3duX19oZWFkaW5nIHsgbWF4LXdpZHRoOiAxMDAlOyBtYXJnaW4tbGVmdDogNDBweDsgbWFyZ2luLXJpZ2h0OiA0MHB4OyB9XG5cbi5jYXJkLmNhcmRfX3B1c2hkb3duLmNhcmRfX3Byb2ZpbGUgLnB1c2hkb3duX19oZWFkaW5nLmg1IHsgZm9udC1zaXplOiAxOHB4OyB9XG5cbi5jYXJkLmNhcmRfX21lZGlhIC5mZWF0dXJlZF9pbWcgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogZmxleC1zdGFydDsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGhlaWdodDogMTAwJTsgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgcGFkZGluZzogNDBweCAyMHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5jYXJkLmNhcmRfX21lZGlhIC5mZWF0dXJlZF9pbWcgeyBwYWRkaW5nOiA4MHB4IDEwMHB4OyB9IH1cblxuLmNhcmQuY2FyZF9fbWVkaWEgLmZlYXR1cmVkX2ltZyBoMiwgLmNhcmQuY2FyZF9fbWVkaWEgLmZlYXR1cmVkX2ltZyBwIHsgY29sb3I6ICNGRkY7IH1cblxuLmNhcmQuY2FyZF9fbWVkaWEgLmZlYXR1cmVkX2ltZyBhIHsgbWFyZ2luLXRvcDogY2xhbXAoMjBweCwgNTBweCwgNzBweCk7IG1hcmdpbi1ib3R0b206IDBweDsgfVxuXG4uY2FyZC5jYXJkX19tZWRpYSArIC5jZWxsIGEgeyBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5jYXJkLmNhcmRfX3RpbGUgeyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmctYm90dG9tOiAwOyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5jYXJkLmNhcmRfX3RpbGUgYSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5jYXJkLmNhcmRfX3RpbGUgLnRpbGUtLXdyYXAgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBibG9jazsgbWluLWhlaWdodDogMjcwcHg7IC8qIGRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBhbGlnbi1pdGVtczogY2VudGVyOyAqLyB9XG5cbi5jYXJkLmNhcmRfX3RpbGUgLnRpbGUtLXdyYXAgLnRpbGUtLWlubmVyIHsgdGV4dC1hbGlnbjogY2VudGVyOyBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDUwJTsgbGVmdDogNTAlOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4uY2FyZC5jYXJkX190aWxlIC50aWxlLS13cmFwIC50aWxlLS1pbm5lciBpbWcsIC5jYXJkLmNhcmRfX3RpbGUgLnRpbGUtLXdyYXAgLnRpbGUtLWlubmVyIHNwYW4geyBkaXNwbGF5OiBibG9jazsgbWFyZ2luOiAwIGF1dG87IH1cblxuLmNhcmQuY2FyZF9fdGlsZSAudGlsZS0td3JhcCAudGlsZS0taW5uZXIgc3BhbiB7IGZvbnQtc2l6ZTogMS4xMjVyZW07IGNvbG9yOiAjRkRDNDAwOyB9XG5cbi5jYXJkLmNhcmRfX3RpbGUgLnRpbGUtLXdyYXAgLnRpbGUtLWlubmVyIGltZyB7IG1hcmdpbi1ib3R0b206IDI1cHg7IH1cblxuLmNhcmQuY2FyZF9fdGlsZSAudGlsZS0td3JhcCAudGlsZS0taG92ZXIgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgYm90dG9tOiAwOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBtYXJnaW46IDA7IHBhZGRpbmc6IDQ1cHggMzBweCA0NXB4IDMwcHg7IGNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiAjMEY1ODlBOyBkaXNwbGF5OiBub25lOyB9XG5cbi5jYXJkLmNhcmRfX3RpbGUgLnRpbGUtLXdyYXAgLnRpbGUtLWhvdmVyIHNwYW4udW5kZXJsaW5lIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmNhcmQuY2FyZF9fdGlsZSAudGlsZS0td3JhcCAudGlsZS0taG92ZXIgaDQsIC5jYXJkLmNhcmRfX3RpbGUgLnRpbGUtLXdyYXAgLnRpbGUtLWhvdmVyIHAsIC5jYXJkLmNhcmRfX3RpbGUgLnRpbGUtLXdyYXAgLnRpbGUtLWhvdmVyIHNwYW4geyBjb2xvcjogI2ZmZjsgfVxuXG4uY2FyZC5jYXJkX190aWxlIC5jYXJkLWxpbmsuZmF1eC1saW5rOmhvdmVyIC50aWxlLS13cmFwID4gYSAudGlsZS0taG92ZXIsIC5jYXJkLmNhcmRfX3RpbGUgYS5jYXJkLWxpbmsuZmF1eC1saW5rLmFjdGl2ZSAudGlsZS0td3JhcCA+IGEgLnRpbGUtLWhvdmVyLCAuY2FyZC5jYXJkX190aWxlIGJ1dHRvbi5jYXJkLWxpbmsuZmF1eC1saW5rLmFjdGl2ZSAudGlsZS0td3JhcCA+IGEgLnRpbGUtLWhvdmVyIHsgZGlzcGxheTogYmxvY2s7IG1pbi1oZWlnaHQ6IDI3MHB4OyB9XG5cbi5jYXJkLnRleHRfX2JnIHsgYmFja2dyb3VuZC1jb2xvcjogI0ZEQzQwMDsgcGFkZGluZzogMzJweCA0MHB4OyB9XG5cbi5jYXJkLnRleHRfX2JnIGgxLCAuY2FyZC50ZXh0X19iZyBoMiwgLmNhcmQudGV4dF9fYmcgLnN1YmhlYWRpbmcsIC5jYXJkLnRleHRfX2JnIHAgeyBjb2xvcjogIzA0MzI2MzsgfVxuXG4uY2FyZC50ZXh0X19iZyAuc3ViaGVhZGluZyB7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLmNhcmQudGV4dF9fYmcgaDIgeyBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuXG4uY2FyZC50ZXh0X19iZyAuYnV0dG9uLWdyb3VwIHsgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uY2FyZC50ZXh0X19iZyAuYnV0dG9uLWdyb3VwIGE6bm90KC5idXR0b24pIHsgZGlzcGxheTogYmxvY2s7IHRleHQtYWxpZ246IGxlZnQ7IGNvbG9yOiAjMDQzMjYzOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjRkRDNDAwOyBwYWRkaW5nLWJvdHRvbTogNHB4OyB0cmFuc2l0aW9uOiBhbGwgMC4zczsgfVxuXG4uY2FyZC50ZXh0X19iZyAuYnV0dG9uLWdyb3VwIGE6bm90KC5idXR0b24pOmhvdmVyLCAuY2FyZC50ZXh0X19iZyAuYnV0dG9uLWdyb3VwIGEuYWN0aXZlOm5vdCguYnV0dG9uKSB7IGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjNjQ5QURCOyB9XG5cbi5jYXJkLnRleHRfX2JnIC5idXR0b24sIC5jYXJkLnRleHRfX2JnIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5jYXJkLnRleHRfX2JnIGEgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5jYXJkLnRleHRfX2JnIC5idXR0b24sIC5jYXJkLnRleHRfX2JnIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5jYXJkLnRleHRfX2JnIGEgeyBtYXJnaW4tcmlnaHQ6IDI2cHg7IG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4uY2FyZC50ZXh0X19iZyAuY2xlYXJmaXggeyBkaXNwbGF5OiBibG9jazsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuY2FyZC50ZXh0X19iZy5uZWdhdGl2ZV9fbWFyZ2luIHsgbWFyZ2luLWxlZnQ6IC01cHg7IH0gfVxuXG4uY2FyZC50ZXh0X19iZyAuaGlnaGxvZ2h0X192aWRlb19idG4geyBwYWRkaW5nOiAxMHB4IDEwcHggMHB4IDBweDsgfVxuXG4uY2FyZC50ZXh0X19iZy5iZy1ub25lIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IHBhZGRpbmc6IDA7IH1cblxuLmNhcmQudGV4dF9fYmcuYmctbm9uZSBoMiwgLmNhcmQudGV4dF9fYmcuYmctbm9uZSBwIHsgY29sb3I6ICNGRkY7IG1hcmdpbi1ib3R0b206IDM1cHg7IH1cblxuLmNhcmQudGV4dF9fYmcuYmctbm9uZSAuc3ViaGVhZGluZyB7IGNvbG9yOiAjRkZGOyBtYXJnaW4tYm90dG9tOiAxOHB4OyBkaXNwbGF5OiBibG9jazsgfVxuXG4uY2FyZC50ZXh0X19iZy5iZy1ub25lIC5idXR0b24tZ3JvdXAgeyBtYXJnaW4tYm90dG9tOiAwcHg7IH1cblxuLmNhcmQudGV4dF9fYmcuYmctYmx1ZSB7IGJhY2tncm91bmQtY29sb3I6ICMwRjU4OUE7IH1cblxuLmNhcmQudGV4dF9fYmcuYmctYmx1ZSAuc3ViaGVhZGluZywgLmNhcmQudGV4dF9fYmcuYmctYmx1ZSBoMiwgLmNhcmQudGV4dF9fYmcuYmctYmx1ZSBwLCAuY2FyZC50ZXh0X19iZy5iZy1ibHVlIGE6bm90KC5idXR0b24pIHsgY29sb3I6ICNGRkY7IH1cblxuLmNhcmQudGV4dF9fYmcuYmcteWVsbG93IC5idXR0b24tZ3JvdXAgYTpub3QoLmJ1dHRvbikgeyBib3JkZXItYm90dG9tOiAzcHggc29saWQgIzA0MzI2MzsgdHJhbnNpdGlvbjogYWxsIDAuM3M7IH1cblxuLmNhcmQudGV4dF9fYmcuYmcteWVsbG93IC5idXR0b24tZ3JvdXAgYTpub3QoLmJ1dHRvbik6aG92ZXIsIC5jYXJkLnRleHRfX2JnLmJnLXllbGxvdyAuYnV0dG9uLWdyb3VwIGEuYWN0aXZlOm5vdCguYnV0dG9uKSB7IGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjNjQ5QURCOyB9XG5cbi5jYXJkLmNhcmRfX3NpbXBsZUhlYWRpbmcgeyBwYWRkaW5nOiAwOyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkLmNhcmRfX3NpbXBsZUhlYWRpbmcgLmhlYWRpbmcgeyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgd2lkdGg6IDEwMCU7IG1hcmdpbjogMDsgfVxuXG4uY2FyZC5jYXJkX19zaW1wbGVIZWFkaW5nIC5oZWFkaW5nIC5oNCB7IG1hcmdpbjogYXV0byAwOyB9XG5cbi5jYXJkLmNhcmRfX3NpbXBsZUhlYWRpbmcgLmhlYWRpbmcgYSB7IG1hcmdpbjogYXV0byAwIGF1dG8gYXV0bzsgfVxuXG4uY2FyZC5jYXJkX19zaW1wbGVIZWFkaW5nX2ZlYXR1cmVkIC5oZWFkaW5nIHsgZGlzcGxheTogaW5saW5lLWZsZXg7IHdpZHRoOiAxMDAlOyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkLmNhcmRfX3NpbXBsZUhlYWRpbmdfZmVhdHVyZWQgLmhlYWRpbmcgLmg0IHsgbWFyZ2luOiBhdXRvIDA7IH1cblxuLmNhcmQuY2FyZF9fc2ltcGxlSGVhZGluZ19mZWF0dXJlZCAuaGVhZGluZyBhIHsgbWFyZ2luOiBhdXRvIDAgYXV0byBhdXRvOyB9XG5cbi5jYXJkLmNhcmRfX2ZlYXR1cmVkLCAuY2FyZC5jYXJkX19zaW1wbGVIZWFkaW5nX2ltZyB7IGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvY2FyZHMvY2FyZC1oZWFkaW5nLnBuZykgbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7IGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAhaW1wb3J0YW50OyB9XG5cbi5jYXJkLmNhcmRfX2ZlYXR1cmVkIHsgbWluLWhlaWdodDogMjMwcHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmNhcmQuY2FyZF9fZmVhdHVyZWQgeyBtaW4taGVpZ2h0OiA0MDBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5jYXJkLmNhcmRfX2ZlYXR1cmVkIHsgbWFyZ2luLWJvdHRvbTogMHB4OyBib3JkZXItcmFkaXVzOiA1cHggNXB4IDBweCAwcHg7IH0gfVxuXG4uY2FyZC5jYXJkX19mZWF0dXJlZCBhIC5saW5rLWJsb2NrIHsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBibG9jazsgaGVpZ2h0OiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5jYXJkLmNhcmRfX2ZlYXR1cmVkX190ZXh0IHsgbWFyZ2luLXRvcDogMHB4OyBwYWRkaW5nOiAyMHB4OyBib3JkZXI6IDFweCBzb2xpZCAjRjBGMEYwOyBib3JkZXItcmFkaXVzOiAwcHggMHB4IDVweCA1cHg7IH0gfVxuXG4uY2FyZC5jYXJkX19mZWF0dXJlZF9fdGV4dCBhLmlubmVyLXdyYXAgeyBkaXNwbGF5OiBibG9jazsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jYXJkLmNhcmRfX2ZlYXR1cmVkX190ZXh0IC5jYXB0aW9uIHsgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuXG4uY2FyZC5jYXJkX19mZWF0dXJlZF9fdGV4dCAuY2FwdGlvbi5sYXN0IHsgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG4uY2FyZC5jYXJkX19mZWF0dXJlZF9fdGV4dCAuY2FwdGlvbi5kYXRlLCAuY2FyZC5jYXJkX19mZWF0dXJlZF9fdGV4dCAuY2FwdGlvbi5hdXRob3IgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHBhZGRpbmc6IDAgMTJweDsgfVxuXG4uY2FyZC5jYXJkX19mZWF0dXJlZF9fdGV4dCAuY2FwdGlvbi5kYXRlIHsgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5jYXJkLmNhcmRfX2ZlYXR1cmVkX190ZXh0IC5jYXB0aW9uLmF1dGhvciB7IGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfODUgSGVhdnkxNDc1NTQ0XCI7IH1cblxuLmNhcmQuY2FyZF9fZmVhdHVyZWRfX3RleHQgLmNhcHRpb24uZGF0ZSArIC5hdXRob3IgeyBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlNGU1ZTk7IH1cblxuLmNhcmQuY2FyZF9fZmVhdHVyZWRfX3RleHQgc3Bhbi5jYXB0aW9uOjpiZWZvcmUgeyB0b3A6IDZweDsgaGVpZ2h0OiAyMXB4OyB3aWR0aDogMTlweDsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbi1yaWdodDogMTBweDsgY29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2FydGljbGUtaWNvbkAyeC5wbmcpOyBiYWNrZ3JvdW5kLXNpemU6IDE5cHggMjFweDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5jYXJkLmNhcmRfX2ZlYXR1cmVkX190ZXh0IHsgcGFkZGluZzogNDBweDsgfSB9XG5cbi5jYXJkLmNhcmRfX2JsdWUgLmNlbGw6bm90KC5jYXJkX19oZWFkaW5nX19pbm5lciksIC5jYXJkLmNhcmRfX2dyZXkgLmNlbGw6bm90KC5jYXJkX19oZWFkaW5nX19pbm5lcikgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMEY1ODlBOyB9XG5cbi5jYXJkLmNhcmRfX2JsdWUgLmNlbGw6bm90KC5jYXJkX19oZWFkaW5nX19pbm5lcikgKjpub3QoYSksIC5jYXJkLmNhcmRfX2dyZXkgLmNlbGw6bm90KC5jYXJkX19oZWFkaW5nX19pbm5lcikgKjpub3QoYSkgeyBjb2xvcjogIzBGNTg5QTsgfVxuXG4uY2FyZC5jYXJkX19ibHVlIC5jZWxsOm5vdCguY2FyZF9faGVhZGluZ19faW5uZXIpIHAsIC5jYXJkLmNhcmRfX2dyZXkgLmNlbGw6bm90KC5jYXJkX19oZWFkaW5nX19pbm5lcikgcCB7IGZvbnQtc2l6ZTogMS4xMjVyZW07IGxpbmUtaGVpZ2h0OiAxLjVyZW07IGxldHRlci1zcGFjaW5nOiAwOyBmb250LXdlaWdodDogNDAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5jYXJkLmNhcmRfX2JsdWUgLmNlbGw6bm90KC5jYXJkX19oZWFkaW5nX19pbm5lcikgcCwgLmNhcmQuY2FyZF9fZ3JleSAuY2VsbDpub3QoLmNhcmRfX2hlYWRpbmdfX2lubmVyKSBwIHsgZm9udC1zaXplOiAxLjI1cmVtOyBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuXG4uY2FyZC5jYXJkX19ibHVlIC5jZWxsLmxhcmdlLW9yZGVyLTEsIC5jYXJkLmNhcmRfX2dyZXkgLmNlbGwubGFyZ2Utb3JkZXItMSB7IHBhZGRpbmctYm90dG9tOiA5MHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7IC5jYXJkLmNhcmRfX2JsdWUgLmNlbGwubGFyZ2Utb3JkZXItMSwgLmNhcmQuY2FyZF9fZ3JleSAuY2VsbC5sYXJnZS1vcmRlci0xIHsgbWFyZ2luLXRvcDogMDsgfSB9XG5cbi5jYXJkLmNhcmRfX2JsdWUgLmltZ19fZmVhdHVyZWQsIC5jYXJkLmNhcmRfX2dyZXkgLmltZ19fZmVhdHVyZWQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkLmNhcmRfX2JsdWUgLmltZ19fZmVhdHVyZWQgaW1nLCAuY2FyZC5jYXJkX19ncmV5IC5pbWdfX2ZlYXR1cmVkIGltZyB7IGhlaWdodDogMTAwJTsgd2lkdGg6IDEwMCU7IG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi5jYXJkLmNhcmRfX2JsdWUgLnZlcnRpY2FsX19hbGlnbiwgLmNhcmQuY2FyZF9fZ3JleSAudmVydGljYWxfX2FsaWduIHsgcG9zaXRpb246IHJlbGF0aXZlOyB0b3A6IDUwJTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5jYXJkLmNhcmRfX2JsdWUgLnZlcnRpY2FsX19hbGlnbiBoMiwgLmNhcmQuY2FyZF9fZ3JleSAudmVydGljYWxfX2FsaWduIGgyIHsgbWFyZ2luLWJvdHRvbTogMC43cmVtOyBtYXJnaW4tdG9wOiAwLjVyZW07IH1cblxuLmNhcmQuY2FyZF9fYmx1ZSAudmVydGljYWxfX2FsaWduIGEuYnV0dG9uLCAuY2FyZC5jYXJkX19ibHVlIC52ZXJ0aWNhbF9fYWxpZ24gbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmNhcmQuY2FyZF9fYmx1ZSAudmVydGljYWxfX2FsaWduIGEsIC5jYXJkLmNhcmRfX2dyZXkgLnZlcnRpY2FsX19hbGlnbiBhLmJ1dHRvbiwgLmNhcmQuY2FyZF9fZ3JleSAudmVydGljYWxfX2FsaWduIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5jYXJkLmNhcmRfX2dyZXkgLnZlcnRpY2FsX19hbGlnbiBhIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY2FyZC5jYXJkX19ibHVlIC52ZXJ0aWNhbF9fYWxpZ24gcC50ZXh0LWxpbmssIC5jYXJkLmNhcmRfX2dyZXkgLnZlcnRpY2FsX19hbGlnbiBwLnRleHQtbGluayB7IG1hcmdpbi10b3A6IDMwcHg7IH1cblxuLmNhcmQuY2FyZF9fYmx1ZSAudmVydGljYWxfX2FsaWduIHAudGV4dC1saW5rIGEsIC5jYXJkLmNhcmRfX2dyZXkgLnZlcnRpY2FsX19hbGlnbiBwLnRleHQtbGluayBhIHsgY29sb3I6ICMwRjU4OUE7IH1cblxuLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCAuYnV0dG9uLnRlcnRpYXJ5LCAuY2FyZC5jYXJkX19ibHVlIC5jZWxsIGxpLmZhdXgtYnV0dG9uIGEudGVydGlhcnksIGxpLmZhdXgtYnV0dG9uIC5jYXJkLmNhcmRfX2JsdWUgLmNlbGwgYS50ZXJ0aWFyeSB7IGJvcmRlcjogMXB4IHNvbGlkICMwRjU4OUE7IH1cblxuLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCAuYnV0dG9uLnRlcnRpYXJ5OmhvdmVyLCAuY2FyZC5jYXJkX19ibHVlIC5jZWxsIGEuYnV0dG9uLnRlcnRpYXJ5LmFjdGl2ZSwgLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCBsaS5mYXV4LWJ1dHRvbiBhLnRlcnRpYXJ5LmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCBhLnRlcnRpYXJ5LmFjdGl2ZSwgLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCBidXR0b24uYnV0dG9uLnRlcnRpYXJ5LmFjdGl2ZSwgLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCBsaS5mYXV4LWJ1dHRvbiBhLnRlcnRpYXJ5OmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuY2FyZC5jYXJkX19ibHVlIC5jZWxsIGEudGVydGlhcnk6aG92ZXIgeyBib3JkZXI6IDFweCBzb2xpZCAjRkRDNDAwOyB9XG5cbi5jYXJkLmNhcmRfX2JsdWUgLmNlbGwgLmJ1dHRvbi5zZWNvbmRhcnksIC5jYXJkLmNhcmRfX2JsdWUgLmNlbGwgLnNpZ251cF9fZm9ybSAuYnV0dG9uLCAuc2lnbnVwX19mb3JtIC5jYXJkLmNhcmRfX2JsdWUgLmNlbGwgLmJ1dHRvbiwgLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCBhLCAuY2FyZC5jYXJkX19ibHVlIC5jZWxsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuY2FyZC5jYXJkX19ibHVlIC5jZWxsIGEsIC5jYXJkLmNhcmRfX2JsdWUgLmNlbGwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnksIGxpLmZhdXgtYnV0dG9uIC5jYXJkLmNhcmRfX2JsdWUgLmNlbGwgYS5zZWNvbmRhcnkgeyBib3JkZXI6IDFweCBzb2xpZCAjMEY1ODlBOyB9XG5cbi5jYXJkLmNhcmRfX2JsdWUgLmNlbGwgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5jYXJkLmNhcmRfX2JsdWUgLmNlbGwgLnNpZ251cF9fZm9ybSAuYnV0dG9uOmhvdmVyLCAuc2lnbnVwX19mb3JtIC5jYXJkLmNhcmRfX2JsdWUgLmNlbGwgLmJ1dHRvbjpob3ZlciwgLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCAuc2lnbnVwX19mb3JtIGEuYnV0dG9uLmFjdGl2ZSwgLnNpZ251cF9fZm9ybSAuY2FyZC5jYXJkX19ibHVlIC5jZWxsIGEuYnV0dG9uLmFjdGl2ZSwgLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC5jYXJkLmNhcmRfX2JsdWUgLmNlbGwgYS5hY3RpdmUsIC5jYXJkLmNhcmRfX2JsdWUgLmNlbGwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuY2FyZC5jYXJkX19ibHVlIC5jZWxsIGEuYWN0aXZlLCAuY2FyZC5jYXJkX19ibHVlIC5jZWxsIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbi5hY3RpdmUsIC5zaWdudXBfX2Zvcm0gLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCBidXR0b24uYnV0dG9uLmFjdGl2ZSwgLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6aG92ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCBhOmhvdmVyLCAuY2FyZC5jYXJkX19ibHVlIC5jZWxsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTpob3ZlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAuY2FyZC5jYXJkX19ibHVlIC5jZWxsIGE6aG92ZXIsIC5jYXJkLmNhcmRfX2JsdWUgLmNlbGwgYS5idXR0b24uc2Vjb25kYXJ5LmFjdGl2ZSwgLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIC5jYXJkLmNhcmRfX2JsdWUgLmNlbGwgYS5zZWNvbmRhcnkuYWN0aXZlLCAuY2FyZC5jYXJkX19ibHVlIC5jZWxsIGJ1dHRvbi5idXR0b24uc2Vjb25kYXJ5LmFjdGl2ZSwgLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTpob3ZlciwgbGkuZmF1eC1idXR0b24gLmNhcmQuY2FyZF9fYmx1ZSAuY2VsbCBhLnNlY29uZGFyeTpob3ZlciB7IGJvcmRlcjogMXB4IHNvbGlkICMwNDMyNjM7IH1cblxuLmNhcmQuY2FyZF9faGFsdmVzIC52ZXJ0aWNhbF9fYWxpZ24geyBwb3NpdGlvbjogcmVsYXRpdmU7IHRvcDogNTAlOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cblxuLmNhcmQuY2FyZF9faGFsdmVzIC5oYWx2ZXNfbGVmdCB7IGJhY2tncm91bmQtY29sb3I6ICNGNEY0RjQ7IHBhZGRpbmctbGVmdDogNDBweDsgcGFkZGluZy1yaWdodDogNDBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgeyAuY2FyZC5jYXJkX19oYWx2ZXMgLmhhbHZlc19sZWZ0IHsgcGFkZGluZzogMjBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5jYXJkLmNhcmRfX2hhbHZlcyAuaGFsdmVzX2xlZnQgcCB7IGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG5cbi5jYXJkLmNhcmRfX2dyZXkgLmNlbGw6bm90KC5jYXJkX19oZWFkaW5nX19pbm5lcikgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyB9XG5cbi5jYXJkLmNhcmRfX2dyZXkgLmNlbGw6bm90KC5jYXJkX19oZWFkaW5nX19pbm5lcikgKjpub3QoYSkgeyBjb2xvcjogI0ZEQzQwMDsgfVxuXG4uY2FyZC5jYXJkX19ncmV5IC5jZWxsOm5vdCguY2FyZF9faGVhZGluZ19faW5uZXIpIHAgeyBjb2xvcjogI0ZEQzQwMDsgfVxuXG4uY2FyZC5jYXJkX19ncmV5IC5jZWxsOm5vdCguY2FyZF9faGVhZGluZ19faW5uZXIpIC5zdWJoZWFkaW5nIHsgY29sb3I6ICMwRjU4OUE7IH1cblxuLmNhcmQuY2FyZF9fc2ltcGxlSGVhZGluZ19mZWF0dXJlZEhhbGYgLmNhcmRfaW1nIHsgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9jYXJkcy9jYXJkLWhlYWRpbmcucG5nKSBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IGhlaWdodDogMzUwcHg7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLmNhcmQuY2FyZF9fc2ltcGxlSGVhZGluZ19mZWF0dXJlZEhhbGYgLmNhcmRfY29udGVudCAuaDU6YWZ0ZXIgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9hcnJvdy1uZXh0QDJ4LnBuZyk7IGJhY2tncm91bmQtc2l6ZTogMTJweCAxNXB4OyB3aWR0aDogMTJweDsgaGVpZ2h0OiAxNXB4OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG5cbi5jYXJkLmNhcmRfX3Byb2ZpbGUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOyBwYWRkaW5nOiAwcHggMjBweCAzMHB4IDIwcHg7IG1hcmdpbjogMCBhdXRvIDMwcHggYXV0bzsgfVxuXG4uY2FyZC5jYXJkX19wcm9maWxlIC5wcm9maWxlX2ltZyB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgd2lkdGg6IDUwJTsgaGVpZ2h0OiAwOyBwYWRkaW5nLWJvdHRvbTogNTAlOyBtYXJnaW46IDMwcHggYXV0bzsgdGV4dC1hbGlnbjogY2VudGVyOyBib3JkZXItcmFkaXVzOiA1MCU7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmNhcmQuY2FyZF9fcHJvZmlsZSAucHJvZmlsZV9pbWcgaW1nIHsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDUwJTsgbGVmdDogNTAlOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgb2JqZWN0LWZpdDogY292ZXI7IH1cblxuLmNhcmQuY2FyZF9fcHJvZmlsZSAucHJvZmlsZV9pbmZvIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5jYXJkLmNhcmRfX3Byb2ZpbGUgLnByb2ZpbGVfaW5mbyBzcGFuOmFmdGVyIHsgLyogLy8gUmVtb3ZlZCBkdWUgdG8gbG9uZyB0aXRsZSBjb25mbGljdHMgZGlzcGxheTogaW5saW5lLWJsb2NrOyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpOyBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTBweDsgd2lkdGg6IDE1cHg7IGhlaWdodDogMTBweDsgbWFyZ2luLWJvdHRvbTogMjlweDsgQHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7IG1hc2stc2l6ZTogMTVweCAxMHB4OyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9ICovIH1cblxuLmNhcmQuY2FyZF9fcHJvZmlsZSAucHJvZmlsZV9saW5rIHsgdGV4dC1hbGlnbjogY2VudGVyOyBib3JkZXItdG9wOiAxcHggc29saWQgI0Q3RDdENzsgfVxuXG4uY2FyZC5jYXJkX19wcm9maWxlIC5wcm9maWxlX2xpbmsgYSB7IG1hcmdpbjogMjJweCAwOyB9XG5cbi5jYXJkLmxpc3RpbmcgeyBiYWNrZ3JvdW5kOiAjRkZGOyBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjMDQzMjYzOyBwYWRkaW5nOiAyMHB4OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IHBvc2l0aW9uOiByZWxhdGl2ZTsgdHJhbnNpdGlvbjogYWxsIDAuM3M7IH1cblxuLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIsIGEuY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUsIGJ1dHRvbi5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nLmFjdGl2ZSB7IGJhY2tncm91bmQtY29sb3I6ICMwNDMyNjM7IGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICNGREM0MDA7IH1cblxuLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCBoMSwgYS5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nLmFjdGl2ZSAubGlzdGluZy1jb250ZW50IGgxLCBidXR0b24uY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBoMSwgLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCBoMiwgYS5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nLmFjdGl2ZSAubGlzdGluZy1jb250ZW50IGgyLCBidXR0b24uY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBoMiwgLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCBoMywgYS5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nLmFjdGl2ZSAubGlzdGluZy1jb250ZW50IGgzLCBidXR0b24uY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBoMywgLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCBoNCwgYS5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nLmFjdGl2ZSAubGlzdGluZy1jb250ZW50IGg0LCBidXR0b24uY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBoNCwgLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCBoNSwgYS5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nLmFjdGl2ZSAubGlzdGluZy1jb250ZW50IGg1LCBidXR0b24uY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBoNSwgLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZzpob3ZlciAubGlzdGluZy1jb250ZW50IHAsIGEuY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBhLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgcCwgYnV0dG9uLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgYnV0dG9uLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgcCwgLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCBoNiwgYS5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nLmFjdGl2ZSAubGlzdGluZy1jb250ZW50IGg2LCBidXR0b24uY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBoNiwgLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCAudXBkYXRlZCAuZGF0ZSwgLnVwZGF0ZWQgLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCAuZGF0ZSwgYS5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nLmFjdGl2ZSAubGlzdGluZy1jb250ZW50IC51cGRhdGVkIC5kYXRlLCAudXBkYXRlZCBhLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgLmRhdGUsIGJ1dHRvbi5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nLmFjdGl2ZSAubGlzdGluZy1jb250ZW50IC51cGRhdGVkIC5kYXRlLCAudXBkYXRlZCBidXR0b24uY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCAuZGF0ZSwgLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCBwLCBhLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgcCwgYnV0dG9uLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgcCwgLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCBiLCBhLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgYiwgYnV0dG9uLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgYiwgLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCBhLCBhLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgYSwgYnV0dG9uLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgYSwgLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCBzdW1tYXJ5LCBhLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgc3VtbWFyeSwgYnV0dG9uLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgc3VtbWFyeSwgLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCBkaXYsIGEuY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBkaXYsIGJ1dHRvbi5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nLmFjdGl2ZSAubGlzdGluZy1jb250ZW50IGRpdiB7IGNvbG9yOiAjRkZGOyB9XG5cbi5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nOmhvdmVyIC5saXN0aW5nLWNvbnRlbnQgYS5jYXJkIGg1LCBhLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgYS5jYXJkIGg1LCBidXR0b24uY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBhLmNhcmQgaDUsIC5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nOmhvdmVyIC5saXN0aW5nLWNvbnRlbnQgYS5jYXJkIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nOmhvdmVyIC5saXN0aW5nLWNvbnRlbnQgYS5jYXJkIHAsIGEuY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBhLmNhcmQgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgYS5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nLmFjdGl2ZSAubGlzdGluZy1jb250ZW50IGEuY2FyZCBwLCBidXR0b24uY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBhLmNhcmQgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgYnV0dG9uLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgYS5jYXJkIHAgeyBjb2xvcjogIzA0MzI2MzsgfVxuXG4uY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZzpob3ZlciAubGlzdGluZy1jb250ZW50IGEuY2FyZDpob3ZlciBoNSwgYS5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nLmFjdGl2ZSAubGlzdGluZy1jb250ZW50IGEuY2FyZDpob3ZlciBoNSwgYnV0dG9uLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgYS5jYXJkOmhvdmVyIGg1LCAuY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZzpob3ZlciAubGlzdGluZy1jb250ZW50IGEuY2FyZC5hY3RpdmUgaDUsIGEuY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBhLmNhcmQuYWN0aXZlIGg1LCBidXR0b24uY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBhLmNhcmQuYWN0aXZlIGg1LCAuY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZzpob3ZlciAubGlzdGluZy1jb250ZW50IGEuY2FyZDpob3ZlciBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZzpob3ZlciAubGlzdGluZy1jb250ZW50IGEuY2FyZDpob3ZlciBwLCBhLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgYS5jYXJkOmhvdmVyIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIGEuY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBhLmNhcmQ6aG92ZXIgcCwgYnV0dG9uLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgYS5jYXJkOmhvdmVyIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIGJ1dHRvbi5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nLmFjdGl2ZSAubGlzdGluZy1jb250ZW50IGEuY2FyZDpob3ZlciBwLCAuY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZzpob3ZlciAubGlzdGluZy1jb250ZW50IGEuY2FyZC5hY3RpdmUgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCBhLmNhcmQuYWN0aXZlIHAsIGEuY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBhLmNhcmQuYWN0aXZlIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIGEuY2FyZC5saXN0aW5nLnBvc3RfbGlzdGluZy5hY3RpdmUgLmxpc3RpbmctY29udGVudCBhLmNhcmQuYWN0aXZlIHAsIGJ1dHRvbi5jYXJkLmxpc3RpbmcucG9zdF9saXN0aW5nLmFjdGl2ZSAubGlzdGluZy1jb250ZW50IGEuY2FyZC5hY3RpdmUgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgYnV0dG9uLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgYS5jYXJkLmFjdGl2ZSBwIHsgY29sb3I6ICNGREM0MDA7IH1cblxuLmNhcmQubGlzdGluZy5wb3N0X2xpc3Rpbmc6aG92ZXIgLmxpc3RpbmctY29udGVudCBzdW1tYXJ5OmFmdGVyLCBhLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgc3VtbWFyeTphZnRlciwgYnV0dG9uLmNhcmQubGlzdGluZy5wb3N0X2xpc3RpbmcuYWN0aXZlIC5saXN0aW5nLWNvbnRlbnQgc3VtbWFyeTphZnRlciB7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LXllbGxvdy5zdmcpOyBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTFweDsgd2lkdGg6IDE1cHg7IGhlaWdodDogMTFweDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBwb3NpdGlvbjogcmVsYXRpdmU7IHRvcDogMHB4OyByaWdodDogLTEycHg7IG1hcmdpbi10b3A6IDA7IH1cblxuLmNhcmQubGlzdGluZy55ZWxsb3dfbGlzdGluZyB7IGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICNGREM0MDA7IH1cblxuLmNhcmQubGlzdGluZyAuZ3VpZGVsaW5lX2xhYmVsIHsgZGlzcGxheTogYmxvY2s7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiAjNzY3MTc1OyB9XG5cbi5jYXJkLmxpc3RpbmcgLmd1aWRlbGluZV9sYWJlbCBzcGFuIHsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IGNvbG9yOiAjRkRDNDAwOyBmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzY1IE1lZGl1bTE0NzU1MzJcIiwgc2Fucy1zZXJpZjsgZm9udC13ZWlnaHQ6IDQwMDsgZm9udC1zaXplOiAwLjg3NXJlbTsgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7IH1cblxuLmNhcmQubGlzdGluZyAuZ3VpZGVsaW5lX2xhYmVsLnllYXIgeyBmbG9hdDogcmlnaHQ7IH1cblxuLmNhcmQubGlzdGluZyAudGFnc19sYWJlbCB7IGNvbG9yOiAjNzY3MTc1OyB9XG5cbi5jYXJkLmxpc3RpbmcgLmxpc3RpbmctY29udGVudCB7IHotaW5kZXg6IDE7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uY2FyZC5saXN0aW5nIC5saXN0aW5nLWNvbnRlbnQgLnRhZ3MgeyBtYXJnaW4tYm90dG9tOiAxOHB4OyB9XG5cbi5jYXJkLmxpc3RpbmcgLmxpc3RpbmctY29udGVudCAuYXV0aG9ycywgLmNhcmQubGlzdGluZyAubGlzdGluZy1jb250ZW50IC5wdWJsaXNoZWQtdHlwZSwgLmNhcmQubGlzdGluZyAubGlzdGluZy1jb250ZW50IC5wdWJsaXNoZWQteWVhciB7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLmNhcmQubGlzdGluZyAub3ZlcmxheS1saW5rIH4gLmxpc3RpbmctY29udGVudCB7IHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyB7IGJvcmRlci10b3A6IDJweCBzb2xpZCAjRTRFNEU0OyBwYWRkaW5nLXRvcDogN3B4OyBwb2ludGVyLWV2ZW50czogYWxsOyB9XG5cbi5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyB1bCB7IG1hcmdpbjogNDZweCAwIDAgMjZweCAhaW1wb3J0YW50OyB9XG5cbi5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyB1bCBsaTpiZWZvcmUgeyBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIHN1bW1hcnkgeyBvdXRsaW5lOiBub25lOyB9XG5cbi5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyAuY2FyZCB7IGRpc3BsYXk6IGZsZXg7IGZsZXg6IDEgMCBhdXRvOyBhbGlnbi1pdGVtczogY2VudGVyOyBiYWNrZ3JvdW5kOiAjRjBGMEYwOyBwYWRkaW5nOiAxOHB4IDYwcHggMThweCAyMHB4OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IHBvaW50ZXItZXZlbnRzOiBhbGw7IHRyYW5zaXRpb246IGFsbCAwLjI1czsgfVxuXG4uY2FyZC5saXN0aW5nIC50cmFuc2xhdGlvbnMgLmNhcmQgc3Bhbi5sYWJlbCB7IG1hcmdpbi1yaWdodDogMTRweDsgdHJhbnNpdGlvbjogYWxsIDAuMjVzOyB9XG5cbi5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyAuY2FyZCAubGFuZyB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIC5jYXJkIGg1LCAuY2FyZC5saXN0aW5nIC50cmFuc2xhdGlvbnMgLmNhcmQgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIC5jYXJkIHAgeyBtYXJnaW4tYm90dG9tOiAwOyB0cmFuc2l0aW9uOiBhbGwgMC4yNXM7IH1cblxuLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIC5jYXJkOmFmdGVyIHsgY29udGVudDogJyc7IGJhY2tncm91bmQ6IHVybChcIi4uL2ljb25zL25ldy13aW5kb3ctYmx1ZS5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIvY29udGFpbjsgd2lkdGg6IDE4cHg7IGhlaWdodDogMThweDsgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogMjBweDsgdG9wOiA1MCU7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuY2FyZC5saXN0aW5nIC50cmFuc2xhdGlvbnMgLmNhcmQ6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvbmV3LXdpbmRvdy1ibHVlLnN2Zyk7IG1hc2stc2l6ZTogY29udGFpbjsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbi5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyAuY2FyZDpob3ZlciwgLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIGEuY2FyZC5hY3RpdmUsIC5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyBidXR0b24uY2FyZC5hY3RpdmUsIC5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyAuY2FyZDpmb2N1cyB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IH1cblxuLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIC5jYXJkOmhvdmVyIHNwYW4ubGFiZWwsIC5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyBhLmNhcmQuYWN0aXZlIHNwYW4ubGFiZWwsIC5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyBidXR0b24uY2FyZC5hY3RpdmUgc3Bhbi5sYWJlbCwgLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIC5jYXJkOmZvY3VzIHNwYW4ubGFiZWwgeyBiYWNrZ3JvdW5kOiAjRkRDNDAwOyB9XG5cbi5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyAuY2FyZDpob3ZlciBoNSwgLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIGEuY2FyZC5hY3RpdmUgaDUsIC5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyBidXR0b24uY2FyZC5hY3RpdmUgaDUsIC5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyAuY2FyZDpob3ZlciBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZC5saXN0aW5nIC50cmFuc2xhdGlvbnMgLmNhcmQ6aG92ZXIgcCwgLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIGEuY2FyZC5hY3RpdmUgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIGEuY2FyZC5hY3RpdmUgcCwgLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIGJ1dHRvbi5jYXJkLmFjdGl2ZSBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZC5saXN0aW5nIC50cmFuc2xhdGlvbnMgYnV0dG9uLmNhcmQuYWN0aXZlIHAsIC5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyAuY2FyZDpmb2N1cyBoNSwgLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIC5jYXJkOmZvY3VzIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyAuY2FyZDpmb2N1cyBwIHsgY29sb3I6ICNGREM0MDA7IH1cblxuLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIC5jYXJkOmhvdmVyOmFmdGVyLCAuY2FyZC5saXN0aW5nIC50cmFuc2xhdGlvbnMgYS5jYXJkLmFjdGl2ZTphZnRlciwgLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIGJ1dHRvbi5jYXJkLmFjdGl2ZTphZnRlciwgLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIC5jYXJkOmZvY3VzOmFmdGVyIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaWNvbnMvbmV3LXdpbmRvdy15ZWxsb3cuc3ZnXCIpOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IC5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyAuY2FyZDpob3ZlcjphZnRlciwgLmNhcmQubGlzdGluZyAudHJhbnNsYXRpb25zIGEuY2FyZC5hY3RpdmU6YWZ0ZXIsIC5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyBidXR0b24uY2FyZC5hY3RpdmU6YWZ0ZXIsIC5jYXJkLmxpc3RpbmcgLnRyYW5zbGF0aW9ucyAuY2FyZDpmb2N1czphZnRlciB7IGJhY2tncm91bmQ6ICNGREM0MDA7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9uZXctd2luZG93LXllbGxvdy5zdmcpOyB9IH1cblxuLmNhcmQuY2FyZF9fZXZlbnQgLnRleHRfX3dyYXBwZXIgLmRhdGUgeyBkaXNwbGF5OiBibG9jazsgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG4uY2FyZC5jYXJkX19ldmVudCAudGV4dF9fd3JhcHBlciAuY2F0ZWdvcnkgeyBmb250LXNpemU6IDAuODc1cmVtOyBjb2xvcjogIzc2NzE3NTsgbWFyZ2luLWJvdHRvbTogMjVweDsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5jYXJkLmNhcmRfX2V2ZW50IC50ZXh0X193cmFwcGVyIC5jYXRlZ29yeS5sb2NhdGlvbjo6YmVmb3JlIHsgdG9wOiA0cHg7IG1hcmdpbi1yaWdodDogMTBweDsgaGVpZ2h0OiAxOXB4OyB3aWR0aDogMTlweDsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9nbG9iZS1pY29uQDJ4LnBuZykgbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXNpemU6IDE5cHggMTlweDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jYXJkLmNhcmRfX2V2ZW50IC50ZXh0X193cmFwcGVyLmNvbC0tZmlyc3QgeyBwYWRkaW5nLWJvdHRvbTogNDBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuY2FyZC5jYXJkX19ldmVudCAudGV4dF9fd3JhcHBlci5jb2wtLWZpcnN0IHsgcGFkZGluZy1ib3R0b206IHVuc2V0OyB9IH1cblxuLmNhcmQuY2FyZF9fZXZlbnQgLmJ1dHRvbl9fd3JhcCBhIHsgd2lkdGg6IDEwMCU7IG1heC13aWR0aDogMTAwJTsgbWFyZ2luOiAwIGF1dG8gMjBweCBhdXRvOyBwYWRkaW5nLWxlZnQ6IDQwcHg7IHBhZGRpbmctcmlnaHQ6IDQwcHg7IH1cblxuLmNhcmQuY2FyZF9fZXZlbnQuY2FyZF9fZXZlbnRfc2ltcGxlIHsgbWluLWhlaWdodDogMTEwcHg7IH1cblxuLmNhcmQuY2FyZF9fZXZlbnQuY2FyZF9fZXZlbnRfc2ltcGxlIC5jb2wtLWZpcnN0IHsgZGlzcGxheTogZmxleDsgaGVpZ2h0OiAxMDAlOyB9XG5cbi5jYXJkLmNhcmRfX2V2ZW50LmNhcmRfX2V2ZW50X3NpbXBsZSAuY29sLS1maXJzdCAuZGF0ZSB7IG1hcmdpbjogYXV0bzsgfVxuXG4uY2FyZC5jYXJkX19ldmVudC5jYXJkX19ldmVudF9pbWFnZSB7IG1pbi1oZWlnaHQ6IDE1MHB4OyB9XG5cbi5jYXJkLmNhcmRfX2V2ZW50LmNhcmRfX2V2ZW50X2ltYWdlIC5ldmVudF9pbWdfYmcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cblxuLmNhcmQuY2FyZF9fZGV0YWlscyB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgcGFkZGluZzogMThweCAyNHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbms6aG92ZXIsIGEuY2FyZC5jYXJkX19kZXRhaWxzLmhhcy1saW5rLmFjdGl2ZSwgYnV0dG9uLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluay5hY3RpdmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyB9XG4gIC5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbms6aG92ZXIgaDQsIGEuY2FyZC5jYXJkX19kZXRhaWxzLmhhcy1saW5rLmFjdGl2ZSBoNCwgYnV0dG9uLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluay5hY3RpdmUgaDQsIC5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbms6aG92ZXIgaDUsIGEuY2FyZC5jYXJkX19kZXRhaWxzLmhhcy1saW5rLmFjdGl2ZSBoNSwgYnV0dG9uLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluay5hY3RpdmUgaDUsIC5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbms6aG92ZXIgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluazpob3ZlciBwLCBhLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluay5hY3RpdmUgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgYS5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbmsuYWN0aXZlIHAsIGJ1dHRvbi5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbmsuYWN0aXZlIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIGJ1dHRvbi5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbmsuYWN0aXZlIHAsIC5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbms6aG92ZXIgcCwgYS5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbmsuYWN0aXZlIHAsIGJ1dHRvbi5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbmsuYWN0aXZlIHAsIC5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbms6aG92ZXIgYVtocmVmXj1cIm1haWx0bzpcIl0sIGEuY2FyZC5jYXJkX19kZXRhaWxzLmhhcy1saW5rLmFjdGl2ZSBhW2hyZWZePVwibWFpbHRvOlwiXSwgYnV0dG9uLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluay5hY3RpdmUgYVtocmVmXj1cIm1haWx0bzpcIl0sIC5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbms6aG92ZXIgYVtocmVmXj1cInRlbDpcIl0sIGEuY2FyZC5jYXJkX19kZXRhaWxzLmhhcy1saW5rLmFjdGl2ZSBhW2hyZWZePVwidGVsOlwiXSwgYnV0dG9uLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluay5hY3RpdmUgYVtocmVmXj1cInRlbDpcIl0sIC5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbms6aG92ZXIgbGksIGEuY2FyZC5jYXJkX19kZXRhaWxzLmhhcy1saW5rLmFjdGl2ZSBsaSwgYnV0dG9uLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluay5hY3RpdmUgbGksIC5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbms6aG92ZXIgYSwgYS5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbmsuYWN0aXZlIGEsIGJ1dHRvbi5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbmsuYWN0aXZlIGEgeyBjb2xvcjogIzA0MzI2MzsgfSB9XG5cbi5jYXJkLmNhcmRfX2RldGFpbHMgLmNhcmRfX2RldGFpbHNfbGluayB7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IH1cblxuLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluayBoNCwgLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluayBoNSwgLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluayBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZC5jYXJkX19kZXRhaWxzLmhhcy1saW5rIHAsIC5jYXJkLmNhcmRfX2RldGFpbHMuaGFzLWxpbmsgcCwgLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluayBhW2hyZWZePVwibWFpbHRvOlwiXSwgLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluayBhW2hyZWZePVwidGVsOlwiXSwgLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluayBsaSwgLmNhcmQuY2FyZF9fZGV0YWlscy5oYXMtbGluayBhIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jYXJkLmNhcmRfX2RldGFpbHMgLnRleHRfX3dyYXBwZXIgaDUsIC5jYXJkLmNhcmRfX2RldGFpbHMgLnRleHRfX3dyYXBwZXIgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmQuY2FyZF9fZGV0YWlscyAudGV4dF9fd3JhcHBlciBwIHsgZm9udC1zaXplOiAxOHB4OyB9XG5cbi5jYXJkLmNhcmRfX2RldGFpbHMgLnRleHRfX3dyYXBwZXIgLnN1YmhlYWRpbmcgeyBkaXNwbGF5OiBibG9jazsgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG4uY2FyZC5jYXJkX19kZXRhaWxzIC50ZXh0X193cmFwcGVyIC5kYXRlIHsgZGlzcGxheTogYmxvY2s7IG1hcmdpbi1ib3R0b206IDI1cHg7IH1cblxuLmNhcmQuY2FyZF9fZGV0YWlscyAudGV4dF9fd3JhcHBlciAuY2F0ZWdvcnkgeyBmb250LXNpemU6IDAuODc1cmVtOyBjb2xvcjogIzc2NzE3NTsgbWFyZ2luLWJvdHRvbTogMjVweDsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5jYXJkLmNhcmRfX2RldGFpbHMgLnRleHRfX3dyYXBwZXIgLmNhdGVnb3J5LmxvY2F0aW9uOjpiZWZvcmUgeyB0b3A6IDRweDsgbWFyZ2luLXJpZ2h0OiAxMHB4OyBoZWlnaHQ6IDE5cHg7IHdpZHRoOiAxOXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgY29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2dsb2JlLWljb25AMngucG5nKSBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogMTlweCAxOXB4OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmNhcmQuY2FyZF9fZGV0YWlscyAudGV4dF9fd3JhcHBlciAuY2FyZF9fZGV0YWlsc19jb250YWN0cyB7IG1hcmdpbjogMTBweCAwcHg7IH1cblxuLmNhcmQuY2FyZF9fZGV0YWlscyAudGV4dF9fd3JhcHBlciAuY2FyZF9fZGV0YWlsc19jb250YWN0cyBpIHsgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG5cbi5jYXJkLmNhcmRfX2RldGFpbHMgLnRleHRfX3dyYXBwZXIgLmNhcmRfX2RldGFpbHNfY29udGFjdHMgYSB7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tdG9wOiAyMHB4OyB9XG5cbi5jYXJkLmNhcmRfX2RldGFpbHMgLnRleHRfX3dyYXBwZXIuY29sLS1maXJzdCB7IHBhZGRpbmctYm90dG9tOiA0MHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5jYXJkLmNhcmRfX2RldGFpbHMgLnRleHRfX3dyYXBwZXIuY29sLS1maXJzdCB7IHBhZGRpbmctYm90dG9tOiB1bnNldDsgfSB9XG5cbi5jYXJkLmNhcmRfX2RldGFpbHMgLnRleHRfX3dyYXBwZXIgYSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNGREM0MDA7IHBhZGRpbmctYm90dG9tOiA0cHg7IHRyYW5zaXRpb246IGFsbCAwLjNzOyB9XG5cbi5jYXJkLmNhcmRfX2RldGFpbHMgLnRleHRfX3dyYXBwZXIgYTpob3ZlciwgLmNhcmQuY2FyZF9fZGV0YWlscyAudGV4dF9fd3JhcHBlciBhLmFjdGl2ZSB7IGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjNjQ5QURCOyB9XG5cbi5jYXJkLmNhcmRfX2RldGFpbHMgYS5zaW1wbGVfbGluayB7IGZvbnQtd2VpZ2h0OiBib2xkOyBkaXNwbGF5OiBibG9jazsgbWFyZ2luLXRvcDogMzBweDsgfVxuXG4uY2FyZC5jYXJkX19kZXRhaWxzIC5idXR0b25fX3dyYXAgYSB7IHdpZHRoOiAxMDAlOyBtYXgtd2lkdGg6IDEwMCU7IG1hcmdpbjogMCBhdXRvIDIwcHggYXV0bzsgcGFkZGluZy1sZWZ0OiA0MHB4OyBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9XG5cbi5jYXJkLmNhcmRfX2RldGFpbHMgLmJ1dHRvbl9fd3JhcCBhOmxhc3Qtb2YtdHlwZSB7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLmNhcmQuY2FyZF9fZGV0YWlscyAuY29udGVudF9fd3JhcCB7IGRpc3BsYXk6IGZsZXg7IH1cblxuLmNhcmQuY2FyZF9fZGV0YWlscy5tZWRpdW0tNiB7IHBhZGRpbmc6IDIwcHg7IGRpc3BsYXk6IGdyaWQ7IH1cblxuLmNhcmQuY2FyZF9fZGV0YWlscy5jYXJkX19kZXRhaWxzX3NpbXBsZSB7IGJvcmRlci10b3A6IDVweCBzb2xpZCAjRkRDNDAwOyB9XG5cbi5jYXJkLmNhcmRfX2RldGFpbHMuY2FyZF9fZGV0YWlsc19zaW1wbGUgYSB7IGZvbnQtd2VpZ2h0OiBib2xkOyBsaW5lLWhlaWdodDogMzNweDsgfVxuXG4uY2FyZC5jYXJkX19kZXRhaWxzLmNhcmRfX2RldGFpbHNfc2luZ2xlIHsgcGFkZGluZy10b3A6IDQwcHg7IHBhZGRpbmctYm90dG9tOiA0MHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5jYXJkLmNhcmRfX2RldGFpbHMuY2FyZF9fZGV0YWlsc19zaW5nbGUgLmNvbC0tZmlyc3QgeyBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9IH1cblxuLmNhcmQuY2FyZF9fZGV0YWlscy5jYXJkX19kZXRhaWxzX3NpbmdsZSAuY29sLS1maXJzdCAuYnV0dG9uLnRhZywgLmNhcmQuY2FyZF9fZGV0YWlscy5jYXJkX19kZXRhaWxzX3NpbmdsZSAuY29sLS1maXJzdCBsaS5mYXV4LWJ1dHRvbiBhLnRhZywgbGkuZmF1eC1idXR0b24gLmNhcmQuY2FyZF9fZGV0YWlscy5jYXJkX19kZXRhaWxzX3NpbmdsZSAuY29sLS1maXJzdCBhLnRhZyB7IG1hcmdpbi10b3A6IDVweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuY2FyZC5jYXJkX19kZXRhaWxzLmNhcmRfX2RldGFpbHNfc2luZ2xlIC5jb2wtLWZpcnN0IC5idXR0b24udGFnLCAuY2FyZC5jYXJkX19kZXRhaWxzLmNhcmRfX2RldGFpbHNfc2luZ2xlIC5jb2wtLWZpcnN0IGxpLmZhdXgtYnV0dG9uIGEudGFnLCBsaS5mYXV4LWJ1dHRvbiAuY2FyZC5jYXJkX19kZXRhaWxzLmNhcmRfX2RldGFpbHNfc2luZ2xlIC5jb2wtLWZpcnN0IGEudGFnIHsgcGFkZGluZzogNXB4IDIwcHggNXB4IDIwcHg7IHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH0gfVxuXG4uY2FyZC5jYXJkX19kZXRhaWxzLmNhcmRfX2RldGFpbHNfc2luZ2xlIC5jb2wtLWZpcnN0IC5kYXRlIHsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4uY2FyZC5jYXJkX19kZXRhaWxzLmNhcmRfX2RldGFpbHNfc29jaWV0eSB7IHBhZGRpbmc6IDUwcHggMjBweCAyMHB4IDIwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uY2FyZC5jYXJkX19kZXRhaWxzLmNhcmRfX2RldGFpbHNfc29jaWV0eSAuYnV0dG9uLnRhZy5ub19saW5rLCAuY2FyZC5jYXJkX19kZXRhaWxzLmNhcmRfX2RldGFpbHNfc29jaWV0eSBsaS5mYXV4LWJ1dHRvbiBhLnRhZy5ub19saW5rLCBsaS5mYXV4LWJ1dHRvbiAuY2FyZC5jYXJkX19kZXRhaWxzLmNhcmRfX2RldGFpbHNfc29jaWV0eSBhLnRhZy5ub19saW5rIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IGJvcmRlcjogbm9uZTsgfVxuXG4uY2FyZC5jYXJkX19kZXRhaWxzLmNhcmRfX2RldGFpbHNfc29jaWV0eSAuY29udGVudF9fd3JhcCB7IG1hcmdpbi1ib3R0b206IDQwcHg7IH1cblxuLmNhcmQuY2FyZF9fZGV0YWlscy5jYXJkX19kZXRhaWxzX3NvY2lldHkgLmNvbnRlbnRfX3dyYXAgaDUsIC5jYXJkLmNhcmRfX2RldGFpbHMuY2FyZF9fZGV0YWlsc19zb2NpZXR5IC5jb250ZW50X193cmFwIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkLmNhcmRfX2RldGFpbHMuY2FyZF9fZGV0YWlsc19zb2NpZXR5IC5jb250ZW50X193cmFwIHAgeyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5jYXJkLmNhcmRfX2RldGFpbHMuY2FyZF9fZGV0YWlsc19zb2NpZXR5IC5idXR0b25fX3dyYXAgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBwYWRkaW5nOiAwcHggMjBweDsgbGVmdDogMHB4OyBib3R0b206IDIwcHg7IH1cblxuLmNhcmQuY2FyZF9fZGV0YWlscy5jYXJkX19kZXRhaWxzX3NjaWVuY2UgeyBwYWRkaW5nOiAzMHB4IDIwcHg7IH1cblxuLmNhcmQuY2FyZF9fZGV0YWlscy5jYXJkX19kZXRhaWxzX3NjaWVuY2UgLm9yZ2FuaXplciB7IGNvbG9yOiAjMEY1ODlBOyB9XG5cbi5jYXJkLmNhcmRfX2RldGFpbHMuY2FyZF9fZGV0YWlsc19zY2llbmNlIC5idXR0b25fX3dyYXAgYSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uY2FyZC5jYXJkX19kZXRhaWxzLmNhcmRfX2RldGFpbHNfc2NpZW5jZSAuYnV0dG9uX193cmFwIGE6YmVmb3JlIHsgdG9wOiAycHg7IG1hcmdpbi1yaWdodDogMTBweDsgaGVpZ2h0OiAxNXB4OyB3aWR0aDogMTVweDsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9zY2llbmNlX2JhcnJvdy5zdmcpIG5vLXJlcGVhdDsgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuY2FyZC5jYXJkX19kZXRhaWxzLmNhcmRfX2RldGFpbHNfc2NpZW5jZSAuYnV0dG9uX193cmFwIGE6YmVmb3JlIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL3NjaWVuY2VfYmFycm93LnN2Zyk7IG1hc2stc2l6ZTogMTVweCAxNXB4OyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9IH1cblxuLmNhcmQuY2FyZF9fZGV0YWlscy5jYXJkX19kZXRhaWxzX3RhZyB7IHBhZGRpbmc6IDQ2cHggMjRweCAxOHB4IDI0cHg7IH1cblxuLmNhcmQuY2FyZF9fZGV0YWlscyAudGFnLm5vX2xpbmsgeyBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogNXB4IDI1cHg7IGJhY2tncm91bmQtY29sb3I6ICMwRjU4OUE7IGNvbG9yOiAjRkZGOyBsZXR0ZXItc3BhY2luZzogMC4yNzVlbTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV81NSBSb21hbjE0NzU1MjBcIjsgZm9udC1zaXplOiAwLjc1cmVtOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IC8qIG1hcmdpbi10b3A6IC0xOHB4OyAqLyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMHB4OyB3aWR0aDogMTAwJTsgYm9yZGVyLXJhZGl1czogMHB4OyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5jYXJkLmNhcmRfX3RlYW0gLmltZ19fd3JhcHBlciB7IGJvcmRlci1yYWRpdXM6IDUwJTsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5jYXJkLmNhcmRfX3RlYW0gLmltZ19fd3JhcHBlciBpbWcgeyBtYXgtaGVpZ2h0OiA1MHB4OyBib3JkZXItcmFkaXVzOiA1MCU7IH1cblxuLmNhcmQuY2FyZF9fdGVhbSAudGV4dF9fd3JhcHBlciB7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLmNhcmQuY2FyZF9fdGVhbSAudGV4dF9fd3JhcHBlciBwIHsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4uY2FyZC5jYXJkX190ZWFtIC50ZXh0X193cmFwcGVyIGEgeyBmb250LXdlaWdodDogMTAwICFpbXBvcnRhbnQ7IGNvbG9yOiAjNzY3MTc1ICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgLmNhcmQuY2FyZF9fdGVhbSAuYnV0dG9uX19zaW1wbGUgeyBwYWRkaW5nLWxlZnQ6IDEwcHg7IHBhZGRpbmctcmlnaHQ6IDEwcHg7IH0gfVxuXG4uY2FyZC5jYXJkX190ZWFtX2ltZyAuaW1nX193cmFwcGVyIHsgYm9yZGVyLXJhZGl1czogNTAlOyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLmNhcmQuY2FyZF9fdGVhbV9pbWcgLnRleHRfX3dyYXBwZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IHBhZGRpbmc6IDIwcHggNDBweDsgfVxuXG4uY2FyZC5jYXJkX190ZWFtX2ltZyAudGV4dF9fd3JhcHBlciAuaDYsIC5jYXJkLmNhcmRfX3RlYW1faW1nIC50ZXh0X193cmFwcGVyIGg2LCAuY2FyZC5jYXJkX190ZWFtX2ltZyAudGV4dF9fd3JhcHBlciAudXBkYXRlZCAuZGF0ZSwgLnVwZGF0ZWQgLmNhcmQuY2FyZF9fdGVhbV9pbWcgLnRleHRfX3dyYXBwZXIgLmRhdGUgeyBjb2xvcjogIzBGNTg5QTsgfVxuXG4uY2FyZC5jYXJkX19pbWdfZGV0YWlscyAuaW1hZ2VfX3dyYXBwZXIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGhlaWdodDogMTAwJTsgd2lkdGg6IDEwMCU7IH1cblxuLmNhcmQuY2FyZF9faW1nX2RldGFpbHMgaDQgeyBwYWRkaW5nOiAyMDBweCAyMHB4IDIwcHggMjBweDsgbWFyZ2luOiAwcHg7IH1cblxuLmNhcmQuY2FyZF9fYWNjb3JkaWFuLW5leHQgeyBoZWlnaHQ6IDEwMCU7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5jYXJkLmNhcmRfZG93bmxvYWRfbGlzdCB7IHBhZGRpbmctdG9wOiAzMHB4OyB9XG5cbi5jYXJkLmNhcmRfZG93bmxvYWRfbGlzdCAuZG93bmxvYWRfbGlzdCwgLmNhcmQuY2FyZF9kb3dubG9hZF9saXN0IC5ub3JtYWxfbGlzdCB7IG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG5cbi5jYXJkLmNhcmRfZG93bmxvYWRfbGlzdCAuZG93bmxvYWRfbGlzdCBsaSwgLmNhcmQuY2FyZF9kb3dubG9hZF9saXN0IC5ub3JtYWxfbGlzdCBsaSB7IGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLmNhcmQuY2FyZF9kb3dubG9hZF9saXN0IC5kb3dubG9hZF9saXN0IGxpOmxhc3QtY2hpbGQsIC5jYXJkLmNhcmRfZG93bmxvYWRfbGlzdCAubm9ybWFsX2xpc3QgbGk6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcmQuY2FyZF9kb3dubG9hZF9saXN0IC5kb3dubG9hZF9saXN0IGxpOjpiZWZvcmUsIC5jYXJkLmNhcmRfZG93bmxvYWRfbGlzdCAubm9ybWFsX2xpc3QgbGk6OmJlZm9yZSB7IGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uY2FyZC5jYXJkX2Rvd25sb2FkX2xpc3QgLmRvd25sb2FkX2xpc3QgbGkgYSwgLmNhcmQuY2FyZF9kb3dubG9hZF9saXN0IC5ub3JtYWxfbGlzdCBsaSBhIHsgZGlzcGxheTogaW5saW5lLWZsZXg7IHBhZGRpbmc6IDE1cHggNTBweCAxNXB4IDE1cHg7IHdpZHRoOiAxMDAlOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IHBvc2l0aW9uOiByZWxhdGl2ZTsgYm90dG9tOiAwOyBsZWZ0OiAwOyBjb2xvcjogIzA0MzI2MzsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV84NSBIZWF2eTE0NzU1NDRcIjsgYmFja2dyb3VuZC1jb2xvcjogI0YwRjBGMDsgYm9yZGVyLXJhZGl1czogNXB4OyB9XG5cbi5jYXJkLmNhcmRfZG93bmxvYWRfbGlzdCAuZG93bmxvYWRfbGlzdCBsaSBhOmFmdGVyLCAuY2FyZC5jYXJkX2Rvd25sb2FkX2xpc3QgLm5vcm1hbF9saXN0IGxpIGE6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMThweDsgd2lkdGg6IDIwcHg7IGhlaWdodDogMThweDsgcmlnaHQ6IDIwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1MCU7IG1hcmdpbi10b3A6IC0wLjVyZW07IH1cblxuLmNhcmQuY2FyZF9kb3dubG9hZF9saXN0IC5kb3dubG9hZF9saXN0IGxpIGE6aG92ZXIsIC5jYXJkLmNhcmRfZG93bmxvYWRfbGlzdCAuZG93bmxvYWRfbGlzdCBsaSBhLmFjdGl2ZSwgLmNhcmQuY2FyZF9kb3dubG9hZF9saXN0IC5ub3JtYWxfbGlzdCBsaSBhOmhvdmVyLCAuY2FyZC5jYXJkX2Rvd25sb2FkX2xpc3QgLm5vcm1hbF9saXN0IGxpIGEuYWN0aXZlIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQzMjYzOyBjb2xvcjogI0ZEQzQwMDsgfVxuXG4uY2FyZC5jYXJkX2Rvd25sb2FkX2xpc3QgLmRvd25sb2FkX2xpc3QgbGkgYTphZnRlciB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pY29ucy9kb3dubG9hZC1pY29uLnN2Zyk7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgLmNhcmQuY2FyZF9kb3dubG9hZF9saXN0IC5kb3dubG9hZF9saXN0IGxpIGE6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bmxvYWQtaWNvbi5zdmcpOyBtYXNrLXNpemU6IDIwcHggMThweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbi5jYXJkLmNhcmRfZG93bmxvYWRfbGlzdCAuZG93bmxvYWRfbGlzdCBsaSBhOmhvdmVyOmFmdGVyLCAuY2FyZC5jYXJkX2Rvd25sb2FkX2xpc3QgLmRvd25sb2FkX2xpc3QgbGkgYS5hY3RpdmU6YWZ0ZXIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bmxvYWQtaWNvbi15ZWxsb3cuc3ZnKTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuY2FyZC5jYXJkX2Rvd25sb2FkX2xpc3QgLmRvd25sb2FkX2xpc3QgbGkgYTpob3ZlcjphZnRlciwgLmNhcmQuY2FyZF9kb3dubG9hZF9saXN0IC5kb3dubG9hZF9saXN0IGxpIGEuYWN0aXZlOmFmdGVyIHsgYmFja2dyb3VuZDogI0ZEQzQwMDsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd25sb2FkLWljb24teWVsbG93LnN2Zyk7IG1hc2stc2l6ZTogMjBweCAxOHB4OyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9IH1cblxuLmNhcmQuY2FyZF9kb3dubG9hZF9saXN0IC5ub3JtYWxfbGlzdCBsaSBhOmFmdGVyIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ljb25zL2V4dGVybmFsLWxpbmstaWNvbi1ibHVlLnN2Zyk7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgLmNhcmQuY2FyZF9kb3dubG9hZF9saXN0IC5ub3JtYWxfbGlzdCBsaSBhOmFmdGVyIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2V4dGVybmFsLWxpbmstaWNvbi1ibHVlLnN2Zyk7IG1hc2stc2l6ZTogMTFweCAxMXB4OyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9IH1cblxuLmNhcmQuY2FyZF9kb3dubG9hZF9saXN0IC5ub3JtYWxfbGlzdCBsaSBhOmhvdmVyOmFmdGVyLCAuY2FyZC5jYXJkX2Rvd25sb2FkX2xpc3QgLm5vcm1hbF9saXN0IGxpIGEuYWN0aXZlOmFmdGVyIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ljb25zL2V4dGVybmFsLWxpbmstaWNvbi15ZWxsb3cuc3ZnKTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuY2FyZC5jYXJkX2Rvd25sb2FkX2xpc3QgLm5vcm1hbF9saXN0IGxpIGE6aG92ZXI6YWZ0ZXIsIC5jYXJkLmNhcmRfZG93bmxvYWRfbGlzdCAubm9ybWFsX2xpc3QgbGkgYS5hY3RpdmU6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiAjRkRDNDAwOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZXh0ZXJuYWwtbGluay1pY29uLXllbGxvdy5zdmcpOyBtYXNrLXNpemU6IDExcHggMTFweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbi5jYXJkLmNhcmRfc3VnZ2VzdGVkIC5pbWFnZV9fd3JhcHBlciB7IG1pbi1oZWlnaHQ6IDEyMHB4OyBtYXJnaW4tYm90dG9tOiAxMHB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cblxuLmNhcmQuY2FyZF9zdWdnZXN0ZWQgcCB7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHsgLmNhcmQuZmVhdHVyZWRfY2FyZCB7IHdpZHRoOiAxMDB2dzsgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHsgLmNhcmQucHJvbW9fY2FyZF9mdWxsIHsgYm9yZGVyLXJhZGl1czogMDsgcGFkZGluZzogMjVweDsgfVxuICAuY2FyZC5wcm9tb19jYXJkX2Z1bGwucHJvbW9fY2FyZF9mdWxsX2ltZyB7IG1pbi1oZWlnaHQ6IDIwMHB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0OyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gIC5jYXJkLnByb21vX2NhcmRfZnVsbCBoMiB7IG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuXG4uY2FyZC5saXN0aW5nX25vX3Bvc3RfbXNnIHsgdGV4dC1hbGlnbjogY2VudGVyOyBwYWRkaW5nLXRvcDogNTBweDsgfVxuXG4uY2FyZF90YWJsZSB0YWJsZSB7IGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IH1cblxuLmNhcmRfdGFibGUgdGFibGUgdHIgdGggeyBwYWRkaW5nOiAxMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjRDdEN0Q3OyBib3JkZXI6IDFweCBzb2xpZCAjNzA3MDcwOyB9XG5cbi5jYXJkX3RhYmxlIHRhYmxlIHRyIHRkIHsgcGFkZGluZzogMTBweDsgYm9yZGVyOiAxcHggc29saWQgIzcwNzA3MDsgfVxuXG4uY2FyZF9mZWF0dXJlZCB7IG1hcmdpbi1ib3R0b206IDIwcHg7IGJvcmRlcjogMXB4IHNvbGlkICNGMEYwRjA7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmNhcmRfZmVhdHVyZWQgLmdyaWQteCB7IGhlaWdodDogMTAwJTsgfVxuXG4uY2FyZF9mZWF0dXJlZCAuZmVhdHVyZWRfaW1nIHsgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9jYXJkcy9jYXJkLWhlYWRpbmcucG5nKSBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyICFpbXBvcnRhbnQ7IGhlaWdodDogMTAwJTsgbWluLWhlaWdodDogMTMwcHg7IG1hcmdpbjogYXV0bzsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuY2FyZF9mZWF0dXJlZCAuZmVhdHVyZWRfaW1nIHsgbWluLWhlaWdodDogMTUwcHg7IH0gfVxuXG4uY2FyZF9mZWF0dXJlZCAudGFnIHsgZGlzcGxheTogYmxvY2s7IHBhZGRpbmc6IDVweCA3cHg7IGJhY2tncm91bmQtY29sb3I6ICMwRjU4OUE7IGNvbG9yOiAjRkZGOyBsZXR0ZXItc3BhY2luZzogMC4yNzVlbTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV81NSBSb21hbjE0NzU1MjBcIjsgZm9udC1zaXplOiAwLjc1cmVtOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmNhcmRfZmVhdHVyZWQgLmZlYXR1cmVkX3RleHQgeyBwYWRkaW5nOiA0cHggMTZweDsgdHJhbnNpdGlvbjogYWxsIDAuNXM7IH1cblxuLmNhcmRfZmVhdHVyZWQgLmZlYXR1cmVkX3RleHQgaDMuaDUgeyBmb250LXNpemU6IDE4cHg7IH1cblxuLmNhcmRfZmVhdHVyZWQgLmZlYXR1cmVkX3RleHQgaDMuaDU6YWZ0ZXIgeyAvKiAvLyBSZW1vdmVkIGR1ZSB0byBsb25nIHRpdGxlIGNvbmZsaWN0cyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDMwcHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgY29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi1ibHVlLnN2Zyk7IGJhY2tncm91bmQtc2l6ZTogOXB4IDEzcHg7IHdpZHRoOiA5cHg7IGhlaWdodDogMTNweDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi1ibHVlLnN2Zyk7IG1hc2stc2l6ZTogOXB4IDEzcHg7IG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7IH0gKi8gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuY2FyZF9mZWF0dXJlZCAuZmVhdHVyZWRfdGV4dCB7IHBhZGRpbmc6IDIwcHg7IH0gfVxuXG4uY2FyZF9mZWF0dXJlZCAuZmVhdHVyZWRfdGV4dC5jYXJkX19zbWFsbCBhIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmNhcmRfZmVhdHVyZWQ6aG92ZXIgLmZlYXR1cmVkX3RleHQsIGEuY2FyZF9mZWF0dXJlZC5hY3RpdmUgLmZlYXR1cmVkX3RleHQsIGJ1dHRvbi5jYXJkX2ZlYXR1cmVkLmFjdGl2ZSAuZmVhdHVyZWRfdGV4dCB7IGJhY2tncm91bmQtY29sb3I6ICMwNDMyNjM7IH1cblxuLmNhcmRfZmVhdHVyZWQ6aG92ZXIgLmZlYXR1cmVkX3RleHQgLnN1YmhlYWRpbmcsIGEuY2FyZF9mZWF0dXJlZC5hY3RpdmUgLmZlYXR1cmVkX3RleHQgLnN1YmhlYWRpbmcsIGJ1dHRvbi5jYXJkX2ZlYXR1cmVkLmFjdGl2ZSAuZmVhdHVyZWRfdGV4dCAuc3ViaGVhZGluZywgLmNhcmRfZmVhdHVyZWQ6aG92ZXIgLmZlYXR1cmVkX3RleHQgLmNhcHRpb24sIGEuY2FyZF9mZWF0dXJlZC5hY3RpdmUgLmZlYXR1cmVkX3RleHQgLmNhcHRpb24sIGJ1dHRvbi5jYXJkX2ZlYXR1cmVkLmFjdGl2ZSAuZmVhdHVyZWRfdGV4dCAuY2FwdGlvbiB7IGNvbG9yOiAjRkZGOyB9XG5cbi5jYXJkX2ZlYXR1cmVkOmhvdmVyIC5mZWF0dXJlZF90ZXh0IGEgLmg1LCBhLmNhcmRfZmVhdHVyZWQuYWN0aXZlIC5mZWF0dXJlZF90ZXh0IGEgLmg1LCBidXR0b24uY2FyZF9mZWF0dXJlZC5hY3RpdmUgLmZlYXR1cmVkX3RleHQgYSAuaDUgeyBjb2xvcjogI0ZEQzQwMDsgfVxuXG4uY2FyZF9mZWF0dXJlZDpob3ZlciAuZmVhdHVyZWRfdGV4dCBhIC5oNTphZnRlciwgYS5jYXJkX2ZlYXR1cmVkLmFjdGl2ZSAuZmVhdHVyZWRfdGV4dCBhIC5oNTphZnRlciwgYnV0dG9uLmNhcmRfZmVhdHVyZWQuYWN0aXZlIC5mZWF0dXJlZF90ZXh0IGEgLmg1OmFmdGVyIHsgLyogLy8gUmVtb3ZlZCBkdWUgdG8gbG9uZyB0aXRsZSBjb25mbGljdHMgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnKTsgQHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LW9uZTsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnKTsgbWFzay1zaXplOiA5cHggMTNweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSAqLyB9XG5cbi5jYXJkX19jYWxsb3V0IHsgYmFja2dyb3VuZC1jb2xvcjogIzBGNTg5QTsgfVxuXG4uY2FyZF9fY2FsbG91dCAuY2FyZCB7IGJhY2tncm91bmQtY29sb3I6ICMwRjU4OUE7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICNGRkY7IHBhZGRpbmc6IDUwcHggMDsgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuY2FyZF9fY2FsbG91dCAuY2FyZCB7IHBhZGRpbmc6IDcwcHggMDsgfSB9XG5cbi5jYXJkX19jYWxsb3V0IC5jYXJkIGgyLCAuY2FyZF9fY2FsbG91dCAuY2FyZCAuaDIsIC5jYXJkX19jYWxsb3V0IC5jYXJkIGg0LCAuY2FyZF9fY2FsbG91dCAuY2FyZCAuaDQgeyBjb2xvcjogI0ZGRjsgbWFyZ2luLWJvdHRvbTogMjNweDsgfVxuXG4uY2FyZF9fY2FsbG91dCAuY2FyZCBwIHsgZm9udC1zaXplOiAxOHB4OyBtYXJnaW4tYm90dG9tOiAzNXB4OyBmb250LXdlaWdodDogNjAwOyB9XG5cbi5jYXJkX19jYWxsb3V0IC5jYXJkIC5idXR0b24sIC5jYXJkX19jYWxsb3V0IC5jYXJkIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5jYXJkX19jYWxsb3V0IC5jYXJkIGEgeyBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkX19jYWxsb3V0LmZ1bGxfdGV4dCAuY2FyZCB7IHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLmNhcmRfX2NhbGxvdXQuc2Vjb25kYXJ5IC5jYXJkLCAuc2lnbnVwX19mb3JtIC5jYXJkX19jYWxsb3V0LmJ1dHRvbiAuY2FyZCwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLmNhcmRfX2NhbGxvdXQgLmNhcmQsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5jYXJkX19jYWxsb3V0IC5jYXJkIHsgY29sb3I6ICMwNDMyNjM7IGJhY2tncm91bmQtY29sb3I6ICNGREM0MDA7IH1cblxuLmNhcmRfX2NhbGxvdXQuc2Vjb25kYXJ5IC5jYXJkIGgyLCAuc2lnbnVwX19mb3JtIC5jYXJkX19jYWxsb3V0LmJ1dHRvbiAuY2FyZCBoMiwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLmNhcmRfX2NhbGxvdXQgLmNhcmQgaDIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5jYXJkX19jYWxsb3V0IC5jYXJkIGgyLCAuY2FyZF9fY2FsbG91dC5zZWNvbmRhcnkgLmNhcmQgLmgyLCAuc2lnbnVwX19mb3JtIC5jYXJkX19jYWxsb3V0LmJ1dHRvbiAuY2FyZCAuaDIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5jYXJkX19jYWxsb3V0IC5jYXJkIC5oMiwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmNhcmRfX2NhbGxvdXQgLmNhcmQgLmgyLCAuY2FyZF9fY2FsbG91dC5zZWNvbmRhcnkgLmNhcmQgaDQsIC5zaWdudXBfX2Zvcm0gLmNhcmRfX2NhbGxvdXQuYnV0dG9uIC5jYXJkIGg0LCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEuY2FyZF9fY2FsbG91dCAuY2FyZCBoNCwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmNhcmRfX2NhbGxvdXQgLmNhcmQgaDQsIC5jYXJkX19jYWxsb3V0LnNlY29uZGFyeSAuY2FyZCAuaDQsIC5zaWdudXBfX2Zvcm0gLmNhcmRfX2NhbGxvdXQuYnV0dG9uIC5jYXJkIC5oNCwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLmNhcmRfX2NhbGxvdXQgLmNhcmQgLmg0LCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEuY2FyZF9fY2FsbG91dCAuY2FyZCAuaDQgeyBjb2xvcjogIzA0MzI2MzsgfVxuXG4uY2FyZF9fZmFtZSAuY2VsbC5zaW5nbGVfX2ZhbWUgeyBwYWRkaW5nOiA0MHB4IDIwcHggMzBweCAyMHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IGJhY2tncm91bmQtY29sb3I6ICNGRkY7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLmNhcmRfX2ZhbWUgLmNlbGwuc2luZ2xlX19mYW1lIGg0IHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4uY2FyZF9fZmFtZSAuY2VsbC5zaW5nbGVfX2ZhbWUgaDUsIC5jYXJkX19mYW1lIC5jZWxsLnNpbmdsZV9fZmFtZSBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZF9fZmFtZSAuY2VsbC5zaW5nbGVfX2ZhbWUgcCwgLmNhcmRfX2ZhbWUgLmNlbGwuc2luZ2xlX19mYW1lIGg2LCAuY2FyZF9fZmFtZSAuY2VsbC5zaW5nbGVfX2ZhbWUgLnVwZGF0ZWQgLmRhdGUsIC51cGRhdGVkIC5jYXJkX19mYW1lIC5jZWxsLnNpbmdsZV9fZmFtZSAuZGF0ZSB7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLmNhcmRfX2ZhbWUgLmNlbGwuc2luZ2xlX19mYW1lIGg2LCAuY2FyZF9fZmFtZSAuY2VsbC5zaW5nbGVfX2ZhbWUgLnVwZGF0ZWQgLmRhdGUsIC51cGRhdGVkIC5jYXJkX19mYW1lIC5jZWxsLnNpbmdsZV9fZmFtZSAuZGF0ZSB7IGNvbG9yOiAjMEY1ODlBOyB9XG5cbi5jYXJkX19mYW1lIC5jZWxsLnNpbmdsZV9fZmFtZSBociB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmJnX19pbWcgeyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyBwYWRkaW5nLXRvcDogNzBweDsgcGFkZGluZy1ib3R0b206IDcwcHg7IGhlaWdodDogZml0LWNvbnRlbnQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgLmJnX19pbWcgeyBwYWRkaW5nLXRvcDogNTBweDsgcGFkZGluZy1ib3R0b206IDUwcHg7IG1hcmdpbi1yaWdodDogMS4yNXJlbTsgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH0gfVxuXG4uYmdfX2ltZy5hbHQgeyBwYWRkaW5nOiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7IC5iZ19faW1nLmhlcm9fX2Nhcm91c2VsIHsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuYmdfX2ltZy5oZXJvX19jYXJvdXNlbCBoMSwgLmJnX19pbWcuaGVyb19fY2Fyb3VzZWwgaDIgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmJnX19pbWcuaGVyb19fY2Fyb3VzZWwgaDEsIC5iZ19faW1nLmhlcm9fX2Nhcm91c2VsIGgyLCAuYmdfX2ltZy5oZXJvX19jYXJvdXNlbCBoMiBzcGFuIHsgd2lkdGg6IDM2MHB4OyB9IH1cblxuLmJnX19pbWcgLmJ1dHRvbi1ncm91cCAuYnV0dG9uLCAuYmdfX2ltZyAuYnV0dG9uLWdyb3VwIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5iZ19faW1nIC5idXR0b24tZ3JvdXAgYSB7IG1hcmdpbi1yaWdodDogMjZweDsgfVxuXG4uYmdfX2ltZy5iZ19faGVybyB7IHBhZGRpbmctdG9wOiAzMHB4OyBwYWRkaW5nLWJvdHRvbTogMzBweDsgbWluLWhlaWdodDogNDYwcHg7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmJnX19pbWcuYmdfX2hlcm8gaDEgeyBtYXJnaW4tYm90dG9tOiAxLjM3NXJlbTsgfVxuXG4uYmdfX2ltZy5iZ19faGVybyAuZ3JpZC1jb250YWluZXIgeyB3aWR0aDogMTAwJTsgfVxuXG4uYmdfX2ltZy5iZ19faGVybyAuYnV0dG9uIGksIC5iZ19faW1nLmJnX19oZXJvIGxpLmZhdXgtYnV0dG9uIGEgaSwgbGkuZmF1eC1idXR0b24gLmJnX19pbWcuYmdfX2hlcm8gYSBpIHsgZm9udC1zaXplOiAxNHB4OyBtYXJnaW4tbGVmdDogMTBweDsgfVxuXG4uYmdfX2ltZy5iZ19faGVybyBhOm5vdCguYnV0dG9uKSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNGREM0MDA7IHBhZGRpbmctYm90dG9tOiA0cHg7IHRyYW5zaXRpb246IGFsbCAwLjNzOyB9XG5cbi5iZ19faW1nLmJnX19oZXJvIGE6bm90KC5idXR0b24pOmhvdmVyLCAuYmdfX2ltZy5iZ19faGVybyBhLmFjdGl2ZTpub3QoLmJ1dHRvbikgeyBib3JkZXItYm90dG9tOiAzcHggc29saWQgIzY0OUFEQjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuYmdfX2ltZy5iZ19faGVybyBhOm5vdCguYnV0dG9uKSB7IG1hcmdpbjogMCA2MHB4OyB9IH1cblxuLmJnX19pbWcuYmdfX2hlcm8uYmdfX2hlcm9faG9tZSB7IHBhZGRpbmctdG9wOiAyMDhweDsgcGFkZGluZy1ib3R0b206IDM2cHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmJnX19pbWcuYmdfX2hlcm8uYmdfX2hlcm9faG9tZSB7IHBhZGRpbmctdG9wOiAxMDBweDsgcGFkZGluZy1ib3R0b206IDEwMHB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cbiAgLmJnX19pbWcuYmdfX2hlcm8uYmdfX2hlcm9faG9tZSBhIHsgZGlzcGxheTogdGFibGU7IG1hcmdpbi10b3A6IDEwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuYmdfX2ltZy5iZ19faGVyby5iZ19faGVyb19ob21lIHsgcGFkZGluZy10b3A6IDY0cHg7IHBhZGRpbmctYm90dG9tOiAxNDhweDsgfVxuICAuYmdfX2ltZy5iZ19faGVyby5iZ19faGVyb19ob21lIGEgeyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgbWFyZ2luLXRvcDogMHB4OyB9IH1cblxuLmJnX19pbWcuYmdfX2hlcm8gLmNhcmRfX3ByZXZpZXcgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMEY1ODlBOyB9XG5cbi5mb290bm90ZXNfY2FyZCB7IG1hcmdpbjogMS41cmVtIC43NXJlbTsgcGFkZGluZy1sZWZ0OiAyMHB4OyBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjQjlCOUI5OyB9XG5cbi5mb290bm90ZXNfY2FyZDpmaXJzdC1jaGlsZCB7IG1hcmdpbi10b3A6IDByZW07IH1cblxuLm1vcmVfbmV3cyB7IGJhY2tncm91bmQ6ICNGNEY0RjQ7IHBhZGRpbmc6IDE4cHggMjRweDsgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG5cbi5tb3JlX25ld3MgYSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5tb3JlX25ld3MgYSwgLm1vcmVfbmV3cyBwLCAubW9yZV9uZXdzIC5zaG93IHsgY29sb3I6ICMwNDMyNjM7IHRyYW5zaXRpb246IGNvbG9yIDAuMjVzOyB9XG5cbi5tb3JlX25ld3MgcCB7IG1hcmdpbjogMS43cmVtIDAgMi41cmVtOyBjb2xvcjogIzUyNTI0NTsgfVxuXG4ubW9yZV9uZXdzIHNwYW4uZmF1eC1saW5rIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IGZvbnQtd2VpZ2h0OiA1MDA7IGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfNjUgTWVkaXVtMTQ3NTUzMlwiOyB9XG5cbi5tb3JlX25ld3Mgc3Bhbi5mYXV4LWxpbms6aG92ZXIgeyBjb2xvcjogI0ZEQzQwMDsgdHJhbnNpdGlvbjogYWxsIDAuMjVzOyB9XG5cbi5tb3JlX25ld3MgaDQuc2hvdyB7IGZvbnQtc2l6ZTogMjNweDsgfVxuXG4ubW9yZV9uZXdzOmhvdmVyLCBhLm1vcmVfbmV3cy5hY3RpdmUsIGJ1dHRvbi5tb3JlX25ld3MuYWN0aXZlIHsgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MzsgfVxuXG4ubW9yZV9uZXdzOmhvdmVyIGEsIGEubW9yZV9uZXdzLmFjdGl2ZSBhLCBidXR0b24ubW9yZV9uZXdzLmFjdGl2ZSBhLCAubW9yZV9uZXdzOmhvdmVyIHAsIGEubW9yZV9uZXdzLmFjdGl2ZSBwLCBidXR0b24ubW9yZV9uZXdzLmFjdGl2ZSBwLCAubW9yZV9uZXdzOmhvdmVyIC5zaG93LCBhLm1vcmVfbmV3cy5hY3RpdmUgLnNob3csIGJ1dHRvbi5tb3JlX25ld3MuYWN0aXZlIC5zaG93IHsgY29sb3I6ICNGRkY7IH1cblxuLm5ld3NfYXV0aG9yX2luZm8gLmltZ193cmFwcGVyIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyBoZWlnaHQ6IDEwMHB4OyB3aWR0aDogMTAwcHg7IGJvcmRlci1yYWRpdXM6IDUwJTsgbWFyZ2luOiAwcHggYXV0byAyMHB4IGF1dG87IH1cblxuLmhlYWRpbmdfX3RlYW0gaDMgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgLmhlYWRpbmdfX3RlYW0gaDMgeyBwYWRkaW5nLWxlZnQ6IDIwcHg7IHBhZGRpbmctcmlnaHQ6IDIwcHg7IH0gfVxuXG4uaGVhZGluZ19fdGVhbSBhIHsgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5jYXJkX192b3Rpbmdfc3RhdCB7IHBhZGRpbmc6IDIwcHggNDBweDsgfVxuXG4uY2FyZF9fdm90aW5nX3N0YXQgcCwgLmNhcmRfX3ZvdGluZ19zdGF0IGgyLCAuY2FyZF9fdm90aW5nX3N0YXQgaDQgeyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5jYXJkX192b3Rpbmdfc3RhdCAuYnV0dG9uLCAuY2FyZF9fdm90aW5nX3N0YXQgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmNhcmRfX3ZvdGluZ19zdGF0IGEgeyBtYXJnaW46IDEwcHggMHB4IDBweCAwcHg7IH1cblxuLmNhcmRfX3BvcHVwIHsgcGFkZGluZzogMjBweDsgYm9yZGVyOiAxcHggc29saWQgI0VGRURFMTsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxuXG4uY2FyZF9fcG9wdXAuaW5mb2NhcmQgeyBib3JkZXItdG9wOiBub25lOyBib3JkZXItcmlnaHQ6IG5vbmU7IGJvcmRlci1ib3R0b206IG5vbmU7IHBhZGRpbmctdG9wOiAwOyBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uY2FyZF9fcG9wdXAuaW5mb2NhcmQgLmluZm9jYXJkLWNvbnRlbnQgcCB7IGZvbnQtc2l6ZTogMS4xMjVyZW07IGxpbmUtaGVpZ2h0OiAxLjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmNhcmRfX3BvcHVwLmluZm9jYXJkIC5pbmZvY2FyZC1jb250ZW50IHAgeyBmb250LXNpemU6IDEuNXJlbTsgbGluZS1oZWlnaHQ6IDEuNzVyZW07IH0gfVxuXG4uY2FyZF9fcG9wdXAucG9wdXBfY2hlY2sgeyBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjMjFBNjdBOyB9XG5cbi5jYXJkX19wb3B1cC5wb3B1cF9pbmZvIHsgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgIzBGNTg5QTsgfVxuXG4uY2FyZF9fcG9wdXAucG9wdXBfd2FybmluZyB7IGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICNDRTAwM0E7IH1cblxuLmNhcmRfX3BvcHVwIC5wb3B1cF9jbG9zZSB7IGhlaWdodDogMTVweDsgd2lkdGg6IDE1cHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgY29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Nsb3NlLXBvcHVwLnN2Zyk7IGJhY2tncm91bmQtc2l6ZTogMTVweCAxNXB4OyByaWdodDogMzBweDsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuY2FyZF9fcG9wdXAgLnBvcHVwX2Nsb3NlIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Nsb3NlLXBvcHVwLnN2Zyk7IG1hc2stc2l6ZTogMTVweCAxNXB4OyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9IH1cblxuLmNhcmRfX3BvcHVwIC5wb3B1cC1pY29uIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cblxuLmNhcmRfX3BvcHVwIC5wb3B1cC1pY29uIC5pY29uX2NoZWNrIHsgaGVpZ2h0OiAzMHB4OyB3aWR0aDogMzBweDsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBibG9jazsgbWFyZ2luOiBhdXRvIDEwcHggYXV0byAwOyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvcG9wdXAtY2hlY2suc3ZnKTsgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uY2FyZF9fcG9wdXAgLnBvcHVwLWljb24gLmljb25faW5mbyB7IGhlaWdodDogMzBweDsgd2lkdGg6IDMwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogYmxvY2s7IG1hcmdpbjogYXV0byAxMHB4IGF1dG8gMDsgY29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3BvcHVwLWluZm8uc3ZnKTsgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uY2FyZF9fcG9wdXAgLnBvcHVwLWljb24gLmljb25fd2FybmluZyB7IGhlaWdodDogMzBweDsgd2lkdGg6IDMwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogYmxvY2s7IG1hcmdpbjogYXV0byAxMHB4IGF1dG8gMDsgY29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3BvcHVwLXdhcm5pbmcuc3ZnKTsgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uY2FyZF9fcG9wdXAgLnBvcHVwLWNvbnRlbnQgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmNhcmRfX3BvcHVwIC5wb3B1cC1jb250ZW50IHAgeyBtYXJnaW4tYm90dG9tOiAwcHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgLmNhcmRfX2Nhcm91c2VsIHsgZGlzcGxheTogaW5pdGlhbDsgfSB9XG5cbi5jYXJkX19jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIHsgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuXG4uY2FyZF9fY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciAub3dsLWl0ZW0gLmNhcm91c2VsX3RleHQgeyBwYWRkaW5nOiA2MHB4IDIwcHggMCAyMHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5jYXJkX19jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIC5vd2wtaXRlbSAuY2Fyb3VzZWxfdGV4dCB7IHBhZGRpbmc6IDYwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgeyAuY2FyZF9fY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciAub3dsLWl0ZW0gLmNhcm91c2VsX2ltZyB7IHBhZGRpbmctbGVmdDogMjBweDsgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG5cbi5jYXJkX19jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIC5vd2wtaXRlbSAuY2Fyb3VzZWxfaW1nIGltZyB7IG9iamVjdC1maXQ6IGNvdmVyOyBoZWlnaHQ6IDEwMCU7IH1cblxuLmNhcmRfX2Nhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIgLm93bC1pdGVtIHAgeyBmb250LXNpemU6IDEuMTI1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5jYXJkX19jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIC5vd2wtaXRlbSBwIHsgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cblxuLmNhcmRfX2Nhcm91c2VsIC5vd2wtZG90cyB7IG1hcmdpbi10b3A6IDA7IG1hcmdpbi1ib3R0b206IC01MHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5jYXJkX19jYXJvdXNlbCAub3dsLWRvdHMgeyBtYXJnaW4tdG9wOiAxMHB4OyB9IH1cblxuLmNhcmRfX2Nhcm91c2VsIC5vd2wtZG90cyAub3dsLWRvdCBzcGFuIHsgYmFja2dyb3VuZDogIzc2NzE3NSAhaW1wb3J0YW50OyB9XG5cbi5jYXJkX19jYXJvdXNlbCAub3dsLWRvdHMgLm93bC1kb3QuYWN0aXZlIHNwYW4geyBiYWNrZ3JvdW5kOiAjRkRDNDAwICFpbXBvcnRhbnQ7IH1cblxuLmJsdWVfX2JnIHsgYmFja2dyb3VuZC1jb2xvcjogIzBGNTg5QTsgfVxuXG4uZXZlbnRzX25hdl9yZWdpc3RlciB7IGJhY2tncm91bmQtY29sb3I6ICMwRjU4OUE7IHBhZGRpbmctbGVmdDogMC42MjVyZW07IHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtOyB9XG5cbi5ldmVudHNfbmF2X3JlZ2lzdGVyIC5jYXJkIHsgZGlzcGxheTogZmxleDsgbWFyZ2luOiBhdXRvOyB9XG5cbi5ldmVudHNfbmF2X3JlZ2lzdGVyIC5jYXJkIHAgeyBwYWRkaW5nOiAxLjJlbSAxZW07IGNvbG9yOiB3aGl0ZTsgbWFyZ2luOiAwcHg7IH1cblxuLmV2ZW50c19uYXZfcmVnaXN0ZXIgLmNhcmQgYSB7IG1hcmdpbjogMHB4OyBoZWlnaHQ6IGZpdC1jb250ZW50OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uZXZlbnRzX25hdl9saW5rcyB7IGJhY2tncm91bmQtY29sb3I6ICMyMjIyMjI7IHBhZGRpbmctbGVmdDogMC42MjVyZW07IHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtOyB9XG5cbi5ldmVudHNfbmF2X2xpbmtzIHVsIHsgbWFyZ2luOiAwcHg7IHBhZGRpbmc6IDEuMmVtIDFlbTsgfVxuXG4uZXZlbnRzX25hdl9saW5rcyB1bCBsaSB7IGRpc3BsYXk6IGlubGluZTsgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB3aGl0ZTsgcGFkZGluZzogMHB4IDBweCA1cHggMTBweDsgbWFyZ2luLXJpZ2h0OiAyMHB4OyBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5ldmVudHNfbmF2X2xpbmtzIHVsIGxpOjpiZWZvcmUgeyBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmV2ZW50c19uYXZfbGlua3MgdWwgbGkgYSB7IGNvbG9yOiB3aGl0ZTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5ldmVudHNfaGVhZGluZ19saW5rcyB7IG1hcmdpbjogMzBweCAwcHg7IH1cblxuLmV2ZW50c19oZWFkaW5nX2xpbmtzIC5ldmVudHNfaGVhZGluZ19saW5rIHsgcGFkZGluZzogMTBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IHRyYW5zaXRpb246IGFsbCAwLjVzOyB9XG5cbi5ldmVudHNfaGVhZGluZ19saW5rcyAuZXZlbnRzX2hlYWRpbmdfbGluazpob3ZlciwgLmV2ZW50c19oZWFkaW5nX2xpbmtzIGEuZXZlbnRzX2hlYWRpbmdfbGluay5hY3RpdmUsIC5ldmVudHNfaGVhZGluZ19saW5rcyBidXR0b24uZXZlbnRzX2hlYWRpbmdfbGluay5hY3RpdmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjNzA3MDcwOyB9XG5cbi5ldmVudHNfaGVhZGluZ19saW5rcyAuZXZlbnRzX2hlYWRpbmdfbGluazpob3ZlciBhLCAuZXZlbnRzX2hlYWRpbmdfbGlua3MgYS5ldmVudHNfaGVhZGluZ19saW5rLmFjdGl2ZSBhLCAuZXZlbnRzX2hlYWRpbmdfbGlua3MgYnV0dG9uLmV2ZW50c19oZWFkaW5nX2xpbmsuYWN0aXZlIGEgeyBjb2xvcjogI0ZGRjsgfVxuXG4uZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtY29udGVudCB7IG1heC1oZWlnaHQ6IDk1JTsgbWluLWhlaWdodDogODAlOyB3aWR0aDogOTAlOyB9XG5cbi5mZWF0aGVybGlnaHQgLmZlYXRoZXJsaWdodC1jb250ZW50IC5mZWF0aGVybGlnaHQtaW5uZXIgeyBoZWlnaHQ6IDk1JTsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogOTUlOyB9XG5cbi5mZWF0aGVybGlnaHQgLmZlYXRoZXJsaWdodC1jb250ZW50IC5mZWF0aGVybGlnaHQtaW5uZXIgLnZpZGVvLWJveCB7IGhlaWdodDogOTUlOyB9XG5cbi5mZWF0aGVybGlnaHQgLmZlYXRoZXJsaWdodC1jb250ZW50IC5mZWF0aGVybGlnaHQtaW5uZXIgLnZpZGVvLWJveCBpZnJhbWUgeyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyB9XG5cbi5keW5hbWljLW1vZHVsZSAub3ZlcmxheS1saW5rIHsgei1pbmRleDogOTg5OyB9XG5cbi5keW5hbWljLW1vZHVsZSAuY2VsbCAuaW1hZ2VfX3ByZXZpZXcgaW1nIHsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlLWluLW91dDsgfVxuXG4uZHluYW1pYy1tb2R1bGUgLmNlbGwuaW1hZ2Utd3JhcCB7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmR5bmFtaWMtbW9kdWxlIC5jZWxsLmltYWdlLXdyYXAgLmZlYXR1cmVkX2ltZyB7IHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZS1pbi1vdXQ7IH1cblxuLmR5bmFtaWMtbW9kdWxlIC5jZWxsLmZlYXR1cmVkX3RleHQgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLyogVmVydGljYWwgYWxpZ25tZW50ICovIGhlaWdodDogMTAwJTsgLyogT3B0aW9uYWwsIGRlcGVuZHMgb24gcGFyZW50IGNvbnRleHQgKi8gcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiA5OTA7IH1cblxuLmR5bmFtaWMtbW9kdWxlIC5jZWxsOmhvdmVyIC5mZWF0dXJlZF9pbWcsIC5keW5hbWljLW1vZHVsZSBhLmNlbGwuYWN0aXZlIC5mZWF0dXJlZF9pbWcsIC5keW5hbWljLW1vZHVsZSBidXR0b24uY2VsbC5hY3RpdmUgLmZlYXR1cmVkX2ltZyB7IHRyYW5zZm9ybTogc2NhbGUoMS4yKTsgfVxuXG4uZHluYW1pYy1tb2R1bGUgLmNlbGw6aG92ZXIgLmltYWdlX19wcmV2aWV3IGltZywgLmR5bmFtaWMtbW9kdWxlIGEuY2VsbC5hY3RpdmUgLmltYWdlX19wcmV2aWV3IGltZywgLmR5bmFtaWMtbW9kdWxlIGJ1dHRvbi5jZWxsLmFjdGl2ZSAuaW1hZ2VfX3ByZXZpZXcgaW1nIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4xKTsgfVxuXG4uZHluYW1pYy1tb2R1bGUgLmxhcmdlLTEwIC5jZWxsLnNtYWxsLTUuaW1hZ2Utd3JhcCBpbWcgeyBtaW4taGVpZ2h0OiAxMzBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuZHluYW1pYy1tb2R1bGUgLmxhcmdlLTEwIC5jZWxsLnNtYWxsLTUuaW1hZ2Utd3JhcCB7IG1pbi1oZWlnaHQ6IDMwMHB4OyB9IH1cblxuYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuY2FyZC5jYXJkX19wcmV2aWV3IC50ZXh0X193cmFwcGVyIGg1LCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5jYXJkLmNhcmRfX3ByZXZpZXcgLnRleHRfX3dyYXBwZXIgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuY2FyZC5jYXJkX19wcmV2aWV3IC50ZXh0X193cmFwcGVyIHAsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgLmNhcmQuY2FyZF9fcHJldmlldyAudGV4dF9fd3JhcHBlciBwIHsgY29sb3I6IGJsYWNrOyB9XG5cbmJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuY2FyZC5jYXJkX19wcmV2aWV3IC50ZXh0X193cmFwcGVyIGg1LCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLmNhcmQuY2FyZF9fcHJldmlldyAudGV4dF9fd3JhcHBlciBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLmNhcmQuY2FyZF9fcHJldmlldyAudGV4dF9fd3JhcHBlciBwLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLmNhcmQuY2FyZF9fcHJldmlldyAudGV4dF9fd3JhcHBlciBwIHsgY29sb3I6IGJsYWNrOyB9XG5cbmJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuY2FyZC5jYXJkX19wcmV2aWV3OmhvdmVyIC50ZXh0X193cmFwcGVyIGg1LCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5jYXJkLmNhcmRfX3ByZXZpZXcuYWN0aXZlIC50ZXh0X193cmFwcGVyIGg1LCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYnV0dG9uLmNhcmQuY2FyZF9fcHJldmlldy5hY3RpdmUgLnRleHRfX3dyYXBwZXIgaDUsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuY2FyZC5jYXJkX19wcmV2aWV3OmhvdmVyIC50ZXh0X193cmFwcGVyIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuY2FyZC5jYXJkX19wcmV2aWV3OmhvdmVyIC50ZXh0X193cmFwcGVyIHAsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhLmNhcmQuY2FyZF9fcHJldmlldy5hY3RpdmUgLnRleHRfX3dyYXBwZXIgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGEuY2FyZC5jYXJkX19wcmV2aWV3LmFjdGl2ZSAudGV4dF9fd3JhcHBlciBwLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYnV0dG9uLmNhcmQuY2FyZF9fcHJldmlldy5hY3RpdmUgLnRleHRfX3dyYXBwZXIgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGJ1dHRvbi5jYXJkLmNhcmRfX3ByZXZpZXcuYWN0aXZlIC50ZXh0X193cmFwcGVyIHAsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuY2FyZC5jYXJkX19wcmV2aWV3OmhvdmVyIC50ZXh0X193cmFwcGVyIHAsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhLmNhcmQuY2FyZF9fcHJldmlldy5hY3RpdmUgLnRleHRfX3dyYXBwZXIgcCwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGJ1dHRvbi5jYXJkLmNhcmRfX3ByZXZpZXcuYWN0aXZlIC50ZXh0X193cmFwcGVyIHAgeyBjb2xvcjogd2hpdGU7IH1cblxuLmNhcm91c2VsIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNCAhaW1wb3J0YW50OyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciB7IG1heC13aWR0aDogMTAwJTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIgLm93bC1zdGFnZSB7IG1hcmdpbi10b3A6IDMwcHg7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIC5vd2wtc3RhZ2UgLml0ZW0geyBtYXJnaW4tbGVmdDogMTBweDsgbWFyZ2luLXJpZ2h0OiAxMHB4OyBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIC5vd2wtc3RhZ2UgLml0ZW0geyBtYXgtd2lkdGg6IDQ2MHB4OyB9IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIC5vd2wtc3RhZ2UgLml0ZW0gYSB7IGNvbG9yOiAjMEY1ODlBOyBmb250LXNpemU6IDFyZW07IGZvbnQtd2VpZ2h0OiBub3JtYWw7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgZGlzcGxheTogYmxvY2s7IHBhZGRpbmc6IDIwcHg7IGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjNzY3MTc1OyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciAub3dsLXN0YWdlIC5pdGVtIGE6aG92ZXIsIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciAub3dsLXN0YWdlIC5pdGVtIGEuYWN0aXZlIHsgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MzsgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICMwNDMyNjM7IH1cblxuLmZpbHRlcnMsIGFydGljbGUgLm90aGVyLXRyYW5zbGF0aW9ucyB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgY29sb3I6ICNGRkY7IGJhY2tncm91bmQtY29sb3I6ICMwRjU4OUE7IGJvcmRlci1yYWRpdXM6IDVweDsgbWFyZ2luLXRvcDogLTYwcHg7IHBhZGRpbmc6IDAgMjBweDsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTE1cHgpOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5maWx0ZXJzLCBhcnRpY2xlIC5vdGhlci10cmFuc2xhdGlvbnMgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTsgbWFyZ2luLXRvcDogLTgwcHg7IH0gfVxuXG4uZmlsdGVycyBzZWxlY3QsIGFydGljbGUgLm90aGVyLXRyYW5zbGF0aW9ucyBzZWxlY3QgeyBjb2xvcjogI0ZGRjsgYm9yZGVyLWNvbG9yOiAjRkZGOyBtYXJnaW46IDMwcHggMDsgbWF4LXdpZHRoOiAyODVweDsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaWNvbnMvZG93bi1hcnJvdy13aGl0ZS5zdmdcIik7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCAxMHB4OyBiYWNrZ3JvdW5kLXNpemU6IDE0cHggN3B4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjMEY1ODlBOyB9XG5cbi5maWx0ZXJzIHNlbGVjdCBvcHRpb24sIGFydGljbGUgLm90aGVyLXRyYW5zbGF0aW9ucyBzZWxlY3Qgb3B0aW9uIHsgYmFja2dyb3VuZC1jb2xvcjogIzBGNTg5QTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZmlsdGVycyBzZWxlY3QsIGFydGljbGUgLm90aGVyLXRyYW5zbGF0aW9ucyBzZWxlY3QgeyBtYXgtd2lkdGg6IDMwNXB4OyB9IH1cblxuLmZpbHRlcnM6ZW1wdHksIGFydGljbGUgLm90aGVyLXRyYW5zbGF0aW9uczplbXB0eSB7IG1hcmdpbi1ib3R0b206IDQwcHg7IG1hcmdpbi10b3A6IDA7IH1cblxuLnNtYWxsLXR3by11cCAuZmlsdGVycywgLnNtYWxsLXR3by11cCBhcnRpY2xlIC5vdGhlci10cmFuc2xhdGlvbnMsIGFydGljbGUgLnNtYWxsLXR3by11cCAub3RoZXItdHJhbnNsYXRpb25zIHsgdHJhbnNmb3JtOiBub25lOyBtYXJnaW4tdG9wOiAtNTBweDsgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXG4vKiogSGVybyAqL1xuLmhlcm9fX2Jhbm5lciB7IGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjsgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgcG9zaXRpb246IHJlbGF0aXZlOyBoZWlnaHQ6IDIwMHB4OyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5oZXJvX19iYW5uZXIgeyBoZWlnaHQ6IDMwMHB4OyB9IH1cblxuLnRpZXJfb25lIC50ZXh0X19iZyB7IGJhY2tncm91bmQtY29sb3I6ICMwNDMyNjM7IH1cblxuLnRpZXJfb25lIC50ZXh0X19iZyBoMSwgLnRpZXJfb25lIC50ZXh0X19iZyBoMiwgLnRpZXJfb25lIC50ZXh0X19iZyAuc3ViaGVhZGluZywgLnRpZXJfb25lIC50ZXh0X19iZyBwLCAudGllcl9vbmUgLnRleHRfX2JnIGE6bm90KC5idXR0b24pIHsgY29sb3I6ICNGRkY7IH1cblxuLnRpZXJfb25lIC50ZXh0X19iZyBhLmJ1dHRvbiwgLnRpZXJfb25lIC50ZXh0X19iZyBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAudGllcl9vbmUgLnRleHRfX2JnIGEgeyBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC50aWVyX29uZSAudGV4dF9fYmcgYS5idXR0b24sIC50aWVyX29uZSAudGV4dF9fYmcgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLnRpZXJfb25lIC50ZXh0X19iZyBhIHsgbWFyZ2luLWJvdHRvbTogMHB4OyB9IH1cblxuLnRpZXJfb25lIC50ZXh0X19iZyBhOm9ubHktb2YtdHlwZSB7IG1hcmdpbjogMHB4OyB9XG5cbi5vdmVybGFwX19tYXJnaW4gLmNhcmQuY2FyZF9fcHJldmlldyAuY2FyZC1saW5rIC50ZXh0X193cmFwcGVyIGg1OmhvdmVyLCAub3ZlcmxhcF9fbWFyZ2luIC5jYXJkLmNhcmRfX3ByZXZpZXcgLmNhcmQtbGluayAudGV4dF9fd3JhcHBlciBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwOmhvdmVyLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAub3ZlcmxhcF9fbWFyZ2luIC5jYXJkLmNhcmRfX3ByZXZpZXcgLmNhcmQtbGluayAudGV4dF9fd3JhcHBlciBwOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnRpZXJfdHdvIC5oZXJvX19iYW5uZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQzMjYzOyBtaW4taGVpZ2h0OiAzMDBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAudGllcl90d28gLmhlcm9fX2Jhbm5lciB7IG1pbi1oZWlnaHQ6IHVuc2V0OyB9IH1cblxuLnRpZXJfdHdvIC5oZXJvX19vZmZzZXQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMEYwOyB9XG5cbi50aWVyX3R3byAuaGVyb19fb2Zmc2V0IGgxLCAudGllcl90d28gLmhlcm9fX29mZnNldCAuaDEsIC50aWVyX3R3byAuaGVyb19fb2Zmc2V0IGgyLCAudGllcl90d28gLmhlcm9fX29mZnNldCAuaDIgeyBiYWNrZ3JvdW5kOiBub25lOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC50aWVyX3RocmVlIHsgcGFkZGluZy10b3A6IDE5MHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG4udGllcl90aHJlZSAuY2FyZCB7IGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7IHBhZGRpbmc6IDI4cHggMjRweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAudGllcl90aHJlZSAuY2FyZCB7IHBhZGRpbmctbGVmdDogMjBweDsgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG5cbi50aWVyX29uZSAuY2FyZCwgLnRpZXJfdHdvIC5jYXJkLCAuaGVyby1ldmVudCAuY2FyZCB7IHBhZGRpbmc6IDMycHggMjBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAudGllcl9vbmUgLmNhcmQsIC50aWVyX3R3byAuY2FyZCwgLmhlcm8tZXZlbnQgLmNhcmQgeyBwYWRkaW5nOiAzMnB4IDQwcHg7IH0gfVxuXG4udGllcl9vbmUgcCwgLnRpZXJfdHdvIHAsIC50aWVyX3RocmVlIHAgeyBmb250LWZhbWlseTogJ0F2ZW5pciBMVCBXMDFfNTUgUm9tYW4xNDc1NTIwJzsgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuXG4udGllcl90d28gcCwgLnRpZXJfdHdvIC5sYXJnZV9pbnRybyBzcGFuLCAudGllcl90aHJlZSBwLCAudGllcl90aHJlZSAubGFyZ2VfaW50cm8gc3BhbiB7IGZvbnQtc2l6ZTogMS4yNXJlbTsgbGluZS1oZWlnaHQ6IDEuNzVyZW07IGxldHRlci1zcGFjaW5nOiAwOyBjb2xvcjogIzA0MzI2MzsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAudGllcl90d28gcCwgLnRpZXJfdHdvIC5sYXJnZV9pbnRybyBzcGFuLCAudGllcl90aHJlZSBwLCAudGllcl90aHJlZSAubGFyZ2VfaW50cm8gc3BhbiB7IGZvbnQtc2l6ZTogMS4yNXJlbTsgbGluZS1oZWlnaHQ6IDEuODc1cmVtOyB9IH1cblxuLmhlcm8tZXZlbnQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyBwYWRkaW5nLWJvdHRvbTogNDJweDsgfVxuXG4uaGVyby1ldmVudCAuc2hhcmUgeyBtYXJnaW46IDIzcHggMDsgfVxuXG4uaGVyby1ldmVudCAuY29udGVudCAuY2VsbCB7IGJhY2tncm91bmQtY29sb3I6ICNGRkY7IH1cblxuLmhlcm8tZXZlbnQgLmNvbnRlbnQgLmNvbnRlbnQtdGV4dCB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLmhlcm8tZXZlbnQgLmNvbnRlbnQgLmNvbnRlbnQtdGV4dCAuaGVyb19fYnV0dG9uX193cmFwIHsgbWFyZ2luLXRvcDogYXV0bzsgfVxuXG4uaGVyby1ldmVudCAuY29udGVudCAuY29udGVudC10ZXh0IC5oZXJvX19idXR0b25fX3dyYXAgLmJ1dHRvbiwgLmhlcm8tZXZlbnQgLmNvbnRlbnQgLmNvbnRlbnQtdGV4dCAuaGVyb19fYnV0dG9uX193cmFwIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5oZXJvLWV2ZW50IC5jb250ZW50IC5jb250ZW50LXRleHQgLmhlcm9fX2J1dHRvbl9fd3JhcCBhIHsgZGlzcGxheTogdGFibGU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmhlcm8tZXZlbnQgLmNvbnRlbnQgLmNvbnRlbnQtdGV4dCB7IGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsgfSB9XG5cbi5oZXJvX19vZmZzZXQgeyBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDEwMDsgbWFyZ2luLXRvcDogLTIwMHB4OyBtaW4taGVpZ2h0OiAyNzBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuaGVyb19fb2Zmc2V0IHsgbWFyZ2luLXRvcDogLTI1MHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmhlcm9fX29mZnNldCB7IG1hcmdpbi10b3A6IC0yMDBweDsgfSB9XG5cbi5oZXJvX3RpZXIzX2xhcmdlIHsgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXG4uaGVyb190aWVyM19pbWcgeyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG5cbi5oZWFkZXI0X3YyIC5jYXB0aW9uIHsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV84NSBIZWF2eTE0NzU1NDRcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDAuODc1cmVtOyBjb2xvcjogIzA0MzI2MzsgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuXG4uaGVhZGVyNF92MiAuY2FwdGlvbi5kYXRlOmJlZm9yZSB7IG1hcmdpbi10b3A6IDBweDsgfVxuXG4uaGVhZGVyNF92MiBpbWcgeyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBvYmplY3QtZml0OiBjb3Zlcjsgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9XG5cbi5oZXJvX19tZWRpYSB7IHBhZGRpbmc6IDEwMHB4IDBweDsgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9wbGFjZWhvbGRlci5qcGcpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cblxuLmhlcm9fX21lZGlhIC5idXR0b24sIC5oZXJvX19tZWRpYSBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuaGVyb19fbWVkaWEgYSB7IHdpZHRoOiB1bnNldCAhaW1wb3J0YW50OyB9XG5cbi5oZXJvX19tZWRpYSAueW91dHViZV9fYnRuIHsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uaGVyb19fbWVkaWEgLnlvdXR1YmVfX2J0biBhIHsgZGlzcGxheTogdGFibGU7IG1hcmdpbjogMCBhdXRvOyB9XG5cbi5oZXJvX19tZWRpYSAubGlnaHRib3ggeyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7IG92ZXJmbG93OiBzY3JvbGw7IHBvc2l0aW9uOiBmaXhlZDsgZGlzcGxheTogbm9uZTsgei1pbmRleDogMTsgYm90dG9tOiAwOyByaWdodDogMDsgbGVmdDogMDsgdG9wOiAwOyB9XG5cbi5oZXJvX19tZWRpYSAubGlnaHRib3ggLmxpZ2h0Ym94LWNvbnRhaW5lciB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbWF4LXdpZHRoOiA5NjBweDsgbWFyZ2luOiA3JSBhdXRvOyBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogMCAzJTsgaGVpZ2h0OiBhdXRvOyB6LWluZGV4OiAxMDsgfVxuXG4uaGVyb19fbWVkaWEgLmxpZ2h0Ym94IC5saWdodGJveC1jb250YWluZXIgLmxpZ2h0Ym94LWNvbnRlbnQgeyBib3gtc2hhZG93OiAwIDFweCA2cHggcmdiYSgwLCAwLCAwLCAwLjcpOyB9XG5cbi5oZXJvX19tZWRpYSAubGlnaHRib3ggLmxpZ2h0Ym94LWNvbnRhaW5lciAubGlnaHRib3gtY29udGVudCAubGlnaHRib3gtY2xvc2UgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgcG9zaXRpb246IGFic29sdXRlOyBmb250LXdlaWdodDogMzAwOyBmb250LXNpemU6IDEycHg7IGRpc3BsYXk6IGJsb2NrOyBib3JkZXI6IG5vbmU7IGNvbG9yOiB3aGl0ZTsgdG9wOiAtMjJweDsgcmlnaHQ6IDMlOyB9XG5cbi5oZXJvX19tZWRpYSAubGlnaHRib3ggLmxpZ2h0Ym94LWNvbnRhaW5lciAubGlnaHRib3gtY29udGVudCAudmlkZW8tY29udGFpbmVyIHsgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nLXRvcDogMzBweDsgb3ZlcmZsb3c6IGhpZGRlbjsgaGVpZ2h0OiAwOyB9XG5cbi5oZXJvX19tZWRpYSAubGlnaHRib3ggLmxpZ2h0Ym94LWNvbnRhaW5lciAubGlnaHRib3gtY29udGVudCAudmlkZW8tY29udGFpbmVyIGlmcmFtZSwgLmhlcm9fX21lZGlhIC5saWdodGJveCAubGlnaHRib3gtY29udGFpbmVyIC5saWdodGJveC1jb250ZW50IC52aWRlby1jb250YWluZXIgb2JqZWN0LCAuaGVyb19fbWVkaWEgLmxpZ2h0Ym94IC5saWdodGJveC1jb250YWluZXIgLmxpZ2h0Ym94LWNvbnRlbnQgLnZpZGVvLWNvbnRhaW5lciBlbWJlZCB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgaGVpZ2h0OiAxMDAlOyB3aWR0aDogMTAwJTsgbGVmdDogMDsgdG9wOiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7IC5oZXJvX25ld3NfdmVyc2lvbiB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgbWFyZ2luLXRvcDogMTBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7IC5oZXJvX25ld3NfdmVyc2lvbiAuaGVhZGluZ19uZXdzIHsgbWFyZ2luLXRvcDogNDBweDsgfSB9XG5cbi5oZXJvX25ld3NfdmVyc2lvbiAuaGVhZGluZ19uZXdzIHAgeyBtYXJnaW4tYm90dG9tOiA1cHg7IH1cblxuLmhlcm9fbmV3c192ZXJzaW9uIC5oZWFkaW5nX25ld3MgcDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4uaGVyb19uZXdzX3ZlcnNpb24gLm5ld3NfdGFncyAuY2VsbCB7IG1hcmdpbjogMHB4IDEwcHggMjBweCAwcHg7IHBhZGRpbmc6IDVweCAyMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0QjdFOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMTVweDsgfVxuXG4uaGVyb19uZXdzX3ZlcnNpb24gLm5ld3NfdGFncyAuY2VsbCBhIHsgY29sb3I6ICNmZmY7IH1cblxuLmhlcm9fbmV3c192ZXJzaW9uIC5uZXdzX3N1cHBvcnRlcnMgLmdyaWQteCB7IGhlaWdodDogMTAwJTsgfVxuXG4uaGVyb19uZXdzX3ZlcnNpb24gLm5ld3Nfc3VwcG9ydGVycyAuZ3JpZC14IC5jZWxsIHsgcGFkZGluZzogMHB4IDVweDsgbWFyZ2luOiAwcHggMHB4IDEwcHggMHB4OyB9XG5cbi5oZXJvX3RpZXI1X2xhcmdlIC5oZXJvX3RleHRfYXJlYSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaGVyb190aWVyNV9sYXJnZSAuaGVyb190ZXh0X2FyZWEgLmhlcm9fdGl0bGVfYXJlYSB7IHBhZGRpbmc6IDBweCA1MHB4OyBtaW4taGVpZ2h0OiAxMDBweDsgfVxuXG4uaGVyb190aWVyNV9sYXJnZSAuaGVyb190ZXh0X2FyZWEgLmhlcm9fdGl0bGVfYXJlYSBoNCB7IGxpbmUtaGVpZ2h0OiA0NXB4OyB9XG5cbi5oZXJvX3RpZXI1X2xhcmdlIC5oZXJvX3RleHRfYXJlYSAuaGVyb190aXRsZV9hcmVhIC5zdWJoZWFkaW5nIHsgcGFkZGluZzogMTVweCAzMHB4OyBiYWNrZ3JvdW5kOiAjRDdEN0Q3OyBwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAwcHg7IH1cblxuLmhlcm9fdGllcjVfbGFyZ2UgLmhlcm9fdGV4dF9hcmVhIC5oZXJvX2luZm9fYXJlYSB7IHBhZGRpbmc6IDIwcHggNTBweCA1MHB4IDUwcHg7IGJhY2tncm91bmQ6ICNEN0Q3RDc7IH1cblxuLmhlcm9fdGllcjVfbGFyZ2UgLmhlcm9fdGV4dF9hcmVhIC5oZXJvX2luZm9fYXJlYSBoNTo6YmVmb3JlLCAuaGVyb190aWVyNV9sYXJnZSAuaGVyb190ZXh0X2FyZWEgLmhlcm9faW5mb19hcmVhIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHA6OmJlZm9yZSwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmhlcm9fdGllcjVfbGFyZ2UgLmhlcm9fdGV4dF9hcmVhIC5oZXJvX2luZm9fYXJlYSBwOjpiZWZvcmUgeyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvY2xvY2stYmx1ZS5wbmcpOyBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMjBweDsgd2lkdGg6IDIwcHg7IGhlaWdodDogMjBweDsgcmlnaHQ6IDIwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMjVweDsgfVxuXG4uaGVyb190aWVyNV9sYXJnZSAuaGVyb190ZXh0X2FyZWEgLmhlcm9faW5mb19hcmVhIHAgeyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5oZXJvX3RpZXI1X2xhcmdlIC5oZXJvX3RleHRfYXJlYSAuaGVyb19pbmZvX2FyZWEgLmhlcm9fZGF0YSB7IHBhZGRpbmctbGVmdDogMjBweDsgfVxuXG4uaGVyb190aWVyNV9sYXJnZSAuaGVyb190aHVtYm5haWwgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IGJhY2tncm91bmQtc2l6ZTogY292ZXI7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuLmZhY3RzaGVldF9iYW5uZXJfY29udGFpbmVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmZhY3RzaGVldF9iYW5uZXJfY29udGFpbmVyIC5wcmludF9idG4geyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IHBhZGRpbmc6IDE1cHggMjVweDsgY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6ICMwRjU4OUE7IGJvcmRlci1yYWRpdXM6IDVweDsgZm9udC13ZWlnaHQ6IDcwMDsgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogMTJweDsgdHJhbnNpdGlvbjogYWxsIDAuM3M7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmZhY3RzaGVldF9iYW5uZXJfY29udGFpbmVyIC5wcmludF9idG4geyByaWdodDogMTBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5mYWN0c2hlZXRfYmFubmVyX2NvbnRhaW5lciAucHJpbnRfYnRuLlRvY19wcmludCB7IGJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5mYWN0c2hlZXRfYmFubmVyX2NvbnRhaW5lciAucHJpbnRfYnRuIGkgeyBtYXJnaW4tbGVmdDogNXB4OyB9IH1cblxuLmZhY3RzaGVldF9iYW5uZXJfY29udGFpbmVyIC5wcmludF9idG46aG92ZXIsIC5mYWN0c2hlZXRfYmFubmVyX2NvbnRhaW5lciBhLnByaW50X2J0bi5hY3RpdmUsIC5mYWN0c2hlZXRfYmFubmVyX2NvbnRhaW5lciBidXR0b24ucHJpbnRfYnRuLmFjdGl2ZSB7IGJhY2tncm91bmQtY29sb3I6ICMwNDMyNjM7IH1cblxuLmZhY3RzaGVldF9iYW5uZXJfY29udGFpbmVyIC5wcmludF9idG46aG92ZXIgaSwgLmZhY3RzaGVldF9iYW5uZXJfY29udGFpbmVyIGEucHJpbnRfYnRuLmFjdGl2ZSBpLCAuZmFjdHNoZWV0X2Jhbm5lcl9jb250YWluZXIgYnV0dG9uLnByaW50X2J0bi5hY3RpdmUgaSB7IGNvbG9yOiAjRkRDNDAwOyB9XG5cbi5mYWN0c2hlZXRfaGVyb19jb250ZW50IHsgcGFkZGluZy1sZWZ0OiA2MHB4ICFpbXBvcnRhbnQ7IHBhZGRpbmctcmlnaHQ6IDYwcHggIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgeyAuZmFjdHNoZWV0X2hlcm9fY29udGVudCB7IHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuLmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWNsb3NlLWljb24geyBtYXJnaW46IDIwcHggNDBweCAyMHB4IDA7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cblxuLmRlY2xhcmF0aW9uSW50ZXJlc3RzLCAudmlkZW9fbGlnaHRib3ggeyBkaXNwbGF5OiBub25lOyB9XG5cbi5kZWNsYXJhdGlvbkludGVyZXN0cyAuZGVjbGFyYXRpb25IZWFkZXIsIC5kZWNsYXJhdGlvbkludGVyZXN0cyAudmlkZW8tYm94LCAudmlkZW9fbGlnaHRib3ggLmRlY2xhcmF0aW9uSGVhZGVyLCAudmlkZW9fbGlnaHRib3ggLnZpZGVvLWJveCB7IG1hcmdpbi10b3A6IDUwcHg7IH1cblxuLmRlY2xhcmF0aW9uSW50ZXJlc3RzIHRhYmxlLCAudmlkZW9fbGlnaHRib3ggdGFibGUgeyBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyBib3JkZXI6IDFweCBzb2xpZCAjNzY3MTc1OyBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbi5kZWNsYXJhdGlvbkludGVyZXN0cyB0YWJsZSB0ZCwgLmRlY2xhcmF0aW9uSW50ZXJlc3RzIHRhYmxlIHRoLCAudmlkZW9fbGlnaHRib3ggdGFibGUgdGQsIC52aWRlb19saWdodGJveCB0YWJsZSB0aCB7IHBhZGRpbmc6IDEwcHg7IHBhZGRpbmctcmlnaHQ6IDMwcHg7IGJvcmRlcjogMXB4IHNvbGlkICM3NjcxNzU7IH1cblxuI21hcCB7IGhlaWdodDogNTMwcHg7IH1cblxuI21hcCBidXR0b246YWZ0ZXIgeyBjb250ZW50OiBub25lOyB9XG5cbi5tYXAtd3JhcCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubWFwLXdyYXAgLmNhbGxvdXQtLWNvbnRhY3QgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMzZweDsgbGVmdDogNTAlOyB3aWR0aDogMTAwJTsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLm1hcC13cmFwIC5jYWxsb3V0LS1jb250YWN0IHsgdG9wOiA1MCU7IGJvdHRvbTogYXV0bzsgZm9udC1zaXplOiAxLjI1cmVtOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfSB9XG5cbi5tYXAtd3JhcCAuY2FsbG91dC0tY29udGFjdCAuY2VsbCB7IGJhY2tncm91bmQ6ICNGRkY7IHBhZGRpbmc6IDQwcHg7IH1cblxuLm1hcC13cmFwIC5jYWxsb3V0LS1jb250YWN0IGFkZHJlc3MgeyBmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzU1IFJvbWFuMTQ3NTUyMFwiOyBmb250LXN0eWxlOiBub3JtYWw7IGNvbG9yOiAjMDQzMjYzOyBtYXJnaW4tYm90dG9tOiAyOHB4OyB9XG5cbi8qKiBTRUNUSU9OICAqL1xuc2VjdGlvbiB7IG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgc2VjdGlvbiB7IG1hcmdpbi1ib3R0b206IDUwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyBzZWN0aW9uIHsgbWFyZ2luLWJvdHRvbTogODBweDsgfSB9XG5cbnNlY3Rpb24uc2VjdGlvbi1jb2xsYXBzZSB7IG1hcmdpbjogMDsgfVxuXG5zZWN0aW9uLnNlY3Rpb24tc2lkZWJhciB7IG1hcmdpbi1ib3R0b206IDA7IHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbnNlY3Rpb24uc2VjdGlvbi1wdWxsdXAgeyBtYXJnaW4tdG9wOiAtMzBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyBzZWN0aW9uLnNlY3Rpb24tcHVsbHVwIHsgbWFyZ2luLXRvcDogLTUwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyBzZWN0aW9uLnNlY3Rpb24tcHVsbHVwIHsgbWFyZ2luLXRvcDogLTgwcHg7IH0gfVxuXG5zZWN0aW9uLmdyZXlCZyB7IGJhY2tncm91bmQtY29sb3I6ICNGNEY0RjQ7IH1cblxuc2VjdGlvbi5ncmV5QmcgLmdyaWQtY29udGFpbmVyIHsgcGFkZGluZy10b3A6IDQwcHg7IHBhZGRpbmctYm90dG9tOiA0MHB4OyB9XG5cbnNlY3Rpb24uZ3JleUJnIC5ncmlkLWNvbnRhaW5lci5wdXNoZG93bi13cmFwIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgfVxuXG5zZWN0aW9uLmdyZXlCZyAuZ3JpZC1jb250YWluZXIucHVzaGRvd24td3JhcCAuYWNjb3JkaW9uX19jYXJkLCBzZWN0aW9uLmdyZXlCZyAuZ3JpZC1jb250YWluZXIucHVzaGRvd24td3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyB9XG5cbnNlY3Rpb24uZ3JleUJnIC5ncmlkLWNvbnRhaW5lci50cmFuc3BhcmVudCB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbnNlY3Rpb24uZ3JleUJnIC5ncmlkLWNvbnRhaW5lci50cmFuc3BhcmVudCAuZ3JpZC14IHsgYmFja2dyb3VuZC1jb2xvcjogIzBGNTg5QTsgfVxuXG5zZWN0aW9uLmdyZXlCZyAuZ3JpZC1jb250YWluZXIudHJhbnNwYXJlbnQgLmdyaWQteC50cmFuc3BhcmVudCB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbnNlY3Rpb24uZ3JleUJnIC5ncmlkLWNvbnRhaW5lci50cmFuc3BhcmVudCAuZ3JpZC14OmZpcnN0LWNoaWxkIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuc2VjdGlvbi5ncmV5QmcgLmdyaWQtY29udGFpbmVyLnRyYW5zcGFyZW50IC5jZWxsIHsgYmFja2dyb3VuZC1jb2xvcjogIzBGNTg5QTsgfVxuXG5zZWN0aW9uLmdyZXlCZyAuZ3JpZC1jb250YWluZXIudHJhbnNwYXJlbnQgLmNlbGwudHJhbnNwYXJlbnQgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5zZWN0aW9uLmdyZXlCZyAuZ3JpZC1jb250YWluZXIudHJhbnNwYXJlbnQgLmNlbGwuaW5uZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5zZWN0aW9uLmdyZXlCZyAuZ3JpZC1jb250YWluZXIudHJhbnNwYXJlbnQgLmNlbGwubWVkaXVtLTUgeyBwYWRkaW5nOiAyMHB4OyB9XG5cbnNlY3Rpb24uZ3JleUJnIC5ncmlkLWNvbnRhaW5lci50cmFuc3BhcmVudCAuY2VsbC53cmFwcGVyIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuc2VjdGlvbi5ncmV5QmcgLmdyaWQtY29udGFpbmVyLnRyYW5zcGFyZW50IC5jZWxsLndyYXBwZXIgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIGEgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMEY1ODlBOyB9XG5cbnNlY3Rpb24uZ3JleUJnIC5ncmlkLWNvbnRhaW5lci50cmFuc3BhcmVudCAuY2VsbC5jYXJkX19oZWFkaW5nX19pbm5lciB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbnNlY3Rpb24uZ3JleUJnIC5ncmlkLWNvbnRhaW5lciAuY2FyZC5jYXJkX19zaW1wbGUgeyBwYWRkaW5nOiAyMHB4OyB9XG5cbnNlY3Rpb24uYWNjb3JkaW9uQmcgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyB9XG5cbnNlY3Rpb24uYWNjb3JkaW9uQmcgLmFjY29yZGlvbiwgc2VjdGlvbi5hY2NvcmRpb25CZyAuYWNjb3JkaW9uLWNvbnRlbnQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyB9XG5cbnNlY3Rpb24ubGlzdGluZ3MgeyBiYWNrZ3JvdW5kOiAjRjRGNEY0OyBwYWRkaW5nLWJvdHRvbTogNDBweDsgfVxuXG5zZWN0aW9uLmxpc3RpbmdzLmhhcy1oZWFkaW5nIHsgYmFja2dyb3VuZDogbm9uZTsgfVxuXG5zZWN0aW9uLmxpc3RpbmdzLmhhcy1oZWFkaW5nIC5saXN0aW5nIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgfVxuXG5zZWN0aW9uLmxpc3RpbmdzLnN0b3JpZXMgeyBwYWRkaW5nLXRvcDogNDBweDsgfVxuXG5zZWN0aW9uLmxpc3RpbmdzLnJpc2stZmFjdG9ycyB7IG1hcmdpbi10b3A6IC04MHB4OyBtYXJnaW4tYm90dG9tOiA3MHB4OyBwYWRkaW5nLXRvcDogNDBweDsgfVxuXG5zZWN0aW9uLmZvcm0geyBiYWNrZ3JvdW5kOiAjRjBGMEYwOyBwYWRkaW5nOiA0MHB4IDA7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyBzZWN0aW9uLmZvcm0geyBwYWRkaW5nOiA4MHB4IDA7IH0gfVxuXG5zZWN0aW9uLm1iMCB7IG1hcmdpbi1ib3R0b206IDBweDsgfVxuXG5AbWVkaWEgcHJpbnQgeyAuZmFjdHNoZWV0LWNvbnRlbnQgLm1lZGl1bS04LCAuZmFjdHNoZWV0LWNvbnRlbnQgLmhlYWRpbmcubWVkaXVtLTgsIC5mYWN0c2hlZXQtY29udGVudCAuY2FyZF9fZGV0YWlscywgLmNhcmQuY2FyZF9faGVhZGluZyAubWVkaXVtLTgsIC5jYXJkLmNhcmRfX2hlYWRpbmcgLmhlYWRpbmcubWVkaXVtLTgsIC5jYXJkLmNhcmRfX2hlYWRpbmcgLmNhcmRfX2RldGFpbHMgeyB3aWR0aDogMTAwJTsgbGVmdDogMCU7IH1cbiAgLmZhY3RzaGVldC1jb250ZW50IC5jYXJkX19kZXRhaWxzIHsgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgbGVmdDogMCUgIWltcG9ydGFudDsgfVxuICAuZmFjdHNoZWV0LWNvbnRlbnQgLmNhcmRfX2RldGFpbHMgLmJ1dHRvbiwgLmZhY3RzaGVldC1jb250ZW50IC5jYXJkX19kZXRhaWxzIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5mYWN0c2hlZXQtY29udGVudCAuY2FyZF9fZGV0YWlscyBhIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAuZmFjdHNoZWV0X2hlcm9fY29udGVudCB7IHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IGhlaWdodDogNDV2aDsgfVxuICAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50LCAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50X21vYmlsZSwgI2Nvb2tpZS1sYXctaW5mby1hZ2FpbiB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgb3BhY2l0eTogMDsgfVxuICAuZmFjdHNoZWV0X2Jhbm5lcl9jb250YWluZXIgeyB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyBoZWlnaHQ6IDQ1dmg7IH1cbiAgLmNhcmRfX2ZlYXR1cmVkX190ZXh0LCAuY2FyZF9fZmVhdHVyZWQgeyB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9IH1cblxuLyoqIFNIQVJFICovXG4uc2hhcmUgeyBtYXJnaW46IDAgYXV0bzsgfVxuXG4uc2hhcmUgLnNoYXJlLS10aXRsZSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uc2hhcmUgdWwuc29jaWFsLS1saXN0IHsgcGFkZGluZzogMDsgbWFyZ2luOiAwOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGxpc3Qtc3R5bGU6IG5vbmU7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLnNoYXJlIHVsLnNvY2lhbC0tbGlzdCBsaSB7IGRpc3BsYXk6IGlubGluZS1mbGV4OyB3aWR0aDogMjJweDsgaGVpZ2h0OiAyMnB4OyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBib3JkZXItcmFkaXVzOiA1MCU7IH1cblxuLnNoYXJlIHVsLnNvY2lhbC0tbGlzdCBsaSBhIHsgZGlzcGxheTogZmxleDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGNvbG9yOiAjRkZGOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGZvbnQtc2l6ZTogMTJweDsgfVxuXG4vKiogVklERU8gKi9cbi52aWRlbyBoMSwgLnZpZGVvIGgyLCAudmlkZW8gaDMsIC52aWRlbyBoNCwgLnZpZGVvIGg1LCAudmlkZW8gc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLnZpZGVvIHAsIC52aWRlbyBoNiwgLnZpZGVvIC51cGRhdGVkIC5kYXRlLCAudXBkYXRlZCAudmlkZW8gLmRhdGUsIC52aWRlbyAuaDEsIC52aWRlbyAuaDIsIC52aWRlbyAuaDMsIC52aWRlbyAuaDQsIC52aWRlbyAuaDUsIC52aWRlbyAuaDYgeyBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi52aWRlby52aWRlb19fZW1iZWQgLnZpZGVvX193cmFwcGVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyAvKiAxNjo5ICovIGhlaWdodDogMDsgbWFyZ2luLWJvdHRvbTogMTJweDsgfVxuXG4udmlkZW8udmlkZW9fX2VtYmVkIC52aWRlb19fd3JhcHBlciBpZnJhbWUgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgfVxuXG4udmlkZW8udmlkZW9fX2VtYmVkIC52aWRlb19faWNvbiB7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy92aWRlby1wbGF5ZXItaWNvbi5zdmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlci8yOHB4IDE3cHg7IG1pbi1oZWlnaHQ6IDE4cHg7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgLnZpZGVvLnZpZGVvX19lbWJlZCAudmlkZW9fX2ljb24geyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvdmlkZW8tcGxheWVyLWljb24uc3ZnKTsgbWFzay1zaXplOiAyOHB4IDE3cHg7IG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7IH0gfVxuXG4udmlkZW8udmlkZW9fX2VtYmVkIC52aWRlb19faWNvbi5zb3VuZGNsb3VkIHsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3NvdW5kY2xvdWQtcGxheWVyLWljb24uc3ZnKSBuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTogMzRweCAyN3B4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMzRweDsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAudmlkZW8udmlkZW9fX2VtYmVkIC52aWRlb19faWNvbi5zb3VuZGNsb3VkIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL3NvdW5kY2xvdWQtcGxheWVyLWljb24uc3ZnKTsgbWFzay1zaXplOiAzNHB4IDI3cHg7IG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7IG1hc2stcG9zaXRpb246IGNlbnRlciAzNHB4OyB9IH1cblxuLnZpZGVvLnZpZGVvX19lbWJlZCAudmlkZW8tdGV4dCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udmlkZW8udmlkZW9fX2VtYmVkIC52aWRlb19fZGVzY3JpcHRpb24geyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgbWFyZ2luLWJvdHRvbTogMDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG4udmlkZW8udmlkZW9fX2VtYmVkIC52aWRlb19faW5mbyB7IGNvbG9yOiAjNzY3MTc1OyBmb250LXNpemU6IDAuODc1cmVtOyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnZpZGVvLnZpZGVvX19lbWJlZCAudmlkZW9fX2luZm8udmlkZW9fX3RpbWUgeyBwYWRkaW5nLWxlZnQ6IDE1cHg7IH1cblxuLnZpZGVvLnZpZGVvX19lbWJlZCAudmlkZW9fX2luZm8udmlkZW9fX3RpbWU6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXCI7IHRvcDogNTAlOyBsZWZ0OiAtMTVweDsgaGVpZ2h0OiAyMXB4OyB3aWR0aDogMjFweDsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3RpbWUtaWNvbi5zdmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlci8yMXB4IDIxcHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAudmlkZW8udmlkZW9fX2VtYmVkIC52aWRlb19faW5mby52aWRlb19fdGltZTo6YmVmb3JlIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL3RpbWUtaWNvbi5zdmcpOyBtYXNrLXNpemU6IDIxcHggMjFweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgbWFzay1wb3NpdGlvbjogbGVmdCBjZW50ZXI7IH0gfVxuXG4udmlkZW8udmlkZW9fX2VtYmVkIC52aWRlb19faW5mby52aWV3X19jb3VudCB7IG1hcmdpbi1sZWZ0OiAzMHB4OyB9XG5cbi52aWRlby52aWRlb19fZW1iZWQgLnZpZGVvX21hcmdpbiB7IG1hcmdpbi10b3A6IDEwcHg7IH1cblxuLnZpZGVvIC52aWRlb19fYmFubmVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyBoZWlnaHQ6IDA7IHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IG92ZXJmbG93OiBoaWRkZW47IG1hcmdpbi1ib3R0b206IDIycHg7IH1cblxuLnZpZGVvIC52aWRlb19fYmFubmVyIGltZyB7IHdpZHRoOiAxMDAlOyBvYmplY3QtZml0OiBjb3Zlcjsgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNTAlOyBsZWZ0OiA1MCU7IHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbi52aWRlbyAudmlkZW8tY29udGFpbmVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyBoZWlnaHQ6IDA7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnZpZGVvIC52aWRlby1jb250YWluZXIgaWZyYW1lLCAudmlkZW8gLnZpZGVvLWNvbnRhaW5lciBvYmplY3QsIC52aWRlbyAudmlkZW8tY29udGFpbmVyIGVtYmVkIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IH1cblxuLnZpZGVvIC5wbGF5YnV0dG9uIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDUwJTsgbGVmdDogNTAlOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3ZpZGVvLXBsYXkuc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlci81MHB4IDUwcHg7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IHotaW5kZXg6IDk5OTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAudmlkZW8gLnBsYXlidXR0b24geyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvdmlkZW8tcGxheS5zdmcpOyBtYXNrLXNpemU6IDUwcHggNTBweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgbWFzay1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC52aWRlbyAucGxheWJ1dHRvbiB7IGJhY2tncm91bmQtc2l6ZTogNjVweCA2NXB4OyB9IH1cblxuLnZpZGVvIC5wbGF5YnV0dG9uOmhvdmVyLCAudmlkZW8gYS5wbGF5YnV0dG9uLmFjdGl2ZSwgLnZpZGVvIGJ1dHRvbi5wbGF5YnV0dG9uLmFjdGl2ZSB7IGN1cnNvcjogcG9pbnRlcjsgfVxuXG4udmlkZW8gLmNsb3NlIHsgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgeyAubWVkaWEgLnZpZGVvX19lbWJlZCB7IG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuXG4ubWVkaWEgLnZpZGVvX19lbWJlZCAudmlkZW9fX3dyYXBwZXIgeyBtYXJnaW4tYm90dG9tOiAxMnB4OyB9XG5cbi5tZWRpYSAudmlkZW9fX2VtYmVkIC52aWRlb19faW5mby52aWRlb19fdGltZSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubWVkaWEgLnZpZGVvX19lbWJlZCAudmlkZW9fX2luZm8udmlkZW9fX3RpbWU6YmVmb3JlIHsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyB9XG5cbi5jYy13aW5kb3cgeyBvcGFjaXR5OiAxOyAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZTsgdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlOyB9XG5cbi5jYy13aW5kb3cuY2MtaW52aXNpYmxlIHsgb3BhY2l0eTogMDsgfVxuXG4uY2MtYW5pbWF0ZS5jYy1yZXZva2UgeyAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyBlYXNlOyAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDFzIGVhc2U7IHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDFzIGVhc2U7IHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyBlYXNlOyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgZWFzZSwtd2Via2l0LXRyYW5zZm9ybSAxcyBlYXNlOyB9XG5cbi5jYy1hbmltYXRlLmNjLXJldm9rZS5jYy10b3AgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMmVtKTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yZW0pOyB9XG5cbi5jYy1hbmltYXRlLmNjLXJldm9rZS5jYy1ib3R0b20geyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyZW0pOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMmVtKTsgfVxuXG4uY2MtYW5pbWF0ZS5jYy1yZXZva2UuY2MtYWN0aXZlLmNjLXRvcCB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLmNjLWFuaW1hdGUuY2MtcmV2b2tlLmNjLWFjdGl2ZS5jYy1ib3R0b20geyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbi5jYy1yZXZva2U6aG92ZXIsIGEuY2MtcmV2b2tlLmFjdGl2ZSwgYnV0dG9uLmNjLXJldm9rZS5hY3RpdmUgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbi5jYy1ncm93ZXIgeyBtYXgtaGVpZ2h0OiAwOyBvdmVyZmxvdzogaGlkZGVuOyAtd2Via2l0LXRyYW5zaXRpb246IG1heC1oZWlnaHQgMXM7IHRyYW5zaXRpb246IG1heC1oZWlnaHQgMXM7IH1cblxuLmNjLXJldm9rZSwgLmNjLXdpbmRvdyB7IHBvc2l0aW9uOiBmaXhlZDsgb3ZlcmZsb3c6IGhpZGRlbjsgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LWZhbWlseTogSGVsdmV0aWNhLENhbGlicmksQXJpYWwsc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxNnB4OyBsaW5lLWhlaWdodDogMS41ZW07IGRpc3BsYXk6IC13ZWJraXQtYm94OyBkaXNwbGF5OiAtbXMtZmxleGJveDsgZGlzcGxheTogZmxleDsgLW1zLWZsZXgtd3JhcDogbm93cmFwOyBmbGV4LXdyYXA6IG5vd3JhcDsgei1pbmRleDogOTk5OTsgfVxuXG4uY2Mtd2luZG93LmNjLXN0YXRpYyB7IHBvc2l0aW9uOiBzdGF0aWM7IH1cblxuLmNjLXdpbmRvdy5jYy1mbG9hdGluZyB7IHBhZGRpbmc6IDJlbTsgbWF4LXdpZHRoOiAyNGVtOyAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOyAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLmNjLXdpbmRvdy5jYy1iYW5uZXIgeyBwYWRkaW5nOiAxZW0gMS44ZW07IHdpZHRoOiAxMDAlOyAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7IC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsOyAtbXMtZmxleC1kaXJlY3Rpb246IHJvdzsgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4uY2MtcmV2b2tlIHsgcGFkZGluZzogLjVlbTsgfVxuXG4uY2MtcmV2b2tlOmhvdmVyLCBhLmNjLXJldm9rZS5hY3RpdmUsIGJ1dHRvbi5jYy1yZXZva2UuYWN0aXZlIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmNjLWhlYWRlciB7IGZvbnQtc2l6ZTogMThweDsgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uY2MtYnRuLCAuY2MtY2xvc2UsIC5jYy1saW5rLCAuY2MtcmV2b2tlIHsgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5jYy1saW5rIHsgb3BhY2l0eTogLjg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgcGFkZGluZzogLjJlbTsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmNjLWxpbms6aG92ZXIsIGEuY2MtbGluay5hY3RpdmUsIGJ1dHRvbi5jYy1saW5rLmFjdGl2ZSB7IG9wYWNpdHk6IDE7IH1cblxuLmNjLWxpbms6YWN0aXZlLCAuY2MtbGluazp2aXNpdGVkIHsgY29sb3I6IGluaXRpYWw7IH1cblxuLmNjLWJ0biB7IGRpc3BsYXk6IGJsb2NrOyBwYWRkaW5nOiAuNGVtIC44ZW07IGZvbnQtc2l6ZTogLjllbTsgZm9udC13ZWlnaHQ6IDcwMDsgYm9yZGVyLXdpZHRoOiAycHg7IGJvcmRlci1zdHlsZTogc29saWQ7IHRleHQtYWxpZ246IGNlbnRlcjsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uY2MtaGlnaGxpZ2h0IC5jYy1idG46Zmlyc3QtY2hpbGQgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uY2MtaGlnaGxpZ2h0IC5jYy1idG46Zmlyc3QtY2hpbGQ6Zm9jdXMsIC5jYy1oaWdobGlnaHQgLmNjLWJ0bjpmaXJzdC1jaGlsZDpob3ZlciwgLmNjLWhpZ2hsaWdodCBhLmNjLWJ0bi5hY3RpdmU6Zmlyc3QtY2hpbGQsIC5jYy1oaWdobGlnaHQgYnV0dG9uLmNjLWJ0bi5hY3RpdmU6Zmlyc3QtY2hpbGQgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmNjLWNsb3NlIHsgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAuNWVtOyByaWdodDogLjVlbTsgZm9udC1zaXplOiAxLjZlbTsgb3BhY2l0eTogLjk7IGxpbmUtaGVpZ2h0OiAuNzU7IH1cblxuLmNjLWNsb3NlOmZvY3VzLCAuY2MtY2xvc2U6aG92ZXIsIGEuY2MtY2xvc2UuYWN0aXZlLCBidXR0b24uY2MtY2xvc2UuYWN0aXZlIHsgb3BhY2l0eTogMTsgfVxuXG4uY2MtcmV2b2tlLmNjLXRvcCB7IHRvcDogMDsgbGVmdDogM2VtOyBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAuNWVtOyBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogLjVlbTsgfVxuXG4uY2MtcmV2b2tlLmNjLWJvdHRvbSB7IGJvdHRvbTogMDsgbGVmdDogM2VtOyBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAuNWVtOyBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogLjVlbTsgfVxuXG4uY2MtcmV2b2tlLmNjLWxlZnQgeyBsZWZ0OiAzZW07IHJpZ2h0OiB1bnNldDsgfVxuXG4uY2MtcmV2b2tlLmNjLXJpZ2h0IHsgcmlnaHQ6IDNlbTsgbGVmdDogdW5zZXQ7IH1cblxuLmNjLXRvcCB7IHRvcDogMWVtOyB9XG5cbi5jYy1sZWZ0IHsgbGVmdDogMWVtOyB9XG5cbi5jYy1yaWdodCB7IHJpZ2h0OiAxZW07IH1cblxuLmNjLWJvdHRvbSB7IGJvdHRvbTogMWVtOyB9XG5cbi5jYy1mbG9hdGluZyA+IC5jYy1saW5rIHsgbWFyZ2luLWJvdHRvbTogMWVtOyB9XG5cbi5jYy1mbG9hdGluZyAuY2MtbWVzc2FnZSB7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tYm90dG9tOiAxZW07IH1cblxuLmNjLXdpbmRvdy5jYy1mbG9hdGluZyAuY2MtY29tcGxpYW5jZSB7IC13ZWJraXQtYm94LWZsZXg6IDE7IC1tcy1mbGV4OiAxIDAgYXV0bzsgZmxleDogMSAwIGF1dG87IH1cblxuLmNjLXdpbmRvdy5jYy1iYW5uZXIgeyAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOyAtbXMtZmxleC1hbGlnbjogY2VudGVyOyBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5jYy1iYW5uZXIuY2MtdG9wIHsgbGVmdDogMDsgcmlnaHQ6IDA7IHRvcDogMDsgfVxuXG4uY2MtYmFubmVyLmNjLWJvdHRvbSB7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IH1cblxuLmNjLWJhbm5lciAuY2MtbWVzc2FnZSB7IGRpc3BsYXk6IGJsb2NrOyAtd2Via2l0LWJveC1mbGV4OiAxOyAtbXMtZmxleDogMSAxIGF1dG87IGZsZXg6IDEgMSBhdXRvOyBtYXgtd2lkdGg6IDEwMCU7IG1hcmdpbi1yaWdodDogMWVtOyB9XG5cbi5jYy1jb21wbGlhbmNlIHsgZGlzcGxheTogLXdlYmtpdC1ib3g7IGRpc3BsYXk6IC1tcy1mbGV4Ym94OyBkaXNwbGF5OiBmbGV4OyAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOyAtbXMtZmxleC1hbGlnbjogY2VudGVyOyBhbGlnbi1pdGVtczogY2VudGVyOyAtbXMtZmxleC1saW5lLXBhY2s6IGp1c3RpZnk7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuLmNjLWZsb2F0aW5nIC5jYy1jb21wbGlhbmNlID4gLmNjLWJ0biB7IC13ZWJraXQtYm94LWZsZXg6IDE7IC1tcy1mbGV4OiAxOyBmbGV4OiAxOyB9XG5cbi5jYy1idG4gKyAuY2MtYnRuIHsgbWFyZ2luLWxlZnQ6IC41ZW07IH1cblxuQG1lZGlhIHByaW50IHsgLmNjLXJldm9rZSwgLmNjLXdpbmRvdyB7IGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkgeyAuY2MtYnRuIHsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQxNHB4KSBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzM2cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkgeyAuY2Mtd2luZG93LmNjLXRvcCB7IHRvcDogMDsgfVxuICAuY2Mtd2luZG93LmNjLWJvdHRvbSB7IGJvdHRvbTogMDsgfVxuICAuY2Mtd2luZG93LmNjLWJhbm5lciwgLmNjLXdpbmRvdy5jYy1mbG9hdGluZywgLmNjLXdpbmRvdy5jYy1sZWZ0LCAuY2Mtd2luZG93LmNjLXJpZ2h0IHsgbGVmdDogMDsgcmlnaHQ6IDA7IH1cbiAgLmNjLXdpbmRvdy5jYy1iYW5uZXIgeyAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOyAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLmNjLXdpbmRvdy5jYy1iYW5uZXIgLmNjLWNvbXBsaWFuY2UgeyAtd2Via2l0LWJveC1mbGV4OiAxOyAtbXMtZmxleDogMSAxIGF1dG87IGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5jYy13aW5kb3cuY2MtZmxvYXRpbmcgeyBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgLmNjLXdpbmRvdyAuY2MtbWVzc2FnZSB7IG1hcmdpbi1ib3R0b206IDFlbTsgfVxuICAuY2Mtd2luZG93LmNjLWJhbm5lciB7IC13ZWJraXQtYm94LWFsaWduOiB1bnNldDsgLW1zLWZsZXgtYWxpZ246IHVuc2V0OyBhbGlnbi1pdGVtczogdW5zZXQ7IH1cbiAgLmNjLXdpbmRvdy5jYy1iYW5uZXIgLmNjLW1lc3NhZ2UgeyBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4uY2MtZmxvYXRpbmcuY2MtdGhlbWUtY2xhc3NpYyB7IHBhZGRpbmc6IDEuMmVtOyBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuLmNjLWZsb2F0aW5nLmNjLXR5cGUtaW5mby5jYy10aGVtZS1jbGFzc2ljIC5jYy1jb21wbGlhbmNlIHsgdGV4dC1hbGlnbjogY2VudGVyOyBkaXNwbGF5OiBpbmxpbmU7IC13ZWJraXQtYm94LWZsZXg6IDA7IC1tcy1mbGV4OiBub25lOyBmbGV4OiBub25lOyB9XG5cbi5jYy10aGVtZS1jbGFzc2ljIC5jYy1idG4geyBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuLmNjLXRoZW1lLWNsYXNzaWMgLmNjLWJ0bjpsYXN0LWNoaWxkIHsgbWluLXdpZHRoOiAxNDBweDsgfVxuXG4uY2MtZmxvYXRpbmcuY2MtdHlwZS1pbmZvLmNjLXRoZW1lLWNsYXNzaWMgLmNjLWJ0biB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uY2MtdGhlbWUtZWRnZWxlc3MuY2Mtd2luZG93IHsgcGFkZGluZzogMDsgfVxuXG4uY2MtZmxvYXRpbmcuY2MtdGhlbWUtZWRnZWxlc3MgLmNjLW1lc3NhZ2UgeyBtYXJnaW46IDJlbTsgbWFyZ2luLWJvdHRvbTogMS41ZW07IH1cblxuLmNjLWJhbm5lci5jYy10aGVtZS1lZGdlbGVzcyAuY2MtYnRuIHsgbWFyZ2luOiAwOyBwYWRkaW5nOiAuOGVtIDEuOGVtOyBoZWlnaHQ6IDEwMCU7IH1cblxuLmNjLWJhbm5lci5jYy10aGVtZS1lZGdlbGVzcyAuY2MtbWVzc2FnZSB7IG1hcmdpbi1sZWZ0OiAxZW07IH1cblxuLmNjLWZsb2F0aW5nLmNjLXRoZW1lLWVkZ2VsZXNzIC5jYy1idG4gKyAuY2MtYnRuIHsgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmNjLXdpbmRvdyB7IHotaW5kZXg6IDk5OTk5OTsgfVxuXG4uY2Mtd2luZG93IC5pbm55LCAuY2Mtd2luZG93IC5jYy1jb21wbGlhbmNlLCAuY2MtYmFubmVyIC5pbm55LCAuY2MtYmFubmVyIC5jYy1jb21wbGlhbmNlLCAuY2MtdHlwZS1pbmZvIC5pbm55LCAuY2MtdHlwZS1pbmZvIC5jYy1jb21wbGlhbmNlIHsgcGFkZGluZzogMCAxNnB4IDA7IH1cblxuLmNjLXdpbmRvdyAuaW5ueSwgLmNjLWJhbm5lciAuaW5ueSwgLmNjLXR5cGUtaW5mbyAuaW5ueSB7IHdpZHRoOiAxMDAlOyBtYXgtd2lkdGg6IDYyLjVyZW07IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luOiAwIGF1dG87IH1cblxuLmNjLXdpbmRvdyAuY2MtbWVzc2FnZSwgLmNjLWJhbm5lciAuY2MtbWVzc2FnZSwgLmNjLXR5cGUtaW5mbyAuY2MtbWVzc2FnZSB7IGZvbnQtc2l6ZTogMXJlbTsgZm9udC1mYW1pbHk6IHJvb2tseW5TYW11ZWxzRml2ZUxpZ2h0LCBBcmlhbCwgc2Fucy1zZXJpZjsgbGluZS1oZWlnaHQ6IDEuNXJlbTsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiA3OCU7IHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLmNjLXdpbmRvdyAuY2MtbWVzc2FnZSBhLCAuY2MtYmFubmVyIC5jYy1tZXNzYWdlIGEsIC5jYy10eXBlLWluZm8gLmNjLW1lc3NhZ2UgYSB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5jYy13aW5kb3cgLmNjLW1lc3NhZ2UgYTpob3ZlciwgLmNjLXdpbmRvdyAuY2MtbWVzc2FnZSBhLmFjdGl2ZSwgLmNjLWJhbm5lciAuY2MtbWVzc2FnZSBhOmhvdmVyLCAuY2MtYmFubmVyIC5jYy1tZXNzYWdlIGEuYWN0aXZlLCAuY2MtdHlwZS1pbmZvIC5jYy1tZXNzYWdlIGE6aG92ZXIsIC5jYy10eXBlLWluZm8gLmNjLW1lc3NhZ2UgYS5hY3RpdmUgeyBjb2xvcjogIzAwZDhmZjsgfVxuXG4uY2Mtd2luZG93IC5jYy1jb21wbGlhbmNlLCAuY2MtYmFubmVyIC5jYy1jb21wbGlhbmNlLCAuY2MtdHlwZS1pbmZvIC5jYy1jb21wbGlhbmNlIHsgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5jYy13aW5kb3cgLmNjLWJ0biwgLmNjLXdpbmRvdyAuY2MtZGlzbWlzcywgLmNjLWJhbm5lciAuY2MtYnRuLCAuY2MtYmFubmVyIC5jYy1kaXNtaXNzLCAuY2MtdHlwZS1pbmZvIC5jYy1idG4sIC5jYy10eXBlLWluZm8gLmNjLWRpc21pc3MgeyBib3JkZXItcmFkaXVzOiAzcHggIWltcG9ydGFudDsgZm9udC1zaXplOiAxcmVtOyB3aWR0aDogYXV0bzsgaGVpZ2h0OiBhdXRvOyBsZXR0ZXItc3BhY2luZzogMC4xcmVtOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGJvcmRlci1yYWRpdXM6IDNweDsgbGluZS1oZWlnaHQ6IDEuNTU3OyBwYWRkaW5nOiAuNWVtIDEuNWVtICFpbXBvcnRhbnQ7IGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhaW1wb3J0YW50OyBib3JkZXI6IHNvbGlkIDFweCAjMDBkOGZmICFpbXBvcnRhbnQ7IGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7IG9wYWNpdHk6IDAuOTsgfVxuXG4uY2Mtd2luZG93IC5jYy1idG46aG92ZXIsIC5jYy13aW5kb3cgYS5jYy1idG4uYWN0aXZlLCAuY2Mtd2luZG93IGJ1dHRvbi5jYy1idG4uYWN0aXZlLCAuY2Mtd2luZG93IC5jYy1kaXNtaXNzOmhvdmVyLCAuY2Mtd2luZG93IGEuY2MtZGlzbWlzcy5hY3RpdmUsIC5jYy13aW5kb3cgYnV0dG9uLmNjLWRpc21pc3MuYWN0aXZlLCAuY2MtYmFubmVyIC5jYy1idG46aG92ZXIsIC5jYy1iYW5uZXIgYS5jYy1idG4uYWN0aXZlLCAuY2MtYmFubmVyIGJ1dHRvbi5jYy1idG4uYWN0aXZlLCAuY2MtYmFubmVyIC5jYy1kaXNtaXNzOmhvdmVyLCAuY2MtYmFubmVyIGEuY2MtZGlzbWlzcy5hY3RpdmUsIC5jYy1iYW5uZXIgYnV0dG9uLmNjLWRpc21pc3MuYWN0aXZlLCAuY2MtdHlwZS1pbmZvIC5jYy1idG46aG92ZXIsIC5jYy10eXBlLWluZm8gYS5jYy1idG4uYWN0aXZlLCAuY2MtdHlwZS1pbmZvIGJ1dHRvbi5jYy1idG4uYWN0aXZlLCAuY2MtdHlwZS1pbmZvIC5jYy1kaXNtaXNzOmhvdmVyLCAuY2MtdHlwZS1pbmZvIGEuY2MtZGlzbWlzcy5hY3RpdmUsIC5jYy10eXBlLWluZm8gYnV0dG9uLmNjLWRpc21pc3MuYWN0aXZlIHsgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgYm9yZGVyOiBzb2xpZCAxcHggIzAwZDhmZiAhaW1wb3J0YW50OyBiYWNrZ3JvdW5kOiAjMDBkOGZmICFpbXBvcnRhbnQ7IG9wYWNpdHk6IDE7IH1cblxuLndjYy1tb2RhbCBidXR0b246YWZ0ZXIsIC53Y2MtY29uc2VudC1jb250YWluZXIgYnV0dG9uOmFmdGVyIHsgZGlzcGxheTogbm9uZTsgfVxuIiwiLyohXG4gKiAgRm9udCBBd2Vzb21lIDQuNy4wIGJ5IEBkYXZlZ2FuZHkgLSBodHRwOi8vZm9udGF3ZXNvbWUuaW8gLSBAZm9udGF3ZXNvbWVcbiAqICBMaWNlbnNlIC0gaHR0cDovL2ZvbnRhd2Vzb21lLmlvL2xpY2Vuc2UgKEZvbnQ6IFNJTCBPRkwgMS4xLCBDU1M6IE1JVCBMaWNlbnNlKVxuICovXG5cbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJwYXRoXCI7XG5AaW1wb3J0IFwiY29yZVwiO1xuQGltcG9ydCBcImxhcmdlclwiO1xuQGltcG9ydCBcImZpeGVkLXdpZHRoXCI7XG5AaW1wb3J0IFwibGlzdFwiO1xuQGltcG9ydCBcImJvcmRlcmVkLXB1bGxlZFwiO1xuQGltcG9ydCBcImFuaW1hdGVkXCI7XG5AaW1wb3J0IFwicm90YXRlZC1mbGlwcGVkXCI7XG5AaW1wb3J0IFwic3RhY2tlZFwiO1xuQGltcG9ydCBcImljb25zXCI7XG5AaW1wb3J0IFwic2NyZWVuLXJlYWRlclwiO1xuIiwiLyogRk9OVCBQQVRIXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQuZW90P3Y9I3skZmEtdmVyc2lvbn0nKTtcbiAgc3JjOiB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZm9udGF3ZXNvbWUtd2ViZm9udC5lb3Q/I2llZml4JnY9I3skZmEtdmVyc2lvbn0nKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQud29mZjI/dj0jeyRmYS12ZXJzaW9ufScpIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZm9udGF3ZXNvbWUtd2ViZm9udC53b2ZmP3Y9I3skZmEtdmVyc2lvbn0nKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZm9udGF3ZXNvbWUtd2ViZm9udC50dGY/dj0jeyRmYS12ZXJzaW9ufScpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZm9udGF3ZXNvbWUtd2ViZm9udC5zdmc/dj0jeyRmYS12ZXJzaW9ufSNmb250YXdlc29tZXJlZ3VsYXInKSBmb3JtYXQoJ3N2ZycpO1xuLy8gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L0ZvbnRBd2Vzb21lLm90ZicpIGZvcm1hdCgnb3BlbnR5cGUnKTsgLy8gdXNlZCB3aGVuIGRldmVsb3BpbmcgZm9udHNcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuIiwiLy8gQmFzZSBDbGFzcyBEZWZpbml0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgI3skZmEtZm9udC1zaXplLWJhc2V9LyN7JGZhLWxpbmUtaGVpZ2h0LWJhc2V9IEZvbnRBd2Vzb21lOyAvLyBzaG9ydGVuaW5nIGZvbnQgZGVjbGFyYXRpb25cbiAgZm9udC1zaXplOiBpbmhlcml0OyAvLyBjYW4ndCBoYXZlIGZvbnQtc2l6ZSBpbmhlcml0IG9uIGxpbmUgYWJvdmUsIHNvIG5lZWQgdG8gb3ZlcnJpZGVcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87IC8vIG9wdGltaXplbGVnaWJpbGl0eSB0aHJvd3MgdGhpbmdzIG9mZiAjMTA5NFxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblxufVxuIiwiLy8gSWNvbiBTaXplc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vKiBtYWtlcyB0aGUgZm9udCAzMyUgbGFyZ2VyIHJlbGF0aXZlIHRvIHRoZSBpY29uIGNvbnRhaW5lciAqL1xuLiN7JGZhLWNzcy1wcmVmaXh9LWxnIHtcbiAgZm9udC1zaXplOiAoNGVtIC8gMyk7XG4gIGxpbmUtaGVpZ2h0OiAoM2VtIC8gNCk7XG4gIHZlcnRpY2FsLWFsaWduOiAtMTUlO1xufVxuLiN7JGZhLWNzcy1wcmVmaXh9LTJ4IHsgZm9udC1zaXplOiAyZW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS0zeCB7IGZvbnQtc2l6ZTogM2VtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tNHggeyBmb250LXNpemU6IDRlbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LTV4IHsgZm9udC1zaXplOiA1ZW07IH1cbiIsIi8vIEZpeGVkIFdpZHRoIEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uI3skZmEtY3NzLXByZWZpeH0tZncge1xuICB3aWR0aDogKDE4ZW0gLyAxNCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIi8vIExpc3QgSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXVsIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tbGVmdDogJGZhLWxpLXdpZHRoO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gID4gbGkgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbn1cbi4jeyRmYS1jc3MtcHJlZml4fS1saSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLSRmYS1saS13aWR0aDtcbiAgd2lkdGg6ICRmYS1saS13aWR0aDtcbiAgdG9wOiAoMmVtIC8gMTQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICYuI3skZmEtY3NzLXByZWZpeH0tbGcge1xuICAgIGxlZnQ6IC0kZmEtbGktd2lkdGggKyAoNGVtIC8gMTQpO1xuICB9XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRmYS1mb250LXBhdGg6ICAgICAgICBcIi4uL2ZvbnRzXCIgIWRlZmF1bHQ7XG4kZmEtZm9udC1zaXplLWJhc2U6ICAgMTRweCAhZGVmYXVsdDtcbiRmYS1saW5lLWhlaWdodC1iYXNlOiAxICFkZWZhdWx0O1xuLy8kZmEtZm9udC1wYXRoOiAgICAgICAgXCIvL25ldGRuYS5ib290c3RyYXBjZG4uY29tL2ZvbnQtYXdlc29tZS80LjcuMC9mb250c1wiICFkZWZhdWx0OyAvLyBmb3IgcmVmZXJlbmNpbmcgQm9vdHN0cmFwIENETiBmb250IGZpbGVzIGRpcmVjdGx5XG4kZmEtY3NzLXByZWZpeDogICAgICAgZmEgIWRlZmF1bHQ7XG4kZmEtdmVyc2lvbjogICAgICAgICAgXCI0LjcuMFwiICFkZWZhdWx0O1xuJGZhLWJvcmRlci1jb2xvcjogICAgICNlZWUgIWRlZmF1bHQ7XG4kZmEtaW52ZXJzZTogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRmYS1saS13aWR0aDogICAgICAgICAoMzBlbSAvIDE0KSAhZGVmYXVsdDtcblxuJGZhLXZhci01MDBweDogXCJcXGYyNmVcIjtcbiRmYS12YXItYWRkcmVzcy1ib29rOiBcIlxcZjJiOVwiO1xuJGZhLXZhci1hZGRyZXNzLWJvb2stbzogXCJcXGYyYmFcIjtcbiRmYS12YXItYWRkcmVzcy1jYXJkOiBcIlxcZjJiYlwiO1xuJGZhLXZhci1hZGRyZXNzLWNhcmQtbzogXCJcXGYyYmNcIjtcbiRmYS12YXItYWRqdXN0OiBcIlxcZjA0MlwiO1xuJGZhLXZhci1hZG46IFwiXFxmMTcwXCI7XG4kZmEtdmFyLWFsaWduLWNlbnRlcjogXCJcXGYwMzdcIjtcbiRmYS12YXItYWxpZ24tanVzdGlmeTogXCJcXGYwMzlcIjtcbiRmYS12YXItYWxpZ24tbGVmdDogXCJcXGYwMzZcIjtcbiRmYS12YXItYWxpZ24tcmlnaHQ6IFwiXFxmMDM4XCI7XG4kZmEtdmFyLWFtYXpvbjogXCJcXGYyNzBcIjtcbiRmYS12YXItYW1idWxhbmNlOiBcIlxcZjBmOVwiO1xuJGZhLXZhci1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZzogXCJcXGYyYTNcIjtcbiRmYS12YXItYW5jaG9yOiBcIlxcZjEzZFwiO1xuJGZhLXZhci1hbmRyb2lkOiBcIlxcZjE3YlwiO1xuJGZhLXZhci1hbmdlbGxpc3Q6IFwiXFxmMjA5XCI7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS1kb3duOiBcIlxcZjEwM1wiO1xuJGZhLXZhci1hbmdsZS1kb3VibGUtbGVmdDogXCJcXGYxMDBcIjtcbiRmYS12YXItYW5nbGUtZG91YmxlLXJpZ2h0OiBcIlxcZjEwMVwiO1xuJGZhLXZhci1hbmdsZS1kb3VibGUtdXA6IFwiXFxmMTAyXCI7XG4kZmEtdmFyLWFuZ2xlLWRvd246IFwiXFxmMTA3XCI7XG4kZmEtdmFyLWFuZ2xlLWxlZnQ6IFwiXFxmMTA0XCI7XG4kZmEtdmFyLWFuZ2xlLXJpZ2h0OiBcIlxcZjEwNVwiO1xuJGZhLXZhci1hbmdsZS11cDogXCJcXGYxMDZcIjtcbiRmYS12YXItYXBwbGU6IFwiXFxmMTc5XCI7XG4kZmEtdmFyLWFyY2hpdmU6IFwiXFxmMTg3XCI7XG4kZmEtdmFyLWFyZWEtY2hhcnQ6IFwiXFxmMWZlXCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1kb3duOiBcIlxcZjBhYlwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtbGVmdDogXCJcXGYwYThcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLW8tZG93bjogXCJcXGYwMWFcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLW8tbGVmdDogXCJcXGYxOTBcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLW8tcmlnaHQ6IFwiXFxmMThlXCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLXVwOiBcIlxcZjAxYlwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtcmlnaHQ6IFwiXFxmMGE5XCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS11cDogXCJcXGYwYWFcIjtcbiRmYS12YXItYXJyb3ctZG93bjogXCJcXGYwNjNcIjtcbiRmYS12YXItYXJyb3ctbGVmdDogXCJcXGYwNjBcIjtcbiRmYS12YXItYXJyb3ctcmlnaHQ6IFwiXFxmMDYxXCI7XG4kZmEtdmFyLWFycm93LXVwOiBcIlxcZjA2MlwiO1xuJGZhLXZhci1hcnJvd3M6IFwiXFxmMDQ3XCI7XG4kZmEtdmFyLWFycm93cy1hbHQ6IFwiXFxmMGIyXCI7XG4kZmEtdmFyLWFycm93cy1oOiBcIlxcZjA3ZVwiO1xuJGZhLXZhci1hcnJvd3MtdjogXCJcXGYwN2RcIjtcbiRmYS12YXItYXNsLWludGVycHJldGluZzogXCJcXGYyYTNcIjtcbiRmYS12YXItYXNzaXN0aXZlLWxpc3RlbmluZy1zeXN0ZW1zOiBcIlxcZjJhMlwiO1xuJGZhLXZhci1hc3RlcmlzazogXCJcXGYwNjlcIjtcbiRmYS12YXItYXQ6IFwiXFxmMWZhXCI7XG4kZmEtdmFyLWF1ZGlvLWRlc2NyaXB0aW9uOiBcIlxcZjI5ZVwiO1xuJGZhLXZhci1hdXRvbW9iaWxlOiBcIlxcZjFiOVwiO1xuJGZhLXZhci1iYWNrd2FyZDogXCJcXGYwNGFcIjtcbiRmYS12YXItYmFsYW5jZS1zY2FsZTogXCJcXGYyNGVcIjtcbiRmYS12YXItYmFuOiBcIlxcZjA1ZVwiO1xuJGZhLXZhci1iYW5kY2FtcDogXCJcXGYyZDVcIjtcbiRmYS12YXItYmFuazogXCJcXGYxOWNcIjtcbiRmYS12YXItYmFyLWNoYXJ0OiBcIlxcZjA4MFwiO1xuJGZhLXZhci1iYXItY2hhcnQtbzogXCJcXGYwODBcIjtcbiRmYS12YXItYmFyY29kZTogXCJcXGYwMmFcIjtcbiRmYS12YXItYmFyczogXCJcXGYwYzlcIjtcbiRmYS12YXItYmF0aDogXCJcXGYyY2RcIjtcbiRmYS12YXItYmF0aHR1YjogXCJcXGYyY2RcIjtcbiRmYS12YXItYmF0dGVyeTogXCJcXGYyNDBcIjtcbiRmYS12YXItYmF0dGVyeS0wOiBcIlxcZjI0NFwiO1xuJGZhLXZhci1iYXR0ZXJ5LTE6IFwiXFxmMjQzXCI7XG4kZmEtdmFyLWJhdHRlcnktMjogXCJcXGYyNDJcIjtcbiRmYS12YXItYmF0dGVyeS0zOiBcIlxcZjI0MVwiO1xuJGZhLXZhci1iYXR0ZXJ5LTQ6IFwiXFxmMjQwXCI7XG4kZmEtdmFyLWJhdHRlcnktZW1wdHk6IFwiXFxmMjQ0XCI7XG4kZmEtdmFyLWJhdHRlcnktZnVsbDogXCJcXGYyNDBcIjtcbiRmYS12YXItYmF0dGVyeS1oYWxmOiBcIlxcZjI0MlwiO1xuJGZhLXZhci1iYXR0ZXJ5LXF1YXJ0ZXI6IFwiXFxmMjQzXCI7XG4kZmEtdmFyLWJhdHRlcnktdGhyZWUtcXVhcnRlcnM6IFwiXFxmMjQxXCI7XG4kZmEtdmFyLWJlZDogXCJcXGYyMzZcIjtcbiRmYS12YXItYmVlcjogXCJcXGYwZmNcIjtcbiRmYS12YXItYmVoYW5jZTogXCJcXGYxYjRcIjtcbiRmYS12YXItYmVoYW5jZS1zcXVhcmU6IFwiXFxmMWI1XCI7XG4kZmEtdmFyLWJlbGw6IFwiXFxmMGYzXCI7XG4kZmEtdmFyLWJlbGwtbzogXCJcXGYwYTJcIjtcbiRmYS12YXItYmVsbC1zbGFzaDogXCJcXGYxZjZcIjtcbiRmYS12YXItYmVsbC1zbGFzaC1vOiBcIlxcZjFmN1wiO1xuJGZhLXZhci1iaWN5Y2xlOiBcIlxcZjIwNlwiO1xuJGZhLXZhci1iaW5vY3VsYXJzOiBcIlxcZjFlNVwiO1xuJGZhLXZhci1iaXJ0aGRheS1jYWtlOiBcIlxcZjFmZFwiO1xuJGZhLXZhci1iaXRidWNrZXQ6IFwiXFxmMTcxXCI7XG4kZmEtdmFyLWJpdGJ1Y2tldC1zcXVhcmU6IFwiXFxmMTcyXCI7XG4kZmEtdmFyLWJpdGNvaW46IFwiXFxmMTVhXCI7XG4kZmEtdmFyLWJsYWNrLXRpZTogXCJcXGYyN2VcIjtcbiRmYS12YXItYmxpbmQ6IFwiXFxmMjlkXCI7XG4kZmEtdmFyLWJsdWV0b290aDogXCJcXGYyOTNcIjtcbiRmYS12YXItYmx1ZXRvb3RoLWI6IFwiXFxmMjk0XCI7XG4kZmEtdmFyLWJvbGQ6IFwiXFxmMDMyXCI7XG4kZmEtdmFyLWJvbHQ6IFwiXFxmMGU3XCI7XG4kZmEtdmFyLWJvbWI6IFwiXFxmMWUyXCI7XG4kZmEtdmFyLWJvb2s6IFwiXFxmMDJkXCI7XG4kZmEtdmFyLWJvb2ttYXJrOiBcIlxcZjAyZVwiO1xuJGZhLXZhci1ib29rbWFyay1vOiBcIlxcZjA5N1wiO1xuJGZhLXZhci1icmFpbGxlOiBcIlxcZjJhMVwiO1xuJGZhLXZhci1icmllZmNhc2U6IFwiXFxmMGIxXCI7XG4kZmEtdmFyLWJ0YzogXCJcXGYxNWFcIjtcbiRmYS12YXItYnVnOiBcIlxcZjE4OFwiO1xuJGZhLXZhci1idWlsZGluZzogXCJcXGYxYWRcIjtcbiRmYS12YXItYnVpbGRpbmctbzogXCJcXGYwZjdcIjtcbiRmYS12YXItYnVsbGhvcm46IFwiXFxmMGExXCI7XG4kZmEtdmFyLWJ1bGxzZXllOiBcIlxcZjE0MFwiO1xuJGZhLXZhci1idXM6IFwiXFxmMjA3XCI7XG4kZmEtdmFyLWJ1eXNlbGxhZHM6IFwiXFxmMjBkXCI7XG4kZmEtdmFyLWNhYjogXCJcXGYxYmFcIjtcbiRmYS12YXItY2FsY3VsYXRvcjogXCJcXGYxZWNcIjtcbiRmYS12YXItY2FsZW5kYXI6IFwiXFxmMDczXCI7XG4kZmEtdmFyLWNhbGVuZGFyLWNoZWNrLW86IFwiXFxmMjc0XCI7XG4kZmEtdmFyLWNhbGVuZGFyLW1pbnVzLW86IFwiXFxmMjcyXCI7XG4kZmEtdmFyLWNhbGVuZGFyLW86IFwiXFxmMTMzXCI7XG4kZmEtdmFyLWNhbGVuZGFyLXBsdXMtbzogXCJcXGYyNzFcIjtcbiRmYS12YXItY2FsZW5kYXItdGltZXMtbzogXCJcXGYyNzNcIjtcbiRmYS12YXItY2FtZXJhOiBcIlxcZjAzMFwiO1xuJGZhLXZhci1jYW1lcmEtcmV0cm86IFwiXFxmMDgzXCI7XG4kZmEtdmFyLWNhcjogXCJcXGYxYjlcIjtcbiRmYS12YXItY2FyZXQtZG93bjogXCJcXGYwZDdcIjtcbiRmYS12YXItY2FyZXQtbGVmdDogXCJcXGYwZDlcIjtcbiRmYS12YXItY2FyZXQtcmlnaHQ6IFwiXFxmMGRhXCI7XG4kZmEtdmFyLWNhcmV0LXNxdWFyZS1vLWRvd246IFwiXFxmMTUwXCI7XG4kZmEtdmFyLWNhcmV0LXNxdWFyZS1vLWxlZnQ6IFwiXFxmMTkxXCI7XG4kZmEtdmFyLWNhcmV0LXNxdWFyZS1vLXJpZ2h0OiBcIlxcZjE1MlwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby11cDogXCJcXGYxNTFcIjtcbiRmYS12YXItY2FyZXQtdXA6IFwiXFxmMGQ4XCI7XG4kZmEtdmFyLWNhcnQtYXJyb3ctZG93bjogXCJcXGYyMThcIjtcbiRmYS12YXItY2FydC1wbHVzOiBcIlxcZjIxN1wiO1xuJGZhLXZhci1jYzogXCJcXGYyMGFcIjtcbiRmYS12YXItY2MtYW1leDogXCJcXGYxZjNcIjtcbiRmYS12YXItY2MtZGluZXJzLWNsdWI6IFwiXFxmMjRjXCI7XG4kZmEtdmFyLWNjLWRpc2NvdmVyOiBcIlxcZjFmMlwiO1xuJGZhLXZhci1jYy1qY2I6IFwiXFxmMjRiXCI7XG4kZmEtdmFyLWNjLW1hc3RlcmNhcmQ6IFwiXFxmMWYxXCI7XG4kZmEtdmFyLWNjLXBheXBhbDogXCJcXGYxZjRcIjtcbiRmYS12YXItY2Mtc3RyaXBlOiBcIlxcZjFmNVwiO1xuJGZhLXZhci1jYy12aXNhOiBcIlxcZjFmMFwiO1xuJGZhLXZhci1jZXJ0aWZpY2F0ZTogXCJcXGYwYTNcIjtcbiRmYS12YXItY2hhaW46IFwiXFxmMGMxXCI7XG4kZmEtdmFyLWNoYWluLWJyb2tlbjogXCJcXGYxMjdcIjtcbiRmYS12YXItY2hlY2s6IFwiXFxmMDBjXCI7XG4kZmEtdmFyLWNoZWNrLWNpcmNsZTogXCJcXGYwNThcIjtcbiRmYS12YXItY2hlY2stY2lyY2xlLW86IFwiXFxmMDVkXCI7XG4kZmEtdmFyLWNoZWNrLXNxdWFyZTogXCJcXGYxNGFcIjtcbiRmYS12YXItY2hlY2stc3F1YXJlLW86IFwiXFxmMDQ2XCI7XG4kZmEtdmFyLWNoZXZyb24tY2lyY2xlLWRvd246IFwiXFxmMTNhXCI7XG4kZmEtdmFyLWNoZXZyb24tY2lyY2xlLWxlZnQ6IFwiXFxmMTM3XCI7XG4kZmEtdmFyLWNoZXZyb24tY2lyY2xlLXJpZ2h0OiBcIlxcZjEzOFwiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS11cDogXCJcXGYxMzlcIjtcbiRmYS12YXItY2hldnJvbi1kb3duOiBcIlxcZjA3OFwiO1xuJGZhLXZhci1jaGV2cm9uLWxlZnQ6IFwiXFxmMDUzXCI7XG4kZmEtdmFyLWNoZXZyb24tcmlnaHQ6IFwiXFxmMDU0XCI7XG4kZmEtdmFyLWNoZXZyb24tdXA6IFwiXFxmMDc3XCI7XG4kZmEtdmFyLWNoaWxkOiBcIlxcZjFhZVwiO1xuJGZhLXZhci1jaHJvbWU6IFwiXFxmMjY4XCI7XG4kZmEtdmFyLWNpcmNsZTogXCJcXGYxMTFcIjtcbiRmYS12YXItY2lyY2xlLW86IFwiXFxmMTBjXCI7XG4kZmEtdmFyLWNpcmNsZS1vLW5vdGNoOiBcIlxcZjFjZVwiO1xuJGZhLXZhci1jaXJjbGUtdGhpbjogXCJcXGYxZGJcIjtcbiRmYS12YXItY2xpcGJvYXJkOiBcIlxcZjBlYVwiO1xuJGZhLXZhci1jbG9jay1vOiBcIlxcZjAxN1wiO1xuJGZhLXZhci1jbG9uZTogXCJcXGYyNGRcIjtcbiRmYS12YXItY2xvc2U6IFwiXFxmMDBkXCI7XG4kZmEtdmFyLWNsb3VkOiBcIlxcZjBjMlwiO1xuJGZhLXZhci1jbG91ZC1kb3dubG9hZDogXCJcXGYwZWRcIjtcbiRmYS12YXItY2xvdWQtdXBsb2FkOiBcIlxcZjBlZVwiO1xuJGZhLXZhci1jbnk6IFwiXFxmMTU3XCI7XG4kZmEtdmFyLWNvZGU6IFwiXFxmMTIxXCI7XG4kZmEtdmFyLWNvZGUtZm9yazogXCJcXGYxMjZcIjtcbiRmYS12YXItY29kZXBlbjogXCJcXGYxY2JcIjtcbiRmYS12YXItY29kaWVwaWU6IFwiXFxmMjg0XCI7XG4kZmEtdmFyLWNvZmZlZTogXCJcXGYwZjRcIjtcbiRmYS12YXItY29nOiBcIlxcZjAxM1wiO1xuJGZhLXZhci1jb2dzOiBcIlxcZjA4NVwiO1xuJGZhLXZhci1jb2x1bW5zOiBcIlxcZjBkYlwiO1xuJGZhLXZhci1jb21tZW50OiBcIlxcZjA3NVwiO1xuJGZhLXZhci1jb21tZW50LW86IFwiXFxmMGU1XCI7XG4kZmEtdmFyLWNvbW1lbnRpbmc6IFwiXFxmMjdhXCI7XG4kZmEtdmFyLWNvbW1lbnRpbmctbzogXCJcXGYyN2JcIjtcbiRmYS12YXItY29tbWVudHM6IFwiXFxmMDg2XCI7XG4kZmEtdmFyLWNvbW1lbnRzLW86IFwiXFxmMGU2XCI7XG4kZmEtdmFyLWNvbXBhc3M6IFwiXFxmMTRlXCI7XG4kZmEtdmFyLWNvbXByZXNzOiBcIlxcZjA2NlwiO1xuJGZhLXZhci1jb25uZWN0ZGV2ZWxvcDogXCJcXGYyMGVcIjtcbiRmYS12YXItY29udGFvOiBcIlxcZjI2ZFwiO1xuJGZhLXZhci1jb3B5OiBcIlxcZjBjNVwiO1xuJGZhLXZhci1jb3B5cmlnaHQ6IFwiXFxmMWY5XCI7XG4kZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnM6IFwiXFxmMjVlXCI7XG4kZmEtdmFyLWNyZWRpdC1jYXJkOiBcIlxcZjA5ZFwiO1xuJGZhLXZhci1jcmVkaXQtY2FyZC1hbHQ6IFwiXFxmMjgzXCI7XG4kZmEtdmFyLWNyb3A6IFwiXFxmMTI1XCI7XG4kZmEtdmFyLWNyb3NzaGFpcnM6IFwiXFxmMDViXCI7XG4kZmEtdmFyLWNzczM6IFwiXFxmMTNjXCI7XG4kZmEtdmFyLWN1YmU6IFwiXFxmMWIyXCI7XG4kZmEtdmFyLWN1YmVzOiBcIlxcZjFiM1wiO1xuJGZhLXZhci1jdXQ6IFwiXFxmMGM0XCI7XG4kZmEtdmFyLWN1dGxlcnk6IFwiXFxmMGY1XCI7XG4kZmEtdmFyLWRhc2hib2FyZDogXCJcXGYwZTRcIjtcbiRmYS12YXItZGFzaGN1YmU6IFwiXFxmMjEwXCI7XG4kZmEtdmFyLWRhdGFiYXNlOiBcIlxcZjFjMFwiO1xuJGZhLXZhci1kZWFmOiBcIlxcZjJhNFwiO1xuJGZhLXZhci1kZWFmbmVzczogXCJcXGYyYTRcIjtcbiRmYS12YXItZGVkZW50OiBcIlxcZjAzYlwiO1xuJGZhLXZhci1kZWxpY2lvdXM6IFwiXFxmMWE1XCI7XG4kZmEtdmFyLWRlc2t0b3A6IFwiXFxmMTA4XCI7XG4kZmEtdmFyLWRldmlhbnRhcnQ6IFwiXFxmMWJkXCI7XG4kZmEtdmFyLWRpYW1vbmQ6IFwiXFxmMjE5XCI7XG4kZmEtdmFyLWRpZ2c6IFwiXFxmMWE2XCI7XG4kZmEtdmFyLWRvbGxhcjogXCJcXGYxNTVcIjtcbiRmYS12YXItZG90LWNpcmNsZS1vOiBcIlxcZjE5MlwiO1xuJGZhLXZhci1kb3dubG9hZDogXCJcXGYwMTlcIjtcbiRmYS12YXItZHJpYmJibGU6IFwiXFxmMTdkXCI7XG4kZmEtdmFyLWRyaXZlcnMtbGljZW5zZTogXCJcXGYyYzJcIjtcbiRmYS12YXItZHJpdmVycy1saWNlbnNlLW86IFwiXFxmMmMzXCI7XG4kZmEtdmFyLWRyb3Bib3g6IFwiXFxmMTZiXCI7XG4kZmEtdmFyLWRydXBhbDogXCJcXGYxYTlcIjtcbiRmYS12YXItZWRnZTogXCJcXGYyODJcIjtcbiRmYS12YXItZWRpdDogXCJcXGYwNDRcIjtcbiRmYS12YXItZWVyY2FzdDogXCJcXGYyZGFcIjtcbiRmYS12YXItZWplY3Q6IFwiXFxmMDUyXCI7XG4kZmEtdmFyLWVsbGlwc2lzLWg6IFwiXFxmMTQxXCI7XG4kZmEtdmFyLWVsbGlwc2lzLXY6IFwiXFxmMTQyXCI7XG4kZmEtdmFyLWVtcGlyZTogXCJcXGYxZDFcIjtcbiRmYS12YXItZW52ZWxvcGU6IFwiXFxmMGUwXCI7XG4kZmEtdmFyLWVudmVsb3BlLW86IFwiXFxmMDAzXCI7XG4kZmEtdmFyLWVudmVsb3BlLW9wZW46IFwiXFxmMmI2XCI7XG4kZmEtdmFyLWVudmVsb3BlLW9wZW4tbzogXCJcXGYyYjdcIjtcbiRmYS12YXItZW52ZWxvcGUtc3F1YXJlOiBcIlxcZjE5OVwiO1xuJGZhLXZhci1lbnZpcmE6IFwiXFxmMjk5XCI7XG4kZmEtdmFyLWVyYXNlcjogXCJcXGYxMmRcIjtcbiRmYS12YXItZXRzeTogXCJcXGYyZDdcIjtcbiRmYS12YXItZXVyOiBcIlxcZjE1M1wiO1xuJGZhLXZhci1ldXJvOiBcIlxcZjE1M1wiO1xuJGZhLXZhci1leGNoYW5nZTogXCJcXGYwZWNcIjtcbiRmYS12YXItZXhjbGFtYXRpb246IFwiXFxmMTJhXCI7XG4kZmEtdmFyLWV4Y2xhbWF0aW9uLWNpcmNsZTogXCJcXGYwNmFcIjtcbiRmYS12YXItZXhjbGFtYXRpb24tdHJpYW5nbGU6IFwiXFxmMDcxXCI7XG4kZmEtdmFyLWV4cGFuZDogXCJcXGYwNjVcIjtcbiRmYS12YXItZXhwZWRpdGVkc3NsOiBcIlxcZjIzZVwiO1xuJGZhLXZhci1leHRlcm5hbC1saW5rOiBcIlxcZjA4ZVwiO1xuJGZhLXZhci1leHRlcm5hbC1saW5rLXNxdWFyZTogXCJcXGYxNGNcIjtcbiRmYS12YXItZXllOiBcIlxcZjA2ZVwiO1xuJGZhLXZhci1leWUtc2xhc2g6IFwiXFxmMDcwXCI7XG4kZmEtdmFyLWV5ZWRyb3BwZXI6IFwiXFxmMWZiXCI7XG4kZmEtdmFyLWZhOiBcIlxcZjJiNFwiO1xuJGZhLXZhci1mYWNlYm9vazogXCJcXGYwOWFcIjtcbiRmYS12YXItZmFjZWJvb2stZjogXCJcXGYwOWFcIjtcbiRmYS12YXItZmFjZWJvb2stb2ZmaWNpYWw6IFwiXFxmMjMwXCI7XG4kZmEtdmFyLWZhY2Vib29rLXNxdWFyZTogXCJcXGYwODJcIjtcbiRmYS12YXItZmFzdC1iYWNrd2FyZDogXCJcXGYwNDlcIjtcbiRmYS12YXItZmFzdC1mb3J3YXJkOiBcIlxcZjA1MFwiO1xuJGZhLXZhci1mYXg6IFwiXFxmMWFjXCI7XG4kZmEtdmFyLWZlZWQ6IFwiXFxmMDllXCI7XG4kZmEtdmFyLWZlbWFsZTogXCJcXGYxODJcIjtcbiRmYS12YXItZmlnaHRlci1qZXQ6IFwiXFxmMGZiXCI7XG4kZmEtdmFyLWZpbGU6IFwiXFxmMTViXCI7XG4kZmEtdmFyLWZpbGUtYXJjaGl2ZS1vOiBcIlxcZjFjNlwiO1xuJGZhLXZhci1maWxlLWF1ZGlvLW86IFwiXFxmMWM3XCI7XG4kZmEtdmFyLWZpbGUtY29kZS1vOiBcIlxcZjFjOVwiO1xuJGZhLXZhci1maWxlLWV4Y2VsLW86IFwiXFxmMWMzXCI7XG4kZmEtdmFyLWZpbGUtaW1hZ2UtbzogXCJcXGYxYzVcIjtcbiRmYS12YXItZmlsZS1tb3ZpZS1vOiBcIlxcZjFjOFwiO1xuJGZhLXZhci1maWxlLW86IFwiXFxmMDE2XCI7XG4kZmEtdmFyLWZpbGUtcGRmLW86IFwiXFxmMWMxXCI7XG4kZmEtdmFyLWZpbGUtcGhvdG8tbzogXCJcXGYxYzVcIjtcbiRmYS12YXItZmlsZS1waWN0dXJlLW86IFwiXFxmMWM1XCI7XG4kZmEtdmFyLWZpbGUtcG93ZXJwb2ludC1vOiBcIlxcZjFjNFwiO1xuJGZhLXZhci1maWxlLXNvdW5kLW86IFwiXFxmMWM3XCI7XG4kZmEtdmFyLWZpbGUtdGV4dDogXCJcXGYxNWNcIjtcbiRmYS12YXItZmlsZS10ZXh0LW86IFwiXFxmMGY2XCI7XG4kZmEtdmFyLWZpbGUtdmlkZW8tbzogXCJcXGYxYzhcIjtcbiRmYS12YXItZmlsZS13b3JkLW86IFwiXFxmMWMyXCI7XG4kZmEtdmFyLWZpbGUtemlwLW86IFwiXFxmMWM2XCI7XG4kZmEtdmFyLWZpbGVzLW86IFwiXFxmMGM1XCI7XG4kZmEtdmFyLWZpbG06IFwiXFxmMDA4XCI7XG4kZmEtdmFyLWZpbHRlcjogXCJcXGYwYjBcIjtcbiRmYS12YXItZmlyZTogXCJcXGYwNmRcIjtcbiRmYS12YXItZmlyZS1leHRpbmd1aXNoZXI6IFwiXFxmMTM0XCI7XG4kZmEtdmFyLWZpcmVmb3g6IFwiXFxmMjY5XCI7XG4kZmEtdmFyLWZpcnN0LW9yZGVyOiBcIlxcZjJiMFwiO1xuJGZhLXZhci1mbGFnOiBcIlxcZjAyNFwiO1xuJGZhLXZhci1mbGFnLWNoZWNrZXJlZDogXCJcXGYxMWVcIjtcbiRmYS12YXItZmxhZy1vOiBcIlxcZjExZFwiO1xuJGZhLXZhci1mbGFzaDogXCJcXGYwZTdcIjtcbiRmYS12YXItZmxhc2s6IFwiXFxmMGMzXCI7XG4kZmEtdmFyLWZsaWNrcjogXCJcXGYxNmVcIjtcbiRmYS12YXItZmxvcHB5LW86IFwiXFxmMGM3XCI7XG4kZmEtdmFyLWZvbGRlcjogXCJcXGYwN2JcIjtcbiRmYS12YXItZm9sZGVyLW86IFwiXFxmMTE0XCI7XG4kZmEtdmFyLWZvbGRlci1vcGVuOiBcIlxcZjA3Y1wiO1xuJGZhLXZhci1mb2xkZXItb3Blbi1vOiBcIlxcZjExNVwiO1xuJGZhLXZhci1mb250OiBcIlxcZjAzMVwiO1xuJGZhLXZhci1mb250LWF3ZXNvbWU6IFwiXFxmMmI0XCI7XG4kZmEtdmFyLWZvbnRpY29uczogXCJcXGYyODBcIjtcbiRmYS12YXItZm9ydC1hd2Vzb21lOiBcIlxcZjI4NlwiO1xuJGZhLXZhci1mb3J1bWJlZTogXCJcXGYyMTFcIjtcbiRmYS12YXItZm9yd2FyZDogXCJcXGYwNGVcIjtcbiRmYS12YXItZm91cnNxdWFyZTogXCJcXGYxODBcIjtcbiRmYS12YXItZnJlZS1jb2RlLWNhbXA6IFwiXFxmMmM1XCI7XG4kZmEtdmFyLWZyb3duLW86IFwiXFxmMTE5XCI7XG4kZmEtdmFyLWZ1dGJvbC1vOiBcIlxcZjFlM1wiO1xuJGZhLXZhci1nYW1lcGFkOiBcIlxcZjExYlwiO1xuJGZhLXZhci1nYXZlbDogXCJcXGYwZTNcIjtcbiRmYS12YXItZ2JwOiBcIlxcZjE1NFwiO1xuJGZhLXZhci1nZTogXCJcXGYxZDFcIjtcbiRmYS12YXItZ2VhcjogXCJcXGYwMTNcIjtcbiRmYS12YXItZ2VhcnM6IFwiXFxmMDg1XCI7XG4kZmEtdmFyLWdlbmRlcmxlc3M6IFwiXFxmMjJkXCI7XG4kZmEtdmFyLWdldC1wb2NrZXQ6IFwiXFxmMjY1XCI7XG4kZmEtdmFyLWdnOiBcIlxcZjI2MFwiO1xuJGZhLXZhci1nZy1jaXJjbGU6IFwiXFxmMjYxXCI7XG4kZmEtdmFyLWdpZnQ6IFwiXFxmMDZiXCI7XG4kZmEtdmFyLWdpdDogXCJcXGYxZDNcIjtcbiRmYS12YXItZ2l0LXNxdWFyZTogXCJcXGYxZDJcIjtcbiRmYS12YXItZ2l0aHViOiBcIlxcZjA5YlwiO1xuJGZhLXZhci1naXRodWItYWx0OiBcIlxcZjExM1wiO1xuJGZhLXZhci1naXRodWItc3F1YXJlOiBcIlxcZjA5MlwiO1xuJGZhLXZhci1naXRsYWI6IFwiXFxmMjk2XCI7XG4kZmEtdmFyLWdpdHRpcDogXCJcXGYxODRcIjtcbiRmYS12YXItZ2xhc3M6IFwiXFxmMDAwXCI7XG4kZmEtdmFyLWdsaWRlOiBcIlxcZjJhNVwiO1xuJGZhLXZhci1nbGlkZS1nOiBcIlxcZjJhNlwiO1xuJGZhLXZhci1nbG9iZTogXCJcXGYwYWNcIjtcbiRmYS12YXItZ29vZ2xlOiBcIlxcZjFhMFwiO1xuJGZhLXZhci1nb29nbGUtcGx1czogXCJcXGYwZDVcIjtcbiRmYS12YXItZ29vZ2xlLXBsdXMtY2lyY2xlOiBcIlxcZjJiM1wiO1xuJGZhLXZhci1nb29nbGUtcGx1cy1vZmZpY2lhbDogXCJcXGYyYjNcIjtcbiRmYS12YXItZ29vZ2xlLXBsdXMtc3F1YXJlOiBcIlxcZjBkNFwiO1xuJGZhLXZhci1nb29nbGUtd2FsbGV0OiBcIlxcZjFlZVwiO1xuJGZhLXZhci1ncmFkdWF0aW9uLWNhcDogXCJcXGYxOWRcIjtcbiRmYS12YXItZ3JhdGlwYXk6IFwiXFxmMTg0XCI7XG4kZmEtdmFyLWdyYXY6IFwiXFxmMmQ2XCI7XG4kZmEtdmFyLWdyb3VwOiBcIlxcZjBjMFwiO1xuJGZhLXZhci1oLXNxdWFyZTogXCJcXGYwZmRcIjtcbiRmYS12YXItaGFja2VyLW5ld3M6IFwiXFxmMWQ0XCI7XG4kZmEtdmFyLWhhbmQtZ3JhYi1vOiBcIlxcZjI1NVwiO1xuJGZhLXZhci1oYW5kLWxpemFyZC1vOiBcIlxcZjI1OFwiO1xuJGZhLXZhci1oYW5kLW8tZG93bjogXCJcXGYwYTdcIjtcbiRmYS12YXItaGFuZC1vLWxlZnQ6IFwiXFxmMGE1XCI7XG4kZmEtdmFyLWhhbmQtby1yaWdodDogXCJcXGYwYTRcIjtcbiRmYS12YXItaGFuZC1vLXVwOiBcIlxcZjBhNlwiO1xuJGZhLXZhci1oYW5kLXBhcGVyLW86IFwiXFxmMjU2XCI7XG4kZmEtdmFyLWhhbmQtcGVhY2UtbzogXCJcXGYyNWJcIjtcbiRmYS12YXItaGFuZC1wb2ludGVyLW86IFwiXFxmMjVhXCI7XG4kZmEtdmFyLWhhbmQtcm9jay1vOiBcIlxcZjI1NVwiO1xuJGZhLXZhci1oYW5kLXNjaXNzb3JzLW86IFwiXFxmMjU3XCI7XG4kZmEtdmFyLWhhbmQtc3BvY2stbzogXCJcXGYyNTlcIjtcbiRmYS12YXItaGFuZC1zdG9wLW86IFwiXFxmMjU2XCI7XG4kZmEtdmFyLWhhbmRzaGFrZS1vOiBcIlxcZjJiNVwiO1xuJGZhLXZhci1oYXJkLW9mLWhlYXJpbmc6IFwiXFxmMmE0XCI7XG4kZmEtdmFyLWhhc2h0YWc6IFwiXFxmMjkyXCI7XG4kZmEtdmFyLWhkZC1vOiBcIlxcZjBhMFwiO1xuJGZhLXZhci1oZWFkZXI6IFwiXFxmMWRjXCI7XG4kZmEtdmFyLWhlYWRwaG9uZXM6IFwiXFxmMDI1XCI7XG4kZmEtdmFyLWhlYXJ0OiBcIlxcZjAwNFwiO1xuJGZhLXZhci1oZWFydC1vOiBcIlxcZjA4YVwiO1xuJGZhLXZhci1oZWFydGJlYXQ6IFwiXFxmMjFlXCI7XG4kZmEtdmFyLWhpc3Rvcnk6IFwiXFxmMWRhXCI7XG4kZmEtdmFyLWhvbWU6IFwiXFxmMDE1XCI7XG4kZmEtdmFyLWhvc3BpdGFsLW86IFwiXFxmMGY4XCI7XG4kZmEtdmFyLWhvdGVsOiBcIlxcZjIzNlwiO1xuJGZhLXZhci1ob3VyZ2xhc3M6IFwiXFxmMjU0XCI7XG4kZmEtdmFyLWhvdXJnbGFzcy0xOiBcIlxcZjI1MVwiO1xuJGZhLXZhci1ob3VyZ2xhc3MtMjogXCJcXGYyNTJcIjtcbiRmYS12YXItaG91cmdsYXNzLTM6IFwiXFxmMjUzXCI7XG4kZmEtdmFyLWhvdXJnbGFzcy1lbmQ6IFwiXFxmMjUzXCI7XG4kZmEtdmFyLWhvdXJnbGFzcy1oYWxmOiBcIlxcZjI1MlwiO1xuJGZhLXZhci1ob3VyZ2xhc3MtbzogXCJcXGYyNTBcIjtcbiRmYS12YXItaG91cmdsYXNzLXN0YXJ0OiBcIlxcZjI1MVwiO1xuJGZhLXZhci1ob3V6ejogXCJcXGYyN2NcIjtcbiRmYS12YXItaHRtbDU6IFwiXFxmMTNiXCI7XG4kZmEtdmFyLWktY3Vyc29yOiBcIlxcZjI0NlwiO1xuJGZhLXZhci1pZC1iYWRnZTogXCJcXGYyYzFcIjtcbiRmYS12YXItaWQtY2FyZDogXCJcXGYyYzJcIjtcbiRmYS12YXItaWQtY2FyZC1vOiBcIlxcZjJjM1wiO1xuJGZhLXZhci1pbHM6IFwiXFxmMjBiXCI7XG4kZmEtdmFyLWltYWdlOiBcIlxcZjAzZVwiO1xuJGZhLXZhci1pbWRiOiBcIlxcZjJkOFwiO1xuJGZhLXZhci1pbmJveDogXCJcXGYwMWNcIjtcbiRmYS12YXItaW5kZW50OiBcIlxcZjAzY1wiO1xuJGZhLXZhci1pbmR1c3RyeTogXCJcXGYyNzVcIjtcbiRmYS12YXItaW5mbzogXCJcXGYxMjlcIjtcbiRmYS12YXItaW5mby1jaXJjbGU6IFwiXFxmMDVhXCI7XG4kZmEtdmFyLWlucjogXCJcXGYxNTZcIjtcbiRmYS12YXItaW5zdGFncmFtOiBcIlxcZjE2ZFwiO1xuJGZhLXZhci1pbnN0aXR1dGlvbjogXCJcXGYxOWNcIjtcbiRmYS12YXItaW50ZXJuZXQtZXhwbG9yZXI6IFwiXFxmMjZiXCI7XG4kZmEtdmFyLWludGVyc2V4OiBcIlxcZjIyNFwiO1xuJGZhLXZhci1pb3hob3N0OiBcIlxcZjIwOFwiO1xuJGZhLXZhci1pdGFsaWM6IFwiXFxmMDMzXCI7XG4kZmEtdmFyLWpvb21sYTogXCJcXGYxYWFcIjtcbiRmYS12YXItanB5OiBcIlxcZjE1N1wiO1xuJGZhLXZhci1qc2ZpZGRsZTogXCJcXGYxY2NcIjtcbiRmYS12YXIta2V5OiBcIlxcZjA4NFwiO1xuJGZhLXZhci1rZXlib2FyZC1vOiBcIlxcZjExY1wiO1xuJGZhLXZhci1rcnc6IFwiXFxmMTU5XCI7XG4kZmEtdmFyLWxhbmd1YWdlOiBcIlxcZjFhYlwiO1xuJGZhLXZhci1sYXB0b3A6IFwiXFxmMTA5XCI7XG4kZmEtdmFyLWxhc3RmbTogXCJcXGYyMDJcIjtcbiRmYS12YXItbGFzdGZtLXNxdWFyZTogXCJcXGYyMDNcIjtcbiRmYS12YXItbGVhZjogXCJcXGYwNmNcIjtcbiRmYS12YXItbGVhbnB1YjogXCJcXGYyMTJcIjtcbiRmYS12YXItbGVnYWw6IFwiXFxmMGUzXCI7XG4kZmEtdmFyLWxlbW9uLW86IFwiXFxmMDk0XCI7XG4kZmEtdmFyLWxldmVsLWRvd246IFwiXFxmMTQ5XCI7XG4kZmEtdmFyLWxldmVsLXVwOiBcIlxcZjE0OFwiO1xuJGZhLXZhci1saWZlLWJvdXk6IFwiXFxmMWNkXCI7XG4kZmEtdmFyLWxpZmUtYnVveTogXCJcXGYxY2RcIjtcbiRmYS12YXItbGlmZS1yaW5nOiBcIlxcZjFjZFwiO1xuJGZhLXZhci1saWZlLXNhdmVyOiBcIlxcZjFjZFwiO1xuJGZhLXZhci1saWdodGJ1bGItbzogXCJcXGYwZWJcIjtcbiRmYS12YXItbGluZS1jaGFydDogXCJcXGYyMDFcIjtcbiRmYS12YXItbGluazogXCJcXGYwYzFcIjtcbiRmYS12YXItbGlua2VkaW46IFwiXFxmMGUxXCI7XG4kZmEtdmFyLWxpbmtlZGluLXNxdWFyZTogXCJcXGYwOGNcIjtcbiRmYS12YXItbGlub2RlOiBcIlxcZjJiOFwiO1xuJGZhLXZhci1saW51eDogXCJcXGYxN2NcIjtcbiRmYS12YXItbGlzdDogXCJcXGYwM2FcIjtcbiRmYS12YXItbGlzdC1hbHQ6IFwiXFxmMDIyXCI7XG4kZmEtdmFyLWxpc3Qtb2w6IFwiXFxmMGNiXCI7XG4kZmEtdmFyLWxpc3QtdWw6IFwiXFxmMGNhXCI7XG4kZmEtdmFyLWxvY2F0aW9uLWFycm93OiBcIlxcZjEyNFwiO1xuJGZhLXZhci1sb2NrOiBcIlxcZjAyM1wiO1xuJGZhLXZhci1sb25nLWFycm93LWRvd246IFwiXFxmMTc1XCI7XG4kZmEtdmFyLWxvbmctYXJyb3ctbGVmdDogXCJcXGYxNzdcIjtcbiRmYS12YXItbG9uZy1hcnJvdy1yaWdodDogXCJcXGYxNzhcIjtcbiRmYS12YXItbG9uZy1hcnJvdy11cDogXCJcXGYxNzZcIjtcbiRmYS12YXItbG93LXZpc2lvbjogXCJcXGYyYThcIjtcbiRmYS12YXItbWFnaWM6IFwiXFxmMGQwXCI7XG4kZmEtdmFyLW1hZ25ldDogXCJcXGYwNzZcIjtcbiRmYS12YXItbWFpbC1mb3J3YXJkOiBcIlxcZjA2NFwiO1xuJGZhLXZhci1tYWlsLXJlcGx5OiBcIlxcZjExMlwiO1xuJGZhLXZhci1tYWlsLXJlcGx5LWFsbDogXCJcXGYxMjJcIjtcbiRmYS12YXItbWFsZTogXCJcXGYxODNcIjtcbiRmYS12YXItbWFwOiBcIlxcZjI3OVwiO1xuJGZhLXZhci1tYXAtbWFya2VyOiBcIlxcZjA0MVwiO1xuJGZhLXZhci1tYXAtbzogXCJcXGYyNzhcIjtcbiRmYS12YXItbWFwLXBpbjogXCJcXGYyNzZcIjtcbiRmYS12YXItbWFwLXNpZ25zOiBcIlxcZjI3N1wiO1xuJGZhLXZhci1tYXJzOiBcIlxcZjIyMlwiO1xuJGZhLXZhci1tYXJzLWRvdWJsZTogXCJcXGYyMjdcIjtcbiRmYS12YXItbWFycy1zdHJva2U6IFwiXFxmMjI5XCI7XG4kZmEtdmFyLW1hcnMtc3Ryb2tlLWg6IFwiXFxmMjJiXCI7XG4kZmEtdmFyLW1hcnMtc3Ryb2tlLXY6IFwiXFxmMjJhXCI7XG4kZmEtdmFyLW1heGNkbjogXCJcXGYxMzZcIjtcbiRmYS12YXItbWVhbnBhdGg6IFwiXFxmMjBjXCI7XG4kZmEtdmFyLW1lZGl1bTogXCJcXGYyM2FcIjtcbiRmYS12YXItbWVka2l0OiBcIlxcZjBmYVwiO1xuJGZhLXZhci1tZWV0dXA6IFwiXFxmMmUwXCI7XG4kZmEtdmFyLW1laC1vOiBcIlxcZjExYVwiO1xuJGZhLXZhci1tZXJjdXJ5OiBcIlxcZjIyM1wiO1xuJGZhLXZhci1taWNyb2NoaXA6IFwiXFxmMmRiXCI7XG4kZmEtdmFyLW1pY3JvcGhvbmU6IFwiXFxmMTMwXCI7XG4kZmEtdmFyLW1pY3JvcGhvbmUtc2xhc2g6IFwiXFxmMTMxXCI7XG4kZmEtdmFyLW1pbnVzOiBcIlxcZjA2OFwiO1xuJGZhLXZhci1taW51cy1jaXJjbGU6IFwiXFxmMDU2XCI7XG4kZmEtdmFyLW1pbnVzLXNxdWFyZTogXCJcXGYxNDZcIjtcbiRmYS12YXItbWludXMtc3F1YXJlLW86IFwiXFxmMTQ3XCI7XG4kZmEtdmFyLW1peGNsb3VkOiBcIlxcZjI4OVwiO1xuJGZhLXZhci1tb2JpbGU6IFwiXFxmMTBiXCI7XG4kZmEtdmFyLW1vYmlsZS1waG9uZTogXCJcXGYxMGJcIjtcbiRmYS12YXItbW9keDogXCJcXGYyODVcIjtcbiRmYS12YXItbW9uZXk6IFwiXFxmMGQ2XCI7XG4kZmEtdmFyLW1vb24tbzogXCJcXGYxODZcIjtcbiRmYS12YXItbW9ydGFyLWJvYXJkOiBcIlxcZjE5ZFwiO1xuJGZhLXZhci1tb3RvcmN5Y2xlOiBcIlxcZjIxY1wiO1xuJGZhLXZhci1tb3VzZS1wb2ludGVyOiBcIlxcZjI0NVwiO1xuJGZhLXZhci1tdXNpYzogXCJcXGYwMDFcIjtcbiRmYS12YXItbmF2aWNvbjogXCJcXGYwYzlcIjtcbiRmYS12YXItbmV1dGVyOiBcIlxcZjIyY1wiO1xuJGZhLXZhci1uZXdzcGFwZXItbzogXCJcXGYxZWFcIjtcbiRmYS12YXItb2JqZWN0LWdyb3VwOiBcIlxcZjI0N1wiO1xuJGZhLXZhci1vYmplY3QtdW5ncm91cDogXCJcXGYyNDhcIjtcbiRmYS12YXItb2Rub2tsYXNzbmlraTogXCJcXGYyNjNcIjtcbiRmYS12YXItb2Rub2tsYXNzbmlraS1zcXVhcmU6IFwiXFxmMjY0XCI7XG4kZmEtdmFyLW9wZW5jYXJ0OiBcIlxcZjIzZFwiO1xuJGZhLXZhci1vcGVuaWQ6IFwiXFxmMTliXCI7XG4kZmEtdmFyLW9wZXJhOiBcIlxcZjI2YVwiO1xuJGZhLXZhci1vcHRpbi1tb25zdGVyOiBcIlxcZjIzY1wiO1xuJGZhLXZhci1vdXRkZW50OiBcIlxcZjAzYlwiO1xuJGZhLXZhci1wYWdlbGluZXM6IFwiXFxmMThjXCI7XG4kZmEtdmFyLXBhaW50LWJydXNoOiBcIlxcZjFmY1wiO1xuJGZhLXZhci1wYXBlci1wbGFuZTogXCJcXGYxZDhcIjtcbiRmYS12YXItcGFwZXItcGxhbmUtbzogXCJcXGYxZDlcIjtcbiRmYS12YXItcGFwZXJjbGlwOiBcIlxcZjBjNlwiO1xuJGZhLXZhci1wYXJhZ3JhcGg6IFwiXFxmMWRkXCI7XG4kZmEtdmFyLXBhc3RlOiBcIlxcZjBlYVwiO1xuJGZhLXZhci1wYXVzZTogXCJcXGYwNGNcIjtcbiRmYS12YXItcGF1c2UtY2lyY2xlOiBcIlxcZjI4YlwiO1xuJGZhLXZhci1wYXVzZS1jaXJjbGUtbzogXCJcXGYyOGNcIjtcbiRmYS12YXItcGF3OiBcIlxcZjFiMFwiO1xuJGZhLXZhci1wYXlwYWw6IFwiXFxmMWVkXCI7XG4kZmEtdmFyLXBlbmNpbDogXCJcXGYwNDBcIjtcbiRmYS12YXItcGVuY2lsLXNxdWFyZTogXCJcXGYxNGJcIjtcbiRmYS12YXItcGVuY2lsLXNxdWFyZS1vOiBcIlxcZjA0NFwiO1xuJGZhLXZhci1wZXJjZW50OiBcIlxcZjI5NVwiO1xuJGZhLXZhci1waG9uZTogXCJcXGYwOTVcIjtcbiRmYS12YXItcGhvbmUtc3F1YXJlOiBcIlxcZjA5OFwiO1xuJGZhLXZhci1waG90bzogXCJcXGYwM2VcIjtcbiRmYS12YXItcGljdHVyZS1vOiBcIlxcZjAzZVwiO1xuJGZhLXZhci1waWUtY2hhcnQ6IFwiXFxmMjAwXCI7XG4kZmEtdmFyLXBpZWQtcGlwZXI6IFwiXFxmMmFlXCI7XG4kZmEtdmFyLXBpZWQtcGlwZXItYWx0OiBcIlxcZjFhOFwiO1xuJGZhLXZhci1waWVkLXBpcGVyLXBwOiBcIlxcZjFhN1wiO1xuJGZhLXZhci1waW50ZXJlc3Q6IFwiXFxmMGQyXCI7XG4kZmEtdmFyLXBpbnRlcmVzdC1wOiBcIlxcZjIzMVwiO1xuJGZhLXZhci1waW50ZXJlc3Qtc3F1YXJlOiBcIlxcZjBkM1wiO1xuJGZhLXZhci1wbGFuZTogXCJcXGYwNzJcIjtcbiRmYS12YXItcGxheTogXCJcXGYwNGJcIjtcbiRmYS12YXItcGxheS1jaXJjbGU6IFwiXFxmMTQ0XCI7XG4kZmEtdmFyLXBsYXktY2lyY2xlLW86IFwiXFxmMDFkXCI7XG4kZmEtdmFyLXBsdWc6IFwiXFxmMWU2XCI7XG4kZmEtdmFyLXBsdXM6IFwiXFxmMDY3XCI7XG4kZmEtdmFyLXBsdXMtY2lyY2xlOiBcIlxcZjA1NVwiO1xuJGZhLXZhci1wbHVzLXNxdWFyZTogXCJcXGYwZmVcIjtcbiRmYS12YXItcGx1cy1zcXVhcmUtbzogXCJcXGYxOTZcIjtcbiRmYS12YXItcG9kY2FzdDogXCJcXGYyY2VcIjtcbiRmYS12YXItcG93ZXItb2ZmOiBcIlxcZjAxMVwiO1xuJGZhLXZhci1wcmludDogXCJcXGYwMmZcIjtcbiRmYS12YXItcHJvZHVjdC1odW50OiBcIlxcZjI4OFwiO1xuJGZhLXZhci1wdXp6bGUtcGllY2U6IFwiXFxmMTJlXCI7XG4kZmEtdmFyLXFxOiBcIlxcZjFkNlwiO1xuJGZhLXZhci1xcmNvZGU6IFwiXFxmMDI5XCI7XG4kZmEtdmFyLXF1ZXN0aW9uOiBcIlxcZjEyOFwiO1xuJGZhLXZhci1xdWVzdGlvbi1jaXJjbGU6IFwiXFxmMDU5XCI7XG4kZmEtdmFyLXF1ZXN0aW9uLWNpcmNsZS1vOiBcIlxcZjI5Y1wiO1xuJGZhLXZhci1xdW9yYTogXCJcXGYyYzRcIjtcbiRmYS12YXItcXVvdGUtbGVmdDogXCJcXGYxMGRcIjtcbiRmYS12YXItcXVvdGUtcmlnaHQ6IFwiXFxmMTBlXCI7XG4kZmEtdmFyLXJhOiBcIlxcZjFkMFwiO1xuJGZhLXZhci1yYW5kb206IFwiXFxmMDc0XCI7XG4kZmEtdmFyLXJhdmVscnk6IFwiXFxmMmQ5XCI7XG4kZmEtdmFyLXJlYmVsOiBcIlxcZjFkMFwiO1xuJGZhLXZhci1yZWN5Y2xlOiBcIlxcZjFiOFwiO1xuJGZhLXZhci1yZWRkaXQ6IFwiXFxmMWExXCI7XG4kZmEtdmFyLXJlZGRpdC1hbGllbjogXCJcXGYyODFcIjtcbiRmYS12YXItcmVkZGl0LXNxdWFyZTogXCJcXGYxYTJcIjtcbiRmYS12YXItcmVmcmVzaDogXCJcXGYwMjFcIjtcbiRmYS12YXItcmVnaXN0ZXJlZDogXCJcXGYyNWRcIjtcbiRmYS12YXItcmVtb3ZlOiBcIlxcZjAwZFwiO1xuJGZhLXZhci1yZW5yZW46IFwiXFxmMThiXCI7XG4kZmEtdmFyLXJlb3JkZXI6IFwiXFxmMGM5XCI7XG4kZmEtdmFyLXJlcGVhdDogXCJcXGYwMWVcIjtcbiRmYS12YXItcmVwbHk6IFwiXFxmMTEyXCI7XG4kZmEtdmFyLXJlcGx5LWFsbDogXCJcXGYxMjJcIjtcbiRmYS12YXItcmVzaXN0YW5jZTogXCJcXGYxZDBcIjtcbiRmYS12YXItcmV0d2VldDogXCJcXGYwNzlcIjtcbiRmYS12YXItcm1iOiBcIlxcZjE1N1wiO1xuJGZhLXZhci1yb2FkOiBcIlxcZjAxOFwiO1xuJGZhLXZhci1yb2NrZXQ6IFwiXFxmMTM1XCI7XG4kZmEtdmFyLXJvdGF0ZS1sZWZ0OiBcIlxcZjBlMlwiO1xuJGZhLXZhci1yb3RhdGUtcmlnaHQ6IFwiXFxmMDFlXCI7XG4kZmEtdmFyLXJvdWJsZTogXCJcXGYxNThcIjtcbiRmYS12YXItcnNzOiBcIlxcZjA5ZVwiO1xuJGZhLXZhci1yc3Mtc3F1YXJlOiBcIlxcZjE0M1wiO1xuJGZhLXZhci1ydWI6IFwiXFxmMTU4XCI7XG4kZmEtdmFyLXJ1YmxlOiBcIlxcZjE1OFwiO1xuJGZhLXZhci1ydXBlZTogXCJcXGYxNTZcIjtcbiRmYS12YXItczE1OiBcIlxcZjJjZFwiO1xuJGZhLXZhci1zYWZhcmk6IFwiXFxmMjY3XCI7XG4kZmEtdmFyLXNhdmU6IFwiXFxmMGM3XCI7XG4kZmEtdmFyLXNjaXNzb3JzOiBcIlxcZjBjNFwiO1xuJGZhLXZhci1zY3JpYmQ6IFwiXFxmMjhhXCI7XG4kZmEtdmFyLXNlYXJjaDogXCJcXGYwMDJcIjtcbiRmYS12YXItc2VhcmNoLW1pbnVzOiBcIlxcZjAxMFwiO1xuJGZhLXZhci1zZWFyY2gtcGx1czogXCJcXGYwMGVcIjtcbiRmYS12YXItc2VsbHN5OiBcIlxcZjIxM1wiO1xuJGZhLXZhci1zZW5kOiBcIlxcZjFkOFwiO1xuJGZhLXZhci1zZW5kLW86IFwiXFxmMWQ5XCI7XG4kZmEtdmFyLXNlcnZlcjogXCJcXGYyMzNcIjtcbiRmYS12YXItc2hhcmU6IFwiXFxmMDY0XCI7XG4kZmEtdmFyLXNoYXJlLWFsdDogXCJcXGYxZTBcIjtcbiRmYS12YXItc2hhcmUtYWx0LXNxdWFyZTogXCJcXGYxZTFcIjtcbiRmYS12YXItc2hhcmUtc3F1YXJlOiBcIlxcZjE0ZFwiO1xuJGZhLXZhci1zaGFyZS1zcXVhcmUtbzogXCJcXGYwNDVcIjtcbiRmYS12YXItc2hla2VsOiBcIlxcZjIwYlwiO1xuJGZhLXZhci1zaGVxZWw6IFwiXFxmMjBiXCI7XG4kZmEtdmFyLXNoaWVsZDogXCJcXGYxMzJcIjtcbiRmYS12YXItc2hpcDogXCJcXGYyMWFcIjtcbiRmYS12YXItc2hpcnRzaW5idWxrOiBcIlxcZjIxNFwiO1xuJGZhLXZhci1zaG9wcGluZy1iYWc6IFwiXFxmMjkwXCI7XG4kZmEtdmFyLXNob3BwaW5nLWJhc2tldDogXCJcXGYyOTFcIjtcbiRmYS12YXItc2hvcHBpbmctY2FydDogXCJcXGYwN2FcIjtcbiRmYS12YXItc2hvd2VyOiBcIlxcZjJjY1wiO1xuJGZhLXZhci1zaWduLWluOiBcIlxcZjA5MFwiO1xuJGZhLXZhci1zaWduLWxhbmd1YWdlOiBcIlxcZjJhN1wiO1xuJGZhLXZhci1zaWduLW91dDogXCJcXGYwOGJcIjtcbiRmYS12YXItc2lnbmFsOiBcIlxcZjAxMlwiO1xuJGZhLXZhci1zaWduaW5nOiBcIlxcZjJhN1wiO1xuJGZhLXZhci1zaW1wbHlidWlsdDogXCJcXGYyMTVcIjtcbiRmYS12YXItc2l0ZW1hcDogXCJcXGYwZThcIjtcbiRmYS12YXItc2t5YXRsYXM6IFwiXFxmMjE2XCI7XG4kZmEtdmFyLXNreXBlOiBcIlxcZjE3ZVwiO1xuJGZhLXZhci1zbGFjazogXCJcXGYxOThcIjtcbiRmYS12YXItc2xpZGVyczogXCJcXGYxZGVcIjtcbiRmYS12YXItc2xpZGVzaGFyZTogXCJcXGYxZTdcIjtcbiRmYS12YXItc21pbGUtbzogXCJcXGYxMThcIjtcbiRmYS12YXItc25hcGNoYXQ6IFwiXFxmMmFiXCI7XG4kZmEtdmFyLXNuYXBjaGF0LWdob3N0OiBcIlxcZjJhY1wiO1xuJGZhLXZhci1zbmFwY2hhdC1zcXVhcmU6IFwiXFxmMmFkXCI7XG4kZmEtdmFyLXNub3dmbGFrZS1vOiBcIlxcZjJkY1wiO1xuJGZhLXZhci1zb2NjZXItYmFsbC1vOiBcIlxcZjFlM1wiO1xuJGZhLXZhci1zb3J0OiBcIlxcZjBkY1wiO1xuJGZhLXZhci1zb3J0LWFscGhhLWFzYzogXCJcXGYxNWRcIjtcbiRmYS12YXItc29ydC1hbHBoYS1kZXNjOiBcIlxcZjE1ZVwiO1xuJGZhLXZhci1zb3J0LWFtb3VudC1hc2M6IFwiXFxmMTYwXCI7XG4kZmEtdmFyLXNvcnQtYW1vdW50LWRlc2M6IFwiXFxmMTYxXCI7XG4kZmEtdmFyLXNvcnQtYXNjOiBcIlxcZjBkZVwiO1xuJGZhLXZhci1zb3J0LWRlc2M6IFwiXFxmMGRkXCI7XG4kZmEtdmFyLXNvcnQtZG93bjogXCJcXGYwZGRcIjtcbiRmYS12YXItc29ydC1udW1lcmljLWFzYzogXCJcXGYxNjJcIjtcbiRmYS12YXItc29ydC1udW1lcmljLWRlc2M6IFwiXFxmMTYzXCI7XG4kZmEtdmFyLXNvcnQtdXA6IFwiXFxmMGRlXCI7XG4kZmEtdmFyLXNvdW5kY2xvdWQ6IFwiXFxmMWJlXCI7XG4kZmEtdmFyLXNwYWNlLXNodXR0bGU6IFwiXFxmMTk3XCI7XG4kZmEtdmFyLXNwaW5uZXI6IFwiXFxmMTEwXCI7XG4kZmEtdmFyLXNwb29uOiBcIlxcZjFiMVwiO1xuJGZhLXZhci1zcG90aWZ5OiBcIlxcZjFiY1wiO1xuJGZhLXZhci1zcXVhcmU6IFwiXFxmMGM4XCI7XG4kZmEtdmFyLXNxdWFyZS1vOiBcIlxcZjA5NlwiO1xuJGZhLXZhci1zdGFjay1leGNoYW5nZTogXCJcXGYxOGRcIjtcbiRmYS12YXItc3RhY2stb3ZlcmZsb3c6IFwiXFxmMTZjXCI7XG4kZmEtdmFyLXN0YXI6IFwiXFxmMDA1XCI7XG4kZmEtdmFyLXN0YXItaGFsZjogXCJcXGYwODlcIjtcbiRmYS12YXItc3Rhci1oYWxmLWVtcHR5OiBcIlxcZjEyM1wiO1xuJGZhLXZhci1zdGFyLWhhbGYtZnVsbDogXCJcXGYxMjNcIjtcbiRmYS12YXItc3Rhci1oYWxmLW86IFwiXFxmMTIzXCI7XG4kZmEtdmFyLXN0YXItbzogXCJcXGYwMDZcIjtcbiRmYS12YXItc3RlYW06IFwiXFxmMWI2XCI7XG4kZmEtdmFyLXN0ZWFtLXNxdWFyZTogXCJcXGYxYjdcIjtcbiRmYS12YXItc3RlcC1iYWNrd2FyZDogXCJcXGYwNDhcIjtcbiRmYS12YXItc3RlcC1mb3J3YXJkOiBcIlxcZjA1MVwiO1xuJGZhLXZhci1zdGV0aG9zY29wZTogXCJcXGYwZjFcIjtcbiRmYS12YXItc3RpY2t5LW5vdGU6IFwiXFxmMjQ5XCI7XG4kZmEtdmFyLXN0aWNreS1ub3RlLW86IFwiXFxmMjRhXCI7XG4kZmEtdmFyLXN0b3A6IFwiXFxmMDRkXCI7XG4kZmEtdmFyLXN0b3AtY2lyY2xlOiBcIlxcZjI4ZFwiO1xuJGZhLXZhci1zdG9wLWNpcmNsZS1vOiBcIlxcZjI4ZVwiO1xuJGZhLXZhci1zdHJlZXQtdmlldzogXCJcXGYyMWRcIjtcbiRmYS12YXItc3RyaWtldGhyb3VnaDogXCJcXGYwY2NcIjtcbiRmYS12YXItc3R1bWJsZXVwb246IFwiXFxmMWE0XCI7XG4kZmEtdmFyLXN0dW1ibGV1cG9uLWNpcmNsZTogXCJcXGYxYTNcIjtcbiRmYS12YXItc3Vic2NyaXB0OiBcIlxcZjEyY1wiO1xuJGZhLXZhci1zdWJ3YXk6IFwiXFxmMjM5XCI7XG4kZmEtdmFyLXN1aXRjYXNlOiBcIlxcZjBmMlwiO1xuJGZhLXZhci1zdW4tbzogXCJcXGYxODVcIjtcbiRmYS12YXItc3VwZXJwb3dlcnM6IFwiXFxmMmRkXCI7XG4kZmEtdmFyLXN1cGVyc2NyaXB0OiBcIlxcZjEyYlwiO1xuJGZhLXZhci1zdXBwb3J0OiBcIlxcZjFjZFwiO1xuJGZhLXZhci10YWJsZTogXCJcXGYwY2VcIjtcbiRmYS12YXItdGFibGV0OiBcIlxcZjEwYVwiO1xuJGZhLXZhci10YWNob21ldGVyOiBcIlxcZjBlNFwiO1xuJGZhLXZhci10YWc6IFwiXFxmMDJiXCI7XG4kZmEtdmFyLXRhZ3M6IFwiXFxmMDJjXCI7XG4kZmEtdmFyLXRhc2tzOiBcIlxcZjBhZVwiO1xuJGZhLXZhci10YXhpOiBcIlxcZjFiYVwiO1xuJGZhLXZhci10ZWxlZ3JhbTogXCJcXGYyYzZcIjtcbiRmYS12YXItdGVsZXZpc2lvbjogXCJcXGYyNmNcIjtcbiRmYS12YXItdGVuY2VudC13ZWlibzogXCJcXGYxZDVcIjtcbiRmYS12YXItdGVybWluYWw6IFwiXFxmMTIwXCI7XG4kZmEtdmFyLXRleHQtaGVpZ2h0OiBcIlxcZjAzNFwiO1xuJGZhLXZhci10ZXh0LXdpZHRoOiBcIlxcZjAzNVwiO1xuJGZhLXZhci10aDogXCJcXGYwMGFcIjtcbiRmYS12YXItdGgtbGFyZ2U6IFwiXFxmMDA5XCI7XG4kZmEtdmFyLXRoLWxpc3Q6IFwiXFxmMDBiXCI7XG4kZmEtdmFyLXRoZW1laXNsZTogXCJcXGYyYjJcIjtcbiRmYS12YXItdGhlcm1vbWV0ZXI6IFwiXFxmMmM3XCI7XG4kZmEtdmFyLXRoZXJtb21ldGVyLTA6IFwiXFxmMmNiXCI7XG4kZmEtdmFyLXRoZXJtb21ldGVyLTE6IFwiXFxmMmNhXCI7XG4kZmEtdmFyLXRoZXJtb21ldGVyLTI6IFwiXFxmMmM5XCI7XG4kZmEtdmFyLXRoZXJtb21ldGVyLTM6IFwiXFxmMmM4XCI7XG4kZmEtdmFyLXRoZXJtb21ldGVyLTQ6IFwiXFxmMmM3XCI7XG4kZmEtdmFyLXRoZXJtb21ldGVyLWVtcHR5OiBcIlxcZjJjYlwiO1xuJGZhLXZhci10aGVybW9tZXRlci1mdWxsOiBcIlxcZjJjN1wiO1xuJGZhLXZhci10aGVybW9tZXRlci1oYWxmOiBcIlxcZjJjOVwiO1xuJGZhLXZhci10aGVybW9tZXRlci1xdWFydGVyOiBcIlxcZjJjYVwiO1xuJGZhLXZhci10aGVybW9tZXRlci10aHJlZS1xdWFydGVyczogXCJcXGYyYzhcIjtcbiRmYS12YXItdGh1bWItdGFjazogXCJcXGYwOGRcIjtcbiRmYS12YXItdGh1bWJzLWRvd246IFwiXFxmMTY1XCI7XG4kZmEtdmFyLXRodW1icy1vLWRvd246IFwiXFxmMDg4XCI7XG4kZmEtdmFyLXRodW1icy1vLXVwOiBcIlxcZjA4N1wiO1xuJGZhLXZhci10aHVtYnMtdXA6IFwiXFxmMTY0XCI7XG4kZmEtdmFyLXRpY2tldDogXCJcXGYxNDVcIjtcbiRmYS12YXItdGltZXM6IFwiXFxmMDBkXCI7XG4kZmEtdmFyLXRpbWVzLWNpcmNsZTogXCJcXGYwNTdcIjtcbiRmYS12YXItdGltZXMtY2lyY2xlLW86IFwiXFxmMDVjXCI7XG4kZmEtdmFyLXRpbWVzLXJlY3RhbmdsZTogXCJcXGYyZDNcIjtcbiRmYS12YXItdGltZXMtcmVjdGFuZ2xlLW86IFwiXFxmMmQ0XCI7XG4kZmEtdmFyLXRpbnQ6IFwiXFxmMDQzXCI7XG4kZmEtdmFyLXRvZ2dsZS1kb3duOiBcIlxcZjE1MFwiO1xuJGZhLXZhci10b2dnbGUtbGVmdDogXCJcXGYxOTFcIjtcbiRmYS12YXItdG9nZ2xlLW9mZjogXCJcXGYyMDRcIjtcbiRmYS12YXItdG9nZ2xlLW9uOiBcIlxcZjIwNVwiO1xuJGZhLXZhci10b2dnbGUtcmlnaHQ6IFwiXFxmMTUyXCI7XG4kZmEtdmFyLXRvZ2dsZS11cDogXCJcXGYxNTFcIjtcbiRmYS12YXItdHJhZGVtYXJrOiBcIlxcZjI1Y1wiO1xuJGZhLXZhci10cmFpbjogXCJcXGYyMzhcIjtcbiRmYS12YXItdHJhbnNnZW5kZXI6IFwiXFxmMjI0XCI7XG4kZmEtdmFyLXRyYW5zZ2VuZGVyLWFsdDogXCJcXGYyMjVcIjtcbiRmYS12YXItdHJhc2g6IFwiXFxmMWY4XCI7XG4kZmEtdmFyLXRyYXNoLW86IFwiXFxmMDE0XCI7XG4kZmEtdmFyLXRyZWU6IFwiXFxmMWJiXCI7XG4kZmEtdmFyLXRyZWxsbzogXCJcXGYxODFcIjtcbiRmYS12YXItdHJpcGFkdmlzb3I6IFwiXFxmMjYyXCI7XG4kZmEtdmFyLXRyb3BoeTogXCJcXGYwOTFcIjtcbiRmYS12YXItdHJ1Y2s6IFwiXFxmMGQxXCI7XG4kZmEtdmFyLXRyeTogXCJcXGYxOTVcIjtcbiRmYS12YXItdHR5OiBcIlxcZjFlNFwiO1xuJGZhLXZhci10dW1ibHI6IFwiXFxmMTczXCI7XG4kZmEtdmFyLXR1bWJsci1zcXVhcmU6IFwiXFxmMTc0XCI7XG4kZmEtdmFyLXR1cmtpc2gtbGlyYTogXCJcXGYxOTVcIjtcbiRmYS12YXItdHY6IFwiXFxmMjZjXCI7XG4kZmEtdmFyLXR3aXRjaDogXCJcXGYxZThcIjtcbiRmYS12YXItdHdpdHRlcjogXCJcXGYwOTlcIjtcbiRmYS12YXItdHdpdHRlci1zcXVhcmU6IFwiXFxmMDgxXCI7XG4kZmEtdmFyLXVtYnJlbGxhOiBcIlxcZjBlOVwiO1xuJGZhLXZhci11bmRlcmxpbmU6IFwiXFxmMGNkXCI7XG4kZmEtdmFyLXVuZG86IFwiXFxmMGUyXCI7XG4kZmEtdmFyLXVuaXZlcnNhbC1hY2Nlc3M6IFwiXFxmMjlhXCI7XG4kZmEtdmFyLXVuaXZlcnNpdHk6IFwiXFxmMTljXCI7XG4kZmEtdmFyLXVubGluazogXCJcXGYxMjdcIjtcbiRmYS12YXItdW5sb2NrOiBcIlxcZjA5Y1wiO1xuJGZhLXZhci11bmxvY2stYWx0OiBcIlxcZjEzZVwiO1xuJGZhLXZhci11bnNvcnRlZDogXCJcXGYwZGNcIjtcbiRmYS12YXItdXBsb2FkOiBcIlxcZjA5M1wiO1xuJGZhLXZhci11c2I6IFwiXFxmMjg3XCI7XG4kZmEtdmFyLXVzZDogXCJcXGYxNTVcIjtcbiRmYS12YXItdXNlcjogXCJcXGYwMDdcIjtcbiRmYS12YXItdXNlci1jaXJjbGU6IFwiXFxmMmJkXCI7XG4kZmEtdmFyLXVzZXItY2lyY2xlLW86IFwiXFxmMmJlXCI7XG4kZmEtdmFyLXVzZXItbWQ6IFwiXFxmMGYwXCI7XG4kZmEtdmFyLXVzZXItbzogXCJcXGYyYzBcIjtcbiRmYS12YXItdXNlci1wbHVzOiBcIlxcZjIzNFwiO1xuJGZhLXZhci11c2VyLXNlY3JldDogXCJcXGYyMWJcIjtcbiRmYS12YXItdXNlci10aW1lczogXCJcXGYyMzVcIjtcbiRmYS12YXItdXNlcnM6IFwiXFxmMGMwXCI7XG4kZmEtdmFyLXZjYXJkOiBcIlxcZjJiYlwiO1xuJGZhLXZhci12Y2FyZC1vOiBcIlxcZjJiY1wiO1xuJGZhLXZhci12ZW51czogXCJcXGYyMjFcIjtcbiRmYS12YXItdmVudXMtZG91YmxlOiBcIlxcZjIyNlwiO1xuJGZhLXZhci12ZW51cy1tYXJzOiBcIlxcZjIyOFwiO1xuJGZhLXZhci12aWFjb2luOiBcIlxcZjIzN1wiO1xuJGZhLXZhci12aWFkZW86IFwiXFxmMmE5XCI7XG4kZmEtdmFyLXZpYWRlby1zcXVhcmU6IFwiXFxmMmFhXCI7XG4kZmEtdmFyLXZpZGVvLWNhbWVyYTogXCJcXGYwM2RcIjtcbiRmYS12YXItdmltZW86IFwiXFxmMjdkXCI7XG4kZmEtdmFyLXZpbWVvLXNxdWFyZTogXCJcXGYxOTRcIjtcbiRmYS12YXItdmluZTogXCJcXGYxY2FcIjtcbiRmYS12YXItdms6IFwiXFxmMTg5XCI7XG4kZmEtdmFyLXZvbHVtZS1jb250cm9sLXBob25lOiBcIlxcZjJhMFwiO1xuJGZhLXZhci12b2x1bWUtZG93bjogXCJcXGYwMjdcIjtcbiRmYS12YXItdm9sdW1lLW9mZjogXCJcXGYwMjZcIjtcbiRmYS12YXItdm9sdW1lLXVwOiBcIlxcZjAyOFwiO1xuJGZhLXZhci13YXJuaW5nOiBcIlxcZjA3MVwiO1xuJGZhLXZhci13ZWNoYXQ6IFwiXFxmMWQ3XCI7XG4kZmEtdmFyLXdlaWJvOiBcIlxcZjE4YVwiO1xuJGZhLXZhci13ZWl4aW46IFwiXFxmMWQ3XCI7XG4kZmEtdmFyLXdoYXRzYXBwOiBcIlxcZjIzMlwiO1xuJGZhLXZhci13aGVlbGNoYWlyOiBcIlxcZjE5M1wiO1xuJGZhLXZhci13aGVlbGNoYWlyLWFsdDogXCJcXGYyOWJcIjtcbiRmYS12YXItd2lmaTogXCJcXGYxZWJcIjtcbiRmYS12YXItd2lraXBlZGlhLXc6IFwiXFxmMjY2XCI7XG4kZmEtdmFyLXdpbmRvdy1jbG9zZTogXCJcXGYyZDNcIjtcbiRmYS12YXItd2luZG93LWNsb3NlLW86IFwiXFxmMmQ0XCI7XG4kZmEtdmFyLXdpbmRvdy1tYXhpbWl6ZTogXCJcXGYyZDBcIjtcbiRmYS12YXItd2luZG93LW1pbmltaXplOiBcIlxcZjJkMVwiO1xuJGZhLXZhci13aW5kb3ctcmVzdG9yZTogXCJcXGYyZDJcIjtcbiRmYS12YXItd2luZG93czogXCJcXGYxN2FcIjtcbiRmYS12YXItd29uOiBcIlxcZjE1OVwiO1xuJGZhLXZhci13b3JkcHJlc3M6IFwiXFxmMTlhXCI7XG4kZmEtdmFyLXdwYmVnaW5uZXI6IFwiXFxmMjk3XCI7XG4kZmEtdmFyLXdwZXhwbG9yZXI6IFwiXFxmMmRlXCI7XG4kZmEtdmFyLXdwZm9ybXM6IFwiXFxmMjk4XCI7XG4kZmEtdmFyLXdyZW5jaDogXCJcXGYwYWRcIjtcbiRmYS12YXIteGluZzogXCJcXGYxNjhcIjtcbiRmYS12YXIteGluZy1zcXVhcmU6IFwiXFxmMTY5XCI7XG4kZmEtdmFyLXktY29tYmluYXRvcjogXCJcXGYyM2JcIjtcbiRmYS12YXIteS1jb21iaW5hdG9yLXNxdWFyZTogXCJcXGYxZDRcIjtcbiRmYS12YXIteWFob286IFwiXFxmMTllXCI7XG4kZmEtdmFyLXljOiBcIlxcZjIzYlwiO1xuJGZhLXZhci15Yy1zcXVhcmU6IFwiXFxmMWQ0XCI7XG4kZmEtdmFyLXllbHA6IFwiXFxmMWU5XCI7XG4kZmEtdmFyLXllbjogXCJcXGYxNTdcIjtcbiRmYS12YXIteW9hc3Q6IFwiXFxmMmIxXCI7XG4kZmEtdmFyLXlvdXR1YmU6IFwiXFxmMTY3XCI7XG4kZmEtdmFyLXlvdXR1YmUtcGxheTogXCJcXGYxNmFcIjtcbiRmYS12YXIteW91dHViZS1zcXVhcmU6IFwiXFxmMTY2XCI7XG5cbiIsIi8vIEJvcmRlcmVkICYgUHVsbGVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3JkZXIge1xuICBwYWRkaW5nOiAuMmVtIC4yNWVtIC4xNWVtO1xuICBib3JkZXI6IHNvbGlkIC4wOGVtICRmYS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IC4xZW07XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1wdWxsLWxlZnQgeyBmbG9hdDogbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXB1bGwtcmlnaHQgeyBmbG9hdDogcmlnaHQ7IH1cblxuLiN7JGZhLWNzcy1wcmVmaXh9IHtcbiAgJi4jeyRmYS1jc3MtcHJlZml4fS1wdWxsLWxlZnQgeyBtYXJnaW4tcmlnaHQ6IC4zZW07IH1cbiAgJi4jeyRmYS1jc3MtcHJlZml4fS1wdWxsLXJpZ2h0IHsgbWFyZ2luLWxlZnQ6IC4zZW07IH1cbn1cblxuLyogRGVwcmVjYXRlZCBhcyBvZiA0LjQuMCAqL1xuLnB1bGwtcmlnaHQgeyBmbG9hdDogcmlnaHQ7IH1cbi5wdWxsLWxlZnQgeyBmbG9hdDogbGVmdDsgfVxuXG4uI3skZmEtY3NzLXByZWZpeH0ge1xuICAmLnB1bGwtbGVmdCB7IG1hcmdpbi1yaWdodDogLjNlbTsgfVxuICAmLnB1bGwtcmlnaHQgeyBtYXJnaW4tbGVmdDogLjNlbTsgfVxufVxuIiwiLy8gU3Bpbm5pbmcgSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGluIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xuICAgICAgICAgIGFuaW1hdGlvbjogZmEtc3BpbiAycyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1wdWxzZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmYS1zcGluIDFzIGluZmluaXRlIHN0ZXBzKDgpO1xuICAgICAgICAgIGFuaW1hdGlvbjogZmEtc3BpbiAxcyBpbmZpbml0ZSBzdGVwcyg4KTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhLXNwaW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYS1zcGluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICB9XG59XG4iLCIvLyBSb3RhdGVkICYgRmxpcHBlZCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTkwICB7IEBpbmNsdWRlIGZhLWljb24tcm90YXRlKDkwZGVnLCAxKTsgIH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtMTgwIHsgQGluY2x1ZGUgZmEtaWNvbi1yb3RhdGUoMTgwZGVnLCAyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS0yNzAgeyBAaW5jbHVkZSBmYS1pY29uLXJvdGF0ZSgyNzBkZWcsIDMpOyB9XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLWhvcml6b250YWwgeyBAaW5jbHVkZSBmYS1pY29uLWZsaXAoLTEsIDEsIDApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxpcC12ZXJ0aWNhbCAgIHsgQGluY2x1ZGUgZmEtaWNvbi1mbGlwKDEsIC0xLCAyKTsgfVxuXG4vLyBIb29rIGZvciBJRTgtOVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG46cm9vdCAuI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTkwLFxuOnJvb3QgLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS0xODAsXG46cm9vdCAuI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTI3MCxcbjpyb290IC4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLWhvcml6b250YWwsXG46cm9vdCAuI3skZmEtY3NzLXByZWZpeH0tZmxpcC12ZXJ0aWNhbCB7XG4gIGZpbHRlcjogbm9uZTtcbn1cbiIsIi8vIE1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1peGluIGZhLWljb24oKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgI3skZmEtZm9udC1zaXplLWJhc2V9LyN7JGZhLWxpbmUtaGVpZ2h0LWJhc2V9IEZvbnRBd2Vzb21lOyAvLyBzaG9ydGVuaW5nIGZvbnQgZGVjbGFyYXRpb25cbiAgZm9udC1zaXplOiBpbmhlcml0OyAvLyBjYW4ndCBoYXZlIGZvbnQtc2l6ZSBpbmhlcml0IG9uIGxpbmUgYWJvdmUsIHNvIG5lZWQgdG8gb3ZlcnJpZGVcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87IC8vIG9wdGltaXplbGVnaWJpbGl0eSB0aHJvd3MgdGhpbmdzIG9mZiAjMTA5NFxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblxufVxuXG5AbWl4aW4gZmEtaWNvbi1yb3RhdGUoJGRlZ3JlZXMsICRyb3RhdGlvbikge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPSN7JHJvdGF0aW9ufSlcIjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbn1cblxuQG1peGluIGZhLWljb24tZmxpcCgkaG9yaXosICR2ZXJ0LCAkcm90YXRpb24pIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0jeyRyb3RhdGlvbn0sIG1pcnJvcj0xKVwiO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoJGhvcml6LCAkdmVydCk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkaG9yaXosICR2ZXJ0KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xufVxuXG5cbi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzLiBBIGxhIEJvb3RzdHJhcCA0LlxuLy9cbi8vIFNlZTogaHR0cDovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50L1xuXG5AbWl4aW4gc3Itb25seSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bztcbiAgfVxufVxuIiwiLy8gU3RhY2tlZCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMXgsIC4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0yeCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0xeCB7IGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMnggeyBmb250LXNpemU6IDJlbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWludmVyc2UgeyBjb2xvcjogJGZhLWludmVyc2U7IH1cbiIsIi8qIEZvbnQgQXdlc29tZSB1c2VzIHRoZSBVbmljb2RlIFByaXZhdGUgVXNlIEFyZWEgKFBVQSkgdG8gZW5zdXJlIHNjcmVlblxuICAgcmVhZGVycyBkbyBub3QgcmVhZCBvZmYgcmFuZG9tIGNoYXJhY3RlcnMgdGhhdCByZXByZXNlbnQgaWNvbnMgKi9cblxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsYXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2xhc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tdXNpYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW11c2ljOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2VhcmNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmVsb3BlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhlYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0YXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGFyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbG06YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGgtbGFyZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aC1sYXJnZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aC1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGgtbGlzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hlY2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZW1vdmU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3NlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRpbWVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoLXBsdXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zZWFyY2gtcGx1czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlYXJjaC1taW51czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNlYXJjaC1taW51czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBvd2VyLW9mZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBvd2VyLW9mZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ25hbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNpZ25hbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlYXI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYXNoLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFzaC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9tZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhvbWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG9jay1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xvY2stbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yb2FkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG93bmxvYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kb3dubG9hZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1vLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtby1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLW8tdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtby11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluYm94OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5ib3g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGF5LWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGxheS1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS1yaWdodDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmVwZWF0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVwZWF0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVmcmVzaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlZnJlc2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0LWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpc3QtYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9jazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvY2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFnOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxhZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWRwaG9uZXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oZWFkcGhvbmVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLW9mZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZvbHVtZS1vZmY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2x1bWUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZvbHVtZS1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdm9sdW1lLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXJjb2RlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFyY29kZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhcmNvZGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YWc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWdzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGFnczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvb2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib29rOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9va21hcms6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib29rbWFyazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXByaW50OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcHJpbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYW1lcmE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYW1lcmE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb250OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9udDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvbGQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib2xkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taXRhbGljOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaXRhbGljOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGV4dC1oZWlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZXh0LWhlaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRleHQtd2lkdGg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZXh0LXdpZHRoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFsaWduLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlnbi1jZW50ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbGlnbi1jZW50ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlnbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFsaWduLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tanVzdGlmeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFsaWduLWp1c3RpZnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRlZGVudDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tb3V0ZGVudDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW91dGRlbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmRlbnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbmRlbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWRlby1jYW1lcmE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12aWRlby1jYW1lcmE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG90bzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taW1hZ2U6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpY3R1cmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpY3R1cmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbmNpbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBlbmNpbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1tYXJrZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXAtbWFya2VyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRqdXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYWRqdXN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGludDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRpbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lZGl0OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1wZW5jaWwtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wZW5jaWwtc3F1YXJlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGFyZS1zcXVhcmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoYXJlLXNxdWFyZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGVjay1zcXVhcmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXAtYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGVwLWJhY2t3YXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFzdC1iYWNrd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZhc3QtYmFja3dhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWNrd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhY2t3YXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxheTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsYXk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXVzZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhdXNlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0b3A7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9yd2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhc3QtZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZhc3QtZm9yd2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXAtZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0ZXAtZm9yd2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVqZWN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZWplY3Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGV2cm9uLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsdXMtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGx1cy1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taW51cy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1taW51cy1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lcy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aW1lcy1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjay1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGVjay1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdWVzdGlvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xdWVzdGlvbi1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmZvLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWluZm8tY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3Jvc3NoYWlyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNyb3NzaGFpcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lcy1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRpbWVzLWNpcmNsZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGVjay1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1haWwtZm9yd2FyZDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4cGFuZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV4cGFuZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXByZXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tcHJlc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGx1czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWludXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hc3RlcmlzazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFzdGVyaXNrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjbGFtYXRpb24tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXhjbGFtYXRpb24tY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2lmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdpZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZWFmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGVhZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXllOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXllOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXllLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXllLXNsYXNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2FybmluZzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leGNsYW1hdGlvbi10cmlhbmdsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYW5lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGxhbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGVuZGFyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmFuZG9tOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmFuZG9tOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbW1lbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWduZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYWduZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJldHdlZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZXR3ZWV0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hvcHBpbmctY2FydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNob3BwaW5nLWNhcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb2xkZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXItb3BlbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvbGRlci1vcGVuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3dzLXY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvd3MtdjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93cy1oOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3dzLWg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXItY2hhcnQtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYmFyLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmFyLWNoYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHdpdHRlci1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10d2l0dGVyLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZhY2Vib29rLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbWVyYS1yZXRybzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbWVyYS1yZXRybzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtleTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWtleTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlYXJzOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jb2dzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29nczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnRzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tbWVudHM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aHVtYnMtby11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRodW1icy1vLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWJzLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRodW1icy1vLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLWhhbGY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGFyLWhhbGY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFydC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGVhcnQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ24tb3V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2lnbi1vdXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5rZWRpbi1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saW5rZWRpbi1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aHVtYi10YWNrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGh1bWItdGFjazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4dGVybmFsLWxpbms6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leHRlcm5hbC1saW5rOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2lnbi1pbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNpZ24taW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cm9waHk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cm9waHk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXRodWItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2l0aHViLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVwbG9hZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxlbW9uLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sZW1vbi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waG9uZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3F1YXJlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib29rbWFyay1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYm9va21hcmstbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBob25lLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR3aXR0ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10d2l0dGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFjZWJvb2stZjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmFjZWJvb2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mYWNlYm9vazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdGh1YjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdpdGh1YjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVubG9jazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVubG9jazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWRpdC1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3JlZGl0LWNhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mZWVkOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1yc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZGQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhkZC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVsbGhvcm46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idWxsaG9ybjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlbGw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iZWxsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2VydGlmaWNhdGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jZXJ0aWZpY2F0ZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtby1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtby1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtby1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1vLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLW8tdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLW8tdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtby1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbG9iZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdsb2JlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td3JlbmNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd3JlbmNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFza3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YXNrczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbHRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbHRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJyaWVmY2FzZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJyaWVmY2FzZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93cy1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvd3MtYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JvdXA6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFpbjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tbGluazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpbms7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNsb3VkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhc2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbGFzazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1dDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc2Npc3NvcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zY2lzc29yczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvcHk6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGVzLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlcy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFwZXJjbGlwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGFwZXJjbGlwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2F2ZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmxvcHB5LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbG9wcHktbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5hdmljb246YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlb3JkZXI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdC11bDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpc3QtdWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0LW9sOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlzdC1vbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0cmlrZXRocm91Z2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdHJpa2V0aHJvdWdoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5kZXJsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdW5kZXJsaW5lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFibGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YWJsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hZ2ljOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFnaWM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cnVjazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRydWNrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGludGVyZXN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpbnRlcmVzdC1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGUtcGx1cy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nb29nbGUtcGx1cy1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGUtcGx1czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdvb2dsZS1wbHVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9uZXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tb25leTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbHVtbnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb2x1bW5zOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5zb3J0ZWQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1kb3duOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWRlc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LWRlc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LXVwOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFzYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvcnQtYXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbnZlbG9wZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbmtlZGluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlua2VkaW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtbGVmdDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdW5kbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVuZG87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZWdhbDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZ2F2ZWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nYXZlbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRhc2hib2FyZDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGFjaG9tZXRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRhY2hvbWV0ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb21tZW50LW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50cy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tbWVudHMtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYXNoOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1ib2x0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYm9sdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpdGVtYXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaXRlbWFwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW1icmVsbGE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11bWJyZWxsYTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhc3RlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jbGlwYm9hcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jbGlwYm9hcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saWdodGJ1bGItbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpZ2h0YnVsYi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjaGFuZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leGNoYW5nZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkLWRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xvdWQtZG93bmxvYWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC11cGxvYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jbG91ZC11cGxvYWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLW1kOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlci1tZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXRob3Njb3BlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RldGhvc2NvcGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWl0Y2FzZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN1aXRjYXNlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVsbC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVsbC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29mZmVlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29mZmVlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3V0bGVyeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWN1dGxlcnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXRleHQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtdGV4dC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVpbGRpbmctbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ1aWxkaW5nLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3NwaXRhbC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG9zcGl0YWwtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFtYnVsYW5jZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFtYnVsYW5jZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZGtpdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1lZGtpdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpZ2h0ZXItamV0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlnaHRlci1qZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWgtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaC1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsdXMtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG91YmxlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS1kb3VibGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWRvdWJsZS1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWRvdWJsZS11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtZG91YmxlLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZXNrdG9wOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGVza3RvcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhcHRvcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxhcHRvcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhYmxldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRhYmxldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vYmlsZS1waG9uZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tbW9iaWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbW9iaWxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1b3RlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xdW90ZS1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVvdGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xdW90ZS1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwaW5uZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zcGlubmVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFpbC1yZXBseTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmVwbHk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZXBseTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdGh1Yi1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1naXRodWItYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb2xkZXItbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbGRlci1vcGVuLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb2xkZXItb3Blbi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21pbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNtaWxlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mcm93bi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZnJvd24tbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1laC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWVoLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nYW1lcGFkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2FtZXBhZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtleWJvYXJkLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1rZXlib2FyZC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhZy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxhZy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhZy1jaGVja2VyZWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbGFnLWNoZWNrZXJlZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlcm1pbmFsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGVybWluYWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2RlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29kZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1haWwtcmVwbHktYWxsOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1yZXBseS1hbGw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZXBseS1hbGw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLWhhbGYtZW1wdHk6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXItaGFsZi1mdWxsOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLWhhbGYtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0YXItaGFsZi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9jYXRpb24tYXJyb3c6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sb2NhdGlvbi1hcnJvdzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyb3A6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jcm9wOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29kZS1mb3JrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29kZS1mb3JrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5saW5rOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFpbi1icm9rZW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGFpbi1icm9rZW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdWVzdGlvbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXF1ZXN0aW9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5mbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWluZm87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leGNsYW1hdGlvbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV4Y2xhbWF0aW9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3VwZXJzY3JpcHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdXBlcnNjcmlwdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1YnNjcmlwdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN1YnNjcmlwdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVyYXNlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVyYXNlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXB1enpsZS1waWVjZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXB1enpsZS1waWVjZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvcGhvbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1taWNyb3Bob25lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWljcm9waG9uZS1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1pY3JvcGhvbmUtc2xhc2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGllbGQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGllbGQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FsZW5kYXItbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmUtZXh0aW5ndWlzaGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlyZS1leHRpbmd1aXNoZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb2NrZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yb2NrZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXhjZG46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXhjZG47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi1jaXJjbGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tY2lyY2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi1jaXJjbGUtcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tY2lyY2xlLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1jaXJjbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tY2lyY2xlLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1odG1sNTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWh0bWw1OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3NzMzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNzczM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmNob3I6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmNob3I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmxvY2stYWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdW5sb2NrLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1bGxzZXllOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnVsbHNleWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbGxpcHNpcy1oOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZWxsaXBzaXMtaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVsbGlwc2lzLXY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbGxpcHNpcy12OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnNzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJzcy1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGF5LWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsYXktY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGlja2V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGlja2V0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWludXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWludXMtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWludXMtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1taW51cy1zcXVhcmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxldmVsLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGV2ZWwtdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXZlbC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGV2ZWwtZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZWNrLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbmNpbC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wZW5jaWwtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXh0ZXJuYWwtbGluay1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leHRlcm5hbC1saW5rLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoYXJlLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXBhc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb21wYXNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLWRvd246YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXNxdWFyZS1vLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1zcXVhcmUtby1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLXVwOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtby11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LXNxdWFyZS1vLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLXJpZ2h0OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtby1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LXNxdWFyZS1vLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXVybzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZXVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2JwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2JwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9sbGFyOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS11c2Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydXBlZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taW5yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5yOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY255OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1ybWI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXllbjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tanB5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItanB5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnVibGU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdWJsZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcnViOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcnViOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td29uOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1rcnc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1rcnc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXRjb2luOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1idGM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idGM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtdGV4dDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtdGV4dDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYWxwaGEtYXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1hbHBoYS1hc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFscGhhLWRlc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LWFscGhhLWRlc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFtb3VudC1hc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LWFtb3VudC1hc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFtb3VudC1kZXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1hbW91bnQtZGVzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtbnVtZXJpYy1hc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LW51bWVyaWMtYXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1udW1lcmljLWRlc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LW51bWVyaWMtZGVzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1icy11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRodW1icy11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1icy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGh1bWJzLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15b3V0dWJlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXlvdXR1YmUtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teW91dHViZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXlvdXR1YmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS14aW5nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteGluZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXhpbmctc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteGluZy1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15b3V0dWJlLXBsYXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15b3V0dWJlLXBsYXk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcm9wYm94OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZHJvcGJveDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLW92ZXJmbG93OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RhY2stb3ZlcmZsb3c7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnN0YWdyYW06YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbnN0YWdyYW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGlja3I6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbGlja3I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hZG46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hZG47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXRidWNrZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iaXRidWNrZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXRidWNrZXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYml0YnVja2V0LXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR1bWJscjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXR1bWJscjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR1bWJsci1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10dW1ibHItc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbG9uZy1hcnJvdy1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvbmctYXJyb3ctdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb25nLWFycm93LWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sb25nLWFycm93LWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb25nLWFycm93LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbG9uZy1hcnJvdy1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFwcGxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXBwbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3dzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2luZG93czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZHJvaWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmRyb2lkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGludXg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saW51eDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyaWJiYmxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZHJpYmJibGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za3lwZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNreXBlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm91cnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvdXJzcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmVsbG86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmVsbG87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mZW1hbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mZW1hbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdHRpcDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZ3JhdGlwYXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ncmF0aXBheTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1bi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3VuLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb29uLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tb29uLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcmNoaXZlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJjaGl2ZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1ZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ1ZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdms7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13ZWlibzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdlaWJvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVucmVuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVucmVuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFnZWxpbmVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGFnZWxpbmVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stZXhjaGFuZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGFjay1leGNoYW5nZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1vLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLW8tcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtby1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLW8tbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1sZWZ0OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtby1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtc3F1YXJlLW8tbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvdC1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRvdC1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdoZWVsY2hhaXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aGVlbGNoYWlyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmltZW8tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmltZW8tc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHVya2lzaC1saXJhOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10cnk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVzLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGx1cy1zcXVhcmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwYWNlLXNodXR0bGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zcGFjZS1zaHV0dGxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xhY2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zbGFjazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmVsb3BlLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdvcmRwcmVzczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdvcmRwcmVzczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9wZW5pZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9wZW5pZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluc3RpdHV0aW9uOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYW5rOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS11bml2ZXJzaXR5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdW5pdmVyc2l0eTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vcnRhci1ib2FyZDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZ3JhZHVhdGlvbi1jYXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ncmFkdWF0aW9uLWNhcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlhaG9vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteWFob287IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nb29nbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWRkaXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZWRkaXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWRkaXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVkZGl0LXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0dW1ibGV1cG9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0dW1ibGV1cG9uLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0dW1ibGV1cG9uOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3R1bWJsZXVwb247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZWxpY2lvdXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kZWxpY2lvdXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWdnOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGlnZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpZWQtcGlwZXItcHA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waWVkLXBpcGVyLXBwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGllZC1waXBlci1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waWVkLXBpcGVyLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRydXBhbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRydXBhbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWpvb21sYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWpvb21sYTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhbmd1YWdlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGFuZ3VhZ2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYXg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mYXg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idWlsZGluZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ1aWxkaW5nOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hpbGQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGlsZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhdzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhdzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwb29uOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3Bvb247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jdWJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3ViZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1YmVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3ViZXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWhhbmNlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVoYW5jZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlaGFuY2Utc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVoYW5jZS1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGVhbTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0ZWFtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RlYW0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RlYW0tc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVjeWNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlY3ljbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdXRvbW9iaWxlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jYXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRheGk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YXhpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJlZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyZWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcG90aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3BvdGlmeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRldmlhbnRhcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kZXZpYW50YXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc291bmRjbG91ZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvdW5kY2xvdWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kYXRhYmFzZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRhdGFiYXNlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1wZGYtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtcGRmLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXdvcmQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtd29yZC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1leGNlbC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS1leGNlbC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1wb3dlcnBvaW50LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLXBvd2VycG9pbnQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtcGhvdG8tbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1waWN0dXJlLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtaW1hZ2UtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtaW1hZ2UtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtemlwLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtYXJjaGl2ZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS1hcmNoaXZlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXNvdW5kLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtYXVkaW8tbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtYXVkaW8tbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtbW92aWUtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS12aWRlby1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS12aWRlby1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1jb2RlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLWNvZGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12aW5lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29kZXBlbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZGVwZW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qc2ZpZGRsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWpzZmlkZGxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlmZS1ib3V5OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1saWZlLWJ1b3k6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpZmUtc2F2ZXI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1cHBvcnQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpZmUtcmluZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpZmUtcmluZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpcmNsZS1vLW5vdGNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2lyY2xlLW8tbm90Y2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmVzaXN0YW5jZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmViZWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZWJlbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1lbXBpcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbXBpcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2l0LXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdpdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXktY29tYmluYXRvci1zcXVhcmU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXljLXNxdWFyZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taGFja2VyLW5ld3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYWNrZXItbmV3czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbmNlbnQtd2VpYm86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZW5jZW50LXdlaWJvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xcTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdlY2hhdDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0td2VpeGluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2VpeGluOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VuZDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcGFwZXItcGxhbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXBlci1wbGFuZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlbmQtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcGFwZXItcGxhbmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhcGVyLXBsYW5lLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oaXN0b3J5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGlzdG9yeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpcmNsZS10aGluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2lyY2xlLXRoaW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oZWFkZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXJhZ3JhcGg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXJhZ3JhcGg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbGlkZXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2xpZGVyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoYXJlLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLWFsdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGFyZS1hbHQtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9tYjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJvbWI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb2NjZXItYmFsbC1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1mdXRib2wtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZ1dGJvbC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHR5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHR5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmlub2N1bGFyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJpbm9jdWxhcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVnOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGx1ZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNsaWRlc2hhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zbGlkZXNoYXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHdpdGNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHdpdGNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWVscDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXllbHA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1uZXdzcGFwZXItbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW5ld3NwYXBlci1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2lmaTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdpZmk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxjdWxhdG9yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FsY3VsYXRvcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBheXBhbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBheXBhbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS13YWxsZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nb29nbGUtd2FsbGV0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtdmlzYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjLXZpc2E7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1tYXN0ZXJjYXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtbWFzdGVyY2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLWRpc2NvdmVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtZGlzY292ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1hbWV4OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtYW1leDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLXBheXBhbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjLXBheXBhbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLXN0cmlwZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjLXN0cmlwZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlbGwtc2xhc2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iZWxsLXNsYXNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVsbC1zbGFzaC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVsbC1zbGFzaC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhc2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFzaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvcHlyaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvcHlyaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leWVkcm9wcGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXllZHJvcHBlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhaW50LWJydXNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGFpbnQtYnJ1c2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXJ0aGRheS1jYWtlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmlydGhkYXktY2FrZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFyZWEtY2hhcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcmVhLWNoYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGllLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGllLWNoYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGluZS1jaGFydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpbmUtY2hhcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXN0Zm06YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sYXN0Zm07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXN0Zm0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGFzdGZtLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1vZmY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10b2dnbGUtb2ZmOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLW9uOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdG9nZ2xlLW9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmljeWNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJpY3ljbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pb3hob3N0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW94aG9zdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2VsbGlzdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2VsbGlzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGVrZWw6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoZXFlbDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taWxzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaWxzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVhbnBhdGg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tZWFucGF0aDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1eXNlbGxhZHM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idXlzZWxsYWRzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29ubmVjdGRldmVsb3A6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb25uZWN0ZGV2ZWxvcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRhc2hjdWJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGFzaGN1YmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J1bWJlZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvcnVtYmVlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGVhbnB1YjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxlYW5wdWI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWxsc3k6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zZWxsc3k7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGlydHNpbmJ1bGs6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGlydHNpbmJ1bGs7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaW1wbHlidWlsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNpbXBseWJ1aWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2t5YXRsYXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1za3lhdGxhczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcnQtcGx1czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcnQtcGx1czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcnQtYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcnQtYXJyb3ctZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpYW1vbmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kaWFtb25kOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hpcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoaXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXNlY3JldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXItc2VjcmV0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW90b3JjeWNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1vdG9yY3ljbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJlZXQtdmlldzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0cmVldC12aWV3OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhcnRiZWF0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGVhcnRiZWF0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmVudXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12ZW51czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVyY3VyeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1lcmN1cnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnRlcnNleDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdHJhbnNnZW5kZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFuc2dlbmRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYW5zZ2VuZGVyLWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyYW5zZ2VuZGVyLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlbnVzLWRvdWJsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZlbnVzLWRvdWJsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFycy1kb3VibGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12ZW51cy1tYXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmVudXMtbWFyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtc3Ryb2tlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFycy1zdHJva2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzLXN0cm9rZS12OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFycy1zdHJva2UtdjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtc3Ryb2tlLWg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXJzLXN0cm9rZS1oOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmV1dGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbmV1dGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2VuZGVybGVzczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdlbmRlcmxlc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYWNlYm9vay1vZmZpY2lhbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZhY2Vib29rLW9mZmljaWFsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0LXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waW50ZXJlc3QtcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdoYXRzYXBwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2hhdHNhcHA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZXJ2ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zZXJ2ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXBsdXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2VyLXBsdXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXRpbWVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlci10aW1lczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdGVsOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iZWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iZWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFjb2luOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmlhY29pbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYWluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJhaW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWJ3YXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdWJ3YXk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWRpdW06YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tZWRpdW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15YzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0teS1jb21iaW5hdG9yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteS1jb21iaW5hdG9yOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3B0aW4tbW9uc3RlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9wdGluLW1vbnN0ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vcGVuY2FydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9wZW5jYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhwZWRpdGVkc3NsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXhwZWRpdGVkc3NsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS00OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LWZ1bGw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXR0ZXJ5LWZ1bGw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LTM6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktdGhyZWUtcXVhcnRlcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS0yOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXR0ZXJ5LWhhbGY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LTE6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktcXVhcnRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhdHRlcnktcXVhcnRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktMDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1lbXB0eTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhdHRlcnktZW1wdHk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb3VzZS1wb2ludGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbW91c2UtcG9pbnRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWktY3Vyc29yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaS1jdXJzb3I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vYmplY3QtZ3JvdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1vYmplY3QtZ3JvdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vYmplY3QtdW5ncm91cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9iamVjdC11bmdyb3VwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RpY2t5LW5vdGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGlja3ktbm90ZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0aWNreS1ub3RlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGlja3ktbm90ZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtamNiOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtamNiOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtZGluZXJzLWNsdWI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYy1kaW5lcnMtY2x1YjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb25lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xvbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWxhbmNlLXNjYWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmFsYW5jZS1zY2FsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91cmdsYXNzLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3MtMTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLXN0YXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91cmdsYXNzLXN0YXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLTI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91cmdsYXNzLWhhbGY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3MtMzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLWVuZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhvdXJnbGFzcy1lbmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ob3VyZ2xhc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWdyYWItbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1yb2NrLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLXJvY2stbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtc3RvcC1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBhcGVyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLXBhcGVyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXNjaXNzb3JzLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLXNjaXNzb3JzLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWxpemFyZC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1saXphcmQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtc3BvY2stbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtc3BvY2stbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcG9pbnRlci1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1wb2ludGVyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBlYWNlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLXBlYWNlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFkZW1hcms6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFkZW1hcms7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWdpc3RlcmVkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVnaXN0ZXJlZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2c6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdnLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdnLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyaXBhZHZpc29yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJpcGFkdmlzb3I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vZG5va2xhc3NuaWtpOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb2Rub2tsYXNzbmlraTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9kbm9rbGFzc25pa2ktc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb2Rub2tsYXNzbmlraS1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZXQtcG9ja2V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2V0LXBvY2tldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpa2lwZWRpYS13OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2lraXBlZGlhLXc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYWZhcmk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zYWZhcmk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaHJvbWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaHJvbWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlZm94OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlyZWZveDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9wZXJhOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb3BlcmE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnRlcm5ldC1leHBsb3JlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWludGVybmV0LWV4cGxvcmVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHY6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbGV2aXNpb246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZWxldmlzaW9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29udGFvOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29udGFvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tNTAwcHg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci01MDBweDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFtYXpvbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFtYXpvbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLXBsdXMtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGVuZGFyLXBsdXMtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLW1pbnVzLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYWxlbmRhci1taW51cy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItdGltZXMtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGVuZGFyLXRpbWVzLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1jaGVjay1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FsZW5kYXItY2hlY2stbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluZHVzdHJ5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5kdXN0cnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXAtcGluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFwLXBpbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1zaWduczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hcC1zaWduczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFwLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50aW5nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tbWVudGluZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnRpbmctbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbW1lbnRpbmctbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXp6OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91eno7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aW1lbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZpbWVvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxhY2stdGllOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmxhY2stdGllOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udGljb25zOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9udGljb25zOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVkZGl0LWFsaWVuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVkZGl0LWFsaWVuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWRnZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVkZ2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVkaXQtY2FyZC1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jcmVkaXQtY2FyZC1hbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2RpZXBpZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZGllcGllOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9keDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1vZHg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J0LWF3ZXNvbWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb3J0LWF3ZXNvbWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2I6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcm9kdWN0LWh1bnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wcm9kdWN0LWh1bnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taXhjbG91ZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1peGNsb3VkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2NyaWJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2NyaWJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF1c2UtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGF1c2UtY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF1c2UtY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXVzZS1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0b3AtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RvcC1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9wLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RvcC1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWJhZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNob3BwaW5nLWJhZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWJhc2tldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNob3BwaW5nLWJhc2tldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhc2h0YWc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYXNodGFnOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmx1ZXRvb3RoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmx1ZXRvb3RoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmx1ZXRvb3RoLWI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ibHVldG9vdGgtYjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlcmNlbnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wZXJjZW50OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0bGFiOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2l0bGFiOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td3BiZWdpbm5lcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdwYmVnaW5uZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cGZvcm1zOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd3Bmb3JtczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmlyYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmlyYTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuaXZlcnNhbC1hY2Nlc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11bml2ZXJzYWwtYWNjZXNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2hlZWxjaGFpci1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aGVlbGNoYWlyLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1ZXN0aW9uLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXVlc3Rpb24tY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibGluZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJsaW5kOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXVkaW8tZGVzY3JpcHRpb246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hdWRpby1kZXNjcmlwdGlvbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZvbHVtZS1jb250cm9sLXBob25lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdm9sdW1lLWNvbnRyb2wtcGhvbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icmFpbGxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnJhaWxsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFzbC1pbnRlcnByZXRpbmc6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW1lcmljYW4tc2lnbi1sYW5ndWFnZS1pbnRlcnByZXRpbmc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZWFmbmVzczpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taGFyZC1vZi1oZWFyaW5nOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1kZWFmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGVhZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsaWRlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2xpZGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbGlkZS1nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2xpZGUtZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ25pbmc6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ24tbGFuZ3VhZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaWduLWxhbmd1YWdlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG93LXZpc2lvbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvdy12aXNpb247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFkZW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12aWFkZW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFkZW8tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmlhZGVvLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNuYXBjaGF0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc25hcGNoYXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbmFwY2hhdC1naG9zdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNuYXBjaGF0LWdob3N0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc25hcGNoYXQtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGllZC1waXBlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpZWQtcGlwZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJzdC1vcmRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpcnN0LW9yZGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teW9hc3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15b2FzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZW1laXNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoZW1laXNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wbHVzLWNpcmNsZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsdXMtb2ZmaWNpYWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nb29nbGUtcGx1cy1vZmZpY2lhbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1mb250LWF3ZXNvbWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb250LWF3ZXNvbWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kc2hha2UtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmRzaGFrZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtb3BlbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmVsb3BlLW9wZW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbnZlbG9wZS1vcGVuLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbnZlbG9wZS1vcGVuLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5vZGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saW5vZGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hZGRyZXNzLWJvb2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hZGRyZXNzLWJvb2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hZGRyZXNzLWJvb2stbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFkZHJlc3MtYm9vay1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmNhcmQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkZHJlc3MtY2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFkZHJlc3MtY2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZjYXJkLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkZHJlc3MtY2FyZC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYWRkcmVzcy1jYXJkLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXItY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXItY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2VyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1iYWRnZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWlkLWJhZGdlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJpdmVycy1saWNlbnNlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaWQtY2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyaXZlcnMtbGljZW5zZS1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1jYXJkLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pZC1jYXJkLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdW9yYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXF1b3JhOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnJlZS1jb2RlLWNhbXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mcmVlLWNvZGUtY2FtcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbGVncmFtOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGVsZWdyYW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci00OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlcjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItZnVsbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoZXJtb21ldGVyLWZ1bGw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci0zOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci10aHJlZS1xdWFydGVyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItMjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItaGFsZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoZXJtb21ldGVyLWhhbGY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci0xOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci1xdWFydGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGhlcm1vbWV0ZXItcXVhcnRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLTA6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLWVtcHR5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGhlcm1vbWV0ZXItZW1wdHk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG93ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaG93ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXRodHViOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zMTU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdGg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXRoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG9kY2FzdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBvZGNhc3Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctbWF4aW1pemU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aW5kb3ctbWF4aW1pemU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctbWluaW1pemU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aW5kb3ctbWluaW1pemU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctcmVzdG9yZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdpbmRvdy1yZXN0b3JlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGltZXMtcmVjdGFuZ2xlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctY2xvc2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aW5kb3ctY2xvc2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lcy1yZWN0YW5nbGUtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LWNsb3NlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aW5kb3ctY2xvc2UtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbmRjYW1wOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmFuZGNhbXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmF2OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ3JhdjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV0c3k6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ldHN5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW1kYjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWltZGI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYXZlbHJ5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmF2ZWxyeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVlcmNhc3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lZXJjYXN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWljcm9jaGlwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWljcm9jaGlwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25vd2ZsYWtlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zbm93Zmxha2UtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1cGVycG93ZXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3VwZXJwb3dlcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cGV4cGxvcmVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd3BleHBsb3JlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZXR1cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1lZXR1cDsgfVxuIiwiLy8gU2NyZWVuIFJlYWRlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnNyLW9ubHkgeyBAaW5jbHVkZSBzci1vbmx5KCk7IH1cbi5zci1vbmx5LWZvY3VzYWJsZSB7IEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7IH1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIVxuICogSGFtYnVyZ2Vyc1xuICogQGRlc2NyaXB0aW9uIFRhc3R5IENTUy1hbmltYXRlZCBoYW1idXJnZXJzXG4gKiBAYXV0aG9yIEpvbmF0aGFuIFN1aCBAam9uc3VoXG4gKiBAc2l0ZSBodHRwczovL2pvbnN1aC5jb20vaGFtYnVyZ2Vyc1xuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2pvbnN1aC9oYW1idXJnZXJzXG4gKi9cblxuLy8gU2V0dGluZ3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kaGFtYnVyZ2VyLXBhZGRpbmcteCAgICAgICAgICAgOiAxNXB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1wYWRkaW5nLXkgICAgICAgICAgIDogMTVweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItd2lkdGggICAgICAgICA6IDQwcHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAgICAgICAgOiA0cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgICAgICAgOiA2cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWNvbG9yICAgICAgICAgOiAjMDAwICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzIDogNHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5ICAgICAgIDogMC43ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1hY3RpdmUtbGF5ZXItY29sb3IgIDogJGhhbWJ1cmdlci1sYXllci1jb2xvciAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWhvdmVyLW9wYWNpdHk6ICRoYW1idXJnZXItaG92ZXItb3BhY2l0eSAhZGVmYXVsdDtcblxuLy8gVG8gdXNlIENTUyBmaWx0ZXJzIGFzIHRoZSBob3ZlciBlZmZlY3QgaW5zdGVhZCBvZiBvcGFjaXR5LFxuLy8gc2V0ICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciBhcyB0cnVlIGFuZFxuLy8gY2hhbmdlIHRoZSB2YWx1ZSBvZiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciBhY2NvcmRpbmdseS5cbiRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciAgIDogZmFsc2UgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciAgICAgICA6IG9wYWNpdHkoNTAlKSAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWhvdmVyLWZpbHRlcjogJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgIWRlZmF1bHQ7XG5cbi8vIFR5cGVzIChSZW1vdmUgb3IgY29tbWVudCBvdXQgd2hhdCB5b3UgZG9u4oCZdCBuZWVkKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRoYW1idXJnZXItdHlwZXM6IChcbiAgM2R4LFxuICAzZHgtcixcbiAgM2R5LFxuICAzZHktcixcbiAgM2R4eSxcbiAgM2R4eS1yLFxuICBhcnJvdyxcbiAgYXJyb3ctcixcbiAgYXJyb3dhbHQsXG4gIGFycm93YWx0LXIsXG4gIGFycm93dHVybixcbiAgYXJyb3d0dXJuLXIsXG4gIGJvcmluZyxcbiAgY29sbGFwc2UsXG4gIGNvbGxhcHNlLXIsXG4gIGVsYXN0aWMsXG4gIGVsYXN0aWMtcixcbiAgZW1waGF0aWMsXG4gIGVtcGhhdGljLXIsXG4gIG1pbnVzLFxuICBzbGlkZXIsXG4gIHNsaWRlci1yLFxuICBzcGluLFxuICBzcGluLXIsXG4gIHNwcmluZyxcbiAgc3ByaW5nLXIsXG4gIHN0YW5kLFxuICBzdGFuZC1yLFxuICBzcXVlZXplLFxuICB2b3J0ZXgsXG4gIHZvcnRleC1yXG4pICFkZWZhdWx0O1xuXG4vLyBCYXNlIEhhbWJ1cmdlciAoV2UgbmVlZCB0aGlzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgXCJiYXNlXCI7XG5cbi8vIEhhbWJ1cmdlciB0eXBlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgXCJ0eXBlcy8zZHhcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHgtclwiO1xuQGltcG9ydCBcInR5cGVzLzNkeVwiO1xuQGltcG9ydCBcInR5cGVzLzNkeS1yXCI7XG5AaW1wb3J0IFwidHlwZXMvM2R4eVwiO1xuQGltcG9ydCBcInR5cGVzLzNkeHktclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93XCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3ctclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93YWx0XCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3dhbHQtclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93dHVyblwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93dHVybi1yXCI7XG5AaW1wb3J0IFwidHlwZXMvYm9yaW5nXCI7XG5AaW1wb3J0IFwidHlwZXMvY29sbGFwc2VcIjtcbkBpbXBvcnQgXCJ0eXBlcy9jb2xsYXBzZS1yXCI7XG5AaW1wb3J0IFwidHlwZXMvZWxhc3RpY1wiO1xuQGltcG9ydCBcInR5cGVzL2VsYXN0aWMtclwiO1xuQGltcG9ydCBcInR5cGVzL2VtcGhhdGljXCI7XG5AaW1wb3J0IFwidHlwZXMvZW1waGF0aWMtclwiO1xuQGltcG9ydCBcInR5cGVzL21pbnVzXCI7XG5AaW1wb3J0IFwidHlwZXMvc2xpZGVyXCI7XG5AaW1wb3J0IFwidHlwZXMvc2xpZGVyLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcGluXCI7XG5AaW1wb3J0IFwidHlwZXMvc3Bpbi1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3ByaW5nXCI7XG5AaW1wb3J0IFwidHlwZXMvc3ByaW5nLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zdGFuZFwiO1xuQGltcG9ydCBcInR5cGVzL3N0YW5kLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcXVlZXplXCI7XG5AaW1wb3J0IFwidHlwZXMvdm9ydGV4XCI7XG5AaW1wb3J0IFwidHlwZXMvdm9ydGV4LXJcIjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvb2tpbmcgdXAgYWRkaXRpb25hbCB0eXBlczpcbi8vXG4vLyBUaGUgU2FzcyBmb3IgZWFjaCBoYW1idXJnZXIgdHlwZSBzaG91bGQgYmUgbmVzdGVkXG4vLyBpbnNpZGUgYW4gQGlmIGRpcmVjdGl2ZSB0byBjaGVjayB3aGV0aGVyIG9yIG5vdFxuLy8gaXQgZXhpc3RzIGluICRoYW1idXJnZXItdHlwZXMgc28gb25seSB0aGUgQ1NTIGZvclxuLy8gaW5jbHVkZWQgdHlwZXMgYXJlIGdlbmVyYXRlZC5cbi8vXG4vLyBlLmcuIGhhbWJ1cmdlcnMvdHlwZXMvX25ldy10eXBlLnNjc3Ncbi8vXG4vLyBAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgbmV3LXR5cGUpIHtcbi8vICAgLmhhbWJ1cmdlci0tbmV3LXR5cGUge1xuLy8gICAgIC4uLlxuLy8gICB9XG4vLyB9XG4iLCIvLyBIYW1idXJnZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4uaGFtYnVyZ2VyIHtcbiAgcGFkZGluZzogJGhhbWJ1cmdlci1wYWRkaW5nLXkgJGhhbWJ1cmdlci1wYWRkaW5nLXg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIGZpbHRlcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cbiAgLy8gTm9ybWFsaXplICg8YnV0dG9uPilcbiAgZm9udDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICY6aG92ZXIge1xuICAgIEBpZiAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgPT0gdHJ1ZSB7XG4gICAgICBmaWx0ZXI6ICRoYW1idXJnZXItaG92ZXItZmlsdGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBvcGFjaXR5OiAkaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgICY6aG92ZXIge1xuICAgICAgQGlmICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciA9PSB0cnVlIHtcbiAgICAgICAgZmlsdGVyOiAkaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1maWx0ZXI7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIG9wYWNpdHk6ICRoYW1idXJnZXItYWN0aXZlLWhvdmVyLW9wYWNpdHk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lcixcbiAgICAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsXG4gICAgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhhbWJ1cmdlci1hY3RpdmUtbGF5ZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5oYW1idXJnZXItYm94IHtcbiAgd2lkdGg6ICRoYW1idXJnZXItbGF5ZXItd2lkdGg7XG4gIGhlaWdodDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAzICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYW1idXJnZXItaW5uZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0IC8gLTI7XG5cbiAgJixcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgd2lkdGg6ICRoYW1idXJnZXItbGF5ZXItd2lkdGg7XG4gICAgaGVpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFtYnVyZ2VyLWxheWVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6ICRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICB9XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTE7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgYm90dG9tOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTE7XG4gIH1cbn1cbiIsIiRoYW1idXJnZXItcGFkZGluZy14ICAgICAgICAgICAgICAgICAgICAgICA6IDEwcHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLXBhZGRpbmcteSAgICAgICAgICAgICAgICAgICAgICAgOiAxMHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci13aWR0aCAgICAgICAgICAgICAgICAgICAgIDogMjJweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICAgICAgICAgICAgICAgICAgICA6IDJweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAgICAgICAgICAgICAgICAgICA6IDVweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItY29sb3IgICAgICAgICAgICAgICAgICAgICA6ICNmZmYgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWJvcmRlci1yYWRpdXMgICAgICAgICAgICAgOiA0cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHkgICAgICAgICAgICAgICAgICAgOiAwLjcgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWhvdmVyLXRyYW5zaXRpb24tZHVyYXRpb24gICAgICAgOiAwLjE1cyAhZGVmYXVsdDtcbiRoYW1idXJnZXItaG92ZXItdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhZGVmYXVsdDtcblxuLy8gVG8gdXNlIENTUyBmaWx0ZXJzIGFzIHRoZSBob3ZlciBlZmZlY3QgaW5zdGVhZCBvZiBvcGFjaXR5LFxuLy8gc2V0ICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciBhcyB0cnVlIGFuZFxuLy8gY2hhbmdlIHRoZSB2YWx1ZSBvZiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciBhY2NvcmRpbmdseS5cbiRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciAgIDogZmFsc2UgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciAgICAgICA6IG9wYWNpdHkoNTAlKSAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWhvdmVyLWZpbHRlcjogJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgIWRlZmF1bHQ7XG5cbi8vIFR5cGVzIChSZW1vdmUgb3IgY29tbWVudCBvdXQgd2hhdCB5b3UgZG9u4oCZdCBuZWVkKVxuJGhhbWJ1cmdlci10eXBlczogKFxuLy8gM2R4LFxuLy8gM2R4LXIsXG4vLyAzZHksXG4vLyAzZHktcixcbi8vIDNkeHksXG4vLyAzZHh5LXIsXG4vLyBhcnJvdyxcbi8vIGFycm93LXIsXG4vLyBhcnJvd2FsdCxcbi8vIGFycm93YWx0LXIsXG4vLyBhcnJvd3R1cm4sXG4vLyBhcnJvd3R1cm4tcixcbi8vIGJvcmluZyxcbi8vIGNvbGxhcHNlLFxuLy8gY29sbGFwc2Utcixcbi8vIGVsYXN0aWMsXG4vLyBlbGFzdGljLXIsXG4vLyBlbXBoYXRpYyxcbi8vIGVtcGhhdGljLXIsXG4vLyBtaW51cyxcbi8vIHNsaWRlcixcbi8vIHNsaWRlci1yLFxuLy8gc3ByaW5nLFxuLy8gc3ByaW5nLXIsXG5zdGFuZCxcbnN0YW5kLXIsXG4vLyBzcGluLFxuLy8gc3Bpbi1yLFxuLy8gc3F1ZWV6ZSxcbi8vIHZvcnRleCxcbi8vIHZvcnRleC1yXG4pICFkZWZhdWx0O1xuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHN0YW5kKSB7XG4gIC8qXG4gICAqIFN0YW5kXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zdGFuZCB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjA3NXMgbGluZWFyO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMDc1cyBlYXNlLWluLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTVzIGxpbmVhcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzdGFuZC1yKSB7XG4gIC8qXG4gICAqIFN0YW5kIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXN0YW5kLXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4wNzVzIGxpbmVhcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjA3NXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMDc1cyBlYXNlLWluLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xNXMgbGluZWFyO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBDb3JlXG4gKi9cbi5vd2wtY2Fyb3VzZWwge1xuXHRkaXNwbGF5OiBub25lO1xuXHR3aWR0aDogMTAwJTtcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcblx0LyogcG9zaXRpb24gcmVsYXRpdmUgYW5kIHotaW5kZXggZml4IHdlYmtpdCByZW5kZXJpbmcgZm9udHMgaXNzdWUgKi9cblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAxO1xuXG5cdC5vd2wtc3RhZ2Uge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQtbXMtdG91Y2gtYWN0aW9uOiBwYW4tWTtcblx0XHR0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcblx0XHQtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgLyogZml4IGZpcmVmb3ggYW5pbWF0aW9uIGdsaXRjaCAqL1xuXHR9XG5cblx0Lm93bC1zdGFnZTphZnRlciB7XG5cdFx0Y29udGVudDogXCIuXCI7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdGxpbmUtaGVpZ2h0OiAwO1xuXHRcdGhlaWdodDogMDtcblx0fVxuXG5cdC5vd2wtc3RhZ2Utb3V0ZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdC8qIGZpeCBmb3IgZmxhc2hpbmcgYmFja2dyb3VuZCAqL1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcblx0fVxuXG5cdC5vd2wtd3JhcHBlcixcblx0Lm93bC1pdGVte1xuXHRcdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0XHQtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuXHRcdC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0fVxuXG5cdC5vd2wtaXRlbSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG1pbi1oZWlnaHQ6IDFweDtcblx0XHRmbG9hdDogbGVmdDtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcblx0fVxuXHQub3dsLWl0ZW0gaW1nIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdC5vd2wtbmF2LmRpc2FibGVkLFxuXHQub3dsLWRvdHMuZGlzYWJsZWQge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQub3dsLW5hdiAub3dsLXByZXYsXG5cdC5vd2wtbmF2IC5vd2wtbmV4dCxcblx0Lm93bC1kb3Qge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuXHRcdC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xuXHRcdC1tcy11c2VyLXNlbGVjdDogbm9uZTtcblx0XHR1c2VyLXNlbGVjdDogbm9uZTtcblx0fVxuXG5cdC5vd2wtbmF2IGJ1dHRvbi5vd2wtcHJldixcblx0Lm93bC1uYXYgYnV0dG9uLm93bC1uZXh0LFxuXHRidXR0b24ub3dsLWRvdCB7XG5cdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0cGFkZGluZzowIWltcG9ydGFudDtcblx0XHRmb250OiBpbmhlcml0O1xuXHR9XG5cblx0Ji5vd2wtbG9hZGVkIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXG5cdCYub3dsLWxvYWRpbmcge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQmLm93bC1oaWRkZW4ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblxuXHQmLm93bC1yZWZyZXNoIC5vd2wtaXRlbSB7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHR9XG5cblx0Ji5vd2wtZHJhZyAub3dsLWl0ZW0ge1xuXHRcdHRvdWNoLWFjdGlvbjogcGFuLXk7XG5cdFx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xuXHRcdC1tcy11c2VyLXNlbGVjdDogbm9uZTtcblx0XHR1c2VyLXNlbGVjdDogbm9uZTtcblx0fVxuXG5cdCYub3dsLWdyYWIge1xuXHRcdGN1cnNvcjogbW92ZTtcblx0XHRjdXJzb3I6IGdyYWI7XG5cdH1cblxuXHQmLm93bC1ydGwge1xuXHRcdGRpcmVjdGlvbjogcnRsO1xuXHR9XG5cblx0Ji5vd2wtcnRsIC5vd2wtaXRlbSB7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHR9XG59XG5cbi8qIE5vIEpzICovXG4ubm8tanMgLm93bC1jYXJvdXNlbCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBBbmltYXRlIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2Vse1xuXHQuYW5pbWF0ZWQge1xuXHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xuXHRcdGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG5cdH1cblx0Lm93bC1hbmltYXRlZC1pbiB7XG5cdFx0ei1pbmRleDogMDtcblx0fVxuXHQub3dsLWFuaW1hdGVkLW91dCB7XG5cdFx0ei1pbmRleDogMTtcblx0fVxuXHQuZmFkZU91dCB7XG5cdFx0YW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG5cdH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHtcblx0MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblxuXHQxMDAlIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG4iLCIvKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBBdXRvIEhlaWdodCBQbHVnaW5cbiAqL1xuXG4ub3dsLWhlaWdodCB7XG5cdHRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcbn1cbiIsIi8qXG4gKiBcdE93bCBDYXJvdXNlbCAtIExhenkgTG9hZCBQbHVnaW5cbiAqL1xuXG4ub3dsLWNhcm91c2VsIHtcblx0Lm93bC1pdGVtIHtcblx0XHQub3dsLWxhenkge1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG5cdFx0fVxuXG5cdFx0LyoqXG5cdFx0XHRUaGlzIGlzIGludHJvZHVjZWQgZHVlIHRvIGEgYnVnIGluIElFMTEgd2hlcmUgbGF6eSBsb2FkaW5nIGNvbWJpbmVkIHdpdGggYXV0b2hlaWdodCBwbHVnaW4gY2F1c2VzIGEgd3Jvbmdcblx0XHRcdGNhbGN1bGF0aW9uIG9mIHRoZSBoZWlnaHQgb2YgdGhlIG93bC1pdGVtIHRoYXQgYnJlYWtzIHBhZ2UgbGF5b3V0c1xuXHRcdCAqL1xuXHRcdC5vd2wtbGF6eVtzcmNePVwiXCJdLCAub3dsLWxhenk6bm90KFtzcmNdKSB7XG5cdFx0XHRtYXgtaGVpZ2h0OiAwO1xuXHRcdH1cblxuXHRcdGltZy5vd2wtbGF6eSB7XG5cdFx0XHR0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuXHRcdH1cblx0fVxufVxuXG4iLCIkb3dsLWltYWdlLXBhdGg6IFwiXCIgIWRlZmF1bHQ7XG5cbi8qXG4gKiBcdE93bCBDYXJvdXNlbCAtIFZpZGVvIFBsdWdpblxuICovXG5cbi5vd2wtY2Fyb3VzZWx7XG5cdC5vd2wtdmlkZW8td3JhcHBlciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kOiAjMDAwO1xuXHR9XG5cblx0Lm93bC12aWRlby1wbGF5LWljb24ge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRoZWlnaHQ6IDgwcHg7XG5cdFx0d2lkdGg6IDgwcHg7XG5cdFx0bGVmdDogNTAlO1xuXHRcdHRvcDogNTAlO1xuXHRcdG1hcmdpbi1sZWZ0OiAtNDBweDtcblx0XHRtYXJnaW4tdG9wOiAtNDBweDtcblx0XHRiYWNrZ3JvdW5kOiB1cmwoXCIjeyRvd2wtaW1hZ2UtcGF0aH1vd2wudmlkZW8ucGxheS5wbmdcIikgbm8tcmVwZWF0O1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR6LWluZGV4OiAxO1xuXHRcdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMDBtcyBlYXNlO1xuXHR9XG5cblx0Lm93bC12aWRlby1wbGF5LWljb246aG92ZXIge1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMS4zLCAxLjMpO1xuXHR9XG5cblx0Lm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tdG4sXG5cdC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tdG4ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuXHR9XG5cblx0Lm93bC12aWRlby1mcmFtZSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG59XG4iLCIuZmVhdGhlcmxpZ2h0LWNsb3NlLWljb24ge1xuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OiBub25lO1xuXHR9XG59XG4iLCIvLyAgRm91bmRhdGlvbiBmb3IgU2l0ZXMgU2V0dGluZ3Ncbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgIDEuIEdsb2JhbFxuLy8gICAyLiBCcmVha3BvaW50c1xuLy8gICAzLiBUaGUgR3JpZFxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vICAgNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAgIDYuIEFiaWRlXG4vLyAgIDcuIEFjY29yZGlvblxuLy8gICA4LiBBY2NvcmRpb24gTWVudVxuLy8gICA5LiBCYWRnZVxuLy8gIDEwLiBCcmVhZGNydW1ic1xuLy8gIDExLiBCdXR0b25cbi8vICAxMi4gQnV0dG9uIEdyb3VwXG4vLyAgMTMuIENhbGxvdXRcbi8vICAxNC4gQ2FyZFxuLy8gIDE1LiBDbG9zZSBCdXR0b25cbi8vICAxNi4gRHJpbGxkb3duXG4vLyAgMTcuIERyb3Bkb3duXG4vLyAgMTguIERyb3Bkb3duIE1lbnVcbi8vICAxOS4gRmxleGJveCBVdGlsaXRpZXNcbi8vICAyMC4gRm9ybXNcbi8vICAyMS4gTGFiZWxcbi8vICAyMi4gTWVkaWEgT2JqZWN0XG4vLyAgMjMuIE1lbnVcbi8vICAyNC4gTWV0ZXJcbi8vICAyNS4gT2ZmLWNhbnZhc1xuLy8gIDI2LiBPcmJpdFxuLy8gIDI3LiBQYWdpbmF0aW9uXG4vLyAgMjguIFByb2dyZXNzIEJhclxuLy8gIDI5LiBQcm90b3R5cGUgQXJyb3dcbi8vICAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcbi8vICAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXG4vLyAgMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gIDMzLiBQcm90b3R5cGUgRGlzcGxheVxuLy8gIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXG4vLyAgMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vICAzNi4gUHJvdG90eXBlIE92ZXJmbG93XG4vLyAgMzcuIFByb3RvdHlwZSBQb3NpdGlvblxuLy8gIDM4LiBQcm90b3R5cGUgUm91bmRlZFxuLy8gIDM5LiBQcm90b3R5cGUgU2VwYXJhdG9yXG4vLyAgNDAuIFByb3RvdHlwZSBTaGFkb3dcbi8vICA0MS4gUHJvdG90eXBlIFNpemluZ1xuLy8gIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xuLy8gIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXG4vLyAgNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXG4vLyAgNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gIDQ2LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAgNDcuIFJldmVhbFxuLy8gIDQ4LiBTbGlkZXJcbi8vICA0OS4gU3dpdGNoXG4vLyAgNTAuIFRhYmxlXG4vLyAgNTEuIFRhYnNcbi8vICA1Mi4gVGh1bWJuYWlsXG4vLyAgNTMuIFRpdGxlIEJhclxuLy8gIDU0LiBUb29sdGlwXG4vLyAgNTUuIFRvcCBCYXJcbi8vICA1Ni4gWHkgR3JpZFxuXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLyAxLiBHbG9iYWxcbi8vIC0tLS0tLS0tLVxuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEzNDApO1xuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjU7XG5cbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzA0MzI2MyxcbiAgc2Vjb25kYXJ5OiAjRkRDNDAwLFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2FkMDAzMSxcbik7XG5cbi8qKlxuICogQnJhbmQgQ29sb3JzXG4gKiBJbXBvcnRhbnQ6IElmIGNoYW5naW5nIHRoZW1lIGNvbG91cnMsIHJlbWVtYmVyIHRvIGNoYW5nZSB0aGVtIGluIHRoZSBFTEYgY2hpbGQgdGhlbWUgdG9vIGZvciBzdHJpbmcgcmVwbGFjZW1lbnRcbiAqL1xuJHByaW1hcnktb25lOiAjMDQzMjYzO1xuJHByaW1hcnktdGhyZWU6ICMwRjU4OUE7XG5cbi8qIG9sZCBzdHlsaW5nIGZhbGxiYWNrICovXG4kcHJpbWFyeS10d286ICRwcmltYXJ5LXRocmVlO1xuXG4kc2Vjb25kYXJ5LW9uZTogI0ZEQzQwMDtcblxuJGVycy1henVlLWJsdWU6ICM0NTk1RTY7XG4kYm9yZGVyOiAjZTRlNWU5O1xuJGJ1bGxldC1ibHVlOiAjNjQ5QURCO1xuXG4kYmxhY2s6ICMwMDA7XG4kZGFya2VzdC1ncmF5OiAkYmxhY2s7XG4kZGFya2VyLWdyYXk6ICM1MjUyNDU7XG4kZGFyay1ncmF5OiAjNzA3MDcwO1xuJG1lZGl1bS1ncmF5OiAjQjFCMUIxO1xuJGxpZ2h0LWdyYXk6ICNFNEU0RTQ7XG4kbGlnaHRlci1ncmF5OiAjRjBGMEYwO1xuJGxpZ2h0ZXN0LWdyYXk6ICNGNEY0RjQ7XG4kd2hpdGU6ICNGRkY7XG4kYmctZ3JleTogJGxpZ2h0ZXN0LWdyYXk7XG5cbiRjYXB0aW9uLWdyZXk6ICM3NjcxNzU7XG5cbiR0YWItY29sb3VyOiAkbGlnaHRlc3QtZ3JheTtcbiRmb290ZXItYnJlYWs6ICM4Njg2ODY7XG4kdHlwb2dyYXBoeTogIzg5ODk4OTtcblxuIFxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlO1xuJGJvZHktZm9udC1jb2xvcjogJGRhcmtlci1ncmF5O1xuJGJvZHktZm9udC1mYW1pbHk6ICdBdmVuaXIgTFQgVzAxXzY1IE1lZGl1bTE0NzU1MzInLCBzYW5zLXNlcmlmO1xuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XG4kZ2xvYmFsLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtcGFkZGluZzogMjBweDtcbiRnbG9iYWwtcG9zaXRpb246IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XG4kZ2xvYmFsLXJhZGl1czogNXB4O1xuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XG4kZ2xvYmFsLWZsZXhib3g6IHRydWU7XG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2U7XG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG87XG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwO1xuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlO1xuJHByaW50LWhyZWZzOiBmYWxzZTtcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG4vLyAyLiBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpO1xuXG4vLyAzLiBUaGUgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJGdyaWQtcm93LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcbiRncmlkLWNvbHVtbi1ndXR0ZXI6IChcbiAgc21hbGw6IDIwcHgsXG4gIG1lZGl1bTogMzBweCxcbik7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcbiRncmlkLWNvbHVtbi1hbGlhczogJ2NvbHVtbnMnO1xuJGJsb2NrLWdyaWQtbWF4OiA4O1xuXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAnQXZlbmlyIExUIFcwMV84NSBIZWF2eTE0NzU1NDQnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWw7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAkYm9keS1mb250LWZhbWlseTtcbiRoZWFkZXItY29sb3I6ICRwcmltYXJ5LW9uZTtcbiRoZWFkZXItbGluZWhlaWdodDogMS40O1xuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZnMnOiAzOCwgJ2xoJzogNDAsICdtYic6IDIzLCAnZncnOiBub3JtYWwpLFxuICAgICdoMic6ICgnZnMnOiAzMCwgJ2xoJzogMzIsICdtYic6IDIxLCAnZncnOiBub3JtYWwpLFxuICAgICdoMyc6ICgnZnMnOiAyNSwgJ2xoJzogMjYsICdtYic6IDE5LCAnZncnOiBub3JtYWwpLFxuICAgICdoNCc6ICgnZnMnOiAxOCwgJ2xoJzogMjQsICdtYic6IDE2LCAnZncnOiBub3JtYWwpLFxuICAgICdoNSc6ICgnZnMnOiAxNiwgJ2xoJzogMjQsICdtYic6IDE2LCAnZncnOiBub3JtYWwpLFxuICAgICdoNic6ICgnZnMnOiAxNiwgJ2xoJzogMjQsICdtYic6IDE2LCAnZncnOiBub3JtYWwpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZzJzogNDIsICdsaCc6IDQ4LCAnbWInOiAyNiwgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDInOiAoJ2ZzJzogMzQsICdsaCc6IDQyLCAnbWInOiAyNCwgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDMnOiAoJ2ZzJzogMjYsICdsaCc6IDMyLCAnbWInOiAyMiwgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDQnOiAoJ2ZzJzogMjIsICdsaCc6IDI4LCAnbWInOiAyMCwgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDUnOiAoJ2ZzJzogMTgsICdsaCc6IDI0LCAnbWInOiAyMCwgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDYnOiAoJ2ZzJzogMTYsICdsaCc6IDI0LCAnbWInOiAyMCwgJ2Z3Jzogbm9ybWFsKSxcbiAgKSxcbiAgbGFyZ2U6IChcbiAgICAnaDEnOiAoJ2ZzJzogNDcsICdsaCc6IDUyLCAnbWInOiAyOCwgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDInOiAoJ2ZzJzogMzgsICdsaCc6IDQ1LCAnbWInOiAyNCwgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDMnOiAoJ2ZzJzogMzAsICdsaCc6IDM1LCAnbWInOiAyMiwgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDQnOiAoJ2ZzJzogMjUsICdsaCc6IDI4LCAnbWInOiAyMCwgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDUnOiAoJ2ZzJzogMjAsICdsaCc6IDI2LCAnbWInOiAyMCwgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDYnOiAoJ2ZzJzogMTYsICdsaCc6IDI0LCAnbWInOiAyMCwgJ2Z3Jzogbm9ybWFsKSxcbiAgKSxcbik7XG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kc21hbGwtZm9udC1zaXplOiA4MCU7XG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheTtcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42O1xuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGFuY2hvci1jb2xvcjogJHByaW1hcnktb25lO1xuJGFuY2hvci1jb2xvci1ob3ZlcjogJHByaW1hcnktdHdvO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiB1bmRlcmxpbmU7XG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG87XG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuJGJsb2NrcXVvdGUtY29sb3I6ICRwcmltYXJ5LW9uZTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDggMjggMSAyOCk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IG5vbmU7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuXG4vLyA2LiBBYmlkZVxuLy8gLS0tLS0tLS1cblxuJGFiaWRlLWlucHV0czogdHJ1ZTtcbiRhYmlkZS1sYWJlbHM6IHRydWU7XG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gNy4gQWNjb3JkaW9uXG4vLyAtLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAwIDFyZW07XG5cbi8vIDguIEFjY29yZGlvbiBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kYWNjb3JkaW9ubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nO1xuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kOiBudWxsO1xuJGFjY29yZGlvbm1lbnUtYm9yZGVyOiBudWxsO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDogbnVsbDtcbiRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDogNDBweDtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHg7XG5cbi8vIDkuIEJhZGdlXG4vLyAtLS0tLS0tLVxuXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kYmFkZ2UtY29sb3I6ICR3aGl0ZTtcbiRiYWRnZS1jb2xvci1hbHQ6ICRibGFjaztcbiRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJhZGdlLXBhZGRpbmc6IDAuM2VtO1xuJGJhZGdlLW1pbndpZHRoOiAyLjFlbTtcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbTtcblxuLy8gMTAuIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMDtcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRhbmNob3ItY29sb3I7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjVyZW07XG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWU7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWU7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbTogJz4nO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsOiAnXFxcXCc7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRhbmNob3ItY29sb3I7XG5cbi8vIDExLiBCdXR0b25cbi8vIC0tLS0tLS0tLS1cblxuJGJ1dHRvbi1mb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiRidXR0b24tcGFkZGluZzogMS4yNWVtIDIuOGVtIDEuMjVlbSAxLjRlbTtcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRidXR0b24tZmlsbDogc29saWQ7XG4kYnV0dG9uLWJhY2tncm91bmQ6ICRzZWNvbmRhcnktb25lO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiAkcHJpbWFyeS1vbmU7XG4kYnV0dG9uLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG4kYnV0dG9uLWNvbG9yLWFsdDogJHdoaXRlO1xuJGJ1dHRvbi1yYWRpdXM6IDVweDtcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4O1xuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAxLjEyNXJlbSxcbiAgc21hbGw6IDEuMTI1cmVtLFxuICBkZWZhdWx0OiAxLjEyNXJlbSxcbiAgbGFyZ2U6IDEuMTI1cmVtLFxuKTtcbiRidXR0b24tcGFsZXR0ZTogKCk7XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDE7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcblxuLy8gMTIuIEJ1dHRvbiBHcm91cFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtO1xuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nO1xuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWU7XG5cbi8vIDEzLiBDYWxsb3V0XG4vLyAtLS0tLS0tLS0tLVxuXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JTtcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW07XG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhbGxvdXQtbGluay10aW50OiAzMCU7XG5cbi8vIDE0LiBDYXJkXG4vLyAtLS0tLS0tLVxuXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGNhcmQtc2hhZG93OiBub25lO1xuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kY2FyZC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcblxuLy8gMTUuIENsb3NlIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbik7XG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheTtcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xuXG4vLyAxNi4gRHJpbGxkb3duXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xuJGRyaWxsZG93bi1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbjogMDtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZztcbiRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyAxNy4gRHJvcGRvd25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW07XG4kZHJvcGRvd24td2lkdGg6IDMwMHB4O1xuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4LFxuKTtcblxuLy8gMTguIERyb3Bkb3duIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvcjtcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW07XG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQ7XG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luOiAwO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IHRyYW5zcGFyZW50O1xuXG4vLyAxOS4gRmxleGJveCBVdGlsaXRpZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQ6IDY7XG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlO1xuXG4vLyAyMC4gRm9ybXNcbi8vIC0tLS0tLS0tLVxuXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApO1xuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpO1xuJGZvcm0tc3BhY2luZzogcmVtLWNhbGMoMzApO1xuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljO1xuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjaztcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjg7XG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRwcmltYXJ5LW9uZTtcbiRzZWxlY3QtcmFkaXVzOiAwO1xuJGlucHV0LWNvbG9yOiAkcHJpbWFyeS1vbmU7XG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRkYXJrZXItZ3JheTtcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdDtcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4kaW5wdXQtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogdHJhbnNwYXJlbnQ7XG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtYm9yZGVyOiBub25lO1xuJGlucHV0LWJvcmRlci1mb2N1czogJGlucHV0LWJvcmRlcjtcbiRpbnB1dC1wYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDQpIDA7XG4kaW5wdXQtc2hhZG93OiBub25lO1xuJGlucHV0LXNoYWRvdy1mb2N1czogbm9uZTtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6IDA7XG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjEuIExhYmVsXG4vLyAtLS0tLS0tLS1cblxuJGxhYmVsLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRsYWJlbC1jb2xvcjogJHByaW1hcnktb25lO1xuJGxhYmVsLWNvbG9yLWFsdDogJHdoaXRlO1xuJGxhYmVsLXBhbGV0dGU6ICgpO1xuJGxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuJGxhYmVsLXBhZGRpbmc6IDVweCAxNHB4O1xuJGxhYmVsLXJhZGl1czogMDtcblxuLy8gMjIuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcblxuLy8gMjMuIE1lbnVcbi8vIC0tLS0tLS0tXG5cbiRtZW51LW1hcmdpbjogMDtcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZTtcbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWU7XG5cbi8vIDI0LiBNZXRlclxuLy8gLS0tLS0tLS0tXG5cbiRtZXRlci1oZWlnaHQ6IDFyZW07XG4kbWV0ZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRtZXRlci1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kbWV0ZXItZmlsbC1nb29kOiAkc3VjY2Vzcy1jb2xvcjtcbiRtZXRlci1maWxsLW1lZGl1bTogJHdhcm5pbmctY29sb3I7XG4kbWV0ZXItZmlsbC1iYWQ6ICRhbGVydC1jb2xvcjtcblxuLy8gMjUuIE9mZi1jYW52YXNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRvZmZjYW52YXMtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKTtcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKTtcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNyk7XG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplOiAyMHB4O1xuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg6IDExO1xuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTI7XG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMztcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTI7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlO1xuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KTtcbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCc7XG5cbi8vIDI2LiBPcmJpdFxuLy8gLS0tLS0tLS0tXG5cbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcblxuLy8gMjcuIFBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS10aHJlZTtcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCk7XG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpO1xuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3Zlcjogbm9uZTtcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiBub25lO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkcHJpbWFyeS1vbmU7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJHByaW1hcnktb25lO1xuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtcbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlO1xuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xuXG4vLyAyOC4gUHJvZ3Jlc3MgQmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDI5LiBQcm90b3R5cGUgQXJyb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1hcnJvdy1kaXJlY3Rpb25zOiAoXG4gIGRvd24sXG4gIHVwLFxuICByaWdodCxcbiAgbGVmdFxuKTtcbiRwcm90b3R5cGUtYXJyb3ctc2l6ZTogMC40Mzc1cmVtO1xuJHByb3RvdHlwZS1hcnJvdy1jb2xvcjogJGJsYWNrO1xuXG4vLyAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ib3gtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuXG4vLyAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyLW5vbmUtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuXG4vLyAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItd2lkdGg6IHJlbS1jYWxjKDEpO1xuJHByb3RvdHlwZS1ib3JkZXItdHlwZTogc29saWQ7XG4kcHJvdG90eXBlLWJvcmRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuXG4vLyAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWRpc3BsYXktYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1kaXNwbGF5OiAoXG4gIGlubGluZSxcbiAgaW5saW5lLWJsb2NrLFxuICBibG9jayxcbiAgdGFibGUsXG4gIHRhYmxlLWNlbGxcbik7XG5cbi8vIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWZvbnQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS13aWRlLWxldHRlci1zcGFjaW5nOiByZW0tY2FsYyg0KTtcbiRwcm90b3R5cGUtZm9udC1ub3JtYWw6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRwcm90b3R5cGUtZm9udC1ib2xkOiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4vLyAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1saXN0LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3R5bGUtdHlwZS11bm9yZGVyZWQ6IChcbiAgZGlzYyxcbiAgY2lyY2xlLFxuICBzcXVhcmVcbik7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtb3JkZXJlZDogKFxuICBkZWNpbWFsLFxuICBsb3dlci1hbHBoYSxcbiAgbG93ZXItbGF0aW4sXG4gIGxvd2VyLXJvbWFuLFxuICB1cHBlci1hbHBoYSxcbiAgdXBwZXItbGF0aW4sXG4gIHVwcGVyLXJvbWFuXG4pO1xuXG4vLyAzNi4gUHJvdG90eXBlIE92ZXJmbG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtb3ZlcmZsb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1vdmVyZmxvdzogKFxuICB2aXNpYmxlLFxuICBoaWRkZW4sXG4gIHNjcm9sbFxuKTtcblxuLy8gMzcuIFByb3RvdHlwZSBQb3NpdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXBvc2l0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtcG9zaXRpb246IChcbiAgc3RhdGljLFxuICByZWxhdGl2ZSxcbiAgYWJzb2x1dGUsXG4gIGZpeGVkXG4pO1xuJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4OiA5NzU7XG5cbi8vIDM4LiBQcm90b3R5cGUgUm91bmRlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtcm91bmRlZC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuXG4vLyAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zZXBhcmF0b3ItYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYWxpZ246IGNlbnRlcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWhlaWdodDogcmVtLWNhbGMoMik7XG4kcHJvdG90eXBlLXNlcGFyYXRvci13aWR0aDogM3JlbTtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNoYWRvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwwLDAsLjE2KSxcbiAgICAgICAgICAgICAgICAgICAgICAgMCAycHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKTtcblxuLy8gNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2l6aW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2l6aW5nOiAoXG4gIHdpZHRoLFxuICBoZWlnaHRcbik7XG4kcHJvdG90eXBlLXNpemVzOiAoXG4gIDI1OiAyNSUsXG4gIDUwOiA1MCUsXG4gIDc1OiA3NSUsXG4gIDEwMDogMTAwJVxuKTtcblxuLy8gNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zcGFjaW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3BhY2Vycy1jb3VudDogMztcblxuLy8gNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZGVjb3JhdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtZGVjb3JhdGlvbjogKFxuICBvdmVybGluZSxcbiAgdW5kZXJsaW5lLFxuICBsaW5lLXRocm91Z2gsXG4pO1xuXG4vLyA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXRyYW5zZm9ybWF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC10cmFuc2Zvcm1hdGlvbjogKFxuICBsb3dlcmNhc2UsXG4gIHVwcGVyY2FzZSxcbiAgY2FwaXRhbGl6ZVxuKTtcblxuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXV0aWxpdGllcy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbik7XG5cbi8vIDQ3LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cblxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KTtcblxuLy8gNDguIFNsaWRlclxuLy8gLS0tLS0tLS0tLVxuXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDQ5LiBTd2l0Y2hcbi8vIC0tLS0tLS0tLS1cblxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcblxuLy8gNTAuIFRhYmxlXG4vLyAtLS0tLS0tLS1cblxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWJsZS1jb2xvci1zY2FsZTogNSU7XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgJGJvcmRlcjtcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWlzLXN0cmlwZWQ6IGZhbHNlO1xuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogJGxpZ2h0ZXN0LWdyYXk7XG4kdGFibGUtc3RyaXBlOiBldmVuO1xuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogJHByaW1hcnktb25lO1xuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiAkcHJpbWFyeS1vbmU7XG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiAkYmctZ3JleTtcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogJGJnLWdyZXk7XG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkd2hpdGU7XG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkcHJpbWFyeS1vbmU7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuLy8gNTEuIFRhYnNcbi8vIC0tLS0tLS0tXG5cbiR0YWItbWFyZ2luOiAwO1xuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5O1xuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiR0YWItZXhwYW5kLW1heDogNjtcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheTtcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA1Mi4gVGh1bWJuYWlsXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aHVtYm5haWwtYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlO1xuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KTtcbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTMuIFRpdGxlIEJhclxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrO1xuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtO1xuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQ7XG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheTtcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG5cbi8vIDU0LiBUb29sdGlwXG4vLyAtLS0tLS0tLS0tLVxuXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHA7XG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAxMHJlbTtcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTUuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1Ni4gWHkgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJHh5LWdyaWQ6IHRydWU7XG4kZ3JpZC1jb250YWluZXI6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW5zOiAxMjtcblxuJGdyaWQtbWFyZ2luLWd1dHRlcnM6IChcbiAgc21hbGw6IDI0cHgsIC8vIDIwcHhcbiAgLy9tZWRpdW06IDI0cHgsIC8vIDMwcHhcbiAgbWVkaXVtOiAyMHB4IC8vIENsaWVudCBmZWVkYmFja1xuKTtcblxuJGdyaWQtcGFkZGluZy1ndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycztcblxuLy8gJGdyaWQtY29udGFpbmVyLXBhZGRpbmc6ICRncmlkLXBhZGRpbmctZ3V0dGVycztcblxuJGdyaWQtY29udGFpbmVyLXBhZGRpbmc6IChcbiAgc21hbGw6IDQwcHgsXG4gIG1lZGl1bTogNjRweFxuKTtcblxuJGdyaWQtY29udGFpbmVyLW1heDogJGdsb2JhbC13aWR0aDtcbiR4eS1ibG9jay1ncmlkLW1heDogODtcblxuLy8gcHcgcHJvdGVjdCBzdHlsaW5nXG4ucHctcHJvdGVjdCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xufSIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXNcbiAqIFZlcnNpb24gNi42LjNcbiAqIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5cbi8vIC0tLSBEZXBlbmRlbmNpZXMgLS0tXG5AaW1wb3J0ICd2ZW5kb3Ivbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy9taXNzaW5nLWRlcGVuZGVuY2llcyc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvdHJ1ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9jb250YWluJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyAtLS0gU2V0dGluZ3MgLS0tXG4vLyBpbXBvcnQgeW91ciBvd24gYHNldHRpbmdzYCBoZXJlIG9yXG4vLyBpbXBvcnQgYW5kIG1vZGlmeSB0aGUgZGVmYXVsdCBzZXR0aW5ncyB0aHJvdWdoXG4vLyBAaW1wb3J0ICdzZXR0aW5ncy9zZXR0aW5ncyc7XG5cbi8vIC0tLSBDb21wb25lbnRzIC0tLVxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuLy8gR2xvYmFsIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcbkBpbXBvcnQgJ2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5cbi8vIEdyaWRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAneHktZ3JpZC94eS1ncmlkJztcbi8vIEdlbmVyaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jbG9zZS1idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYWJlbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbi8vIEJhc2ljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcCc7XG5cbi8vIENvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEtb2JqZWN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb3JiaXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RodW1ibmFpbCc7XG4vLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUtaWNvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJpbGxkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24tbWVudSc7XG5cbi8vIExheW91dCBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL29mZi1jYW52YXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zdGlja3knO1xuQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90b3AtYmFyJztcblxuLy8gSGVscGVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ3Byb3RvdHlwZS9wcm90b3R5cGUnO1xuXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoXG4gICRmbGV4OiB0cnVlLFxuICAkcHJvdG90eXBlOiBmYWxzZSxcbiAgJHh5LWdyaWQ6ICR4eS1ncmlkXG4pIHtcbiAgQGlmICRmbGV4IHtcbiAgICAkZ2xvYmFsLWZsZXhib3g6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIEBpZiAkeHktZ3JpZCB7XG4gICAgJHh5LWdyaWQ6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIC8vIEdsb2JhbCBzdHlsZXNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG5cbiAgLy8gR3JpZHNcbiAgQGlmIG5vdCAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHh5LWdyaWQge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdlbmVyaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuICAvLyBCYXNpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcblxuICAvLyBDb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuICAvLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuXG4gIC8vIExheW91dCBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuXG4gIC8vIEhlbHBlcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuICBAaWYgJGZsZXggeyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlczsgfVxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGlmICRwcm90b3R5cGUgeyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb3RvdHlwZS1jbGFzc2VzOyB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1ub3JtYWxpemUoKSB7XG4gIC8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuICAvLyBEb2N1bWVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG5cbiAgaHRtbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgfVxuXG4gIC8vIFNlY3Rpb25zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgLy8gYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuXG4gIC8vIEdyb3VwaW5nIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAvLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuICBociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgICBoZWlnaHQ6IDA7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHByZSB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAgLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cblxuICBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLy8gMVxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuXG4gIGIsXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cblxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gIH1cblxuICAvLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgLy8gYWxsIGJyb3dzZXJzLlxuXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG4gIH1cblxuICBzdXAge1xuICAgIHRvcDogLTAuNWVtO1xuICB9XG5cbiAgLy8gRW1iZWRkZWQgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG5cbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cblxuICAvLyBGb3Jtc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvLyAxXG4gICAgZm9udC1zaXplOiAxMDAlOyAvLyAxXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICBtYXJnaW46IDA7IC8vIDJcbiAgfVxuXG4gIC8vIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAvLyAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQgeyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLy8gMVxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cblxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gIC8vIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgLy8gICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgbGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMVxuICAgIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDNcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cblxuICB0ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAyXG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5cbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG4gICAgZm9udDogaW5oZXJpdDsgLy8gMlxuICB9XG5cbiAgLy8gSW50ZXJhY3RpdmVcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuXG4gIGRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgfVxuXG4gIC8vIE1pc2NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG5cbiAgdGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cblxuICBbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1jb2xvci1saXRlcmFscywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcG9zaXRpb25pbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIENhbiBiZSBvdmVyd3JpdHRlbiBhdCBpbmRpdmlkdWFsIG1lbnUgY29tcG9uZW50IGxldmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gTmVzdGVkIG1hcmdpbiBmb3Igc3VibWVudS5cbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZWQgcmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgcHJvdG90eXBlcyBpZiBhcHBsaWNhYmxlXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIGN1cnNvcidzIHZhbHVlLCBgYXV0b2AgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0byAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGUgdGhhdCBjb250YWlucyB0aGUgZmxleCBqdXN0aWZ5aW5nIG9wdGlvbnNcbiQtemYtZmxleC1qdXN0aWZ5OiAtemYtZmxleC1qdXN0aWZ5KCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24pO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIE1ha2UgcmVzZXQgaW5oZXJpdCBmb250LWZhbWlseSBpbnN0ZWFkIG9mIHNldHRpbmdzIHNhbnMtc2VyaWZcbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSW50ZXJuYWwgY2xhc3NlcyB0byBzaG93L2hpZGUgZWxlbWVudHMgaW4gSmF2YVNjcmlwdFxuICAuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhbiBpbm5lciBib3gtc2hhZG93IGZvciBvbmx5IG9uZSBzaWRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiAjeyRyZ2J9Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAkaSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuLy8vIEBsaW5rIGh0dHA6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRlbmZvcmNlIC0gSWYgYHRydWVgLCB1c2UgYCFpbXBvcnRhbnRgIG9uIGFwcGxpZWQgcHJvcGVydGllc1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlKFxuICAkZW5mb3JjZTogdHJ1ZVxuKSB7XG4gICRpbXBvcnRhbnQ6IGlmKCRlbmZvcmNlLCAnIWltcG9ydGFudCcsIG51bGwpO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAjeyRpbXBvcnRhbnR9O1xuICB3aWR0aDogMXB4ICN7JGltcG9ydGFudH07XG4gIGhlaWdodDogMXB4ICN7JGltcG9ydGFudH07XG4gIHBhZGRpbmc6IDAgI3skaW1wb3J0YW50fTtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAjeyRpbXBvcnRhbnR9O1xuICBjbGlwOiByZWN0KDAsMCwwLDApICN7JGltcG9ydGFudH07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgI3skaW1wb3J0YW50fTtcbiAgYm9yZGVyOiAwICN7JGltcG9ydGFudH07XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZW5mb3JjZSAtIElmIGB0cnVlYCwgdXNlIGAhaW1wb3J0YW50YCBvbiBhcHBsaWVkIHByb3BlcnRpZXNcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYoXG4gICRlbmZvcmNlOiB0cnVlXG4pIHtcbiAgJGltcG9ydGFudDogaWYoJGVuZm9yY2UsICchaW1wb3J0YW50JywgbnVsbCk7XG5cbiAgcG9zaXRpb246IHN0YXRpYyAjeyRpbXBvcnRhbnR9O1xuICB3aWR0aDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICBoZWlnaHQ6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgb3ZlcmZsb3c6IHZpc2libGUgI3skaW1wb3J0YW50fTtcbiAgY2xpcDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsICN7JGltcG9ydGFudH07XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoXG4gICRzbWFsbDogdHJ1ZSxcbiAgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzOiB0cnVlXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludC1pbihhdXRvLCAtemYtYm9vbCgkc21hbGwpLCAtemYtYm9vbCgkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMpKSB7XG4gICAgQGNvbnRlbnRcbiAgfTtcbn1cblxuLy8vIEl0ZXJhdGVzIHdpdGggYEBjb250ZW50YCB0aHJvdWdoIHRoZSBnaXZlbiBsaXN0IG9mIGJyZWFrcG9pbnRzIGAkYnJlYWtwb2ludHNgLlxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TGlzdH0gJGJyZWFrcG9pbnRzIFthdXRvXSAtIEJyZWFrcG9pbnRzIHRvIGl0ZXJhdGVzIG9uLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufE51bGx9ICR6ZXJvLWJyZWFrcG9pbnQgW251bGxdIC0gV2hldGhlciB0aGUgemVyby1icmVha3BvaW50IChvZnRlbiBgc21hbGxgKSBtdXN0IGJlIGluY2x1ZGVkLiBJZiBgdHJ1ZWAsIGl0IHdpbGwgYWx3YXlzIGJlIGFkZGVkIHRvIHRoZSBsaXN0IGlmIG5vdCBhbHJlYWR5IHRoZXJlLiBJZiBgZmFsc2VgLCBpdCB3aWxsIGFsd2F5cyBiZSByZW1vdmVkLiBEb2VzIG5vdGhpbmcgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW58S2V5d29yZH0gJG1lZGlhLXF1ZXJpZXMgW3RydWVdIC0gV2hldGhlciBtZWRpYS1xdWVyaWVzIG11c3QgYmUgZ2VuZXJhdGVkLiBJZiBgZm9yLWxpc3RzYCwgb25seSBnZW5lcmF0ZSBtZWRpYS1xdWVyaWVzIHdoZW4gYCRicmVha3BvaW50c2AgaXMgYSBsaXN0LlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oXG4gICRicmVha3BvaW50czogYXV0byxcbiAgJHplcm8tYnJlYWtwb2ludDogbnVsbCxcbiAgJG1lZGlhLXF1ZXJpZXM6IHRydWVcbikge1xuICAkLWxpc3Q6ICgpO1xuICAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdDogdHJ1ZTtcblxuICAvLyBSZXRyaWV2ZSB0aGUgbGlzdCBvZiBicmVha3BvaW50KHMpIHRvIGl0ZXJhdGUgb24uXG4gIEBpZiAkYnJlYWtwb2ludHMgPT0gYXV0byB7XG4gICAgJC1saXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGJyZWFrcG9pbnRzKSA9PSAnbGlzdCcge1xuICAgICQtbGlzdDogJGJyZWFrcG9pbnRzO1xuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGJyZWFrcG9pbnRzKSA9PSAnc3RyaW5nJyB7XG4gICAgJC1saXN0OiAoJGJyZWFrcG9pbnRzKTtcbiAgICAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdDogZmFsc2U7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBcIiRicmVha3BvaW50c1wiIGluIFwiLXpmLWVhY2gtYnJlYWtwb2ludC1pbigpXCIuIEdvdCBcIiN7JGJyZWFrcG9pbnRzfVwiICgje3R5cGUtb2YoJGJyZWFrcG9pbnRzKX0pLiBFeHBlY3RlZCBhIGJyZWFrcG9pbnQgbmFtZSwgYSBsaXN0IG9mIGJyZWFrcG9pbnRzIG9yIFwiYXV0b1wiJztcbiAgfVxuXG4gIC8vIEFkZCBvciByZW1vdmUgdGhlIHplcm8gYnJlYWtwb2ludCBhY2NvcmRpbmcgdG8gYCR6ZXJvLWJyZWFrcG9pbnRgXG4gIEBpZiAkemVyby1icmVha3BvaW50ID09IHRydWUge1xuICAgICQtbGlzdDogam9pbigoJC16Zi16ZXJvLWJyZWFrcG9pbnQpLCBzbC1yZW1vdmUoJC1saXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCkpO1xuICB9XG4gIEBlbHNlIGlmICR6ZXJvLWJyZWFrcG9pbnQgPT0gZmFsc2Uge1xuICAgICQtbGlzdDogc2wtcmVtb3ZlKCQtbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgLy8gSXRlcmF0ZSBvbiBicmVha3BvaW50KHMpXG4gIEBlYWNoICRicCBpbiAkLWxpc3Qge1xuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogJGJwICFnbG9iYWw7XG5cbiAgICBAaWYgKCRtZWRpYS1xdWVyaWVzID09IHRydWVcbiAgICAgIG9yICgkbWVkaWEtcXVlcmllcyA9PSAnZm9yLWxpc3RzJyBhbmQgJC1icmVha3BvaW50cy1pcy1hLWxpc3QpKSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicCkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkYnAtdmFsdWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICAgIEBpZiAkYnAtdmFsdWUgIT0gbnVsbCB7XG4gICAgICAgICRuYW1lOiAkYnAtdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBPdXRwdXRzIENTUyBjbGFzc2VzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBmb3VuZGF0aW9uLWdyaWQoXG4gICRyb3c6ICdyb3cnLFxuICAkY29sdW1uOiAnY29sdW1uJyxcbiAgJGNvbHVtbi1yb3c6ICdjb2x1bW4tcm93JyxcbiAgJGd1dHRlcjogJ2d1dHRlcicsXG4gICRwdXNoOiAncHVzaCcsXG4gICRwdWxsOiAncHVsbCcsXG4gICRjZW50ZXI6ICdjZW50ZXJlZCcsXG4gICR1bmNlbnRlcjogJ3VuY2VudGVyZWQnLFxuICAkY29sbGFwc2U6ICdjb2xsYXBzZScsXG4gICR1bmNvbGxhcHNlOiAndW5jb2xsYXBzZScsXG4gICRvZmZzZXQ6ICdvZmZzZXQnLFxuICAkZW5kOiAnZW5kJyxcbiAgJGV4cGFuZGVkOiAnZXhwYW5kZWQnLFxuICAkYmxvY2s6ICdibG9jaydcbikge1xuICAvLyBSb3dcbiAgLiN7JHJvd30ge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93O1xuXG4gICAgLy8gQ29sbGFwc2luZ1xuICAgICYuI3skY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZXN0aW5nXG4gICAgJiAuI3skcm93fSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRncmlkLWNvbHVtbi1ndXR0ZXIpO1xuXG4gICAgICAmLiN7JGNvbGxhcHNlfSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhwYW5kZWQgKGZ1bGwtd2lkdGgpIHJvd1xuICAgICYuI3skZXhwYW5kZWR9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoZXhwYW5kKTtcblxuICAgICAgLiN7JHJvd30ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC4jeyRleHBhbmRlZH0pIC4jeyRyb3d9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoZXhwYW5kKTtcbiAgICB9XG5cbiAgICBAaWYgdHlwZS1vZigkZ3JpZC1jb2x1bW4tZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAvLyBTdGF0aWMgKHVucmVzcG9uc2l2ZSkgcm93IGd1dHRlcnNcbiAgICAgIC8vXG4gICAgICBAZWFjaCAkYnJlYWtwb2ludCwgJHZhbHVlIGluICRncmlkLWNvbHVtbi1ndXR0ZXIge1xuICAgICAgICAmLiN7JGd1dHRlcn0tI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgID4gLiN7JGNvbHVtbn0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtZ3V0dGVyKCR2YWx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sdW1uXG4gIC4jeyRjb2x1bW59IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbDtcblxuICAgIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgICAmLiN7JGVuZH0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1lbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sdW1uIHJvd1xuICAvLyBUaGUgZG91YmxlIC5yb3cgY2xhc3MgaXMgbmVlZGVkIHRvIGJ1bXAgdXAgdGhlIHNwZWNpZmljaXR5XG4gIC4jeyRjb2x1bW59LiN7JHJvd30uI3skcm93fSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cblxuICAvLyBUbyBwcm9wZXJseSBuZXN0IGEgY29sdW1uIHJvdywgcGFkZGluZyBhbmQgbWFyZ2luIGlzIHJlbW92ZWRcbiAgLiN7JHJvd30gLiN7JGNvbHVtbn0uI3skcm93fS4jeyRyb3d9IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAvLyBDb2x1bW4gd2lkdGhcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKCRpKTtcbiAgICAgIH1cblxuICAgICAgLy8gU291cmNlIG9yZGVyaW5nXG4gICAgICBAaWYgJGkgPCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgICBAaWYgJHB1c2gge1xuICAgICAgICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgJHB1bGwge1xuICAgICAgICAgIC4jeyQtemYtc2l6ZX0tI3skcHVsbH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKC0kaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIEBpZiAkb2Zmc2V0IHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS0jeyRvZmZzZXR9LSN7JG99IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1vZmYoJG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmxvY2sgZ3JpZFxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtbWF4IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgkaSwgJy4jeyRjb2x1bW59Jyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBjb2xsYXBzaW5nXG4gICAgLiN7JC16Zi1zaXplfS0jeyRjb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7IEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlOyB9XG5cbiAgICAgIC4jeyRyb3d9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuI3skZXhwYW5kZWR9LiN7JHJvd30gLiN7JC16Zi1zaXplfS0jeyRjb2xsYXBzZX0uI3skcm93fSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LSN7JHVuY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0geyBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJC16Zi1zaXplKTsgfVxuICAgIH1cblxuICAgIC8vIFBvc2l0aW9uaW5nXG4gICAgQGlmICRjZW50ZXIge1xuICAgICAgLiN7JC16Zi1zaXplfS0jeyRjZW50ZXJ9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKGNlbnRlcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gR3V0dGVyIGFkanVzdG1lbnRcbiAgICAkLWd1dHRlci11bnBvcy1zZWxlY3RvcjogKFxuICAgICAgaWYoJHVuY2VudGVyLCAnLiN7JC16Zi1zaXplfS0jeyR1bmNlbnRlcn0nLCBudWxsKSxcbiAgICAgIGlmKCRwdXNoLCAnLiN7JC16Zi1zaXplfS0jeyRwdXNofS0wJywgbnVsbCksXG4gICAgICBpZigkcHVsbCwgJy4jeyQtemYtc2l6ZX0tI3skcHVsbH0tMCcsIG51bGwpLFxuICAgICk7XG4gICAgQGlmICgkdW5jZW50ZXIgb3IgJHB1c2ggb3IgJHB1bGwpIHtcbiAgICAgICN7JC1ndXR0ZXItdW5wb3Mtc2VsZWN0b3J9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtdW5wb3M7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZCBjb2x1bW5zXG4gIC4jeyRjb2x1bW59LSN7JGJsb2NrfSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tbWFyZ2luO1xuICB9XG5cbiAgQGlmICRjb2x1bW4gPT0gJ2NvbHVtbicgYW5kIGhhcy12YWx1ZSgkZ3JpZC1jb2x1bW4tYWxpYXMpIHtcbiAgICAuI3skZ3JpZC1jb2x1bW4tYWxpYXN9IHtcbiAgICAgIC8vIHNhc3MtbGludDpkaXNhYmxlLWJsb2NrIHBsYWNlaG9sZGVyLWluLWV4dGVuZFxuICAgICAgQGV4dGVuZCAuY29sdW1uO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENoYW5nZSB0aGUgYmVoYXZpb3Igb2YgY29sdW1ucyBkZWZpbmVkIGluc2lkZSB0aGlzIG1peGluIHRvIHVzZSBhIGRpZmZlcmVudCBjb2x1bW4gY291bnQuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRyb290IFtmYWxzZV1cbi8vLyAgIElmIGBmYWxzZWAsIHNlbGVjdG9ycyBpbnNpZGUgdGhpcyBtaXhpbiB3aWxsIG5lc3QgaW5zaWRlIHRoZSBwYXJlbnQgc2VsZWN0b3IuXG4vLy8gICBJZiBgdHJ1ZWAsIHNlbGVjdG9ycyB3aWxsIG5vdCBuZXN0LlxuQG1peGluIGdyaWQtY29udGV4dChcbiAgJGNvbHVtbnMsXG4gICRyb290OiBmYWxzZVxuKSB7XG4gIC8vIFN0b3JlIHRoZSBjdXJyZW50IGNvbHVtbiBjb3VudCBzbyBpdCBjYW4gYmUgcmUtc2V0IGxhdGVyXG4gICRvbGQtZ3JpZC1jb2x1bW4tY291bnQ6ICRncmlkLWNvbHVtbi1jb3VudDtcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkY29sdW1ucyAhZ2xvYmFsO1xuXG4gIEBpZiAkcm9vdCB7XG4gICAgQGF0LXJvb3QgeyBAY29udGVudDsgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIG9sZCBjb2x1bW4gY291bnRcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkb2xkLWdyaWQtY29sdW1uLWNvdW50ICFnbG9iYWw7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCByb3cuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyBbbnVsbF0gLSBDb2x1bW4gY291bnQgZm9yIHRoaXMgcm93LiBgbnVsbGAgd2lsbCB1c2UgdGhlIGRlZmF1bHQgY29sdW1uIGNvdW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZHN9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRjZiBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGEgY2xlYXJmaXguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdyhcbiAgJGNvbHVtbnM6IG51bGwsXG4gICRiZWhhdmlvcjogbnVsbCxcbiAgJHNpemU6ICRncmlkLXJvdy13aWR0aCxcbiAgJGNmOiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gICRtYXJnaW46IGF1dG87XG5cbiAgQGlmIGluZGV4KCRiZWhhdmlvciwgbmVzdCkgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3V0dGVycyk7XG5cbiAgICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBjb2xsYXBzZSkgIT0gbnVsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoJHNpemUpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIEBpZiAkY2Yge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBJbnZlcnRzIHRoZSBtYXJnaW5zIG9mIGEgcm93IHRvIG5lc3QgaXQgaW5zaWRlIG9mIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdy1uZXN0KCRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICRtYXJnaW46IHJlbS1jYWxjKC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkLXpmLXNpemUpKSAvIDIgKiAtMTtcblxuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0IGEgZ3JpZCByb3cgc2l6ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuQG1peGluIGdyaWQtcm93LXNpemUoJHNpemU6ICRncmlkLXJvdy13aWR0aCkge1xuICBAaWYgJHNpemUgPT0gZXhwYW5kIHtcbiAgICAkc2l6ZTogbm9uZTtcbiAgfVxuXG4gIG1heC13aWR0aDogJHNpemU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gUmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRudW0gLSBOdW1iZXIgdG8gc3RyaXAgdW5pdCBmcm9tLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHNhbWUgbnVtYmVyLCBzYW5zIHVuaXQuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUgYXMgdGhlIGJhc2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7TGlzdH0gQSBsaXN0IG9mIGNvbnZlcnRlZCB2YWx1ZXMuXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2U6IG51bGwpIHtcbiAgJHJlbS12YWx1ZXM6ICgpO1xuICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgLy8gVGhpcyBpcyBiZWNhdXNlIDEwMCUgZm9udCBzaXplID0gMTZweCBpbiBtb3N0IGFsbCBicm93c2Vyc1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gVXNpbmcgcmVtIGFzIGJhc2UgYWxsb3dzIGNvcnJlY3Qgc2NhbGluZ1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgJGNvdW50ID09IDEge1xuICAgIEByZXR1cm4gLXpmLXRvLXJlbSgkdmFsdWVzLCAkYmFzZSk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb3VudCB7XG4gICAgJHJlbS12YWx1ZXM6IGFwcGVuZCgkcmVtLXZhbHVlcywgLXpmLXRvLXJlbShudGgoJHZhbHVlcywgJGkpLCAkYmFzZSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVtLXZhbHVlcztcbn1cblxuLy8gQ29udmVydHMgYSB1bml0bGVzcywgcGl4ZWwsIG9yIHJlbSB2YWx1ZSB0byBlbSwgZm9yIHVzZSBpbiBicmVha3BvaW50cy5cbkBmdW5jdGlvbiAtemYtYnAtdG8tZW0oJHZhbHVlKSB7XG4gIC8vIFBpeGVsIGFuZCB1bml0bGVzcyB2YWx1ZXMgYXJlIGNvbnZlcnRlZCB0byByZW1zXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyBvciB1bml0bGVzcygkdmFsdWUpIHtcbiAgICAkdmFsdWU6IHJlbS1jYWxjKCR2YWx1ZSwgJGJhc2U6IDE2cHgpO1xuICB9XG5cbiAgLy8gVGhlbiB0aGUgdmFsdWUgaXMgY29udmVydGVkIHRvIGVtc1xuICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFlbTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwgdmFsdWUgdG8gbWF0Y2hpbmcgcmVtIHZhbHVlLiAqQW55KiB2YWx1ZSBwYXNzZWQsIHJlZ2FyZGxlc3Mgb2YgdW5pdCwgaXMgYXNzdW1lZCB0byBiZSBhIHBpeGVsIHZhbHVlLiBCeSBkZWZhdWx0LCB0aGUgYmFzZSBwaXhlbCB2YWx1ZSB1c2VkIHRvIGNhbGN1bGF0ZSB0aGUgcmVtIHZhbHVlIGlzIHRha2VuIGZyb20gdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gUGl4ZWwgdmFsdWUgdG8gY29udmVydC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gQmFzZSBmb3IgcGl4ZWwgY29udmVyc2lvbi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgbnVtYmVyIGluIHJlbXMsIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIGdpdmVuIHZhbHVlIGFuZCB0aGUgYmFzZSBwaXhlbCB2YWx1ZS4gcmVtIHZhbHVlcyBhcmUgcGFzc2VkIHRocm91Z2ggYXMgaXMuXG5AZnVuY3Rpb24gLXpmLXRvLXJlbSgkdmFsdWUsICRiYXNlOiBudWxsKSB7XG4gIC8vIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkdmFsdWUpICE9ICdudW1iZXInIHtcbiAgICBAd2FybiBpbnNwZWN0KCR2YWx1ZSkgKyAnIHdhcyBwYXNzZWQgdG8gcmVtLWNhbGMoKSwgd2hpY2ggaXMgbm90IGEgbnVtYmVyLic7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBUcmFuc2Zvcm0gZW0gaW50byByZW0gaWYgc29tZW9uZSBoYW5kcyBvdmVyICdlbSdzXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHJlbSBpZiB1bml0cyBmb3IgJHZhbHVlIGlzIG5vdCByZW0gb3IgZW1cbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKSAqIDFyZW07XG4gIH1cblxuICAvLyBUdXJuIDByZW0gaW50byAwXG4gIEBpZiAkdmFsdWUgPT0gMHJlbSB7XG4gICAgJHZhbHVlOiAwO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsLCBwZXJjZW50YWdlLCByZW0gb3IgZW0gdmFsdWUgdG8gYSB1bml0bGVzcyB2YWx1ZSBiYXNlZCBvbiBhIGdpdmVuIGZvbnQgc2l6ZS4gSWRlYWwgZm9yIHdvcmtpbmcgb3V0IHVuaXRsZXNzIGxpbmUgaGVpZ2h0cy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBjb252ZXJ0IHRvIGEgdW5pdGxlc3MgbGluZSBoZWlnaHRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBUaGUgZm9udCBzaXplIHRvIHVzZSB0byB3b3JrIG91dCB0aGUgbGluZSBoZWlnaHQgLSBkZWZhdWx0cyB0byAkZ2xvYmFsLWZvbnQtc2l6ZVxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIFVuaXRsZXNzIG51bWJlclxuQGZ1bmN0aW9uIHVuaXRsZXNzLWNhbGMoJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIEZpcnN0LCBsZXRzIGNvbnZlcnQgb3VyICRiYXNlIHRvIHBpeGVsc1xuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBOb3cgbGV0J3MgY29udmVydCBvdXIgdmFsdWUgdG8gcGl4ZWxzIHRvb1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICclJyB7XG4gICAgJHZhbHVlOiAoJHZhbHVlIC8gMTAwJSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICAvLyAncHgnXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyB7XG4gICAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIC8vIGFzc3VtZSB0aGF0IGxpbmUtaGVpZ2h0cyBncmVhdGVyIHRoYW4gMTAgYXJlIG1lYW50IHRvIGJlIGFic29sdXRlIGluICdweCdcbiAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICgkdmFsdWUgPiAxMCkge1xuICAgIEByZXR1cm4gJHZhbHVlIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkZ3V0dGVyIFthdXRvXVxuLy8vICAgU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRndXR0ZXJzIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBndXR0ZXIgcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRndXR0ZXJzIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRndXR0ZXIsICRndXR0ZXJzKSB7XG4gICAgJHBhZGRpbmc6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcblxuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gIH1cbn1cblxuLy8vIENvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlbW92aW5nIHRoZSBwYWRkaW5nLiAqKk5vdGU6Kiogb25seSB1c2UgdGhpcyBtaXhpbiB3aXRoaW4gYSBicmVha3BvaW50LiBUbyBjb2xsYXBzZSBhIGNvbHVtbidzIGd1dHRlcnMgb24gYWxsIHNjcmVlbiBzaXplcywgdXNlIHRoZSBgJGd1dHRlcmAgcGFyYW1ldGVyIG9mIHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4gaW5zdGVhZC5cbkBtaXhpbiBncmlkLWNvbHVtbi1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigwKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWd1dHRlcigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZ3V0dGVyXG5AbWl4aW4gZ3JpZC1jb2wtZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWNvbGxhcHNlO1xufVxuXG4vLy8gU2V0cyBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucyB0byBtYXRjaCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJG1hcmdpbiBbYXV0b11cbi8vLyAgIFRoZSBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJG1hcmdpbnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIG1hcmdpbiByZXNwb25zaXZlLCB1c2luZyB0aGUgJG1hcmdpbnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXJnaW5zIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLW1hcmdpbiAoXG4gICRtYXJnaW46IGF1dG8sXG4gICRtYXJnaW5zOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJG1hcmdpbiwgJG1hcmdpbnMpIHtcbiAgICAkbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSk7XG4gICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgSGlEUEkgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMgZm9yIHJlc29sdXRpb25zLlxuLy8vIFZhbHVlcyBtdXN0IHJlcHJlc2VudCB0aGUgZGV2aWNlIHBpeGVscyAvIHdlYiBwaXhlbHMgcmF0aW9uIGFuZCBiZSB1bml0bGVzcyBvciBpbiBEUFBYLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzLWhpZHBpOiAoXG4gIGhpZHBpLTE6IDEsXG4gIGhpZHBpLTEtNTogMS41LFxuICBoaWRwaS0yOiAyLFxuICByZXRpbmE6IDIsXG4gIGhpZHBpLTM6IDNcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnVGhlIGZpcnN0IGtleSBpbiB0aGUgJGJyZWFrcG9pbnRzIG1hcCBtdXN0IGhhdmUgYSB2YWx1ZSBvZiBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gV2ViIHN0YW5kYXJkIFBpeGVscyBwZXIgaW5jaC4gKDFkZHB4IC8gJHN0ZC13ZWItZHBpKSA9IDFkcGlcbiAgLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3MtdmFsdWVzLTMvI2Fic29sdXRlLWxlbmd0aHNcbiAgJHN0ZC13ZWItZHBpOiA5NjtcblxuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIG9mIHRoZSBmb2xsb3dpbmcgYnJlYWtwb2ludFxuICAkYnAtbmV4dDogbnVsbDtcbiAgLy8gVmFsdWUgZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1taW46IG51bGw7XG4gIC8vIFZhbHVlIGZvciBtaW4td2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiBudWxsO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gSWYgbmFtZWQsIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnRcbiAgJG5hbWU6IG51bGw7XG4gIC8vIElmIHRoZSBicmVha3BvaW50IGlzIGEgSGlEUEkgYnJlYWtwb2ludFxuICAkaGlkcGk6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuXG4gIC8vIElmIGEgYnJlYWtwb2ludCBuYW1lIGlzIGdpdmVuLCBnZXQgaXRzIHZhbHVlIGZyb20gdGhlICRicmVha3BvaW50cy8kYnJlYWtwb2ludHMtaGlkcGkgbWFwLlxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgICRuYW1lOiAkYnA7XG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgICAkYnAtbmV4dDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgIH1cbiAgICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMtaGlkcGksICRicCkge1xuICAgICAgJG5hbWU6ICRicDtcbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMtaGlkcGksICRuYW1lKTtcbiAgICAgICRicC1uZXh0OiAtemYtbWFwLW5leHQtbnVtYmVyKCRicmVha3BvaW50cy1oaWRwaSwgJGJwKTtcbiAgICAgICRoaWRwaTogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciBgJGJyZWFrcG9pbnRzYCBvciBgJGJyZWFrcG9pbnRzLWhpZHBpYCBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgQGlmIG5vdCAkbmFtZSBhbmQgJGRpciA9PSAnb25seScge1xuICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICAvLyBPbmx5ICdvbmx5JyBhbmQgJ3VwJyBoYXZlIGEgbWluIGxpbWl0LlxuICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAndXAnIHtcbiAgICAkYnAtbWluOiBpZigkaGlkcGksIHN0cmlwLXVuaXQoJGJwKSwgLXpmLWJwLXRvLWVtKCRicCkpO1xuICB9XG4gIC8vIE9ubHkgJ29ubHknIGFuZCAnZG93bicgaGF2ZSBhIG1heCBsaW1pdC5cbiAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIHZhbHVlLCB1c2UgaXQgYXMgbWF4IGxpbWl0LlxuICAgIEBpZiBub3QgJG5hbWUge1xuICAgICAgJGJwLW1heDogaWYoJGhpZHBpLCBzdHJpcC11bml0KCRicCksIC16Zi1icC10by1lbSgkYnApKTtcbiAgICB9XG4gICAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgbmFtZWQsIHRoZSBtYXggbGltaXQgaXMgdGhlIGZvbGxvd2luZyBicmVha3BvaW50IC0gMXB4LlxuICAgIEBlbHNlIGlmICRicC1uZXh0IHtcbiAgICAgIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgICAgIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gICAgICAkYnAtbWF4OiBpZigkaGlkcGksICRicC1uZXh0IC0gKDEvJHN0ZC13ZWItZHBpKSwgLXpmLWJwLXRvLWVtKCRicC1uZXh0KSAtIDAuMDAxMjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdlbmVyYXRlIHRoZSBtZWRpYSBxdWVyeSBzdHJpbmcgZnJvbSBtaW4gYW5kIG1heCBsaW1pdHMuXG4gIEBpZiAkaGlkcGkge1xuICAgIC8vIEdlbmVyYXRlIHZhbHVlcyBpbiBEUEkgaW5zdGVhZCBvZiBEUFBYIGZvciBhbiBJRTktMTEvT3BlcmEgbWluaSBjb21wYXRpYmlsaXR5LlxuICAgIC8vIFNlZSBodHRwczovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1tZWRpYS1yZXNvbHV0aW9uXG4gICAgJGJwLW1pbi1kcGk6IGlmKCRicC1taW4sICRicC1taW4gKiAkc3RkLXdlYi1kcGkgKiAxZHBpLCAkYnAtbWluKTtcbiAgICAkYnAtbWF4LWRwaTogaWYoJGJwLW1heCwgJGJwLW1heCAqICRzdGQtd2ViLWRwaSAqIDFkcGksICRicC1tYXgpO1xuICAgIEByZXR1cm4gemYtc3RyLWpvaW4oXG4gICAgICAtemYtYnAtam9pbigkYnAtbWluLCAkYnAtbWF4LCAnLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvJywgJy13ZWJraXQtbWF4LWRldmljZS1waXhlbC1yYXRpbycpLFxuICAgICAgLXpmLWJwLWpvaW4oJGJwLW1pbi1kcGksICRicC1tYXgtZHBpLCAnbWluLXJlc29sdXRpb24nLCAnbWF4LXJlc29sdXRpb24nKSxcbiAgICAgICcsICcpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIC16Zi1icC1qb2luKCRicC1taW4sICRicC1tYXgpO1xuICB9XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgYW5kIGAkYnJlYWtwb2ludHMtaGlkcGlgIG1hcHMsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBJZiBtdWx0aXBsZSB2YWx1ZXMgYXJlIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgZ2VuZXJhdGUgYSBtZWRpYSBxdWVyeSBmb3IgZWFjaCBvZiB0aGVtIGFzIGRlc2NyaWJlZCBhYm92ZS5cbi8vLyBTaW5jZSB0aGUgY29udGVudCBpcyBkdXBsaWNhdGVkIGZvciBlYWNoIGJyZWFrcG9pbnQsIHRoaXMgbWl4aW4gc2hvdWxkIG9ubHkgYmUgdXNlZCB3aXRoIHByb3BlcnRpZXMgdGhhdFxuLy8vIGNoYW5nZSBhY3Jvc3MgYnJlYWtwb2ludHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWVzLi4uIC0gQnJlYWtwb2ludCBuYW1lIG9yIHB4L3JlbS9lbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWVzLi4uKSB7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCR2YWx1ZXMpIHtcbiAgICAkdmFsdWU6IG50aCgkdmFsdWVzLCAkaSk7XG4gICAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgICRicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCBudGgoJHZhbHVlLCAxKSk7XG4gICAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG4gICAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgICAkZGlyOiBpZihsZW5ndGgoJHZhbHVlKSA+IDEsIG50aCgkdmFsdWUsIDIpLCB1cCk7XG5cbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG5cbiAgICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICAgIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgJC16Zi1zaXplOiBudGgoJHZhbHVlLCAxKSAhZ2xvYmFsOyAvLyBnZXQgdGhlIGZpcnN0IHZhbHVlIHRvIGFjY291bnQgZm9yIGBvbmx5YCBhbmQgYGRvd25gIGtleXdvcmRzXG5cbiAgICAvLyBJZiAkc3RyIGlzIHN0aWxsIGFuIGVtcHR5IHN0cmluZywgbm8gbWVkaWEgcXVlcnkgaXMgbmVlZGVkXG4gICAgQGlmICRzdHIgPT0gJycge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgICBAZWxzZSB7XG4gICAgICAvLyBGb3IgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICRwcmludC1icmVha3BvaW50LCBhZGQgcHJpbnQgdG8gdGhlIG1lZGlhIHR5cGVzXG4gICAgICAvLyBnZW5lcmF0ZSBwcmludCBpZiB0aGUgYnJlYWtwb2ludCBhZmZlY3RzIHRoZSBwcmludC1icmVha3BvaW50IChvciBzbWFsbGVyKS5cbiAgICAgIC8vIFRoaXMgbWVhbnMgdGhlIGN1cnJlbnQgY29uZGl0aW9uIG9ubHkgbmVlZHMgdG8gYmUgZXh0ZW5kZWQgc28gJ2Rvd24nIGFsd2F5cyBnZW5lcmF0ZXMgcHJpbnQuXG4gICAgICBAaWYgJGJwICE9IG51bGwgYW5kICgkYnAgPD0gJHBicCBvciAkZGlyID09IGRvd24pIHtcbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gQ29udmVydHMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIEZpbmQgdGhlIG5leHQgbnVtYmVyIGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJG51bWJlciAtIE51bWJlciB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIG51bWJlciBmb2xsb3dpbmcgYCRudW1iZXJgLCBpZiBgJG51bWJlcmAgd2FzIGZvdW5kLiBJZiBgJG51bWJlcmAgd2FzIG5vdCBmb3VuZCwgb3IgYCRudW1iZXJgIHdhcyB0aGUgYmlnZ2VzdCBudW1iZXIgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0LW51bWJlcigkbWFwLCAkbnVtYmVyKSB7XG5cbiAgJG5leHRfbnVtYmVyOiBudWxsO1xuXG4gIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICBAaWYgdHlwZS1vZigkdikgPT0gJ251bWJlcicgYW5kICR2ID4gJG51bWJlciBhbmQgKCRuZXh0X251bWJlciA9PSBudWxsIG9yICR2IDwgJG5leHRfbnVtYmVyKSB7XG4gICAgICAkbmV4dF9udW1iZXI6ICR2O1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5leHRfbnVtYmVyO1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBsYXN0IGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigka2V5KSB7XG4gICRsaXN0OiAoKTtcbiAgJGZvdW5kX2tleTogZmFsc2U7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJC16Zi1icmVha3BvaW50cy1rZXlzIHtcbiAgICBAaWYgKCRuYW1lID09ICRrZXkpIHtcbiAgICAgICRmb3VuZF9rZXk6IHRydWU7XG4gICAgfVxuICAgIEBpZiBub3QgJGZvdW5kX2tleSB7XG4gICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkbmFtZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IC0gYSBuYW1lZCBvciBub24tbmFtZWQgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICRsYXN0OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgJGZvdW5kOiBmYWxzZTtcblxuICAkdmFsdWU6IHVuaXRsZXNzLWNhbGMoJGJyZWFrcG9pbnQsIDFweCk7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICBAaWYgdW5pdGxlc3MtY2FsYygkdmFsKSA+ICR2YWx1ZSB7XG4gICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkbGFzdDogJGtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsYXN0O1xufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJG1hcDtcbiAgfVxuXG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgICAgJHZhbHVlOiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbi8vLyBSZXR1cm4gdGhlIGJlc3QgYnJlYWtwb2ludCB0byB1c2UgYWNjb3JkaW5nIHRvIHRoZSBjYWxsaW5nIGNvbnRleHQuIEl0IHJldHVybnMgaW4gb3JkZXI6XG4vLy8gMS4gdGhlIGdpdmVuIGAkdmFsdWVgIGFyZ3VtZW50IGlmIGl0IGlzIG5vdCBudWxsLlxuLy8vIDIuIHRoZSBnbG9iYWwgYnJlYWtwb2ludCBjb250ZXh0IGAkLXpmLXNpemVgIGlmIGl0IGlzIG5vdCBudWxsIChsaWtlIGlmIGNhbGxlZCBpbnNpZGUgdGhlbiBgYnJlYWtwb2ludCgpYCBtaXhpbilcbi8vLyAzLiB0aGUgZ2l2ZW4gYCRkZWZhdWx0YCBhcmd1bWVudC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGluIHByaW9yaXR5IGlmIG5vbi1udWxsLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRlZmF1bHQgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgYnkgZGVmYXVsdCBpZiBubyBvdGhlciB2YWx1ZSBjYW4gYmUgdXNlZC5cbi8vL1xuLy8vIEByZXR1cm4ge0tleXdvcmR9IFRoZSByZXNvbHZlZCBicmVha3BvaW50LlxuQGZ1bmN0aW9uIC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJHZhbHVlOiBudWxsLCAkZGVmYXVsdDogbnVsbCkge1xuICBAaWYgKCR2YWx1ZSAhPSBudWxsKSB7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbiAgQGVsc2UgaWYgKHZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkgYW5kIHR5cGUtb2YoJC16Zi1zaXplKSAhPSAnbnVtYmVyJykgYW5kICQtemYtc2l6ZSAhPSBudWxsIHtcbiAgICBAcmV0dXJuICQtemYtc2l6ZTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAkZGVmYXVsdDtcbiAgfVxufVxuXG4vLy8gUmV0dXJuIG1lZGlhIHF1ZXJ5IHN0cmluZyBmcm9tIHRoZSBnaXZlbiBtaW4gYW5kL29yIG1heCBsaW1pdHMuXG4vLy8gSWYgYSBsaW1pdCBpcyBlcXVhbCB0byBgbnVsbGAgb3IgYDBgLCBpdCBpcyBpZ25vcmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtaW4gWzBdIC0gTWluIG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IFswXSAtIE1heCBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1pbi1uYW1lIFsnbWluLXdpZHRoJ10gLSBOYW1lIG9mIHRoZSBtaW4gbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkZWxpbWl0ZXIgWydtYXgtd2lkdGgnXSAtIE5hbWUgb2YgdGhlIG1heCBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IE1lZGlhIFF1ZXJ5IHN0cmluZy5cbkBmdW5jdGlvbiAtemYtYnAtam9pbihcbiAgJG1pbjogMCxcbiAgJG1heDogMCxcbiAgJG1pbi1uYW1lOiAnbWluLXdpZHRoJyxcbiAgJG1heC1uYW1lOiAnbWF4LXdpZHRoJ1xuKSB7XG4gIEByZXR1cm4gemYtc3RyLWpvaW4oXG4gICAgaWYoJG1pbiBhbmQgJG1pbiA+IDAsICcoI3skbWluLW5hbWV9OiAjeyRtaW59KScsIG51bGwpLFxuICAgIGlmKCRtYXggYW5kICRtYXggPiAwLCAnKCN7JG1heC1uYW1lfTogI3skbWF4fSknLCBudWxsKSxcbiAgICAnIGFuZCAnKTtcbn1cblxuJHNtYWxsLXVwOiAnJztcbiRzbWFsbC1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuJG1lZGl1bS11cDogJyc7XG4kbWVkaXVtLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbiRsYXJnZS11cDogJyc7XG4kbGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4bGFyZ2UtdXA6ICcnO1xuJHhsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG4keHhsYXJnZS11cDogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNldCB0aGUgd2lkdGggb2YgYSBncmlkIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR3aWR0aCBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIHRvIG1ha2UgdGhlIGNvbHVtbi4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuQG1peGluIGdyaWQtY29sdW1uLXNpemUoXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICB3aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tc2l6ZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tc2l6ZVxuQG1peGluIGdyaWQtY29sLXNpemUoXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIEZpbmRzIHRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvciBvZiB0d28gaW50ZWdlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGEgLSBGaXJzdCBudW1iZXIgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGIgLSBTZWNvbmQgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3IuXG5AZnVuY3Rpb24gZ2NkKCRhLCAkYikge1xuICAvLyBGcm9tOiBodHRwOi8vcm9zZXR0YWNvZGUub3JnL3dpa2kvR3JlYXRlc3RfY29tbW9uX2Rpdmlzb3IjSmF2YVNjcmlwdFxuICBAaWYgKCRiICE9IDApIHtcbiAgICBAcmV0dXJuIGdjZCgkYiwgJGEgJSAkYik7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gYWJzKCRhKTtcbiAgfVxufVxuXG4vLy8gSGFuZGxlcyBkZWNpbWFsIGV4cG9uZW50cyBieSB0cnlpbmcgdG8gY29udmVydCB0aGVtIGludG8gYSBmcmFjdGlvbiBhbmQgdGhlbiB1c2UgYSBudGgtcm9vdC1hbGdvcml0aG0gZm9yIHBhcnRzIG9mIHRoZSBjYWxjdWxhdGlvblxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGJhc2UgbnVtYmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZXhwb25lbnQgLSBUaGUgZXhwb25lbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgcHJvZHVjdCBvZiB0aGUgZXhwb25lbnRpYXRpb24uXG5AZnVuY3Rpb24gcG93KCRiYXNlLCAkZXhwb25lbnQsICRwcmVjOiAxNikge1xuICBAaWYgKGZsb29yKCRleHBvbmVudCkgIT0gJGV4cG9uZW50KSB7XG4gICAgJHByZWMyIDogcG93KDEwLCAkcHJlYyk7XG4gICAgJGV4cG9uZW50OiByb3VuZCgkZXhwb25lbnQgKiAkcHJlYzIpO1xuICAgICRkZW5vbWluYXRvcjogZ2NkKCRleHBvbmVudCwgJHByZWMyKTtcbiAgICBAcmV0dXJuIG50aC1yb290KHBvdygkYmFzZSwgJGV4cG9uZW50IC8gJGRlbm9taW5hdG9yKSwgJHByZWMyIC8gJGRlbm9taW5hdG9yLCAkcHJlYyk7XG4gIH1cblxuICAkdmFsdWU6ICRiYXNlO1xuICBAaWYgJGV4cG9uZW50ID4gMSB7XG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgKiAkYmFzZTtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGV4cG9uZW50IDwgMSB7XG4gICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAtJGV4cG9uZW50IHtcbiAgICAgICR2YWx1ZTogJHZhbHVlIC8gJGJhc2U7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbkBmdW5jdGlvbiBudGgtcm9vdCgkbnVtLCAkbjogMiwgJHByZWM6IDEyKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9OdGhfcm9vdCNKYXZhU2NyaXB0XG4gICR4OiAxO1xuXG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJHByZWMge1xuICAgICR4OiAxIC8gJG4gKiAoKCRuIC0gMSkgKiAkeCArICgkbnVtIC8gcG93KCR4LCAkbiAtIDEpKSk7XG4gIH1cblxuICBAcmV0dXJuICR4O1xufVxuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgaGVpZ2h0IGFzIGEgcGVyY2VudGFnZSBvZiB0aGUgd2lkdGggZm9yIGEgZ2l2ZW4gcmF0aW8uXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmF0aW8gLSBSYXRpbyB0byB1c2UgdG8gY2FsY3VsYXRlIHRoZSBoZWlnaHQsIGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IEEgcGVyY2VudGFnZSB2YWx1ZSBmb3IgdGhlIGhlaWdodCByZWxhdGl2ZSB0byB0aGUgd2lkdGggb2YgYSByZXNwb25zaXZlIGNvbnRhaW5lci5cbkBmdW5jdGlvbiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbykge1xuICAkdzogbnRoKCRyYXRpbywgMSk7XG4gICRoOiBudGgoJHJhdGlvLCAzKTtcbiAgQHJldHVybiAkaCAvICR3ICogMTAwJTtcbn1cblxuLy8vIFBhcnNlIHRoZSBnaXZlbiBgJGZyYWN0aW9uYCB0byBudW1lcmF0b3JzIGFuZCBkZW51bWVyYXRvcnMuXG4vLy9cbi8vLyBAcGFyYW0geyp9ICRmcmFjdGlvbiAtIFZhbHVlIHJlcHJlc2VudGluZyBhIGZyYWN0aW9uIHRvIHBhcnNlLiBJdCBjYW4gYmUgZm9ybWF0dGVkIGFzIGA1MCVgLCBgMSBvZiAyYCwgYDEvMmAgb3IgYDUwYCAobm8gZGVub21pbmF0b3Igd291bGQgYmUgcmV0dXJuZWQpLlxuLy8vXG4vLy8gQHJldHVybiB7TGlzdH0gTGlzdCBvZiBwYXJzZWQgdmFsdWVzIHdpdGggbnVtZXJhdG9yIGF0IGZpcnN0IHBvc2l0aW9uIGFuZCBkZW51bWVyYXRvciBhcyBzZWNvbmQuIFRoZXNlIHZhbHVlcyBtYXkgYmUgbnVsbC5cbkBmdW5jdGlvbiB6Zi1wYXJzZS1mcmFjdGlvbigkZnJhY3Rpb24pIHtcblxuICBAaWYgdHlwZS1vZigkZnJhY3Rpb24pID09ICdudW1iZXInIHtcbiAgICAvLyBcIjUwJVwiXG4gICAgQGlmIHVuaXQoJGZyYWN0aW9uKSA9PSAnJScge1xuICAgICAgQHJldHVybiAoc3RyaXAtdW5pdCgkZnJhY3Rpb24pLCAxMDApO1xuICAgIH1cbiAgICBAZWxzZSBpZiAodW5pdCgkZnJhY3Rpb24pID09ICcnKSB7XG4gICAgICAvLyBcIjAuNVwiXG4gICAgICBAaWYgJGZyYWN0aW9uIDwgMSB7XG4gICAgICAgIEByZXR1cm4gKCRmcmFjdGlvbiAqIDEwMCwgMTAwKTtcbiAgICAgIH1cbiAgICAgIC8vIFwiNTBcIlxuICAgICAgQGVsc2Uge1xuICAgICAgICBAcmV0dXJuICgkZnJhY3Rpb24sIG51bGwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmIHR5cGUtb2YoJGZyYWN0aW9uKSA9PSAnbGlzdCcge1xuICAgIC8vIFwiNTAgb2YgMTAwXCIsIFwiNTAvMTAwXCIuLi5cbiAgICBAaWYgbGVuZ3RoKCRmcmFjdGlvbikgPT0gM1xuICAgICAgYW5kIHR5cGUtb2YobnRoKCRmcmFjdGlvbiwgMSkgPT0gJ251bWJlcicpXG4gICAgICBhbmQgdHlwZS1vZihudGgoJGZyYWN0aW9uLCAzKSA9PSAnbnVtYmVyJykge1xuICAgICAgQHJldHVybiAobnRoKCRmcmFjdGlvbiwgMSksIG50aCgkZnJhY3Rpb24sIDMpKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIChudWxsLCBudWxsKTtcbn1cblxuLy8vIFJldHVybnMgd2hldGhlciB0aGUgZ2l2ZW4gYCR2YWx1ZWAgcmVwcmVzZW50cyBhIGZyYWN0aW9uLiBTdXBwb3J0cyBmb3JtYXRzIGxpa2UgYDUwJWAsIGAxIG9mIDJgLCBgMSBwZXIgMmAgb3IgYDEvMmAuXG4vLy9cbi8vLyBAcGFyYW0geyp9ICR2YWx1ZSAtIFZhbHVlIHRvIHRlc3QuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYWxsb3ctbm8tZGVub21pbmF0b3IgW2ZhbHNlXSAtIElmIGB0cnVlYCwgc2ltcGxlIG51bWJlcnMgd2l0aG91dCBkZW5vbWluYXRvcnMgbGlrZSBgNTBgIGFyZSBzdXBwb3J0ZWQuXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sZWFufSBgdHJ1ZWAgaWYgYCR2YWx1ZWAgcmVwcmVzZW50cyBhIGZyYWN0aW9uLCBgZmFsc2VgIG90aGVyd2lzZS5cbkBmdW5jdGlvbiB6Zi1pcy1mcmFjdGlvbigkdmFsdWUsICRhbGxvdy1uby1kZW5vbWluYXRvcjogZmFsc2UpIHtcbiAgJHBhcnNlZDogemYtcGFyc2UtZnJhY3Rpb24oJHZhbHVlKTtcbiAgQHJldHVybiBub3QobnRoKCRwYXJzZWQsIDEpID09IG51bGxcbiAgICBvciAobnRoKCRwYXJzZWQsIDIpID09IG51bGwgYW5kICRhbGxvdy1uby1kZW5vbWluYXRvciA9PSBmYWxzZSkpO1xufVxuXG4vLy8gQ2FsY3VsYXRlIGEgcGVyY2VudGFnZSBmcm9tIGEgZ2l2ZW4gZnJhY3Rpb24uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkZnJhY3Rpb24gLSBWYWx1ZSByZXByZXNlbnRpbmcgYSBmcmFjdGlvbiB0byB1c2UgdG8gY2FsY3VsYXRlIHRoZSBwZXJjZW50YWdlLCBmb3JtYXR0ZWQgYXMgYDUwYCAocmVsYXRpdmUgdG8gYCRkZW5vbWluYXRvcmApLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGRlbm9taW5hdG9yIC0gRGVmYXVsdCB2YWx1ZSB0byB1c2UgYXMgZGVub21pbmF0b3Igd2hlbiBgJGZyYWN0aW9uYCByZXByZXNlbnRzIGFuIGFic29sdXRlIHZhbHVlLlxuQGZ1bmN0aW9uIGZyYWN0aW9uLXRvLXBlcmNlbnRhZ2UoXG4gICRmcmFjdGlvbixcbiAgJGRlbm9taW5hdG9yOiBudWxsXG4pIHtcbiAgJHBhcnNlZDogemYtcGFyc2UtZnJhY3Rpb24oJGZyYWN0aW9uKTtcbiAgJHBhcnNlZC1ub21pbmF0b3I6IG50aCgkcGFyc2VkLCAxKTtcbiAgJHBhcnNlZC1kZW5vbWluYXRvcjogbnRoKCRwYXJzZWQsIDIpO1xuXG4gIEBpZiAkcGFyc2VkLW5vbWluYXRvciA9PSBudWxsIHtcbiAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgXCJmcmFjdGlvbi10by1wZXJjZW50YWdlKClcIi4gVXNlIGEgbnVtYmVyLCBkZWNpbWFsLCBwZXJjZW50YWdlLCBvciBcIm4gb2YgblwiIC8gXCJuL25cIi4nO1xuICB9XG4gIEBpZiAkcGFyc2VkLWRlbm9taW5hdG9yID09IG51bGwge1xuICAgIEBpZiB0eXBlLW9mKCRkZW5vbWluYXRvcikgPT0gJ251bWJlcicge1xuICAgICAgJHBhcnNlZC1kZW5vbWluYXRvcjogJGRlbm9taW5hdG9yO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAZXJyb3IgJ0Vycm9yIHdpdGggXCJmcmFjdGlvbi10by1wZXJjZW50YWdlKClcIi4gQSBkZWZhdWx0IFwiJGRlbm9taW5hdG9yXCIgaXMgcmVxdWlyZWQgdG8gc3VwcG9ydCBhYnNvbHV0ZSB2YWx1ZXMnO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gcGVyY2VudGFnZSgkcGFyc2VkLW5vbWluYXRvciAvICRwYXJzZWQtZGVub21pbmF0b3IpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZXMgdGhlIHdpZHRoIG9mIGEgY29sdW1uIGJhc2VkIG9uIGEgbnVtYmVyIG9mIGZhY3RvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkY29sdW1uc1xuLy8vICAgV2lkdGggb2YgdGhlIGNvbHVtbi4gQWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgcGVyY2VudGFnZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGNvbHVtbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgc2luZ2xlIGRpZ2l0IHdpbGwgbWFrZSB0aGUgY29sdW1uIHNwYW4gdGhhdCBudW1iZXIgb2YgY29sdW1ucyB3aWRlLCB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBjb2x1bW4gY291bnQgb2YgdGhlIHBhcmVudCByb3cuXG4vLy8gICAtIEEgbGlzdCBvZiB0aGUgZm9ybWF0IFwieCBvZiB5XCIgKHdpdGhvdXQgcXVvdGVzKSB3aWxsIG1ha2UgYSBjb2x1bW4gdGhhdCBpcyAqeCogY29sdW1ucyB3aWRlLCBhc3N1bWluZyAqeSogdG90YWwgY29sdW1ucyBmb3IgdGhlIHBhcmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgY2FsY3VsYXRlZCBwZXJjZW50YWdlIHZhbHVlLlxuQGZ1bmN0aW9uIGdyaWQtY29sdW1uKCRjb2x1bW5zKSB7XG4gIEByZXR1cm4gZnJhY3Rpb24tdG8tcGVyY2VudGFnZSgkY29sdW1ucywgJGRlbm9taW5hdG9yOiAkZ3JpZC1jb2x1bW4tY291bnQpO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4oXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG4gIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBQb3NpdGlvblxuICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoYXV0byk7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4gcm93LiBUaGlzIGlzIHRoZSBlcXVpdmFsZW50IG9mIGFkZGluZyBgLnJvd2AgYW5kIGAuY29sdW1uYCB0byB0aGUgc2FtZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gV2lkdGggb2YgdGhlIGd1dHRlcnMgb24gZWl0aGVyIHNpZGUgb2YgdGhlIGNvbHVtbiByb3cuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtcm93O1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gICYsXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQGZ1bmN0aW9uIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQHJldHVybiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBtaXhpbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcm93KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1yb3dcbkBtaXhpbiBncmlkLWNvbC1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCRndXR0ZXJzKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBSZXBvc2l0aW9uIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJHBvc2l0aW9uIC0gSXQgY2FuIGJlOlxuLy8vICAgKiBBIG51bWJlcjogVGhlIGNvbHVtbiB3aWxsIG1vdmUgZXF1YWwgdG8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4gY291bnRcbi8vLyAgICAgc3BlY2lmaWVkLiBBIHBvc2l0aXZlIG51bWJlciB3aWxsIHB1c2ggdGhlIGNvbHVtbiB0byB0aGUgcmlnaHQsIHdoaWxlXG4vLy8gICAgIGEgbmVnYXRpdmUgbnVtYmVyIHdpbGwgcHVsbCBpdCB0byB0aGUgbGVmdC5cbi8vLyAgICogYGNlbnRlcmA6IENvbHVtbiB3aWxsIGJlIGNlbnRlcmVkXG4vLy8gICAqIGBhdXRvYDogQ29sdW1uIHdpbGwgYmUgcHVzaGVkIHRvIHRoZSBsZWZ0IChvciB0byB0aGUgcmlnaHQgZm9yIHRoZSBsYXN0IGNvbHVtbikuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKSB7XG4gIC8vIEF1dG8gcG9zaXRpb25pbmdcbiAgQGlmICRwb3NpdGlvbiA9PSBhdXRvIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgIH1cblxuICAgIC8vIExhc3QgY29sdW1uIGFsaWdubWVudFxuICAgIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogJGdsb2JhbC1yaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQdXNoL3B1bGxcbiAgQGVsc2UgaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKCRwb3NpdGlvbiAvICRncmlkLWNvbHVtbi1jb3VudCk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG5cbiAgLy8gQ2VudGVyIHBvc2l0aW9uaW5nXG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBjZW50ZXIge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKS4gRW50ZXIgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBudW1iZXIsIFwiY2VudGVyXCIgb3IgXCJhdXRvXCIuJztcbiAgfVxufVxuXG4vLy8gUmVzZXQgYSBwb3NpdGlvbiBkZWZpbml0aW9uLlxuQG1peGluIGdyaWQtY29sdW1uLXVucG9zaXRpb24ge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbihhdXRvKTtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLy8vIE9mZnNldHMgYSBjb2x1bW4gdG8gdGhlIHJpZ2h0IGJ5IGAkbmAgY29sdW1ucy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkbiAtIFdpZHRoIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuQG1peGluIGdyaWQtY29sdW1uLW9mZnNldCgkbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiBncmlkLWNvbHVtbigkbik7XG59XG5cbi8vLyBEaXNhYmxlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mIHRoZSBsYXN0IGNvbHVtbiBpbiBhIHJvdyBhbGlnbmluZyB0byB0aGUgb3Bwb3NpdGUgZWRnZS5cbkBtaXhpbiBncmlkLWNvbHVtbi1lbmQge1xuICAvLyBUaGlzIGV4dHJhIHNwZWNpZmljaXR5IGlzIHJlcXVpcmVkIGZvciB0aGUgcHJvcGVydHkgdG8gYmUgYXBwbGllZFxuICAmOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtcG9zKCRwb3NpdGlvbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXVucG9zIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbjtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLW9mZnNldCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tb2Zmc2V0XG5AbWl4aW4gZ3JpZC1jb2wtb2ZmKCRuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgkbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1lbmQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWVuZFxuQG1peGluIGdyaWQtY29sLWVuZCB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWVuZDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTaXplcyBjaGlsZCBlbGVtZW50cyBzbyB0aGF0IGAkbmAgbnVtYmVyIG9mIGl0ZW1zIGFwcGVhciBvbiBlYWNoIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBlbGVtZW50cyB0byBkaXNwbGF5IHBlciByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJy5jb2x1bW4nXSAtIFNlbGVjdG9yKHMpIHRvIHVzZSBmb3IgY2hpbGQgZWxlbWVudHMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGd1dHRlclxuLy8vICAgVGhlIGd1dHRlciB0byBhcHBseSB0byBjaGlsZCBlbGVtZW50cy4gQWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtICRncmlkLWNvbHVtbi1ndXR0ZXIgd2lsbCB1c2UgdGhlIHZhbHVlcyBpbiB0aGUgJGdyaWQtY29sdW1uLWd1dHRlciBtYXAsIGluY2x1ZGluZyBicmVha3BvaW50IHNpemVzLlxuLy8vICAgLSBBIGZpeGVkIG51bWVyaWMgdmFsdWUgd2lsbCBhcHBseSB0aGlzIGd1dHRlciB0byBhbGwgYnJlYWtwb2ludHMuXG5AbWl4aW4gZ3JpZC1sYXlvdXQoXG4gICRuLFxuICAkc2VsZWN0b3I6ICcuY29sdW1uJyxcbiAgJGd1dHRlcjogbnVsbFxuKSB7XG4gICYgPiAjeyRzZWxlY3Rvcn0ge1xuICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgICAvLyBJZiBhICRndXR0ZXIgdmFsdWUgaXMgcGFzc2VkXG4gICAgQGlmKCRndXR0ZXIpIHtcbiAgICAgIC8vIEd1dHRlcnNcbiAgICAgIEBpZiB0eXBlLW9mKCRndXR0ZXIpID09ICdtYXAnIHtcbiAgICAgICAgQGVhY2ggJGJyZWFrcG9pbnQsICR2YWx1ZSBpbiAkZ3V0dGVyIHtcbiAgICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoJHZhbHVlKSAvIDI7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiB0eXBlLW9mKCRndXR0ZXIpID09ICdudW1iZXInIGFuZCBzdHJpcC11bml0KCRndXR0ZXIpID4gMCB7XG4gICAgICAgICRwYWRkaW5nOiByZW0tY2FsYygkZ3V0dGVyKSAvIDI7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgIH1cblxuICAgICY6bnRoLW9mLXR5cGUoI3skbn1uKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBleHRyYSBDU1MgdG8gYmxvY2sgZ3JpZCBjaGlsZHJlbiBzbyB0aGUgbGFzdCBpdGVtcyBpbiB0aGUgcm93IGNlbnRlciBhdXRvbWF0aWNhbGx5LiBBcHBseSB0aGlzIHRvIHRoZSBjb2x1bW5zLCBub3QgdGhlIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBpdGVtcyB0aGF0IGFwcGVhciBpbiBlYWNoIHJvdy5cbkBtaXhpbiBncmlkLWxheW91dC1jZW50ZXItbGFzdCgkbikge1xuICBAZm9yICRpIGZyb20gMSB0byAkbiB7XG4gICAgQGlmICRpID09IDEge1xuICAgICAgJjpudGgtY2hpbGQoI3skbn1uKzEpOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogKDEwMCAtIDEwMC8kbiAqICRpKSAvIDIgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJjpudGgtY2hpbGQoI3skbn1uKzEpOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAoMTAwIC0gMTAwLyRuICogJGkpIC8gMiAqIDElO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LWJhc2UtZ3JpZC1jbGFzc2VzIHtcblxuICAvLyBHcmlkIENvbnRhaW5lclxuICAuZ3JpZC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyO1xuXG4gICAgJi5mbHVpZCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlKTtcbiAgICB9XG5cbiAgICAmLmZ1bGwge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoMTAwJSwgMCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQmFzZSBncmlkIHN0eWxlc1xuICAuZ3JpZC14IHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkO1xuICB9XG5cbiAgLmNlbGwge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoZnVsbCwgJGd1dHRlci10eXBlOiBub25lKTtcblxuICAgICYuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoYXV0byk7XG4gICAgfVxuXG4gICAgJi5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgfVxuXG4gIH1cbiAgLmdyaWQteCB7XG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoYXV0bywgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICB9XG4gIH1cblxuICAvLyBBdXRvIHdpZHRoXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gVGhpcyBpcyBhIGJpdCBvZiBhIGhhY2svd29ya2Fyb3VuZCwgc2VlIHRoZXNlIGlzc3VlcyAmIFBScyBmb3IgdGhlIGJhY2tzdG9yeTpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDIyMiBhbmRcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAxNjRcbiAgICAuZ3JpZC14IHtcbiAgICAgICRzdHI6IFwiPiAuI3skLXpmLXNpemV9LXNocmluaywgPiAuI3skLXpmLXNpemV9LWZ1bGxcIjtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICRzdHI6ICRzdHIgKyBcIiwgPiAuI3skLXpmLXNpemV9LSN7JGl9XCJcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbChhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIFwic2hyaW5rXCIgbW9kaWZpZXJcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tc2hyaW5rIHtcbiAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstaG9yaXpvbnRhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHdpZHRoIHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi14YCBub3Qgb24gYC5ncmlkLXhgXG4gIC5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC8vIFJlc2V0IGhlaWdodCB3aGVuIHVzaW5nIGAuZ3JpZC1tYXJnaW4teWAgbm90IG9uIGAuZ3JpZC15YFxuICAuZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbkBtaXhpbiAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGNsYXNzLWJyZWFrcG9pbnQsICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsKSB7XG4gICRwcmVmaXg6IGlmKCRjbGFzcy1icmVha3BvaW50ID09ICQtemYtemVyby1icmVha3BvaW50LCAnJywgJyN7JGNsYXNzLWJyZWFrcG9pbnR9LScpO1xuICA+IC4jeyRwcmVmaXh9YXV0byB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKGF1dG8sICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gID4gLiN7JHByZWZpeH1zaHJpbmsge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICRjbGFzc25hbWU6IGlmKCR2ZXJ0aWNhbCwgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScsICcuI3skY2xhc3MtYnJlYWtwb2ludH0tI3skaX0nKTtcblxuICAgID4gI3skY2xhc3NuYW1lfSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoXG4gICRndXR0ZXItcG9zaXRpb246IGxlZnQgcmlnaHQsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICR3cmFwcGluZy1zZWxlY3RvcjogJy5ncmlkLW1hcmdpbi14J1xuKXtcbiAgI3skd3JhcHBpbmctc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSwgJGd1dHRlci1wb3NpdGlvbjogJGd1dHRlci1wb3NpdGlvbik7XG5cbiAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKCR2ZXJ0aWNhbDogJHZlcnRpY2FsLCAkb3V0cHV0OiAoc2l6ZSBndXR0ZXJzKSk7XG4gICAgfVxuXG4gICAgLy8gYmFzZSBzdHlsZXMgbmVlZCB0byBhbGwgYmUgYmVmb3JlIHRoZSBhdXRvIGFuZCBzaHJpbmsgc3R5bGVzXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkgYW5kICQtemYtc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC5jZWxsIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsKCR2ZXJ0aWNhbDogJHZlcnRpY2FsLCAkb3V0cHV0OiAoc2l6ZSBndXR0ZXJzKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuXG4gICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgLy8gZm9yIGFsbCBwcmlvciBicmVha3BvaW50cy5cbiAgICAgIC8vIEFzIHRoZWlyIGd1dHRlciBpcyBkZWZpbmVkIHdpdGggdGhlaXIgd2lkdGgvaGVpZ2h0LCBldmVuIGJyZWFrcG9pbnQgd2l0aG91dCBhIG5ldyBtYXJnaW4gbXVzdCBiZVxuICAgICAgLy8gZ2VuZXJhdGVkIHRvIG5vdCBoYXZpbmcgdGhlaXIgd2lkdGgvaGVpZ2h0IG92ZXJyaWRlZCBieSByZS1hZGp1c3RlZCBzbWFsbGVyIGJyZWFrcG9pbnRzLlxuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGJwLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCQtemYtc2l6ZSwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQYWRkaW5nIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzIHtcbiAgLmdyaWQtcGFkZGluZy14IHtcblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIGdyaWRzIHdpdGhpbiBgZ3JpZC1jb250YWluZXIvZ3JpZC1jb250YWluZXIuZmx1aWRgXG4gICAgLy8gVGhpcyBhbGxvd3MgbWFyZ2luIGFuZCBwYWRkaW5nIGdyaWRzIHRvIGxpbmUgdXAgd2l0aCBlYWNob3RoZXJcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+ICYge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQmxvY2sgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRvdXRwdXQ6IChzaXplKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLy8gVGhpcyBpcyBwdXJlbHkgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycyAtIHRoZSBtYXJnaW4gZ3JpZCBoYXMgdG8gZ28gYmFjayBhbmQgYWRqdXN0IHdpZHRocyAob3IgaGVpZ2h0cylcbiAgICAgICAgLy8gZm9yIHByaW9yIGJyZWFrcG9pbnRzIGJhc2VkIG9uIHRoZSByZXNwb25zaXZlIGd1dHRlci5cbiAgICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgQGlmKG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkYnApKSB7XG4gICAgICAgICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JGJwfS11cC0jeyRpfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItdHlwZTogbWFyZ2luLCAkb3V0cHV0OiAoc2l6ZSkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItdHlwZTogbWFyZ2luLCAkb3V0cHV0OiAoc2l6ZSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbGxhcHNlIGNsYXNzZXNcbkBtaXhpbiB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICAgIC4jeyRicH0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAgIC4jeyRicH0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9mZnNldCBjbGFzc2VzXG5AbWl4aW4geHktb2Zmc2V0LWNlbGwtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvLCAkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC1tYXJnaW4teCA+IC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBWZXJ0aWNhbCBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgIH1cbiAgfVxuXG4gIC5ncmlkLXkge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQodmVydGljYWwsIGZhbHNlKTtcblxuXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXJlc2V0KCk7XG4gICAgfVxuXG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoYXV0bywgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgfVxuXG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgLy8gVGhpcyBpcyBhIGJpdCBvZiBhIGhhY2svd29ya2Fyb3VuZCwgc2VlIHRoZXNlIGlzc3VlcyBhbmQgUFJzIGZvciB0aGUgYmFja3N0b3J5OlxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTAyNDRcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDIyMiBhbmRcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDE2NFxuICAgICAgJHN0cjogXCI+IC4jeyQtemYtc2l6ZX0tc2hyaW5rLCA+IC4jeyQtemYtc2l6ZX0tZnVsbFwiO1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgJHN0cjogJHN0ciArIFwiLCA+IC4jeyQtemYtc2l6ZX0tI3skaX1cIlxuICAgICAgfVxuICAgICAgI3skc3RyfSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIC8vIFJlc3BvbnNpdmUgXCJhdXRvXCIgbW9kaWZpZXJcbiAgICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsKGF1dG8sICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9O1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBSZXNwb25zaXZlIHdpZHRoIG1vZGlmaWVyc1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIG5lc3RlZCBncmlkc1xuICAgICAgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUsICRndXR0ZXItcG9zaXRpb246IHRvcCBib3R0b20pO1xuICAgICAgfVxuXG4gICAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgICA+IC5jZWxsIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRndXR0ZXItcG9zaXRpb246IHRvcCBib3R0b20pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXModG9wIGJvdHRvbSwgdHJ1ZSwgJy5ncmlkLW1hcmdpbi15Jyk7XG4gIH1cblxufVxuXG5AbWl4aW4geHktZnJhbWUtZ3JpZC1jbGFzc2VzKCR2ZXJ0aWNhbC1ncmlkOiB0cnVlLCAkbWFyZ2luLWdyaWQ6IHRydWUpIHtcbiAgLy8gRnJhbWVkIGdyaWQgc3R5bGVzXG4gIC5ncmlkLWZyYW1lIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICB9XG5cbiAgLmNlbGwgLmdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICB9XG5cbiAgLmNlbGwtYmxvY2sge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2soKTtcbiAgfVxuXG4gIC5jZWxsLWJsb2NrLXkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2sodHJ1ZSk7XG4gIH1cblxuXG4gIC5jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgfVxuXG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuXG4gICAgLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWU7XG4gICAgfVxuXG4gICAgLmNlbGwgLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgIHdpZHRoOiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2sodHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICR2ZXJ0aWNhbC1ncmlkIHtcbiAgICAuZ3JpZC15IHtcbiAgICAgICYuZ3JpZC1mcmFtZSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAgICYuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSk7XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cbiAgICAuY2VsbCB7XG4gICAgICAuZ3JpZC15LmdyaWQtZnJhbWUge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICB9XG4gICAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAgIC5ncmlkLXkuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICAgIGhlaWdodDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRpbmNsdWRlLWJhc2U6IGZhbHNlKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgLmdyaWQtbWFyZ2luLXkuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUsIGZhbHNlLCAkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZpbmFsIGNsYXNzZXNcbkBtaXhpbiBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcyhcbiAgJGJhc2UtZ3JpZDogdHJ1ZSxcbiAgJG1hcmdpbi1ncmlkOiB0cnVlLFxuICAkcGFkZGluZy1ncmlkOiB0cnVlLFxuICAkYmxvY2stZ3JpZDogdHJ1ZSxcbiAgJGNvbGxhcHNlOiB0cnVlLFxuICAkb2Zmc2V0OiB0cnVlLFxuICAkdmVydGljYWwtZ3JpZDogdHJ1ZSxcbiAgJGZyYW1lLWdyaWQ6IHRydWVcbikge1xuXG4gIC8vIEJhc2UgZ3JpZCBzdHlsZXNcbiAgQGlmKCRiYXNlLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1iYXNlLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gTWFyZ2luIGdyaWRcbiAgQGlmKCRtYXJnaW4tZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIFBhZGRpbmcgZ3JpZFxuICBAaWYoJHBhZGRpbmctZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBCbG9jayBncmlkXG4gIEBpZigkYmxvY2stZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWJsb2NrLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gQ29sbGFwc2UgZ3V0dGVyc1xuICBAaWYoJGNvbGxhcHNlKSB7XG4gICAgQGluY2x1ZGUgeHktY29sbGFwc2UtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICAvLyBPZmZzZXQgZ3V0dGVyc1xuICBAaWYoJG9mZnNldCkge1xuICAgIEBpbmNsdWRlIHh5LW9mZnNldC1jZWxsLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGdyaWRcbiAgQGlmKCR2ZXJ0aWNhbC1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktdmVydGljYWwtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICBAaWYgKCRmcmFtZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktZnJhbWUtZ3JpZC1jbGFzc2VzKCR2ZXJ0aWNhbC1ncmlkLCAkbWFyZ2luLWdyaWQpXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGUgZ3V0dGVycyBmb3IgYSBjZWxsL2NvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgZWl0aGVyIG1hcmdpbiBvciBwYWRkaW5nLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVnYXRpdmUgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gYXBwbHkgdGhlIGd1dHRlciBhcyBhIG5lZ2F0aXZlIHZhbHVlLiBDb21tb25seSB1c2VkIGZvciBuZXN0ZWQgZ3JpZHMuXG5AbWl4aW4geHktZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG5lZ2F0aXZlOiBmYWxzZVxuKSB7XG4gICRvcGVyYXRvcjogaWYoJG5lZ2F0aXZlLCAnLScsICcnKTtcblxuICAvLyBJZiB3ZSBoYXZlIGRlY2xhcmVkIG5lZ2F0aXZlIGd1dHRlcnMsIGZvcmNlIHR5cGUgdG8gYG1hcmdpbi5cbiAgJGd1dHRlci10eXBlOiBpZigkbmVnYXRpdmUsICdtYXJnaW4nLCAkZ3V0dGVyLXR5cGUpO1xuXG4gIC8vIE91dHB1dCBvdXIgbWFyZ2luIGd1dHRlcnMuXG4gIEBpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcpIHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkZ3V0dGVycykge1xuICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogdW5xdW90ZShcIiN7JG9wZXJhdG9yfSN7JGd1dHRlcn1cIik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbnVtYmVyJykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXJzKSAvIDI7XG5cbiAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGEgbWF4IHdpZHRoIGNvbnRhaW5lciwgZGVzaWduZWQgdG8gaG91c2UgeW91ciBncmlkIGNvbnRlbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFskZ3JpZC1jb250YWluZXJdIC0gYSB3aWR0aCB0byBsaW1pdCB0aGUgY29udGFpbmVyIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJGdyaWQtY29udGFpbmVyLXBhZGRpbmddIC0gcGFkZGluZ3Mgb2YgdGhlIGNvbnRhaW5lci5cbkBtaXhpbiB4eS1ncmlkLWNvbnRhaW5lcihcbiAgJHdpZHRoOiAkZ3JpZC1jb250YWluZXIsXG4gICRwYWRkaW5nOiAkZ3JpZC1jb250YWluZXItcGFkZGluZ1xuKSB7XG4gIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRwYWRkaW5nLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuXG4gIG1heC13aWR0aDogJHdpZHRoO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgeW91ciBmbGV4IGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtob3Jpem9udGFsXSAtIEVpdGhlciBob3Jpem9udGFsIG9yIHZlcnRpY2FsIGRpcmVjdGlvbiBvZiBjZWxscyB3aXRoaW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkd3JhcCBbdHJ1ZV0gLSBJZiB0aGUgY2VsbHMgd2l0aGluIHNob3VsZCB3cmFwIG9yIG5vdC5cbkBtaXhpbiB4eS1ncmlkKFxuICAkZGlyZWN0aW9uOiBob3Jpem9udGFsLFxuICAkd3JhcDogdHJ1ZVxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gPT0gJ2hvcml6b250YWwnLCByb3csIGNvbHVtbik7XG4gICR3cmFwOiBpZigkd3JhcCwgd3JhcCwgbm93cmFwKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6ICRkaXJlY3Rpb24gJHdyYXA7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gUmV0dXJucyB0aGUgYXBwcm9wcmlhdGUgQ1NTIGZsZXggdmFsdWUgZm9yIGEgY2VsbCBiYXNlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIEFjY2VwdHMgYGZ1bGxgLCBgYXV0b2AsIGBzaHJpbmtgLCBgZ3Jvd2AsIG9yIGFueSBvdGhlciB2YWx1ZSByZXByZXNlbnRpbmcgYSBjZWxsIHNpemUgKGl0IHdpbGwgYmUgdHJlYXRlZCBhcyBgc2hyaW5rYCkuXG4vLy9cbi8vLyBAcmV0dXJucyB7TGlzdH0gVGhlIGNlbGwgZmxleCBwcm9wZXJ0eSB2YWx1ZS5cbkBmdW5jdGlvbiB4eS1jZWxsLWJhc2UoJHNpemU6IGZ1bGwpIHtcbiAgQGlmICgkc2l6ZSA9PSAnYXV0bycpIHtcbiAgICBAcmV0dXJuIDEgMSAwcHg7XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdncm93Jykge1xuICAgIEByZXR1cm4gMSAwIGF1dG87XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdzaHJpbmsnIG9yICRzaXplID09ICdmdWxsJyBvciB6Zi1pcy1mcmFjdGlvbigkc2l6ZSwgJGFsbG93LW5vLWRlbm9taW5hdG9yOiB0cnVlKSkge1xuICAgIEByZXR1cm4gMCAwIGF1dG87XG4gIH1cbiAgQHJldHVybiBudWxsO1xufVxuXG4vLy8gQ2FsY3VsYXRlIHRoZSBzaXplIG9mIGEgY2VsbCBndXR0ZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIHJldHVybnMgdGhlIHJlc3BvbnNpdmUgZ3V0dGVycyBtYXAgYCRndXR0ZXJzYC4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcnxNYXB9IFRoZSBjZWxsIGd1dHRlciBzaXplIG9yIHRoZSByZXNwb25zaXZlIGd1dHRlcnMgbWFwLlxuQGZ1bmN0aW9uIHh5LWNlbGwtZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gIC8vIEZvciBgYXV0b2AsIHJldHVybnMgdGhlIHJlc3BvbnNpdmUgbWFwIGAkZ3V0dGVyc2AuXG4gIEBpZiAoJGJyZWFrcG9pbnQgPT0gJ2F1dG8nKSB7XG4gICAgQHJldHVybiAkZ3V0dGVycztcbiAgfVxuXG4gIC8vIFVzZSB0aGUgY29udGV4dHVhbCBicmVha3BvaW50IGJ5IGRlZmF1bHQuXG4gICRicmVha3BvaW50OiAtemYtY3VycmVudC1icmVha3BvaW50KCRicmVha3BvaW50KTtcblxuICBAaWYgKCRicmVha3BvaW50KSB7XG4gICAgQHJldHVybiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkLXpmLXplcm8tYnJlYWtwb2ludCkgb3IgMDtcbiAgfVxufVxuXG4vLy8gUmV0dXJucyB0aGUgcGVyY2VudGFnZSBzaXplIG9mIGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRzaXplIFskZ3JpZC1jb2x1bW5zXSAtIFNpemUgdG8gbWFrZSB0aGUgY2VsbC4gWW91IGNhbiBwYXNzIGEgdmFsdWUgaW4gbXVsdGlwbGUgZm9ybWF0cywgc3VjaCBhcyBgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8zYC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFNpemUgb2YgdGhlIGNlbGwgKGluIHBlcmNlbnQpLlxuQGZ1bmN0aW9uIHh5LWNlbGwtc2l6ZShcbiAgJHNpemU6ICRncmlkLWNvbHVtbnNcbikge1xuICBAcmV0dXJuIGZyYWN0aW9uLXRvLXBlcmNlbnRhZ2UoJHNpemUsICRkZW5vbWluYXRvcjogJGdyaWQtY29sdW1ucyk7XG59XG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgdmFsdWUgZm9yIGEgY2VsbCBzaXplLlxuLy8vXG4vLy8gR3V0dGVycy1yZWxhdGVkIGFyZ3VtZW50cyBhcmUgcmVxdWlyZWQgZm9yIGNlbGxzIHdpdGggbWFyZ2luIGd1dHRlcnMgKGJ5IGRlZmF1bHQpIGFzIHRoZSBndXR0ZXIgaXMgaW5jbHVkZWQgaW4gdGhlIHdpZHRoLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgLCBgYXV0b2AsIGBzaHJpbmtgIG9yIGFueSBmcmFjdGlvbiBsaWtlIGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCByZXR1cm5zIGEgbWFwIG9mIHNpemVzIGFkYXB0ZWQgdG8gcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfFN0cmluZ3xNYXB9IFRoZSBjZWxsIHNpemluZyBwcm9wZXJ0eSB2YWx1ZSwgb3IgYSByZXNwb25zaXZlIG1hcCBvZiB0aGVtLlxuQGZ1bmN0aW9uIHh5LWNlbGwtc2l6ZS1jc3MoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gICRtYXJnaW4tZ3V0dGVyOiAwO1xuXG4gIEBpZiAoJHNpemUgPT0gJ2F1dG8nIG9yICRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgQHJldHVybiBhdXRvO1xuICB9XG5cbiAgLy8gRm9yIGNlbGxzIHdpdGggbWFyZ2luIGd1dHRlcnMsIHRoZSBndXR0ZXIgaXMgaW5jbHVkZWQgaW4gdGhlIHdpZHRoLlxuICBAaWYgKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgICRtYXJnaW4tZ3V0dGVyOiB4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgICBAaWYgKCRtYXJnaW4tZ3V0dGVyID09IG51bGwpIHtcbiAgICAgIEBlcnJvciAneHktY2VsbC1zaXplOiBubyBndXR0ZXJzIHdlcmUgZm91bmQgaW4gYCRndXR0ZXJzYCBmb3IgXCIkYnJlYWtwb2ludDogI3skYnJlYWtwb2ludH1cIic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHRoZSBjZWxsIHNpemUgKG51bWJlcilcbiAgJHNpemUtcmF3OiBpZigkc2l6ZSA9PSAnZnVsbCcsIDEwMCUsIHh5LWNlbGwtc2l6ZSgkc2l6ZSkpO1xuXG4gIC8vIENhbGN1bGF0ZSB0aGUgY2VsbCBDU1Mgc2l6ZSBpbmNsdWRpbmcgZ3V0dGVycyAoc3RyaW5nKVxuICAvLyBJZiB0aGUgY2VsbCBoYXMgcmVzcG9uc2l2ZSBtYXJnaW4gZ3V0dGVycywgcmV0dXJuIGEgcmVzcG9uc2l2ZSBtYXAgb2Ygc2l6ZXMuXG4gIEBpZiB0eXBlLW9mKCRtYXJnaW4tZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgJHJlc3BvbnNpdmUtY3NzLXNpemVzOiAoKTtcblxuICAgIEBlYWNoICRicCwgJG1nIGluICRtYXJnaW4tZ3V0dGVyIHtcbiAgICAgICRzaXplLWNzczogaWYoJG1nID09IDAsICRzaXplLXJhdywgY2FsYygjeyRzaXplLXJhd30gLSAje3JlbS1jYWxjKCRtZyl9KSk7XG4gICAgICAkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXM6IG1hcC1tZXJnZSgkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXMsICgkYnA6ICRzaXplLWNzcykpO1xuICAgIH1cblxuICAgIEByZXR1cm4gJHJlc3BvbnNpdmUtY3NzLXNpemVzO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIGEgc2luZ2xlIENTUyBzaXplLlxuICBAZWxzZSB7XG4gICAgJGNzcy1zaXplOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAkc2l6ZS1yYXcsIGNhbGMoI3skc2l6ZS1yYXd9IC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gICAgQHJldHVybiAkY3NzLXNpemU7XG4gIH1cbn1cblxuLy8vIFNldHMgYmFzZSBmbGV4IHByb3BlcnRpZXMgZm9yIGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIEFjY2VwdHMgYGZ1bGxgLCBgYXV0b2AsIGBzaHJpbmtgLCBgZ3Jvd2AsIG9yIGFueSBvdGhlciB2YWx1ZSByZXByZXNlbnRpbmcgYSBjZWxsIHNpemUgKGl0IHdpbGwgYmUgdHJlYXRlZCBhcyBgc2hyaW5rYCkuXG5AbWl4aW4geHktY2VsbC1iYXNlKCRzaXplOiBmdWxsKSB7XG4gICRiYXNlOiB4eS1jZWxsLWJhc2UoJHNpemUpO1xuXG4gIGZsZXg6ICN7JGJhc2V9O1xuXG4gIC8vIFNldCBiYXNlIHN0eWxlcyBmb3IgXCJmdWxsXCIgb25seVxuICBAaWYoJHNpemUgPT0gJ2Z1bGwnKSB7XG4gICAgbWluLWhlaWdodDogMHB4O1xuICAgIG1pbi13aWR0aDogMHB4O1xuICB9XG59XG5cbi8vLyBSZXNldHMgYSBjZWxscyB3aWR0aCAob3IgaGVpZ2h0IGlmIHZlcnRpY2FsIGlzIHRydWUpIGFzIHdlbGwgYXMgc3RyaXBzIGl0cyBndXR0ZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtcmVzZXQoJHZlcnRpY2FsOiB0cnVlKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCBoZWlnaHQsIHdpZHRoKTtcbiAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgbWF4LSN7JGRpcmVjdGlvbn06IG5vbmU7XG59XG5cbi8vLyBTZXRzIHNpemluZyBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEd1dHRlcnMtcmVsYXRlZCBhcmd1bWVudHMgYXJlIHJlcXVpcmVkIGZvciBjZWxscyB3aXRoIG1hcmdpbiBndXR0ZXJzIChieSBkZWZhdWx0KSBhcyB0aGUgZ3V0dGVyIGlzIGluY2x1ZGVkIGluIHRoZSB3aWR0aC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoMTAwJSB3aWR0aCksIGBhdXRvYCAodXNlIGFsbCBhdmFpbGFibGUgc3BhY2UpLCBgc2hyaW5rYCAodXNlIG9ubHkgdGhlIHJlcXVpcmVkIHNwYWNlKSBvciBhbnkgZnJhY3Rpb24gKGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLi4uKS5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgZ2VuZXJhdGVzIHNpemVzIGFkYXB0ZWQgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycy4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXNpemUoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRzaXplczogeHktY2VsbC1zaXplLWNzcygkc2l6ZSwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGJyZWFrcG9pbnQpO1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgaGVpZ2h0LCB3aWR0aCk7XG5cbiAgQGlmICh0eXBlLW9mKCRzaXplcykgPT0gJ21hcCcpIHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkc2l6ZXMpIHtcbiAgICAgICN7JGRpcmVjdGlvbn06ICQtemYtYnAtdmFsdWU7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAjeyRkaXJlY3Rpb259OiAkc2l6ZXM7XG4gIH1cbn1cblxuLy8vIFNldHMgZ3V0dGVycyBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtudWxsXSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi4gQnkgZGVmYXVsdCBgcmlnaHQgbGVmdGAgZm9yIGhvcml6b250YWwgY2VsbHMgYW5kIGB0b3AgYm90dG9tYCBmb3IgdmVydGljYWwgY2VsbHMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCBnZW5lcmF0ZXMgcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIERpcmVjdGlvbiBvZiB0aGUgZ3V0dGVycyB0byBvdXRwdXQuIFNlZSBgJGd1dHRlci1wb3NpdGlvbmAuXG5AbWl4aW4geHktY2VsbC1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gIC8vIEdldCB0aGUgZGVmYXVsdCBndXR0ZXIgcG9zaXRpb24gYWNjb3JkaW5nIHRvIGNlbGwgZGlyZWN0aW9uXG4gIEBpZigkZ3V0dGVyLXBvc2l0aW9uID09IG51bGwpIHtcbiAgICAkZ3V0dGVyLXBvc2l0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgdG9wIGJvdHRvbSwgbGVmdCByaWdodCk7XG4gIH1cblxuICAvLyBHZXQgdGhlIGd1dHRlciB3aWR0aCBmb3IgdGhpcyBicmVha3BvaW50XG4gICRndXR0ZXItd2lkdGg6IHh5LWNlbGwtZ3V0dGVycygkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICBAaWYgKCRndXR0ZXItd2lkdGggPT0gbnVsbCkge1xuICAgIEBlcnJvciAneHktY2VsbC1ndXR0ZXJzOiBubyBndXR0ZXJzIHdlcmUgZm91bmQgaW4gYCRndXR0ZXJzYCBmb3IgXCIkYnJlYWtwb2ludDogI3skYnJlYWtwb2ludH1cIic7XG4gIH1cblxuICBAaWYgKCRndXR0ZXItdHlwZSBhbmQgJGd1dHRlci10eXBlICE9IG5vbmUpIHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXItd2lkdGgsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBjZWxsIGZvciB5b3VyIGdyaWQuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKDEwMCUgd2lkdGgpLCBgYXV0b2AgKHVzZSBhbGwgYXZhaWxhYmxlIHNwYWNlKSwgYHNocmlua2AgKHVzZSBvbmx5IHRoZSByZXF1aXJlZCBzcGFjZSkgb3IgYW55IGZyYWN0aW9uIChgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC4uLikuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbbnVsbF0gLSBbREVQUkVDQVRFRF0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW251bGxdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLiBCeSBkZWZhdWx0IGByaWdodCBsZWZ0YCBmb3IgaG9yaXpvbnRhbCBjZWxscyBhbmQgYHRvcCBib3R0b21gIGZvciB2ZXJ0aWNhbCBjZWxscy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIGdlbmVyYXRlcyByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkb3V0cHV0IFsoYmFzZSBzaXplIGd1dHRlcnMpXSAtIENlbGwgcGFydHMgdG8gb3V0cHV0LiBZb3Ugd2lsbCBuZWVkIHRvIGdlbmVyYXRlIG90aGVycyBwYXJ0cyBvZiB0aGUgY2VsbCBzZXBlcmF0ZWx5LCBpdCBtYXkgbm90IHdvcmsgcHJvcGVybHkgb3RoZXJ3aXNlLlxuQG1peGluIHh5LWNlbGwoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogbnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRvdXRwdXQ6IChiYXNlIHNpemUgZ3V0dGVycylcbikge1xuICAvLyBEZWZhdWx0IGZvciAkZ3V0dGVyLW91dHB1dFxuICBAaWYgKCRndXR0ZXItb3V0cHV0ICE9IG51bGwpIHtcbiAgICBAd2FybiAneHktY2VsbDogJGd1dHRlci1vdXRwdXQgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkLiBTZWUgbWlncmF0aW9uIG5vdGVzIGF0IGh0dHBzOi8vZ2l0LmlvL2ZvdW5kYXRpb24tNi02LTAnO1xuICAgIEBpZiAoJGd1dHRlci1vdXRwdXQgPT0gZmFsc2UpIHtcbiAgICAgICRvdXRwdXQ6IHNsLXJlbW92ZSgkb3V0cHV0LCBndXR0ZXJzKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKGluZGV4KCRvdXRwdXQsIGJhc2UpKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKCRzaXplKTtcbiAgfVxuICBAaWYgKGluZGV4KCRvdXRwdXQsIHNpemUpKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRzaXplLCAkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkYnJlYWtwb2ludCwgJHZlcnRpY2FsKTtcbiAgfVxuICBAaWYgKGluZGV4KCRvdXRwdXQsIGd1dHRlcnMpKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ndXR0ZXJzKCRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwpO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgc2l6ZWQgZ3JpZC4gVXNlZCB0byBnZW5lcmF0ZSBvdXIgZ3JpZCBjbGFzc2VzLlxuLy8vXG4vLy8gYHh5LWNlbGwtc3RhdGljKClgIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZC5cbi8vLyBVc2UgYHh5LWNlbGwoKWAgaW5zdGVhZCB3aXRoIGAkb3V0cHV0OiAoc2l6ZSBndXR0ZXJzKWAgdG8gbm90IGdlbmVyYXRlIHRoZSBjZWxsIGJhc2UuXG4vLy8gU2VlIG1pZ3JhdGlvbiBub3RlcyBhdCBodHRwczovL2dpdC5pby9mb3VuZGF0aW9uLTYtNi0wXG4vLy9cbi8vLyBAZGVwcmVjYXRlZCB2Ni42LjBcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoMTAwJSB3aWR0aCksIGBhdXRvYCAodXNlIGFsbCBhdmFpbGFibGUgc3BhY2UpLCBgc2hyaW5rYCAodXNlIG9ubHkgdGhlIHJlcXVpcmVkIHNwYWNlKSBvciBhbnkgZnJhY3Rpb24gKGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLi4uKS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzLiBBbHdheXMgYHRydWVgIGZvciBtYXJnaW4gZ3V0dGVycy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtc3RhdGljKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gIEB3YXJuICd4eS1jZWxsLXN0YXRpYygpIG1peGluIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZC4gVXNlIFwieHktY2VsbCgpXCIgaW5zdGVhZC4gU2VlIG1pZ3JhdGlvbiBub3RlcyBhdCBodHRwczovL2dpdC5pby9mb3VuZGF0aW9uLTYtNi0wJztcblxuICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAkZ3V0dGVyLXBvc2l0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgdG9wIGJvdHRvbSwgbGVmdCByaWdodCk7XG5cbiAgJC1ndXR0ZXItb3V0cHV0OiBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicsIHRydWUsICRndXR0ZXItb3V0cHV0KTtcbiAgJC1ndXR0ZXItbWFyZ2luOiBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicsICRndXR0ZXIsIDApO1xuXG4gIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICQtZ3V0dGVyLW1hcmdpbiwgJHZlcnRpY2FsKTtcbiAgQGlmICgkLWd1dHRlci1vdXRwdXQpIHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXIsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBTaXplcyBjaGlsZCBlbGVtZW50cyBzbyB0aGF0IGAkbmAgbnVtYmVyIG9mIGl0ZW1zIGFwcGVhciBvbiBlYWNoIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBlbGVtZW50cyB0byBkaXNwbGF5IHBlciByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJy5jZWxsJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW251bGxdIC0gW0RFUFJFQ0FURURdIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtudWxsXSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi4gQnkgZGVmYXVsdCBgcmlnaHQgbGVmdGAgZm9yIGhvcml6b250YWwgY2VsbHMgYW5kIGB0b3AgYm90dG9tYCBmb3IgdmVydGljYWwgY2VsbHMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBicmVha3BvaW50IHRvIHVzZSBmb3IgdGhlIGNlbGwgZ2VuZXJhdGlvbi4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRvdXRwdXQgWyhiYXNlIHNpemUgZ3V0dGVycyldIC0gQ2VsbCBwYXJ0cyB0byBvdXRwdXQuIFlvdSB3aWxsIG5lZWQgdG8gZ2VuZXJhdGUgb3RoZXJzIHBhcnRzIG9mIHRoZSBjZWxsIHNlcGVyYXRlbHksIGl0IG1heSBub3Qgd29yayBjb3JyZWN0bHkgb3RoZXJ3aXNlLlxuQG1peGluIHh5LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLW91dHB1dDogbnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRvdXRwdXQ6IChiYXNlIHNpemUgZ3V0dGVycylcbikge1xuICAkc2l6ZTogcGVyY2VudGFnZSgxLyRuKTtcblxuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKCRzaXplLCAkZ3V0dGVyLW91dHB1dCwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbiwgJGJyZWFrcG9pbnQsICR2ZXJ0aWNhbCwgJG91dHB1dCk7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDb2xsYXBzZXMgdGhlIGdyaWQgYSBjZWxscyB3aXRoaW4gaXQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsuY2VsbF0gLSBUaGUgY2hpbGQgZWxlbWVudCB0byByZW1vdmUgdGhlIGd1dHRlciBmcm9tLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHJlbW92ZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9ucyB0byByZW1vdmUgZ3V0dGVycyBmcm9tLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRtaW4tYnJlYWtwb2ludCBbJC16Zi16ZXJvLWJyZWFrcG9pbnRdIC0gTWluaW11bSBicmVha3BvaW50IGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBmb3Igd2hpY2ggdG8gY29sbGFwc2UgdGhlIGd1dHRlci5cbkBtaXhpbiB4eS1ncmlkLWNvbGxhcHNlKFxuICAkc2VsZWN0b3I6ICcuY2VsbCcsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbWluLWJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50XG4pIHtcbiAgLy8gRmlyc3QsIGxldHMgbmVnYXRlIGFueSBtYXJnaW5zIG9uIHRoZSB0b3AgbGV2ZWxcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICB9XG5cbiAgICAgID4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkZXhjbHVkZWQtYnBzOiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRtaW4tYnJlYWtwb2ludCk7XG5cbiAgICAvLyBPdXRwdXQgbmV3IHdpZHRocyB0byBub3QgaW5jbHVkZSBndXR0ZXJzXG4gICAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmKHNsLWNvbnRhaW4oJGV4Y2x1ZGVkLWJwcywgJGJwKSkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgICAgICA+IC4jeyRicH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnApIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBwYWRkaW5nLSN7JHZhbHVlfTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIENTUyB2YWx1ZSB0byBvZmZzZXQgYSBjZWxsLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBTaXplIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYHh5LWNlbGwoKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIE1hcCBvZiBndXR0ZXJzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSBUaGUgdHlwZSBvZiBndXR0ZXIgdG8gdXNlLiBDYW4gYmUgYG1hcmdpbmAgb3IgYHBhZGRpbmdgXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcnxTdHJpbmd9IFRoZSBjZWxsIG9mZnNldCBwcm9wZXJ0eSB2YWx1ZS5cbkBmdW5jdGlvbiB4eS1jZWxsLW9mZnNldChcbiAgJG4sXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiBudWxsXG4pIHtcbiAgJGJyZWFrcG9pbnQ6IC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQsICRkZWZhdWx0OiAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gICRzaXplOiB4eS1jZWxsLXNpemUoJG4pO1xuXG4gICRvZmZzZXQ6ICRzaXplO1xuICBAaWYgKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKHh5LWNlbGwtZ3V0dGVycygkZ3V0dGVycywgJGJyZWFrcG9pbnQpIC8gMik7XG4gICAgJG9mZnNldDogaWYoJGd1dHRlciA9PSAwLCAkc2l6ZSwgY2FsYygjeyRzaXplfSArICN7JGd1dHRlcn0pKTtcbiAgfVxuICBAcmV0dXJuICRvZmZzZXQ7XG59XG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodC9ib3R0b20gYnkgYCRuYCBjb2x1bW5zLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBTaXplIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYHh5LWNlbGwoKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIE1hcCBvZiBndXR0ZXJzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSBUaGUgdHlwZSBvZiBndXR0ZXIgdG8gdXNlLiBDYW4gYmUgYG1hcmdpbmAgb3IgYHBhZGRpbmdgXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJGJyZWFrcG9pbnQgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgZm9yIGAkZ3V0dGVyc2AuIEl0IGNhbiBiZSBhIGJyZWFrcG9pbnQgbmFtZSwgbGlzdCBvZiBicmVha3BvaW50cyBvciBgYXV0b2AgZm9yIGFsbCBicmVha3BvaW50cy4gSWYgYSBsaXN0IGlzIGdpdmVuLCBtZWRpYS1xdWVyaWVzIHdpbGwgYmUgZ2VuZXJhdGVkLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgdGhlIG9mZnNldC4gSWYgc2V0IHRvIHRydWUgd2lsbCBhcHBseSBtYXJnaW4tdG9wIGluc3RlYWQuXG5AbWl4aW4geHktY2VsbC1vZmZzZXQoXG4gJG4sXG4gJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICRicmVha3BvaW50OiBudWxsLFxuICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkYnJlYWtwb2ludDogLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCwgJGRlZmF1bHQ6ICQtemYtemVyby1icmVha3BvaW50KTtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsLCAndG9wJywgJGdsb2JhbC1sZWZ0KTtcblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50LWluKCRicmVha3BvaW50LCAkbWVkaWEtcXVlcmllczogJ2Zvci1saXN0cycpIHtcbiAgICAkb2Zmc2V0OiB4eS1jZWxsLW9mZnNldCgkbiwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSk7XG4gICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JG9mZnNldH07XG4gIH1cbn1cbiIsIi8vLyBNb2RpZmllcyBhIGdyaWQgdG8gZ2l2ZSBpdCBcImZyYW1lXCIgYmVoYXZpb3IgKG5vIG92ZXJmbG93LCBubyB3cmFwLCBzdHJldGNoIGJlaGF2aW9yKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVzdGVkIFtmYWxzZV0gLSBJcyBncmlkIG5lc3RlZCBvciBub3QuIElmIG5lc3RlZCBpcyB0cnVlIHRoaXMgc2V0cyB0aGUgZnJhbWUgdG8gMTAwJSBoZWlnaHQsIG90aGVyd2lzZSB3aWxsIGJlIDEwMHZoLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgW251bGxdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGluY2x1ZGUtYmFzZSBbdHJ1ZV0gLSBJbmNsdWRlIHRoZSBiYXNlIHN0eWxlcyB0aGF0IGRvbid0IHZhcnkgcGVyIGJyZWFrcG9pbnQuXG5AbWl4aW4geHktZ3JpZC1mcmFtZShcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJG5lc3RlZDogZmFsc2UsXG4gICRndXR0ZXJzOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJGluY2x1ZGUtYmFzZTogdHJ1ZVxuKSB7XG5cbiAgQGlmICRpbmNsdWRlLWJhc2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG5cbiAgQGlmICRicmVha3BvaW50ID09IG51bGwgYW5kIHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSgkdmVydGljYWwsICRuZXN0ZWQsICRndXR0ZXJzLCAkLXpmLXNpemUsIGZhbHNlKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEdldCBvdXIgZ3V0dGVycyBpZiBhcHBsaWNhYmxlXG4gICAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcblxuICAgIC8vIElmIHdlIGhhdmUgYSBndXR0ZXIsIGFkZCBpdCB0byB0aGUgd2lkdGgvaGVpZ2h0XG4gICAgQGlmICRndXR0ZXIge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKCN7JHVuaXR9ICsgI3skZ3V0dGVyfSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdncpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgaGVpZ2h0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICB3aWR0aDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBNb2RpZmllcyBhIGNlbGwgdG8gZ2l2ZSBpdCBcImJsb2NrXCIgYmVoYXZpb3IgKG92ZXJmbG93IGF1dG8sIGluZXJ0aWFsIHNjcm9sbGluZylcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuQG1peGluIHh5LWNlbGwtYmxvY2soXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkcHJvcGVydHk6IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCAnb3ZlcmZsb3cteScsICdvdmVyZmxvdy14Jyk7XG5cbiAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgfSBAZWxzZSB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xufVxuXG4vLy8gQ29udGFpbmVyIGZvciBpbnNpZGUgYSBncmlkIGZyYW1lIGNvbnRhaW5pbmcgbXVsdGlwbGUgYmxvY2tzLiBUeXBpY2FsbHkgdXNlZFxuLy8vIGFzIGEgbW9kaWZpZXIgZm9yIGEgYC5jZWxsYCB0byBhbGxvdyB0aGUgY2VsbCB0byBwYXNzIGFsb25nIGZsZXggc2l6aW5nXG4vLy8gY29uc3RyYWludHMgLyBmcm9tIHBhcmVudHMgdG8gY2hpbGRyZW4uXG5AbWl4aW4geHktY2VsbC1ibG9jay1jb250YWluZXIoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG5cbiAgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgRmxleGJveCBVdGlsaXRpZXNcbi8vLy9cbi8vXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGNvdW50IG9mIHNvdXJjZSBvcmRlcmluZ2Bcbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNiAhZGVmYXVsdDtcblxuLy8vIFF1aWNrbHkgZGlzYWJsZS9lbmFibGUgUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgVmFuaWxsYSBGbGV4IEhlbHBlcnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZSAhZGVmYXVsdDtcblxuQG1peGluIGZsZXgtaGVscGVycyB7XG4gIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgLmZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50cykge1xuICAgIC8vIExvb3AgdGhyb3VnaCBSZXNwb25zaXZlIEJyZWFrcG9pbnRzXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtYXV0byB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1ncm93IHtcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LWNsYXNzZXMge1xuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCB1c2luZyBqdXN0aWZ5LWNvbnRlbnRcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluICQtemYtZmxleC1qdXN0aWZ5IHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgIH1cbiAgfVxuICBcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgU3BlY2lmaWNhbGx5IGZvciBWZXJ0aWNhbCBNZW51XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiBtYXAtcmVtb3ZlKCQtemYtZmxleC1qdXN0aWZ5LCAnanVzdGlmeScsICdzcGFjZWQnKSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgICYudmVydGljYWwge1xuICAgICAgICAmLm1lbnUgPiBsaSA+IGEge1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudCB1c2luZyBhbGlnbi1pdGVtcyBhbmQgYWxpZ24tc2VsZlxuICBAZWFjaCAkdmRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWFsaWduIHtcbiAgICAuYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeTogJHZkaXIpO1xuICAgIH1cblxuICAgIC5hbGlnbi1zZWxmLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZigkeTogJHZkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENlbnRyYWwgYWxpZ25tZW50IG9mIGNvbnRlbnRcbiAgLmFsaWduLWNlbnRlci1taWRkbGUge1xuICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6IGNlbnRlciwgJHk6IG1pZGRsZSk7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLy8gU291cmNlIG9yZGVyaW5nXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tb3JkZXItI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LW9yZGVyKCRpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWYW5pbGxhIEZsZXhib3ggSGVscGVyc1xuICBAaW5jbHVkZSBmbGV4LWhlbHBlcnM7XG59XG4iLCJAZnVuY3Rpb24gLXpmLWZsZXgtanVzdGlmeSgkdGV4dC1kaXJlY3Rpb24pe1xuICAkLXpmLWZsZXgtanVzdGlmeTogKFxuICAgICdsZWZ0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1lbmQsIGZsZXgtc3RhcnQpLFxuICAgICdyaWdodCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtc3RhcnQsIGZsZXgtZW5kKSxcbiAgICAnY2VudGVyJzogY2VudGVyLFxuICAgICdqdXN0aWZ5Jzogc3BhY2UtYmV0d2VlbixcbiAgICAnc3BhY2VkJzogc3BhY2UtYXJvdW5kLFxuICApO1xuXG4gIEByZXR1cm4gJC16Zi1mbGV4LWp1c3RpZnk7XG59XG5cblxuJC16Zi1mbGV4LWFsaWduOiAoXG4gICd0b3AnOiBmbGV4LXN0YXJ0LFxuICAnYm90dG9tJzogZmxleC1lbmQsXG4gICdtaWRkbGUnOiBjZW50ZXIsXG4gICdzdHJldGNoJzogc3RyZXRjaCxcbik7XG5cbiQtemYtZmxleC1kaXJlY3Rpb246IChcbiAgJ3Jvdyc6IHJvdyxcbiAgJ3Jvdy1yZXZlcnNlJzogcm93LXJldmVyc2UsXG4gICdjb2x1bW4nOiBjb2x1bW4sXG4gICdjb2x1bW4tcmV2ZXJzZSc6IGNvbHVtbi1yZXZlcnNlLFxuKTtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBieSBhZGRpbmcgYGRpc3BsYXk6IGZsZXhgIHRvIHRoZSBlbGVtZW50LlxuQG1peGluIGZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgYWxpZ25zIHRoZSBpdGVtcyB3aXRoaW4gYSBmbGV4IGNvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHggW251bGxdIC0gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYGxlZnRgLCBgcmlnaHRgLCBgY2VudGVyYCwgYGp1c3RpZnlgLCBvciBgc3BhY2VkYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IGhvcml6b250YWwgYWxpZ25tZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduKCR4OiBudWxsLCAkeTogbnVsbCkge1xuICBAaWYgJHgge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtanVzdGlmeSwgJHgpIHtcbiAgICAgICR4OiBtYXAtZ2V0KCQtemYtZmxleC1qdXN0aWZ5LCAkeCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHh9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBob3Jpem9udGFsIGFsaWdubWVudC4gVXNlIGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnksIG9yIHNwYWNlZC4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgdmVydGljYWwgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGp1c3RpZnktY29udGVudDogJHg7XG4gIGFsaWduLWl0ZW1zOiAkeTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgYWxpZ24gYSBzaW5nbGUgY29sdW1uIHdpdGhpbiBhIGZsZXggcm93LiBBcHBseSB0aGlzIG1peGluIHRvIGEgZmxleCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbi1zZWxmKCR5OiBudWxsKSB7XG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLWNvbHVtbi1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGFsaWduLXNlbGY6ICR5O1xufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc291cmNlIG9yZGVyIG9mIGEgZmxleCBjaGlsZC4gQ2hpbGRyZW4gd2l0aCBsb3dlciBudW1iZXJzIGFwcGVhciBmaXJzdCBpbiB0aGUgbGF5b3V0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3JkZXIgWzBdIC0gT3JkZXIgbnVtYmVyIHRvIGFwcGx5LlxuQG1peGluIGZsZXgtb3JkZXIoJG9yZGVyOiAwKSB7XG4gIG9yZGVyOiAkb3JkZXI7XG59XG5cbi8vLyBDaGFuZ2UgZmxleC1kaXJlY3Rpb25cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW3Jvd10gLSBGbGV4IGRpcmVjdGlvbiB0byB1c2UuIENhbiBiZVxuLy8vICAgLSByb3cgKGRlZmF1bHQpOiBzYW1lIGFzIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIHJvdy1yZXZlcnNlOiBvcHBvc2l0ZSB0byB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSBjb2x1bW46IHNhbWUgYXMgcm93IGJ1dCB0b3AgdG8gYm90dG9tXG4vLy8gICAtIGNvbHVtbi1yZXZlcnNlOiBzYW1lIGFzIHJvdy1yZXZlcnNlIHRvcCB0byBib3R0b21cbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uOiByb3cpIHtcbiAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7XG4gICAgfVxuICAgICRoZWFkZXItc3R5bGVzOiBtYXAtbWVyZ2UoJGhlYWRlci1zdHlsZXMsICgkc2l6ZTogJGhlYWRlci1tYXApKTtcbiAgfVxuICBAcmV0dXJuICRoZWFkZXItc3R5bGVzO1xufVxuXG4vLyBJZiBpdCBleGlzdHMgJGhlYWRlcnMtc2l6ZXMgaXMgdXNlZCB0byBidWlsZCAkaGVhZGVyLXN0eWxlcy4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhoZWFkZXItc2l6ZXMpIHtcbiAgJGhlYWRlci1zdHlsZXM6IGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpO1xufVxuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYDxzbWFsbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHNtYWxsLWZvbnQtc2l6ZTogODAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYDxzbWFsbD5gIGVsZW1lbnRzIHdoZW4gcGxhY2VkIGluc2lkZSBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5zaWRlIGA8cD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2QgZm9yIHBhcmFncmFwaCB0ZXh0LlxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gVXNlIHRoZSBgLmNvZGUtaW5saW5lYCBjb21wb25lbnQgYXMgZGVmYXVsdCBmb3IgYDxjb2RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGVuYWJsZS1jb2RlLWlubGluZTogdHJ1ZTtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBVc2UgdGhlIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50IGFzIGRlZmF1bHQgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRlbmFibGUtY2l0ZS1ibG9jazogdHJ1ZTtcblxuLy8vIEZvbnQgZmFtaWx5IGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gYm9yZGVyIHN0eWxlIGZvciBgPGFiYnI+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWJhc2Uge1xuICAvLyBUeXBvZ3JhcGh5IHJlc2V0c1xuICBkaXYsXG4gIGRsLFxuICBkdCxcbiAgZGQsXG4gIHVsLFxuICBvbCxcbiAgbGksXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYsXG4gIHByZSxcbiAgZm9ybSxcbiAgcCxcbiAgYmxvY2txdW90ZSxcbiAgdGgsXG4gIHRkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBhcmFncmFwaHNcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG4gIH1cblxuICAvLyBFbXBoYXNpemVkIHRleHRcbiAgZW0sXG4gIGkge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFN0cm9uZyB0ZXh0XG4gIHN0cm9uZyxcbiAgYiB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTbWFsbCB0ZXh0XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBIZWFkaW5nc1xuICBoMSwgLmgxLFxuICBoMiwgLmgyLFxuICBoMywgLmgzLFxuICBoNCwgLmg0LFxuICBoNSwgLmg1LFxuICBoNiwgLmg2IHtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG5cbiAgICBzbWFsbCB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSGVhZGluZyBzdHlsZXNcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc3R5bGVzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkaGVhZGVyLCAkaGVhZGVyLWRlZnMgaW4gJGhlYWRlcnMge1xuICAgICAgICAkZm9udC1zaXplLXRlbXA6IDFyZW07XG4gICAgICAgICN7JGhlYWRlcn0sIC4jeyRoZWFkZXJ9IHtcblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZnMpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZzKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGgpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYygkaGVhZGVyLWxpbmVoZWlnaHQsICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtdCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYikpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJGhlYWRlci1tYXJnaW4tYm90dG9tKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBMaW5rc1xuICBhIHtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogJGFuY2hvci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvcml6b250YWwgcnVsZVxuICBociB7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBtYXgtd2lkdGg6ICRoci13aWR0aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAkaHItbWFyZ2luO1xuXG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhyLWJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuXG4gIC8vIExpc3RzXG4gIHVsLFxuICBvbCxcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaXN0LW1hcmdpbi1ib3R0b207XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBMaXN0IGl0ZW1zXG4gIGxpIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBVbm9yZGVyZWQgbGlzdHNcbiAgdWwge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogJGxpc3Qtc3R5bGUtdHlwZTtcbiAgfVxuXG4gIC8vIE9yZGVyZWQgbGlzdHNcbiAgb2wge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICB9XG5cbiAgLy8gTmVzdGVkIHVub3JkZXJlZC9vcmRlcmVkIGxpc3RzXG4gIHVsLCBvbCB7XG4gICAgJiAmIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5pdGlvbiBsaXN0c1xuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LW1hcmdpbi1ib3R0b207XG5cbiAgICBkdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tO1xuICAgICAgZm9udC13ZWlnaHQ6ICRkZWZubGlzdC10ZXJtLXdlaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBCbG9ja3F1b3Rlc1xuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgcGFkZGluZzogJGJsb2NrcXVvdGUtcGFkZGluZztcbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAmLCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSW5saW5lIENpdGF0aW9uc1xuICBAaWYgKCRlbmFibGUtY2l0ZS1ibG9jayA9PSB0cnVlKSB7XG4gICAgY2l0ZSB7XG4gICAgICAvLyBFeHRlbmRpbmcgYSBjbGFzcyBpcyBub3QgcmVjb21tZW5kZWQuXG4gICAgICAvLyBUT0RPOiBCcmVhayB0aGUgdHlwb2dyYXBoeS1iYXNlL3R5cG9ncmFwaHktaGVscGVycyBzZXBhcmF0aW9uXG4gICAgICBAZXh0ZW5kIC5jaXRlLWJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFiYnJldmlhdGlvbnNcbiAgYWJiciwgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206ICRhYmJyLXVuZGVybGluZTtcbiAgICBjdXJzb3I6IGhlbHA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRmlndXJlc1xuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvZGVcbiAgQGlmICgkZW5hYmxlLWNvZGUtaW5saW5lID09IHRydWUpIHtcbiAgICBjb2RlIHtcbiAgICAgIEBleHRlbmQgLmNvZGUtaW5saW5lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3Igc3RhdGlzdGljIG51bWJlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIFBzZXVkbyBjb250ZW50IGZvciBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCcgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBhcm91bmQgdGV4dCBvZiB0aGUgYC5jb2RlLWlubGluZWAgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgdGhlIGAuY29kZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLWJsb2NrLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gdW5kZXIgdGhlIGAuY29kZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNvZGUtYmxvY2stbWFyZ2luLWJvdHRvbTogMS41cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gY2l0ZS1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogJGNpdGUtY29sb3I7XG4gIGZvbnQtc2l6ZTogJGNpdGUtZm9udC1zaXplO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkY2l0ZS1wc2V1ZG8tY29udGVudDtcbiAgfVxufVxuXG4vLy8gQWRkIGJhc2ljIHN0eWxlcyBmb3IgYSBjb2RlIGhlbHBlci5cbi8vLyBTZWUgYGNvZGUtaW5saW5lYCBhbmQgYGNvZGUtYmxvY2tgIG1peGlucy5cbkBtaXhpbiBjb2RlLXN0eWxlIHtcbiAgYm9yZGVyOiAkY29kZS1ib3JkZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGNvZGUtZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbn1cblxuLy8vIE1ha2UgY29kZSBoZWxwZXIgZnJvbSB0aGUgYGNvZGUtc3R5bGVgIG1peGluIGlubGluZS5cbi8vLyBVc2VkIHRvIGdlbmVyYXRlIGAuY29kZS1pbmxpbmVgXG5AbWl4aW4gY29kZS1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG59XG5cbi8vLyBNYWtlIGNvZGUgaGVscGVyIGZyb20gdGhlIGBjb2RlLXN0eWxlYCBtaXhpbiBhIGJsb2NrLlxuLy8vIFVzZWQgdG8gZ2VuZXJhdGUgYC5jb2RlLWJsb2NrYFxuQG1peGluIGNvZGUtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG5cbiAgcGFkZGluZzogJGNvZGUtYmxvY2stcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGNvZGUtYmxvY2stbWFyZ2luLWJvdHRvbTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1oZWxwZXJzIHtcbiAgLy8gVXNlIHRvIGNyZWF0ZSBhIHN1YmhlYWRpbmcgdW5kZXIgYSBtYWluIGhlYWRlclxuICAvLyBNYWtlIHN1cmUgeW91IHBhaXIgdGhlIHR3byBlbGVtZW50cyBpbiBhIDxoZWFkZXI+IGVsZW1lbnQsIGxpa2UgdGhpczpcbiAgLy8gPGhlYWRlcj5cbiAgLy8gICA8aDE+SGVhZGluZzwvaDE+XG4gIC8vICAgPGgyPlN1YmhlYWRpbmc8L2gyPlxuICAvLyA8L2hlYWRlcj5cbiAgLnN1YmhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogJHN1YmhlYWRlci1tYXJnaW4tdG9wO1xuICAgIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkc3ViaGVhZGVyLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRzdWJoZWFkZXItY29sb3I7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYW4gaW50cm9kdWN0b3J5IGxlYWQsIGRlY2ssIGJsdXJiLCBldGMuXG4gIC5sZWFkIHtcbiAgICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxlYWQtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhIGxhcmdlIG51bWJlciB0byBkaXNwbGF5IGEgc3RhdGlzdGljXG4gIC5zdGF0IHtcbiAgICBmb250LXNpemU6ICRzdGF0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIHAgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cbiAgfVxuXG4gIHVsLCBvbCB7XG4gICAgLy8gVXNlIHRvIHJlbW92ZSBudW1iZXJzIGZyb20gb3JkZXJlZCBsaXN0ICYgYnVsbGV0cyBmcm9tIHVub3JkZXJlZCBsaXN0XG4gICAgJi5uby1idWxsZXQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmNpdGUtYmxvY2sge1xuICAgIEBpbmNsdWRlIGNpdGUtYmxvY2s7XG4gIH1cblxuICAuY29kZS1pbmxpbmUge1xuICAgIEBpbmNsdWRlIGNvZGUtc3R5bGU7XG4gICAgQGluY2x1ZGUgY29kZS1pbmxpbmU7XG4gIH1cblxuICAuY29kZS1ibG9jayB7XG4gICAgQGluY2x1ZGUgY29kZS1zdHlsZTtcbiAgICBAaW5jbHVkZSBjb2RlLWJsb2NrO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBJZiBgdHJ1ZWAsIGFsbCBlbGVtZW50cyB3aWxsIGhhdmUgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMgd2hlbiBwcmludGVkLCB0byBzYXZlIG9uIGluay5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5cyBuZXh0IHRvIGFsbCBsaW5rcyB0aGVpciBcImhyZWZcIiB3aGVuIHByaW50ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC1ocmVmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gc2Fzcy1saW50OmRpc2FibGUtYWxsXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByaW50LXN0eWxlcyB7XG4gIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgKiB7XG4gICAgICAvLyBFbnN1cmUgYSBcImJsYWNrLW9uLXdoaXRlXCIgcHJpbnQgYnkgcmVtb3ZpbmcgYmFja2dyb3VuZHMsXG4gICAgICAvLyB1c2luZyBibGFjayB0ZXh0IGV2ZXJ5d2hlcmUgYW5kIGZvcmNpbmcgdGhlIGJyb3dzZXIgdG8gZWNvbm9taXplIGluay5cbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgICBjb2xvci1hZGp1c3Q6IGVjb25vbXk7XG4gICAgICB9XG4gICAgICAvLyBPdGhlcndpc2UsIHByZXZlbnQgYW55IGVjb25vbXkgYnkgdGhlIGJyb3dzZXIuXG4gICAgICBAZWxzZSB7XG4gICAgICAgIGNvbG9yLWFkanVzdDogZXhhY3Q7XG4gICAgICB9XG5cbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4gICAgLy8gRGlzcGxheSB0aGUgVVJMIG9mIGEgbGluayBhZnRlciB0aGUgdGV4dFxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgIEBpZiAkcHJpbnQtaHJlZnMge1xuICAgICAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cihocmVmKSAnKSc7IH1cbiAgICB9XG5cbiAgICAvLyBEb24ndCBkaXNwbGF5IHRoZSBVUkwgZm9yIGltYWdlcyBvciBKYXZhU2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4gICAgLy8gRGlzcGxheSB3aGF0IGFuIGFiYnJldmlhdGlvbiBzdGFuZHMgZm9yIGFmdGVyIHRoZSB0ZXh0XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJzsgfVxuXG4gICAgLy8gUHJldmVudCBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGEgYmxvY2txdW90ZSBvciBwcmVmb3JtYXR0ZWQgdGV4dCBibG9ja1xuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gaDVicC5jb20vdFxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICAvLyBBdm9pZCBwYWdlIGJyZWFrcyBhZnRlciBhIGhlYWRpbmdcbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG5cbiAgICAvLyBIZWxwZXIgdG8gcmUtYWxsb3cgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBjZXJ0YWluIGVsZW1lbnRzIChlLmcuIHByZSwgYmxvY2txdW90ZSwgdHIpXG4gICAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b25cbi8vLy9cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBidXR0b24gZWxlbWVudHMuXG4vLy8gQHR5cGUgRm9udFxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBidXR0b24gZWxlbWVudHMuXG4vLy8gSWdub3JlZCBpZiBudWxsIChkZWZhdWx0KVxuLy8vIEB0eXBlIEZvbnQtV2VpZ2h0XG4kYnV0dG9uLWZvbnQtd2VpZ2h0OiBudWxsICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYXJvdW5kIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmaWxsIGZvciBidXR0b25zLiBDYW4gZWl0aGVyIGJlIGBzb2xpZGAgb3IgYGhvbGxvd2AuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGJ1dHRvbi1maWxsOiBzb2xpZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgZm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGJ1dHRvbnMsIHRyYW5zcGFyZW50IGJ5IGRlZmF1bHRcbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHdpZHRoIGZvciBob2xsb3cgb3V0bGluZSBidXR0b25zXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiAwLjc1cmVtLFxuICBkZWZhdWx0OiAwLjlyZW0sXG4gIGxhcmdlOiAxLjI1cmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gb3BhY2l0eSBmb3IgYSBkaXNhYmxlZCBidXR0b24uXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBob2xsb3cgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJSAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWw6IGZsaXAgZnJvbSBtYXJnaW4tcmlnaHQgdG8gbWFyZ2luLWxlZnQgZm9yIGRlZmF1bHRzXG5AaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG59XG5cbi8vLyB0cmFuc2l0aW9ucyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gQWRkaXRpb25hbCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIC5leHBhbmRlZFxuLy8vIEB0eXBlIEJvb2xlYW5cbiRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuXG4gIEBpZiAodHlwZS1vZigkYnV0dG9uLXBhZGRpbmcpID09ICdtYXAnKSB7XG4gICAgQGVhY2ggJHNpemUsICRwYWRkaW5nIGluICRidXR0b24tcGFkZGluZyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xuICB9XG5cbiAgYm9yZGVyOiAkYnV0dG9uLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gIHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcbiAgZm9udC1mYW1pbHk6ICRidXR0b24tZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcbiAgZm9udC13ZWlnaHQ6ICRidXR0b24tZm9udC13ZWlnaHQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLy8gRXhwYW5kcyBhIGJ1dHRvbiB0byBtYWtlIGl0IGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIHRoZSBleHBhbmQgYmVoYXZpb3IuIFNldCB0byBgZmFsc2VgIHRvIHJldmVyc2UgdGhpcyBiZWhhdmlvci5cbkBtaXhpbiBidXR0b24tZXhwYW5kKCRleHBhbmQ6IHRydWUpIHtcbiAgQGlmICRleHBhbmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGJhc2Ugc3R5bGVzIG9mIGEgaG9sbG93IG9yIGNsZWFyIGJ1dHRvbiBmaWxsaW5nIGFjY29yZGluZyB0byBgJGZpbGxgLlxuLy8vIFNlZSBtaXhpbiBgYnV0dG9uLWZpbGwtc3R5bGVgIGZvciB0aGUgZmlsbGluZyBzdHlsZXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZmlsbCBbJGJ1dHRvbi1maWxsXSAtIFR5cGUgb2YgZmlsbGluZyBiZXR3ZWVuIGBob2xsb3dgIGFuZCBgY2xlYXJgLiBgc29saWRgIGhhcyBubyBlZmZlY3RzLlxuQG1peGluIGJ1dHRvbi1maWxsKFxuICAkZmlsbDogJGJ1dHRvbi1maWxsXG4pIHtcbiAgQGlmICRmaWxsID09IGhvbGxvdyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgfVxuICBAZWxzZSBpZiAkZmlsbCA9PSBjbGVhciB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWNsZWFyO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGVzIG9mIGEgc29saWQvaG9sbG93L2NsZWFyIGJ1dHRvbiBmaWxsaW5nIGFjY29yZGluZyB0byBgJGZpbGxgLlxuLy8vIFNlZSBtaXhpbnMgYGJ1dHRvbi1zdHlsZWAsIGBidXR0b24taG9sbG93LXN0eWxlYCBhbmQgYGJ1dHRvbi1jbGVhci1zdHlsZWAgZm9yIGVmZmVjdHMgb2YgdmlzdWFsIHN0eWxpbmcgcGFyYW1ldGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmaWxsIFskYnV0dG9uLWZpbGxdIC0gVHlwZSBvZiBmaWxsaW5nIGJldHdlZW4gYGhvbGxvd2AgYW5kIGBjbGVhcmAuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSAtXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSAtXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIC1cbkBtaXhpbiBidXR0b24tZmlsbC1zdHlsZShcbiAgJGZpbGw6ICRidXR0b24tZmlsbCxcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yXG4pIHtcbiAgQGlmICRmaWxsID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRmaWxsID09IGhvbGxvdyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cbiAgQGVsc2UgaWYgJGZpbGwgPT0gY2xlYXIge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1jbGVhci1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gYnV0dG9uLXN0eWxlKFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzc1xuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIEBpZiAkYmFja2dyb3VuZC1ob3ZlciA9PSBhdXRvIHtcbiAgICAkYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJhY2tncm91bmQsICRsaWdodG5lc3M6ICRiYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzcyk7XG4gIH1cblxuICAvLyBEZWZhdWx0IGFuZCBkaXNhYmxlZCBzdGF0ZXNcbiAgJixcbiAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQ6aG92ZXIsICZbZGlzYWJsZWRdOmhvdmVyLFxuICAmLmRpc2FibGVkOmZvY3VzLCAmW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGJhc2Ugc3R5bGVzIG9mIGEgaG9sbG93IGJ1dHRvbi5cbi8vLyBTZWUgbWl4aW4gYGJ1dHRvbi1ob2xsb3ctc3R5bGVgIGZvciB0aGUgZmlsbGluZyBzdHlsZXMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgaG9sbG93IGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tYmFja2dyb3VuZF0gLSBUZXh0IGFuZCBib3JkZXIgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkaG92ZXItbGlnaHRuZXNzIFskYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3NdIC0gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRib3JkZXItd2lkdGggWyRidXR0b24taG9sbG93LWJvcmRlci13aWR0aF0gLSBCb3JkZXIgd2lkdGggb2YgdGhlIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24taG9sbG93LXN0eWxlKFxuICAkY29sb3I6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzLFxuICAkYm9yZGVyLXdpZHRoOiAkYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhcbikge1xuICAkY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGhvdmVyLWxpZ2h0bmVzcyk7XG5cbiAgLy8gRGVmYXVsdCBhbmQgZGlzYWJsZWQgc3RhdGVzXG4gICYsXG4gICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkOmhvdmVyLCAmW2Rpc2FibGVkXTpob3ZlcixcbiAgJi5kaXNhYmxlZDpmb2N1cywgJltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkY29sb3I7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGJhc2Ugc3R5bGVzIG9mIGEgY2xlYXIgYnV0dG9uLlxuLy8vIFNlZSBtaXhpbiBgYnV0dG9uLWNsZWFyLXN0eWxlYCBmb3IgdGhlIGZpbGxpbmcgc3R5bGVzLlxuQG1peGluIGJ1dHRvbi1jbGVhciB7XG4gICYsICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGNsZWFyIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tYmFja2dyb3VuZF0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGhvdmVyLWxpZ2h0bmVzcyBbJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXSAtIENvbG9yIGxpZ2h0bmVzcyBvbiBob3Zlci5cbkBtaXhpbiBidXR0b24tY2xlYXItc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3Ncbikge1xuICAkY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGhvdmVyLWxpZ2h0bmVzcyk7XG5cbiAgLy8gRGVmYXVsdCBhbmQgZGlzYWJsZWQgc3RhdGVzXG4gICYsXG4gICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkOmhvdmVyLCAmW2Rpc2FibGVkXTpob3ZlcixcbiAgJi5kaXNhYmxlZDpmb2N1cywgJltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vLyBBZGRzIGRpc2FibGVkIHN0eWxlcyB0byBhIGJ1dHRvbiBieSBmYWRpbmcgdGhlIGVsZW1lbnQgYW5kIHJlc2V0aW5nIHRoZSBjdXJzb3IuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvcGFjaXR5IFskYnV0dG9uLW9wYWNpdHktZGlzYWJsZWRdIC0gT3BhY2l0eSBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLlxuQG1peGluIGJ1dHRvbi1kaXNhYmxlZChcbiAgJG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZFxuKSB7XG4gIG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLy8vIEFkZHMgYSBkcm9wZG93biBhcnJvdyB0byBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgWzAuNGVtXSAtIFNpemUgb2YgdGhlIGFycm93LiBXZSByZWNvbW1lbmQgdXNpbmcgYW4gYGVtYCB2YWx1ZSBzbyB0aGUgdHJpYW5nbGUgc2NhbGVzIHdoZW4gdXNlZCBpbnNpZGUgZGlmZmVyZW50IHNpemVzIG9mIGJ1dHRvbnMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFt3aGl0ZV0gLSBDb2xvciBvZiB0aGUgYXJyb3cuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvZmZzZXQgWyRidXR0b24tcGFkZGluZ10gLSBEaXN0YW5jZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHQgb2YgdGhlIGJ1dHRvbi4gRGVmYXVsdHMgdG8gd2hhdGV2ZXIgdGhlIHJpZ2h0IHBhZGRpbmcgb2YgYSBidXR0b24gaXMuXG5AbWl4aW4gYnV0dG9uLWRyb3Bkb3duKFxuICAkc2l6ZTogMC40ZW0sXG4gICRjb2xvcjogJHdoaXRlLFxuICAkb2Zmc2V0OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KVxuKSB7XG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHNpemUsICRjb2xvciwgZG93bik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07IC8vIEFsaWducyB0aGUgYXJyb3cgd2l0aCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uXG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1yaWdodH07XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxufVxuXG4vLy8gQWRkcyBhbGwgc3R5bGVzIGZvciBhIGJ1dHRvbi4gRm9yIG1vcmUgZ3JhbnVsYXIgY29udHJvbCBvdmVyIHN0eWxlcywgdXNlIHRoZSBpbmRpdmlkdWFsIGJ1dHRvbiBtaXhpbnMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIG1ha2UgdGhlIGJ1dHRvbiBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHlsZSBbc29saWRdIC0gU2V0IHRvIGBob2xsb3dgIHRvIGNyZWF0ZSBhIGhvbGxvdyBidXR0b24uIFRoZSBjb2xvciBkZWZpbmVkIGluIGAkYmFja2dyb3VuZGAgd2lsbCBiZSB1c2VkIGFzIHRoZSBwcmltYXJ5IGNvbG9yIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uKFxuICAkZXhwYW5kOiBmYWxzZSxcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkc3R5bGU6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1iYXNlO1xuICBAaW5jbHVkZSBidXR0b24tZmlsbCgkc3R5bGUpO1xuICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkc3R5bGUsICRiYWNrZ3JvdW5kLCAkYmFja2dyb3VuZC1ob3ZlciwgJGNvbG9yKTtcblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b24oJHN0eWxlOiBub25lKTtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmV4cGFuZGVkIHsgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDsgfVxuXG4gICAgQGlmICRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZCB7XG4gICAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSBvbmx5KSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1vbmx5LWV4cGFuZGVkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSBkb3duKSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWRvd24tZXhwYW5kZWQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0pIHtcbiAgICAgICAgICAgICYuI3skc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbGlkLCBob2xsb3cgJiBjbGVhciBzdHlsZXNcbiAgICBAZWFjaCAkZmlsbGluZyBpbiAoc29saWQgaG9sbG93IGNsZWFyKSB7XG4gICAgICAkc2VsZWN0b3I6IGlmKCRidXR0b24tZmlsbCA9PSAkZmlsbGluZywgbnVsbCwgJy4jeyRmaWxsaW5nfScpO1xuXG4gICAgICAmI3skc2VsZWN0b3J9IHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwoJGZpbGxpbmcpO1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkZmlsbGluZyk7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcsICRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd24gYXJyb3dcbiAgICAmLmRyb3Bkb3duIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kcm9wZG93bjtcblxuICAgICAgQGlmICRidXR0b24tZmlsbCA9PSBob2xsb3cge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuaG9sbG93LCAmLmNsZWFyIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbiB3aXRoIGRyb3Bkb3duIGFycm93IG9ubHlcbiAgICAmLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICAgIHRvcDogLTAuMWVtO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIH1cbiAgfVxuXG4gIGEuYnV0dG9uIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdztcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXRleHQge1xuICAvLyBUZXh0IGlucHV0c1xuICAje3RleHQtaW5wdXRzKCl9LFxuICB0ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBUZXh0IGFyZWFzXG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmW3Jvd3NdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIC8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb24gYnV0dG9uLWxpa2UgaW5wdXRzXG4gIFt0eXBlPSdzdWJtaXQnXSxcbiAgW3R5cGU9J2J1dHRvbiddIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJ1dHRvbi1yYWRpdXM7XG4gIH1cblxuICAvLyBSZXNldCBOb3JtYWxpemUgc2V0dGluZyBjb250ZW50LWJveCB0byBzZWFyY2ggZWxlbWVudHNcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ10geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gTnVtYmVyIGlucHV0IHN0eWxlc1xuICBbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpZiBub3QgJGlucHV0LW51bWJlci1zcGlubmVycyB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcblxuICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQbGFjZWhvbGRlciB0ZXh0XG4gIDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWNoZWNrYm94IHtcbiAgW3R5cGU9J2ZpbGUnXSxcbiAgW3R5cGU9J2NoZWNrYm94J10sXG4gIFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dC9sYWJlbCBzaWJsaW5nc1xuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJltmb3JdIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0cyBpbnNpZGUgbGFiZWxzXG4gIGxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG4gIGxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLy8gTm9ybWFsaXplIGZpbGUgaW5wdXQgd2lkdGhcbiAgW3R5cGU9J2ZpbGUnXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3IgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgZm9ybSBsYWJlbHMuIFRoZSBoaWdoZXIgdGhlIG51bWJlciwgdGhlIG1vcmUgc3BhY2UgYmV0d2VlbiB0aGUgbGFiZWwgYW5kIGl0cyBpbnB1dCBmaWVsZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjggIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcblxuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuQG1peGluIGZvcm0tbGFiZWwtbWlkZGxlIHtcbiAgJGlucHV0LWJvcmRlci13aWR0aDogZ2V0LWJvcmRlci12YWx1ZSgkaW5wdXQtYm9yZGVyLCB3aWR0aCk7XG5cbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyAyICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkpIDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tbGFiZWwge1xuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybS1sYWJlbDtcblxuICAgICYubWlkZGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzdHlsZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0taGVscHRleHQge1xuICAuaGVscC10ZXh0IHtcbiAgICAkbWFyZ2luLXRvcDogKCRmb3JtLXNwYWNpbmcgKiAwLjUpICogLTE7XG5cbiAgICBtYXJnaW4tdG9wOiAkbWFyZ2luLXRvcDtcbiAgICBmb250LXNpemU6ICRoZWxwdGV4dC1mb250LXNpemU7XG4gICAgZm9udC1zdHlsZTogJGhlbHB0ZXh0LWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRoZWxwdGV4dC1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExlZnQvcmlnaHQgcGFkZGluZyBvZiBhbiBwcmUvcG9zdGZpeGVkIGlucHV0IGxhYmVsXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogJGlucHV0LWxpbmUtaGVpZ2h0KSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgdGFibGUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAlaW5wdXQtZ3JvdXAtY2hpbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nOiAwICRpbnB1dC1wcmVmaXgtcGFkZGluZztcbiAgICBib3JkZXI6ICRpbnB1dC1wcmVmaXgtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDtcblxuICAgIGNvbG9yOiAkaW5wdXQtcHJlZml4LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtcHJlZml4LWJvcmRlcikge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIGEsXG4gICAgaW5wdXQsXG4gICAgYnV0dG9uLFxuICAgIGxhYmVsIHtcbiAgICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuXG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICB9XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNwZWNpZmljaXR5IGJ1bXAgbmVlZGVkIHRvIHByZXZlbnQgb3ZlcnJpZGUgYnkgYnV0dG9uc1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZHJvcGRvd24gdHJpYW5nbGUgaW5zaWRlIHNlbGVjdCBtZW51cy4gU2V0IHRvIGB0cmFuc3BhcmVudGAgdG8gcmVtb3ZlIGl0IGVudGlyZWx5LlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1zZWxlY3Qge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuXG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAoJGZvcm0tc3BhY2luZyAqIDEuNSk7XG4gIH1cblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuICAmOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1zZWxlY3Qge1xuICBzZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tc2VsZWN0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gdXNlIGZvciBsYWJlbHMgb2YgaW52YWxpZCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWxpZ2h0ZW4gWzEwJV0gLSBMaWdodG5lc3MgbGV2ZWwgb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gZm9ybS1pbnB1dC1lcnJvcihcbiAgJGJhY2tncm91bmQ6ICRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQsXG4gICRiYWNrZ3JvdW5kLWxpZ2h0ZW46IDEwJVxuKSB7XG4gICY6bm90KDpmb2N1cykge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KCRiYWNrZ3JvdW5kLCAkd2hpdGUsICRiYWNrZ3JvdW5kLWxpZ2h0ZW4pO1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBlcnJvciBzdHlsZXMgdG8gYSBmb3JtIGVsZW1lbnQsIHVzaW5nIHRoZSB2YWx1ZXMgaW4gdGhlIHNldHRpbmdzIGZpbGUuXG5AbWl4aW4gZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXNwYWNpbmcgKiAtMC41O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gIGZvbnQtc2l6ZTogJGlucHV0LWVycm9yLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1lcnJvci1mb250LXdlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1lcnJvci1jb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1lcnJvciB7XG4gIEBpZiAkYWJpZGUtaW5wdXRzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgaW52YWxpZCBpbnB1dHNcbiAgICAuaXMtaW52YWxpZC1pbnB1dCB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWlucHV0LWVycm9yO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkYWJpZGUtbGFiZWxzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgbGFiZWxzIG9mIGludmFsaWQgb3V0cHV0c1xuICAgIC5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZvcm0gZXJyb3IgZWxlbWVudFxuICAuZm9ybS1lcnJvciB7XG4gICAgQGluY2x1ZGUgZm9ybS1lcnJvcjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtIC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhY2NvcmRpb25cbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY2NvcmRpb24gZ3JvdXAuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIHBsdXMgYW5kIG1pbnVzIGljb25zIHRvIHRoZSBzaWRlIG9mIGVhY2ggYWNjb3JkaW9uIHRpdGxlLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIHBsdXMgaWNvbiB3aGVuIGAkYWNjb3JkaW9uLXBsdXNtaW51c2AgaXMgYHRydWVgXG4vLy8gQHR5cGUgU3RyaW5nXG4kYWNjb3JkaW9uLXBsdXMtY29udGVudDogJ1xcMDAyQicgIWRlZmF1bHQ7XG5cbi8vLyBDb250ZW50IGZvciB0aGUgbWludXMgaWNvbiB3aGVuIGAkYWNjb3JkaW9uLXBsdXNtaW51c2AgaXMgYHRydWVgXG4vLy8gQHR5cGUgU3RyaW5nXG4kYWNjb3JkaW9uLW1pbnVzLWNvbnRlbnQ6ICdcXDIwMTMnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGFjY29yZGlvbiB0aXRsZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGFuIGFjY29yZGlvbiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGFjY29yZGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIHNhbWUgZWxlbWVudCB0aGF0IGdldHMgYGRhdGEtYWNjb3JkaW9uYC5cbkBtaXhpbiBhY2NvcmRpb24tY29udGFpbmVyIChcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tYmFja2dyb3VuZFxuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgJltkaXNhYmxlZF0ge1xuICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpc3QgaXRlbSB3aXRoaW4gYW4gYWNjb3JkaW9uIHVsLlxuQG1peGluIGFjY29yZGlvbi1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXMgMCAwO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB0aXRsZSBvZiBhbiBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGluayB3aXRoaW4gYW4gYWNjb3JkaW9uIGl0ZW0uXG5AbWl4aW4gYWNjb3JkaW9uLXRpdGxlIChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24taXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWl0ZW0tY29sb3IsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+ICYge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gIH1cblxuICBAaWYgJGFjY29yZGlvbi1wbHVzbWludXMge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgY29udGVudDogJGFjY29yZGlvbi1wbHVzLWNvbnRlbnQ7XG4gICAgfVxuXG4gICAgLmlzLWFjdGl2ZSA+ICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAkYWNjb3JkaW9uLW1pbnVzLWNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYWNjb3JkaW9uIGNvbnRlbnQuIEFwcGx5IHRoaXMgdG8gdGhlIGNvbnRlbnQgcGFuZSBiZWxvdyBhbiBhY2NvcmRpb24gaXRlbSdzIHRpdGxlLlxuQG1peGluIGFjY29yZGlvbi1jb250ZW50IChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJGFjY29yZGlvbi1jb250ZW50LWNvbG9yXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkID4gJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbiB7XG4gIC5hY2NvcmRpb24ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250YWluZXI7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1pdGVtO1xuICB9XG5cbiAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLXRpdGxlO1xuICB9XG5cbiAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvbi1ncm91cFxuLy8vL1xuXG4vLy8gTWFyZ2luIGZvciBidXR0b24gZ3JvdXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSBudW1iZXIgb2YgYnV0dG9ucyB0aGF0IGNhbiBiZSBpbiBhbiBldmVuLXdpZHRoIGJ1dHRvbiBncm91cC4gKE9ubHkgbmVlZGVkIHdoZW4gJGdsb2JhbC1mbGV4Ym94OiBmYWxzZTspXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNiAhZGVmYXVsdDtcblxuLy8vIERldGVybWluZXMgaWYgJGJ1dHRvbi1yYWRpdXMgaXMgYXBwbGllZCB0byBlYWNoIGJ1dHRvbiBvciB0aGUgYnV0dG9uIGdyb3VwIGFzIGEgd2hvbGUuIFVzZSAkZ2xvYmFsLXJhZGl1cyBpbiBfc2V0dGluZ3Muc2NzcyB0byBjaGFuZ2UgcmFkaXVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEFkZCBzdHlsZXMgZm9yIGEgYnV0dG9uIGdyb3VwIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGNoaWxkLXNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNwYWNpbmcgWyRidXR0b25ncm91cC1zcGFjaW5nXSAtIFNwYWNpbmcgYmV0d2VlbiBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cChcbiAgJGNoaWxkLXNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRzcGFjaW5nOiAkYnV0dG9uZ3JvdXAtc3BhY2luZ1xuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW4tYm90dG9tOiAkYnV0dG9uZ3JvdXAtbWFyZ2luO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyAvLyBEaXNhYmxlIGNsZWFyZml4XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBmb250LXNpemU6IDA7XG4gIH1cblxuICAjeyRjaGlsZC1zZWxlY3Rvcn0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgfVxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIE1ha2UgYnV0dG9ucyBib25kZWQgd2l0aG91dCBnYXAgYmV0d2VlbiB0aGVtLiBCb3JkZXJzIGJldHdlZW4gYnV0dG9ucyBhcmUgbWVyZ2VkXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLW5vLWdhcHMoXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkYm9yZGVyLXdpZHRoOiAkYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhcbikge1xuICAjeyRzZWxlY3Rvcn0ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiByZW0tY2FsYygtJGJvcmRlci13aWR0aCk7XG5cbiAgICArICN7JHNlbGVjdG9yfSB7XG4gICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBmdWxsLXdpZHRoIGJ1dHRvbiBncm91cCwgbWFraW5nIGVhY2ggYnV0dG9uIGVxdWFsIHdpZHRoLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLWV4cGFuZChcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRzcGFjaW5nOiAkYnV0dG9uZ3JvdXAtc3BhY2luZyxcbiAgJGNvdW50OiBudWxsXG4pIHtcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAtJHNwYWNpbmc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgLy8gRGlzYWJsZSBjbGVhcmZpeFxuICAgIH1cbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBPbmUgY2hpbGRcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRzcGFjaW5nfSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gVHdvIG9yIG1vcmUgY2hpbGRyZWVuXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRidXR0b25ncm91cC1leHBhbmQtbWF4IHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICAgICYsICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIH4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCN7cGVyY2VudGFnZSgxIC8gJGkpfSAtICN7JHNwYWNpbmd9KTtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nICogLSRidXR0b25ncm91cC1leHBhbmQtbWF4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gU3RhY2tzIHRoZSBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIHRoZSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLXN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFVuLXN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC11bnN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwIHtcbiAgLmJ1dHRvbi1ncm91cCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFdmVuLXdpZHRoIEdyb3VwXG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtZXhwYW5kO1xuICAgIH1cblxuICAgIC8vIFNvbGlkLCBob2xsb3cgJiBjbGVhciBzdHlsZXNcbiAgICBAZWFjaCAkZmlsbGluZyBpbiAoc29saWQgaG9sbG93IGNsZWFyKSB7XG4gICAgICAkYmFzZS1zZWxlY3RvcjogaWYoJGJ1dHRvbi1maWxsID09ICRmaWxsaW5nLCBudWxsLCAnLiN7JGZpbGxpbmd9Jyk7XG5cbiAgICAgICYjeyRiYXNlLXNlbGVjdG9yfSB7XG4gICAgICAgIC8vIERvIG5vdCBnZW5lcmF0ZSBidXR0b24gYmFzZSBzdHlsZXMgZm9yIHRoZSBkZWZhdWx0IGZpbGxpbmdcbiAgICAgICAgQGlmKCRidXR0b24tZmlsbCAhPSAkZmlsbGluZykge1xuICAgICAgICAgICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbCgkZmlsbGluZyk7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkZmlsbGluZyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICRpbmRpdmlkdWFsLXNlbGVjdG9yOiBpZigkYnV0dG9uLWZpbGwgPT0gJGZpbGxpbmcsIG51bGwsICcgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9LiN7JG5hbWV9Jyk7XG5cbiAgICAgICAgICAmLiN7JG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSwgI3skaW5kaXZpZHVhbC1zZWxlY3Rvcn0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcsICRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAmLm5vLWdhcHMge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLW5vLWdhcHM7XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLFxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwsXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0YWNrO1xuXG4gICAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWV4cGFuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyb3Bkb3duXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi13aWR0aDogMzAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgZHJvcGRvd24gcGFuZXMuIEVhY2ggc2l6ZSBpcyBhIENTUyBjbGFzcyB5b3UgY2FuIGFwcGx5LlxuLy8vIEB0eXBlIE1hcFxuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBBcHBsaWVzIHN0eWxlcyBmb3IgYSBiYXNpYyBkcm9wZG93bi5cbkBtaXhpbiBkcm9wZG93bi1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgd2lkdGg6ICRkcm9wZG93bi13aWR0aDtcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmc7XG5cbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRkcm9wZG93bi1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtc2l6ZTogJGRyb3Bkb3duLWZvbnQtc2l6ZTtcblxuXG4gIC8vIEFsbG93IGFuIGludGVybWl0dGVudCBzdGF0ZSB0byBkbyBwb3NpdGlvbmluZyBiZWZvcmUgbWFraW5nIHZpc2libGUuXG4gICYuaXMtb3BlbmluZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmLmlzLW9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24ge1xuICAuZHJvcGRvd24tcGFuZSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tY29udGFpbmVyO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUsICRzaXplIGluICRkcm9wZG93bi1zaXplcyB7XG4gICAgLmRyb3Bkb3duLXBhbmUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93bi1tZW51XG4vLy8vXG5cbi8vLyBFbmFibGVzIGFycm93cyBmb3IgaXRlbXMgd2l0aCBkcm9wZG93biBtZW51cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHBhZGRpbmcgZm9yIGFsaWduaW5nIHRoZSBhcnJvdyBjb3JyZWN0bHkuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcm9wZG93bnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHN1Yi1tZW51IGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBCb3JkZXIgd2lkdGggZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vIFVzZWQgdG8gYWRqdXN0IHRvcCBtYXJnaW4gb2YgYSBzdWItbWVudSBpZiBhIGJvcmRlciBpcyB1c2VkLlxuLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aDogbnRoKCRkcm9wZG93bm1lbnUtYm9yZGVyLCAxKTtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gID4gYTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1yaWdodH06IDE0cHg7XG4gIH1cblxuICAmLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG5cbiAgJi5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cbn1cblxuQG1peGluIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgPiBsaS5vcGVucy1sZWZ0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpLm9wZW5zLXJpZ2h0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZztcbiAgICAgIH1cblxuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplIC8gMik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgID4gbGkge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtbGVmdCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtcmlnaHQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93bi1tZW51IHtcbiAgLmRyb3Bkb3duLm1lbnUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuXG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgfVxuXG4gICAgLy8gVG9wLWxldmVsIGl0ZW1cbiAgICA+IGxpID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQ7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLy8gVG9wLWxldmVsIGl0ZW0gYWN0aXZlIHN0YXRlXG4gICAgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLm5vLWpzICYgdWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LWhvcml6b250YWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi4jeyRzaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHtcbiAgICB3aWR0aDogMTAwcHg7XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGE6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJvcGRvd25tZW51LWFycm93LXNpemU7XG4gICAgfVxuXG4gICAgJi5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcblxuICAgICAgdG9wOiAxMDAlO1xuICAgICAgQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgei1pbmRleDogMTtcblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWluLXdpZHRoOiAkZHJvcGRvd25tZW51LW1pbi13aWR0aDtcblxuICAgIGJvcmRlcjogJGRyb3Bkb3dubWVudS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ7XG5cbiAgICAuZHJvcGRvd24gJiBhIHtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKHR5cGUtb2YoJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpID09ICdudW1iZXInKSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgtJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gW1RPRE9dIEN1dCBiYWNrIHNwZWNpZmljaXR5XG4gICAgLy8mOm5vdCguanMtZHJvcGRvd24tbm9ob3ZlcikgPiAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQ6aG92ZXIgPiAmLCAvLyB3aHkgaXMgdGhpcyBsaW5lIG5lZWRlZD8gT3BlbmluZyBpcyBoYW5kbGVkIGJ5IEpTIGFuZCB0aGlzIGNhdXNlcyBzb21lIHVnbHkgZmxpY2tlcmluZyB3aGVuIHRoZSBzdWIgaXMgcmUtcG9zaXRpb25lZCBhdXRvbWF0aWNhbGx5Li4uXG4gICAgJi5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVudVxuLy8vL1xuXG4vLy8gTWFyZ2luIG9mIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIExlZnQtaGFuZCBtYXJnaW4gb2YgYSBuZXN0ZWQgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgaXRlbXMgaW4gYSBwaWxsIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBzaW1wbGUgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGl2ZSB0ZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFsdC1hY3RpdmU6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGFuIGljb24gYW5kIHRleHQgaW4gYSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IHN0YXRlLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgYWN0aXZlYCB3aXRoIGBpcy1hY3RpdmVgLiBcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCBgYWN0aXZlYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtc3RhdGUtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IGNlbnRlcmVkLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgLm1lbnUtY2VudGVyZWQgPiAubWVudWAgd2l0aCBgLm1lbnUuYWxpZ24tY2VudGVyYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYG1lbnUtY2VudGVyZWRgIHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIHVzaW5nIGBpY29uLSpgIGNsYXNzZXMgd2l0aG91dCBgLmljb25zYCBjbGFzc2VzXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgdGhpcyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIE1lbnUuXG5AbWl4aW4gbWVudS1iYXNlIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICBsaSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB9XG5cbiAgYSxcbiAgLmJ1dHRvbiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRtZW51LWl0ZW1zLXBhZGRpbmc7XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb2YgaW5uZXIgZWxlbWVudHNcbiAgaW5wdXQsXG4gIHNlbGVjdCxcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4vLy8gRXhwYW5kcyB0aGUgaXRlbXMgb2YgYSBNZW51LCBzbyBlYWNoIGl0ZW0gaXMgdGhlIHNhbWUgd2lkdGguXG5AbWl4aW4gbWVudS1leHBhbmQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWxpZ24gbWVudSBpdGVtcy5cbkBtaXhpbiBtZW51LWFsaWduKCRhbGlnbm1lbnQpIHtcbiAgQGlmICRhbGlnbm1lbnQgPT0gbGVmdCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSByaWdodCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG5cbiAgICAgICYudmVydGljYWwge1xuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IGNlbnRlciB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGRpcmVjdGlvbiBvZiBhIE1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFtob3Jpem9udGFsXSAtIERpcmVjdGlvbiBvZiB0aGUgTWVudS4gQ2FuIGJlIGBob3Jpem9udGFsYCBvciBgdmVydGljYWxgLlxuQG1peGluIG1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBtZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2ltcGxlIE1lbnUsIHdoaWNoIGhhcyBubyBwYWRkaW5nIG9yIGhvdmVyIHN0YXRlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbJGdsb2JhbC1sZWZ0XSAtIERpcmVjdGlvbiBvZiB0aGUgbWVudS4gVGhpcyBlZmZlY3RzIHRoZSBzaWRlIG9mIHRoZSBgPGxpPmAgdGhhdCByZWNlaXZlcyB0aGUgbWFyZ2luLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWFyZ2luIFskbWVudS1zaW1wbGUtbWFyZ2luXSAtIFRoZSBtYXJnaW4gdG8gYXBwbHkgdG8gZWFjaCBgPGxpPmAuXG5AbWl4aW4gbWVudS1zaW1wbGUoJGRpcjogJGdsb2JhbC1sZWZ0LCAkbWFyZ2luOiAkbWVudS1zaW1wbGUtbWFyZ2luKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICBsaSArIGxpIHtcbiAgICBtYXJnaW4tI3skZGlyfTogJG1hcmdpbjtcbiAgfVxuXG4gIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG5lc3RlZCBNZW51LCBieSBhZGRpbmcgYG1hcmdpbi1sZWZ0YCB0byB0aGUgbWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkbWFyZ2luIFskbWVudS1uZXN0ZWQtbWFyZ2luXSAtIExlbmd0aCBvZiB0aGUgbWFyZ2luLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJG5lc3RlZC1hbGlnbm1lbnQgW2xlZnRdIC0gQWxpZ25tZW50IG9mIHRoZSBuZXN0ZWQgY2xhc3NcbkBtaXhpbiBtZW51LW5lc3RlZChcbiAgJG1hcmdpbjogJG1lbnUtbmVzdGVkLW1hcmdpbixcbiAgJG5lc3RlZC1hbGlnbm1lbnQ6IGxlZnRcbikge1xuICBAaWYgJG5lc3RlZC1hbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkbWFyZ2luO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRtYXJnaW47XG4gIH1cblxufVxuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGljb25zIGluIG1lbnVzLlxuQG1peGluIG1lbnUtaWNvbnMoKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGltZyxcbiAgICBpLFxuICAgIHN2ZyB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICArIHNwYW4ge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBwb3NpdGlvbiBjbGFzc2VzIGZvciBpY29ucyB3aXRoaW4gYSBtZW51LlxuQG1peGluIG1lbnUtaWNvbi1wb3NpdGlvbigkcG9zaXRpb246IGxlZnQsICRzcGFjaW5nOiAkbWVudS1pY29uLXNwYWNpbmcpIHtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gJHNwYWNpbmc7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogJHNwYWNpbmcgYXV0byAwO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVudS10ZXh0IHtcbiAgcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG5cbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuQG1peGluIG1lbnUtc3RhdGUtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZSwgKCRtZW51LWl0ZW0tY29sb3ItYWN0aXZlLCAkbWVudS1pdGVtLWNvbG9yLWFsdC1hY3RpdmUpKTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG5cbiAgICAvLyBEZWZhdWx0IG9yaWVudGF0aW9uOiBob3Jpem9udGFsXG4gICAgJiwgJi5ob3Jpem9udGFsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uIG1vZGlmaWVyXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQnJlYWtwb2ludCBzcGVjaWZpYyB2ZXJzaW9uc1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiBmYWxzZSkge1xuICAgICAgJi4jeyQtemYtc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tc2ltcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEljb24gQmFzZSBTdHlsZXNcbiAgICAmLmljb25zIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgfVxuXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LWljb25zLWJhY2stY29tcGF0IHtcbiAgICAgICYuaWNvbi10b3AsXG4gICAgICAmLmljb24tcmlnaHQsXG4gICAgICAmLmljb24tYm90dG9tLFxuICAgICAgJi5pY29uLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEljb24gTGVmdFxuICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBJY29uIFJpZ2h0XG4gICAgJi5pY29uLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihyaWdodCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBUb3BcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbih0b3ApO1xuICAgIH1cblxuICAgIC8vIEljb24gQm90dG9tXG4gICAgJi5pY29uLWJvdHRvbSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24oYm90dG9tKTtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LXN0YXRlLWJhY2stY29tcGF0IHtcbiAgICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gbGVmdFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLWxlZnR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihyaWdodCk7XG5cbiAgICAgIC5uZXN0ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkbmVzdGVkLWFsaWdubWVudDogcmlnaHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGNlbnRlclxuICAgICYuYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICB9XG5cbiAgICAubWVudS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQge1xuICAgIC5tZW51LWNlbnRlcmVkIHtcbiAgICAgID4gLm1lbnUge1xuICAgICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbGFiZWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGUgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgb2YgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYmFzZSBzdHlsZXMgZm9yIGEgbGFiZWwuXG5AbWl4aW4gbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRsYWJlbC1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6ICRsYWJlbC1yYWRpdXM7XG5cbiAgZm9udC1zaXplOiAkbGFiZWwtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1sYWJlbCB7XG4gIC5sYWJlbCB7XG4gICAgQGluY2x1ZGUgbGFiZWw7XG5cbiAgICBiYWNrZ3JvdW5kOiAkbGFiZWwtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGxhYmVsLWNvbG9yO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkbGFiZWwtcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkY29sb3IsICgkbGFiZWwtY29sb3IsICRsYWJlbC1jb2xvci1hbHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwYWdpbmF0aW9uXG4vLy8vXG5cbi8vLyBGb250IHNpemUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIG9mIHRoZSBwYWdpbmF0aW9uIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKSAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IG1hcmdpbiB0byBzZXBhcmF0ZSBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGVsbGlwc2lzIGluIGEgcGFnaW5hdGlvbiBtZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gSWYgYGZhbHNlYCwgZG9uJ3QgZGlzcGxheSBwYWdlIG51bWJlciBsaW5rcyBvbiBtb2JpbGUsIG9ubHkgbmV4dC9wcmV2aW91cyBsaW5rc1xuLy8vIGFuZCBvcHRpb25hbGx5IGN1cnJlbnQgcGFnZSBudW1iZXIuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheSB0aGUgY3VycmVudCBwYWdlIG51bWJlciBvbiBtb2JpbGUgZXZlbiBpZiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYGZhbHNlYC5cbi8vLyBUaGlzIHBhcmFtZXRlciB3aWxsIG9ubHkgb3ZlcnJpZGUgdGhlIHZpc2liaWxpdHkgc2V0dGluZyBvZiB0aGUgY3VycmVudCBpdGVtIGZvciBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtgLFxuLy8vIGl0IHdpbGwgbm90IGFmZmVjdCB0aGUgY3VycmVudCBwYWdlIG51bWJlciB2aXNpYmlsaXR5IHdoZW4gYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGB0cnVlYC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYXJyb3dzIGFyZSBhZGRlZCB0byB0aGUgbmV4dCBhbmQgcHJldmlvdXMgbGlua3Mgb2YgcGFnaW5hdGlvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDb250ZW50IGZvciB0aGUgcHJldmlvdXMgYXJyb3cgd2hlbiBgJHBhZ2luYXRpb24tYXJyb3dzYCBpcyBgdHJ1ZWBcbi8vLyBAdHlwZSBTdHJpbmdcbiRwYWdpbmF0aW9uLWFycm93LXByZXZpb3VzOiAnXFwwMEFCJyAhZGVmYXVsdDtcblxuLy8vIENvbnRlbnQgZm9yIHRoZSBuZXh0IGFycm93IHdoZW4gYCRwYWdpbmF0aW9uLWFycm93c2AgaXMgYHRydWVgXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFnaW5hdGlvbi1hcnJvdy1uZXh0OiAnXFwwMEJCJyAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHBhZ2luYXRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgYDx1bD5gLlxuQG1peGluIHBhZ2luYXRpb24tY29udGFpbmVyIChcbiAgJG1hcmdpbi1ib3R0b206ICRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b20sXG4gICRmb250LXNpemU6ICRwYWdpbmF0aW9uLWZvbnQtc2l6ZSxcbiAgJHNwYWNpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZyxcbiAgJHJhZGl1czogJHBhZ2luYXRpb24tcmFkaXVzLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3IsXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgLy8gTGlzdCBpdGVtXG4gIGxpIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG5cbiAgICBAaWYgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgJjpsYXN0LWNoaWxkLFxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cblxuICAgICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW0ge1xuICAgICAgICAmLmN1cnJlbnQge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhLFxuICBidXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGN1cnJlbnQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1jdXJyZW50IChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQsXG4gICRjb2xvci1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtY3VycmVudDtcbiAgY29sb3I6ICRjb2xvci1jdXJyZW50O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBlbGxpcHNpcyBmb3IgdXNlIGluIGEgcGFnaW5hdGlvbiBsaXN0LlxuQG1peGluIHBhZ2luYXRpb24tZWxsaXBzaXMgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICBjb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wYWdpbmF0aW9uIHtcbiAgLnBhZ2luYXRpb24ge1xuICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tY29udGFpbmVyO1xuXG4gICAgLmN1cnJlbnQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQ7XG4gICAgfVxuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tZWxsaXBzaXM7XG4gICAgfVxuICB9XG5cbiAgQGlmICRwYWdpbmF0aW9uLWFycm93cyB7XG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICRwYWdpbmF0aW9uLWFycm93LXByZXZpb3VzO1xuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4gICAgLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJHBhZ2luYXRpb24tYXJyb3ctbmV4dDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYmxlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciB0YWJsZSBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlICAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgc3RyaXBlZCB0YWJsZSByb3dzIGFuZCB0aGUgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc3R5bGUgZm9yIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYmxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RhbmRhcmQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0cmlwZWQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCB0YWJsZXMgYXJlIHN0cmlwZWQgYnkgZGVmYXVsdCBhbmQgYW4gLnVuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLiBJZiBgZmFsc2VgLCBhIC5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIHN0cmlwZWQgcm93cy5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBzdHJpcGUgb24gcm93cyBvZiB0aGUgdGFibGVzLCBleGNsdWRpbmcgdGhlIGhlYWRlciBhbmQgZm9vdGVyLiBJZiBldmVuLCB0aGUgZXZlbiByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIG9kZCwgdGhlIG9kZCByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIGVtcHR5LCBvciBhbnkgb3RoZXIgdmFsdWUsIHRoZSB0YWJsZSByb3dzIHdpbGwgaGF2ZSBubyBzdHJpcGluZy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kdGFibGUtc3RyaXBlOiBldmVuICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVhZGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGZvb3RlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgaGVhZGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb290ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBoZWFkZXIgd2hlbiB1c2luZyBzdGFja2VkIHRhYmxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCBzdGFja2VkIHRhYmxlIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG5AbWl4aW4gLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlOiAkdGFibGUtc3RyaXBlKSB7XG4gIHRyIHtcbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIGV2ZW4sIGRhcmtlbiB0aGUgZXZlbiByb3dzLlxuICAgIEBpZiAkc3RyaXBlID09IGV2ZW4ge1xuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gb2RkLCBkYXJrZW4gdGhlIG9kZCByb3dzLlxuICAgIEBlbHNlIGlmICRzdHJpcGUgPT0gb2RkIHtcbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLXVuc3RyaXBlKCkge1xuICB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsICRpcy1zdHJpcGVkOiAkdGFibGUtaXMtc3RyaXBlZCkge1xuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDYXB0aW9uXG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZFxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGZvb3RcbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1mb290LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1mb290LWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkIGFuZCBmb290XG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgLy8gUm93cyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIENlbGxzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtYWxpZ246ICN7JGdsb2JhbC1sZWZ0fTtcbiAgICB9XG4gIH1cblxuICAvLyBUYWJsZSByb3dzXG4gIHRib2R5IHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIHN0cmlwZWRcbiAgQGlmICRpcy1zdHJpcGVkID09IHRydWUge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgfVxuXG4gICAgJi51bnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBub3Qgc3RyaXBlZFxuICBAZWxzZSBpZiAkaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgfVxuXG4gICAgJi5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0YWJsZXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RyaXBlIFskdGFibGUtc3RyaXBlXSAtIFVzZXMga2V5d29yZHMgZXZlbiwgb2RkLCBvciBub25lIHRvIGRhcmtlbiByb3dzIG9mIHRoZSB0YWJsZS4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgZXZlbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZXN0IFtmYWxzZV0gLSBOZWVkZWQgaWYgeW91IG9ubHkgd2FudCB0byBhcHBseSB0aGlzIHRvIGEgc3BlY2lmaWMgdGFibGUuXG5AbWl4aW4gdGFibGUoXG4gICRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsXG4gICRuZXN0OiBmYWxzZVxuKSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGlmICRuZXN0IHtcbiAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgYWJpbGl0eSB0byBob3Jpem9udGFsbHkgc2Nyb2xsIHRoZSB0YWJsZSB3aGVuIHRoZSBjb250ZW50IG92ZXJmbG93cyBob3Jpem9udGFsbHkuXG5AbWl4aW4gdGFibGUtc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4vLy8gU2xpZ2h0bHkgZGFya2VucyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbkBtaXhpbiB0YWJsZS1ob3ZlciB7XG4gIHRoZWFkIHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWZvb3Qtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRib2R5IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIG5vbi1zdHJpcGVkIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2UgaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWNrZWQgdGFibGUuIFVzZWZ1bCBmb3Igc21hbGwtc2NyZWVuIGxheW91dHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaGVhZGVyIFskc2hvdy1oZWFkZXItZm9yLXN0YWNrZWRdIC0gU2hvdyB0aGUgZmlyc3QgdGggb2YgaGVhZGVyIHdoZW4gc3RhY2tlZC5cbkBtaXhpbiB0YWJsZS1zdGFjaygkaGVhZGVyOiAkc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQpIHtcbiAgQGlmICRoZWFkZXIge1xuICAgIHRoZWFkIHtcbiAgICAgIHRoIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdHIsXG4gIHRoLFxuICB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJsZSgkbmVzdDogZmFsc2UpIHtcbiAgdGFibGUge1xuICAgIEBpbmNsdWRlIHRhYmxlKCRuZXN0OiAkbmVzdCk7XG4gIH1cblxuICB0YWJsZS5zdGFjayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGUtc3RhY2stYnJlYWtwb2ludCBkb3duKSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZS1zdGFjaztcbiAgICB9XG4gIH1cblxuICB0YWJsZS5zY3JvbGwge1xuICAgIEBpbmNsdWRlIHRhYmxlLXNjcm9sbDtcbiAgfVxuXG4gIHRhYmxlLmhvdmVyIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1ob3ZlcjtcbiAgfVxuXG4gIC50YWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYnNcbi8vLy9cblxuLy8vIERlZmF1bHQgbWFyZ2luIG9mIHRoZSB0YWIgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBmb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGFiIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGEgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSB0YWIgY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgYDx1bD5gLlxuQG1peGluIHRhYnMtY29udGFpbmVyIChcbiAgJG1hcmdpbjogJHRhYi1tYXJnaW4sXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWJhY2tncm91bmQsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luOiAkbWFyZ2luO1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4vLy8gQXVnbWVudHMgYSB0YWIgY29udGFpbmVyIHRvIGhhdmUgdmVydGljYWwgdGFicy4gVXNlIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBgdGFicy1jb250YWluZXIoKWAuXG5AbWl4aW4gdGFicy1jb250YWluZXItdmVydGljYWwge1xuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBsaW5rcyB3aXRoaW4gYSB0YWIgY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBgPGxpPmAgZWxlbWVudHMgaW5zaWRlIGEgdGFiIGNvbnRhaW5lci5cbkBtaXhpbiB0YWJzLXRpdGxlIChcbiAgJHBhZGRpbmc6ICR0YWItaXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkdGFiLWl0ZW0tZm9udC1zaXplLFxuICAkY29sb3I6ICR0YWItY29sb3IsXG4gICRjb2xvci1hY3RpdmU6ICR0YWItYWN0aXZlLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXIsXG4gICRiYWNrZ3JvdW5kLWFjdGl2ZTogJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZVxuKSB7XG4gIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgPiBhIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgY29sb3I6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGNvbG9yLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgd3JhcHBlciB0aGF0IHN1cnJvdW5kcyBhIHRhYiBncm91cCdzIGNvbnRlbnQgcGFuZXMuXG5AbWl4aW4gdGFicy1jb250ZW50IChcbiAgJGJhY2tncm91bmQ6ICR0YWItY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICR0YWItY29udGVudC1jb2xvcixcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xufVxuXG4vLy8gQXVnbWVudHMgYSB0YWIgY29udGVudCBjb250YWluZXIgdG8gaGF2ZSBhIHZlcnRpY2FsIHN0eWxlLCBieSBzaGlmdGluZyB0aGUgYm9yZGVyIGFyb3VuZC4gVXNlIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBgdGFicy1jb250ZW50KClgLlxuQG1peGluIHRhYnMtY29udGVudC12ZXJ0aWNhbCAoXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGluZGl2aWR1YWwgdGFiIGNvbnRlbnQgcGFuZWwgd2l0aGluIHRoZSB0YWIgY29udGVudCBjb250YWluZXIuXG5AbWl4aW4gdGFicy1wYW5lbCAoXG4gICRwYWRkaW5nOiAkdGFiLWNvbnRlbnQtcGFkZGluZ1xuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICYuaXMtYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJzIHtcbiAgLnRhYnMge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGFpbmVyO1xuICB9XG5cbiAgLy8gVmVydGljYWxcbiAgLnRhYnMudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsO1xuICB9XG5cbiAgLy8gU2ltcGxlXG4gIC50YWJzLnNpbXBsZSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByaW1hcnkgY29sb3JcbiAgLnRhYnMucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG5cbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkcHJpbWFyeS1jb2xvcik7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHByaW1hcnktY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50YWJzLXRpdGxlIHtcbiAgICBAaW5jbHVkZSB0YWJzLXRpdGxlO1xuICB9XG5cbiAgLnRhYnMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250ZW50O1xuICB9XG5cbiAgLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250ZW50LXZlcnRpY2FsO1xuICB9XG5cbiAgLnRhYnMtcGFuZWwge1xuICAgIEBpbmNsdWRlIHRhYnMtcGFuZWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnbWF0aCc7XG5cbiRjb250cmFzdC13YXJuaW5nczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gY2hlY2sgdGhlIGx1bWluYW5jZSBvZi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG5AZnVuY3Rpb24gY29sb3ItbHVtaW5hbmNlKCRjb2xvcikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jcmVsYXRpdmVsdW1pbmFuY2VkZWZcbiAgJHJnYmE6IHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvcik7XG4gICRyZ2JhMjogKCk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAzIHtcbiAgICAkcmdiOiBudGgoJHJnYmEsICRpKTtcbiAgICAkcmdiOiAkcmdiIC8gMjU1O1xuXG4gICAgJHJnYjogaWYoJHJnYiA8IDAuMDM5MjgsICRyZ2IgLyAxMi45MiwgcG93KCgkcmdiICsgMC4wNTUpIC8gMS4wNTUsIDIuNCkpO1xuXG4gICAgJHJnYmEyOiBhcHBlbmQoJHJnYmEyLCAkcmdiKTtcbiAgfVxuXG4gIEByZXR1cm4gMC4yMTI2ICogbnRoKCRyZ2JhMiwgMSkgKyAwLjcxNTIgKiBudGgoJHJnYmEyLCAyKSArIDAuMDcyMiAqIG50aCgkcmdiYTIsIDMpO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBjb250cmFzdCByYXRpbyBvZiB0d28gY29sb3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGNvbG9yMSwgJGNvbG9yMikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jY29udHJhc3QtcmF0aW9kZWZcbiAgJGx1bWluYW5jZTE6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IxKSArIDAuMDU7XG4gICRsdW1pbmFuY2UyOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMikgKyAwLjA1O1xuICAkcmF0aW86ICRsdW1pbmFuY2UxIC8gJGx1bWluYW5jZTI7XG5cbiAgQGlmICRsdW1pbmFuY2UyID4gJGx1bWluYW5jZTEge1xuICAgICRyYXRpbzogMSAvICRyYXRpbztcbiAgfVxuXG4gICRyYXRpbzogcm91bmQoJHJhdGlvICogMTApIC8gMTA7XG5cbiAgQHJldHVybiAkcmF0aW87XG59XG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGJhc2VgLCBhbmQgcmV0dXJucyB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYXNlIC0gQ29sb3IgdG8gY2hlY2sgbHVtaW5hbmNlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGNvbG9ycyBbKCR3aGl0ZSwgJGJsYWNrKV0gLSBDb2xvcnMgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvbGVyYW5jZSBbJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZV0gLSBDb250cmFzdCB0b2xlcmFuY2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuQGZ1bmN0aW9uIGNvbG9yLXBpY2stY29udHJhc3QoJGJhc2UsICRjb2xvcnM6ICgkd2hpdGUsICRibGFjayksICR0b2xlcmFuY2U6ICRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2UpIHtcbiAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsIDEpKTtcbiAgJGJlc3Q6IG50aCgkY29sb3JzLCAxKTtcblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIGxlbmd0aCgkY29sb3JzKSB7XG4gICAgJGN1cnJlbnQtY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICBAaWYgKCRjdXJyZW50LWNvbnRyYXN0IC0gJGNvbnRyYXN0ID4gJHRvbGVyYW5jZSkge1xuICAgICAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgICAkYmVzdDogbnRoKCRjb2xvcnMsICRpKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRjb250cmFzdC13YXJuaW5ncyBhbmQgJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuIFwiQ29udHJhc3QgcmF0aW8gb2YgI3skYmVzdH0gb24gI3skYmFzZX0gaXMgcHJldHR5IGJhZCwganVzdCAjeyRjb250cmFzdH1cIjtcbiAgfVxuXG4gIEByZXR1cm4gJGJlc3Q7XG59XG5cbi8vLyBTY2FsZXMgYSBjb2xvciB0byBiZSBkYXJrZXIgaWYgaXQncyBsaWdodCwgb3IgbGlnaHRlciBpZiBpdCdzIGRhcmsuIFVzZSB0aGlzIGZ1bmN0aW9uIHRvIHRpbnQgYSBjb2xvciBhcHByb3ByaWF0ZSB0byBpdHMgbGlnaHRuZXNzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gc2NhbGUuXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkc2NhbGUgWzUlXSAtIEFtb3VudCB0byBzY2FsZSB1cCBvciBkb3duLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHRocmVzaG9sZCBbNDAlXSAtIFRocmVzaG9sZCBvZiBsaWdodG5lc3MgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gQSBzY2FsZWQgY29sb3IuXG5AZnVuY3Rpb24gc21hcnQtc2NhbGUoJGNvbG9yLCAkc2NhbGU6IDUlLCAkdGhyZXNob2xkOiA0MCUpIHtcbiAgQGlmIGxpZ2h0bmVzcygkY29sb3IpID4gJHRocmVzaG9sZCB7XG4gICAgJHNjYWxlOiAtJHNjYWxlO1xuICB9XG4gIEByZXR1cm4gc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkc2NhbGUpO1xufVxuXG4vLy8gR2V0IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcGFyYW0ge2tleX0gY29sb3Iga2V5IGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG5AZnVuY3Rpb24gZ2V0LWNvbG9yKCRrZXkpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnZ2l2ZW4gJGtleSBpcyBub3QgYXZhaWxhYmxlIGluICRmb3VuZGF0aW9uLXBhbGV0dGUnO1xuICB9XG59XG5cbi8vLyBUcmFuc2ZlcnMgdGhlIGNvbG9ycyBpbiB0aGUgYCRmb3VuZGF0aW9uLXBhbGV0dGVgIG1hcCBpbnRvIHZhcmlhYmxlcywgc3VjaCBhcyBgJHByaW1hcnktY29sb3JgIGFuZCBgJHNlY29uZGFyeS1jb2xvcmAuIENhbGwgdGhpcyBtaXhpbiBiZWxvdyB0aGUgR2xvYmFsIHNlY3Rpb24gb2YgeW91ciBzZXR0aW5ncyBmaWxlIHRvIHByb3Blcmx5IG1pZ3JhdGUgeW91ciBjb2RlYmFzZS5cbkBtaXhpbiBhZGQtZm91bmRhdGlvbi1jb2xvcnMoKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gICAgJHByaW1hcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHByaW1hcnktY29sb3I6ICMxNzc5YmEgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRzZWNvbmRhcnktY29sb3I6ICM3Njc2NzYgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2Vzcykge1xuICAgICRzdWNjZXNzLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRzdWNjZXNzLWNvbG9yOiAjM2FkYjc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpIHtcbiAgICAkd2FybmluZy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkd2FybmluZy1jb2xvcjogI2ZmYWUwMCAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkge1xuICAgICRhbGVydC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJGFsZXJ0LWNvbG9yOiAjY2M0YjM3ICFnbG9iYWw7XG4gIH1cbn1cbiIsIi8qKlxuICogTUlYSU5TXG4gKi9cblxuQG1peGluIHh5LWNlbnRlcigpIHtcblx0cG9zaXRpb246cmVsYXRpdmU7XG5cdHRvcDo1MCU7XG5cdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbkBrZXlmcmFtZXMgZmFkZWluIHtcblx0ZnJvbSB7IG9wYWNpdHk6IDA7IH1cblx0dG8gICB7IG9wYWNpdHk6IDE7IH1cbn1cblxuLnNjcm9sbGJhciB7IFxuXG5cdG1hcmdpbi1ib3R0b206IDJyZW07XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuXHRcdCRzY3JvbGxiYXItd2lkdGg6IDhweDtcblx0XHQkc2Nyb2xsYmFyLWhlaWdodDogOHB4O1xuXHRcdCRzY3JvbGxiYXItY29sb3I6ICR0YWItY29sb3VyO1xuXHRcdG92ZXJmbG93LXk6IHNjcm9sbDtcblx0XHRcblx0XHQmOjotd2Via2l0LXNjcm9sbGJhciB7XG5cdFx0XHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cdFx0XHR3aWR0aDogJHNjcm9sbGJhci13aWR0aDtcblx0XHR9XG5cblx0XHQmOjotd2Via2l0LXNjcm9sbGJhcjp2ZXJ0aWNhbCB7XG5cdFx0XHR3aWR0aDogJHNjcm9sbGJhci13aWR0aDtcblx0XHR9XG5cdFx0XG5cdFx0Jjo6LXdlYmtpdC1zY3JvbGxiYXI6aG9yaXpvbnRhbCB7XG5cdFx0XHRoZWlnaHQ6ICRzY3JvbGxiYXItaGVpZ2h0O1xuXHRcdH1cblx0XHRcblx0XHQmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA4cHg7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkc2Nyb2xsYmFyLWNvbG9yOyAvKiBzaG91bGQgbWF0Y2ggYmFja2dyb3VuZCwgY2FuJ3QgYmUgdHJhbnNwYXJlbnQgKi9cblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjUpO1xuXHRcdH1cblxuXHRcdHAge1xuXHRcdFx0Ly8gcGFkZGluZy1yaWdodDogMTBweDtcblx0XHR9XG5cdH1cdFxufVxuXG5AZnVuY3Rpb24gZW5jb2RlY29sb3IoJHN0cmluZykge1xuXHRAaWYgdHlwZS1vZigkc3RyaW5nKSA9PSAnY29sb3InIHtcbiAgICAgICAgJGhleDogc3RyLXNsaWNlKGllLWhleC1zdHIoJHN0cmluZyksIDQpO1xuICAgICAgICAkc3RyaW5nOnVucXVvdGUoXCIjeyRoZXh9XCIpO1xuICAgIH1cbiAgICAkc3RyaW5nOiAnJTIzJyArICRzdHJpbmc7XG5cdEByZXR1cm4gJHN0cmluZztcbn1cbiIsIi8qKlxuICogMS4gQXZvaWQgdGhlIElFIDEwLTExIGBtaW4taGVpZ2h0YCBidWcuXG4gKiAyLiBTZXQgYGZsZXgtc2hyaW5rYCB0byBgMGAgdG8gcHJldmVudCBzb21lIGJyb3dzZXJzIGZyb21cbiAqICAgIGxldHRpbmcgdGhlc2UgaXRlbXMgc2hyaW5rIHRvIHNtYWxsZXIgdGhhbiB0aGVpciBjb250ZW50J3MgZGVmYXVsdFxuICogICAgbWluaW11bSBzaXplLiBTZWUgaHR0cDovL2JpdC5seS8xTW4zNVVTIGZvciBkZXRhaWxzLlxuICogMy4gVXNlIGAlYCBpbnN0ZWFkIG9mIGB2aGAgc2luY2UgYHZoYCBpcyBidWdneSBpbiBvbGRlciBtb2JpbGUgU2FmYXJpLlxuICovXG5cbiAvLyBGb3IgdGhpcyBzbmlwcGV0IHRvIHdvcmssIHVzZSBtYXJrdXAgLi4uXG4gLy8gPGJvZHk+XG4gLy8gICA8aGVhZGVyPuKApjwvaGVhZGVyPlxuIC8vICAgPG1haW4gY2xhc3M9XCJTaXRlLWNvbnRlbnRcIj7igKY8L21haW4+XG4gLy8gICA8Zm9vdGVyPuKApjwvZm9vdGVyPlxuIC8vIDwvYm9keT5cblxuaHRtbCB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuYm9keSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGhlaWdodDogMTAwJTtcbn1cblxuLnNpdGUtaGVhZGVyLFxuLnNpdGUtZm9vdGVyIHtcblx0ZmxleDogbm9uZTtcbn1cblxuLnNpdGUtY29udGVudCB7XG5cdGZsZXg6IDEgMCBhdXRvO1xuXHRwYWRkaW5nOiB2YXIoLS1zcGFjZSkgdmFyKC0tc3BhY2UpIDA7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4uc2l0ZS1jb250ZW50OjphZnRlciB7XG5cdGNvbnRlbnQ6ICdcXDAwYTAnO1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luLXRvcDogdmFyKC0tc3BhY2UpO1xuXHRoZWlnaHQ6IDBweDtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xufVxuIiwiLyoqXG4gKiBHUklEIFgtWVxuICovXG5cbi5ncmlkLWNvbnRhaW5lci13cmFwcGVyIHtcblx0d2lkdGg6IDEwMCU7XHRcbn1cblxuLmdyaWQtY29udGFpbmVyIHtcblx0Ji5ncmlkLWNvbnRhaW5lci1jb2xsYXBzZSB7XHRcdFxuXHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHR9XG59XG4iLCIvLyBEZWZhdWx0IEFjY29yZGlvblxuLmFjY29yZGlvbiB7XG5cdC5hY2NvcmRpb24tdGl0bGUge1xuXHRcdC8vIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cdFx0cGFkZGluZzogMTBweCAwIDEwcHggMDtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0Ym9yZGVyOiAwO1xuXHRcdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYm9yZGVyO1xuXHRcdGg1LCAuaDUge1xuXHRcdFx0bWF4LXdpZHRoOiA5NSU7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHR9XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTFweDtcblx0XHRcdHdpZHRoOiAxNXB4O1xuXHRcdFx0aGVpZ2h0OiAxMXB4O1xuXHRcdFx0cmlnaHQ6IDEwcHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzO1xuXG5cdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTtcblx0XHRcdFx0bWFzay1zaXplOiAxNXB4IDExcHg7XG5cdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCY6aG92ZXIsICY6Zm9jdXMge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0fVxuXHR9XG5cdC5hY2NvcmRpb24tY29udGVudCB7XG5cdFx0Ym9yZGVyOiAwO1xuXHRcdG1hcmdpbi10b3A6IDE1cHg7XG5cblx0XHRhIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuXHRcdFx0cCB7XG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5hY2NvcmRpb24taXRlbS5pcy1hY3RpdmUge1xuXHRcdC5hY2NvcmRpb24tdGl0bGUge1xuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC0xODBkZWcpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYuYWNjb3JkaW9uX19ncmlkIHtcblx0XHQuYWNjb3JkaW9uLWNvbnRlbnQge1xuXHRcdFx0LmNhcmQuY2FyZF9fdGlsZSB7XG5cdFx0XHRcdC50aWxlLS13cmFwIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAyMHB4O1xuXHRcdFx0XHRcdG1pbi1oZWlnaHQ6IDE1MHB4O1xuXHRcdFx0XHRcdGRpc3BsYXk6IHRhYmxlO1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRtYXJnaW46IGF1dG87XG5cblx0XHRcdFx0XHQudGlsZS0taW5uZXIge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogdGFibGUtY2VsbDtcblx0XHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji5hY2NvcmRpb25fX2luZm8ge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0LmdyaWQtY29udGFpbmVyIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiA1NXB4O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuYWNjb3JkaW9uLXRpdGxlIHtcblx0XHRcdGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcblx0XHRcdGNvbG9yOiAkcHJpbWFyeS10aHJlZTtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcblx0XHRcdFx0cGFkZGluZzogMTBweCA4MHB4O1xuXHRcdFx0fVxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMHB4O1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cdFx0XHR9XG5cdFx0XHRoNCB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdFx0bWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O1xuXHRcdFx0XHQmLnBhcmFncmFwaCB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3ctd2hpdGUuc3ZnKTtcblx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiAxNXB4IDExcHg7XG5cdFx0XHRcdHJpZ2h0OiA0MHB4O1xuXG5cdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3ctd2hpdGUuc3ZnKTtcblx0XHRcdFx0XHRtYXNrLXNpemU6IDE1cHggMTFweDtcblx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuXHRcdFx0XHRcdHJpZ2h0OiAxNTBweDtcblx0XHRcdFx0fVxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcblx0XHRcdFx0XHRyaWdodDogMjEwcHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0dG9wOiA1NSU7XG5cdFx0XHR9XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3ctd2hpdGUuc3ZnKTtcblx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiAxNXB4IDExcHg7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdHRvcDogNTUlO1xuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCBibGFjaztcblxuXHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LXdoaXRlLnN2Zyk7XG5cdFx0XHRcdFx0bWFzay1zaXplOiAxNXB4IDExcHg7XG5cdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQuYWNjb3JkaW9uLWNvbnRlbnQge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWdyZXk7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG5cdFx0XHRcdHBhZGRpbmc6IDMwcHggODBweDtcblx0XHRcdH1cblx0XHRcdGNvbG9yOiAkY2FwdGlvbi1ncmV5O1xuXHRcdFx0cHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLy8gQ2FyZCB3aXRoIGRyb3Bkb3duIHNlY3Rpb25cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIHtcblxuXHQmLnB1YmxpY2F0aW9uIHtcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHR9XG5cdFxuXHRsaXN0LXN0eWxlOiBub25lICFpbXBvcnRhbnQ7XG5cdFxuXHQuYWNjb3JkaW9uLWl0ZW0sIFtkYXRhLWFjY29yZGlvbi1pdGVtXSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuXHRcdFxuXHRcdC5hY2NvcmRpb24tdGl0bGUge1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTFweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcblx0XHRcdFx0aGVpZ2h0OiAxMXB4O1xuXHRcdFx0XHR0b3A6IDIwcHg7XG5cdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0XHQvLyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cblx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpO1xuXHRcdFx0XHRcdG1hc2stc2l6ZTogMTVweCAxMXB4O1xuXHRcdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Jjpob3ZlciwgJjpmb2N1cyB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkd2hpdGUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LnN1YmhlYWRpbmcge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0cGFkZGluZy1yaWdodDogNDBweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0LmFjY29yZGlvbi1jb250ZW50IHtcblx0XHRcdGJvcmRlcjogMDtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXG5cdFx0Ji5pcy1hY3RpdmUge1xuXHRcdFx0LmFjY29yZGlvbi10aXRsZSB7XG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC0xODBkZWcpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Lmxpbmsge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdH1cblx0fVxuXG5cdCYuYWNjb3JkaW9uX19jYXJkX25vaW1nIHtcblx0XHQuYWNjb3JkaW9uLXRpdGxlIHtcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0fVxuXG5cdFx0LmFjY29yZGlvbl9fY29udGVudCB7XG5cdFx0XHR3aWR0aDogOTUlO1xuXHRcdH1cblx0fVxufVxuXG4kY29udGVudC1oZWlnaHQtc21hbGw6IDEwcmVtO1xuJGNvbnRlbnQtaGVpZ2h0LW1lZGl1bTogMTdyZW07XG5cbi8vIENhcmQgd2l0aCBkcm9wZG93biBzZWN0aW9uLCBzbGlnaHQgZGlmZiB0byBhYm92ZSwgXG4vLyBhY2NvbW1vZGF0ZXMgYmFja2dyb3VuZCBjb2xvciBhbmQgYWJzb2x1dGUgcG9zaXRpb25lZCBDVEEgbGlua1xuLmFjY29yZGlvbl9fY2FyZCB7XG5cdFxuXHQmLmdyZXlCZywgXG5cdCYudGFiLWNvbG91ci1iZyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHRhYi1jb2xvdXI7XG5cdFx0LmFjY29yZGlvbi1pdGVtIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR0YWItY29sb3VyO1xuXHRcdH1cblx0XHQuYWNjb3JkaW9uLWNvbnRlbnQge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHRhYi1jb2xvdXI7XG5cdFx0fVxuXHR9XG5cdFxuXHQudGFnIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXHQudGFnLmJ1dHRvbiB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0fVxuXHR9XG5cblx0LmFjY29yZGlvbl90YWcge1xuXHRcdGNvbG9yOiAkcHJpbWFyeS1vbmUgIWltcG9ydGFudDtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeS1vbmUgIWltcG9ydGFudDtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcblx0XHRtYXJnaW46IDE1cHggIWltcG9ydGFudDtcblx0XHRwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XG5cdFx0Ji5ub19tYXJnaW4ge1xuXHRcdFx0bWFyZ2luOiAxNXB4IDE1cHggMTVweCAwICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0Ji5hY2NvcmRpb25fX2NhcmRfZXF1YWxpemUge1x0XHRcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHRcdFxuXHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XG5cdFx0XG5cdFx0LmJyb3cge1xuXHRcdFx0LnRhZyB7XG5cdFx0XHRcdGJvcmRlcjogc29saWQgMXB4IGxpbWU7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmFjY29yZGlvbi10aXRsZSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHR0b3A6IDFlbTtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR9XG5cdFx0XHQucHVzaGRvd25fX2hlYWRpbmcgeyBcdFx0XHRcblx0XHRcdFx0bWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW47XG5cdFx0XHRcdHBhZGRpbmc6IDAgMjRweCAwIDA7XG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XHRcblx0XHRcdH1cblxuXHRcdFx0aDMsIC5oNCwgLmg1IHtcblx0XHRcdFx0bWF4LXdpZHRoOiA5NSU7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdC5hY2NvcmRpb24tY29udGVudCB7XHRcdFx0XG5cdFx0XHRAZXh0ZW5kIC5zY3JvbGxiYXI7XG5cdFx0XHQvLyBoZWlnaHQ6ICRjb250ZW50LWhlaWdodC1tZWRpdW07XHRcdFx0XG5cdFx0fVxuXG5cdH1cblxuXHQvLyBUaGlzIGV4cGVjdHMgYSBiZy1jb2xvciBcblx0Ji5hY2NvcmRpb25fX2NhcmRfYm94ZWQge1xuXHRcdFxuXHRcdC50YWcge1xuXHRcdFx0cGFkZGluZzogJGdsb2JhbC1tYXJnaW4gJGdsb2JhbC1tYXJnaW4gIDA7XG5cdFx0fVxuXG5cdFx0LmFjY29yZGlvbi10aXRsZSB7XG5cdFx0XHQucHVzaGRvd25fX2hlYWRpbmcgeyBcblx0XHRcdFx0bWFyZ2luOiAwICRnbG9iYWwtbWFyZ2luICRnbG9iYWwtbWFyZ2luO1xuXHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmFjY29yZGlvbi1jb250ZW50IHtcdFx0XHRcblx0XHRcdHBhZGRpbmctbGVmdDogJGdsb2JhbC1wYWRkaW5nO1x0XHRcdFxuXHRcdH1cblxuXHRcdC5saW5rIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDI0KSAkZ2xvYmFsLXBhZGRpbmc7XG5cdFx0fVxuXHR9XG59XG5cbi5jYXJkX19leHBhbmRhYmxlIHtcblx0LmFjY29yZGlvbi10aXRsZSB7XG5cdFx0ei1pbmRleDogMTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcblx0XHR9XG5cdH1cblxuXHRoNSwgLmg1IHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0cGFkZGluZy1yaWdodDogMzBweDtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTVweCAxMXB4O1xuXHRcdFx0d2lkdGg6IDE1cHg7XG5cdFx0XHRoZWlnaHQ6IDExcHg7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDE2cHg7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXM7XG5cblx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktb25lO1xuXHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpO1xuXHRcdFx0XHRtYXNrLXNpemU6IDE1cHggMTFweDtcblx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmNlbGwuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCxcbi5jZWxsIC5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbiB7XG5cdC5hY2NvcmRpb24tY29udGVudCB7XG5cdFx0QGV4dGVuZCAuc2Nyb2xsYmFyO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcblx0XHRcdC8vIGhlaWdodDogJGNvbnRlbnQtaGVpZ2h0LW1lZGl1bTtcblx0XHR9XG5cdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0fVxufVxuXG4vLyBPdmVycmlkZSBpbmhlcml0ZWQgRm91bmRhdGlvbiBjbGFzc2VzXG46bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSk+LmFjY29yZGlvbi10aXRsZSB7XG5cdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYm9yZGVyO1xufVxuXG4uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGUtbm8tYm9yZGVyLCBcbjpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKT4uYWNjb3JkaW9uLXRpdGxlLW5vLWJvcmRlciAsIFxuOmxhc3QtY2hpbGQ+LmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuXHRib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XHRcbn1cblxuLmFjY29yZGlvbi1mdWxsIHtcblx0LmFjY29yZGlvbi1jb250ZW50IHtcblx0XHRib3JkZXItbGVmdDogNXB4IHNvbGlkICRzZWNvbmRhcnktb25lO1xuXHR9XG59XG5cbmRldGFpbHMge1xuXHRjb2xvcjogJHByaW1hcnktb25lO1xuXG5cdHN1bW1hcnkge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cblx0XHQmOjptYXJrZXIsICY6Oi13ZWJraXQtZGV0YWlscy1tYXJrZXIge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTFweDtcblx0XHRcdHdpZHRoOiAxNXB4O1xuXHRcdFx0aGVpZ2h0OiAxMXB4O1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0dG9wOiAwcHg7XG5cdFx0XHRyaWdodDogLTEycHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0Ly8gdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzO1xuXG5cdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTtcblx0XHRcdFx0bWFzay1zaXplOiAxNXB4IDExcHg7XG5cdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0JltvcGVuXSB7XG5cdFx0c3VtbWFyeSB7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5hY2NvcmRpb25fX3NpZGViYXJfc2VjdGlvbiB7XG5cdC8vIGRpc3BsYXk6IG5vbmU7XG5cdC5hY2NvcmRpb24uYWNjb3JkaW9uX19zaWRlYmFyIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcblx0XHQuYWNjb3JkaW9uLXRpdGxlIHtcblx0XHRcdC8vIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdC8vIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG5cdFx0XHRwYWRkaW5nOiAyMHB4IDAgNXB4IDA7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRcdH1cblx0XHQuYWNjb3JkaW9uLWNvbnRlbnQge1xuXHRcdFx0cGFkZGluZzogMjBweDtcblx0XHRcdC5jYXJkIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHRcdFx0LmFjY29yZGlvbl9zaWRlYmFyX3NwYW4ge1xuXHRcdFx0XHRcdGhlaWdodDogMTFweDtcblx0XHRcdFx0XHR3aWR0aDogMnB4O1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0bWFyZ2luOiBhdXRvIDVweCBhdXRvIDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Ly8gJi5hY2NvcmRpb25fX3NpZGViYXJfc2hvdyB7XG5cdC8vIFx0ZGlzcGxheTogYmxvY2s7XG5cdC8vIH1cbn1cblxuIiwiLmNhcHRpb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRtYXJnaW4tYm90dG9tOiA2cHg7XG5cblx0Ji5kYXRlLCAmLnRpbWUsICYubG9jYXRpb24sICYuYWRkcmVzcyB7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHRvcDogNTAlO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdG1hcmdpbi1yaWdodDogMTJweDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQmLmRhdGUsICYudGltZSB7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0aGVpZ2h0OiAxN3B4O1xuXHRcdFx0d2lkdGg6IDE3cHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvdGltZS1pY29uLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgLyBjb250YWluO1xuXG5cdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL3RpbWUtaWNvbi5zdmcpO1xuXHRcdFx0XHRtYXNrLXNpemU6IGNvbnRhaW47XG5cdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxMXB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYubG9jYXRpb24sICYuYWRkcmVzcyB7XG5cdFx0YSB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0fVxuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0aGVpZ2h0OiAyMXB4O1xuXHRcdFx0d2lkdGg6IDE3cHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvcGluLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgLyBjb250YWluO1xuXG5cdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL3Bpbi5zdmcpO1xuXHRcdFx0XHRtYXNrLXNpemU6IGNvbnRhaW47XG5cdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIvKipcbiAqIENvbG9ycyBcbiAqL1xuXG4vKlxuXHRDb2xvciB2YXJpYWJsZSBkZWZpbmVkIGluICBcblx0fi9zY3NzL3NldHRpbmdzL19zZXR0aW5ncy5zY3NzIFxuKi9cblxuJGNvbG9yczogKFxuXHQnYmxhY2snOiAgICAgICAkYmxhY2ssXG5cdCd3aGl0ZSc6ICAgICAgICR3aGl0ZSxcblx0J2xpZ2h0LWdyYXknOiAgJGxpZ2h0LWdyYXksXG5cdCdtZWRpdW0tZ3JheSc6ICRtZWRpdW0tZ3JheSxcblx0J2RhcmstZ3JheSc6ICAgJGRhcmstZ3JheSxcblx0J3dyYXAtZ3JleSc6ICRiZy1ncmV5XG4pO1xuXG4vKiBMb29wcyB0aHJ1ICRjb2xvcnMgYW5kIGNyZWF0ZSBcblx0KiBjb2xvclxuXHQqIGJhY2tncm91bmQtY29sb3IgXG5cdCogYm9yZGVyICh1bmNvbW1lbnQgYm9yZGVyIHNlY3Rpb24gYmVsb3cgdG8gcmVuZGVyKVxuKi9cblxuLmNvbG9yIHtcblx0QGVhY2ggJGNvbG9yIGluICRjb2xvcnMge1x0XHRcblx0XHQka2V5OiBudGgoJGNvbG9yLCAxKTtcblx0XHQkdmFsdWU6IG50aCgkY29sb3IsIDIpO1x0XHRcblx0XHQmLSN7JGtleX0ge1xuXHRcdFx0Y29sb3I6ICR2YWx1ZTsgICAgICAgICAgICBcdFx0XHRcblx0XHRcdCYtYmcge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdmFsdWU7XG5cdFx0XHR9XHRcblx0XHRcdC8vICYtYm9yZGVyIHtcblx0XHRcdC8vIFx0Ym9yZGVyLWNvbG9yOiAkdmFsdWU7XHRcblx0XHRcdC8vIH0gICAgICAgIFxuXHRcdH1cblx0fVxufVxuXG4iLCIvKipcbiAqIEJhY2tncm91bmQgY29sb3Vyc1xuICovXG5cbiAuYmctdHJhbnNwYXJlbnQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuIiwiLyoqXG4gKiBCYWNrZ3JvdW5kXG4gKi9cblxuIC5iZyB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuXHQmLmJnLWNvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHR9XG5cblx0Ji5iZy1jZW50ZXIge1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdH1cblx0XG5cdCYuYmctdGludHtcdFxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGNvbnRlbnQ6ICcgJztcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC41KTtcblx0XHR9XG5cdH1cbn1cbiIsIlxuW3R5cGU9J3RleHQnXSwgXG5bdHlwZT0ncGFzc3dvcmQnXSwgXG5bdHlwZT0nZGF0ZSddLCBcblt0eXBlPSdkYXRldGltZSddLCBcblt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBcblt0eXBlPSdtb250aCddLCBcblt0eXBlPSd3ZWVrJ10sIFxuW3R5cGU9J2VtYWlsJ10sIFxuW3R5cGU9J251bWJlciddLCBcblt0eXBlPSdzZWFyY2gnXSwgXG5bdHlwZT0ndGVsJ10sIFxuW3R5cGU9J3RpbWUnXSwgXG5bdHlwZT0ndXJsJ10sIFxuW3R5cGU9J2NvbG9yJ10sIFxudGV4dGFyZWEsXG5zZWxlY3Rcbntcblx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRwcmltYXJ5LW9uZTtcblx0cGFkZGluZzogLjQ2ODc1cmVtO1xuXG5cdCY6Zm9jdXMge1xuXHRcdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkcHJpbWFyeS1vbmU7XG5cdFx0cGFkZGluZzogLjQ2ODc1cmVtO1xuXHR9XG5cblx0Jjo6cGxhY2Vob2xkZXIgeyBcblx0XHQvKiBDaHJvbWUsIEZpcmVmb3gsIE9wZXJhLCBTYWZhcmkgMTAuMSsgKi9cblx0XHRvcGFjaXR5OiAxOyBcblx0XHQvKiBGaXJlZm94ICovXG5cdH1cbn1cblxudGV4dGFyZWEge1xuXHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdHBhZGRpbmc6IDE0cHg7XG5cdGJvcmRlcjogbm9uZTtcblx0cmVzaXplOiBub25lO1xuXG5cdCY6Zm9jdXMge1xuXHRcdGJvcmRlcjogbm9uZTtcblx0fVxufVxuXG5zZWxlY3Qge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuXHQmOmZvY3VzIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0fVxufVxuXG4vLyBNYWlsQ2hpbXAgU2lnbnVwXG4uc2lnbnVwX19mb3JtIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQvL2JhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktb25lO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRtYXJnaW4tdG9wOiAtMjBweCAhaW1wb3J0YW50O1xuXG5cdCYgLmJnX19pbWcge1xuXHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRwYWRkaW5nLXRvcDogNzBweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogNzBweDtcblx0XHRoZWlnaHQ6IC13ZWJraXQtZml0LWNvbnRlbnQ7XG5cdFx0aGVpZ2h0OiAtbW96LWZpdC1jb250ZW50O1xuXHRcdGhlaWdodDogZml0LWNvbnRlbnQ7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuXHRcdG1hcmdpbi10b3A6IC00MHB4ICFpbXBvcnRhbnQ7XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG5cdFx0bWFyZ2luLXRvcDogLTcwcHggIWltcG9ydGFudDtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuXHRcdC5zaWdudXBfX2Zvcm1fY29udGFpbmVyIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDBweDtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pe1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuXHRcdC5zaWdudXBfX2Zvcm1fY29udGFpbmVyIHtcblx0XHRcdG9yZGVyOiAyO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHRcdC5ncmlkLXgge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0cGFkZGluZzogMjVweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdH1cblx0KiB7XG5cdFx0Y29sb3I6ICRwcmltYXJ5LW9uZTtcblx0fVxuXG5cdFt0eXBlPSd0ZXh0J10sIFxuXHRbdHlwZT0ncGFzc3dvcmQnXSwgXG5cdFt0eXBlPSdkYXRlJ10sIFxuXHRbdHlwZT0nZGF0ZXRpbWUnXSwgXG5cdFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBcblx0W3R5cGU9J21vbnRoJ10sIFxuXHRbdHlwZT0nd2VlayddLCBcblx0W3R5cGU9J2VtYWlsJ10sIFxuXHRbdHlwZT0nbnVtYmVyJ10sIFxuXHRbdHlwZT0nc2VhcmNoJ10sIFxuXHRbdHlwZT0ndGVsJ10sIFxuXHRbdHlwZT0ndGltZSddLCBcblx0W3R5cGU9J3VybCddLCBcblx0W3R5cGU9J2NvbG9yJ10sIFxuXHR0ZXh0YXJlYSxcblx0c2VsZWN0IHtcblx0XHRwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cdFx0cGFkZGluZy1yaWdodDogMTBweDtcblx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblx0XHRjb2xvcjogJHByaW1hcnktb25lICFpbXBvcnRhbnQ7XG5cblx0XHQmOjpwbGFjZWhvbGRlciB7IFxuXHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cdFx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdH1cblx0fVxuXG5cdC5mb3JtLWNvbnRlbnQge1xuXHRcdHBhZGRpbmc6IDMwcHggMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LW9uZTsgICAgICAgICAgICBcblx0XHRwYWRkaW5nOiAyNXB4O1xuXHRcdGJvcmRlci1yYWRpdXM6IDVweDtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRwYWRkaW5nOiAzMnB4IDQwcHg7XG5cdFx0XHQvL3BhZGRpbmc6IDUwcHggOTBweCA1MHB4IDA7XG5cdFx0fVxuXHR9XG5cblx0cCB7XG5cdFx0Ly9mb250LXNpemU6IHJlbS1jYWxjKDE4KTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0Ly9mb250LXNpemU6IHJlbS1jYWxjKDIwKTtcblx0XHR9XG5cdH1cblx0Zm9ybSB7XG5cdFx0bWFyZ2luLXRvcDogNDBweDtcblx0XHRpbnB1dDpub3QoLmJ1dHRvbiksIGlucHV0OmZvY3VzOm5vdCguYnV0dG9uKSB7XG5cdFx0XHRjb2xvcjogJHByaW1hcnktdGhyZWU7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHQvLyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdC8vIGJvcmRlcjogbm9uZTtcblx0XHRcdGJvcmRlci1ib3R0b20tY29sb3I6ICR3aGl0ZTtcblx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdFx0fVxuXHRcdGxhYmVsIHtcblx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdFx0fVxuXHR9XG5cdC5idXR0b24ge1xuXHRcdEBleHRlbmQgLnNlY29uZGFyeTtcblx0XHRtYXJnaW4tdG9wOiAxNnB4O1xuXHR9XG5cdFxuXHRpbWcge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuXHRcdFx0cGFkZGluZy1yaWdodDogMS4yNXJlbTtcblx0XHRcdHBhZGRpbmctbGVmdDogMS4yNXJlbTtcblx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRcdFx0b3JkZXI6IDE7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRsZWZ0OiBjYWxjKDUwJSArIDIwcHgpO1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdH1cblx0fVxuXG59XG5cbi8vIExvYWQgTW9yZSBmb3JtXG5cbmZvcm0jbG9hZF9tb3JlIHtcblx0cGFkZGluZy10b3A6IDUwcHg7XG5cdCNsb2FkTW9yZSB7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdH1cbn1cblxuLmdmb3JtX3dyYXBwZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0Zm9ybSB7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0fVxuXG5cdC5nZm9ybV9maWVsZHMge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdH1cblxuXHQuaGlkZGVuX2xhYmVsIHtcblx0XHRsZWdlbmQuZ2ZpZWxkX2xhYmVsIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cdC5nZl9wcm9ncmVzc2JhciB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5nZm9ybV90aXRsZSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMi41cmVtO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzcmVtO1xuXHRcdH1cblx0fVxuXG5cdC5naW5wdXRfY29udGFpbmVyX2RhdGUge1xuXHRcdHNwYW4uc2NyZWVuLXJlYWRlci10ZXh0IHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0LmdpbnB1dF9jb250YWluZXJfY2hlY2tib3gsIC5naW5wdXRfY29udGFpbmVyX3JhZGlvIHtcblx0XHR1bC5nZmllbGRfY2hlY2tib3gsIHVsLmdmaWVsZF9yYWRpbyB7XG5cdFx0XHRtYXJnaW46IDIwcHggMHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRsaTo6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogdW5zZXQgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuZ2lucHV0X2NvbnRhaW5lcl90ZXh0YXJlYSB7XG5cdFx0dGV4dGFyZWEge1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNXB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0ICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0Lmdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0LmdpbnB1dF9jb250YWluZXJfbmFtZSB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRjb2x1bW4tZ2FwOiAyMHB4O1xuXG5cdFx0XHQ+IHNwYW4ge1xuXHRcdFx0XHRmbGV4OiAxO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5nZmllbGRfbGlzdCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdHRoZWFkLCB0Ym9keSwgdGJvZHkgdHIsIHRmb290IHtcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdGJvcmRlcjogbm9uZTtcblx0fVxuXHR0Ym9keSB0ZCB7XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHR9XG5cblx0LmdpbnB1dF9jb250YWluZXJfdGV4dGFyZWEgdGV4dGFyZWEge1xuXHRcdGJhY2tncm91bmQ6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LmdmaWVsZF9jb25zZW50X2xhYmVsIHtcblx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdGNvbG9yOiAkZGFya2VyLWdyYXk7XG5cdH1cblxuXHR0ZXh0YXJlYSB7XG5cdFx0bWFyZ2luLXRvcDogMTBweDtcblx0fVxuXHQuZ2ZfbWFyZ2luX2J0bSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0fVxufVxuXG4udmFsaWRhdGlvbl9lcnJvciwgLnZhbGlkYXRpb25fbWVzc2FnZSB7XG5cdGNvbG9yOiAkYWxlcnQtY29sb3I7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi52YWxpZGF0aW9uX21lc3NhZ2Uge1xuICAgIG1hcmdpbi10b3A6IC0yMHB4O1xufVxuXG5bYXJpYS1pbnZhbGlkPXRydWVdLCAuZ2ZpZWxkX2Vycm9yIGlucHV0LCAuZ2ZpZWxkX2Vycm9yIHNlbGVjdCB7XG5cdGJvcmRlci1ib3R0b20tY29sb3I6ICRhbGVydC1jb2xvcjtcblx0Y29sb3I6ICRkYXJrZXItZ3JheTtcblx0YmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Vycm9yQDJ4LnBuZykgbm8tcmVwZWF0IGNlbnRlciByaWdodCA1cHggLyAxN3B4IDE4cHg7XG5cblx0Jjo6cGxhY2Vob2xkZXIgeyBcblx0XHRjb2xvcjogJGFsZXJ0LWNvbG9yO1xuXHR9XHRcbn1cblxuLmdmaWVsZF9sYWJlbCB7XG4gICAgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV82NSBNZWRpdW0xNDc1NTMyXCIsc2Fucy1zZXJpZjtcbn1cblxuLmdmaWVsZF9lcnJvciB7XG5cdC5nZmllbGRfbGFiZWwsIC5nZmllbGRfbGFiZWwgc3BhbiB7XG5cdFx0Y29sb3I6ICRhbGVydC1jb2xvcjtcblx0fVxuXHQuZ2lucHV0X2NvbnRhaW5lcl9maWxldXBsb2FkLCAuZ2lucHV0X3JlY2FwdGNoYSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0fVxufVxuXG50ZXh0YXJlYVthcmlhLWludmFsaWQ9dHJ1ZV0ge1xuXHRiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uZ2Zvcm1fY29uZmlybWF0aW9uX3dyYXBwZXIgIHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XG5cdC5nZm9ybV9jb25maXJtYXRpb25fbWVzc2FnZSB7XG5cdFx0Y29sb3I6ICMwNDMyNjM7XG5cdFx0Zm9udC1zaXplOiAxLjI1cmVtO1xuXHR9XG59XG5cbi5nZm9ybV9hbmNob3Ige1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTUwcHg7XG59XG5cbi5nZm9ybV9tYXJnaW5fdG9wIHtcblx0bWFyZ2luLXRvcDogMjBweDtcbn0iLCIvKipcbiAqIEJ1dHRvbnMgYW5kIGxpbmtzXG4gKi9cblxuIC8vIE1vYmlsZSBob3ZlciBzdGF0ZVxuIEBtaXhpbiByaXBwbGUoJGhvdmVyLWNvbG9yLCAkYWN0aXZlLWNvbG9yKSB7XG5cdC50b3VjaCAmIHtcbiAgICAgICAgJjpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSkge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGhvdmVyLWNvbG9yIHJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHRyYW5zcGFyZW50IDElLCAkaG92ZXItY29sb3IgMSUpIGNlbnRlci8xNTAwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXHR9XG59XG5cbmEsIGJ1dHRvbiwgYS5idXR0b24sIGxpLmZhdXgtYnV0dG9uIGEge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0Ji5hY3RpdmUge1xuXHRcdEBleHRlbmQgOmhvdmVyO1xuXHR9XG5cbiAgICAmLmRvbmF0ZV9idG4ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyM3B4O1xuICAgIH1cbn1cblxuYSB7XG5cdHRleHQtdW5kZXJsaW5lLXBvc2l0aW9uOiB1bmRlcjtcblx0dHJhbnNpdGlvbjogY29sb3IgMC4yNXM7XG59XG5cbmxpLmZhdXgtYnV0dG9uIGEge1xuXHRAZXh0ZW5kIC5idXR0b247XG59XG5cbmJ1dHRvbiwgYS5idXR0b24sIGxpLmZhdXgtYnV0dG9uIGEsIGlucHV0LmJ1dHRvbiwgLmJ1dHRvbjp2aXNpdGVkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXG4gICAgQGluY2x1ZGUgcmlwcGxlKCRidXR0b24tYmFja2dyb3VuZCwgbGlnaHRlbigkYnV0dG9uLWJhY2tncm91bmQsIDEwJSkpO1xuICAgIFxuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogOHB4O1xuXHRcdGhlaWdodDogMTVweDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1MCU7XG5cdFx0cmlnaHQ6IDI1cHg7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaWNvbnMvYXJyb3ctYnRuLWJsdWUuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgLyBjb250YWluO1xuXG5cdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktb25lO1xuXHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi1ibHVlLnN2Zyk7XG5cdFx0XHRtYXNrLXNpemU6IGNvbnRhaW47XG5cdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0bWFzay1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0XHR9XG5cdH1cblxuXHQmOmhvdmVyLCAmOmFjdGl2ZSB7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnJyk7XG5cblx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9hcnJvdy1idG4teWVsbG93LnN2Zyk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbiAgICAmLnByaW1hcnksICYucHJpbWFyeTp2aXNpdGVkLCAmLnByaW1hcnk6YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1vbmU7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1vbmU7XG4gICAgICAgICY6aG92ZXIsICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnJyk7XG5cblx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktb25lO1xuXHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9hcnJvdy1idG4teWVsbG93LnN2Zyk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG4gICAgfVxuXG5cdCYuc2Vjb25kYXJ5IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS10d287XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRAaW5jbHVkZSByaXBwbGUoJHByaW1hcnktb25lLCBsaWdodGVuKCRwcmltYXJ5LW9uZSwgMTAlKSk7XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaWNvbnMvYXJyb3ctYnRuLXdoaXRlLnN2ZycpO1xuXHRcdH1cblxuXHRcdCY6aG92ZXIsICY6YWN0aXZlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcblxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaWNvbnMvYXJyb3ctYnRuLXllbGxvdy5zdmcnKTtcblxuXHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYuY2xlYXIge1xuXHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IDFlbTtcblx0XHRcdGJvdHRvbTogMTBweDtcblx0XHRcdGhlaWdodDogM3B4O1xuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDJlbSk7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHR9XG5cblx0XHQmOmFjdGl2ZSwgJjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS10aHJlZTtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0fSBcblx0fVxuXG5cdCYuZGlzYWJsZWQsICY6ZGlzYWJsZWQge1xuXHRcdGJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcblx0XHRjb2xvcjogJHdoaXRlO1xuXG5cdFx0JjphY3RpdmUsICY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHR9XG5cdH1cblxuXHQmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdH1cbn1cblxuaW5wdXQuYnV0dG9uLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNy45ODYnIGhlaWdodD0nMTUuNjk2JyB2aWV3Qm94PScwIDAgNy45ODYgMTUuNjk2JyUzRSUzQ3BhdGggaWQ9J2Fycm93JyBkYXRhLW5hbWU9J1BhdGggNTQ2OCcgZD0nTS0xODA5NS4zOTMsMzIxMy4xODJsNC4zNzksNS45NDktNC4zNzksNS41NDInIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDE4MDk3LjUgLTMyMTEuMDg0KScgZmlsbD0nbm9uZScgc3Ryb2tlPScje2VuY29kZWNvbG9yKCRwcmltYXJ5LW9uZSl9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycvJTNFJTNDL3N2ZyUzRVwiKTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygxMDAlIC0gMjVweCkgY2VudGVyO1xuXHRiYWNrZ3JvdW5kLXNpemU6IDhweCAxNXB4O1xuXG5cdCY6aG92ZXIsICY6YWN0aXZlIHtcblx0XHQvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnJyk7XG5cdFx0Ly8gYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaWNvbnMvYXJyb3ctYnRuLWR5bmFtaWMuc3ZnP2NvbG9yPSN7JHNlY29uZGFyeS1vbmV9XCIpO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzcuOTg2JyBoZWlnaHQ9JzE1LjY5Nicgdmlld0JveD0nMCAwIDcuOTg2IDE1LjY5NiclM0UlM0NwYXRoIGlkPSdhcnJvdycgZGF0YS1uYW1lPSdQYXRoIDU0NjgnIGQ9J00tMTgwOTUuMzkzLDMyMTMuMTgybDQuMzc5LDUuOTQ5LTQuMzc5LDUuNTQyJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgxODA5Ny41IC0zMjExLjA4NCknIGZpbGw9J25vbmUnIHN0cm9rZT0nI3tlbmNvZGVjb2xvcigkc2Vjb25kYXJ5LW9uZSl9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycvJTNFJTNDL3N2ZyUzRVwiKTtcblx0fVxuXG5cdCYuc2Vjb25kYXJ5IHtcblx0XHQvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ljb25zL2Fycm93LWJ0bi13aGl0ZS5zdmcnKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc3Ljk4NicgaGVpZ2h0PScxNS42OTYnIHZpZXdCb3g9JzAgMCA3Ljk4NiAxNS42OTYnJTNFJTNDcGF0aCBpZD0nYXJyb3cnIGRhdGEtbmFtZT0nUGF0aCA1NDY4JyBkPSdNLTE4MDk1LjM5MywzMjEzLjE4Mmw0LjM3OSw1Ljk0OS00LjM3OSw1LjU0MicgdHJhbnNmb3JtPSd0cmFuc2xhdGUoMTgwOTcuNSAtMzIxMS4wODQpJyBmaWxsPSdub25lJyBzdHJva2U9JyN7ZW5jb2RlY29sb3IoJHdoaXRlKX0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuXG5cdFx0Jjpob3ZlciwgJjphY3RpdmUge1xuXHRcdFx0Ly8gYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pY29ucy9hcnJvdy1idG4teWVsbG93LnN2ZycpO1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNy45ODYnIGhlaWdodD0nMTUuNjk2JyB2aWV3Qm94PScwIDAgNy45ODYgMTUuNjk2JyUzRSUzQ3BhdGggaWQ9J2Fycm93JyBkYXRhLW5hbWU9J1BhdGggNTQ2OCcgZD0nTS0xODA5NS4zOTMsMzIxMy4xODJsNC4zNzksNS45NDktNC4zNzksNS41NDInIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDE4MDk3LjUgLTMyMTEuMDg0KScgZmlsbD0nbm9uZScgc3Ryb2tlPScje2VuY29kZWNvbG9yKCRzZWNvbmRhcnktb25lKX0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuXHRcdH1cblx0fVxuXG4gICAgJi5nZm9ybV9wcmV2aW91c19idXR0b24ge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzcuOTg2JyBoZWlnaHQ9JzE1LjY5Nicgdmlld0JveD0nMCAwIDcuOTg2IDE1LjY5NiclM0UlM0NwYXRoIGlkPSdQYXRoXzU0NjgnIGRhdGEtbmFtZT0nUGF0aCA1NDY4JyBkPSdNLTE4MDk1LjM5MywzMjEzLjE4Mmw0LjM3OSw1Ljk0OS00LjM3OSw1LjU0MicgdHJhbnNmb3JtPSd0cmFuc2xhdGUoLTE4MDg5LjUxNCAzMjI2Ljc4KSByb3RhdGUoMTgwKScgZmlsbD0nbm9uZScgc3Ryb2tlPScje2VuY29kZWNvbG9yKCRwcmltYXJ5LW9uZSl9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYyg2JSkgY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAxLjI1ZW0gMS40ZW0gMS4yNWVtIDIuOGVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDE5JSkgY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciwgJjphY3RpdmUge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNy45ODYnIGhlaWdodD0nMTUuNjk2JyB2aWV3Qm94PScwIDAgNy45ODYgMTUuNjk2JyUzRSUzQ3BhdGggaWQ9J1BhdGhfNTQ2OCcgZGF0YS1uYW1lPSdQYXRoIDU0NjgnIGQ9J00tMTgwOTUuMzkzLDMyMTMuMTgybDQuMzc5LDUuOTQ5LTQuMzc5LDUuNTQyJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgtMTgwODkuNTE0IDMyMjYuNzgpIHJvdGF0ZSgxODApJyBmaWxsPSdub25lJyBzdHJva2U9JyN7ZW5jb2RlY29sb3IoJHNlY29uZGFyeS1vbmUpfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnLyUzRSUzQy9zdmclM0VcIik7XG5cdFx0fVxuICAgIH1cbn1cblxuLy8gT25seSB1c2VkIGZvciBkZW1vIHZpZXcgaW4gRGVzaWduIExpYnJhcnlcbi5idXR0b25fcm93IHtcbiAgICAuY2VsbCB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgICB9XG59XG5cbi5idXR0b25fX2dyaWQge1xuICAgIC5ncmV5X19jZWxsLCBhIC5ncmV5X19jZWxsIHtcbiAgICAgICAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICRzZWNvbmRhcnktb25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZ3JleTtcbiAgICAgICAgLy9jb2xvcjogJHNlY29uZGFyeS1laWdodDtcbiAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgYS5ncmV5X19pbm5lciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgJjpob3ZlciwgJjphY3RpdmUge1xuICAgICAgICAgICAgLmdyZXlfX2NlbGwge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjdzO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXR3bztcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktdGhyZWU7XG4gICAgICAgICAgICAgICAgaDMsIC5oNSwgcCwgYSwgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuYnV0dG9uX19zaW1wbGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZ3JleTtcbiAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktb25lO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuXG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDU1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIsICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXB0aW9uLWdyZXk7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktdGhyZWU7XG5cbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5kZXRhaWxzIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDcwcHg7XG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS10d287XG4gICAgICAgICAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBib3R0b206IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciwgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktdGhyZWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG59XG5cbi5oZXJvX19idXR0b25fX3dyYXAge1xuICAgIC5idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgIH1cbn1cblxuLmJ1dHRvbl9fZnVsbHdpZHRoIHtcblxuICAgIC5idXR0b25fX3NpbXBsZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5LW9uZTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG8gMDtcbiAgICAgICAgfVxuICAgIFxuICAgICAgICBhIHtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0byAwIGF1dG8gYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJ1dHRvbl9faGFsZmhhbGYge1xuICAgIC5idXR0b25fX3NpbXBsZSB7XG4gICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgYSwgc3Bhbi5uby1saW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgLy8gaGVpZ2h0OiAtd2Via2l0LWZpbGwtYXZhaWxhYmxlO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWItY29sb3VyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjI1cztcblxuXHRcdFx0Lm1lZGlhICYge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRcdHBhZGRpbmc6IDAgMCAyMHB4O1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAycHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICB9XG5cblx0XHRcdFx0Jjpob3ZlciwgJjphY3RpdmUge1xuXHRcdFx0XHRcdGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuICAgICAgICAgICAgJjpob3ZlciwgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuXG5cdFx0XHRcdC5hcnJvdy1idG4ge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9idG5hcnJvdy1ob3Zlci5zdmcpO1xuXG5cdFx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvYnRuYXJyb3ctaG92ZXIuc3ZnKTtcblx0XHRcdFx0XHRcdG1hc2stc2l6ZTogMTVweCAxNXB4O1xuXHRcdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG8gMDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hcnJvdy1idG4ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG8gMTBweCBhdXRvIDA7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYnRuYXJyb3cuc3ZnKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvYnRuYXJyb3cuc3ZnKTtcblx0XHRcdFx0XHRtYXNrLXNpemU6IDE1cHggMTVweDtcblx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHR9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kb3dubG9hZC1idG4ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0byAxMHB4IGF1dG8gMDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3dubG9hZC1idG5AMngucG5nKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bmxvYWQtaWNvbi5zdmcpO1xuXHRcdFx0XHRcdG1hc2stc2l6ZTogMTVweCAxNXB4O1xuXHRcdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgc3Bhbi5uby1saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1vbmU7XG4gICAgICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LW9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmJ1dHRvbl9fc2ltcGxlX2VsZWN0aW9uIHtcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdGhyZWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZWxlY3Rpb24tYnRuIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG8gMTBweCBhdXRvIDA7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYnRuZWxlY3Rpb24uc3ZnKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG59XG5cbi8vT3ZlcnJpZGVcbi5idXR0b25fX2NhcmQge1xuICAgIGJvcmRlci10b3A6IDE0cHggc29saWQgJHByaW1hcnktdHdvO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyO1xuICAgIHBhZGRpbmc6IDEwcHggMHB4OyBcbiAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBoNTphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9hcnJvdy1uZXh0QDJ4LnBuZyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCAxM3B4O1xuICAgICAgICAgICAgd2lkdGg6IDlweDtcbiAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJyZWFkY3J1bWItd3JhcCArIC5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgdG9wOiAxMzVweDtcbiAgICB9XG59XG5cbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQge1xuICAgIG1pbi13aWR0aDogMjIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCA1cHggNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAzLjZyZW07XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMTI4cHg7XG4gICAgei1pbmRleDogOTk2O1xuICAgIHBhZGRpbmc6IDEwcHggMzBweDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgICYuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50X21vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAvLyBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICAgICAgLy8gbWFyZ2luLXJpZ2h0OiAycmVtO1xuICAgICAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIC8vIHRvcDogOTVweDtcbiAgICAgICAgLy8gbWF4LXdpZHRoOiA4My43NXJlbTtcbiAgICAgICAgLy8gd2lkdGg6IC13ZWJraXQtZmlsbC1hdmFpbGFibGU7XG4gICAgICAgIC8vIC5kcm9wZG93bi1jb250ZW50IHtcbiAgICAgICAgLy8gICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAvLyB9XG4gICAgICAgICYuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50X21vYmlsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMHB4O1xuICAgICAgICAgICAgbWluLXdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiBjYWxjKDEwMCUgLSAxLjVyZW0pO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRyb3Bkb3duLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAvLyAgICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gICAgLy8gICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICAvLyB9XG4gICAgcCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy15ZWxsb3cuc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlci9jb250YWluO1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG5cblx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LXllbGxvdy5zdmcpO1xuXHRcdFx0XHRtYXNrLXNpemU6IGNvbnRhaW47XG5cdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0XHR9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmRyb3Bkb3duLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBtaW4td2lkdGg6IDIyMHB4O1xuXHRcdG1heC1oZWlnaHQ6IDUwdmg7XG5cdFx0b3ZlcmZsb3c6IHNjcm9sbDtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDhweCAxNnB4IDBweCByZ2JhKDAsMCwwLDAuMik7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcbiAgICAgICAgei1pbmRleDogMTtcblx0XHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblx0XHRib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDBweCAxMHB4IDIwcHg7O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKDIyOCwyMjgsMjI4LDAuMik7O1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xOXB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvdGJjX3doaXRlLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIvY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7ICAgICAgXG5cblx0XHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvdGJjX3doaXRlLnN2Zyk7XG5cdFx0XHRcdFx0XHRtYXNrLXNpemU6IGNvbnRhaW47XG5cdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0bWFzay1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0XHRcdFx0XHR9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6aG92ZXIsICY6YWN0aXZlICB7XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktb25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pY29ucy90YmNfeWVsbG93LnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIvY29udGFpbjtcblxuXHRcdFx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL3RiY195ZWxsb3cuc3ZnKTtcblx0XHRcdFx0XHRcdH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmRyb3Bkb3duLWNvbnRlbnRfY2xvc2Uge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgJjpob3ZlciwgJjphY3RpdmUgIHtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIgeyAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAgICAgICAgIC5kcm9wZG93bi1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYudG9jX3Nob3cge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgdWwge1xuICAgICAgICAmLmRyb3Bkb3duLWNvbnRlbnRfY2xvc2Uge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnRfcm90YXRlIHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICAmOmFmdGVyIHsgICAgICBcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gTWljcm9zaXRlIGJ1dHRvbiBvdmVycmlkZXNcbmJvZHkubWljcm9zaXRlIHtcbiAgICAvLyBEYXJrIGJyYW5kIGNvbG91cnNcbiAgICAmLmRhcmstYnJhbmQtY29sb3VycyB7XG4gICAgICAgIC5idXR0b24ucHJpbWFyeSB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHByaW1hcnktb25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idXR0b24uc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHNlY29uZGFyeS1vbmU7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbi50ZXJ0aWFyeSB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBMaWdodCBicmFuZCBjb2xvdXJzXG4gICAgJi5saWdodC1icmFuZC1jb2xvdXJzIHtcbiAgICAgICAgLmJ1dHRvbi5wcmltYXJ5IHtcbiAgICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXR3bztcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRwcmltYXJ5LW9uZTtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRwcmltYXJ5LXR3bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uLnNlY29uZGFyeSB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRzZWNvbmRhcnktb25lO1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXR3bztcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idXR0b24udGVydGlhcnkge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJpbWcge1xuXHQmLmltYWdlIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHR9XG5cblx0QG1lZGlhIG9ubHkgcHJpbnQge1xuXHRcdHBhZ2UtYnJlYWstYmVmb3JlOiBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0cGFnZS1icmVhay1hZnRlcjogYXV0byAhaW1wb3J0YW50O1xuXHRcdHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZCAhaW1wb3J0YW50O1xuXHR9XG5cblx0Ji5hbGlnbmxlZnQge1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdG1hcmdpbi1yaWdodDogMjBweDtcblx0fVxuXG5cdCYuYWxpZ25yaWdodCB7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdG1hcmdpbi1sZWZ0OiAyMHB4O1xuXHR9XG5cblx0Ji5hbGlnbmNlbnRlciB7XG5cdFx0bWFyZ2luOiBhdXRvO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdH1cblxuXHQmLmFsaWduY2VudGVyLCAmLmFsaWducmlnaHQsICYuYWxpZ25sZWZ0IHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcblx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdG1hcmdpbjogMjBweCBhdXRvO1xuXHRcdH1cblx0fVxuXG5cdC5mYWN0c2hlZXRfYmFubmVyX2NvbnRhaW5lciAmIHtcblx0XHRoZWlnaHQ6IGNsYW1wKDM1MHB4LDQwMHB4LDUwMHB4KTtcblx0XHR3aWR0aDogYXV0bztcblx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHRvYmplY3QtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdH1cbn1cblxuaW1nLmFydGljbGVfaW1hZ2Uge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG4uY2FwdGlvbi13cmFwIHtcblx0cGFkZGluZy10b3A6IDEwcHg7XG5cdHBhZGRpbmctYm90dG9tOiAwcHg7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0cGFkZGluZy10b3A6IDIwcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XG5cdH1cbn1cbiIsInVsLnBhZ2UtbnVtYmVycyB7XG5cdEBleHRlbmQgLnBhZ2luYXRpb247XG5cdGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0ZmxleC13cmFwOiB3cmFwO1xuXG5cdGEsIGxpLmN1cnJlbnQsIGxpLmVsbGlwc2lzIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdFx0fVxuXHR9XG5cdGxpIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0aGVpZ2h0OiAzMXB4O1xuXG5cdFx0LmN1cnJlbnQge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRwcmltYXJ5LXR3bztcblx0XHR9XG5cdH1cblx0LnByZXYsIC5uZXh0IHtcblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDExcHggMTdweDtcblx0XHRcdHdpZHRoOiAxMXB4O1xuXHRcdFx0aGVpZ2h0OiAxN3B4O1xuXG5cdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdG1hc2stc2l6ZTogY29udGFpbjtcblx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0bWFzay1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQucHJldjphZnRlcntcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaWNvbnMvcHJldi1idG4uc3ZnKTtcblxuXHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9wcmV2LWJ0bi5zdmcpO1xuXHRcdH1cblx0fVxuXHQubmV4dDphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pY29ucy9uZXh0LWJ0bi5zdmcpO1xuXG5cdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktb25lO1xuXHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL25leHQtYnRuLnN2Zyk7XG5cdFx0fVxuXHR9XG59XG4iLCIuc2VhcmNoX3dyYXBwZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZ3JleSAhaW1wb3J0YW50O1xuXHQuc2VhcmNoIHtcblx0XHRpbnB1dCwgaW5wdXQ6Zm9jdXMge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHRcdGNvbG9yOiAkY2FwdGlvbi1ncmV5O1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcblxuXHRcdH1cblx0XHRpbnB1dCwgc2VsZWN0LCA6OnBsYWNlaG9sZGVyIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuXHRcdFx0Y29sb3I6ICRjYXB0aW9uLWdyZXk7XG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdH1cblx0XHRkaXYuc2VhcmNoX19pbnB1dCB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9zZWFyY2gtaWNvbi1ncmV5LnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgLyBjb250YWluO1xuXHRcdFx0XHRoZWlnaHQ6IDIwcHg7XG5cdFx0XHRcdHdpZHRoOiAyMHB4O1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMTBweDtcblx0XHRcdFx0cmlnaHQ6IDEwcHg7XG5cdFx0XHR9XG5cdFxuXHRcdH1cblx0XHQuc2VhcmNoX19maWx0ZXJzIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdH1cblx0XHRcdHNlbGVjdCB7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTVweCA4cHg7XG5cblx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpO1xuXHRcdFx0XHRcdG1hc2stc2l6ZTogMTVweCA4cHg7XG5cdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0bGFiZWwge1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdFx0XHRmbGV4OiAxO1xuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRcdFx0XHRcdFx0Ji5sYXN0IHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4jbXktY3VzdG9tLXNlYXJjaGZvcm0ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGlucHV0W3R5cGU9dGV4dF0ge1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRib3gtc2hhZG93OiBub25lO1xuXHR9XG5cdHNlbGVjdCB7XG5cdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0d2lkdGg6IDQ5JTtcblx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblx0fVxuXHRzZWxlY3Q6bnRoLWNoaWxkKG9kZCl7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHR9XG5cdGlucHV0W3R5cGU9c3VibWl0XSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGhlaWdodDogNDBweDtcblx0XHR3aWR0aDogNDBweDtcblx0XHR0ZXh0LWluZGVudDogLTk5OTk5cHg7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0ei1pbmRleDogOTk5OTk5OTk5OTk5OTtcblx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvc2VhcmNoLWljb24tcmVkLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG5cdFx0dG9wOiAwcHg7XG5cdH1cbn1cblxuLnNlYXJjaC1mb3JtIHtcblx0aW5wdXRbdHlwZT1zZWFyY2hdIHtcblx0XHQmOmFjdGl2ZSwgJjpmb2N1cyB7XG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRib3JkZXItYm90dG9tOiA0cHggc29saWQgI0NFMDAzQTtcblx0XHR9XG5cdH1cblx0bWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4uc2VhcmNoX3Jlc3VsdHMge1xuXHQucmVzdWx0c190b3RhbCB7XG5cdFx0Ly8gcGFkZGluZy1sZWZ0OiAyMHB4O1xuXHRcdC8vIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cdFx0bWFyZ2luLXRvcDogMjBweDtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0bWFyZ2luLXRvcDogNTBweDtcblx0XHR9XG5cdH1cblx0LnJlc3VsdHNfaW5mbyB7XG5cdFx0Ly8gcGFkZGluZy1sZWZ0OiA0MHB4O1xuXHRcdC8vIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG5cdFx0Ly8gcGFkZGluZy1ib3R0b206IDYwcHg7XG5cdFx0Ly8gYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRsaWdodC1ncmF5O1xuXHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdH1cblx0LnBpbmtfdGV4dCB7XG5cdFx0Y29sb3I6ICRwcmltYXJ5LW9uZTtcblx0XHRmb250LWZhbWlseTpcIkF2ZW5pciBMVCBXMDFfODUgSGVhdnkxNDc1NTQ0XCI7XG5cdH1cblx0dWwge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0bWFyZ2luOiAwcHggIWltcG9ydGFudDtcblx0XHRsaSB7XG5cdFx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCAkcHJpbWFyeS1vbmU7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDFyZW07XG5cdFx0XG5cdFx0XHRoMiB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDYwcHg7XG5cdFx0XHR9XG5cblx0XHRcdGg1IHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogOHB4O1xuXHRcdFx0fVxuXHRcdFx0cCB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0XHR9XG5cdFx0XHRhIHtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDgwMDtcblx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMTBweDtcblx0XHRcdFx0XHRoZWlnaHQ6IDEzcHg7XG5cdFx0XHRcdFx0d2lkdGg6IDlweDtcblx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9hcnJvdy1idG4tYmx1ZS5zdmcpIG5vLXJlcGVhdDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDlweCAxM3B4O1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG5cdFx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktb25lO1xuXHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi1ibHVlLnN2Zyk7XG5cdFx0XHRcdFx0XHRtYXNrLXNpemU6IDlweCAxM3B4O1xuXHRcdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4jc2VhcmNoZm9ybS5zZWFyY2hfZGVza3RvcCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cblx0aW5wdXRbdHlwZT0ndGV4dCddIHtcblx0XHRtYXJnaW46IDA7XG5cdH1cblxuXHQjc2VhcmNoLWxhbmcge1xuXHRcdGJvcmRlci1yYWRpdXM6IDIzcHg7XG5cdFx0cGFkZGluZzogMC43cmVtIDJyZW0gMC43cmVtIDFyZW07XG5cdFx0bWFyZ2luOiAwIDAgMCAyMHB4O1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoMTAwJSAtIDE1cHgpIGNlbnRlcjtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuXHRcdGlucHV0W3R5cGU9J3RleHQnXSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRcdH1cblxuXHRcdCNzZWFyY2gtbGFuZyB7XG5cdFx0XHRtYXJnaW46IDAgMCAyMHB4IDA7XG5cdFx0XHR3aWR0aDogZml0LWNvbnRlbnQ7XG5cdFx0fVxuXHR9XG59IiwiLyoqXG4gKiBMaXN0c1xuICovXG5cbiBzZWN0aW9uIHtcbiAgICAuY2VsbCB7XG4gICAgICAgIHVsOm5vdCgucGFnaW5hdGlvbik6bm90KC5wYWdlLW51bWJlcnMpOm5vdCgudGFicyk6bm90KC5hY2NvcmRpb24pOm5vdCguc29jaWFsLS1saXN0KTpub3QoLnNpZGViYXJfbGlzdCk6bm90KC5icmVhZGNydW1iLS1uYXZpZ2F0aW9uKTpub3QoLmRhc2hlZCk6bm90KC5nZm9ybV9maWVsZHMpe1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsgLyogUmVtb3ZlIGRlZmF1bHQgYnVsbGV0cyAqL1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDI0cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgLy9mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcMjAyMlwiOyAgLyogQWRkIGNvbnRlbnQ6IFxcMjAyMiBpcyB0aGUgQ1NTIENvZGUvdW5pY29kZSBmb3IgYSBidWxsZXQgKi9cbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXR3bzsgLyogQ2hhbmdlIHRoZSBjb2xvciAqL1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsgLyogSWYgeW91IHdhbnQgaXQgdG8gYmUgYm9sZCAqL1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIE5lZWRlZCB0byBhZGQgc3BhY2UgYmV0d2VlbiB0aGUgYnVsbGV0IGFuZCB0aGUgdGV4dCAqL1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMS41ZW07IC8qIEFsc28gbmVlZGVkIGZvciBzcGFjZSAodHdlYWsgaWYgbmVlZGVkKSAqL1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEuNWVtOyAvKiBBbHNvIG5lZWRlZCBmb3Igc3BhY2UgKHR3ZWFrIGlmIG5lZWRlZCkgKi9cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdWwuYWNjb3JkaW9uIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lICAvKiBBZGQgY29udGVudDogXFwyMDIyIGlzIHRoZSBDU1MgQ29kZS91bmljb2RlIGZvciBhIGJ1bGxldCAqL1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblx0LmZyZWVfdGV4dCB7XG5cdFx0dWwsIG9sIHtcblx0XHRcdC8vIG1hcmdpbi1ib3R0b206IDUwcHg7XG5cdFx0fVxuXG5cdFx0YmxvY2txdW90ZSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRtYXJnaW46IDQwcHggMDtcblxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdHdpZHRoOiAxMnB4O1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRcdFx0fVxuXG5cdFx0XHRwIHtcblx0XHRcdFx0QGV4dGVuZCBoNTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbiB9XG4iLCIvKipcbiAqIFRhYnNcbiAqL1xuXG4udGFicyB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRib3JkZXI6IG5vbmU7XG5cblx0bGkudGFicy10aXRsZSB7XG5cdFx0bWFyZ2luLXJpZ2h0OiA0cHg7XG5cdFx0Jj5hIHtcblx0XHRcdGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR0YWItY29sb3VyO1xuXHRcdH1cblx0XHRcblx0XHQmPmFbYXJpYS1zZWxlY3RlZD10cnVlXSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS10d287XG5cdFx0XHRjb2xvcjogJHByaW1hcnktdGhyZWU7XG5cdFx0fVxuXG5cdFx0YTpmb2N1cyB7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdFx0b3V0bGluZTogbm9uZTtcbiAgXHRcdFx0Ym94LXNoYWRvdzogMCAwIDJweCAkcHJpbWFyeS10aHJlZTtcblx0XHR9XG5cdH1cbn1cblxuLnRhYnMtY29udGVudCB7XG5cdGJvcmRlcjogbm9uZTtcblx0LnRhYnMtcGFuZWwge1xuXHRcdHBhZGRpbmc6ICgkZ2xvYmFsLXBhZGRpbmcgKiAyKSAwO1xuXHRcdG1hcmdpbjogMDtcblx0fVxufVxuIiwiLyoqXG4qIFR5cG9ncmFwaHlcbiovXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIC5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuXHRmb250LXN5bnRoZXNpczogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AZm9udC1mYWNle1xuXHRmb250LWZhbWlseTpcIkF2ZW5pciBMVCBXMDFfNTUgUm9tYW4xNDc1NTIwXCI7XG5cdHNyYzp1cmwoXCIuLi9mb250cy8xNDc1NTIwL2IyOTBlNzc1LWUwZjktNDk4MC05MTRiLWE0YzMyYTVlM2UzNi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSx1cmwoXCIuLi9mb250cy8xNDc1NTIwLzRiOTc4ZjcyLWJiNDgtNDZjMy05MDlhLTJhOGNkMmY4ODE5Yy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2V7XG4gICBmb250LWZhbWlseTpcIkF2ZW5pciBMVCBXMDFfNjUgTWVkaXVtMTQ3NTUzMlwiO1xuICAgc3JjOnVybChcIi4uL2ZvbnRzLzE0NzU1MzIvMTdiOTBlZjUtYjYzZi00NTdiLWE5ODEtNTAzYmI3YWZlM2MwLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLHVybChcIi4uL2ZvbnRzLzE0NzU1MzIvYzlhZWVhYmQtZGQ2NS00OTFkLWI0YmUtM2UwZGI5YWU0N2EwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cblxuQGZvbnQtZmFjZXtcbiAgIGZvbnQtZmFtaWx5OlwiQXZlbmlyIExUIFcwMV84NSBIZWF2eTE0NzU1NDRcIjtcbiAgIHNyYzp1cmwoXCIuLi9mb250cy8xNDc1NTQ0L2Q1MTNlMTVlLThmMzUtNDEyOS1hZDA1LTQ4MTgxNWU1MjYyNS53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSx1cmwoXCIuLi9mb250cy8xNDc1NTQ0LzYxYmQzNjJlLTcxNjItNDZiZC1iNjdlLTI4ZjM2NmM0YWZiZS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2V7XG4gICBmb250LWZhbWlseTpcIkF2ZW5pciBMVCBXMDFfOTUgQmxhY2sxNDc1NTU2XCI7XG4gICBzcmM6dXJsKFwiLi4vZm9udHMvMTQ3NTU1Ni9jNzhlYjdhZi1hMWM4LTQ4OTItOTc0Yi01MjM3OTY0NmZlZjQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksdXJsKFwiLi5mb250cy8xNDc1NTU2Lzc1YjM2YzU4LTJhMDItNDA1Ny1hNTM3LTA5YWYwODMyYWU0Ni53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbmJvZHkge1xuICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICBsaW5lLWhlaWdodDogMS40O1xuICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uc3ViaGVhZGluZyB7XG5cdGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfODUgSGVhdnkxNDc1NTQ0XCI7XG5cdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuXHRsaW5lLWhlaWdodDogMS40NTtcblx0bGV0dGVyLXNwYWNpbmc6IDAuMjc1ZW07XG5cdG1hcmdpbi1ib3R0b206IDhweDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Y29sb3I6ICRwcmltYXJ5LXRocmVlO1xufVxuXG4uc3RhbmRhcmQtbGluayB7XG5cdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkc2Vjb25kYXJ5LW9uZTtcblx0dHJhbnNpdGlvbjogYWxsIDAuM3M7XG5cdGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdCY6aG92ZXIge1xuXHRcdGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkZXJzLWF6dWUtYmx1ZTtcblx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHR9XG59XG5cbnAge1xuXHQmLmxhcmdlIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcblx0XHRtYXJnaW4tYm90dG9tOiAxLjI1ZW07XG5cdH1cbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbmIsIHN0cm9uZyB7XG4gICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWZvbnQtd2VpZ2h0O1xufVxuIiwiaHRtbCB7IG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuKiBodG1sIGJvZHkgeyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuJGhlYWRlci1oZWlnaHQ6IDE4NHB4O1xuJGhlYWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcblxuLy9TRVQgVEhFIEhFQURFUiBJQ09OIFBST1BFUlRJRVNcbiRoZWFkZXItaWNvbi1iYWNrZ3JvdW5kOiAnLi4vaWNvbnMvbG9nby5wbmcnO1xuJGhlYWRlci1pY29uLXdpZHRoOiAzMXB4O1xuJGhlYWRlci1pY29uLWhlaWdodDogMzFweDtcbiRoZWFkZXItaWNvbi1tYXJnaW46IDVweCAxNnB4IDVweCAwO1xuXG4vKipcblx0U2l0ZSBIZWFkZXIgXG4qL1xuLnNpdGUtaGVhZGVyIHtcdFx0XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHR3aWR0aDogMTAwJTtcblxuXHQ+IC5ncmlkLWNvbnRhaW5lciB7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHR9XG5cblx0LmhlYWRlci13cmFwIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRtaW4taGVpZ2h0OiA1NXB4O1xuXHR9XG5cblx0YSB7XG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0fVxuXG5cdC5oYW1idXJnZXIgeyBcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAxMHB4O1xuXHRcdHJpZ2h0OjE2cHg7XG5cdFx0LmhhbWJ1cmdlci1ib3gge1xuXHRcdFx0aGVpZ2h0OiAxMHB4O1xuXHRcdH1cblxuXHRcdC5oYW1iX2Nsb3NlIHtcblx0XHRcdGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuM3M7XG5cdFx0fVxuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdC8vIGNvbnRlbnQ6IFwiTWVudVwiO1xuXHRcdFx0Ly8gZm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdFx0Ly8gZm9udC1zaXplOiAxZW07XG5cdFx0XHQvLyBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHRcdFx0Ly8gcG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0Ly8gdG9wOi0ycHg7XG5cdFx0fVxuXG5cdFx0Ji5pcy1hY3RpdmU6OmJlZm9yZSB7XG5cdFx0XHQvLyBjb250ZW50OiBcIkNsb3NlXCI7XG5cdFx0XHQvLyBmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0XHQvLyBmb250LXNpemU6IDFlbTtcblx0XHRcdC8vIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cdFx0XHQvLyBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHQvLyB0b3A6LTJweDtcblx0XHR9XG5cblx0XHQmLmlzLWFjdGl2ZSB7XG5cdFx0XHQuaGFtYl9jbG9zZSB7XG5cdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmhhbWJ1cmdlci1pbm5lciwgLmhhbWJ1cmdlci1pbm5lcjphZnRlciwgLmhhbWJ1cmdlci1pbm5lcjpiZWZvcmUsIC5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6YWZ0ZXIsIC5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6YmVmb3JlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdH1cblx0XG5cdC5pY29uIHsgXG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6ICRoZWFkZXItaWNvbi13aWR0aDtcblx0XHRoZWlnaHQ6ICRoZWFkZXItaWNvbi1oZWlnaHQ7XG5cdFx0Ly8gYmFja2dyb3VuZDogdXJsKCRoZWFkZXItaWNvbi1iYWNrZ3JvdW5kKSBuby1yZXBlYXQgY2VudGVyIGxlZnQgLyBjb250YWluO1x0XHRcblxuXHRcdGltZyB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdG9iamVjdC1maXQ6IGNvbnRhaW47XG5cdFx0XHRvYmplY3QtcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pY29ucy9sb2dvLWZ1bGwucG5nKTtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiA0NHB4O1xuXHRcdFx0bWFyZ2luOiAkaGVhZGVyLWljb24tbWFyZ2luO1xuXHRcdH1cblxuXHRcdHNwYW4ge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlOyBcblx0XHRcdGxlZnQ6IC05OTk5OXB4O1xuXHRcdH1cblxuXHRcdCYuaWNvbi1zbWFsbCB7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0XHQvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaWNvbnMvbG9nby5wbmcpO1xuXHRcdFx0dHJhbnNpdGlvbjogd2lkdGggMC4yNXMsIGhlaWdodCAwLjI1cztcblx0XHRcdHdpZHRoOiAzMHB4O1xuXHRcdFx0aGVpZ2h0OiAzMHB4O1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiA1MCU7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcblx0XHRcdHdpZHRoOiA0MHB4O1xuXHRcdH1cblx0fVxuXG5cdC5zZWFyY2hfX3dyYXBwZXIge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHBhZGRpbmctbGVmdDogMjRweDtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0d2lkdGg6IDg1JTtcblx0XHRcdHBhZGRpbmctbGVmdDogMTBweDtcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdH1cblxuXHRcdGZvcm0ge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdH1cblx0XHRpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG5cdFx0XHRtYXJnaW46IDBweDtcblx0XHRcdHBhZGRpbmc6IDRweCAyMHB4O1xuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlcjtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDM1cHg7XG5cdFx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdFx0Zm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV81NSBSb21hbjE0NzU1MjBcIjtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodGVzdC1ncmF5O1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdHBhZGRpbmc6IDI0cHggMjBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubWVudSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHR3aWR0aDogMTAwJTtcdFx0XHRcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHRcdFx0XG5cdFx0bGkge1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHQvLyBwYWRkaW5nOiAxNnB4O1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1x0XG5cdFx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMHB4O1xuXHRcdFx0XHR9XG5cdFxuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0Ly8gQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XHRcblx0XHRcdC8vIFx0JjpiZWZvcmUge1xuXHRcdFx0Ly8gXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHQvLyBcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ljb25zL21vYmlsZV9tZW51X2Fycm93QDJ4LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgLyBjb250YWluO1xuXHRcdFx0Ly8gXHRcdHdpZHRoOiAxMHB4O1xuXHRcdFx0Ly8gXHRcdGhlaWdodDogMTFweDtcblx0XHRcdC8vIFx0XHRyaWdodDogMTBweDtcblx0XHRcdC8vIFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHQvLyBcdH1cblx0XHRcdC8vIH1cblxuXHRcdFx0Jjpub3QoLmZhdXgtYnV0dG9uKSB7XG5cdFx0XHRcdGEsIGg2IHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRwYWRkaW5nOiAxNnB4IDAgNXB4O1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRcdH1cblx0XHRcdFx0YSB7XG5cblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkcHJpbWFyeS10d287XG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmLnNlYXJjaC0tbGluayB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMjBweDtcblx0XHRcdFx0XHRcdGNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3NlYXJjaC1pY29uLnN2Zykgbm8tcmVwZWF0IGNlbnRlciByaWdodDtcblx0XHRcdFx0XHRcdHRleHQtaW5kZW50OiAtOTk5OTlweDtcblx0XHRcdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCYuc2VjdGlvbi1sYW5kaW5nIHtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDBweCAwcHggNXB4IDBweDtcblx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLnNlY29uZGFyeSB7XG5cdFx0XHRtYXJnaW46IDEwcHggMCAxN3B4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHRcdFx0PiBsaSB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0cGFkZGluZzogMCAyMXB4O1xuXG5cdFx0XHRcdCY6bnRoLWNoaWxkKC1uKzIpIHtcblx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYm9yZGVyO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6bnRoLWxhc3QtY2hpbGQoMikge1xuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDBweDtcblx0XHRcdFx0XHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOm5vdCguZmF1eC1idXR0b24pIHtcblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5sYW5ndWFnZXMge1xuXHRcdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHRcdFx0PiBhIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZ2xvYmUuc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlciAvIGNvbnRhaW47XG5cdFx0XHRcdFx0XHR0ZXh0LWluZGVudDogLTk5OTlweDtcblx0XHRcdFx0XHRcdHdpZHRoOiA1MHB4O1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxNnB4O1xuXG5cdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOiA4cHg7XG5cdFx0XHRcdFx0XHRcdGhlaWdodDogNXB4O1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIC8gY29udGFpbjtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmOmhvdmVyLCAmOmZvY3VzLCAmOmZvY3VzLXdpdGhpbiB7XG5cdFx0XHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdHRvcDogMTAwJTtcblx0XHRcdFx0XHRcdFx0cmlnaHQ6IC04MHB4O1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogNzV2dztcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiAyMDBweDtcblx0XHRcdFx0XHRcdFx0ei1pbmRleDogOTk4O1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQjbGFuZ3VhZ2UtbWVudSB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdCNsYW5ndWFnZS1tZW51IHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdFx0XHR0b3A6ICgkaGVhZGVyLWhlaWdodCAtIDQ4cHgpO1xuXHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdFx0ei1pbmRleDogOTk5O1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdFx0XHRwYWRkaW5nOiAyMHB4IDA7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogZGlzcGxheSAwIDJzO1xuXG5cdFx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRsaWdodC1ncmF5O1xuXHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDEwcHg7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdHVsIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRcdFx0XHRtYXJnaW46IDAgMCAxMHB4O1xuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOiAzMyU7XG5cdFx0XHRcdFx0XHRcdGZsZXg6IDAgMCBhdXRvO1xuXHRcdFx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cblx0XHRcdFx0XHRcdFx0LmxhYmVsIHtcblx0XHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRsaWdodGVyLWdyYXk7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDQ2cHg7XG5cdFx0XHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdFx0XHRcdFx0d2lkdGg6IGF1dG87XG5cblx0XHRcdFx0XHRcdCZbdGFyZ2V0PVwiX2JsYW5rXCJdIHtcblx0XHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAxMnB4O1xuXHRcdFx0XHRcdFx0XHRcdGhlaWdodDogMTJweDtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogNnB4O1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMnB4O1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaWNvbnMvbmV3LXdpbmRvdy1ibHVlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIC8gY29udGFpbjtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCY6aG92ZXIsICY6Zm9jdXMsICY6Zm9jdXMtd2l0aGluIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYuZmF1eC1idXR0b24gYSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiByZW0tY2FsYyg0NCk7XG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogcmVtLWNhbGMoNDQpO1xuXG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRjb250ZW50OiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYuc2VhcmNoLWl0ZW0ge1xuXHRcdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cdFx0fVxuXHRcdCYuaGlkZS1mb3ItbGFyZ2Uge1xuXHRcdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICRmb290ZXItYnJlYWs7XG5cdFx0fVxuXHRcdCYuZHJvcGRvd24ge1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0bWFyZ2luLXRvcDogMTJweDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDZweDtcblxuXHRcdFx0Ly8gYWxpZ24gdG8gdGhlIGxlZnQgaWYgMCwxLDIsMyBpdGVtcyBpbiBsaXN0XG5cdFx0XHQmLml0ZW1zLTIsICYuaXRlbXMtMyB7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRcdFx0Y29sdW1uLWdhcDogNDBweDtcblx0XHRcdH1cblxuXHRcdFx0Ji5uYXZfY2hpbGQge1xuXHRcdFx0XHRsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCwgbGkge1xuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTVweCAxMXB4O1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogMTVweDtcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiAxMXB4O1xuXHRcdFx0XHRcdFx0XHR0b3A6IDIwcHg7XG5cdFx0XHRcdFx0XHRcdHJpZ2h0OiAtMjVweDtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXG5cdFx0XHRcdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTtcblx0XHRcdFx0XHRcdFx0XHRtYXNrLXNpemU6IDE1cHggMTFweDtcblx0XHRcdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogJHByaW1hcnktdHdvO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFxuXHRcdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy15ZWxsb3cuc3ZnKTtcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTFweDtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTVweDtcblx0XHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDExcHg7XG5cblx0XHRcdFx0XHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0XHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LXllbGxvdy5zdmcpO1xuXHRcdFx0XHRcdFx0XHRcdFx0bWFzay1zaXplOiAxNXB4IDExcHg7XG5cdFx0XHRcdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuaXMtZHJvcGRvd24tc3VibWVudSB7XG5cdFx0XHRcdFx0XHRtYXJnaW46IDBweDtcblx0XHRcdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRcdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDEwcHggMjVweDtcblx0XHRcdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4zcztcblx0XHRcdFx0XHRcdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdFx0XHRjb250ZW50OiBub25lO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdGxpOm5vdCguaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQpIHtcblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogJHByaW1hcnktdHdvO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b20tY29sb3I6ICRzZWNvbmRhcnktb25lO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0gXG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0Lm1lbnUge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1x0XHRcblx0XHRcdGxpIHtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8qKlxuXHRQYW5lbCAmJiBcblx0Rml4ZWQgUG9zaXRpb24gbmF2aWdhdGlvblxuKi9cbmJvZHkge1xuXHQmLnBhbmVsLW9wZW4geyBcdFx0XG5cdFx0XG5cdFx0dHJhbnNpdGlvbjogYWxsIDFzIGJvdW5jZTtcblx0XHRcblx0XHQuc2l0ZS1oZWFkZXIgeyBcblx0XHRcdGhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG5cdFx0XHRcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1x0XHRcdFxuXHRcdFx0XHRoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdFx0bWF4LWhlaWdodDogMTAwdmg7XHRcdFx0XHRcblx0XHRcdFx0Lm1lbnUge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdGFiLWNvbG91cjtcblx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0bGk6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuZHJvcGRvd24tcGFuZSB7XG5cdFx0XHRcdFx0XHR1bCB7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQjbWVnYV9fbWVudV9fd3JhcHBlciB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdFx0XHR0b3A6IDU1cHg7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdHBhZGRpbmc6IDAgJGdsb2JhbC1wYWRkaW5nO1xuXHRcdFx0XHRoZWlnaHQ6IGNhbGMoMTAwdmggLSA1NXB4KTtcblxuXHRcdFx0XHQuZHJvcGRvd24tcGFuZSB7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdHRvcDogMTBweCAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5tZW51LnNlY29uZGFyeSB7XG5cdFx0XHRcdGRpc3BsYXk6aW5saW5lLWZsZXg7XG5cdFx0XHRcdGJvcmRlci10b3A6IG5vbmU7XG5cdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IG5vbmU7XG5cdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRcdFx0XHR3aWR0aDogNDAlO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGxpLmZhdXgtYnV0dG9uIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRwYWRkaW5nOiAwcHg7XG5cdFx0XHRcdFx0d2lkdGg6IDYwJTtcblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRsaS5sYW5ndWFnZXMgPiBhIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZ2xvYmUuc3ZnKSBuby1yZXBlYXQgbGVmdCBjZW50ZXIvY29udGFpbjtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IG5vcm1hbDtcblxuXHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDI1cHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdFxuXHQmLmZpeGVkLW1lbnUge1xuXHRcdC5zaXRlLWhlYWRlciB7IFx0XG5cdFx0XHQmLWZpeGVkIHtcblx0XHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdHotaW5kZXg6IDk5Nztcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRoZWlnaHQ6IDU1cHg7XG5cblx0XHRcdFx0QG1lZGlhIG9ubHkgcHJpbnQge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuXHRcdFx0XHRcdGhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdCYuY2hpbGRfaGVhZGVyIHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxNzBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQuc2l0ZS1jb250ZW50IHtcblx0XHRcdG1hcmdpbi10b3A6IDU1cHg7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAkaGVhZGVyLWhlaWdodDtcblx0XHRcdH1cblxuXHRcdFx0QG1lZGlhIG9ubHkgcHJpbnQge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cblx0XHRcdCYuY2hpbGRfdGhlbWUge1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAxNzBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vKlxuKlx0TWVnYSBNZW51XG4qL1xuXG4jbWVnYV9fbWVudV9fd3JhcHBlciB7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuXHRcdG92ZXJmbG93LXk6IHNjcm9sbDtcblxuXHRcdCNtZW51LWV5ZWJyb3ctbGlua3MtMSB7XG5cdFx0XHRwYWRkaW5nOiAxNXB4IDBweDtcblx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdFx0XHRsaSB7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLnNocmlua2VkX21lbnUge1xuXHRcdC5tZWdhLW1lbnUge1xuXHRcdFx0Lm1lZ2FfbWVudV9pbm5lci5kcm9wZG93bi1wYW5lIHtcblx0XHRcdFx0dG9wOiAxMjZweCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5tZW51LnNlY29uZGFyeSAge1xuXHRcdC5sYW5ndWFnZXMge1xuXG5cdFx0XHQjbGFuZ3VhZ2UtbWVudV9tb2Ige1xuXHRcdFx0XHQvLyB0b3A6IDU1cHg7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHR6LWluZGV4OiA5OTk7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdHBhZGRpbmc6IDIwcHggMDtcblx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkbGlnaHQtZ3JheTtcblx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMTBweDtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHRcdHVsIHtcblx0XHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRcdFx0bWFyZ2luOiAwIDAgMTBweDtcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRcdHdpZHRoOiA1MCU7XHRcdFx0XHRcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHRcdFx0ZmxleDogMCAwIGF1dG87XG5cdFx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdFx0XHRcdFx0LmxhYmVsIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xuXHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkbGlnaHRlci1ncmF5O1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogNDZweDtcblx0XHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmU7XG5cdFx0XHRcdFx0d2lkdGg6IGF1dG87XG5cblx0XHRcdFx0XHQmW3RhcmdldD1cIl9ibGFua1wiXSB7XG5cdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDEycHg7XG5cdFx0XHRcdFx0XHRcdGhlaWdodDogMTJweDtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDZweDtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAycHg7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaWNvbnMvbmV3LXdpbmRvdy1ibHVlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIC8gY29udGFpbjtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0Lmxhbmd1YWdlX21vYmlsZV9hcnJvdyB7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHRvcDogNjVweDtcblx0XHRcdFx0XHRyaWdodDogMzVweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmOmhvdmVyLCAmOmZvY3VzLCAmOmZvY3VzLXdpdGhpbiB7XG5cdFxuXHRcdFx0XHQvLyAjbGFuZ3VhZ2UtbWVudV9tb2Ige1xuXHRcdFx0XHQvLyBcdHRvcDogNyU7XG5cdFx0XHRcdC8vIH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbi5tZWdhLW1lbnUge1xuXHQubWVnYV9tZW51X2lubmVyLmRyb3Bkb3duLXBhbmUge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0Ly8gbGVmdDogLTIlICFpbXBvcnRhbnQ7XG5cdFx0dG9wOiAkaGVhZGVyLWhlaWdodCAhaW1wb3J0YW50O1xuXHRcdGxlZnQ6IDAgIWltcG9ydGFudDtcblx0XHRyaWdodDogMCAhaW1wb3J0YW50O1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXG5cdFx0LmdyaWQtY29udGFpbmVyIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblxuXHRcdGxpIHtcblx0XHRcdHBhZGRpbmc6IDBweDtcblx0XHRcdGEge1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdFx0XHR0ZXh0LXVuZGVybGluZS1wb3NpdGlvbjogYXV0bztcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDVweCAxMHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuICBcblx0Lm1lbnUge1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0Ji52ZXJ0aWNhbCB7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0Ly9ib3JkZXI6IDFweCBzb2xpZCByZWQ7XG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0bGkge1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubWVnYS0tcGFkZGluZyB7XG5cdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XG5cdH1cblxuXHQubWVudS1zdHJldGNoIHtcblx0XHRtYXJnaW4tbGVmdDogLTIwcHg7XG5cdFx0bWFyZ2luLXJpZ2h0OiAtMjBweDtcblx0fVxuXG5cdC5iYW5uZXItbGluayB7XG5cdFx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQuc2VjdGlvbi0taG9tZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHRhYi1jb2xvdXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHRwYWRkaW5nOiAxMHB4IDA7XG5cdFx0YSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdH1cblx0fVxuXG5cdC5ib3JkZXItLXJpZ2h0IHtcblx0XHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYm9yZGVyO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpe1xuXHRcdFx0Ym9yZGVyLXJpZ2h0OiBub25lO1xuXHRcdH1cblx0fVxuXHQuc2lkZS0tcGFuZWwge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuXHRcdFx0cGFkZGluZy1yaWdodDogMjBweDtcblx0XHR9XG5cdFx0c3BhbiB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXHRcdGEge1xuXHRcdFx0cGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcblx0XHR9XG5cdFx0Lm1lbnVfY3RhX2Jsb2NrIHtcblx0XHRcdGZsZXg6IDEgMCBhdXRvO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdHdvO1xuXHRcdFx0cGFkZGluZzogMjJweDtcblx0XHRcdGEge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXHRcdFx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAkc2Vjb25kYXJ5LW9uZSAhaW1wb3J0YW50O1xuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5tb2JpbGVfYmFubmVyIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogNDBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LmNvbCB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdG1hcmdpbjogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuXHRcdFx0d2lkdGg6IDMzJTtcblx0XHR9XG5cdFx0dWwge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuXHRcdFx0cGFkZGluZy1yaWdodDogMTBweDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXHRcdFx0bGkge1xuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRwYWRkaW5nOiA1cHggMTBweCA1cHggMTBweDtcblx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQubWVudS0tdGl0bGUge1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG5cdFx0XHRcdHBhZGRpbmc6IDAgMjBweCAwIDIwcHg7XG5cdFx0XHR9XG5cblx0XHRcdGEsIGg2IHtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXG5cdFx0XHQmLm1lbnUtLXRpdGxlLS0wIHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcblx0XHRcdFx0XHQvLyBtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRociB7XG5cdFx0XHRcdGhlaWdodDogMXB4O1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubWVudS0tY3RhIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMTAwJTtcblx0XHQubWVudS0tYmFubmVyIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0cGFkZGluZzogMjBweDtcblx0XHR9XG5cdH1cblxufVxuXG4uc2hyaW5rLS1oaWRlICB7XG5cdGhlaWdodDogYXV0bztcblx0b3BhY2l0eTogMTtcblx0dHJhbnNpdGlvbjogaGVpZ2h0IDBtcyAwbXMsIG9wYWNpdHkgNjAwbXMgMG1zO1xufVxuXG5cbiNzaXRlLWhlYWRlci5tZW51X19zbWFsbCB7XG5cdGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkcHJpbWFyeS10d287XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdG1pbi1oZWlnaHQ6IDEzMHB4O1xuXHR9XG5cblx0LnNocmluay0taGlkZSB7XG5cdFx0Ly9kaXNwbGF5OiBub25lO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0aGVpZ2h0OiAwO1xuXHRcdC8vb3ZlcmZsb3c6IGhpZGRlbjtcblx0XHR0cmFuc2l0aW9uOiBoZWlnaHQgMG1zIDEwMG1zLCBvcGFjaXR5IDEwMG1zIDBtcztcblx0fVxuXHQuaWNvbi5pY29uLXNtYWxsIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRcdHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cdFx0XHR3aWR0aDogNzBweDtcblx0XHRcdGhlaWdodDogNzBweDtcblx0XHR9XG5cdH1cblx0XG5cdCNsYW5ndWFnZS1tZW51IHtcblx0XHR0b3A6IDEyNnB4O1xuXHR9XG5cblx0Lm1lbnUge1xuXHRcdGxpIHtcblx0XHRcdGEge1xuXHRcdFx0XHQmLnNlYXJjaC0tbGluayB7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdGhlaWdodDogMThweDtcblx0XHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgMG1zO1xuXHRcdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCYuZHJvcGRvd24ge1xuXHRcdFx0Ly9kaXNwbGF5OiBpbmxpbmU7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHR3aWR0aDogOTAlO1xuXHRcdH1cblx0XHQmLnNlY29uZGFyeSB7XG5cdFx0XHQ+IGxpOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0d2lkdGg6IDQwcHg7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIFVzZWQgZm9yIG92ZXJyaWRpbmcgZGVmYXVsdHNcbi5kcm9wZG93bi1wYW5lLmN1c3RvbSB7XG5cdHBhZGRpbmc6IDA7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdGJvcmRlcjogMDtcbn1cblxuLmhlYWRlci1zcGFjZXIge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiA4MHB4O1xuXHRkaXNwbGF5OiBncmlkO1xuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcblx0XHRoZWlnaHQ6IDIwMHB4O1xuXHR9XG59XG5cbi8vIGdyZXkgYmFja2dvdW5kIHdoZW4gbWVnYW1lbnUgb3BlblxuXG4uYmdGaWx0ZXIge1xuXHQvLyBwb3NpdGlvbjogZml4ZWQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcblx0b3BhY2l0eTogMDtcbiAgICB3aWR0aDogMTAwdnc7XG5cdGhlaWdodDogMTAwdmg7XHRcblx0ei1pbmRleDogOTk2O1xufVxuXG4uaGVhZGVyNF92MiB7XG5cdC5oZWFkZXI0X3YyX3RyYWZmaWNMaWdodCB7XG5cdFx0bWFyZ2luOiAycmVtIDAgMS41cmVtIDA7XG5cdFx0LnRyYWZmaWNMaWdodF9ncmVlbiB7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0cGFkZGluZzogLjg1ZW0gMi4zZW07XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjQ0NFMEQwO1xuXHRcdFx0d2lkdGg6IGZpdC1jb250ZW50O1xuXHRcdH1cblx0XHQudHJhZmZpY0xpZ2h0X3JlZCB7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0cGFkZGluZzogLjg1ZW0gMi4zZW07XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkFFN0VDO1xuXHRcdFx0d2lkdGg6IGZpdC1jb250ZW50O1xuXHRcdH1cblx0fVxufVxuIiwiLyoqXG4gKiBGT09URVIgXG4gKi9cbi5zaXRlLWZvb3RlciB7XHRcblx0Y29sb3I6ICR3aGl0ZTtcblx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuXHRwYWRkaW5nOiA4MHB4IDAgMjBweCAwO1xuXG5cdGg2IHtcblx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdH1cblx0YTpub3QoLmJ1dHRvbikge1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0dGV4dC11bmRlcmxpbmUtcG9zaXRpb246IGF1dG87XG5cdH1cblx0LmJ1dHRvbiB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0bWFyZ2luLXRvcDogMjBweDtcblx0fVxuXG5cdC5jZWxsLmF1dG8ge1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdH1cblxuXHR1bCB7XG5cdFx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0Ji5mb290ZXItLWxpbmtzIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcblx0XHRcdH1cblxuXHRcdFx0bGkge1xuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMzBweDtcblxuXHRcdFx0XHRcdCZbdGFyZ2V0PVwiX2JsYW5rXCJdIHtcblx0XHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZXh0ZXJuYWwtbGluay1pY29uLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgLyBjb250YWluO1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogMzBweDtcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiAxMXB4O1xuXHRcdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IC0zMHB4O1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHR9XG5cdFx0Ji50ZXJtcy1saXN0IHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0Ym9yZGVyLXRvcDogMnB4IHNvbGlkICRwcmltYXJ5LXRocmVlO1xuXHRcdFx0Ym9yZGVyLXRvcDogMnB4IHNvbGlkIHJnYmEoJHdoaXRlLCAwLjMpO1xuXHRcdFx0bWFyZ2luLXRvcDogNDBweDtcblx0XHRcdHBhZGRpbmctdG9wOiAyMHB4O1xuXG5cdFx0XHRsaSB7XG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiA1cHg7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICR3aGl0ZTtcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCYubGFzdCB7XG5cdFx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IG5vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCY6bGFzdC1jaGlsZCBhIHtcblx0XHRcdFx0XHRcdGJvcmRlci1yaWdodDogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0JjpsYXN0LWNoaWxkIGEge1xuXHRcdFx0XHRcdGJvcmRlci1yaWdodDogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQmLnNvY2lhbCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdFx0XHRtYXJnaW4tbGVmdDogMHB4O1xuXG5cdFx0XHRsaSB7XG5cdFx0XHRcdHdpZHRoOiAyNSU7XG5cdFx0XHRcdG1heC13aWR0aDogNjBweDtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XG5cblx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0aSB7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDA7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMTAwJTtcblx0XHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjI1cztcblxuXHRcdFx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHRcdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdGkge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDE1cHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHR9XG5cblx0Lm1pY3Jvc2l0ZS1sb2dvIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblxuXHQuZm9vdGVyX19sb2dvIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuICAgIFx0Ly8ganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cblx0XHRhLmljb246Zmlyc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRcdFx0cGFkZGluZy1yaWdodDogMjBweDtcblx0XHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNmZmY7XG5cdFx0fVxuXHR9XG5cblx0Lmljb24ge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRtYXJnaW46IDA7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdHdpZHRoOiAyMjlweDtcblx0XHRoZWlnaHQ6IDUzcHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0XHQvLyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZm9vdGVyLWxvZ28uc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlciAvIGNvbnRhaW47XG5cblx0XHRpbWcge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRvYmplY3QtcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuXHRcdFx0b2JqZWN0LWZpdDogY29udGFpbjtcblx0XHR9XG5cdFx0c3BhbiB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgXHRcdGxlZnQ6IC05OTk5OXB4O1xuXHRcdH1cblx0fVxuXHQuYm9yZGVyLWNvbFx0e1xuXHRcdHBhZGRpbmctdG9wOiAyMHB4O1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdHBhZGRpbmctdG9wOiBpbml0aWFsO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0Ym9yZGVyLXRvcDogMDtcblx0XHR9XG5cdFx0c3BhbiB7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRcdH1cblx0fVxuXG5cdC5zZWFyY2hfX3dyYXBwZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtYXJnaW4tYm90dG9tOiAyNXB4O1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiBhdXRvO1xuXHRcdH1cblx0XHRpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG5cdFx0XHRwYWRkaW5nOiAyNHB4IDIwcHg7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDI1cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cblx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRvdXRsaW5lOm5vbmUgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdHJpZ2h0OiAxMHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uZGlzY2xhaW1lcl9mb290ZXIge1xuXHRwYWRkaW5nOiAyMHB4IDBweDtcblx0LmRpc2NsYWltZXJfY29udGVudCB7XG5cdFx0cHtcblx0XHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRcdGNvbG9yOiAjNzA3MDcwO1xuXHRcdFx0bWFyZ2luOiAwcHg7XG5cdFx0fVxuXHR9XG5cdC5kaXNjbGFpbWVyX2ltZ3Mge1xuXHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0aW1nLmRpc2NsYWltZXJfaW1nIHtcblx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDBweDtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDMwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIE1pY3Jvc2l0ZSBPdmVycmlkZXNcbmJvZHkubWljcm9zaXRlIHtcblx0LnNpdGUtZm9vdGVyIHtcblx0XHRwYWRkaW5nOiAzNHB4IDAgMzRweDsgLy8gODBweCAwIDIwcHggMDtcblx0fVxufVxuIiwiLmhlYWRpbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHNwYW4sIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG5cdGhyIHtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdH1cblx0cCB7XG5cdFx0Y29sb3I6ICRwcmltYXJ5LW9uZTtcblx0fVxuXG4gICAgLmhlYWRpbmctLXRhZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblx0LnRleHQtcmlnaHQge1xuICAgICAgICB0ZXh0LWFsaWduOiB1bnNldDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cdFx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICB9XG5cdH1cblxuXHRhcnRpY2xlICYge1xuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdH1cbn1cblxuaHIge1xuXHRib3JkZXI6IG5vbmU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4vLyBOZWdhdGl2ZSBtYXJnaW5cbi5vdmVybGFwX19tYXJnaW4ge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTcycHg7XG4gICAgfVxuICAgIC50ZXh0X193cmFwcGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG5cdFx0aDUge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMik7XG5cdFx0fVxuICAgIH1cbn1cblxuLmZpbHRlcl9vcHRpb25zIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICAgIHNlbGVjdCwgaW5wdXQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIHNlbGVjdCwgaW5wdXQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gVXNlIHRvIHRoaXMgbWFrZSBvdXRlciB3cmFwcGVyIGdyZXkgLSB1c2VkIG9uIENhcmQgRG93bmxvYWRcbi5ncmV5X291dGVyX3dyYXAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1ncmV5ICFpbXBvcnRhbnQ7XG59XG5cbi51cGRhdGVkIHtcblx0c3BhbiB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNCkgIWltcG9ydGFudDtcblx0fVxuXG5cdC5kYXRlIHtcblx0XHRAZXh0ZW5kIGg2O1xuXHRcdGNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cdH1cbn1cblxuLnRhZ3Mge1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblx0Zm9udC1mYW1pbHk6XCJBdmVuaXIgTFQgVzAxXzU1IFJvbWFuMTQ3NTUyMFwiO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRjb2xvcjogJHByaW1hcnktb25lO1xufVxuIiwiLyoqXG5cdEJyZWFkY3J1bWJcbiovXG4uYnJlYWRjcnVtYi13cmFwIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWdyZXk7XG5cdC8vIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4uYnJlYWRjcnVtYiB7XHRcblx0LmJyZWFkY3J1bWItLW5hdmlnYXRpb24ge1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRtYXJnaW46IDE1cHggMCAxNXB4O1xuXHRcdGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMHB4O1xuXHRcdH1cblxuXHRcdGxpIHtcblx0XHRcdGEge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuXHRcdFx0XHQmLmFjdGl2ZSwgJjpob3ZlciB7XG5cdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0QG1lZGlhIG9ubHkgcHJpbnQge1xuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0fVxufVxuXG4jYnJlYWRjcnVtYnMge1xuXHRAbWVkaWEgb25seSBwcmludCB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi8vIEhpZGUgYnJlYWRjcnVtYnMgb24gaG9tZXBhZ2Vcbi5ob21lIHAjYnJlYWRjcnVtYnMge1xuXHRkaXNwbGF5OiBub25lO1xufVxuIiwiI3NlYXJjaF9fd3JhcHBlciB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAtMTAwJTtcblx0bGVmdDogMDtcblx0cmlnaHQ6IDA7XG4gICAgb3BhY2l0eTogMDtcblx0ei1pbmRleDogOTk4ICFpbXBvcnRhbnQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZy1ncmV5O1xuXG5cdCYuc2hvdyB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR0b3A6IDA7XG5cblx0XHQjc2VhcmNoLWNsb3NlIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxuXG5cdC5pY29uIHsgXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdG1hcmdpbi10b3A6IDlweDtcblx0XHR3aWR0aDogJGhlYWRlci1pY29uLXdpZHRoO1xuXHRcdGhlaWdodDogJGhlYWRlci1pY29uLWhlaWdodDtcblx0XHQvLyBiYWNrZ3JvdW5kOiB1cmwoJGhlYWRlci1pY29uLWJhY2tncm91bmQpIG5vLXJlcGVhdCBjZW50ZXIgbGVmdCAvIGNvbnRhaW47XG5cdFx0c3BhbiB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7IFxuXHRcdFx0bGVmdDogLTk5OTk5cHg7XG5cdFx0fVxuXG5cdFx0Ji5pY29uLXNtYWxsIHtcblx0XHRcdC8vIGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9FUlMtbG9nby5zdmcpIG5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXHQjc2VhcmNoLWNsb3NlIHtcblx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvY2xvc2UtcG9wdXAuc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlciAvIGNvbnRhaW47XG5cdFx0aGVpZ2h0OjE3cHg7XG5cdFx0d2lkdGg6MTdweDtcblx0XHR0ZXh0LWluZGVudDotOTk5OXB4O1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRyaWdodDogMjBweDtcblx0XHR0b3A6IDE5cHg7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9jbG9zZS1wb3B1cC5zdmcpO1xuXHRcdFx0bWFzay1zaXplOiBjb250YWluO1xuXHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAzNHB4O1xuXHRcdFx0cmlnaHQ6IDlweDtcblx0XHR9XG5cdH1cblx0XG5cdGZvcm0ge1xuXHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdH1cblxuXHQuc2VhcmNoLWZvcm0ge1xuXHRcdG1hcmdpbi1ib3R0b206IDUwcHg7XG5cdH1cblx0LmNhcmQge1xuXHRcdHVsIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiB1bnNldDtcblx0XHRcdGxpOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6IHVuc2V0O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRtaW4taGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcblx0fVxufVxuXG4uc2VhcmNoX193cmFwcGVyIHtcblx0aW5wdXRbdHlwZT1zdWJtaXRdLCAuc2VhcmNoLWljb24ge1xuXHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9zZWFyY2gtaWNvbi5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQgMjBweDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1MCU7XG5cdFx0cmlnaHQ6IDBweDtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0aGVpZ2h0OiA1MHB4O1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHRleHQtaW5kZW50OiAtOTk5OTlweDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdC8vIHotaW5kZXg6IDk5NTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHR6LWluZGV4OiA5OTU7XG5cdFx0fVxuXHR9XG59XG4iLCIvKipcblx0U29sYWNlIE1pY3Jvc2l0ZVxuKi9cblxuLnNvbGFjZS1taWNyb3NpdGUge1xuXHQmLm1pY3Jvc2l0ZSB7XG5cblx0XHQvLyBDb3BpZWQgZnJvbSBleHRlcm5hbCBLbm93bGVkZ2UgSHViIHNpdGVcblx0XHRAZm9udC1mYWNlIHtcblx0XHRcdGZvbnQtZmFtaWx5OiBcIkF2ZW5pck5leHRcIjtcblx0XHRcdHNyYzogdXJsKFwiLi4vZm9udHMvdHdvLUJoN3NFMDM4LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDEwMDtcblx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHR9XG5cdFx0XHRcblx0XHRAZm9udC1mYWNlIHtcblx0XHRcdGZvbnQtZmFtaWx5OiBcIkF2ZW5pck5leHRcIjtcblx0XHRcdHNyYzogdXJsKFwiLi4vZm9udHMvb25lLVBuczl0TlE5LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHR9XG5cdFx0XHRcblx0XHRAZm9udC1mYWNlIHtcblx0XHRcdGZvbnQtZmFtaWx5OiBcIkF2ZW5pck5leHRcIjtcblx0XHRcdHNyYzogdXJsKFwiLi4vZm9udHMvdGhyZWUtRGZWZHFfNW8ud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7XG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdH1cblxuXHRcdC5wYWdlLXdpZHRoIHtcblx0XHRcdG1heC13aWR0aDogdmFyKC0tcGFnZS13aWR0aCk7XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHR9XG5cblx0XHQuYnVyZ2VyLW1lbnUge1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gT3ZlcnJpZGVzXG5cdFx0LnNpdGUtaGVhZGVyIHtcblx0XHRcdGEge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0dWwge1xuXHRcdFx0XHQmI21lbnUtdXBwZXIge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuXHRcdFx0XHRcdFx0XHQmOmhvdmVyLCAmOmZvY3VzIHtcblx0XHRcdFx0XHRcdFx0XHRjb2xvcjogIzA5NjI2Zjtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQmI21lbnUtbWFpbiB7XG5cdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICMwOTYyNmY7XG5cdFx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdCYuc2VsZWN0ZWQge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDk2MjZmO1xuXHRcdFx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdCNsYW5ndWFnZXMge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0fVxuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRjb250ZW50OiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGNvbG9yOiAjMDk2MjZmO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuc2l0ZS1zd2l0Y2hlciB7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI1LjJweCk7XG5cdFx0XHRcdFx0Ji5hY3RpdmUge1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQmOm5vdCguYWN0aXZlKSB7XG5cdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICMwOTYyNmY7XG5cdFx0XHRcdFx0XHRcdHRleHQtdW5kZXJsaW5lLXBvc2l0aW9uOiBhdXRvO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQuc2l0ZS1mb290ZXIge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdGNvbG9yOiB1bnNldDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRcdC5tZW51IHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg4cHgpO1xuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNS4ycHgpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LmZvb3Rlci1ib3R0b20ge1xuXHRcdFx0XHQubGVnYWxNZW51cyB7XG5cdFx0XHRcdFx0Lm1lbnUge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdGdhcDogcmVtLWNhbGMoMjBweCk7XG5cdFx0XHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XG5cdFx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI1LjJweCk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LmRpc2NsYWltZXItdGV4dCB7XG5cdFx0XHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHRcdFx0fVxuXHRcdFx0XHQuc2l0ZS1icmFuZGluZyB7XG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5iZ0ZpbHRlciB7XG5cdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHRcdC8vIFNlYXJjaCBvdmVybGF5XG5cdFx0LnNlYXJjaC1vdmVybGF5IHtcblx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0LnBsYWNlaG9sZGVyIHtcblx0XHRcdFx0XHRoZWlnaHQ6IDUwcHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0YnV0dG9uI3NlYXJjaENsb3NlIHtcblx0XHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAjMDk2MjZmO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIzA5NjI2Zjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRjb250ZW50OiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQjc2VhcmNoZm9ybS5zZWFyY2hfZGVza3RvcCAjc2VhcmNoLWxhbmcge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gTW9iaWxlXG5cdFx0Lm1vYmlsZS1tZW51LXBhbmVsIHtcblx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdCYjbGFuZ3VhZ2VzIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdH1cblx0XHRcdFx0Ji5zZWFyY2gtdG9nZ2xlIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0Y29udGVudDogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5tb2JpbGUtbWVudS1wYW5lbF9fbWFpbiwgLm1vYmlsZS1tZW51LXBhbmVsX19sb3dlciB7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0XHQmOmhvdmVyLCAmOmFjdGl2ZSB7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQubW9iaWxlLW1lbnUtcGFuZWxfX21vYmlsZSB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LndwbWwtbHMtc3RhdGljcy1mb290ZXIge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuIiwiLyoqXG4gKiBBUlRJQ0xFIFxuICovXG4gXG5hcnRpY2xlIHtcblx0cGFkZGluZy10b3A6IDQwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG5cblx0Lm90aGVyLXRyYW5zbGF0aW9ucyB7XG5cdFx0QGV4dGVuZCAuZmlsdGVycztcblx0XHR0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcblx0XHRwYWRkaW5nOiA0MHB4IDU1cHggIWltcG9ydGFudDtcblx0XHRtYXJnaW4tdG9wOiA0MHB4ICFpbXBvcnRhbnQ7XG5cblx0XHRzZWxlY3Qge1xuXHRcdFx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0LmZhY3RzaGVldC1jb250ZW50IHtcblx0XHRtYXJnaW4tdG9wOiA1NXB4O1xuXHR9XG5cblx0KyAuc2lnbnVwX2Zvcm0ge1xuXHRcdG1hcmdpbi10b3A6IDBweCAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi8qKlxuICogVHlwb2dyYXBoeSBwYWdlXG4gKi9cblxuLmFydGljbGVfX3BhZ2UsIC5idXR0b25fX3BhZ2Uge1xuICAgIC5hcnRpY2xlX190aXRsZSwgLmJ1dHRvbl9fdGl0bGUge1xuICAgICAgICBtYXJnaW46IDYwcHggMDtcbiAgICAgICAgLmFydGljbGVfX3RpdGxlX2JvcmRlciwgLmJ1dHRvbl90aXRsZV9ib3JkZXIge1xuICAgICAgICAgICBjb2xvcjogJHR5cG9ncmFwaHk7XG4gICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHR5cG9ncmFwaHk7XG4gICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYXJ0aWNsZV9faW5saW5lIHtcbiAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAvLyB3aWR0aDogMTAwJTtcbiAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLmFydGljbGVfX2NvbG9yX3NwaGVyZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuXHRcdHBhZGRpbmctYm90dG9tOiA0MCU7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgLy8gYm9yZGVyOiAxcHggc29saWQgJHNlY29uZGFyeS1vbmU7XG5cbiAgICAgICAmLnByaW1hcnlfb25lIHtcbiAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuICAgICAgIH1cbiAgICAgICAmLnByaW1hcnlfdHdvIHtcbiAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdHdvO1xuICAgICAgIH1cbiAgICAgICAmLnByaW1hcnlfdGhyZWUge1xuICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS10aHJlZTtcbiAgICAgICB9XG5cdCAgICYuc2Vjb25kYXJ5X29uZSB7XG5cdFx0ICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1vbmU7XG5cdCAgIH1cbiAgICB9XG5cbiAgICAuYXJ0aWNsZV9fY29sb3JfaGV4X3ByaW1hcnksIC5hcnRpY2xlX19jb2xvcl9oZXhfc2Vjb25kYXJ5IHtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgbWFyZ2luOiAzMHB4IGF1dG87XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5hcnRpY2xlX190ZXh0IHtcbiAgICAgICAgLmFydGljbGVfX3RleHRfbGFiZWwge1xuICAgICAgICAgICBjb2xvcjogJHR5cG9ncmFwaHk7XG4gICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYXJ0aWNsZV9fdGV4dF9jb2xvciB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzZWNvbmRhcnktb25lO1xuXG4gICAgICAgICAgICAmLnRleHRfYmxhY2sge1xuICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi50ZXh0X3doaXRlIHtcbiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYudGV4dF9jb2JhbHQge1xuICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdHdvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi50ZXh0X2dyZXkge1xuICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnRleHRfZ3JleV9saWdodCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcHRpb24tZ3JleTtcbiAgICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnRleHRfYmx1ZSB7XG4gICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZyZWVfdGV4dCB7XG4gICAgLy9tYXJnaW4tbGVmdDogMDtcbiAgICAvL21hcmdpbi1yaWdodDogMDtcbiAgICAuY2VsbCB7XG4gICAgICAgIC8vcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgICAgICAvL3BhZGRpbmctcmlnaHQ6IDEycHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIC8vcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgLy9wYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIEgyIG5lZWRzIHRvIG1hdGNoIEgzIHN0eWxlIGZvciB0aGlzIG1vZHVsZVxuICAgIGgyIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxOXB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyOCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzIpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjJweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFydGljbGVfX2ZlYXR1cmUge1xuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIC5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICAgICAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICB1bCB7XG4gICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIH1cbiAgICBvbCB7XG4gICAgICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgICAgICBsaXN0LXN0eWxlOiBub25lOyBcbiAgICAgICBjb3VudGVyLXJlc2V0OiBsaTtcbiAgICAgICBsaSB7XG4gICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IGxpO1xuICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgY29udGVudDogY291bnRlcihsaSk7XG4gICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS10aHJlZTtcbiAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICB3aWR0aDogMS4ycmVtO1xuICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjJyZW07XG4gICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTRlbTtcbiAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMi40ZW07XG4gICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgICAgICAgICB9XG4gICAgICAgfVxuICAgIH1cbn1cblxuLy8gTmV3cyBhcnRpY2xlc1xuLm5ld3NfaW50cm9fY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbn1cbi5uZXdzX2ludHJvX2NvbnRlbnQsIC5uZXdzX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICB9XG59XG5cblxuLmNvbnRlbnRzX3RhYmxlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0ZXN0LWdyYXk7XG5cdGJvcmRlci1yYWRpdXM6IDhweDtcblxuXHQuYWNjb3JkaW9uIHtcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXG5cdFx0LmFjY29yZGlvbi1pdGVtIHtcblx0XHRcdC5hY2NvcmRpb24tdGl0bGUge1xuXHRcdFx0XHRtYXJnaW46IDMwcHggMjRweCAwO1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdHRyYW5zaXRpb246IGJvcmRlciAwLjI1cztcblxuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmLmlzLWFjdGl2ZSB7XG5cdFx0XHRcdC5hY2NvcmRpb24tdGl0bGUge1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYTNhM2EzO1xuXG5cdFx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKSByb3RhdGUoLTE4MGRlZyk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5hY2NvcmRpb24tY29udGVudCB7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdFx0cGFkZGluZzogMjBweCA1OHB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG5cdFx0XHRcdFx0LmFycm93LWJ0biB7XG5cdFx0XHRcdFx0XHR0b3A6IDJweDtcblx0XHRcdFx0XHRcdGhlaWdodDogMTVweDtcblx0XHRcdFx0XHRcdG1pbi13aWR0aDogMTVweDtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdG1hcmdpbjogYXV0byAxMHB4IGF1dG8gMDtcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYnRuYXJyb3cuc3ZnKTtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTVweCAxNXB4O1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdFx0XHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2J0bmFycm93LnN2Zyk7XG5cdFx0XHRcdFx0XHRcdG1hc2stc2l6ZTogMTVweCAxNXB4O1xuXHRcdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRwcmltYXJ5LW9uZTtcblxuXHRcdFx0XHRcdFx0LmFycm93LWJ0biB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9idG5hcnJvdy1ob3Zlci5zdmcpO1xuXG5cdFx0XHRcdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvYnRuYXJyb3ctaG92ZXIuc3ZnKTtcblx0XHRcdFx0XHRcdFx0XHRtYXNrLXNpemU6IDE1cHggMTVweDtcblx0XHRcdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi8qKlxuICogQVdBUkRcbiAqL1xuIFxuLmF3YXJkX19oZXJvIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICB9XG4gICAgLnJlZ19vcGVucywgLnJlZ19jbG9zZXMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIH1cbiAgICAucmVnX29wZW5zIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHVuc2V0O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbn0iLCIvKipcbiAqIENBUkRcbiAqL1xuIFxuLmNhcmQge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyNUNGXCI7ICBcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJ1bGxldC1ibHVlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgXG4gICAgICAgICAgICAgICAgd2lkdGg6IDFlbTsgXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblx0LmltZ19saW5rIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdH1cblxuICAgIC5jYXJkLWxpbmsge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiBpbml0aWFsO1xuXHRcdC8vIGJvcmRlci1yYWRpdXM6IDVweDtcblxuXHRcdD4gZGl2Om5vdChbY2xhc3NdKSB7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XG5cdFx0XHQudGV4dF9fd3JhcHBlciB7XG5cdFx0XHRcdGZsZXg6IDEgMCBhdXRvO1xuXHRcdFx0fVxuXHRcdH1cblxuICAgICAgICAmLm92ZXJyaWRlIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGg1LCAuaDUge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cdFx0LnRleHRfX3dyYXBwZXIge1xuXHRcdFx0Y29sb3I6ICRwcmltYXJ5LW9uZTtcblx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjI1cztcblx0XHRcdHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG5cblx0XHRcdC5zdWJoZWFkaW5nIHtcblx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuMjVzO1xuXHRcdFx0fVxuXG5cdFx0XHRoNSwgLmg1IHtcblx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuMjVzO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0LnRleHRfX3dyYXBwZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogJHByaW1hcnktb25lO1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cblxuXHRcdFx0XHQuc3ViaGVhZGluZyB7XG5cdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRoNSwgLmg1IHtcblx0XHRcdFx0XHRjb2xvcjogJHNlY29uZGFyeS1vbmU7XG5cblx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdC8qXG5cdFx0XHRcdFx0XHQvLyBSZW1vdmVkIGR1ZSB0byBsb25nIHRpdGxlIGNvbmZsaWN0c1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnKTtcblxuXHRcdFx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnKTtcblx0XHRcdFx0XHRcdFx0bWFzay1zaXplOiA5cHggMTNweDtcblx0XHRcdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdCovXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuICAgIH1cblxuXHQub3ZlcmxheS1saW5rIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdHRleHQtaW5kZW50OiAtOTk5OTlweDtcblx0XHR6LWluZGV4OiAwO1xuXHR9XG5cblx0Ji5oYXMtaW1hZ2Uge1xuXHRcdG1pbi1oZWlnaHQ6IDI1NXB4O1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHQub3ZlcmxheS1pbWFnZSB7XG5cdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji5oYXMtbGluayB7XG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjI1cztcblxuXHRcdCY6aG92ZXIsICYuaGFzLWltYWdlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcblxuXHRcdFx0YSB7XG5cdFx0XHRcdGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdH1cblxuXHRcdFx0aDQsIGg1LCBwLCBhW2hyZWZePVwibWFpbHRvOlwiXSwgYVtocmVmXj1cInRlbDpcIl0sIGxpIHtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQub3ZlcmxheS1pbWFnZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0dGV4dC1pbmRlbnQ6IC05OTk5OXB4O1xuXHRcdHotaW5kZXg6IDI7XG5cdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cztcblx0fVxuXG4gICAgJi50cmFuc3BhcmVudCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIC5jYXJkLWxpbmtzIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XG4gICAgICAgICAgICBhLmxpbmstc2Vjb25kIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnRhZywgLmNhcmQtbGlua3MgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktdGhyZWU7XG4gICAgICAgIH1cbiAgICAgICAgLnRhZyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgICAgICAuY2FyZC1saW5rcyBhIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICB9XG5cdCYuYm9yZGVyZWQge1xuXHRcdGJvcmRlci10b3A6IDEycHggc29saWQgJHByaW1hcnktY29sb3I7XG5cdFx0dHJhbnNpdGlvbjogYWxsIDAuMjVzO1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRib3JkZXItdG9wLWNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHR9XG5cdH1cblxuICAgICYuY2FyZF9fc2ltcGxlIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIC5idXR0b25fd3JhcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgICYubWVkaXVtLTYge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMzBweCAwcHggMTBweCAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5jYXJkX19zaW1wbGUuaGVyby1wYWRkaW5nIHtcbiAgICAgICAgZGl2IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmNhcmRfX2xpbmsge1xuICAgICAgICBib3JkZXItdG9wOiBzb2xpZCA1cHggJHNlY29uZGFyeS1vbmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIH1cbiAgICAmLmNhcmRfX2xpc3Qge1xuICAgICAgICBociB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuY2FyZF9fY2FsbG91dCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICAgICAgcGFkZGluZzogNTBweCAyNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblx0Ji5jYXJkX19leHBhbmRhYmxlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjI1cztcblxuXHRcdC5jb250ZW50LXdyYXAge1xuXHRcdFx0cGFkZGluZzogMThweCAyNHB4O1xuXHRcdH1cblxuXHRcdC5hY2NvcmRpb24tY29udGVudCB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXG5cdFx0XHQuY29udGVudCB7XG5cdFx0XHRcdGJvcmRlci1sZWZ0OiA1cHggc29saWQgJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMTZweDtcblx0XHRcdH1cblxuXHRcdFx0aDYge1xuXHRcdFx0XHQmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdHAge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5hY2NvcmRpb24tdGl0bGUge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHQvLyBib3R0b206IDc2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwMHB4O1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHRleHQtaW5kZW50OiAtOTk5OXB4O1xuXHRcdH1cblxuXHRcdC5saW5rIHtcblx0XHRcdHotaW5kZXg6IDI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblx0XHRcdGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcblx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMThweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAxOHB4IDI0cHggMThweDtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDsgXG4gICAgICAgICAgICB9XG5cdFx0fVxuXG5cdFx0Jjpob3ZlciwgJjpmb2N1cyB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cblx0XHRcdGg1LCAuaDUsIC5oNiwgaDYsIHAsIGEsIC5zdWJoZWFkaW5nLCAuYWNjb3JkaW9uLWNvbnRlbnQgKiwgLmxpbmsge1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0fVxuXG5cdFx0XHRoNSwgLmg1IHtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LXdoaXRlLnN2Zyk7XG5cblx0XHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy13aGl0ZS5zdmcpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuICAgICAgICAgICAgaDMuaDUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgIH1cblx0XHR9XG5cdH1cbiAgICAmLmNhcmRfX3N0YXQge1xuICAgICAgICAudGV4dF9fd3JhcHBlciB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgLnN0YXRfX3dyYXBwZXJfX291dGVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc3RhdF9fd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNTAlIDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICAgICAgICAgICAgICAgIC5zdGF0IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDU0KTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuY2FyZF9fYmdfX2ltZyB7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS10aHJlZTtcblx0XHRwYWRkaW5nLXRvcDogODBweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogNjBweDtcblxuICAgICAgICBzcGFuLnN1YmhlYWRpbmcsIHAgPiBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS10aHJlZTtcbiAgICAgICAgfVxuICAgICAgICAuY3RhX3dyYXAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uLnByaW1hcnlfZGVmYXVsdC5ibHVlX2JnIHtcbiAgICAgICAgICAgIC8vbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgfVxuICAgICAgICAmLmRhcmtfX3RleHQge1xuICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktb25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBzcGFuLnN1YmhlYWRpbmcsIGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmdyZXlCZyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuY2FyZHMtaGVhZGluZy1tYXJnaW4tYm90dG9tIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gICAgfVxuICAgICYuY2FyZF9faGVhZGluZywgJi5jYXJkX19oZWFkaW5nX19pbm5lciB7XG4gICAgICAgIC8vIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgICAgaDIuaDMge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMDBweDsgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblx0XHQuc3RhbmRhcmQtbGluayB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTZweDtcblx0XHRcdH1cblx0XHR9XG4gICAgfVxuICAgICYuY2FyZF9faGVhZGluZ19faW5uZXIubWFyZ2luLWJvdHRvbSwgJi5jYXJkX19oZWFkaW5nX19pbm5lciAubWFyZ2luLWJvdHRvbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgICYuY2FyZF9faGVhZGluZ19faW5uZXIge1xuICAgICAgICAuaGVhZGluZyB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIC5oZWFkaW5nIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LW9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuY2FyZF9fcHJldmlldyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIC5oNSwgaDUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDkyJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6OmFmdGVyIHtcblx0XHRcdFx0Lypcblx0XHRcdFx0Ly8gUmVtb3ZlZCBkdWUgdG8gbG9uZyB0aXRsZSBjb25mbGljdHNcblxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi1ibHVlLnN2Zyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA5cHggMTNweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogOXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgLy90cmFuc2l0aW9uOiBsZWZ0IDAuNXMgZWFzZTtcblxuXHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktb25lO1xuXHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9hcnJvdy1idG4tYmx1ZS5zdmcpO1xuXHRcdFx0XHRcdG1hc2stc2l6ZTogOXB4IDEzcHg7XG5cdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0fVxuXHRcdFx0XHQqL1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LW9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmltYWdlX19wcmV2aWV3IHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGhlaWdodDogMDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xuXHRcdFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGltZyB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50YWdfaW1nIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggN3B4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuMjc1ZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzU1IFJvbWFuMTQ3NTUyMFwiO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5lcnMtdmlzaW9uIHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgLypcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Fycm93LW5leHRAMngucG5nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogOXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy90cmFuc2l0aW9uOiBsZWZ0IDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cdFx0XHQmLmFpcmxpbmVzLCAmLnBhdGllbnQtb3JnYW5pc2F0aW9uLCAmLnBhcnRuZXJfc29jaWV0aWVzLCAmLmNvbnRhaW4ge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkbGlnaHRlci1ncmF5O1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAwO1xuXG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdFx0XHRvYmplY3QtZml0OiBjb250YWluO1xuXHRcdFx0XHRcdG9iamVjdC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuICAgICAgICB9XG4gICAgICAgIC50ZXh0X193cmFwcGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkbGlnaHRlci1ncmF5O1xuXHRcdFx0Ym9yZGVyLXRvcDogMDtcblx0XHRcdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmg1LCBoNSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5wb2RjYXN0X2Jsb2NrIHtcbiAgICAgICAgICAgIC50ZXh0X193cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5oNTo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZmF1eC0tbGluayB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmRhdGUsIC5jYXRlZ29yeSB7XG4gICAgICAgICAgICBjb2xvcjogIzc2NzE3NTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgICAgICAuY2F0ZWdvcnkge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjFweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTlweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9hcnRpY2xlLWljb25AMngucG5nKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE5cHggMjFweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FwdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgICAgICAgICAgJi5sYXN0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHNwYW4uY2FwdGlvbiB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjFweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTlweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9hcnRpY2xlLWljb25AMngucG5nKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE5cHggMjFweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5wcmV2aWV3X19kZXRhaWxzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQob2RkKSBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGxpLmRvd25sb2FkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bmxvYWQucG5nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0uNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuY2FyZF9fcHJldmlld19ob21lIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICAuaW1hZ2VfX3ByZXZpZXcge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgJHByaW1hcnktdGhyZWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhcmRfX3B1c2hkb3duIHtcbiAgICAgICAgLmltYWdlX19wcmV2aWV3IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIC8vIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMjMwcHg7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjMwcHg7XG4gICAgICAgICAgICB9XG5cdFx0XHRpbWcge1xuXHRcdFx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHRcdFx0aGVpZ2h0OiAyMzBweDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cblx0XHRcdCYuYWlybGluZXMsICYucGF0aWVudC1vcmdhbmlzYXRpb24sICYucGFydG5lcl9zb2NpZXRpZXMsICYuY29udGFpbiB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRsaWdodGVyLWdyYXk7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cblx0XHRcdFx0aW1nIHtcblx0XHRcdFx0XHR3aWR0aDogNTAlO1xuXHRcdFx0XHRcdG9iamVjdC1maXQ6IGNvbnRhaW47XG5cdFx0XHRcdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYucGF0aWVudC1vcmdhbmlzYXRpb24uZGVmYXVsdC1iZyB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRsaWdodGVyLWdyYXk7XG5cdFx0XHR9XG4gICAgICAgIH1cblxuXHRcdCYuYWlybGluZXMge1xuXHRcdFx0LmNvbnRlbnQtd3JhcCB7XG5cdFx0XHRcdC5hY2NvcmRpb24tY29udGVudCB7XG5cdFx0XHRcdFx0aDEsaDIsaDMsaDQsaDUsaDYge1xuXHRcdFx0XHRcdFx0QGV4dGVuZCBzdHJvbmc7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjY7XG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuICAgICAgICAuY29udGVudC13cmFwIHtcbiAgICAgICAgICAgIGgzLmg1IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5tZWRpdW0tNiB7XG4gICAgICAgICAgICAuaW1hZ2VfX3ByZXZpZXcge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMxMnB4O1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAzMTJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMxMnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnRleHRfX3dyYXBwZXIge1xuICAgICAgICAgICAgLy8gcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgLy8gcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICAgIC8qXG4gICAgICAgICAgICAudGFnIHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS10d287XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAqL1xuICAgICAgICAgICAgLnB1c2hkb3duX19oZWFkaW5nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogOTAlO1xuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgLypcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDExcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgKi9cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucmVhZF9fbW9yZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXR3bztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGhyIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7IFxuICAgICAgICAgICAgICAgIGhlaWdodDogMnB4OyBcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFByb2ZpbGUgd2l0aCBwdXNoZG93blxuICAgICAgICAmLmNhcmRfX3Byb2ZpbGUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0ZXN0LWdyYXk7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAwO1xuXG5cdFx0XHQuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0fVxuXG4gICAgICAgICAgICBoNCwgLmg0LCBoNSwgLmg1LCBoNiwgLmg2IHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgJi5idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLnN0YW5kYXJkX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMTE1NDI7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGJ1bGxldC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnB1c2hkb3duX19oZWFkaW5nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICYuaDUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXHQmLmNhcmRfX21lZGlhIHtcblx0XHQuZmVhdHVyZWRfaW1nIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdFx0cGFkZGluZzogNDBweCAyMHB4O1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRwYWRkaW5nOiA4MHB4IDEwMHB4O1xuXHRcdFx0fVxuXG5cdFx0XHRoMiwgcCB7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHR9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IGNsYW1wKDIwcHgsIDUwcHgsIDcwcHgpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgIH1cblx0XHR9XG5cblx0XHQmICsgLmNlbGwge1xuXHRcdFx0YSB7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbiAgICAmLmNhcmRfX3RpbGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIC50aWxlLS13cmFwIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyNzBweDtcblxuICAgICAgICAgICAgLypcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAqL1xuXG4gICAgICAgICAgICAudGlsZS0taW5uZXIge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgIC8vIE5FV1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cbiAgICAgICAgICAgICAgICBpbWcsIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktb25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50aWxlLS1ob3ZlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0NXB4IDMwcHggNDVweCAzMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXR3bztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIHNwYW4udW5kZXJsaW5lIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGg0LCBwLCBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jYXJkLWxpbmsuZmF1eC1saW5rIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIC50aWxlLS13cmFwID4gYSAudGlsZS0taG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjcwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYudGV4dF9fYmcge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktb25lO1xuXHRcdHBhZGRpbmc6IDMycHggNDBweDtcblxuXHRcdGgxLCBoMiwgLnN1YmhlYWRpbmcsIHAge1xuXHRcdFx0Y29sb3I6ICRwcmltYXJ5LW9uZTtcblx0XHR9XG5cbiAgICAgICAgLnN1YmhlYWRpbmcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuXG5cdFx0aDIge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuXHRcdH1cblxuXHRcdC5idXR0b24tZ3JvdXAge1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHRcdFx0YTpub3QoLmJ1dHRvbikge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0Ly9mbGV4OiAxIDAgYXV0bztcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyAgIFxuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1vbmU7ICAgICBcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICRzZWNvbmRhcnktb25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkYnVsbGV0LWJsdWU7XG4gICAgICAgICAgICAgICAgfVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cdFx0fVxuXG4gICAgICAgIC5jbGVhcmZpeCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICAmLm5lZ2F0aXZlX19tYXJnaW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5oaWdobG9naHRfX3ZpZGVvX2J0biB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMHB4IDBweDtcblxuICAgICAgICB9XG5cblx0XHQmLmJnLW5vbmUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHRoMiwgcCB7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcblx0XHRcdH1cbiAgICAgICAgICAgIC5zdWJoZWFkaW5nIHtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuICAgICAgICAgICAgLmJ1dHRvbi1ncm91cCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgfVxuXHRcdH1cblxuXHRcdCYuYmctYmx1ZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS10aHJlZTtcblxuXHRcdFx0LnN1YmhlYWRpbmcsIGgyLCBwLCBhOm5vdCguYnV0dG9uKSB7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHR9XG5cdFx0fVxuXG4gICAgICAgICYuYmcteWVsbG93ICB7XG4gICAgICAgICAgICAuYnV0dG9uLWdyb3VwIHsgICAgXG4gICAgICAgICAgICAgICAgYTpub3QoLmJ1dHRvbikge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJHByaW1hcnktb25lO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGJ1bGxldC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuY2FyZF9fc2ltcGxlSGVhZGluZyB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIC5oZWFkaW5nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAuaDQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0byAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0byAwIGF1dG8gYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuY2FyZF9fc2ltcGxlSGVhZGluZ19mZWF0dXJlZCB7XG4gICAgICAgIC5oZWFkaW5nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgLmg0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG8gMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG8gMCBhdXRvIGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhcmRfX2ZlYXR1cmVkLCAmLmNhcmRfX3NpbXBsZUhlYWRpbmdfaW1nIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9jYXJkcy9jYXJkLWhlYWRpbmcucG5nKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICYuY2FyZF9fZmVhdHVyZWQge1xuICAgICAgICBtaW4taGVpZ2h0OiAyMzBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAgNXB4IDVweCAwcHggMHB4O1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgLmxpbmstYmxvY2sge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5jYXJkX19mZWF0dXJlZF9fdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNGMEYwRjA7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAgMHB4IDBweCA1cHggNXB4O1xuICAgICAgICB9XG4gICAgICAgIGEuaW5uZXItd3JhcCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAuY2FwdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgJi5sYXN0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgfVxuXG5cdFx0XHQmLmRhdGUsICYuYXV0aG9yIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRwYWRkaW5nOiAwIDEycHg7XG5cdFx0XHR9XG5cblx0XHRcdCYuZGF0ZSB7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdH1cblxuXHRcdFx0Ji5hdXRob3Ige1xuXHRcdFx0XHRmb250LWZhbWlseTpcIkF2ZW5pciBMVCBXMDFfODUgSGVhdnkxNDc1NTQ0XCI7XG5cdFx0XHR9XG5cblx0XHRcdCYuZGF0ZSArIC5hdXRob3Ige1xuXHRcdFx0XHRib3JkZXItbGVmdDogMXB4IHNvbGlkICRib3JkZXI7XG5cdFx0XHR9XG4gICAgICAgIH1cbiAgICAgICAgc3Bhbi5jYXB0aW9uIHtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgdG9wOiA2cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxOXB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2FydGljbGUtaWNvbkAyeC5wbmcpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTlweCAyMXB4O1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuY2FyZF9fYmx1ZSwgJi5jYXJkX19ncmV5IHtcbiAgICAgICAgLmNlbGw6bm90KC5jYXJkX19oZWFkaW5nX19pbm5lcikge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdHdvO1xuICAgICAgICAgICAgKjpub3QoYSkgIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktdGhyZWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAvL21hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNlbGwubGFyZ2Utb3JkZXItMSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOTBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmltZ19fZmVhdHVyZWQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC52ZXJ0aWNhbF9fYWxpZ24ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcC50ZXh0LWxpbmsge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS10aHJlZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5jYXJkX19ibHVlIHtcbiAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgLmJ1dHRvbi50ZXJ0aWFyeSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktdGhyZWU7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzZWNvbmRhcnktb25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idXR0b24uc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeS10aHJlZTtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktb25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmNhcmRfX2hhbHZlcyB7XG4gICAgICAgIC52ZXJ0aWNhbF9fYWxpZ24ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cbiAgICAgICAgLmhhbHZlc19sZWZ0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1ncmV5O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAvL2NvbG9yOiAkcHJpbWFyeS10d287XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuY2FyZF9fZ3JleSB7XG4gICAgICAgIC5jZWxsOm5vdCguY2FyZF9faGVhZGluZ19faW5uZXIpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1ncmV5O1xuICAgICAgICAgICAgKjpub3QoYSkgIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc3ViaGVhZGluZyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXR3bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmNhcmRfX3NpbXBsZUhlYWRpbmdfZmVhdHVyZWRIYWxmIHtcbiAgICAgICAgLmNhcmRfaW1nIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvY2FyZHMvY2FyZC1oZWFkaW5nLnBuZykgbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNhcmRfY29udGVudCB7XG4gICAgICAgICAgICAuaDUge1xuXG4gICAgICAgICAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYXJyb3ctbmV4dEAyeC5wbmcpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEycHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhcmRfX3Byb2ZpbGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDBweCAyMHB4IDMwcHggMjBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMzBweCBhdXRvO1xuICAgICAgICAucHJvZmlsZV9pbWcge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcblx0XHRcdGhlaWdodDogMDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiA1MCU7XG4gICAgICAgICAgICBtYXJnaW46IDMwcHggYXV0bztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgLy8gaGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICB9XG4gICAgICAgIC5wcm9maWxlX2luZm8ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBzcGFuOmFmdGVyIHtcblx0XHRcdFx0Lypcblx0XHRcdFx0Ly8gUmVtb3ZlZCBkdWUgdG8gbG9uZyB0aXRsZSBjb25mbGljdHNcblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDEwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI5cHg7XG5cblx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpO1xuXHRcdFx0XHRcdG1hc2stc2l6ZTogMTVweCAxMHB4O1xuXHRcdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0Ki9cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJvZmlsZV9saW5rIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRDdEN0Q3O1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMnB4IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5saXN0aW5nIHtcblx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICRwcmltYXJ5LW9uZTtcbiAgICAgICAgcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuXG4gICAgICAgICYucG9zdF9saXN0aW5ne1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MztcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjRkRDNDAwO1xuICAgICAgICAgICAgICAgIC5saXN0aW5nLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBiLCBhLCBzdW1tYXJ5LCBkaXYge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBhLmNhcmQge1xuICAgICAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHN1bW1hcnk6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cteWVsbG93LnN2Zyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLTEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi55ZWxsb3dfbGlzdGluZyB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ndWlkZWxpbmVfbGFiZWwge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgY29sb3I6ICRjYXB0aW9uLWdyZXk7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1vbmU7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnllYXIge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGFnc19sYWJlbCB7XG4gICAgICAgICAgICBjb2xvcjogJGNhcHRpb24tZ3JleTtcbiAgICAgICAgfVxuXHRcdFxuXHRcdC5saXN0aW5nLWNvbnRlbnQge1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0LnRhZ3Mge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxOHB4O1xuXHRcdFx0fVxuXG5cdFx0XHQuYXV0aG9ycywgLnB1Ymxpc2hlZC10eXBlLCAucHVibGlzaGVkLXllYXIge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5vdmVybGF5LWxpbmsge1xuXHRcdFx0fiAubGlzdGluZy1jb250ZW50IHtcblx0XHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnRyYW5zbGF0aW9ucyB7XG5cdFx0XHRib3JkZXItdG9wOiAycHggc29saWQgJGxpZ2h0LWdyYXk7XG5cdFx0XHRwYWRkaW5nLXRvcDogN3B4O1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IGFsbDtcblxuXHRcdFx0dWwge1xuXHRcdFx0XHRtYXJnaW46IDQ2cHggMCAwIDI2cHggIWltcG9ydGFudDtcblxuXHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0Y29udGVudDogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRzdW1tYXJ5IHtcblx0XHRcdFx0b3V0bGluZTogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0LmNhcmQge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRmbGV4OiAxIDAgYXV0bztcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0YmFja2dyb3VuZDogJGxpZ2h0ZXItZ3JheTtcblx0XHRcdFx0cGFkZGluZzogMThweCA2MHB4IDE4cHggMjBweDtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRwb2ludGVyLWV2ZW50czogYWxsO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XG5cblx0XHRcdFx0c3Bhbi5sYWJlbCB7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxNHB4O1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjI1cztcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5sYW5nIHtcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0aDUge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuMjVzO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pY29ucy9uZXctd2luZG93LWJsdWUuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgLyBjb250YWluO1xuXHRcdFx0XHRcdHdpZHRoOiAxOHB4O1xuXHRcdFx0XHRcdGhlaWdodDogMThweDtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0cmlnaHQ6IDIwcHg7XG5cdFx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG5cdFx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktb25lO1xuXHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL25ldy13aW5kb3ctYmx1ZS5zdmcpO1xuXHRcdFx0XHRcdFx0bWFzay1zaXplOiBjb250YWluO1xuXHRcdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmhvdmVyLCAmOmZvY3VzIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cblx0XHRcdFx0XHRzcGFuLmxhYmVsIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktb25lO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdGg1IHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaWNvbnMvbmV3LXdpbmRvdy15ZWxsb3cuc3ZnJyk7XG5cblx0XHRcdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9uZXctd2luZG93LXllbGxvdy5zdmcpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cbiAgICB9XG4gICAgJi5jYXJkX19ldmVudCB7XG4gICAgICAgIC50ZXh0X193cmFwcGVyIHtcbiAgICAgICAgICAgIC5kYXRlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNhdGVnb3J5IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNhcHRpb24tZ3JleTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAmLmxvY2F0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxOXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE5cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2dsb2JlLWljb25AMngucG5nKSBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE5cHggMTlweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuY29sLS1maXJzdCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idXR0b25fX3dyYXAge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHggYXV0bzsgLy8gQ2xpZW50IGZlZWRiYWNrXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5jYXJkX19ldmVudF9zaW1wbGUge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTEwcHg7XG4gICAgICAgICAgICAuY29sLS1maXJzdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgLmRhdGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5jYXJkX19ldmVudF9pbWFnZSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxNTBweDtcbiAgICAgICAgICAgIC5ldmVudF9pbWdfYmcge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhcmRfX2RldGFpbHMge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIC8vIHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG4gICAgICAgIC8vIHBhZGRpbmc6IDM2cHggNDZweDtcbiAgICAgICAgcGFkZGluZzogMThweCAyNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFiLWNvbG91cjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgJi5oYXMtbGluayB7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodGVzdC1ncmF5O1xuICAgICAgICAgICAgICAgICAgICBoNCwgaDUsIHAsIGFbaHJlZl49XCJtYWlsdG86XCJdLCBhW2hyZWZePVwidGVsOlwiXSwgbGksIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkX19kZXRhaWxzX2xpbmsge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhhcy1saW5rIHtcbiAgICAgICAgICAgIGg0LCBoNSwgcCwgYVtocmVmXj1cIm1haWx0bzpcIl0sIGFbaHJlZl49XCJ0ZWw6XCJdLCBsaSwgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRleHRfX3dyYXBwZXIge1xuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zdWJoZWFkaW5nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRhdGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY2FwdGlvbi1ncmV5O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICYubG9jYXRpb24ge1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE5cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTlweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZ2xvYmUtaWNvbkAyeC5wbmcpIG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTlweCAxOXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNhcmRfX2RldGFpbHNfY29udGFjdHMge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwcHg7XG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuY29sLS1maXJzdCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGJ1bGxldC1ibHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhLnNpbXBsZV9saW5rIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b25fX3dyYXAge1xuICAgICAgICAgICAgLy9kaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgLy9hbGlnbi1pdGVtczogYmFzZWxpbmU7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAyMHB4IGF1dG87IC8vIENsaWVudCBmZWVkYmFja1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnRfX3dyYXAge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIC8vIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmLm1lZGl1bS02IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7IC8vIDQwcHggMjBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuY2FyZF9fZGV0YWlsc19zaW1wbGUge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICRzZWNvbmRhcnktb25lO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5jYXJkX19kZXRhaWxzX3NpbmdsZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICAgICAgLmNvbC0tZmlyc3Qge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5idXR0b24udGFnIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDIwcHggNXB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5kYXRlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5jYXJkX19kZXRhaWxzX3NvY2lldHkge1xuICAgICAgICAgICAgcGFkZGluZzogNTBweCAyMHB4IDIwcHggMjBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIC5idXR0b24udGFnLm5vX2xpbmsge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDsgXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lOyAgICAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29udGVudF9fd3JhcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ1dHRvbl9fd3JhcCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweCAyMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5jYXJkX19kZXRhaWxzX3NjaWVuY2Uge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xuICAgICAgICAgICAgLm9yZ2FuaXplciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ1dHRvbl9fd3JhcCB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvc2NpZW5jZV9iYXJyb3cuc3ZnKSBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHRcdFx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9zY2llbmNlX2JhcnJvdy5zdmcpO1xuXHRcdFx0XHRcdFx0XHRtYXNrLXNpemU6IDE1cHggMTVweDtcblx0XHRcdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuY2FyZF9fZGV0YWlsc190YWcge1xuICAgICAgICAgICAgcGFkZGluZzogNDZweCAyNHB4IDE4cHggMjRweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50YWcubm9fbGluayB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAyNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdGhyZWU7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMjc1ZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV81NSBSb21hbjE0NzU1MjBcIjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIC8qIG1hcmdpbi10b3A6IC0xOHB4OyAqL1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cblx0XHQvLyBAbWVkaWEgcHJpbnQge1xuXHRcdFx0XG5cdFx0Ly8gfVxuICAgIH1cblxuICAgICYuY2FyZF9fdGVhbSB7XG4gICAgICAgIC5pbWdfX3dyYXBwZXIge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGV4dF9fd3JhcHBlciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM3NjcxNzUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uX19zaW1wbGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhcmRfX3RlYW1faW1nIHtcbiAgICAgICAgLmltZ19fd3JhcHBlciB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIC50ZXh0X193cmFwcGVyIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggNDBweDtcbiAgICAgICAgICAgIC5oNiwgaDYge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS10d287XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhcmRfX2ltZ19kZXRhaWxzIHtcbiAgICAgICAgLmltYWdlX193cmFwcGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgcGFkZGluZzogMjAwcHggMjBweCAyMHB4IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmLmNhcmRfX2FjY29yZGlhbi1uZXh0IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cblxuICAgICYuY2FyZF9kb3dubG9hZF9saXN0IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgIC8vIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuXG5cdFx0LmRvd25sb2FkX2xpc3QsIC5ub3JtYWxfbGlzdCB7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcblxuXHRcdFx0bGkge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggNTBweCAxNXB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdFx0XHQgICAgZm9udC1mYW1pbHk6XCJBdmVuaXIgTFQgVzAxXzg1IEhlYXZ5MTQ3NTU0NFwiO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodGVyLWdyYXk7XG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cblx0XHRcdFx0XHQmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG4gICAgICAgIC5kb3dubG9hZF9saXN0IHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bmxvYWQtaWNvbi5zdmcpO1xuXG5cdFx0XHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd25sb2FkLWljb24uc3ZnKTtcblx0XHRcdFx0XHRcdFx0bWFzay1zaXplOiAyMHB4IDE4cHg7XG5cdFx0XHRcdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdFx0XHR9XG4gICAgICAgICAgICAgICAgICAgIH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bmxvYWQtaWNvbi15ZWxsb3cuc3ZnKTtcblxuXHRcdFx0XHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd25sb2FkLWljb24teWVsbG93LnN2Zyk7XG5cdFx0XHRcdFx0XHRcdFx0bWFzay1zaXplOiAyMHB4IDE4cHg7XG5cdFx0XHRcdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm5vcm1hbF9saXN0IHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaWNvbnMvZXh0ZXJuYWwtbGluay1pY29uLWJsdWUuc3ZnKTtcblxuXHRcdFx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9leHRlcm5hbC1saW5rLWljb24tYmx1ZS5zdmcpO1xuXHRcdFx0XHRcdFx0XHRtYXNrLXNpemU6IDExcHggMTFweDtcblx0XHRcdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ljb25zL2V4dGVybmFsLWxpbmstaWNvbi15ZWxsb3cuc3ZnKTtcblxuXHRcdFx0XHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2V4dGVybmFsLWxpbmstaWNvbi15ZWxsb3cuc3ZnKTtcblx0XHRcdFx0XHRcdFx0XHRtYXNrLXNpemU6IDExcHggMTFweDtcblx0XHRcdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmNhcmRfc3VnZ2VzdGVkIHtcbiAgICAgICAgLmltYWdlX193cmFwcGVyIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmZlYXR1cmVkX2NhcmQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnByb21vX2NhcmRfZnVsbCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICAgICAgICAmLnByb21vX2NhcmRfZnVsbF9pbWcge1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxpc3Rpbmdfbm9fcG9zdF9tc2cge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgIH1cbn1cblxuLmNhcmRfdGFibGUge1xuICAgIHRhYmxlIHtcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgICAgdHIge1xuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Q3RDdENztcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNhcmRfZmVhdHVyZWQge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkICRsaWdodGVyLWdyYXk7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuZ3JpZC14IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLmZlYXR1cmVkX2ltZyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvY2FyZHMvY2FyZC1oZWFkaW5nLnBuZykgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7XG4gICAgICAgIC8vIGJhY2tncm91bmQtc2l6ZTogY29udGFpbiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXHRcdG1pbi1oZWlnaHQ6IDEzMHB4O1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxNTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuXHQudGFnIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiA1cHggN3B4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuMjc1ZW07XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRmb250LWZhbWlseTpcIkF2ZW5pciBMVCBXMDFfNTUgUm9tYW4xNDc1NTIwXCI7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxMik7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG5cbiAgICAuZmVhdHVyZWRfdGV4dCB7XG4gICAgICAgIHBhZGRpbmc6IDRweCAxNnB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcblxuICAgICAgICBoMy5oNSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuXHRcdFx0XHQvKlxuXHRcdFx0XHQvLyBSZW1vdmVkIGR1ZSB0byBsb25nIHRpdGxlIGNvbmZsaWN0c1xuXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi1ibHVlLnN2Zyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA5cHggMTNweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogOXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvYXJyb3ctYnRuLWJsdWUuc3ZnKTtcblx0XHRcdFx0XHRtYXNrLXNpemU6IDlweCAxM3B4O1xuXHRcdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0Ki9cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG5cdFx0fVxuXG5cdFx0Ji5jYXJkX19zbWFsbCB7XG5cdFx0XHRhIHtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICAuZmVhdHVyZWRfdGV4dCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cbiAgICAgICAgICAgIC5zdWJoZWFkaW5nLCAuY2FwdGlvbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSAuaDUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcblxuXHRcdFx0XHRcdC8qXG5cdFx0XHRcdFx0Ly8gUmVtb3ZlZCBkdWUgdG8gbG9uZyB0aXRsZSBjb25mbGljdHNcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnKTtcblxuXHRcdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktb25lO1xuXHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnKTtcblx0XHRcdFx0XHRcdG1hc2stc2l6ZTogOXB4IDEzcHg7XG5cdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQqL1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNhcmRfX2NhbGxvdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXR3bztcbiAgICAuY2FyZCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdHdvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cdFx0cGFkZGluZzogNTBweCAwO1xuXHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0cGFkZGluZzogNzBweCAwO1xuXHRcdH1cblxuICAgICAgICBoMiwgLmgyLCBoNCwgLmg0IHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyM3B4O1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7IFxuICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5mdWxsX3RleHQge1xuICAgICAgICAuY2FyZCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgfVxuXG5cdCYuc2Vjb25kYXJ5IHtcblx0XHQuY2FyZCB7XG5cdFx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1vbmU7XG5cblx0XHRcdGgyLCAuaDIsIGg0LCAuaDQge1xuXHRcdFx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uY2FyZF9fZmFtZSB7XG4gICAgLmNlbGwuc2luZ2xlX19mYW1lIHtcbiAgICAgICAgcGFkZGluZzogNDBweCAyMHB4IDMwcHggMjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgaDUsIGg2IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgaDYge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXR3bztcbiAgICAgICAgfVxuICAgICAgICBociB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmdfX2ltZyB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBwYWRkaW5nLXRvcDogNzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcbiAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gICAgXG4gICAgfVxuXG4gICAgJi5hbHQge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICAmLmhlcm9fX2Nhcm91c2VsIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgaDEsIGgyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoMSwgaDIsIGgyIHNwYW4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXHQuYnV0dG9uLWdyb3VwIHtcblx0XHQuYnV0dG9uIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMjZweDtcblx0XHR9XG5cdH1cblxuICAgICYuYmdfX2hlcm8ge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ2MHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdFx0aDEge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjIpO1xuXHRcdH1cblxuICAgICAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXHRcdGE6bm90KC5idXR0b24pIHtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiA0cHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICM2NDlBREI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0bWFyZ2luOiAwIDYwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXG4gICAgICAgICYuYmdfX2hlcm9faG9tZSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMjA4cHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzZweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogNjRweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTQ4cHg7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jYXJkX19wcmV2aWV3IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9vdG5vdGVzX2NhcmQge1xuICAgIG1hcmdpbjogMS41cmVtIC43NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgI0I5QjlCOTtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMHJlbTtcbiAgICB9XG5cbn1cblxuLm1vcmVfbmV3cyB7XG4gICAgYmFja2dyb3VuZDogJGJnLWdyZXk7XG4gICAgcGFkZGluZzogMThweCAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cdGEsIHAsIC5zaG93IHtcblx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdHRyYW5zaXRpb246IGNvbG9yIDAuMjVzO1xuXHR9XG4gICAgcCB7XG5cdFx0bWFyZ2luOiAxLjdyZW0gMCAyLjVyZW07XG4gICAgICAgIGNvbG9yOiAkZGFya2VyLWdyYXk7XG5cdH1cbiAgICBzcGFuLmZhdXgtbGluayB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBmb250LWZhbWlseTpcIkF2ZW5pciBMVCBXMDFfNjUgTWVkaXVtMTQ3NTUzMlwiO1xuICAgICAgICAvLyBmb250LXdlaWdodDogYm9sZGVyO1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRjb2xvcjogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XG5cdFx0fVxuICAgIH1cblxuICAgIGg0LnNob3cge1xuICAgICAgICBmb250LXNpemU6IDIzcHg7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cblx0XHRhLCBwLCAuc2hvdyB7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdH1cbiAgICB9XG59XG5cbi5uZXdzX2F1dGhvcl9pbmZvIHtcbiAgICAuaW1nX3dyYXBwZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBtYXJnaW46IDBweCBhdXRvIDIwcHggYXV0bztcbiAgICB9XG59IFxuXG4uaGVhZGluZ19fdGVhbSB7XG4gICAgaDMge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbn1cblxuLmNhcmRfX3ZvdGluZ19zdGF0IHtcbiAgICBwYWRkaW5nOiAyMHB4IDQwcHg7XG4gICAgcCwgaDIsIGg0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwcHggMHB4IDBweDtcbiAgICB9XG59XG5cbi5jYXJkX19wb3B1cCB7XG4gICAgcGFkZGluZzogJGNhcmQtcGFkZGluZztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRUZFREUxO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAmLmluZm9jYXJkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIC5pbmZvY2FyZC1jb250ZW50IHtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyOCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYucG9wdXBfY2hlY2sge1xuICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjMjFBNjdBO1xuICAgIH1cbiAgICAmLnBvcHVwX2luZm8ge1xuICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjMEY1ODlBO1xuICAgIH1cbiAgICAmLnBvcHVwX3dhcm5pbmcge1xuICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjQ0UwMDNBO1xuICAgIH1cbiAgICAucG9wdXBfY2xvc2Uge1xuICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9jbG9zZS1wb3B1cC5zdmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDtcbiAgICAgICAgcmlnaHQ6IDMwcHg7XG5cblx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvY2xvc2UtcG9wdXAuc3ZnKTtcblx0XHRcdG1hc2stc2l6ZTogMTVweCAxNXB4O1xuXHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHR9XG4gICAgfVxuICAgIC5wb3B1cC1pY29uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIC5pY29uX2NoZWNrIHtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG8gMTBweCBhdXRvIDA7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3BvcHVwLWNoZWNrLnN2Zyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHggMzBweDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAuaWNvbl9pbmZvIHtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG8gMTBweCBhdXRvIDA7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3BvcHVwLWluZm8uc3ZnKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweCAzMHB4O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5pY29uX3dhcm5pbmcge1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogYXV0byAxMHB4IGF1dG8gMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvcG9wdXAtd2FybmluZy5zdmcpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnBvcHVwLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2FyZF9fY2Fyb3VzZWwge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBpbml0aWFsO1xuICAgIH1cbiAgIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG5cbiAgICAgICAub3dsLWl0ZW0ge1xuICAgICAgICAgICAgLmNhcm91c2VsX3RleHQge1xuICAgICAgICAgICAgICAgIC8vcGFkZGluZzogMzBweCAyMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDYwcHggMjBweCAwIDIwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY2Fyb3VzZWxfaW1nIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOyAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgIH1cbiAgIH0gXG4gICAub3dsLWRvdHMge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC01MHB4O1xuICAgICAgICAub3dsLWRvdCB7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY2FwdGlvbi1ncmV5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktb25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmx1ZV9fYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXR3bzsgXG59XG4uZXZlbnRzX25hdl9yZWdpc3RlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdHdvOyBcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIC5jYXJkIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luOiBhdXRvOyBcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjJlbSAxZW07XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZXZlbnRzX25hdl9saW5rcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjIyMjsgXG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICBwYWRkaW5nOiAxLjJlbSAxZW07XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwcHggMHB4IDVweCAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmV2ZW50c19oZWFkaW5nX2xpbmtzIHtcbiAgICBtYXJnaW46IDMwcHggMHB4O1xuICAgIC5ldmVudHNfaGVhZGluZ19saW5rIHtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG59XG5cbi5mZWF0aGVybGlnaHQge1xuICAgIC5mZWF0aGVybGlnaHQtY29udGVudCB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDk1JTtcbiAgICAgICAgbWluLWhlaWdodDogODAlO1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAuZmVhdGhlcmxpZ2h0LWlubmVyIHtcbiAgICAgICAgICAgIGhlaWdodDogOTUlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDk1JTtcbiAgICAgICAgICAgIC52aWRlby1ib3gge1xuICAgICAgICAgICAgICAgIGhlaWdodDogOTUlO1xuICAgICAgICAgICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZHluYW1pYy1tb2R1bGUge1xuICAgIC5vdmVybGF5LWxpbmsge1xuICAgICAgICB6LWluZGV4OiA5ODk7XG4gICAgfVxuICAgIC5jZWxsIHtcbiAgICAgICAgLmltYWdlX19wcmV2aWV3IGltZ3tcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cbiAgICAgICAgJi5pbWFnZS13cmFwIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAuZmVhdHVyZWRfaW1nIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuZmVhdHVyZWRfdGV4dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvKiBWZXJ0aWNhbCBhbGlnbm1lbnQgKi9cbiAgICAgICAgICAgIGhlaWdodDogMTAwJTsgLyogT3B0aW9uYWwsIGRlcGVuZHMgb24gcGFyZW50IGNvbnRleHQgKi9cbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDk5MDtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5mZWF0dXJlZF9pbWcge1xuICAgICAgICAgICAgICAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4xKTtcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICAgICAgICAgICAgIC8vb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbWFnZV9fcHJldmlldyB7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4xKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTaW5nbGUgQ2FyZFxuICAgIC5sYXJnZS0xMCB7XG4gICAgICAgIC5jZWxsLnNtYWxsLTUuaW1hZ2Utd3JhcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsLW9ubHkpIHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAvL21pbi1oZWlnaHQ6IDQwMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBNaWNyb3NpdGUgT3ZlcnJpZGVzXG5ib2R5Lm1pY3Jvc2l0ZSB7XG4gICAgJi5saWdodC1icmFuZC1jb2xvdXJzIHtcbiAgICAgICAgLmNhcmQuY2FyZF9fcHJldmlldyB7XG4gICAgICAgICAgICAudGV4dF9fd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgaDUsIHAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuZGFyay1icmFuZC1jb2xvdXJzIHtcbiAgICAgICAgLmNhcmQuY2FyZF9fcHJldmlldyB7XG4gICAgICAgICAgICAudGV4dF9fd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgaDUsIHAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLnRleHRfX3dyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICBoNSwgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuY2Fyb3VzZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1ncmV5ICFpbXBvcnRhbnQ7XG5cbn1cblxuLm93bC1jYXJvdXNlbCB7XG4gICAgLm93bC1zdGFnZS1vdXRlciB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgLm93bC1zdGFnZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgLy9oZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAvL21heC1oZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNDYwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRjYXB0aW9uLWdyZXk7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRwcmltYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5maWx0ZXJzIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRjb2xvcjogJHdoaXRlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS10aHJlZTtcblx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdG1hcmdpbi10b3A6IC02MHB4O1xuXHRwYWRkaW5nOiAwICRnbG9iYWwtcGFkZGluZztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTVweCk7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcblx0XHRtYXJnaW4tdG9wOiAtODBweDtcblx0fVxuXG5cdHNlbGVjdCB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRib3JkZXItY29sb3I6ICR3aGl0ZTtcblx0XHRtYXJnaW46IDMwcHggMDtcblx0XHRtYXgtd2lkdGg6IDI4NXB4O1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaWNvbnMvZG93bi1hcnJvdy13aGl0ZS5zdmcnKTtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCAxMHB4O1xuXHRcdGJhY2tncm91bmQtc2l6ZTogMTRweCA3cHg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdGhyZWU7XG5cblx0XHRvcHRpb24ge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdGhyZWU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdG1heC13aWR0aDogMzA1cHg7XG5cdFx0fVxuXHR9XG5cdFxuXHQmOmVtcHR5IHtcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdH1cblxuXHQuc21hbGwtdHdvLXVwICYge1xuXHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRtYXJnaW4tdG9wOiAtNTBweDtcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHR9XG59XG4iLCIvKipcbiAqIEhlcm9cbiAqL1xuIFxuLmhlcm9fX2Jhbm5lciB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgfVxuIFxufVxuXG4udGllcl9vbmUge1xuXHQudGV4dF9fYmcge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcblxuXHRcdGgxLCBoMiwgLnN1YmhlYWRpbmcsIHAsIGE6bm90KC5idXR0b24pIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgYS5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGE6b25seS1vZi10eXBlIHtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICB9XG5cdH1cbn1cblxuLm92ZXJsYXBfX21hcmdpbiB7XG4gICAgLmNhcmQuY2FyZF9fcHJldmlldyB7XG4gICAgICAgIC5jYXJkLWxpbmsge1xuICAgICAgICAgICAgLnRleHRfX3dyYXBwZXIge1xuICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRpZXJfdHdvIHtcblx0Lmhlcm9fX2Jhbm5lciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xuICAgICAgICB9XG5cdH1cblxuXHQuaGVyb19fb2Zmc2V0IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRlci1ncmF5O1xuXG5cdFx0aDEsIC5oMSwgaDIsIC5oMiB7XG5cdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdH1cblx0fVxufVxuXG4udGllcl90aHJlZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTkwcHggIWltcG9ydGFudDtcbiAgICB9XG5cdC5jYXJkIHtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuXHRcdHBhZGRpbmc6IDI4cHggMjRweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG5cdH1cbn1cblxuLnRpZXJfb25lLCAudGllcl90d28sIC5oZXJvLWV2ZW50IHtcblx0LmNhcmQge1xuICAgICAgICBwYWRkaW5nOiAzMnB4IDIwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMnB4IDQwcHg7XG4gICAgICAgIH1cblx0fVxufVxuXG4udGllcl9vbmUsIC50aWVyX3R3bywgLnRpZXJfdGhyZWUge1xuXHRwIHtcblx0XHRmb250LWZhbWlseTogJ0F2ZW5pciBMVCBXMDFfNTUgUm9tYW4xNDc1NTIwJztcblx0XHRtYXJnaW4tYm90dG9tOiAycmVtO1xuXHR9XG59XG5cbi50aWVyX3R3bywgLnRpZXJfdGhyZWUge1xuICAgIHAsIC5sYXJnZV9pbnRybyBzcGFuIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcblx0XHRsaW5lLWhlaWdodDogcmVtLWNhbGMoMjgpO1xuXHRcdGxldHRlci1zcGFjaW5nOiAwO1xuXHRcdGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMCk7IC8vIFRoaXMgd2FzIHByZXZpb3VzbHkgMjRcblx0XHRcdGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMCk7XG5cdFx0fVxuICAgIH1cbn1cblxuLmhlcm8tZXZlbnQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRlc3QtZ3JheTtcblx0cGFkZGluZy1ib3R0b206IDQycHg7XG5cblx0LnNoYXJlIHtcblx0XHRtYXJnaW46IDIzcHggMDtcblx0fVxuXG5cdC5jb250ZW50IHtcblx0XHQuY2VsbCB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXG5cdFx0LmNvbnRlbnQtdGV4dCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuXHRcdFx0Lmhlcm9fX2J1dHRvbl9fd3JhcCB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgICAgIH1cblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG5cdFx0XHRcdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uaGVyb19fb2Zmc2V0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTAwO1xuXHRtYXJnaW4tdG9wOiAtMjAwcHg7XG4gICAgbWluLWhlaWdodDogMjcwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTI1MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yMDBweDtcbiAgICB9XG59XG5cbi5oZXJvX3RpZXIzX2xhcmdlIHtcblx0bWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuLmhlcm9fdGllcjNfaW1nIHtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi5oZWFkZXI0X3YyIHtcbiAgICAuY2FwdGlvbiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblx0XHRjb2xvcjogJHByaW1hcnktb25lOyBcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgJi5kYXRlOmJlZm9yZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cblx0aW1nIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHR9XG59XG5cblxuLmhlcm9fX21lZGlhIHtcbiAgICBwYWRkaW5nOiAxMDBweCAwcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9wbGFjZWhvbGRlci5qcGcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnlvdXR1YmVfX2J0biB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5saWdodGJveCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTsgXG4gICAgICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgIC5saWdodGJveC1jb250YWluZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA5NjBweDtcbiAgICAgICAgICAgIG1hcmdpbjogNyUgYXV0bztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyAgICBcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMyU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcblxuICAgICAgICAgICAgLmxpZ2h0Ym94LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDZweCByZ2JhKDAsIDAsIDAsIDAuNyk7XG5cbiAgICAgICAgICAgICAgICAubGlnaHRib3gtY2xvc2Uge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyAgICBcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7ICAgICAgXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC0yMnB4O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMyU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnZpZGVvLWNvbnRhaW5lciB7ICBcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAgXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzMHB4OyBcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwOyBcblxuICAgICAgICAgICAgICAgICAgICAmIGlmcmFtZSwgJiBvYmplY3QsICYgZW1iZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOyAgXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaGVyb19uZXdzX3ZlcnNpb24ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxuICAgIC5oZWFkaW5nX25ld3Mge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgcHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAubmV3c190YWdzIHtcbiAgICAgICAgLmNlbGx7XG4gICAgICAgICAgICBtYXJnaW46IDBweCAxMHB4IDIwcHggMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0QjdFO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm5ld3Nfc3VwcG9ydGVycyB7XG4gICAgICAgIC5ncmlkLXgge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweCA1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwcHggMHB4IDEwcHggMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaGVyb190aWVyNV9sYXJnZSB7XG4gICAgLmhlcm9fdGV4dF9hcmVhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAuaGVyb190aXRsZV9hcmVhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCA1MHB4O1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zdWJoZWFkaW5nIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI0Q3RDdENztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaGVyb19pbmZvX2FyZWEge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCA1MHB4IDUwcHggNTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNEN0Q3RDc7XG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Nsb2NrLWJsdWUucG5nKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaGVyb19kYXRhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmhlcm9fdGh1bWJuYWlsIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIH1cbn1cblxuLmZhY3RzaGVldF9iYW5uZXJfY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC5wcmludF9idG4ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjVweDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwRjU4OUE7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTJweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgfVxuICAgICAgICAmLlRvY19wcmludCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgfSBcbiAgICAgICAgfVxuICAgICAgICBpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5mYWN0c2hlZXRfaGVyb19jb250ZW50IHtcblx0cGFkZGluZy1sZWZ0OiAoJGdsb2JhbC1wYWRkaW5nICsgNDBweCkgIWltcG9ydGFudDtcblx0cGFkZGluZy1yaWdodDogKCRnbG9iYWwtcGFkZGluZyArIDQwcHgpICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgIH0gXG59XG4iLCIvLyBPdmVycmlkZSBkZWZhdWx0c1xuLmZlYXRoZXJsaWdodCB7XG4gICAgLmZlYXRoZXJsaWdodC1jbG9zZS1pY29uIHtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDQwcHggMjBweCAwO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICAgIH1cbn0gXG5cbi8vIEN1c3RvbSAtIERlY2xhcmF0aW9uIG9mIEludGVyZXN0c1xuLmRlY2xhcmF0aW9uSW50ZXJlc3RzLCAudmlkZW9fbGlnaHRib3gge1xuICAgIGRpc3BsYXk6IG5vbmU7IC8vIEhpZGUgYnkgZGVmYXVsdFxuICAgIC5kZWNsYXJhdGlvbkhlYWRlciwgLnZpZGVvLWJveCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgfVxuICAgIHRhYmxlIHtcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNhcHRpb24tZ3JleTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNhcHRpb24tZ3JleTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIjbWFwIHtcblx0aGVpZ2h0OiA1MzBweDtcblxuXHRidXR0b24ge1xuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuLm1hcC13cmFwIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdC5jYWxsb3V0LS1jb250YWN0IHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0Ym90dG9tOiAzNnB4O1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdGJvdHRvbTogYXV0bztcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0fVxuXG5cdFx0LmNlbGwge1xuXHRcdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdFx0cGFkZGluZzogNDBweDtcblx0XHR9XG5cblx0XHRhZGRyZXNzIHtcblx0XHRcdGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfNTUgUm9tYW4xNDc1NTIwXCI7XG5cdFx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjhweDtcblx0XHR9XG5cdH1cbn1cbiIsIi8qKlxuICogU0VDVElPTiBcbiAqL1xuXG5zZWN0aW9uIHtcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdG1hcmdpbi1ib3R0b206IDUwcHg7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogODBweDtcblx0fVxuXG5cdCYuc2VjdGlvbi1jb2xsYXBzZSB7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG5cblx0Ji5zZWN0aW9uLXNpZGViYXIge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdH1cblxuXHQmLnNlY3Rpb24tcHVsbHVwIHtcblx0XHRtYXJnaW4tdG9wOiAtMzBweDtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAtNTBweDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAtODBweDtcblx0XHR9XG5cdH1cblxuXHQmLmdyZXlCZyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWdyZXk7XG5cdFx0LmdyaWQtY29udGFpbmVyIHtcblx0XHRcdC8vIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuXHRcdFx0cGFkZGluZy10b3A6IDQwcHg7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogNDBweDtcblxuXHRcdFx0Ji5wdXNoZG93bi13cmFwIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWdyZXk7XG5cdFx0XHRcdC5hY2NvcmRpb25fX2NhcmQsIC5hY2NvcmRpb24tY29udGVudCB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWdyZXk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdCYudHJhbnNwYXJlbnQge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0LmdyaWQteCB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdGhyZWU7XG5cdFx0XHRcdFx0Ji50cmFuc3BhcmVudCB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LmdyaWQteDpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0LmNlbGwge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuXHRcdFx0XHRcdCYudHJhbnNwYXJlbnQge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCYuaW5uZXIge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCYubWVkaXVtLTUge1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMjBweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0Ji53cmFwcGVyIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdFx0LmJ1dHRvbl9faGFsZmhhbGYge1xuXHRcdFx0XHRcdFx0XHQuYnV0dG9uX19zaW1wbGUge1xuXHRcdFx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdGhyZWU7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdC5jZWxsLmNhcmRfX2hlYWRpbmdfX2lubmVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LmNhcmQuY2FyZF9fc2ltcGxlIHtcblx0XHRcdFx0cGFkZGluZzogMjBweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdH1cblxuXHQmLmFjY29yZGlvbkJnIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZ3JleTtcblx0XHQuYWNjb3JkaW9uLCAuYWNjb3JkaW9uLWNvbnRlbnQge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWdyZXk7XG5cdFx0fVxuXHR9XG5cblx0Ji5saXN0aW5ncyB7XG5cdFx0YmFja2dyb3VuZDogJGxpZ2h0ZXN0LWdyYXk7XG5cdFx0cGFkZGluZy1ib3R0b206IDQwcHg7XG5cblx0XHQmLmhhcy1oZWFkaW5nIHtcblx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cblx0XHRcdC5saXN0aW5nIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0ZXN0LWdyYXk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5zdG9yaWVzIHtcblx0XHRcdHBhZGRpbmctdG9wOiA0MHB4O1xuXHRcdH1cblxuXHRcdCYucmlzay1mYWN0b3JzIHtcblx0XHRcdG1hcmdpbi10b3A6IC04MHB4O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogNzBweDtcblx0XHRcdHBhZGRpbmctdG9wOiA0MHB4O1xuXHRcdH1cblxuXHR9XG5cblx0Ji5mb3JtIHtcblx0XHRiYWNrZ3JvdW5kOiAkbGlnaHRlci1ncmF5O1xuXHRcdHBhZGRpbmc6IDQwcHggMDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHBhZGRpbmc6IDgwcHggMDtcblx0XHR9XG5cdH1cblxuXHQmLm1iMCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMHB4O1xuXHR9XG5cdFxufVxuXG5AbWVkaWEgcHJpbnQge1xuXHQuZmFjdHNoZWV0LWNvbnRlbnQsIC5jYXJkLmNhcmRfX2hlYWRpbmcge1xuXHRcdC5tZWRpdW0tOCwgLmhlYWRpbmcubWVkaXVtLTgsIC5jYXJkX19kZXRhaWxzIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bGVmdDogMCU7XG5cdFx0fVxuXHR9XG5cdC5mYWN0c2hlZXQtY29udGVudCB7XG5cdFx0LmNhcmRfX2RldGFpbHMge1xuXHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdGxlZnQ6IDAlICFpbXBvcnRhbnQ7XG5cdFx0XHQuYnV0dG9uIHtcblx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuZmFjdHNoZWV0X2hlcm9fY29udGVudCB7XG5cdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRoZWlnaHQ6IDQ1dmg7XG5cdH1cblxuXHQuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50LCAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50X21vYmlsZSwgI2Nvb2tpZS1sYXctaW5mby1hZ2FpbiB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblxuXHQuZmFjdHNoZWV0X2Jhbm5lcl9jb250YWluZXIge1xuXHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdFx0aGVpZ2h0OiA0NXZoO1xuXHR9XG5cblx0LmNhcmRfX2ZlYXR1cmVkX190ZXh0LCAuY2FyZF9fZmVhdHVyZWQge1xuXHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdH1cbn1cbiIsIi8qKlxuICogU0hBUkVcbiAqL1xuIFxuLnNoYXJlIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICAuc2hhcmUtLXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICB1bC5zb2NpYWwtLWxpc3Qge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdFx0XHR3aWR0aDogMjJweDtcblx0XHRcdGhlaWdodDogMjJweDtcblx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblxuXHRcdFx0YSB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRcdH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qKlxuICogVklERU9cbiAqL1xuIFxuLnZpZGVvIHtcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCAuaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgJi52aWRlb19fZW1iZWQge1xuICAgICAgICAudmlkZW9fX3dyYXBwZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgLyogMTY6OSAqL1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICAgICAgfVxuICAgICAgICAudmlkZW9fX3dyYXBwZXIgaWZyYW1lIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAudmlkZW9fX2ljb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3ZpZGVvLXBsYXllci1pY29uLnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyIC8gMjhweCAxN3B4O1xuICAgICAgICAgICAgbWluLWhlaWdodDogMThweDtcblxuXHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy92aWRlby1wbGF5ZXItaWNvbi5zdmcpO1xuXHRcdFx0XHRtYXNrLXNpemU6IDI4cHggMTdweDtcblx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdH1cblxuICAgICAgICAgICAgJi5zb3VuZGNsb3VkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvc291bmRjbG91ZC1wbGF5ZXItaWNvbi5zdmcpIG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDM0cHggMjdweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMzRweDtcblxuXHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktb25lO1xuXHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9zb3VuZGNsb3VkLXBsYXllci1pY29uLnN2Zyk7XG5cdFx0XHRcdFx0bWFzay1zaXplOiAzNHB4IDI3cHg7XG5cdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHRtYXNrLXBvc2l0aW9uOiBjZW50ZXIgMzRweDtcblx0XHRcdFx0fVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC52aWRlby10ZXh0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuICAgICAgICAudmlkZW9fX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cbiAgICAgICAgLnZpZGVvX19pbmZvIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNzY3MTc1O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmLnZpZGVvX190aW1lIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE1cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjFweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIxcHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3RpbWUtaWNvbi5zdmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlciAvIDIxcHggMjFweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdFx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktb25lO1xuXHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL3RpbWUtaWNvbi5zdmcpO1xuXHRcdFx0XHRcdFx0bWFzay1zaXplOiAyMXB4IDIxcHg7XG5cdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0bWFzay1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG5cdFx0XHRcdFx0fVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYudmlld19fY291bnQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblx0XHQudmlkZW9fbWFyZ2luIHtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0fVxuXG4gICAgfVxuXG4gICAgLy8gVmlkZW8gcGxheWVyIGNvbXBvbmVudHNcbiAgICAudmlkZW9fX2Jhbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRoZWlnaHQ6IDA7XG5cdFx0cGFkZGluZy1ib3R0b206IDU2LjI1JTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdG1hcmdpbi1ib3R0b206IDIycHg7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0XHRvYmplY3QtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC52aWRlby1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gICAgLnZpZGVvLWNvbnRhaW5lciBpZnJhbWUsICBcbiAgICAudmlkZW8tY29udGFpbmVyIG9iamVjdCwgIFxuICAgIC52aWRlby1jb250YWluZXIgZW1iZWQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gICAgLnBsYXlidXR0b257XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvdmlkZW8tcGxheS5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIC8gNTBweCA1MHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXHRcdHotaW5kZXg6IDk5OTtcblxuXHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy92aWRlby1wbGF5LnN2Zyk7XG5cdFx0XHRtYXNrLXNpemU6IDUwcHggNTBweDtcblx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRtYXNrLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDY1cHggNjVweDtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5jbG9zZXtcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgICBcbn1cblxuLm1lZGlhIHtcblx0LnZpZGVvX19lbWJlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuXHRcdC52aWRlb19fd3JhcHBlciB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMnB4O1xuXHRcdH1cblxuXHRcdC52aWRlb19faW5mbyB7XG5cdFx0XHQmLnZpZGVvX190aW1lIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLmNjLXdpbmRvd3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgMXMgZWFzZTt0cmFuc2l0aW9uOm9wYWNpdHkgMXMgZWFzZX0uY2Mtd2luZG93LmNjLWludmlzaWJsZXtvcGFjaXR5OjB9LmNjLWFuaW1hdGUuY2MtcmV2b2tley13ZWJraXQtdHJhbnNpdGlvbjp0cmFuc2Zvcm0gMXMgZWFzZTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gMXMgZWFzZTt0cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIDFzIGVhc2U7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMXMgZWFzZTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAxcyBlYXNlLC13ZWJraXQtdHJhbnNmb3JtIDFzIGVhc2V9LmNjLWFuaW1hdGUuY2MtcmV2b2tlLmNjLXRvcHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC0yZW0pO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0yZW0pfS5jYy1hbmltYXRlLmNjLXJldm9rZS5jYy1ib3R0b217LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgyZW0pO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDJlbSl9LmNjLWFuaW1hdGUuY2MtcmV2b2tlLmNjLWFjdGl2ZS5jYy10b3B7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX0uY2MtYW5pbWF0ZS5jYy1yZXZva2UuY2MtYWN0aXZlLmNjLWJvdHRvbXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfS5jYy1yZXZva2U6aG92ZXJ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX0uY2MtZ3Jvd2Vye21heC1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC10cmFuc2l0aW9uOm1heC1oZWlnaHQgMXM7dHJhbnNpdGlvbjptYXgtaGVpZ2h0IDFzfVxuLmNjLXJldm9rZSwuY2Mtd2luZG93e3Bvc2l0aW9uOmZpeGVkO292ZXJmbG93OmhpZGRlbjstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Zm9udC1mYW1pbHk6SGVsdmV0aWNhLENhbGlicmksQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTZweDtsaW5lLWhlaWdodDoxLjVlbTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LXdyYXA6bm93cmFwO2ZsZXgtd3JhcDpub3dyYXA7ei1pbmRleDo5OTk5fS5jYy13aW5kb3cuY2Mtc3RhdGlje3Bvc2l0aW9uOnN0YXRpY30uY2Mtd2luZG93LmNjLWZsb2F0aW5ne3BhZGRpbmc6MmVtO21heC13aWR0aDoyNGVtOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5jYy13aW5kb3cuY2MtYmFubmVye3BhZGRpbmc6MWVtIDEuOGVtO3dpZHRoOjEwMCU7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvd30uY2MtcmV2b2tle3BhZGRpbmc6LjVlbX0uY2MtcmV2b2tlOmhvdmVye3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LmNjLWhlYWRlcntmb250LXNpemU6MThweDtmb250LXdlaWdodDo3MDB9LmNjLWJ0biwuY2MtY2xvc2UsLmNjLWxpbmssLmNjLXJldm9rZXtjdXJzb3I6cG9pbnRlcn0uY2MtbGlua3tvcGFjaXR5Oi44O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6LjJlbTt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5jYy1saW5rOmhvdmVye29wYWNpdHk6MX0uY2MtbGluazphY3RpdmUsLmNjLWxpbms6dmlzaXRlZHtjb2xvcjppbml0aWFsfS5jYy1idG57ZGlzcGxheTpibG9jaztwYWRkaW5nOi40ZW0gLjhlbTtmb250LXNpemU6LjllbTtmb250LXdlaWdodDo3MDA7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWQ7dGV4dC1hbGlnbjpjZW50ZXI7d2hpdGUtc3BhY2U6bm93cmFwfS5jYy1oaWdobGlnaHQgLmNjLWJ0bjpmaXJzdC1jaGlsZHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH0uY2MtaGlnaGxpZ2h0IC5jYy1idG46Zmlyc3QtY2hpbGQ6Zm9jdXMsLmNjLWhpZ2hsaWdodCAuY2MtYnRuOmZpcnN0LWNoaWxkOmhvdmVye2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0uY2MtY2xvc2V7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LjVlbTtyaWdodDouNWVtO2ZvbnQtc2l6ZToxLjZlbTtvcGFjaXR5Oi45O2xpbmUtaGVpZ2h0Oi43NX0uY2MtY2xvc2U6Zm9jdXMsLmNjLWNsb3NlOmhvdmVye29wYWNpdHk6MX1cbi5jYy1yZXZva2UuY2MtdG9we3RvcDowO2xlZnQ6M2VtO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjVlbTtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czouNWVtfS5jYy1yZXZva2UuY2MtYm90dG9te2JvdHRvbTowO2xlZnQ6M2VtO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6LjVlbTtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouNWVtfS5jYy1yZXZva2UuY2MtbGVmdHtsZWZ0OjNlbTtyaWdodDp1bnNldH0uY2MtcmV2b2tlLmNjLXJpZ2h0e3JpZ2h0OjNlbTtsZWZ0OnVuc2V0fS5jYy10b3B7dG9wOjFlbX0uY2MtbGVmdHtsZWZ0OjFlbX0uY2MtcmlnaHR7cmlnaHQ6MWVtfS5jYy1ib3R0b217Ym90dG9tOjFlbX0uY2MtZmxvYXRpbmc+LmNjLWxpbmt7bWFyZ2luLWJvdHRvbToxZW19LmNjLWZsb2F0aW5nIC5jYy1tZXNzYWdle2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJvdHRvbToxZW19LmNjLXdpbmRvdy5jYy1mbG9hdGluZyAuY2MtY29tcGxpYW5jZXstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAwIGF1dG87ZmxleDoxIDAgYXV0b30uY2Mtd2luZG93LmNjLWJhbm5lcnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0uY2MtYmFubmVyLmNjLXRvcHtsZWZ0OjA7cmlnaHQ6MDt0b3A6MH0uY2MtYmFubmVyLmNjLWJvdHRvbXtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MH0uY2MtYmFubmVyIC5jYy1tZXNzYWdle2Rpc3BsYXk6YmxvY2s7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG87bWF4LXdpZHRoOjEwMCU7bWFyZ2luLXJpZ2h0OjFlbX0uY2MtY29tcGxpYW5jZXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tcy1mbGV4LWxpbmUtcGFjazpqdXN0aWZ5O2FsaWduLWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0uY2MtZmxvYXRpbmcgLmNjLWNvbXBsaWFuY2U+LmNjLWJ0bnstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MTtmbGV4OjF9LmNjLWJ0bisuY2MtYnRue21hcmdpbi1sZWZ0Oi41ZW19XG5AbWVkaWEgcHJpbnR7LmNjLXJldm9rZSwuY2Mtd2luZG93e2Rpc3BsYXk6bm9uZX19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo5MDBweCl7LmNjLWJ0bnt3aGl0ZS1zcGFjZTpub3JtYWx9fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NDE0cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpLHNjcmVlbiBhbmQgKG1heC13aWR0aDo3MzZweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5jYy13aW5kb3cuY2MtdG9we3RvcDowfS5jYy13aW5kb3cuY2MtYm90dG9te2JvdHRvbTowfS5jYy13aW5kb3cuY2MtYmFubmVyLC5jYy13aW5kb3cuY2MtZmxvYXRpbmcsLmNjLXdpbmRvdy5jYy1sZWZ0LC5jYy13aW5kb3cuY2MtcmlnaHR7bGVmdDowO3JpZ2h0OjB9LmNjLXdpbmRvdy5jYy1iYW5uZXJ7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LmNjLXdpbmRvdy5jYy1iYW5uZXIgLmNjLWNvbXBsaWFuY2V7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG99LmNjLXdpbmRvdy5jYy1mbG9hdGluZ3ttYXgtd2lkdGg6bm9uZX0uY2Mtd2luZG93IC5jYy1tZXNzYWdle21hcmdpbi1ib3R0b206MWVtfS5jYy13aW5kb3cuY2MtYmFubmVyey13ZWJraXQtYm94LWFsaWduOnVuc2V0Oy1tcy1mbGV4LWFsaWduOnVuc2V0O2FsaWduLWl0ZW1zOnVuc2V0fS5jYy13aW5kb3cuY2MtYmFubmVyIC5jYy1tZXNzYWdle21hcmdpbi1yaWdodDowfX1cbi5jYy1mbG9hdGluZy5jYy10aGVtZS1jbGFzc2lje3BhZGRpbmc6MS4yZW07Ym9yZGVyLXJhZGl1czo1cHh9LmNjLWZsb2F0aW5nLmNjLXR5cGUtaW5mby5jYy10aGVtZS1jbGFzc2ljIC5jYy1jb21wbGlhbmNle3RleHQtYWxpZ246Y2VudGVyO2Rpc3BsYXk6aW5saW5lOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleDpub25lO2ZsZXg6bm9uZX0uY2MtdGhlbWUtY2xhc3NpYyAuY2MtYnRue2JvcmRlci1yYWRpdXM6NXB4fS5jYy10aGVtZS1jbGFzc2ljIC5jYy1idG46bGFzdC1jaGlsZHttaW4td2lkdGg6MTQwcHh9LmNjLWZsb2F0aW5nLmNjLXR5cGUtaW5mby5jYy10aGVtZS1jbGFzc2ljIC5jYy1idG57ZGlzcGxheTppbmxpbmUtYmxvY2t9XG4uY2MtdGhlbWUtZWRnZWxlc3MuY2Mtd2luZG93e3BhZGRpbmc6MH0uY2MtZmxvYXRpbmcuY2MtdGhlbWUtZWRnZWxlc3MgLmNjLW1lc3NhZ2V7bWFyZ2luOjJlbTttYXJnaW4tYm90dG9tOjEuNWVtfS5jYy1iYW5uZXIuY2MtdGhlbWUtZWRnZWxlc3MgLmNjLWJ0bnttYXJnaW46MDtwYWRkaW5nOi44ZW0gMS44ZW07aGVpZ2h0OjEwMCV9LmNjLWJhbm5lci5jYy10aGVtZS1lZGdlbGVzcyAuY2MtbWVzc2FnZXttYXJnaW4tbGVmdDoxZW19LmNjLWZsb2F0aW5nLmNjLXRoZW1lLWVkZ2VsZXNzIC5jYy1idG4rLmNjLWJ0bnttYXJnaW4tbGVmdDowfSIsIi5jYy13aW5kb3cge1xuXHR6LWluZGV4OiA5OTk5OTk7XG59XG5cbi5jYy13aW5kb3csIFxuLmNjLWJhbm5lciwgXG4uY2MtdHlwZS1pbmZvIHtcdFxuXHQuaW5ueSwgXG5cdC5jYy1jb21wbGlhbmNlIHsgXG5cdFx0cGFkZGluZzogMCAxNnB4IDA7XHRcdFxuXHR9XG5cblx0Lmlubnkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1heC13aWR0aDogNjIuNXJlbTsgXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHR9XG5cblx0LmNjLW1lc3NhZ2Uge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuXHRcdGZvbnQtZmFtaWx5OiByb29rbHluU2FtdWVsc0ZpdmVMaWdodCwgQXJpYWwsIHNhbnMtc2VyaWY7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNXJlbTtcblx0XHRhIHtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiAjMDBkOGZmO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRmbG9hdDogbGVmdDtcblx0XHR3aWR0aDogNzglO1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdH1cblxuXHQuY2MtY29tcGxpYW5jZSB7XHRcdFxuXHRcdGZsb2F0OiByaWdodDtcblx0fVxuXG5cdC5jYy1idG4sIC5jYy1kaXNtaXNzIHtcdFxuXHRcdGJvcmRlci1yYWRpdXM6IDNweCAhaW1wb3J0YW50O1xuXHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHR3aWR0aDogYXV0bztcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjU1Nztcblx0XHRwYWRkaW5nOiAuNWVtIDEuNWVtICFpbXBvcnRhbnQ7XG5cdFx0Zm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG5cdFx0Ym9yZGVyOiBzb2xpZCAxcHggIzAwZDhmZiAhaW1wb3J0YW50O1xuXHRcdGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG5cdFx0b3BhY2l0eTogMC45O1xuXHRcdFxuXHRcdCY6aG92ZXIge1xuXHRcdFx0Y29sb3I6ICMwMDAgIWltcG9ydGFudDtcblx0XHRcdGJvcmRlcjogc29saWQgMXB4ICMwMGQ4ZmYgIWltcG9ydGFudDtcblx0XHRcdGJhY2tncm91bmQ6ICMwMGQ4ZmYgIWltcG9ydGFudDtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0fVxuXHR9XG59XG5cbi53Y2MtbW9kYWwsXG4ud2NjLWNvbnNlbnQtY29udGFpbmVyIHtcbiAgICBidXR0b24ge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0= */
