@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 */
@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-synthesis: none !important;
  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; }

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

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi9ub2RlX21vZHVsZXMvZm9udC1hd2Vzb21lL3Njc3MvZm9udC1hd2Vzb21lLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm9udC1hd2Vzb21lL3Njc3MvX3BhdGguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvc2Nzcy9fY29yZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9zY3NzL19sYXJnZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvc2Nzcy9fZml4ZWQtd2lkdGguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvc2Nzcy9fbGlzdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9zY3NzL192YXJpYWJsZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvc2Nzcy9fYm9yZGVyZWQtcHVsbGVkLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm9udC1hd2Vzb21lL3Njc3MvX2FuaW1hdGVkLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm9udC1hd2Vzb21lL3Njc3MvX3JvdGF0ZWQtZmxpcHBlZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9zY3NzL19taXhpbnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb250LWF3ZXNvbWUvc2Nzcy9fc3RhY2tlZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9zY3NzL19pY29ucy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvbnQtYXdlc29tZS9zY3NzL19zY3JlZW4tcmVhZGVyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL2hhbWJ1cmdlcnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvX2Jhc2Uuc2NzcyIsInZlbmRvci9faGFtYnVyZ2VyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19zdGFuZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc3RhbmQtci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fY29yZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fYW5pbWF0ZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fYXV0b2hlaWdodC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fbGF6eWxvYWQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9vd2wuY2Fyb3VzZWwvc3JjL3Njc3MvX3ZpZGVvLnNjc3MiLCJ2ZW5kb3IvX2ZlYXRoZXJsaWdodC5zY3NzIiwic2V0dGluZ3MvX3NldHRpbmdzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Jvdy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL191bml0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2d1dHRlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3NpemUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWF0aC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NsYXNzZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3V0dGVycy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19ncmlkLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NlbGwuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NvbGxhcHNlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2ZyYW1lLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2ZsZXguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fZmxleC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYWxpZ25tZW50LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fdGV4dC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2xhYmVsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19oZWxwLXRleHQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19maWVsZHNldC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fc2VsZWN0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2xhYmVsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19jb2xvci5zY3NzIiwidXRpbHMvX3V0aWxzLnNjc3MiLCJnbG9iYWwvX3NpdGUtc3RpY2t5LWZvb3Rlci5zY3NzIiwiZ3JpZC9fZ3JpZC14LXkuc2NzcyIsImVsZW1lbnRzL19hY2NvcmRpb24uc2NzcyIsImVsZW1lbnRzL19jYXB0aW9uLnNjc3MiLCJlbGVtZW50cy9fY29sb3JzLnNjc3MiLCJlbGVtZW50cy9fYmFja2dyb3VuZC1jb2xvdXJzLnNjc3MiLCJlbGVtZW50cy9fYmFja2dyb3VuZC1pbWFnZXMuc2NzcyIsImVsZW1lbnRzL19mb3JtLnNjc3MiLCJlbGVtZW50cy9fYnV0dG9ucy5zY3NzIiwiZWxlbWVudHMvX2ltYWdlLnNjc3MiLCJlbGVtZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiZWxlbWVudHMvX3NlYXJjaC5zY3NzIiwiZWxlbWVudHMvX2xpc3Quc2NzcyIsImVsZW1lbnRzL190YWJzLnNjc3MiLCJ0eXBvZ3JhcGh5L190eXBvZ3JhcGh5LnNjc3MiLCJnbG9iYWwvX3NpdGUtaGVhZGVyLnNjc3MiLCJnbG9iYWwvX3NpdGUtZm9vdGVyLnNjc3MiLCJnbG9iYWwvX3NoYXJlZC1lbGVtZW50cy5zY3NzIiwiZ2xvYmFsL19icmVhZGNydW1iLnNjc3MiLCJnbG9iYWwvX3NlYXJjaC5zY3NzIiwiZ2xvYmFsL19zb2xhY2UtbWljcm9zaXRlLnNjc3MiLCJjb21wb25lbnRzL19hcnRpY2xlLnNjc3MiLCJjb21wb25lbnRzL19hd2FyZC5zY3NzIiwiY29tcG9uZW50cy9fY2FyZC5zY3NzIiwiY29tcG9uZW50cy9fY2Fyb3VzZWwuc2NzcyIsImNvbXBvbmVudHMvX2ZpbHRlcnMuc2NzcyIsImNvbXBvbmVudHMvX2hlcm8uc2NzcyIsImNvbXBvbmVudHMvX2xpZ2h0Ym94LnNjc3MiLCJjb21wb25lbnRzL19tYXAuc2NzcyIsImNvbXBvbmVudHMvX3NlY3Rpb24uc2NzcyIsImNvbXBvbmVudHMvX3NoYXJlLnNjc3MiLCJjb21wb25lbnRzL192aWRlby5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Nvb2tpZWNvbnNlbnQvYnVpbGQvY29va2llY29uc2VudC5taW4uY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQiwySkFBQTtBQ0FBLHlDQUFBO0FBR0E7RUFDRSwwQkFBMEI7RUFDMUIsb0RBQXFFO0VBQ3JFLGlYQUltRztFQUVuRyxtQkFBbUI7RUFDbkIsa0JBQWtCLEVBQUE7O0FDVnBCO0VBQ0UscUJBQXFCO0VBQ3JCLDZDQUFvRjtFQUNwRixrQkFBa0I7RUFDbEIsb0JBQW9C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QUFPOztBTXhJdEI7RUFFa0MsWU5xcUJuQixFQUFPOztBTXBxQnRCO0VBQXdDLFlOOGlCbkIsRUFBTzs7QU03aUI1QjtFQUF5QyxZTjRpQm5CLEVBQU87O0FNM2lCN0I7RUFBc0MsWU40Zm5CLEVBQU87O0FNM2YxQjtFQUFtQyxZTmlrQm5CLEVBQU87O0FNaGtCdkI7RUFDZ0MsWU5nS25CLEVBQU87O0FNL0pwQjtFQUFvQyxZTitxQm5CLEVBQU87O0FNOXFCeEI7RUFBaUMsWU53Vm5CLEVBQU87O0FNdlZyQjtFQUFtQyxZTnVQbkIsRUFBTzs7QU10UHZCO0VBQW9DLFlOZ0puQixFQUFPOztBTS9JeEI7RUFBaUMsWU5taEJuQixFQUFPOztBTWxoQnJCO0VBQXFDLFlOZ01uQixFQUFPOztBTS9MekI7RUFBZ0QsWU5ZbkIsRUFBTzs7QU1YcEM7RUFBOEMsWU5jbkIsRUFBTzs7QU1ibEM7RUFBa0MsWU5xV25CLEVBQU87O0FNcFd0QjtFQUEwQyxZTndlbkIsRUFBTzs7QU12ZTlCO0VBQ21DLFlOc2dCbkIsRUFBTzs7QU1yZ0J2QjtFQUFvQyxZTmdnQm5CLEVBQU87O0FNL2Z4QjtFQUFxQyxZTndZbkIsRUFBTzs7QU12WXpCO0VBQWlDLFlOMlluQixFQUFPOztBTTFZckI7RUFBaUMsWU40UG5CLEVBQU87O0FNM1ByQjtFQUF1QyxZTm9VbkIsRUFBTzs7QU1uVTNCO0VBQXVDLFlOaXRCbkIsRUFBTzs7QU1odEIzQjtFQUF3QyxZTitzQm5CLEVBQU87O0FNOXNCNUI7RUFBc0MsWU5ndEJuQixFQUFPOztBTS9zQjFCO0VBQW1DLFlOeWVuQixFQUFPOztBTXhldkI7RUFBb0MsWU53Qm5CLEVBQU87O0FNdkJ4QjtFQUFnQyxZTnltQm5CLEVBQU87O0FNeG1CcEI7RUFBaUMsWU55bUJuQixFQUFPOztBTXhtQnJCO0VBQWlDLFlOeURuQixFQUFPOztBTXhEckI7RUFBcUMsWU55RG5CLEVBQU87O0FNeER6QjtFQUFrQyxZTitkbkIsRUFBTzs7QU05ZHRCO0VBQW1DLFlOMkVuQixFQUFPOztBTTFFdkI7RUFBaUMsWU4wUG5CLEVBQU87O0FNelByQjtFQUFpQyxZTmlEbkIsRUFBTzs7QU1oRHJCO0VBQW1DLFlOMFZuQixFQUFPOztBTXpWdkI7RUFBd0MsWU53bUJuQixFQUFPOztBTXZtQjVCO0VBQXVDLFlOd21CbkIsRUFBTzs7QU12bUIzQjtFQUF1QyxZTnBDbkIsRUFBTzs7QU1xQzNCO0VBQXlDLFlOdkNuQixFQUFPOztBTXdDN0I7RUFBd0MsWU5yQ25CLEVBQU87O0FNc0M1QjtFQUEwQyxZTnhDbkIsRUFBTzs7QU15QzlCO0VBQWlDLFlOK1duQixFQUFPOztBTTlXckI7RUFDb0MsWU4yYW5CLEVBQU87O0FNMWF4QjtFQUFtQyxZTnNVbkIsRUFBTzs7QU1yVXZCO0VBQXlDLFlOa3JCbkIsRUFBTzs7QU1qckI3QjtFQUVzQyxZTjBibkIsRUFBTzs7QU16YjFCO0VBQW1DLFlOa2JuQixFQUFPOztBTWpidkI7RUFBdUMsWU53WG5CLEVBQU87O0FNdlgzQjtFQUFtQyxZTnREbkIsRUFBTzs7QU11RHZCO0VBQWlDLFlObW5CbkIsRUFBTzs7QU1sbkJyQjtFQUM0QyxZTithbkIsRUFBTzs7QU05YWhDO0VBQTJDLFlOOGZuQixFQUFPOztBTTdmL0I7RUFBMkMsWU4rRW5CLEVBQU87O0FNOUUvQjtFQUFtQyxZTnpCbkIsRUFBTzs7QU0wQnZCO0VBQTBDLFlObWpCbkIsRUFBTzs7QU1sakI5QjtFQUEwQyxZTnFMbkIsRUFBTzs7QU1wTDlCO0VBQXFDLFlObEJuQixFQUFPOztBTW1CekI7RUFBaUMsWU5zYm5CLEVBQU87O0FNcmJyQjtFQUFrQyxZTmdhbkIsRUFBTzs7QU0vWnRCO0VBQWlDLFlObWpCbkIsRUFBTzs7QU1sakJyQjtFQUFvQyxZTitObkIsRUFBTzs7QU05TnhCO0VBQXlDLFlOZ0xuQixFQUFPOztBTS9LN0I7RUFBeUMsWU40aUJuQixFQUFPOztBTTNpQjdCO0VBQWtDLFlOK0luQixFQUFPOztBTTlJdEI7RUFBeUMsWU55RW5CLEVBQU87O0FNeEU3QjtFQUEwQyxZTnlFbkIsRUFBTzs7QU14RTlCO0VBQXdDLFlOa2JuQixFQUFPOztBTWpiNUI7RUFBeUMsWU51WG5CLEVBQU87O0FNdFg3QjtFQUF5QyxZTjJsQm5CLEVBQU87O0FNMWxCN0I7RUFBeUMsWU4yRG5CLEVBQU87O0FNMUQ3QjtFQUE0QyxZTnlibkIsRUFBTzs7QU14YmhDO0VBQXdDLFlOMFNuQixFQUFPOztBTXpTNUI7RUFBdUMsWU4wR25CLEVBQU87O0FNekczQjtFQUEyQyxZTnVsQm5CLEVBQU87O0FNdGxCL0I7RUFBMkMsWU51RG5CLEVBQU87O0FNdEQvQjtFQUFnQyxZTm5DbkIsRUFBTzs7QU1vQ3BCO0VBQXVDLFlObkRuQixFQUFPOztBTW9EM0I7RUFBd0MsWU5uRG5CLEVBQU87O0FNb0Q1QjtFQUFxQyxZTm5EbkIsRUFBTzs7QU1vRHpCO0VBQXVDLFlOdkRuQixFQUFPOztBTXdEM0I7RUFDa0MsWU40ZG5CLEVBQU87O0FNM2R0QjtFQUFtQyxZTjhJbkIsRUFBTzs7QU03SXZCO0VBQXFDLFlOc0ZuQixFQUFPOztBTXJGekI7RUFBaUMsWU4rWm5CLEVBQU87O0FNOVpyQjtFQUFrQyxZTm9XbkIsRUFBTzs7QU1uV3RCO0VBQXFDLFlOcERuQixFQUFPOztBTXFEekI7RUFBK0MsWU51SW5CLEVBQU87O0FNdEluQztFQUFpQyxZTmtObkIsRUFBTzs7QU1qTnJCO0VBQWlDLFlOMFNuQixFQUFPOztBTXpTckI7RUFBaUMsWU42S25CLEVBQU87O0FNNUtyQjtFQUFnQyxZTnlJbkIsRUFBTzs7QU14SXBCO0VBQXNDLFlOeUluQixFQUFPOztBTXhJMUI7RUFDaUQsWU5pSW5CLEVBQU87O0FNaElyQztFQUFrQyxZTitZbkIsRUFBTzs7QU05WXRCO0VBQXFDLFlOQW5CLEVBQU87O0FNQ3pCO0VBQW1DLFlOb2FuQixFQUFPOztBTW5hdkI7RUFBb0MsWU5nRW5CLEVBQU87O0FNL0R4QjtFQUFtQyxZTjZUbkIsRUFBTzs7QU01VHZCO0VBQXVDLFlOdUNuQixFQUFPOztBTXRDM0I7RUFBeUMsWU5tQ25CLEVBQU87O0FNbEM3QjtFQUFvQyxZTithbkIsRUFBTzs7QU05YXhCO0VBQTBDLFlOa2RuQixFQUFPOztBTWpkOUI7RUFBbUMsWU4wS25CLEVBQU87O0FNekt2QjtFQUF3QyxZTjJLbkIsRUFBTzs7QU0xSzVCO0VBQXFDLFlOM0VuQixFQUFPOztBTTRFekI7RUFBcUMsWU43RW5CLEVBQU87O0FNOEV6QjtFQUNzQyxZTmxFbkIsRUFBTzs7QU1tRTFCO0VBQTJDLFlOK2tCbkIsRUFBTzs7QU05a0IvQjtFQUE0QyxZTjRIbkIsRUFBTzs7QU0zSGhDO0VBQXlDLFlOVG5CLEVBQU87O0FNVTdCO0VBQWdDLFlOMlFuQixFQUFPOztBTTFRcEI7RUFDaUMsWU42Q25CLEVBQU87O0FNNUNyQjtFQUFxQyxZTmtEbkIsRUFBTzs7QU1qRHpCO0VBQXdDLFlOc2lCbkIsRUFBTzs7QU1yaUI1QjtFQUEwQyxZTm9pQm5CLEVBQU87O0FNbmlCOUI7RUFBc0MsWU4yZW5CLEVBQU87O0FNMWUxQjtFQUFvQyxZTjhObkIsRUFBTzs7QU03TnhCO0VBQXFDLFlOb2NuQixFQUFPOztBTW5jekI7RUFBNEMsWU51Um5CLEVBQU87O0FNdFJoQztFQUF1QyxZTjZoQm5CLEVBQU87O0FNNWhCM0I7RUFBMEMsWU5zR25CLEVBQU87O0FNckc5QjtFQUFvQyxZTjhibkIsRUFBTzs7QU03YnhCO0VBQW1DLFlOcWpCbkIsRUFBTzs7QU1wakJ2QjtFQUEwQyxZTmdMbkIsRUFBTzs7QU0vSzlCO0VBQW1DLFlOdWtCbkIsRUFBTzs7QU10a0J2QjtFQUFvQyxZTnFRbkIsRUFBTzs7QU1wUXhCO0VBQWtDLFlOaVduQixFQUFPOztBTWhXdEI7RUFBcUMsWU4yZG5CLEVBQU87O0FNMWR6QjtFQUF1QyxZTmpEbkIsRUFBTzs7QU1rRDNCO0VBQXlDLFlOK1ZuQixFQUFPOztBTTlWN0I7RUFBb0MsWU5zakJuQixFQUFPOztBTXJqQnhCO0VBQ3FDLFlOZ0duQixFQUFPOztBTS9GekI7RUFBbUMsWU5vS25CLEVBQU87O0FNbkt2QjtFQUFtQyxZTjBqQm5CLEVBQU87O0FNempCdkI7RUFBd0MsWU5vQ25CLEVBQU87O0FNbkM1QjtFQUNnQyxZTitZbkIsRUFBTzs7QU05WXBCO0VBQWtDLFlOb01uQixFQUFPOztBTW5NdEI7RUFBcUMsWU5yRG5CLEVBQU87O0FNc0R6QjtFQUFpQyxZTmhGbkIsRUFBTzs7QU1pRnJCO0VBQXdDLFlOckJuQixFQUFPOztBTXNCNUI7RUFBeUMsWU5vTG5CLEVBQU87O0FNbkw3QjtFQUF3QyxZTmtMbkIsRUFBTzs7QU1qTDVCO0VBQXNDLFlObUxuQixFQUFPOztBTWxMMUI7RUFBd0MsWU4rS25CLEVBQU87O0FNOUs1QjtFQUE4QyxZTnJJbkIsRUFBTzs7QU1zSWxDO0VBQStDLFlOakluQixFQUFPOztBTWtJbkM7RUFBNEMsWU5qSW5CLEVBQU87O0FNa0loQztFQUE4QyxZTnpJbkIsRUFBTzs7QU0wSWxDO0VBQWtDLFlOMkpuQixFQUFPOztBTTFKdEI7RUFBbUMsWU42bEJuQixFQUFPOztBTTVsQnZCO0VBQWtDLFlOcWVuQixFQUFPOztBTXBldEI7RUFBbUMsWU55R25CLEVBQU87O0FNeEd2QjtFQUFzQyxZTnpFbkIsRUFBTzs7QU0wRTFCO0VBQXVDLFlObEluQixFQUFPOztBTW1JM0I7RUFDa0MsWU5pakJuQixFQUFPOztBTWhqQnRCO0VBQ2lDLFlONE9uQixFQUFPOztBTTNPckI7RUFBa0MsWU5kbkIsRUFBTzs7QU1ldEI7RUFBa0MsWU4wR25CLEVBQU87O0FNekd0QjtFQUNxQyxZTjZYbkIsRUFBTzs7QU01WHpCO0VBQ29DLFlOMkZuQixFQUFPOztBTTFGeEI7RUFBc0MsWU42U25CLEVBQU87O0FNNVMxQjtFQUNxQyxZTnFHbkIsRUFBTzs7QU1wR3pCO0VBQW1DLFlOZ2JuQixFQUFPOztBTS9hdkI7RUFFaUMsWU5sSW5CLEVBQU87O0FNbUlyQjtFQUFvQyxZTnNPbkIsRUFBTzs7QU1yT3hCO0VBQW9DLFlOb09uQixFQUFPOztBTW5PeEI7RUFBMEMsWU4rYm5CLEVBQU87O0FNOWI5QjtFQUFzQyxZTjJnQm5CLEVBQU87O0FNMWdCMUI7RUFBa0MsWU51Y25CLEVBQU87O0FNdGN0QjtFQUFrQyxZTnlPbkIsRUFBTzs7QU14T3RCO0VBQWtDLFlONmZuQixFQUFPOztBTTVmdEI7RUFBc0MsWU5tVG5CLEVBQU87O0FNbFQxQjtFQUE2QyxZTm9UbkIsRUFBTzs7QU1uVGpDO0VBQStDLFlOZ0luQixFQUFPOztBTS9IbkM7RUFBd0MsWU40SG5CLEVBQU87O0FNM0g1QjtFQUFrQyxZTnFRbkIsRUFBTzs7QU1wUXRCO0VBQXVDLFlOcEZuQixFQUFPOztBTXFGM0I7RUFBcUMsWU45RW5CLEVBQU87O0FNK0V6QjtFQUF1QyxZTnJGbkIsRUFBTzs7QU1zRjNCO0VBQXdDLFlOckZuQixFQUFPOztBTXNGNUI7RUFBb0MsWU5oQ25CLEVBQU87O0FNaUN4QjtFQUNpQyxZTjBZbkIsRUFBTzs7QU16WXJCO0VBQ3NDLFlOOFluQixFQUFPOztBTTdZMUI7RUFDcUMsWU4yWW5CLEVBQU87O0FNMVl6QjtFQUFxQyxZTlVuQixFQUFPOztBTVR6QjtFQUFxQyxZTnVNbkIsRUFBTzs7QU10TXpCO0VBQ2lDLFlOcWZuQixFQUFPOztBTXBmckI7RUFDa0MsWU5vRm5CLEVBQU87O0FNbkZ0QjtFQUN1QyxZTithbkIsRUFBTzs7QU05YTNCO0VBQXNDLFlON0NuQixFQUFPOztBTThDMUI7RUFBdUMsWU4xQ25CLEVBQU87O0FNMkMzQjtFQUNpQyxZTnBJbkIsRUFBTzs7QU1xSXJCO0VBQW9DLFlONlduQixFQUFPOztBTTVXeEI7RUFBcUMsWU55ZW5CLEVBQU87O0FNeGV6QjtFQUNzQyxZTnJFbkIsRUFBTzs7QU1zRTFCO0VBQXdDLFlOcUxuQixFQUFPOztBTXBMNUI7RUFBcUMsWU5HbkIsRUFBTzs7QU1GekI7RUFBMkMsWU5uRW5CLEVBQU87O0FNb0UvQjtFQUF5QyxZTm5FbkIsRUFBTzs7QU1vRTdCO0VBQW9DLFlOaWZuQixFQUFPOztBTWhmeEI7RUFBd0MsWU44WW5CLEVBQU87O0FNN1k1QjtFQUFxQyxZTnlabkIsRUFBTzs7QU14WnpCO0VBQW1DLFlOOUpuQixFQUFPOztBTStKdkI7RUFBbUMsWU5sRW5CLEVBQU87O0FNbUV2QjtFQUFvQyxZTjFDbkIsRUFBTzs7QU0yQ3hCO0VBQXdDLFlOOEJuQixFQUFPOztBTTdCNUI7RUFBdUMsWU4xSW5CLEVBQU87O0FNMkkzQjtFQUF1QyxZTnNIbkIsRUFBTzs7QU1ySDNCO0VBQXNDLFlOck9uQixFQUFPOztBTXNPMUI7RUFBbUMsWU40TW5CLEVBQU87O0FNM012QjtFQUF3QyxZTlVuQixFQUFPOztBTVQ1QjtFQUFpQyxZTjNLbkIsRUFBTzs7QU00S3JCO0VBQXFDLFlOdUZuQixFQUFPOztBTXRGekI7RUFBd0MsWU4yUW5CLEVBQU87O0FNMVE1QjtFQUE4QyxZTnJPbkIsRUFBTzs7QU1zT2xDO0VBQStDLFlOck9uQixFQUFPOztBTXNPbkM7RUFBNEMsWU5yT25CLEVBQU87O0FNc09oQztFQUE4QyxZTnpPbkIsRUFBTzs7QU0wT2xDO0VBQXVDLFlOck9uQixFQUFPOztBTXNPM0I7RUFBd0MsWU5yT25CLEVBQU87O0FNc081QjtFQUFxQyxZTnJPbkIsRUFBTzs7QU1zT3pCO0VBQXVDLFlOek9uQixFQUFPOztBTTBPM0I7RUFBb0MsWU5wRG5CLEVBQU87O0FNcUR4QjtFQUFtQyxZTjRJbkIsRUFBTzs7QU0zSXZCO0VBQW1DLFlOd1luQixFQUFPOztBTXZZdkI7RUFDbUMsWU51TW5CLEVBQU87O0FNdE12QjtFQUFxQyxZTnpHbkIsRUFBTzs7QU0wR3pCO0VBQXVDLFlOeVFuQixFQUFPOztBTXhRM0I7RUFBd0MsWU55UW5CLEVBQU87O0FNeFE1QjtFQUFvQyxZTitWbkIsRUFBTzs7QU05VnhCO0VBQW1DLFlOOUduQixFQUFPOztBTStHdkI7RUFDa0MsWU5vUm5CLEVBQU87O0FNblJ0QjtFQUF1QyxZTitDbkIsRUFBTzs7QU05QzNCO0VBQXFDLFlObUJuQixFQUFPOztBTWxCekI7RUFBMEMsWU5vQm5CLEVBQU87O0FNbkI5QjtFQUFvQyxZTnFVbkIsRUFBTzs7QU1wVXhCO0VBQW9DLFlOMkJuQixFQUFPOztBTTFCeEI7RUFBa0MsWU5nTG5CLEVBQU87O0FNL0t0QjtFQUFvQyxZTjJCbkIsRUFBTzs7QU0xQnhCO0VBQXVDLFlOdUhuQixFQUFPOztBTXRIM0I7RUFBbUMsWU5NbkIsRUFBTzs7QU1MdkI7RUFBMkMsWU5JbkIsRUFBTzs7QU1IL0I7RUFBcUMsWU42WG5CLEVBQU87O0FNNVh6QjtFQUFpQyxZTmhIbkIsRUFBTzs7QU1pSHJCO0VBQ3NDLFlOdVFuQixFQUFPOztBTXRRMUI7RUFFd0MsWU5zVm5CLEVBQU87O0FNclY1QjtFQUEyQyxZTndJbkIsRUFBTzs7QU12SS9CO0VBQWlDLFlOaEduQixFQUFPOztBTWlHckI7RUFBc0MsWU52SG5CLEVBQU87O0FNd0gxQjtFQUN5QyxZTnRKbkIsRUFBTzs7QU11SjdCO0VBQXFDLFlOeU9uQixFQUFPOztBTXhPekI7RUFBaUMsWU4wRm5CLEVBQU87O0FNekZyQjtFQUF3QyxZTjFEbkIsRUFBTzs7QU0yRDVCO0VBQXdDLFlOa1duQixFQUFPOztBTWpXNUI7RUFBc0MsWU40Vm5CLEVBQU87O0FNM1YxQjtFQUFtQyxZTmxFbkIsRUFBTzs7QU1tRXZCO0VBQXlDLFlOZ09uQixFQUFPOztBTS9ON0I7RUFBdUMsWU4ySm5CLEVBQU87O0FNMUozQjtFQUE2QyxZTjJKbkIsRUFBTzs7QU0xSmpDO0VBQW1DLFlOc1JuQixFQUFPOztBTXJSdkI7RUFBdUMsWU41TG5CLEVBQU87O0FNNkwzQjtFQUE4QyxZTnhCbkIsRUFBTzs7QU15QmxDO0VBQW1DLFlOdVBuQixFQUFPOztBTXRQdkI7RUFBbUMsWU42SW5CLEVBQU87O0FNNUl2QjtFQUFnRCxZTjlKbkIsRUFBTzs7QU0rSnBDO0VBQWlELFlOOUpuQixFQUFPOztBTStKckM7RUFBOEMsWU45Sm5CLEVBQU87O0FNK0psQztFQUFnRCxZTmxLbkIsRUFBTzs7QU1tS3BDO0VBQWtDLFlOOERuQixFQUFPOztBTTdEdEI7RUFBaUMsWU5ySG5CLEVBQU87O0FNc0hyQjtFQUFtQyxZTnZTbkIsRUFBTzs7QU13U3ZCO0VBQXVDLFlOMlpuQixFQUFPOztBTTFaM0I7RUFBcUMsWU5oTm5CLEVBQU87O0FNaU56QjtFQUF1QyxZTjdGbkIsRUFBTzs7QU04RjNCO0VBQXVDLFlON0ZuQixFQUFPOztBTThGM0I7RUFBdUMsWU4rT25CLEVBQU87O0FNOU8zQjtFQUF3QyxZTmlNbkIsRUFBTzs7QU1oTTVCO0VBQW1DLFlONlduQixFQUFPOztBTTVXdkI7RUFBeUMsWU4wSW5CLEVBQU87O0FNekk3QjtFQUEyQyxZTjBJbkIsRUFBTzs7QU16SS9CO0VBQXFDLFlOcUZuQixFQUFPOztBTXBGekI7RUFBdUMsWU5tRm5CLEVBQU87O0FNbEYzQjtFQUF5QyxZTm5MbkIsRUFBTzs7QU1vTDdCO0VBQTBDLFlOMEtuQixFQUFPOztBTXpLOUI7RUFBaUQsWU5wRm5CLEVBQU87O0FNcUZyQztFQUF5QyxZTndQbkIsRUFBTzs7QU12UDdCO0VBQW9DLFlOakpuQixFQUFPOztBTWtKeEI7RUFDZ0QsWU4vTW5CLEVBQU87O0FNZ05wQztFQUM4QyxZTjlNbkIsRUFBTzs7QU0rTWxDO0VBQ2lELFlOak5uQixFQUFPOztBTWtOckM7RUFDZ0MsWU52R25CLEVBQU87O0FNd0dwQjtFQUFnQyxZTmhDbkIsRUFBTzs7QU1pQ3BCO0VBQ2dDLFlOcVluQixFQUFPOztBTXBZcEI7RUFDZ0MsWU40Q25CLEVBQU87O0FNM0NwQjtFQUdnQyxZTmdEbkIsRUFBTzs7QU0vQ3BCO0VBRWdDLFlOaU5uQixFQUFPOztBTWhOcEI7RUFDZ0MsWU4rQ25CLEVBQU87O0FNOUNwQjtFQUNnQyxZTjNQbkIsRUFBTzs7QU00UHBCO0VBQWlDLFlOaEduQixFQUFPOztBTWlHckI7RUFBc0MsWU5wRm5CLEVBQU87O0FNcUYxQjtFQUEyQyxZTjBQbkIsRUFBTzs7QU16UC9CO0VBQTRDLFlOMFBuQixFQUFPOztBTXpQaEM7RUFBNEMsWU4wUG5CLEVBQU87O0FNelBoQztFQUE2QyxZTjBQbkIsRUFBTzs7QU16UGpDO0VBQTZDLFlONlBuQixFQUFPOztBTTVQakM7RUFBOEMsWU42UG5CLEVBQU87O0FNNVBsQztFQUFzQyxZTmtVbkIsRUFBTzs7QU1qVTFCO0VBQXdDLFlOOFRuQixFQUFPOztBTTdUNUI7RUFBMkMsWU55YW5CLEVBQU87O0FNeGEvQjtFQUFvQyxZTnNhbkIsRUFBTzs7QU1yYXhCO0VBQWlDLFlOMlpuQixFQUFPOztBTTFackI7RUFBd0MsWU4yWm5CLEVBQU87O0FNMVo1QjtFQUF5QyxZTm9hbkIsRUFBTzs7QU1uYTdCO0VBQW9DLFlOeEpuQixFQUFPOztBTXlKeEI7RUFBMkMsWU44UG5CLEVBQU87O0FNN1AvQjtFQUFzQyxZTmdCbkIsRUFBTzs7QU1mMUI7RUFBbUMsWU5wRm5CLEVBQU87O0FNcUZ2QjtFQUFnQyxZTjNXbkIsRUFBTzs7QU00V3BCO0VBQXNDLFlOL1JuQixFQUFPOztBTWdTMUI7RUFBNkMsWU4vUm5CLEVBQU87O0FNZ1NqQztFQUFtQyxZTitVbkIsRUFBTzs7QU05VXZCO0VBQTBDLFlOK1VuQixFQUFPOztBTTlVOUI7RUFBNEMsWU5nRG5CLEVBQU87O0FNL0NoQztFQUEwQyxZTmtEbkIsRUFBTzs7QU1qRDlCO0VBQTRDLFlOK0NuQixFQUFPOztBTTlDaEM7RUFBNkMsWU4rQ25CLEVBQU87O0FNOUNqQztFQUFrQyxZTmpXbkIsRUFBTzs7QU1rV3RCO0VBQW9DLFlObVluQixFQUFPOztBTWxZeEI7RUFBb0MsWU43V25CLEVBQU87O0FNOFd4QjtFQUFrQyxZTmtDbkIsRUFBTzs7QU1qQ3RCO0VBQXFDLFlONUtuQixFQUFPOztBTTZLekI7RUFBa0MsWU5nTm5CLEVBQU87O0FNL010QjtFQUF1QyxZTnhGbkIsRUFBTzs7QU15RjNCO0VBQW1DLFlONFRuQixFQUFPOztBTTNUdkI7RUFBbUMsWU50SW5CLEVBQU87O0FNdUl2QjtFQUFpQyxZTjZDbkIsRUFBTzs7QU01Q3JCO0VBQ3FDLFlONURuQixFQUFPOztBTTZEekI7RUFBa0MsWU44UG5CLEVBQU87O0FNN1B0QjtFQUFtQyxZTnVFbkIsRUFBTzs7QU10RXZCO0VBQW9DLFlOOVduQixFQUFPOztBTStXeEI7RUFBZ0MsWU50U25CLEVBQU87O0FNdVNwQjtFQUErQixZTmlXbkIsRUFBTzs7QU1oV25CO0VBQWtDLFlOdVduQixFQUFPOztBTXRXdEI7RUFBbUMsWU4rSW5CLEVBQU87O0FNOUl2QjtFQUFzQyxZTmtGbkIsRUFBTzs7QU1qRjFCO0VBQTJDLFlONk5uQixFQUFPOztBTTVOL0I7RUFBaUQsWU4vV25CLEVBQU87O0FNZ1hyQztFQUFnRCxZTmpYbkIsRUFBTzs7QU1rWHBDO0VBQ2dELFlOelJuQixFQUFPOztBTTBScEM7RUFBeUMsWU5uTW5CLEVBQU87O0FNb003QjtFQUF1QyxZTmlXbkIsRUFBTzs7QU1oVzNCO0VBQXlDLFlOb1ZuQixFQUFPOztBTW5WN0I7RUFDZ0MsWU4wU25CLEVBQU87O0FNelNwQjtFQUEwQyxZTjBHbkIsRUFBTzs7QU16RzlCO0VBQTBDLFlONE1uQixFQUFPOztBTTNNOUI7RUFBa0MsWU5zTG5CLEVBQU87O0FNckx0QjtFQUE0QyxZTnpMbkIsRUFBTzs7QU0wTGhDO0VBQXNDLFlOb1duQixFQUFPOztBTW5XMUI7RUFBbUMsWU44RG5CLEVBQU87O0FNN0R2QjtFQUV1QyxZTjhTbkIsRUFBTzs7QU03UzNCO0VBQzJDLFlOMUZuQixFQUFPOztBTTJGL0I7RUFBa0MsWU5zV25CLEVBQU87O0FNcld0QjtFQUFtQyxZTmxHbkIsRUFBTzs7QU1tR3ZCO0VBQW1DLFlOZ0huQixFQUFPOztBTS9HdkI7RUFBMEMsWU5pSG5CLEVBQU87O0FNaEg5QjtFQUErQyxZTnlObkIsRUFBTzs7QU14Tm5DO0VBQXdDLFlOdU5uQixFQUFPOztBTXRONUI7RUFBc0MsWU4vTm5CLEVBQU87O0FNZ08xQjtFQUFpQyxZTjVObkIsRUFBTzs7QU02TnJCO0VBQTBDLFlOMkVuQixFQUFPOztBTTFFOUI7RUFBMkMsWU55RW5CLEVBQU87O0FNeEUvQjtFQUFtQyxZTnZObkIsRUFBTzs7QU13TnZCO0VBQW1DLFlOekNuQixFQUFPOztBTTBDdkI7RUFBcUMsWU5wQ25CLEVBQU87O0FNcUN6QjtFQUFnQyxZTnRMbkIsRUFBTzs7QU11THBCO0VBQXFDLFlON1VuQixFQUFPOztBTThVekI7RUFBa0MsWU4xUm5CLEVBQU87O0FNMlJ0QjtFQUFnQyxZTnNEbkIsRUFBTzs7QU1yRHBCO0VBQWtDLFlObUxuQixFQUFPOztBTWxMdEI7RUFBaUMsWU5yUG5CLEVBQU87O0FNc1ByQjtFQUFrQyxZTnJQbkIsRUFBTzs7QU1zUHRCO0VBQW9DLFlON1duQixFQUFPOztBTThXeEI7RUFBMkMsWU43V25CLEVBQU87O0FNOFcvQjtFQUFrQyxZTjBMbkIsRUFBTzs7QU16THRCO0VBQXlDLFlOMExuQixFQUFPOztBTXpMN0I7RUFBb0MsWU55Rm5CLEVBQU87O0FNeEZ4QjtFQUNnQyxZTnpVbkIsRUFBTzs7QU0wVXBCO0VBQ2lDLFlOK01uQixFQUFPOztBTTlNckI7RUFBaUMsWU40UG5CLEVBQU87O0FNM1ByQjtFQUFvQyxZTnVLbkIsRUFBTzs7QU10S3hCO0VBQXVDLFlOdFBuQixFQUFPOztBTXVQM0I7RUFBdUMsWU5pS25CLEVBQU87O0FNaEszQjtFQUFxQyxZTjlQbkIsRUFBTzs7QU0rUHpCO0VBQXVDLFlOL0xuQixFQUFPOztBTWdNM0I7RUFBd0MsWU54TG5CLEVBQU87O0FNeUw1QjtFQUF5QyxZTnJNbkIsRUFBTzs7QU1zTTdCO0VBQThDLFlOL0xuQixFQUFPOztBTWdNbEM7RUFFeUMsWU54TW5CLEVBQU87O0FNeU03QjtFQUMyQyxZTjlNbkIsRUFBTzs7QU0rTS9CO0VBQ3lDLFlOL01uQixFQUFPOztBTWdON0I7RUFDeUMsWU5wTW5CLEVBQU87O0FNcU03QjtFQUF3QyxZTmpObkIsRUFBTzs7QU1rTjVCO0VBQWlDLFlOdVJuQixFQUFPOztBTXRSckI7RUFBb0MsWU41U25CLEVBQU87O0FNNlN4QjtFQUFxQyxZTjlFbkIsRUFBTzs7QU0rRXpCO0VBSXNDLFlObkVuQixFQUFPOztBTW9FMUI7RUFBMkMsWU4vVG5CLEVBQU87O0FNZ1UvQjtFQUVrQyxZTnFEbkIsRUFBTzs7QU1wRHRCO0VBQ21DLFlOblFuQixFQUFPOztBTW9RdkI7RUFBdUMsWU56S25CLEVBQU87O0FNMEszQjtFQUFnQyxZTjNLbkIsRUFBTzs7QU00S3BCO0VBRXdDLFlOeEpuQixFQUFPOztBTXlKNUI7RUFBMEMsWU4yS25CLEVBQU87O0FNMUs5QjtFQUErQixZTmlDbkIsRUFBTzs7QU1oQ25CO0VBQ21DLFlOMFFuQixFQUFPOztBTXpRdkI7RUFDd0MsWU5WbkIsRUFBTzs7QU1XNUI7RUFDMEMsWU5YbkIsRUFBTzs7QU1ZOUI7RUFBb0MsWU4xSW5CLEVBQU87O0FNMkl4QjtFQUF3QyxZTmxWbkIsRUFBTzs7QU1tVjVCO0VBQW1DLFlOakpuQixFQUFPOztBTWtKdkI7RUFBc0MsWU5ibkIsRUFBTzs7QU1jMUI7RUFBb0MsWU4rRm5CLEVBQU87O0FNOUZ4QjtFQUFzQyxZTnVFbkIsRUFBTzs7QU10RTFCO0VBQTZDLFlOdUVuQixFQUFPOztBTXRFakM7RUFBaUMsWU56Wm5CLEVBQU87O0FNMFpyQjtFQUNxQyxZTjVNbkIsRUFBTzs7QU02TXpCO0VBQWdDLFlOME1uQixFQUFPOztBTXpNcEI7RUFBdUMsWU54YW5CLEVBQU87O0FNeWEzQjtFQUFpQyxZTkluQixFQUFPOztBTUhyQjtFQUF1QyxZTnVGbkIsRUFBTzs7QU10RjNCO0VBQW1DLFlOMk1uQixFQUFPOztBTTFNdkI7RUFBaUMsWU4rUW5CLEVBQU87O0FNOVFyQjtFQUF3QyxZTnpDbkIsRUFBTzs7QU0wQzVCO0VBQWlDLFlOd1BuQixFQUFPOztBTXZQckI7RUFBdUMsWU5yWm5CLEVBQU87O0FNc1ozQjtFQUFtQyxZTnZCbkIsRUFBTzs7QU13QnZCO0VBQTBDLFlOM0xuQixFQUFPOztBTTRMOUI7RUFBb0MsWU41WG5CLEVBQU87O0FNNlh4QjtFQUEwQyxZTmhZbkIsRUFBTzs7QU1pWTlCO0VBQXdDLFlOblluQixFQUFPOztBTW9ZNUI7RUFBb0MsWU50WW5CLEVBQU87O0FNdVl4QjtFQUFzQyxZTmxZbkIsRUFBTzs7QU1tWTFCO0VBQXNDLFlObFluQixFQUFPOztBTW1ZMUI7RUFBdUMsWU4zYm5CLEVBQU87O0FNNGIzQjtFQUF5QyxZTjNibkIsRUFBTzs7QU00YjdCO0VBQWtDLFlOK0tuQixFQUFPOztBTTlLdEI7RUFBc0MsWU5uVm5CLEVBQU87O0FNb1YxQjtFQUErQixZTjlkbkIsRUFBTzs7QU0rZG5CO0VBQXVDLFlONVJuQixFQUFPOztBTTZSM0I7RUFBd0MsWU4vQ25CLEVBQU87O0FNZ0Q1QjtFQUEwQyxZTjlibkIsRUFBTzs7QU0rYjlCO0VBQXVDLFlOdGZuQixFQUFPOztBTXVmM0I7RUFBc0MsWU4vQm5CLEVBQU87O0FNZ0MxQjtFQUF1QyxZTnpIbkIsRUFBTzs7QU0wSDNCO0VBQW1DLFlOdkluQixFQUFPOztBTXdJdkI7RUFBMEMsWU52SW5CLEVBQU87O0FNd0k5QjtFQUF1QyxZTjRKbkIsRUFBTzs7QU0zSjNCO0VBQXNDLFlONEpuQixFQUFPOztBTTNKMUI7RUFBb0MsWU54Y25CLEVBQU87O0FNeWN4QjtFQUFnQyxZTmpibkIsRUFBTzs7QU1rYnBCO0VBQW9DLFlOdkpuQixFQUFPOztBTXdKeEI7RUFBc0MsWU4zZ0JuQixFQUFPOztBTTRnQjFCO0VBQStCLFlON1puQixFQUFPOztBTThabkI7RUFFZ0MsWU56S25CLEVBQU87O0FNMEtwQjtFQUFxQyxZTnBHbkIsRUFBTzs7QU1xR3pCO0VBQXVDLFlOeGJuQixFQUFPOztBTXliM0I7RUFBMkMsWU41V25CLEVBQU87O0FNNlcvQjtFQUFxQyxZTjlWbkIsRUFBTzs7QU0rVnpCO0VBQXFDLFlOOVBuQixFQUFPOztBTStQekI7RUFBb0MsWU5ySm5CLEVBQU87O0FNc0p4QjtFQUFtQyxZTmVuQixFQUFPOztBTWR2QjtFQUF5QyxZTjJCbkIsRUFBTzs7QU0xQjdCO0VBQXdDLFlOb0NuQixFQUFPOztBTW5DNUI7RUFBcUMsWU5xQ25CLEVBQU87O0FNcEN6QjtFQUFzQyxZTjVhbkIsRUFBTzs7QU02YTFCO0VBQTRDLFlOOWFuQixFQUFPOztBTSthaEM7RUFBb0MsWU4vVm5CLEVBQU87O0FNZ1d4QjtFQUFpQyxZTm9CbkIsRUFBTzs7QU1uQnJCO0VBQXdDLFlOOEtuQixFQUFPOztBTTdLNUI7RUFBdUMsWU4vRm5CLEVBQU87O0FNZ0czQjtFQUF3QyxZTjZFbkIsRUFBTzs7QU01RTVCO0VBQXNDLFlOOU1uQixFQUFPOztBTStNMUI7RUFBa0MsWU4rS25CLEVBQU87O0FNOUt0QjtFQUFpQyxZTjdIbkIsRUFBTzs7QU04SHJCO0VBQW9DLFlObkhuQixFQUFPOztBTW9IeEI7RUFDd0MsWU5rSW5CLEVBQU87O0FNakk1QjtFQUE0QyxZTmtJbkIsRUFBTzs7QU1qSWhDO0VBQXlDLFlOMEtuQixFQUFPOztBTXpLN0I7RUFBd0MsWU5sSW5CLEVBQU87O0FNbUk1QjtFQUF1QyxZTnlLbkIsRUFBTzs7QU14SzNCO0VBQXdDLFlObkluQixFQUFPOztBTW9JNUI7RUFBMEMsWU5sSW5CLEVBQU87O0FNbUk5QjtFQUEwQyxZTnBJbkIsRUFBTzs7QU1xSTlCO0VBQW1DLFlOMUduQixFQUFPOztBTTJHdkI7RUFBdUMsWU43UW5CLEVBQU87O0FNOFEzQjtFQUE4QyxZTjFVbkIsRUFBTzs7QU0yVWxDO0VBQXdDLFlOekVuQixFQUFPOztBTTBFNUI7RUFBcUMsWU5rTG5CLEVBQU87O0FNakx6QjtFQUFtQyxZTlhuQixFQUFPOztBTVl2QjtFQUFzQyxZTnVKbkIsRUFBTzs7QU10SjFCO0VBQXVDLFlOd0puQixFQUFPOztBTXZKM0I7RUFDZ0MsWU4vZm5CLEVBQU87O0FNZ2dCcEI7RUFBb0MsWU40Sm5CLEVBQU87O0FNM0p4QjtFQUFrQyxZTjhHbkIsRUFBTzs7QU03R3RCO0VBQW1DLFlOd0RuQixFQUFPOztBTXZEdkI7RUFBbUMsWU45SW5CLEVBQU87O0FNK0l2QjtFQUN5QyxZTjBMbkIsRUFBTzs7QU16TDdCO0VBQTBDLFlOakhuQixFQUFPOztBTWtIOUI7RUFBcUMsWU5ySG5CLEVBQU87O0FNc0h6QjtFQUF5QyxZTm5XbkIsRUFBTzs7QU1vVzdCO0VBRXlDLFlOL2dCbkIsRUFBTzs7QU1naEI3QjtFQUNtRCxZTjlnQm5CLEVBQU87O0FNK2dCdkM7RUFDeUMsWU5saEJuQixFQUFPOztBTW1oQjdCO0VBQzRDLFlObmhCbkIsRUFBTzs7QU1vaEJoQztFQUMwQyxZTnhoQm5CLEVBQU87O0FNeWhCOUI7RUFBMEMsWU4zSW5CLEVBQU87O0FNNEk5QjtFQUFxQyxZTjNPbkIsRUFBTzs7QU00T3pCO0VBQXlDLFlOeEluQixFQUFPOztBTXlJN0I7RUFBMkMsWU54SW5CLEVBQU87O0FNeUkvQjtFQUF3QyxZTndCbkIsRUFBTzs7QU12QjVCO0VBQTBDLFlOd0JuQixFQUFPOztBTXZCOUI7RUFBbUMsWU4vZG5CLEVBQU87O0FNZ2V2QjtFQUEyQyxZTmxlbkIsRUFBTzs7QU1tZS9CO0VBQWtDLFlOcGNuQixFQUFPOztBTXFjdEI7RUFBMEMsWU5sakJuQixFQUFPOztBTW1qQjlCO0VBQXdDLFlOeFBuQixFQUFPOztBTXlQNUI7RUFDNEMsWU56UG5CLEVBQU87O0FNMFBoQztFQUMyQyxZTjdQbkIsRUFBTzs7QU04UC9CO0VBQzBDLFlOaFFuQixFQUFPOztBTWlROUI7RUFBc0MsWU5yUW5CLEVBQU87O0FNc1ExQjtFQUN3QyxZTnhSbkIsRUFBTzs7QU15UjVCO0VBQ3lDLFlON1JuQixFQUFPOztBTThSN0I7RUFBNEMsWU4xUm5CLEVBQU87O0FNMlJoQztFQUEwQyxZTnBTbkIsRUFBTzs7QU1xUzlCO0VBQXlDLFlOM1JuQixFQUFPOztBTTRSN0I7RUFBMkMsWU4vUm5CLEVBQU87O0FNZ1MvQjtFQUF5QyxZTmpTbkIsRUFBTzs7QU1rUzdCO0VBQXNDLFlOK0RuQixFQUFPOztBTTlEMUI7RUFBdUMsWU4vRm5CLEVBQU87O0FNZ0czQjtFQUE2QyxZTi9ibkIsRUFBTzs7QU1nY2pDO0VBQStCLFlOdFVuQixFQUFPOztBTXVVbkI7RUFBc0MsWU50VW5CLEVBQU87O0FNdVUxQjtFQUF3QyxZTmtFbkIsRUFBTzs7QU1qRTVCO0VBQTBDLFlOcktuQixFQUFPOztBTXNLOUI7RUFBaUQsWU5yS25CLEVBQU87O0FNc0tyQztFQUF1QyxZTjVVbkIsRUFBTzs7QU02VTNCO0VBQXdDLFlOd0huQixFQUFPOztBTXZINUI7RUFBbUMsWU5uRm5CLEVBQU87O0FNb0Z2QjtFQUFtQyxZTnplbkIsRUFBTzs7QU0wZXZCO0VBQW9DLFlOOVduQixFQUFPOztBTStXeEI7RUFBa0MsWU54S25CLEVBQU87O0FNeUt0QjtFQUE4QyxZTnBRbkIsRUFBTzs7QU1xUWxDO0VBQ3VDLFlOU25CLEVBQU87O0FNUjNCO0VBQW1DLFlOamRuQixFQUFPOztBTWtkdkI7RUFBa0MsWU56b0JuQixFQUFPOztBTTBvQnRCO0VBQW1DLFlOL25CbkIsRUFBTzs7QU1nb0J2QjtFQUE0QyxZTjNoQm5CLEVBQU87O0FNNGhCaEM7RUFBNkMsWU45aEJuQixFQUFPOztBTStoQmpDO0VBQTZDLFlONWhCbkIsRUFBTzs7QU02aEJqQztFQUE2QyxZTmppQm5CLEVBQU87O0FNa2lCakM7RUFBcUMsWU5wUm5CLEVBQU87O0FNcVJ6QjtFQUFvQyxZTjVObkIsRUFBTzs7QU02TnhCO0VBQXNDLFlONU5uQixFQUFPOztBTTZOMUI7RUFBa0MsWU4vTm5CLEVBQU87O0FNZ090QjtFQUFnQyxZTmxPbkIsRUFBTzs7QU1tT3BCO0VBQXVDLFlOcGVuQixFQUFPOztBTXFlM0I7RUFBeUMsWU5wZW5CLEVBQU87O0FNcWU3QjtFQUFrQyxZTnRTbkIsRUFBTzs7QU11U3RCO0VBQWtDLFlOaUZuQixFQUFPOztBTWhGdEI7RUFBc0MsWU5sa0JuQixFQUFPOztBTW1rQjFCO0VBQXNDLFlOclhuQixFQUFPOztBTXNYMUI7RUFBeUMsWU5wSW5CLEVBQU87O0FNcUk3QjtFQUFpQyxZTnBjbkIsRUFBTzs7QU1xY3JCO0VBQTRDLFlOaGVuQixFQUFPOztBTWllaEM7RUFBcUMsWU5wZm5CLEVBQU87O0FNcWZ6QjtFQUFpQyxZTmxObkIsRUFBTzs7QU1tTnJCO0VBQXlDLFlOMVhuQixFQUFPOztBTTJYN0I7RUFBZ0MsWU5vRG5CLEVBQU87O0FNbkRwQjtFQUF5QyxZTjNKbkIsRUFBTzs7QU00SjdCO0VBQXFDLFlOek5uQixFQUFPOztBTTBOekI7RUFBbUMsWU5sSG5CLEVBQU87O0FNbUh2QjtFQUF5QyxZTjdMbkIsRUFBTzs7QU04TDdCO0VBQTJDLFlON0xuQixFQUFPOztBTThML0I7RUFBd0MsWU4zQ25CLEVBQU87O0FNNEM1QjtFQUEwQyxZTjNDbkIsRUFBTzs7QU00QzlCO0VBQXlDLFlOckduQixFQUFPOztBTXNHN0I7RUFBNEMsWU5yR25CLEVBQU87O0FNc0doQztFQUFvQyxZTjdVbkIsRUFBTzs7QU04VXhCO0VBQXNDLFlObmxCbkIsRUFBTzs7QU1vbEIxQjtFQUF3QyxZTm5sQm5CLEVBQU87O0FNb2xCNUI7RUFBb0MsWU4vTG5CLEVBQU87O0FNZ014QjtFQUFtQyxZTmxYbkIsRUFBTzs7QU1tWHZCO0VBQXVDLFlOa0ZuQixFQUFPOztBTWpGM0I7RUFBb0MsWU5tRm5CLEVBQU87O0FNbEZ4QjtFQUFtQyxZTjljbkIsRUFBTzs7QU0rY3ZCO0VBQTZDLFlOMkJuQixFQUFPOztBTTFCakM7RUFBMkMsWU5tRW5CLEVBQU87O0FNbEUvQjtFQUE4QyxZTnhLbkIsRUFBTzs7QU15S2xDO0VBQWtDLFlOOWxCbkIsRUFBTzs7QU0rbEJ0QjtFQUE4QyxZTnRvQm5CLEVBQU87O0FNdW9CbEM7RUFBaUQsWU5xRG5CLEVBQU87O0FNcERyQztFQUFvQyxZTnhsQm5CLEVBQU87O0FNeWxCeEI7RUFBd0QsWU41b0JuQixFQUFPOztBTTZvQjVDO0VBQ2dFLFlOOXFCbkIsRUFBTzs7QU0rcUJwRDtFQUVpQyxZTnZmbkIsRUFBTzs7QU13ZnJCO0VBQWtDLFlOaFluQixFQUFPOztBTWlZdEI7RUFBb0MsWU5oWW5CLEVBQU87O0FNaVl4QjtFQUMwQyxZTjFIbkIsRUFBTzs7QU0ySDlCO0VBQXVDLFlOelJuQixFQUFPOztBTTBSM0I7RUFBbUMsWU5pQ25CLEVBQU87O0FNaEN2QjtFQUEwQyxZTmlDbkIsRUFBTzs7QU1oQzlCO0VBQXFDLFlObEhuQixFQUFPOztBTW1IekI7RUFBMkMsWU5sSG5CLEVBQU87O0FNbUgvQjtFQUE0QyxZTmxIbkIsRUFBTzs7QU1tSGhDO0VBQXVDLFlOck5uQixFQUFPOztBTXNOM0I7RUFBd0MsWU5wYm5CLEVBQU87O0FNcWI1QjtFQUFrQyxZTm1FbkIsRUFBTzs7QU1sRXRCO0VBQXNDLFlOcERuQixFQUFPOztBTXFEMUI7RUFDaUQsWU56WW5CLEVBQU87O0FNMFlyQztFQUN5QyxZTjdhbkIsRUFBTzs7QU04YTdCO0VBQXdDLFlOdFhuQixFQUFPOztBTXVYNUI7RUFBMEMsWU5sZm5CLEVBQU87O0FNbWY5QjtFQUE0QyxZTmxmbkIsRUFBTzs7QU1tZmhDO0VBQW1DLFlOdFRuQixFQUFPOztBTXVUdkI7RUFBeUMsWU5wdEJuQixFQUFPOztBTXF0QjdCO0VBQTJDLFlOcHRCbkIsRUFBTzs7QU1xdEIvQjtFQUN5QyxZTnJ0Qm5CLEVBQU87O0FNc3RCN0I7RUFDMkMsWU50dEJuQixFQUFPOztBTXV0Qi9CO0VBQXdDLFlOSm5CLEVBQU87O0FNSzVCO0VBQTBDLFlOSm5CLEVBQU87O0FNSzlCO0VBQW1DLFlOSG5CLEVBQU87O0FNSXZCO0VBQXFDLFlOM1duQixFQUFPOztBTTRXekI7RUFDb0MsWU41V25CLEVBQU87O0FNNld4QjtFQUNzQyxZTjdXbkIsRUFBTzs7QU04VzFCO0VBQWtDLFlOdE5uQixFQUFPOztBTXVOdEI7RUFBMkMsWU4zYm5CLEVBQU87O0FNNGIvQjtFQUFxQyxZTnRGbkIsRUFBTzs7QU11RnpCO0VBRTZDLFlOeEVuQixFQUFPOztBTXlFakM7RUFDdUQsWU52RW5CLEVBQU87O0FNd0UzQztFQUM2QyxZTjNFbkIsRUFBTzs7QU00RWpDO0VBQ2dELFlONUVuQixFQUFPOztBTTZFcEM7RUFDOEMsWU5qRm5CLEVBQU87O0FNa0ZsQztFQUFtQyxZTjNLbkIsRUFBTzs7QU00S3ZCO0VBRWlDLFlOenJCbkIsRUFBTzs7QU0wckJyQjtFQUFvQyxZTmxQbkIsRUFBTzs7QU1tUHhCO0VBQTRDLFlOS25CLEVBQU87O0FNSmhDO0VBQTRDLFlOS25CLEVBQU87O0FNSmhDO0VBQTJDLFlOS25CLEVBQU87O0FNSi9CO0VBQ3lDLFlORG5CLEVBQU87O0FNRTdCO0VBQzJDLFlORm5CLEVBQU87O0FNRy9CO0VBQXFDLFlOeHNCbkIsRUFBTzs7QU15c0J6QjtFQUFpQyxZTnBibkIsRUFBTzs7QU1xYnJCO0VBQWlDLFlOMWhCbkIsRUFBTzs7QU0yaEJyQjtFQUFpQyxZTnhZbkIs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RUt4RkosZ0JDbUkyRCxFQUFBOztBTnBDbkQ7RVF6RU4sa0JBQWtCO0VBQ2xCLGVBSG1ELEVBQUE7O0FSaUY3QztFUS9FTixrQkFBa0I7RUFDbEIsZ0JBSG1ELEVBQUE7O0FSMkYvQztFUTNETixxQkYrRTJELEVBQUE7O0FOM0N2RDtFS3hGSixVQ21JMkQsRUFBQTs7QU5wQ25EO0VRekVOLGtCQUFrQjtFQUNsQixTQUhtRCxFQUFBOztBUmlGN0M7RVEvRU4sa0JBQWtCO0VBQ2xCLFVBSG1ELEVBQUE7O0FSMkYvQztFUTNETixzQkYrRTJELEVBQUE7O0FOM0N2RDtFS3hGSixnQkNtSTJELEVBQUE7O0FOcENuRDtFUXpFTixrQkFBa0I7RUFDbEIsZUFIbUQsRUFBQTs7QVJpRjdDO0VRL0VOLGtCQUFrQjtFQUNsQixnQkFIbUQsRUFBQTs7QVIyRi9DO0VRM0ROLGdCRitFMkQsRUFBQTs7QU4zQ3ZEO0VLeEZKLGdCQ21JMkQsRUFBQTs7QU5wQ25EO0VRekVOLGtCQUFrQjtFQUNsQixlQUhtRCxFQUFBOztBUmlGN0M7RVEvRU4sa0JBQWtCO0VBQ2xCLGdCQUhtRCxFQUFBOztBUjJGL0M7RVEzRE4sc0JGK0UyRCxFQUFBOztBTjNDdkQ7RUt4RkosVUNtSTJELEVBQUE7O0FOcENuRDtFUXpFTixrQkFBa0I7RUFDbEIsU0FIbUQsRUFBQTs7QVJpRjdDO0VRL0VOLGtCQUFrQjtFQUNsQixVQUhtRCxFQUFBOztBUjJGL0M7RVEzRE4sc0JGK0UyRCxFQUFBOztBTjNDdkQ7RUt4RkosZ0JDbUkyRCxFQUFBOztBTnBDbkQ7RVF6RU4sa0JBQWtCO0VBQ2xCLGVBSG1ELEVBQUE7O0FSaUY3QztFUS9FTixrQkFBa0I7RUFDbEIsZ0JBSG1ELEVBQUE7O0FSMkYvQztFUTNETixnQkYrRTJELEVBQUE7O0FOM0N2RDtFS3hGSixnQkNtSTJELEVBQUE7O0FOcENuRDtFUXpFTixrQkFBa0I7RUFDbEIsZUFIbUQsRUFBQTs7QVJpRjdDO0VRL0VOLGtCQUFrQjtFQUNsQixnQkFIbUQsRUFBQTs7QVIyRi9DO0VRM0ROLHNCRitFMkQsRUFBQTs7QU4zQ3ZEO0VLeEZKLFVDbUkyRCxFQUFBOztBTnBDbkQ7RVF6RU4sa0JBQWtCO0VBQ2xCLFNBSG1ELEVBQUE7O0FSaUY3QztFUS9FTixrQkFBa0I7RUFDbEIsVUFIbUQsRUFBQTs7QVIyRi9DO0VRM0ROLHNCRitFMkQsRUFBQTs7QU4zQ3ZEO0VLeEZKLGdCQ21JMkQsRUFBQTs7QU5wQ25EO0VRekVOLGtCQUFrQjtFQUNsQixlQUhtRCxFQUFBOztBUmlGN0M7RVEvRU4sa0JBQWtCO0VBQ2xCLGdCQUhtRCxFQUFBOztBUjJGL0M7RVEzRE4sZ0JGK0UyRCxFQUFBOztBTjNDdkQ7RUt4RkosZ0JDbUkyRCxFQUFBOztBTnBDbkQ7RVF6RU4sa0JBQWtCO0VBQ2xCLGVBSG1ELEVBQUE7O0FSaUY3QztFUS9FTixrQkFBa0I7RUFDbEIsZ0JBSG1ELEVBQUE7O0FSMkYvQztFUTNETixzQkYrRTJELEVBQUE7O0FOM0N2RDtFS3hGSixXQ21JMkQsRUFBQTs7QU5wQnJEO0VRM0ROLHNCRitFMkQsRUFBQTs7QU5adkQ7RVMvR0YsV1hvR3VEO0VXbkd2RCxXQUF1QixFQUFBOztBVDhHckI7RVN2RkEsV0FBVyxFQUFBOztBVHVGWDtFU25GQSxXQUFXLEVBQUE7O0FUbUZYO0VTL0VBLFdYb0VxRCxFQUFBOztBRVdyRDtFUy9HRixXWG9HdUQ7RVduR3ZELFVBQXVCLEVBQUE7O0FUOEdyQjtFU3ZGQSxXQUFXLEVBQUE7O0FUdUZYO0VTbkZBLFdBQVcsRUFBQTs7QVRtRlg7RVMvRUEsV1hvRXFELEVBQUE7O0FFV3JEO0VTL0dGLFdYb0d1RDtFV25HdkQsZ0JBQXVCLEVBQUE7O0FUOEdyQjtFU3ZGQSxXQUFXLEVBQUE7O0FUdUZYO0VTbkZBLFdBQVcsRUFBQTs7QVRtRlg7RVMvRUEsV1hvRXFELEVBQUE7O0FFV3JEO0VTL0dGLFdYb0d1RDtFV25HdkQsVUFBdUIsRUFBQTs7QVQ4R3JCO0VTdkZBLFdBQVcsRUFBQTs7QVR1Rlg7RVNuRkEsV0FBVyxFQUFBOztBVG1GWDtFUy9FQSxXWG9FcUQsRUFBQTs7QUVXckQ7RVMvR0YsV1hvR3VEO0VXbkd2RCxVQUF1QixFQUFBOztBVDhHckI7RVN2RkEsV0FBVyxFQUFBOztBVHVGWDtFU25GQSxXQUFXLEVBQUE7O0FUbUZYO0VTL0VBLFdYb0VxRCxFQUFBOztBRVdyRDtFUy9HRixXWG9HdUQ7RVduR3ZELGdCQUF1QixFQUFBOztBVDhHckI7RVN2RkEsV0FBVyxFQUFBOztBVHVGWDtFU25GQSxXQUFXLEVBQUE7O0FUbUZYO0VTL0VBLFdYb0VxRCxFQUFBOztBRVdyRDtFUy9HRixXWG9HdUQ7RVduR3ZELGdCQUF1QixFQUFBOztBVDhHckI7RVN2RkEsV0FBVyxFQUFBOztBVHVGWDtFU25GQSxXQUFXLEVBQUE7O0FUbUZYO0VTL0VBLFdYb0VxRCxFQUFBOztBRVdyRDtFUy9HRixXWG9HdUQ7RVduR3ZELFlBQXVCLEVBQUE7O0FUOEdyQjtFU3ZGQSxXQUFXLEVBQUE7O0FUdUZYO0VTbkZBLFdBQVcsRUFBQTs7QVRtRlg7RVMvRUEsV1hvRXFELEVBQUE7O0FFaUJ2RDtFR3JIQSxnQkR1RVM7RUN0RVQsZURzRVMsRUFBQTs7QUY4Q1Q7RUFJSSxlQUFlO0VBQ2YsY0FBYyxFQUFBOztBQUlsQjtFQUNFLGVBQWU7RUFDZixjQUFjLEVBQUE7O0FBR2hCO0VHbklBLHVCQUZxQztFQUdyQyxzQkFIcUMsRUFBQTs7QUgySW5DO0VRakhGLGtCQUFrQjtFQUNsQixpQkFBaUIsRUFBQTs7QUFMakI7RUFDRSxXQUFXO0VBQ1gsV0FBVyxFQUFBOztBUitIWDtFUWpISixnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLGNBQWMsRUFBQTs7QUF6Q1o7RUFDRSxXVnNHcUQ7RVVyR3JELFdBQVcsRUFBQTs7QUFLWDtFQUNFLFlWZ0dvRCxFQUFBOztBTXFEcEQ7RUoxRUY7SUt4RkosZUNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixjQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsZUFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sZUYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLGdCQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLGVBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixnQkFIbUQsRUFBQTtFUjJGL0M7SVEzRE4scUJGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixVQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLFNBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixVQUhtRCxFQUFBO0VSMkYvQztJUTNETixzQkYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLGdCQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLGVBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixnQkFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sZ0JGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixnQkNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixlQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsZ0JBSG1ELEVBQUE7RVIyRi9DO0lRM0ROLHNCRitFMkQsRUFBQTtFTjNDdkQ7SUt4RkosVUNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixTQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsVUFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sc0JGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixnQkNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixlQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsZ0JBSG1ELEVBQUE7RVIyRi9DO0lRM0ROLGdCRitFMkQsRUFBQTtFTjNDdkQ7SUt4RkosZ0JDbUkyRCxFQUFBO0VOcENuRDtJUXpFTixrQkFBa0I7SUFDbEIsZUFIbUQsRUFBQTtFUmlGN0M7SVEvRU4sa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VSMkYvQztJUTNETixzQkYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLFVDbUkyRCxFQUFBO0VOcENuRDtJUXpFTixrQkFBa0I7SUFDbEIsU0FIbUQsRUFBQTtFUmlGN0M7SVEvRU4sa0JBQWtCO0lBQ2xCLFVBSG1ELEVBQUE7RVIyRi9DO0lRM0ROLHNCRitFMkQsRUFBQTtFTjNDdkQ7SUt4RkosZ0JDbUkyRCxFQUFBO0VOcENuRDtJUXpFTixrQkFBa0I7SUFDbEIsZUFIbUQsRUFBQTtFUmlGN0M7SVEvRU4sa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VSMkYvQztJUTNETixnQkYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLGdCQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLGVBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixnQkFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sc0JGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixXQ21JMkQsRUFBQTtFTnBCckQ7SVEzRE4sc0JGK0UyRCxFQUFBO0VOWnZEO0lTL0dGLFdYb0d1RDtJV25HdkQsV0FBdUIsRUFBQTtFVDhHckI7SVN2RkEsV0FBVyxFQUFBO0VUdUZYO0lTbkZBLFdBQVcsRUFBQTtFVG1GWDtJUy9FQSxXWG9FcUQsRUFBQTtFRVdyRDtJUy9HRixXWG9HdUQ7SVduR3ZELFVBQXVCLEVBQUE7RVQ4R3JCO0lTdkZBLFdBQVcsRUFBQTtFVHVGWDtJU25GQSxXQUFXLEVBQUE7RVRtRlg7SVMvRUEsV1hvRXFELEVBQUE7RUVXckQ7SVMvR0YsV1hvR3VEO0lXbkd2RCxnQkFBdUIsRUFBQTtFVDhHckI7SVN2RkEsV0FBVyxFQUFBO0VUdUZYO0lTbkZBLFdBQVcsRUFBQTtFVG1GWDtJUy9FQSxXWG9FcUQsRUFBQTtFRVdyRDtJUy9HRixXWG9HdUQ7SVduR3ZELFVBQXVCLEVBQUE7RVQ4R3JCO0lTdkZBLFdBQVcsRUFBQTtFVHVGWDtJU25GQSxXQUFXLEVBQUE7RVRtRlg7SVMvRUEsV1hvRXFELEVBQUE7RUVXckQ7SVMvR0YsV1hvR3VEO0lXbkd2RCxVQUF1QixFQUFBO0VUOEdyQjtJU3ZGQSxXQUFXLEVBQUE7RVR1Rlg7SVNuRkEsV0FBVyxFQUFBO0VUbUZYO0lTL0VBLFdYb0VxRCxFQUFBO0VFV3JEO0lTL0dGLFdYb0d1RDtJV25HdkQsZ0JBQXVCLEVBQUE7RVQ4R3JCO0lTdkZBLFdBQVcsRUFBQTtFVHVGWDtJU25GQSxXQUFXLEVBQUE7RVRtRlg7SVMvRUEsV1hvRXFELEVBQUE7RUVXckQ7SVMvR0YsV1hvR3VEO0lXbkd2RCxnQkFBdUIsRUFBQTtFVDhHckI7SVN2RkEsV0FBVyxFQUFBO0VUdUZYO0lTbkZBLFdBQVcsRUFBQTtFVG1GWDtJUy9FQSxXWG9FcUQsRUFBQTtFRVdyRDtJUy9HRixXWG9HdUQ7SVduR3ZELFlBQXVCLEVBQUE7RVQ4R3JCO0lTdkZBLFdBQVcsRUFBQTtFVHVGWDtJU25GQSxXQUFXLEVBQUE7RVRtRlg7SVMvRUEsV1hvRXFELEVBQUE7RUVpQnZEO0lHckhBLGdCRHVFUztJQ3RFVCxlRHNFUyxFQUFBO0VGOENUO0lBSUksZUFBZTtJQUNmLGNBQWMsRUFBQTtFQUlsQjtJQUNFLGVBQWU7SUFDZixjQUFjLEVBQUE7RUFHaEI7SUduSUEsd0JBRnFDO0lBR3JDLHVCQUhxQyxFQUFBO0VIMkluQztJUWpIRixrQkFBa0I7SUFDbEIsaUJBQWlCLEVBQUE7RUFMakI7SUFDRSxXQUFXO0lBQ1gsV0FBVyxFQUFBO0VSK0hYO0lRakhKLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2YsY0FBYyxFQUFBO0VBekNaO0lBQ0UsV1ZzR3FEO0lVckdyRCxXQUFXLEVBQUE7RUFLWDtJQUNFLFlWZ0dvRCxFQUFBLEVVL0ZyRDs7QUpvSkM7RUoxRUY7SUt4RkosZUNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixjQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsZUFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sZUYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLGdCQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLGVBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixnQkFIbUQsRUFBQTtFUjJGL0M7SVEzRE4scUJGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixVQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLFNBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixVQUhtRCxFQUFBO0VSMkYvQztJUTNETixzQkYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLGdCQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLGVBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixnQkFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sZ0JGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixnQkNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixlQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsZ0JBSG1ELEVBQUE7RVIyRi9DO0lRM0ROLHNCRitFMkQsRUFBQTtFTjNDdkQ7SUt4RkosVUNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixTQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsVUFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sc0JGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixnQkNtSTJELEVBQUE7RU5wQ25EO0lRekVOLGtCQUFrQjtJQUNsQixlQUhtRCxFQUFBO0VSaUY3QztJUS9FTixrQkFBa0I7SUFDbEIsZ0JBSG1ELEVBQUE7RVIyRi9DO0lRM0ROLGdCRitFMkQsRUFBQTtFTjNDdkQ7SUt4RkosZ0JDbUkyRCxFQUFBO0VOcENuRDtJUXpFTixrQkFBa0I7SUFDbEIsZUFIbUQsRUFBQTtFUmlGN0M7SVEvRU4sa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VSMkYvQztJUTNETixzQkYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLFVDbUkyRCxFQUFBO0VOcENuRDtJUXpFTixrQkFBa0I7SUFDbEIsU0FIbUQsRUFBQTtFUmlGN0M7SVEvRU4sa0JBQWtCO0lBQ2xCLFVBSG1ELEVBQUE7RVIyRi9DO0lRM0ROLHNCRitFMkQsRUFBQTtFTjNDdkQ7SUt4RkosZ0JDbUkyRCxFQUFBO0VOcENuRDtJUXpFTixrQkFBa0I7SUFDbEIsZUFIbUQsRUFBQTtFUmlGN0M7SVEvRU4sa0JBQWtCO0lBQ2xCLGdCQUhtRCxFQUFBO0VSMkYvQztJUTNETixnQkYrRTJELEVBQUE7RU4zQ3ZEO0lLeEZKLGdCQ21JMkQsRUFBQTtFTnBDbkQ7SVF6RU4sa0JBQWtCO0lBQ2xCLGVBSG1ELEVBQUE7RVJpRjdDO0lRL0VOLGtCQUFrQjtJQUNsQixnQkFIbUQsRUFBQTtFUjJGL0M7SVEzRE4sc0JGK0UyRCxFQUFBO0VOM0N2RDtJS3hGSixXQ21JMkQsRUFBQTtFTnBCckQ7SVEzRE4sc0JGK0UyRCxFQUFBO0VOWnZEO0lTL0dGLFdYb0d1RDtJV25HdkQsV0FBdUIsRUFBQTtFVDhHckI7SVN2RkEsV0FBVyxFQUFBO0VUdUZYO0lTbkZBLFdBQVcsRUFBQTtFVG1GWDtJUy9FQSxXWG9FcUQsRUFBQTtFRVdyRDtJUy9HRixXWG9HdUQ7SVduR3ZELFVBQXVCLEVBQUE7RVQ4R3JCO0lTdkZBLFdBQVcsRUFBQTtFVHVGWDtJU25GQSxXQUFXLEVBQUE7RVRtRlg7SVMvRUEsV1hvRXFELEVBQUE7RUVXckQ7SVMvR0YsV1hvR3VEO0lXbkd2RCxnQkFBdUIsRUFBQTtFVDhHckI7SVN2RkEsV0FBVyxFQUFBO0VUdUZYO0lTbkZBLFdBQVcsRUFBQTtFVG1GWDtJUy9FQSxXWG9FcUQsRUFBQTtFRVdyRDtJUy9HRixXWG9HdUQ7SVduR3ZELFVBQXVCLEVBQUE7RVQ4R3JCO0lTdkZBLFdBQVcsRUFBQTtFVHVGWDtJU25GQSxXQUFXLEVBQUE7RVRtRlg7SVMvRUEsV1hvRXFELEVBQUE7RUVXckQ7SVMvR0YsV1hvR3VEO0lXbkd2RCxVQUF1QixFQUFBO0VUOEdyQjtJU3ZGQSxXQUFXLEVBQUE7RVR1Rlg7SVNuRkEsV0FBVyxFQUFBO0VUbUZYO0lTL0VBLFdYb0VxRCxFQUFBO0VFV3JEO0lTL0dGLFdYb0d1RDtJV25HdkQsZ0JBQXVCLEVBQUE7RVQ4R3JCO0lTdkZBLFdBQVcsRUFBQTtFVHVG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RDtFR3lFRixXUG5CeUQsRUFBQTs7QUYrQnJEO0VNekdGO0lHa0RKLG1CQUFNO1FBQU4saUJBQU07WUFBTixhQUFNO0lBMkNKLFdBbEZZLEVBQUE7RUhOWjtJRzZDRixtQkFBTTtRQUFOLGtCQUFNO1lBQU4sY0FBTSxFQUFBO0VIdkNGO0lHa0ZGLFdBbEZZLEVBQUE7RUhTVjtJR3lFRixlUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsZ0JQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixVUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsZ0JQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixnQlBuQnlELEVBQUE7RUl0RHZEO0lHeUVGLFVQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixnQlBuQnlELEVBQUE7RUl0RHZEO0lHeUVGLGdCUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsVVBuQnlELEVBQUE7RUl0RHZEO0lHeUVGLGdCUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsZ0JQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixXUG5CeUQsRUFBQSxFSW5EdEQ7O0FOa0ZDO0VNekdGO0lHa0RKLG1CQUFNO1FBQU4saUJBQU07WUFBTixhQUFNO0lBMkNKLFdBbEZZLEVBQUE7RUhOWjtJRzZDRixtQkFBTTtRQUFOLGtCQUFNO1lBQU4sY0FBTSxFQUFBO0VIdkNGO0lHa0ZGLFdBbEZZLEVBQUE7RUhTVjtJR3lFRixlUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsZ0JQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixVUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsZ0JQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixnQlBuQnlELEVBQUE7RUl0RHZEO0lHeUVGLFVQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixnQlBuQnlELEVBQUE7RUl0RHZEO0lHeUVGLGdCUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsVVBuQnlELEVBQUE7RUl0RHZEO0lHeUVGLGdCUG5CeUQsRUFBQTtFSXREdkQ7SUd5RUYsZ0JQbkJ5RCxFQUFBO0VJdER2RDtJR3lFRixXUG5CeUQsRUFBQSxFSW5EdEQ7O0FBS0w7RUFDRSxXQUFXLEVBQUE7O0FBSWI7RUFDRSxZQUFZLEVBQUE7O0FBOEJkO0VDdkdNLHFCQUE2RDtFQUE3RCxzQkFBNkQsRUFBQTs7QVBnSjdEO0VNekNOO0lDdkdNLHNCQUE2RDtJQUE3RCx1QkFBNkQsRUFBQSxFRHNJbEU7O0FBL0JEO0VHNkJFLDBCQXREOEY7RUZyRTVGLG9CQUE2RDtFQUE3RCxxQkFBNkQsRUFBQTs7QVB1STNEO0VNekNOO0lHNkJFLDJCQXREOEY7SUZyRTVGLHFCQUE2RDtJQUE3RCxzQkFBNkQsRUFBQSxFRDJHMUQ7O0FBckNQO0VHcURFLFdBbEZZLEVBQUE7O0FIaUNkO0VHaURFLFdBbEZZLEVBQUE7O0FIeUNaO0VHeUNBLDhCQXREOEYsRUFBQTs7QUhhOUY7RUd5Q0EsK0JBdEQ4RixFQUFBOztBSGE5RjtFR3lDQSx5QkF0RDhGLEVBQUE7O0FIYTlGO0VHeUNBLCtCQXREOEYsRUFBQTs7QUhhOUY7RUd5Q0EsK0JBdEQ4RixFQUFBOztBSGE5RjtFR3lDQSx5QkF0RDhGLEVBQUE7O0FIYTlGO0VHeUNBLCtCQXREOEYsRUFBQTs7QUhhOUY7RUd5Q0EsK0JBdEQ4RixFQUFBOztBSGE5RjtFR3lDQSx5QkF0RDhGLEVBQUE7O0FIYTlGO0VHeUNBLCtCQXREOEYsRUFBQTs7QUhhOUY7RUd5Q0EsK0JBdEQ4RixFQUFBOztBSGE5RjtFR3lDQSwwQkF0RDhGLEVBQUE7O0FUa0UxRjtFTWpFTjtJR3FERSxXQWxGWSxFQUFBO0VIaUNkO0lHaURFLFdBbEZZLEVBQUE7RUh5Q1o7SUd5Q0EsK0JBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwwQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwwQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwwQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUE7RUhDaEc7SUdxREUsV0FsRlksRUFBQTtFSGlDZDtJR2lERSxXQWxGWSxFQUFBO0VIeUNaO0lHeUNBLCtCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMEJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMEJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMEJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBLEVIZTdGOztBTm1ERztFTWpFTjtJR3FERSxXQWxGWSxFQUFBO0VIaUNkO0lHaURFLFdBbEZZLEVBQUE7RUh5Q1o7SUd5Q0EsK0JBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwwQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwwQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwwQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUEsRUhlN0Y7O0FBOENIO0VDM0lNLHNCQUE2RDtFQUE3RCxxQkFBNkQsRUFBQTs7QVBnSjdEO0VNTE47SUMzSU0sdUJBQTZEO0lBQTdELHNCQUE2RCxFQUFBLEVEZ0poRTs7QUFJRDtFQ3BKSSxzQkFBNkQ7RUFBN0QscUJBQTZELEVBQUE7O0FQZ0o3RDtFTUlKO0lDcEpJLHVCQUE2RDtJQUE3RCxzQkFBNkQsRUFBQSxFRHNKaEU7O0FBWEg7RUMzSU0sc0JBQTZEO0VBQTdELHFCQUE2RCxFQUFBOztBUGdKN0Q7RU1MTjtJQzNJTSx1QkFBNkQ7SUFBN0Qsc0JBQTZELEVBQUEsRUQySmhFOztBSTNKSDtFRG9JRSxXUG5CeUQsRUFBQTs7QVFqSDNEO0VEb0lFLFVQbkJ5RCxFQUFBOztBUWpIM0Q7RURvSUUsZ0JQbkJ5RCxFQUFBOztBUWpIM0Q7RURvSUUsVVBuQnlELEVBQUE7O0FRakgzRDtFRG9JRSxVUG5CeUQsRUFBQTs7QVFqSDNEO0VEb0lFLGdCUG5CeUQsRUFBQTs7QVFqSDNEO0VEb0lFLGdCUG5CeUQsRUFBQTs7QVFqSDNEO0VEb0lFLFlQbkJ5RCxFQUFBOztBRitCckQ7RVVoSk47SURvSUUsV1BuQnlELEVBQUE7RVFqSDNEO0lEb0lFLFVQbkJ5RCxFQUFBO0VRakgzRDtJRG9JRSxnQlBuQnlELEVBQUE7RVFqSDNEO0lEb0lFLFVQbkJ5RCxFQUFBO0VRakgzRDtJRG9JRSxVUG5CeUQsRUFBQTtFUWpIM0Q7SURvSUUsZ0JQbkJ5RCxFQUFBO0VRakgzRDtJRG9JRSxnQlBuQnlELEVBQUE7RVFqSDNEO0lEb0lFLFlQbkJ5RCxFQUFBLEVRL0cxRDs7QVY4SUs7RVVoSk47SURvSUUsV1BuQnlELEVBQUE7RVFqSDNEO0lEb0lFLFVQbkJ5RCxFQUFBO0VRakgzRDtJRG9JRSxnQlBuQnlELEVBQUE7RVFqSDNEO0lEb0lFLFVQbkJ5RCxFQUFBO0VRakgzRDtJRG9JRSxVUG5CeUQsRUFBQTtFUWpIM0Q7SURvSUUsZ0JQbkJ5RCxFQUFBO0VRakgzRDtJRG9JRSxnQlBuQnlELEVBQUE7RVFqSDNEO0lEb0lFLFlQbkJ5RCxFQUFBLEVRL0cxRDs7QUFGRDtFRG9JRSwwQkF0RDhGLEVBQUE7O0FDOUVoRztFRG9JRSx5QkF0RDhGLEVBQUE7O0FDOUVoRztFRG9JRSwrQkF0RDhGLEVBQUE7O0FDOUVoRztFRG9JRSx5QkF0RDhGLEVBQUE7O0FDOUVoRztFRG9JRSx5QkF0RDhGLEVBQUE7O0FDOUVoRztFRG9JRSwrQkF0RDhGLEVBQUE7O0FDOUVoRztFRG9JRSwrQkF0RDhGLEVBQUE7O0FDOUVoRztFRG9JRSwyQkF0RDhGLEVBQUE7O0FUa0UxRjtFVWhKTjtJRG9JRSwyQkF0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLDBCQXREOEYsRUFBQTtFQzlFaEc7SURvSUUsZ0NBdEQ4RixFQUFBO0VDOUVoRztJRG9JRSwwQkF0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLDBCQXREOEYsRUFBQTtFQzlFaEc7SURvSUUsZ0NBdEQ4RixFQUFBO0VDOUVoRztJRG9JRSxnQ0F0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLDRCQXREOEYsRUFBQTtFQzlFaEc7SURvSUUsMkJBdEQ4RixFQUFBO0VDOUVoRztJRG9JRSwwQkF0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLGdDQXREOEYsRUFBQTtFQzlFaEc7SURvSUUsMEJBdEQ4RixFQUFBO0VDOUVoRztJRG9JRSwwQkF0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLGdDQXREOEYsRUFBQTtFQzlFaEc7SURvSUUsZ0NBdEQ4RixFQUFBO0VDOUVoRztJRG9JRSw0QkF0RDhGLEVBQUEsRUM1RS9GOztBVjhJSztFVWhKTjtJRG9JRSwyQkF0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLDBCQXREOEYsRUFBQTtFQzlFaEc7SURvSUUsZ0NBdEQ4RixFQUFBO0VDOUVoRztJRG9JRSwwQkF0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLDBCQXREOEYsRUFBQTtFQzlFaEc7SURvSUUsZ0NBdEQ4RixFQUFBO0VDOUVoRztJRG9JRSxnQ0F0RDhGLEVBQUE7RUM5RWhHO0lEb0lFLDRCQXREOEYsRUFBQSxFQzVFL0Y7O0FKcU1HO0VLOU1FLGVBQTBCO0VBQTFCLGNBQTBCLEVBQUE7O0FBRzVCO0VBRUksZUFBMEI7RUFBMUIsY0FBMEIsRUFBQTs7QUFzQnhCO0VGZ0hSLGVQbkJ5RCxFQUFBOztBUzdGakQ7RUZnSFIsZ0JQbkJ5RCxFQUFBOztBUzdGakQ7RUZnSFIsVVBuQnlELEVBQUE7O0FTN0ZqRDtFRmdIUixnQlBuQnlELEVBQUE7O0FTN0ZqRDtFRmdIUixnQlBuQnlELEVBQUE7O0FTN0ZqRDtFRmdIUixVUG5CeUQsRUFBQTs7QVM3RmpEO0VGZ0hSLGdCUG5CeUQsRUFBQTs7QVM3RmpEO0VGZ0hSLGdCUG5CeUQsRUFBQTs7QVM3RmpEO0VGZ0hSLFVQbkJ5RCxFQUFBOztBUzdGakQ7RUZnSFIsZ0JQbkJ5RCxFQUFBOztBUzdGakQ7RUZnSFIsZ0JQbkJ5RCxFQUFBOztBUzdGakQ7RUZnSFIsV1BuQnlELEVBQUE7O0FGK0JyRDtFVzVISTtJRmdIUixlUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixVUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLFVQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsVVBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixXUG5CeUQsRUFBQSxFUzNGaEQ7O0FYMEhMO0VXNUhJO0lGZ0hSLGVQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLFVQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsVVBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixVUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLFdQbkJ5RCxFQUFBLEVTM0ZoRDs7QUx1TFA7RUs3S0UsZUFBMEI7RUFBMUIsY0FBMEIsRUFBQTs7QUFHNUI7RUFFSSxnQkFBNEI7RUFBNUIsZUFBNEIsRUFBQTs7QVgyRzlCO0VNdURGO0lLOU1FLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7RUFHNUI7SUFFSSxlQUEwQjtJQUExQixjQUEwQixFQUFBLEVBRTdCOztBWGdKQztFV3JJSTtJRnlIUixlUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixVUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixnQlBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLFVQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixnQlBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLGdCUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsVVBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLGdCUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixXUG5CeUQsRUFBQSxFU3BHaEQ7O0FYbUlMO0VXNUhJO0lGZ0hSLGVQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLFVQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsVVBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixVUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLFdQbkJ5RCxFQUFBLEVTM0ZoRDs7QVgwSEw7RVc1SEk7SUZnSFIsZVBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsVVBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixVUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLFVQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsV1BuQnlELEVBQUEsRVMzRmhEOztBWDBITDtFTTZERjtJSzdLRSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0VBRzVCO0lBRUksZ0JBQTRCO0lBQTVCLGVBQTRCLEVBQUEsRUFFL0I7O0FYeUdDO0VNdURGO0lLOU1FLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7RUFHNUI7SUFFSSxlQUEwQjtJQUExQixjQUEwQixFQUFBLEVBRTdCOztBWGdKQztFV3JJSTtJRnlIUixlUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixVUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixnQlBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLFVQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixnQlBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLGdCUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsVVBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLGdCUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixXUG5CeUQsRUFBQSxFU3BHaEQ7O0FYbUlMO0VXcklJO0lGeUhSLGVQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixnQlBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLFVQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixnQlBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLGdCUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsVVBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLGdCUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixVUG5CeUQsRUFBQTtFU3RHakQ7SUZ5SFIsZ0JQbkJ5RCxFQUFBO0VTdEdqRDtJRnlIUixnQlBuQnlELEVBQUE7RVN0R2pEO0lGeUhSLFdQbkJ5RCxFQUFBLEVTcEdoRDs7QVhtSUw7RVc1SEk7SUZnSFIsZVBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsVVBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixVUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsZ0JQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLFVQbkJ5RCxFQUFBO0VTN0ZqRDtJRmdIUixnQlBuQnlELEVBQUE7RVM3RmpEO0lGZ0hSLGdCUG5CeUQsRUFBQTtFUzdGakQ7SUZnSFIsV1BuQnlELEVBQUEsRVMzRmhEOztBWDBITDtFTTZERjtJSzdLRSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0VBRzVCO0lBRUksZ0JBQTRCO0lBQTVCLGVBQTRCLEVBQUEsRUFFL0I7O0Fmc0RDO0VnQnpFSixlQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsK0JBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHFCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYscUNBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHNCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsc0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLGdCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsZ0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHNCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsc0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHNCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsc0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLGdCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsZ0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHNCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsc0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHNCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsc0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLGdCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsZ0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHNCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsc0NBQTZCLEVBQUE7O0FoQnlFekI7RWdCekVKLHNCQUE2QixFQUFBOztBTjJNM0I7RU0zTUYsc0NBQTZCLEVBQUE7O0FaNEh6QjtFSm5EQTtJZ0J6RUosZUFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsZ0NBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUoscUJBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHNDQUE2QixFQUFBO0VoQnlFekI7SWdCekVKLHNCQUE2QixFQUFBO0VOMk0zQjtJTTNNRix1Q0FBNkIsRUFBQTtFaEJ5RXpCO0lnQnpFSixnQkFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsaUNBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUosc0JBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHVDQUE2QixFQUFBO0VoQnlFekI7SWdCekVKLHNCQUE2QixFQUFBO0VOMk0zQjtJTTNNRix1Q0FBNkIsRUFBQTtFaEJ5RXpCO0lnQnpFSixnQkFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsaUNBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUosc0JBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHVDQUE2QixFQUFBO0VoQnlFekI7SWdCekVKLHNCQUE2QixFQUFBO0VOMk0zQjtJTTNNRix1Q0FBNkIsRUFBQTtFaEJ5RXpCO0lnQnpFSixnQkFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsaUNBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUosc0JBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHVDQUE2QixFQUFBO0VoQnlFekI7SWdCekVKLHNCQUE2QixFQUFBO0VOMk0zQjtJTTNNRix1Q0FBNkIsRUFBQSxFTjZNMUI7O0FOakZDO0VKbkRBO0lnQnpFSixlQUE2QixFQUFBO0VOMk0zQjtJTTNNRixnQ0FBNkIsRUFBQTtFaEJ5RXpCO0lnQnpFSixxQkFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsc0NBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUosc0JBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHVDQUE2QixFQUFBO0VoQnlFekI7SWdCekVKLGdCQUE2QixFQUFBO0VOMk0zQjtJTTNNRixpQ0FBNkIsRUFBQTtFaEJ5RXpCO0lnQnpFSixzQkFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsdUNBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUosc0JBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHVDQUE2QixFQUFBO0VoQnlFekI7SWdCekVKLGdCQUE2QixFQUFBO0VOMk0zQjtJTTNNRixpQ0FBNkIsRUFBQTtFaEJ5RXpCO0lnQnpFSixzQkFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsdUNBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUosc0JBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHVDQUE2QixFQUFBO0VoQnlFekI7SWdCekVKLGdCQUE2QixFQUFBO0VOMk0zQjtJTTNNRixpQ0FBNkIsRUFBQTtFaEJ5RXpCO0lnQnpFSixzQkFBNkIsRUFBQTtFTjJNM0I7SU0zTUYsdUNBQTZCLEVBQUE7RWhCeUV6QjtJZ0J6RUosc0JBQTZCLEVBQUE7RU4yTTNCO0lNM01GLHVDQUE2QixFQUFBLEVONk0xQjs7QUF6SlM7RUV0RWQsb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYiw0QkFINkI7RUFHN0IsNkJBSDZCO01BRzdCLDRCQUg2QjtVQUc3Qix3QkFINkIsRUFBQTs7QUZpUDdCO0VHMUlBLFlBQW1CO0VBQ25CLGdCQUEyQixFQUFBOztBSHlJM0I7RUc3R0UsWUFsRlksRUFBQTs7QUgrTGQ7RUc3R0UsWUFsRlksRUFBQTs7QUgrTGQ7RUEyQk0sNkJBQWdCO01BQWhCLGdCQUFnQixFQUFBOztBTjVIaEI7RU1pR047SUEyQk0sNkJBQWdCO1FBQWhCLGdCQUFnQixFQUFBLEVBQ2pCOztBTjdIQztFTWlHTjtJQTJCTSw2QkFBZ0I7UUFBaEIsZ0JBQWdCLEVBQUEsRUFDakI7O0FBNUJMO0VHeEpBLG1CQUFNO01BQU4sa0JBQU07VUFBTixjQUFNLEVBQUE7O0FId0pOO0VHN0dFLGdCUG5CeUQsRUFBQTs7QUlnSTNEO0VHN0dFLGlCUG5CeUQsRUFBQTs7QUlnSTNEO0VHN0dFLFdQbkJ5RCxFQUFBOztBSWdJM0Q7RUc3R0UsaUJQbkJ5RCxFQUFBOztBSWdJM0Q7RUc3R0UsaUJQbkJ5RCxFQUFBOztBSWdJM0Q7RUc3R0UsV1BuQnlELEVBQUE7O0FJZ0kzRDtFRzdHRSxpQlBuQnlELEVBQUE7O0FJZ0kzRDtFRzdHRSxpQlBuQnlELEVBQUE7O0FJZ0kzRDtFRzdHRSxXUG5CeUQsRUFBQTs7QUlnSTNEO0VHN0dFLGlCUG5CeUQsRUFBQTs7QUlnSTNEO0VHN0dFLGlCUG5CeUQsRUFBQTs7QUlnSTNEO0VHN0dFLFlQbkJ5RCxFQUFBOztBRitCckQ7RU1pR047SUd4SkEsbUJBQU07UUFBTixpQkFBTTtZQUFOLGFBQU07SUEyQ0osWUFsRlksRUFBQTtFSCtMZDtJR3hKQSxtQkFBTTtRQUFOLGtCQUFNO1lBQU4sY0FBTSxFQUFBO0VId0pOO0lHN0dFLFlBbEZZLEVBQUE7RUgrTGQ7SUc3R0UsZ0JQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxpQlBuQnlELEVBQUE7RUlnSTNEO0lHN0dFLFdQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxpQlBuQnlELEVBQUE7RUlnSTNEO0lHN0dFLGlCUG5CeUQsRUFBQTtFSWdJM0Q7SUc3R0UsV1BuQnlELEVBQUE7RUlnSTNEO0lHN0dFLGlCUG5CeUQsRUFBQTtFSWdJM0Q7SUc3R0UsaUJQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxXUG5CeUQsRUFBQTtFSWdJM0Q7SUc3R0UsaUJQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxpQlBuQnlELEVBQUE7RUlnSTNEO0lHN0dFLFlQbkJ5RCxFQUFBLEVJeUxwRDs7QU4xSkQ7RU1pR047SUd4SkEsbUJBQU07UUFBTixpQkFBTTtZQUFOLGFBQU07SUEyQ0osWUFsRlksRUFBQTtFSCtMZDtJR3hKQSxtQkFBTTtRQUFOLGtCQUFNO1lBQU4sY0FBTSxFQUFBO0VId0pOO0lHN0dFLFlBbEZZLEVBQUE7RUgrTGQ7SUc3R0UsZ0JQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxpQlBuQnlELEVBQUE7RUlnSTNEO0lHN0dFLFdQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxpQlBuQnlELEVBQUE7RUlnSTNEO0lHN0dFLGlCUG5CeUQsRUFBQTtFSWdJM0Q7SUc3R0UsV1BuQnlELEVBQUE7RUlnSTNEO0lHN0dFLGlCUG5CeUQsRUFBQTtFSWdJM0Q7SUc3R0UsaUJQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxXUG5CeUQsRUFBQTtFSWdJM0Q7SUc3R0UsaUJQbkJ5RCxFQUFBO0VJZ0kzRDtJRzdHRSxpQlBuQnlELEVBQUE7RUlnSTNEO0lHN0dFLFlQbkJ5RCxFQUFBLEVJeUxwRDs7QUFPTDtFQ2pUSSxvQkFBNkQ7RUFBN0QsdUJBQTZELEVBQUE7O0FQZ0o3RDtFTWlLSjtJQ2pUSSxxQkFBNkQ7SUFBN0Qsd0JBQTZELEVBQUEsRURxVDlEOztBQUpIO0VDalRJLG9CQUE2RDtFQUE3RCx1QkFBNkQsRUFBQTs7QVBnSjdEO0VNaUtKO0lDalRJLHFCQUE2RDtJQUE3RCx3QkFBNkQsRUFBQSxFRDBUOUQ7O0FBbk5MO0VDdkdNLG9CQUE2RDtFQUE3RCx1QkFBNkQsRUFBQTs7QVBnSjdEO0VNekNOO0lDdkdNLHFCQUE2RDtJQUE3RCx3QkFBNkQsRUFBQSxFRHNJbEU7O0FBL0JEO0VHNkJFLDJCQXREOEY7RUZyRTVGLG1CQUE2RDtFQUE3RCxzQkFBNkQsRUFBQTs7QVB1STNEO0VNekNOO0lHNkJFLDRCQXREOEY7SUZyRTVGLG9CQUE2RDtJQUE3RCx1QkFBNkQsRUFBQSxFRDJHMUQ7O0FBckNQO0VHcURFLFlBbEZZLEVBQUE7O0FIaUNkO0VHaURFLFlBbEZZLEVBQUE7O0FIeUNaO0VHeUNBLCtCQXREOEYsRUFBQTs7QUhhOUY7RUd5Q0EsZ0NBdEQ4RixFQUFBOztBSGE5RjtFR3lDQSwwQkF0RDhGLEVBQUE7O0FIYTlGO0VHeUNBLGdDQXREOEYsRUFBQTs7QUhhOUY7RUd5Q0EsZ0NBdEQ4RixFQUFBOztBSGE5RjtFR3lDQSwwQkF0RDhGLEVBQUE7O0FIYTlGO0VHeUNBLGdDQXREOEYsRUFBQTs7QUhhOUY7RUd5Q0EsZ0NBdEQ4RixFQUFBOztBSGE5RjtFR3lDQSwwQkF0RDhGLEVBQUE7O0FIYTlGO0VHeUNBLGdDQXREOEYsRUFBQTs7QUhhOUY7RUd5Q0EsZ0NBdEQ4RixFQUFBOztBSGE5RjtFR3lDQSwyQkF0RDhGLEVBQUE7O0FUa0UxRjtFTWpFTjtJR3FERSxZQWxGWSxFQUFBO0VIaUNkO0lHaURFLFlBbEZZLEVBQUE7RUh5Q1o7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSw0QkF0RDhGLEVBQUE7RUhDaEc7SUdxREUsWUFsRlksRUFBQTtFSGlDZDtJR2lERSxZQWxGWSxFQUFBO0VIeUNaO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5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O0FIYTlGO0VHeUNBLDBCQXREOEYsRUFBQTs7QUhhOUY7RUd5Q0EsZ0NBdEQ4RixFQUFBOztBSGE5RjtFR3lDQSxnQ0F0RDhGLEVBQUE7O0FIYTlGO0VHeUNBLDJCQXREOEYsRUFBQTs7QVRrRTFGO0VNakVOO0lHcURFLFlBbEZZLEVBQUE7RUhpQ2Q7SUdpREUsWUFsRlksRUFBQTtFSHlDWjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDRCQXREOEYsRUFBQTtFSENoRztJR3FERSxZQWxGWSxFQUFBO0VIaUNkO0lHaURFLFlBbEZZLEVBQUE7RUh5Q1o7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSw0QkF0RDhGLEVBQUEsRUhlN0Y7O0FObURHO0VNakVOO0lHcURFLFlBbEZZLEVBQUE7RUhpQ2Q7SUdpREUsWUFsRlksRUFBQTtFSHlDWjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0Es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aENKLDRCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSiw0QkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUEsRUFHWDs7QWRnRUM7RWNsRUY7SUNoQ0osNEJEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSiw0QkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSiw0QkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBLEVBR1g7O0FBL0ZMO0VDWUEsb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWEsRUFBQTs7QURSYjtFQUNFLG1CQUFjO01BQWQsa0JBQWM7VUFBZCxjQUFjLEVBQUE7O0FBR2hCO0VBQ0UsbUJBQWM7TUFBZCxrQkFBYztVQUFkLGNBQWMsRUFBQTs7QUFHaEI7RUFDRSxtQkFBYztNQUFkLGtCQUFjO1VBQWQsY0FBYyxFQUFBOztBQUlkO0VDc0RGLDhCQW5FVTtFQW1FViw2QkFuRVU7TUFtRVYsdUJBbkVVO1VBbUVWLG1CQW5FVSxFQUFBOztBRGFSO0VDc0RGLDhCQWxFMEI7RUFrRTFCLDhCQWxFMEI7TUFrRTFCLCtCQWxFMEI7VUFrRTFCLDJCQWxFMEIsRUFBQTs7QURZeEI7RUNzREYsNEJBakVnQjtFQWlFaEIsNkJBakVnQjtNQWlFaEIsMEJBakVnQjtVQWlFaEIsc0JBakVnQixFQUFBOztBRFdkO0VDc0RGLDRCQWhFZ0M7RUFnRWhDLDhCQWhFZ0M7TUFnRWhDLGtDQWhFZ0M7VUFnRWhDLDhCQWhFZ0MsRUFBQTs7QWZ3SjFCO0VjcElFO0lDZlIsb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWEsRUFBQTtFRG1CTDtJQUNFLG1CQUFjO1FBQWQsa0JBQWM7WUFBZCxjQUFjLEVBQUE7RUFHaEI7SUFDRSxtQkFBYztRQUFkLGtCQUFjO1lBQWQsY0FBYyxFQUFBO0VBR2hCO0lBQ0UsbUJBQWM7UUFBZCxrQkFBYztZQUFkLGNBQWMsRUFBQTtFQUlkO0lDMkJWLDhCQW5FVTtJQW1FViw2QkFuRVU7UUFtRVYsdUJBbkVVO1lBbUVWLG1CQW5FVSxFQUFBO0VEd0NBO0lDMkJWLDhCQWxFMEI7SUFrRTFCLDhCQWxFMEI7UUFrRTFCLCtCQWxFMEI7WUFrRTFCLDJCQWxFMEIsRUFBQTtFRHVDaEI7SUMyQlYsNEJBakVnQjtJQWlFaEIsNkJBakVnQjtRQWlFaEIsMEJBakVnQjtZQWlFaEIsc0JBakVnQixFQUFBO0VEc0NOO0lDMkJWLDRCQWhFZ0M7SUFnRWhDLDhCQWhFZ0M7UUFnRWhDLGtDQWhFZ0M7WUFnRWhDLDhCQWhFZ0MsRUFBQSxFRHVDckI7O0FkaUhMO0VjcElFO0lDZlIsb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWEsRUFBQTtFRG1CTDtJQUNFLG1CQUFjO1FBQWQsa0JBQWM7WUFBZCxjQUFjLEVBQUE7RUFHaEI7SUFDRSxtQkFBYztRQUFkLGtCQUFjO1lBQWQsY0FBYyxFQUFBO0VBR2hCO0lBQ0UsbUJBQWM7UUFBZCxrQkFBYztZQUFkLGNBQWMsRUFBQTtFQUlkO0lDMkJWLDhCQW5FVTtJQW1FViw2QkFuRVU7UUFtRVYsdUJBbkVVO1lBbUVWLG1CQW5FVSxFQUFBO0VEd0NBO0lDMkJWLDhCQWxFMEI7SUFrRTFCLDhCQWxFMEI7UUFrRTFCLCtCQWxFMEI7WUFrRTFCLDJCQWxFMEIsRUFBQTtFRHVDaEI7SUMyQlYsNEJBakVnQjtJQWlFaEIsNkJBakVnQjtRQWlFaEIsMEJBakVnQjtZQWlFaEIsc0JBakVnQixFQUFBO0VEc0NOO0lDMkJWLDRCQWhFZ0M7SUFnRWhDLDhCQWhFZ0M7UUFnRWhDLGtDQWhFZ0M7WUFnRWhDLDhCQWhFZ0MsRUFBQSxFRHVDckI7O0FFb0tYO0VBbUJFLFNBQVM7RUFDVCxVQUFVLEVBQUE7O0FBSVo7RUFDRSxtQnpCbkQwQjtFeUJxRDFCLGtCQUFrQjtFQUNsQixnQnpCdkRzQjtFeUJ3RHRCLGtDekJ0RHlDLEVBQUE7O0F5QjBEM0M7RUFFRSxrQkFBa0I7RUFDbEIsb0JBQW9CLEVBQUE7O0F2Qi9MdEI7RXVCcU1FLGlCekJwSnFCO0V5QnFKckIsb0JBQW9CLEVBQUE7O0F2QnRMdEI7RXVCMkxFLGN6QjdFaUI7RXlCOEVqQixvQkFBb0IsRUFBQTs7QUFJdEI7RUFNRSxrRnpCMUhzRjtFeUIySHRGLGtCekJ6SHNCO0V5QjBIdEIsaUJ6QnZLcUI7RXlCd0tyQixjekI5TWlCO0V5QitNakIsa0N6QjdGc0MsRUFBQTs7QXlCbUZ4QztFQWFJLGNBQWM7RUFDZCxjekJuTWUsRUFBQTs7QXlCNE1iO0VBT0ksbUJsQjlONkM7RWtCcU83QyxvQnpCaEppQjtFeUIwSmpCLGFBQWE7RUFLYix3QmxCcFA2QyxFQUFBOztBa0J1TmpEO0VBT0ksbUJsQjlONkM7RWtCcU83QyxvQnpCL0lpQjtFeUJ5SmpCLGFBQWE7RUFLYix3QmxCcFA2QyxFQUFBOztBa0J1TmpEO0VBT0ksb0JsQjlONkM7RWtCcU83QyxpQnpCOUlpQjtFeUJ3SmpCLGFBQWE7RUFLYix3QmxCcFA2QyxFQUFBOztBa0J1TmpEO0VBT0ksbUJsQjlONkM7RWtCcU83QyxvQnpCN0lpQjtFeUJ1SmpCLGFBQWE7RUFLYixtQmxCcFA2QyxFQUFBOztBa0JzSnZEO0VBd0VVLGVsQjlONkM7RWtCcU83QyxnQnpCNUlpQjtFeUJzSmpCLGFBQWE7RUFLYixtQmxCcFA2QyxFQUFBOztBa0J1SnZEO0VBdUVVLGVsQjlONkM7RWtCcU83QyxnQnpCM0lpQjtFeUJxSmpCLGFBQWE7RUFLYixtQmxCcFA2QyxFQUFBOztBRXdGakQ7RWdCK0hBO0lBT0ksbUJsQjlONkM7SWtCcU83QyxvQnpCeElpQjtJeUJ1SmpCLHVCbEJwUDZDLEVBQUE7RWtCdU5qRDtJQU9JLG1CbEI5TjZDO0lrQnFPN0Msb0J6QnZJaUI7SXlCc0pqQixxQmxCcFA2QyxFQUFBO0VrQnVOakQ7SUFPSSxtQmxCOU42QztJa0JxTzdDLG9CekJ0SWlCO0l5QnFKakIsdUJsQnBQNkMsRUFBQTtFa0J1TmpEO0lBT0ksbUJsQjlONkM7SWtCcU83QyxvQnpCcklpQjtJeUJvSmpCLHNCbEJwUDZDLEVBQUE7RWtCc0p2RDtJQXdFVSxtQmxCOU42QztJa0JxTzdDLG9CekJwSWlCO0l5Qm1KakIsc0JsQnBQNkMsRUFBQTtFa0J1SnZEO0lBdUVVLGVsQjlONkM7SWtCcU83QyxnQnpCbklpQjtJeUJrSmpCLHNCbEJwUDZDLEVBQUEsRWtCd1BoRDs7QWhCaEtEO0VnQitIQTtJQU9JLG9CbEI5TjZDO0lrQnFPN0Msb0J6QmhJaUI7SXlCK0lqQixzQmxCcFA2QyxFQUFBO0VrQnVOakQ7SUFPSSxtQmxCOU42QztJa0JxTzdDLG9CekIvSGlCO0l5QjhJakIscUJsQnBQNkMsRUFBQTtFa0J1TmpEO0lBT0ksbUJsQjlONkM7SWtCcU83QyxvQnpCOUhpQjtJeUI2SWpCLHVCbEJwUDZDLEVBQUE7RWtCdU5qRDtJQU9JLG9CbEI5TjZDO0lrQnFPN0MsaUJ6QjdIaUI7SXlCNElqQixzQmxCcFA2QyxFQUFBO0VrQnNKdkQ7SUF3RVUsa0JsQjlONkM7SWtCcU83QyxnQnpCNUhpQjtJeUIySWpCLHNCbEJwUDZDLEVBQUE7RWtCdUp2RDtJQXVFVSxlbEI5TjZDO0lrQnFPN0MsZ0J6QjNIaUI7SXlCMElqQixzQmxCcFA2QyxFQUFBLEVrQndQaEQ7O0F2QnhSUDtFdUIrUkUsb0JBQW9CO0VBQ3BCLGN6QnJRaUI7RXlCc1FqQiwwQnpCdEk4QjtFeUJ3STlCLGVBQWUsRUFBQTs7QUFMakI7RUFTSSxjekIzUWlCLEVBQUE7O0F5QmtRckI7RUFnQkksU0FBUyxFQUFBOztBdkJqVWI7RXVCdVVFLFdBQVc7RUFFWCxtQmxCdFJxRDtFa0J1UnJELFNBQVM7RUFDVCxvQnpCekp5QjtFeUIySnpCLGFBQWE7RUFDYixlQUFlO0VBQ2YsZ0N6QmpSaUI7RXlCa1JqQixjQUFjLEVBQUE7O0FBSWhCO0VBR0UsbUJ6Qm5MMEI7RXlCb0wxQiw0QnpCbEt5QjtFeUJtS3pCLGdCekJ0THNCLEVBQUE7O0F5QjBMeEI7RUFDRSxrQkFBa0IsRUFBQTs7QUFJcEI7RUFDRSxvQnpCNUtzQjtFeUI2S3RCLHFCekIvS2tCLEVBQUE7O0F5Qm1McEI7RUFDRSxvQnpCbExzQixFQUFBOztBeUJzTHhCO0VBRUksb0J6QnZMMkI7RXlCd0wzQixnQkFBZ0IsRUFBQTs7QUFLcEI7RUFDRSxtQnpCN0x5QixFQUFBOztBeUI0TDNCO0VBSUkscUJ6QjlMOEI7RXlCK0w5QixpQnpCdFNtQixFQUFBOztBeUIyU3ZCO0VBQ0UsZ0J6QjVOMEI7RXlCNk4xQix5Q2xCOVVxRDtFa0IrVXJELGlCekJwTW9CLEVBQUE7O0F5QmlNdEI7RUFNSSxnQnpCbE9vQjtFeUJtT3BCLGN6QnhWZSxFQUFBOztBeUJzV25CO0VBQ0UsOEJ6QjNWUTtFeUI0VlIsWUFBWTtFQUNaLHFCQUFxQixFQUFBOztBQUl2QjtFQUNFLFNBQVMsRUFBQTs7QUFXWDtFQUNFLFNBQVM7RUFDVCwyQmxCalhTO0VrQm1YVCx5QnpCNVdnQjtFeUI4V2hCLHlEekIvVjJEO0V5QmdXM0QsV3pCcFhRO0V5QnVYTixrQnpCNVZhLEVBQUE7O0EwQldqQjtFQUNFLGtCMUJnSHlCO0UwQi9HekIscUIxQmdINEI7RTBCOUc1QixtQjFCakJ5QjtFMEJrQnpCLGdCMUJ5R3NCO0UwQnhHdEIsYzFCekNlLEVBQUE7O0EwQjZDakI7RUFDRSxlMUJpR3FDO0UwQmhHckMsZ0IxQmlHaUIsRUFBQTs7QTBCN0ZuQjtFQUNFLGlCMUJrR21CO0UwQmpHbkIsY0FBYyxFQUFBOztBQUVkO0VBQ0UsaUJBQWlCLEVB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S3BCO0V3RGw3S0ksYUFBYTtFQUNiLFk5QjhXZTtFOEI3V2YsNkI5QjJXZ0M7RThCMVdoQyx3QjlCZ1hxQjtVOEJoWHJCLGdCOUJnWHFCO0U4QjdXbkIsMkU5QitXNEQ7RThCL1c1RCxtRTlCK1c0RDtFOEIvVzVELDhEOUIrVzREO0U4Qi9XNUQsMkQ5QitXNEQ7RThCL1c1RCxvRjlCK1c0RCxFQUFBOztBRW5SaEU7RTRCN0VFLGVBQWUsRUFBQTs7QUFEakI7RUFJSSxZQUFZLEVBQUE7O0FBSWhCO0VBS0kseUI5QjVDYztFOEI2Q2QsbUI5QmtWNkIsRUFBQTs7QTFCK2tLbkM7RXdEMTVLSSx3QkFBZ0I7S0FBaEIscUJBQWdCO1VBQWhCLGdCQUFnQjtFQUNoQixrQjlCL0JlLEVBQUE7O0E4Qm1DakI7RUFDRSw4QkFBc0I7VUFBdEIsc0JBQXNCLEVBQUE7O0FBaUJ4QjtFQUNFLGM5Qi9FaUIsRUFBQTs7QThCOEVuQjtFQUNFLGM5Qi9FaUIsRUFBQTs7QThCOEVuQjtFQUNFLGM5Qi9FaUIsRUFBQTs7QThCOEVuQjtFQUNFLGM5Qi9FaUIsRUFBQTs7QThCOEVuQjtFQUNFLGM5Qi9FaUIsRUFBQTs7QTFCMjlLckI7RXlEaGpMSSxvQnhCNEVxRCxFQUFBOztBakN1K0t6RDtFeUQ3aUxJLHFCQUFxQjtFQUNyQix3QkFBd0I7RUFFeEIsc0JBQWtEO0VBQ2xELHNCeEJrRXFEO0V3QmpFckQsZ0JBQWdCLEVBQUE7O0F6RCtpTHBCO0V5RDVpTE0sZUFBZSxFQUFBOztBQUtuQjtFQUVFLHVCQUFtRCxFQUFBOztBekQyaUx2RDtFeUR0aUxJLFdBQVcsRUFBQTs7QUNJYjtFQWpCQSxjQUFjO0VBQ2QsU0FBUztFQUVULG1CekI0RHVEO0V5QjNEdkQsbUJoQzJGMkI7RWdDMUYzQixnQmhDbWIwQjtFZ0NsYjFCLFdoQ2dFVSxFQUFBOztBZ0NyRFY7RUFMQSxvQnpCbUR1RDtFeUJsRHZELG9CQUE4RCxFQUFBOztBQ2pCOUQ7RUFHRSxzQkFGdUM7RUFHdkMsb0IxQitEcUQ7RTBCOURyRCxrQmpDK2F3QjtFaUM5YXhCLFdqQ29FUSxFQUFBOztBa0NyRVY7RUFDRSxvQkFBaUM7RUFBakMsb0JBQWlDO0VBQWpDLGFBQWlDO0VBQ2pDLFdBQVc7RUFDWCx1QjNCMkRxRDtFMkJ4RG5ELDBCQUFvQjtNQUFwQix1QkFBb0I7VUFBcEIsb0JBQW9CLEVBQUE7O0FBTnhCO0VBV00sc0JsQ2ljUSxFQUFBOztBa0M1Y2Q7RUFpQk0sc0JBQWlILEVBQUE7O0FBS3ZIO0VBQ0UsU0FBUztFQUNULG1CQUFtQixFQUFBOztBQVFyQjtFQUVFLGVsQ2ladUI7RWtDaFp2Qix5QmxDc0NpQjtFa0NyQ2pCLG1CbENzQ2dCO0VrQ3BDaEIsV2xDK0JRO0VrQzlCUixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBR2pCLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IsbUJBQWM7TUFBZCxrQkFBYztVQUFkLGNBQWM7RUFDZCx5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQixFQUFBOztBQWJ2QjtFQXNCTSxlQUFpQyxFQUFBOztBQXRCdkM7RUEwQk0sY0FBZ0MsRUFBQTs7QUFLdEM7RUFFRSxnQkFBZ0I7RUFHZCxtQkFBYTtNQUFiLGlCQUFhO1VBQWIsYUFBYTtFQUNiLFlBQVksRUFBQTs7QUFJaEI7RUFFRSxjQUFjO0VBQ2QsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUdoQixvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLG1CQUFjO01BQWQsa0JBQWM7VUFBZCxjQUFjLEVBQUE7O0FBUmxCO0VBc0JNLDRCQUFtQjtNQUFuQixtQkFBbUI7RUFDbkIsWUFBWTtFQUtkLGNBQWM7RUFDZCxpQkFBaUI7RUFDakIsZTNCekNtRCxFQUFBOztBTCtGdkQ7RWlDaEpFLFNBQVM7RUFDVCxVQUFVO0VBQ1YsU0FBUyxFQUFBOztBakN1Slg7RWlDbkpFLGVBQWU7RUFDZix3QkFBa0MsRUFBQTs7QUFHcEM7RUF4QkEsa0I1Qm9FVztFNEJuRVgsZ0I1QjhEdUQ7RTRCN0R2RCx5Qm5Dd0VtQixFQUFBOztBbUN0RW5CO0VBRUUsU0FBUztFQUNULHVCNUJ3RHFEO0U0QnZEckQsb0I1QnVEcUQsRUFBQTs7QUp3R3ZEO0VpQ3pLQSxnQkFGc0o7RUFHdEosb0I3QmdFdUQ7RTZCL0R2RCxxQnBDdWNtQztFb0NyY25DLHdCQUFnQjtLQUFoQixxQkFBZ0I7VUFBaEIsZ0JBQWdCO0VBQ2hCLFlwQ2tjaUI7RW9DamNqQixnQnBDdWJlO0VvQ3RiZixzQnBDeUVVO0VvQ3ZFVixvQnBDdWJ5QjtFb0N0YnpCLGU3QnVEdUQ7RTZCdER2RCxtQnBDc0YyQjtFb0NyRjNCLGdCcENrQ3FCO0VvQ2pDckIsY3BDK0NtQjtFSW1FbkIsb09BQXlOO0VnQzlHdk4sOEJBQThCO0VBQzlCLDJDQUEwRDtFQUMxRCw0QkFBNEI7RUFDNUIsd0JBQXdCO0VBRXhCLHdCQUF1RDtFQUl2RCwyRXBDbWI4RDtFb0NuYjlELG1FcENtYjhEO0VvQ25iOUQsOERwQ21iOEQ7RW9DbmI5RCwyRHBDbWI4RDtFb0NuYjlELG9GcENtYjhELEVBQUE7O0FJNVVoRTtFRHdDQTtJQ3JDSSx1V0FBdVcsRUFBQSxFZ0NuRTFXOztBQW5DRDtFQUNFLGFBQWE7RUFDYixZcEN1YWU7RW9DdGFmLDZCcENvYWdDO0VvQ25haEMsd0JwQ3lhcUI7VW9DemFyQixnQnBDeWFxQjtFb0N0YW5CLDJFcEN3YTREO0VvQ3hhNUQsbUVwQ3dhNEQ7RW9DeGE1RCw4RHBDd2E0RDtFb0N4YTVELDJEcEN3YTREO0VvQ3hhNUQsb0ZwQ3dhNEQsRUFBQTs7QW9DbmFoRTtFQUNFLHlCcENrQ2dCO0VvQ2pDaEIsbUJwQ2dhK0IsRUFBQTs7QW9DNVpqQztFQUNFLGFBQWEsRUFBQTs7QUFHZjtFQUNFLFlBQVk7RUFDWixzQkFBc0IsRUFBQTs7QUFFeEI7RUFDRSxjQUFjO0VBQ2QsaUJBQWlCLEVBQUE7O0FDckNuQjtFQUNFLHFCckMrQlk7RXFDOUJaLHlCQUErRCxFQUFBOztBQUUvRDtFQUNFLGNyQzJCVSxFQUFBOztBcUM1Qlo7RUFDRSxjckMyQlUsRUFBQTs7QXFDNUJaO0VBQ0UsY3JDMkJVLEVBQUE7O0FxQzVCWjtFQUNFLGNyQzJCVSxFQUFBOztBcUM1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LG1CQUFrQjtFQUFDLGNBQWE7RUFBQyxVQUFTLEVBQUE7O0FBQUM7RUFBMEIsa0JBQWlCLEVBQUE7O0FBQUM7RUFBcUMsZ0JBQWUsRUFBQTs7QUFBQztFQUFtRCxxQkFBb0IsRUFBQTs7QUFDNVc7RUFBNkIsVUFBUyxFQUFBOztBQUFDO0VBQTJDLFdBQVU7RUFBQyxvQkFBbUIsRUFBQTs7QUFBQztFQUFxQyxTQUFRO0VBQUMsbUJBQWtCO0VBQUMsWUFBVyxFQUFBOztBQUFDO0VBQXlDLGdCQUFlLEVBQUE7O0FBQUM7RUFBK0MsY0FBYSxFQUFBIiwiZmlsZSI6ImFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKiEgRm9udCBBd2Vzb21lIDQuNy4wIGJ5IEBkYXZlZ2FuZHkgLSBodHRwOi8vZm9udGF3ZXNvbWUuaW8gLSBAZm9udGF3ZXNvbWUgTGljZW5zZSAtIGh0dHA6Ly9mb250YXdlc29tZS5pby9saWNlbnNlIChGb250OiBTSUwgT0ZMIDEuMSwgQ1NTOiBNSVQgTGljZW5zZSkgKi9cbi8qIEZPTlQgUEFUSCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGZvbnQtZmFjZSB7IGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnOyBzcmM6IHVybChcIi4uL2ZvbnRzL2ZvbnRhd2Vzb21lLXdlYmZvbnQuZW90P3Y9NC43LjBcIik7IHNyYzogdXJsKFwiLi4vZm9udHMvZm9udGF3ZXNvbWUtd2ViZm9udC5lb3Q/I2llZml4JnY9NC43LjBcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2ZvbnRhd2Vzb21lLXdlYmZvbnQud29mZjI/dj00LjcuMFwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvZm9udGF3ZXNvbWUtd2ViZm9udC53b2ZmP3Y9NC43LjBcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvZm9udGF3ZXNvbWUtd2ViZm9udC50dGY/dj00LjcuMFwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvZm9udGF3ZXNvbWUtd2ViZm9udC5zdmc/dj00LjcuMCNmb250YXdlc29tZXJlZ3VsYXJcIikgZm9ybWF0KFwic3ZnXCIpOyBmb250LXdlaWdodDogbm9ybWFsOyBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLmZhIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7IGZvbnQtc2l6ZTogaW5oZXJpdDsgdGV4dC1yZW5kZXJpbmc6IGF1dG87IC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbi8qIG1ha2VzIHRoZSBmb250IDMzJSBsYXJnZXIgcmVsYXRpdmUgdG8gdGhlIGljb24gY29udGFpbmVyICovXG4uZmEtbGcgeyBmb250LXNpemU6IDEuMzMzMzNlbTsgbGluZS1oZWlnaHQ6IDAuNzVlbTsgdmVydGljYWwtYWxpZ246IC0xNSU7IH1cblxuLmZhLTJ4IHsgZm9udC1zaXplOiAyZW07IH1cblxuLmZhLTN4IHsgZm9udC1zaXplOiAzZW07IH1cblxuLmZhLTR4IHsgZm9udC1zaXplOiA0ZW07IH1cblxuLmZhLTV4IHsgZm9udC1zaXplOiA1ZW07IH1cblxuLmZhLWZ3IHsgd2lkdGg6IDEuMjg1NzFlbTsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5mYS11bCB7IHBhZGRpbmctbGVmdDogMDsgbWFyZ2luLWxlZnQ6IDIuMTQyODZlbTsgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG5cbi5mYS11bCA+IGxpIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5mYS1saSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogLTIuMTQyODZlbTsgd2lkdGg6IDIuMTQyODZlbTsgdG9wOiAwLjE0Mjg2ZW07IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZmEtbGkuZmEtbGcgeyBsZWZ0OiAtMS44NTcxNGVtOyB9XG5cbi5mYS1ib3JkZXIgeyBwYWRkaW5nOiAuMmVtIC4yNWVtIC4xNWVtOyBib3JkZXI6IHNvbGlkIDAuMDhlbSAjZWVlOyBib3JkZXItcmFkaXVzOiAuMWVtOyB9XG5cbi5mYS1wdWxsLWxlZnQgeyBmbG9hdDogbGVmdDsgfVxuXG4uZmEtcHVsbC1yaWdodCB7IGZsb2F0OiByaWdodDsgfVxuXG4uZmEuZmEtcHVsbC1sZWZ0IHsgbWFyZ2luLXJpZ2h0OiAuM2VtOyB9XG5cbi5mYS5mYS1wdWxsLXJpZ2h0IHsgbWFyZ2luLWxlZnQ6IC4zZW07IH1cblxuLyogRGVwcmVjYXRlZCBhcyBvZiA0LjQuMCAqL1xuLnB1bGwtcmlnaHQgeyBmbG9hdDogcmlnaHQ7IH1cblxuLnB1bGwtbGVmdCB7IGZsb2F0OiBsZWZ0OyB9XG5cbi5mYS5wdWxsLWxlZnQgeyBtYXJnaW4tcmlnaHQ6IC4zZW07IH1cblxuLmZhLnB1bGwtcmlnaHQgeyBtYXJnaW4tbGVmdDogLjNlbTsgfVxuXG4uZmEtc3BpbiB7IC13ZWJraXQtYW5pbWF0aW9uOiBmYS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjsgYW5pbWF0aW9uOiBmYS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjsgfVxuXG4uZmEtcHVsc2UgeyAtd2Via2l0LWFuaW1hdGlvbjogZmEtc3BpbiAxcyBpbmZpbml0ZSBzdGVwcyg4KTsgYW5pbWF0aW9uOiBmYS1zcGluIDFzIGluZmluaXRlIHN0ZXBzKDgpOyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYS1zcGluIHsgMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTsgfSB9XG5cbkBrZXlmcmFtZXMgZmEtc3BpbiB7IDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7IH0gfVxuXG4uZmEtcm90YXRlLTkwIHsgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0xKVwiOyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgLW1zLXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9XG5cbi5mYS1yb3RhdGUtMTgwIHsgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0yKVwiOyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG5cbi5mYS1yb3RhdGUtMjcwIHsgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0zKVwiOyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7IC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpOyB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpOyB9XG5cbi5mYS1mbGlwLWhvcml6b250YWwgeyAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTAsIG1pcnJvcj0xKVwiOyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLTEsIDEpOyAtbXMtdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7IHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpOyB9XG5cbi5mYS1mbGlwLXZlcnRpY2FsIHsgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0yLCBtaXJyb3I9MSlcIjsgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTsgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSwgLTEpOyB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTsgfVxuXG46cm9vdCAuZmEtcm90YXRlLTkwLCA6cm9vdCAuZmEtcm90YXRlLTE4MCwgOnJvb3QgLmZhLXJvdGF0ZS0yNzAsIDpyb290IC5mYS1mbGlwLWhvcml6b250YWwsIDpyb290IC5mYS1mbGlwLXZlcnRpY2FsIHsgZmlsdGVyOiBub25lOyB9XG5cbi5mYS1zdGFjayB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB3aWR0aDogMmVtOyBoZWlnaHQ6IDJlbTsgbGluZS1oZWlnaHQ6IDJlbTsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4uZmEtc3RhY2stMXgsIC5mYS1zdGFjay0yeCB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMDsgd2lkdGg6IDEwMCU7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZmEtc3RhY2stMXggeyBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG4uZmEtc3RhY2stMnggeyBmb250LXNpemU6IDJlbTsgfVxuXG4uZmEtaW52ZXJzZSB7IGNvbG9yOiAjZmZmOyB9XG5cbi8qIEZvbnQgQXdlc29tZSB1c2VzIHRoZSBVbmljb2RlIFByaXZhdGUgVXNlIEFyZWEgKFBVQSkgdG8gZW5zdXJlIHNjcmVlbiByZWFkZXJzIGRvIG5vdCByZWFkIG9mZiByYW5kb20gY2hhcmFjdGVycyB0aGF0IHJlcHJlc2VudCBpY29ucyAqL1xuLmZhLWdsYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CAXCI7IH1cblxuLmZhLW11c2ljOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CBXCI7IH1cblxuLmZhLXNlYXJjaDpiZWZvcmUgeyBjb250ZW50OiBcIu+AglwiOyB9XG5cbi5mYS1lbnZlbG9wZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CDXCI7IH1cblxuLmZhLWhlYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CEXCI7IH1cblxuLmZhLXN0YXI6YmVmb3JlIHsgY29udGVudDogXCLvgIVcIjsgfVxuXG4uZmEtc3Rhci1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CGXCI7IH1cblxuLmZhLXVzZXI6YmVmb3JlIHsgY29udGVudDogXCLvgIdcIjsgfVxuXG4uZmEtZmlsbTpiZWZvcmUgeyBjb250ZW50OiBcIu+AiFwiOyB9XG5cbi5mYS10aC1sYXJnZTpiZWZvcmUgeyBjb250ZW50OiBcIu+AiVwiOyB9XG5cbi5mYS10aDpiZWZvcmUgeyBjb250ZW50OiBcIu+AilwiOyB9XG5cbi5mYS10aC1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CLXCI7IH1cblxuLmZhLWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CMXCI7IH1cblxuLmZhLXJlbW92ZTpiZWZvcmUsIC5mYS1jbG9zZTpiZWZvcmUsIC5mYS10aW1lczpiZWZvcmUgeyBjb250ZW50OiBcIu+AjVwiOyB9XG5cbi5mYS1zZWFyY2gtcGx1czpiZWZvcmUgeyBjb250ZW50OiBcIu+AjlwiOyB9XG5cbi5mYS1zZWFyY2gtbWludXM6YmVmb3JlIHsgY29udGVudDogXCLvgJBcIjsgfVxuXG4uZmEtcG93ZXItb2ZmOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CRXCI7IH1cblxuLmZhLXNpZ25hbDpiZWZvcmUgeyBjb250ZW50OiBcIu+AklwiOyB9XG5cbi5mYS1nZWFyOmJlZm9yZSwgLmZhLWNvZzpiZWZvcmUgeyBjb250ZW50OiBcIu+Ak1wiOyB9XG5cbi5mYS10cmFzaC1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CUXCI7IH1cblxuLmZhLWhvbWU6YmVmb3JlIHsgY29udGVudDogXCLvgJVcIjsgfVxuXG4uZmEtZmlsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CWXCI7IH1cblxuLmZhLWNsb2NrLW86YmVmb3JlIHsgY29udGVudDogXCLvgJdcIjsgfVxuXG4uZmEtcm9hZDpiZWZvcmUgeyBjb250ZW50OiBcIu+AmFwiOyB9XG5cbi5mYS1kb3dubG9hZDpiZWZvcmUgeyBjb250ZW50OiBcIu+AmVwiOyB9XG5cbi5mYS1hcnJvdy1jaXJjbGUtby1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CaXCI7IH1cblxuLmZhLWFycm93LWNpcmNsZS1vLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CbXCI7IH1cblxuLmZhLWluYm94OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CcXCI7IH1cblxuLmZhLXBsYXktY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogXCLvgJ1cIjsgfVxuXG4uZmEtcm90YXRlLXJpZ2h0OmJlZm9yZSwgLmZhLXJlcGVhdDpiZWZvcmUgeyBjb250ZW50OiBcIu+AnlwiOyB9XG5cbi5mYS1yZWZyZXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ChXCI7IH1cblxuLmZhLWxpc3QtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CiXCI7IH1cblxuLmZhLWxvY2s6YmVmb3JlIHsgY29udGVudDogXCLvgKNcIjsgfVxuXG4uZmEtZmxhZzpiZWZvcmUgeyBjb250ZW50OiBcIu+ApFwiOyB9XG5cbi5mYS1oZWFkcGhvbmVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ClXCI7IH1cblxuLmZhLXZvbHVtZS1vZmY6YmVmb3JlIHsgY29udGVudDogXCLvgKZcIjsgfVxuXG4uZmEtdm9sdW1lLWRvd246YmVmb3JlIHsgY29udGVudDogXCLvgKdcIjsgfVxuXG4uZmEtdm9sdW1lLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CoXCI7IH1cblxuLmZhLXFyY29kZTpiZWZvcmUgeyBjb250ZW50OiBcIu+AqVwiOyB9XG5cbi5mYS1iYXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CqXCI7IH1cblxuLmZhLXRhZzpiZWZvcmUgeyBjb250ZW50OiBcIu+Aq1wiOyB9XG5cbi5mYS10YWdzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CsXCI7IH1cblxuLmZhLWJvb2s6YmVmb3JlIHsgY29udGVudDogXCLvgK1cIjsgfVxuXG4uZmEtYm9va21hcms6YmVmb3JlIHsgY29udGVudDogXCLvgK5cIjsgfVxuXG4uZmEtcHJpbnQ6YmVmb3JlIHsgY29udGVudDogXCLvgK9cIjsgfVxuXG4uZmEtY2FtZXJhOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74CwXCI7IH1cblxuLmZhLWZvbnQ6YmVmb3JlIHsgY29udGVudDogXCLvgLFcIjsgfVxuXG4uZmEtYm9sZDpiZWZvcmUgeyBjb250ZW50OiBcIu+AslwiOyB9XG5cbi5mYS1pdGFsaWM6YmVmb3JlIHsgY29udGVudDogXCLvgLNcIjsgfVxuXG4uZmEtdGV4dC1oZWlnaHQ6YmVmb3JlIHsgY29udGVudDogXCLvgLRcIjsgfVxuXG4uZmEtdGV4dC13aWR0aDpiZWZvcmUgeyBjb250ZW50OiBcIu+AtVwiOyB9XG5cbi5mYS1hbGlnbi1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74C2XCI7IH1cblxuLmZhLWFsaWduLWNlbnRlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+At1wiOyB9XG5cbi5mYS1hbGlnbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIu+AuFwiOyB9XG5cbi5mYS1hbGlnbi1qdXN0aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74C5XCI7IH1cblxuLmZhLWxpc3Q6YmVmb3JlIHsgY29udGVudDogXCLvgLpcIjsgfVxuXG4uZmEtZGVkZW50OmJlZm9yZSwgLmZhLW91dGRlbnQ6YmVmb3JlIHsgY29udGVudDogXCLvgLtcIjsgfVxuXG4uZmEtaW5kZW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74C8XCI7IH1cblxuLmZhLXZpZGVvLWNhbWVyYTpiZWZvcmUgeyBjb250ZW50OiBcIu+AvVwiOyB9XG5cbi5mYS1waG90bzpiZWZvcmUsIC5mYS1pbWFnZTpiZWZvcmUsIC5mYS1waWN0dXJlLW86YmVmb3JlIHsgY29udGVudDogXCLvgL5cIjsgfVxuXG4uZmEtcGVuY2lsOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GAXCI7IH1cblxuLmZhLW1hcC1tYXJrZXI6YmVmb3JlIHsgY29udGVudDogXCLvgYFcIjsgfVxuXG4uZmEtYWRqdXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GCXCI7IH1cblxuLmZhLXRpbnQ6YmVmb3JlIHsgY29udGVudDogXCLvgYNcIjsgfVxuXG4uZmEtZWRpdDpiZWZvcmUsIC5mYS1wZW5jaWwtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogXCLvgYRcIjsgfVxuXG4uZmEtc2hhcmUtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogXCLvgYVcIjsgfVxuXG4uZmEtY2hlY2stc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogXCLvgYZcIjsgfVxuXG4uZmEtYXJyb3dzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GHXCI7IH1cblxuLmZhLXN0ZXAtYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogXCLvgYhcIjsgfVxuXG4uZmEtZmFzdC1iYWNrd2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIu+BiVwiOyB9XG5cbi5mYS1iYWNrd2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIu+BilwiOyB9XG5cbi5mYS1wbGF5OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GLXCI7IH1cblxuLmZhLXBhdXNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GMXCI7IH1cblxuLmZhLXN0b3A6YmVmb3JlIHsgY29udGVudDogXCLvgY1cIjsgfVxuXG4uZmEtZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIu+BjlwiOyB9XG5cbi5mYS1mYXN0LWZvcndhcmQ6YmVmb3JlIHsgY29udGVudDogXCLvgZBcIjsgfVxuXG4uZmEtc3RlcC1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GRXCI7IH1cblxuLmZhLWVqZWN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GSXCI7IH1cblxuLmZhLWNoZXZyb24tbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIu+Bk1wiOyB9XG5cbi5mYS1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GUXCI7IH1cblxuLmZhLXBsdXMtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GVXCI7IH1cblxuLmZhLW1pbnVzLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+BllwiOyB9XG5cbi5mYS10aW1lcy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCLvgZdcIjsgfVxuXG4uZmEtY2hlY2stY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GYXCI7IH1cblxuLmZhLXF1ZXN0aW9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+BmVwiOyB9XG5cbi5mYS1pbmZvLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+BmlwiOyB9XG5cbi5mYS1jcm9zc2hhaXJzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GbXCI7IH1cblxuLmZhLXRpbWVzLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GcXCI7IH1cblxuLmZhLWNoZWNrLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GdXCI7IH1cblxuLmZhLWJhbjpiZWZvcmUgeyBjb250ZW50OiBcIu+BnlwiOyB9XG5cbi5mYS1hcnJvdy1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GgXCI7IH1cblxuLmZhLWFycm93LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GhXCI7IH1cblxuLmZhLWFycm93LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GiXCI7IH1cblxuLmZhLWFycm93LWRvd246YmVmb3JlIHsgY29udGVudDogXCLvgaNcIjsgfVxuXG4uZmEtbWFpbC1mb3J3YXJkOmJlZm9yZSwgLmZhLXNoYXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GkXCI7IH1cblxuLmZhLWV4cGFuZDpiZWZvcmUgeyBjb250ZW50OiBcIu+BpVwiOyB9XG5cbi5mYS1jb21wcmVzczpiZWZvcmUgeyBjb250ZW50OiBcIu+BplwiOyB9XG5cbi5mYS1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GnXCI7IH1cblxuLmZhLW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GoXCI7IH1cblxuLmZhLWFzdGVyaXNrOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GpXCI7IH1cblxuLmZhLWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+BqlwiOyB9XG5cbi5mYS1naWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GrXCI7IH1cblxuLmZhLWxlYWY6YmVmb3JlIHsgY29udGVudDogXCLvgaxcIjsgfVxuXG4uZmEtZmlyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+BrVwiOyB9XG5cbi5mYS1leWU6YmVmb3JlIHsgY29udGVudDogXCLvga5cIjsgfVxuXG4uZmEtZXllLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74GwXCI7IH1cblxuLmZhLXdhcm5pbmc6YmVmb3JlLCAuZmEtZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3JlIHsgY29udGVudDogXCLvgbFcIjsgfVxuXG4uZmEtcGxhbmU6YmVmb3JlIHsgY29udGVudDogXCLvgbJcIjsgfVxuXG4uZmEtY2FsZW5kYXI6YmVmb3JlIHsgY29udGVudDogXCLvgbNcIjsgfVxuXG4uZmEtcmFuZG9tOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74G0XCI7IH1cblxuLmZhLWNvbW1lbnQ6YmVmb3JlIHsgY29udGVudDogXCLvgbVcIjsgfVxuXG4uZmEtbWFnbmV0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74G2XCI7IH1cblxuLmZhLWNoZXZyb24tdXA6YmVmb3JlIHsgY29udGVudDogXCLvgbdcIjsgfVxuXG4uZmEtY2hldnJvbi1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74G4XCI7IH1cblxuLmZhLXJldHdlZXQ6YmVmb3JlIHsgY29udGVudDogXCLvgblcIjsgfVxuXG4uZmEtc2hvcHBpbmctY2FydDpiZWZvcmUgeyBjb250ZW50OiBcIu+BulwiOyB9XG5cbi5mYS1mb2xkZXI6YmVmb3JlIHsgY29udGVudDogXCLvgbtcIjsgfVxuXG4uZmEtZm9sZGVyLW9wZW46YmVmb3JlIHsgY29udGVudDogXCLvgbxcIjsgfVxuXG4uZmEtYXJyb3dzLXY6YmVmb3JlIHsgY29udGVudDogXCLvgb1cIjsgfVxuXG4uZmEtYXJyb3dzLWg6YmVmb3JlIHsgY29udGVudDogXCLvgb5cIjsgfVxuXG4uZmEtYmFyLWNoYXJ0LW86YmVmb3JlLCAuZmEtYmFyLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KAXCI7IH1cblxuLmZhLXR3aXR0ZXItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KBXCI7IH1cblxuLmZhLWZhY2Vib29rLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+CglwiOyB9XG5cbi5mYS1jYW1lcmEtcmV0cm86YmVmb3JlIHsgY29udGVudDogXCLvgoNcIjsgfVxuXG4uZmEta2V5OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KEXCI7IH1cblxuLmZhLWdlYXJzOmJlZm9yZSwgLmZhLWNvZ3M6YmVmb3JlIHsgY29udGVudDogXCLvgoVcIjsgfVxuXG4uZmEtY29tbWVudHM6YmVmb3JlIHsgY29udGVudDogXCLvgoZcIjsgfVxuXG4uZmEtdGh1bWJzLW8tdXA6YmVmb3JlIHsgY29udGVudDogXCLvgodcIjsgfVxuXG4uZmEtdGh1bWJzLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIu+CiFwiOyB9XG5cbi5mYS1zdGFyLWhhbGY6YmVmb3JlIHsgY29udGVudDogXCLvgolcIjsgfVxuXG4uZmEtaGVhcnQtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+CilwiOyB9XG5cbi5mYS1zaWduLW91dDpiZWZvcmUgeyBjb250ZW50OiBcIu+Ci1wiOyB9XG5cbi5mYS1saW5rZWRpbi1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvgoxcIjsgfVxuXG4uZmEtdGh1bWItdGFjazpiZWZvcmUgeyBjb250ZW50OiBcIu+CjVwiOyB9XG5cbi5mYS1leHRlcm5hbC1saW5rOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KOXCI7IH1cblxuLmZhLXNpZ24taW46YmVmb3JlIHsgY29udGVudDogXCLvgpBcIjsgfVxuXG4uZmEtdHJvcGh5OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KRXCI7IH1cblxuLmZhLWdpdGh1Yi1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvgpJcIjsgfVxuXG4uZmEtdXBsb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KTXCI7IH1cblxuLmZhLWxlbW9uLW86YmVmb3JlIHsgY29udGVudDogXCLvgpRcIjsgfVxuXG4uZmEtcGhvbmU6YmVmb3JlIHsgY29udGVudDogXCLvgpVcIjsgfVxuXG4uZmEtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogXCLvgpZcIjsgfVxuXG4uZmEtYm9va21hcmstbzpiZWZvcmUgeyBjb250ZW50OiBcIu+Cl1wiOyB9XG5cbi5mYS1waG9uZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvgphcIjsgfVxuXG4uZmEtdHdpdHRlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+CmVwiOyB9XG5cbi5mYS1mYWNlYm9vay1mOmJlZm9yZSwgLmZhLWZhY2Vib29rOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KaXCI7IH1cblxuLmZhLWdpdGh1YjpiZWZvcmUgeyBjb250ZW50OiBcIu+Cm1wiOyB9XG5cbi5mYS11bmxvY2s6YmVmb3JlIHsgY29udGVudDogXCLvgpxcIjsgfVxuXG4uZmEtY3JlZGl0LWNhcmQ6YmVmb3JlIHsgY29udGVudDogXCLvgp1cIjsgfVxuXG4uZmEtZmVlZDpiZWZvcmUsIC5mYS1yc3M6YmVmb3JlIHsgY29udGVudDogXCLvgp5cIjsgfVxuXG4uZmEtaGRkLW86YmVmb3JlIHsgY29udGVudDogXCLvgqBcIjsgfVxuXG4uZmEtYnVsbGhvcm46YmVmb3JlIHsgY29udGVudDogXCLvgqFcIjsgfVxuXG4uZmEtYmVsbDpiZWZvcmUgeyBjb250ZW50OiBcIu+Ds1wiOyB9XG5cbi5mYS1jZXJ0aWZpY2F0ZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Co1wiOyB9XG5cbi5mYS1oYW5kLW8tcmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCLvgqRcIjsgfVxuXG4uZmEtaGFuZC1vLWxlZnQ6YmVmb3JlIHsgY29udGVudDogXCLvgqVcIjsgfVxuXG4uZmEtaGFuZC1vLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KmXCI7IH1cblxuLmZhLWhhbmQtby1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KnXCI7IH1cblxuLmZhLWFycm93LWNpcmNsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KoXCI7IH1cblxuLmZhLWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIu+CqVwiOyB9XG5cbi5mYS1hcnJvdy1jaXJjbGUtdXA6YmVmb3JlIHsgY29udGVudDogXCLvgqpcIjsgfVxuXG4uZmEtYXJyb3ctY2lyY2xlLWRvd246YmVmb3JlIHsgY29udGVudDogXCLvgqtcIjsgfVxuXG4uZmEtZ2xvYmU6YmVmb3JlIHsgY29udGVudDogXCLvgqxcIjsgfVxuXG4uZmEtd3JlbmNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KtXCI7IH1cblxuLmZhLXRhc2tzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74KuXCI7IH1cblxuLmZhLWZpbHRlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+CsFwiOyB9XG5cbi5mYS1icmllZmNhc2U6YmVmb3JlIHsgY29udGVudDogXCLvgrFcIjsgfVxuXG4uZmEtYXJyb3dzLWFsdDpiZWZvcmUgeyBjb250ZW50OiBcIu+CslwiOyB9XG5cbi5mYS1ncm91cDpiZWZvcmUsIC5mYS11c2VyczpiZWZvcmUgeyBjb250ZW50OiBcIu+DgFwiOyB9XG5cbi5mYS1jaGFpbjpiZWZvcmUsIC5mYS1saW5rOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OBXCI7IH1cblxuLmZhLWNsb3VkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OCXCI7IH1cblxuLmZhLWZsYXNrOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ODXCI7IH1cblxuLmZhLWN1dDpiZWZvcmUsIC5mYS1zY2lzc29yczpiZWZvcmUgeyBjb250ZW50OiBcIu+DhFwiOyB9XG5cbi5mYS1jb3B5OmJlZm9yZSwgLmZhLWZpbGVzLW86YmVmb3JlIHsgY29udGVudDogXCLvg4VcIjsgfVxuXG4uZmEtcGFwZXJjbGlwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OGXCI7IH1cblxuLmZhLXNhdmU6YmVmb3JlLCAuZmEtZmxvcHB5LW86YmVmb3JlIHsgY29udGVudDogXCLvg4dcIjsgfVxuXG4uZmEtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OIXCI7IH1cblxuLmZhLW5hdmljb246YmVmb3JlLCAuZmEtcmVvcmRlcjpiZWZvcmUsIC5mYS1iYXJzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OJXCI7IH1cblxuLmZhLWxpc3QtdWw6YmVmb3JlIHsgY29udGVudDogXCLvg4pcIjsgfVxuXG4uZmEtbGlzdC1vbDpiZWZvcmUgeyBjb250ZW50OiBcIu+Di1wiOyB9XG5cbi5mYS1zdHJpa2V0aHJvdWdoOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OMXCI7IH1cblxuLmZhLXVuZGVybGluZTpiZWZvcmUgeyBjb250ZW50OiBcIu+DjVwiOyB9XG5cbi5mYS10YWJsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+DjlwiOyB9XG5cbi5mYS1tYWdpYzpiZWZvcmUgeyBjb250ZW50OiBcIu+DkFwiOyB9XG5cbi5mYS10cnVjazpiZWZvcmUgeyBjb250ZW50OiBcIu+DkVwiOyB9XG5cbi5mYS1waW50ZXJlc3Q6YmVmb3JlIHsgY29udGVudDogXCLvg5JcIjsgfVxuXG4uZmEtcGludGVyZXN0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Dk1wiOyB9XG5cbi5mYS1nb29nbGUtcGx1cy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvg5RcIjsgfVxuXG4uZmEtZ29vZ2xlLXBsdXM6YmVmb3JlIHsgY29udGVudDogXCLvg5VcIjsgfVxuXG4uZmEtbW9uZXk6YmVmb3JlIHsgY29udGVudDogXCLvg5ZcIjsgfVxuXG4uZmEtY2FyZXQtZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIu+Dl1wiOyB9XG5cbi5mYS1jYXJldC11cDpiZWZvcmUgeyBjb250ZW50OiBcIu+DmFwiOyB9XG5cbi5mYS1jYXJldC1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OZXCI7IH1cblxuLmZhLWNhcmV0LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OaXCI7IH1cblxuLmZhLWNvbHVtbnM6YmVmb3JlIHsgY29udGVudDogXCLvg5tcIjsgfVxuXG4uZmEtdW5zb3J0ZWQ6YmVmb3JlLCAuZmEtc29ydDpiZWZvcmUgeyBjb250ZW50OiBcIu+DnFwiOyB9XG5cbi5mYS1zb3J0LWRvd246YmVmb3JlLCAuZmEtc29ydC1kZXNjOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OdXCI7IH1cblxuLmZhLXNvcnQtdXA6YmVmb3JlLCAuZmEtc29ydC1hc2M6YmVmb3JlIHsgY29udGVudDogXCLvg55cIjsgfVxuXG4uZmEtZW52ZWxvcGU6YmVmb3JlIHsgY29udGVudDogXCLvg6BcIjsgfVxuXG4uZmEtbGlua2VkaW46YmVmb3JlIHsgY29udGVudDogXCLvg6FcIjsgfVxuXG4uZmEtcm90YXRlLWxlZnQ6YmVmb3JlLCAuZmEtdW5kbzpiZWZvcmUgeyBjb250ZW50OiBcIu+DolwiOyB9XG5cbi5mYS1sZWdhbDpiZWZvcmUsIC5mYS1nYXZlbDpiZWZvcmUgeyBjb250ZW50OiBcIu+Do1wiOyB9XG5cbi5mYS1kYXNoYm9hcmQ6YmVmb3JlLCAuZmEtdGFjaG9tZXRlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+DpFwiOyB9XG5cbi5mYS1jb21tZW50LW86YmVmb3JlIHsgY29udGVudDogXCLvg6VcIjsgfVxuXG4uZmEtY29tbWVudHMtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+DplwiOyB9XG5cbi5mYS1mbGFzaDpiZWZvcmUsIC5mYS1ib2x0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OnXCI7IH1cblxuLmZhLXNpdGVtYXA6YmVmb3JlIHsgY29udGVudDogXCLvg6hcIjsgfVxuXG4uZmEtdW1icmVsbGE6YmVmb3JlIHsgY29udGVudDogXCLvg6lcIjsgfVxuXG4uZmEtcGFzdGU6YmVmb3JlLCAuZmEtY2xpcGJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OqXCI7IH1cblxuLmZhLWxpZ2h0YnVsYi1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OrXCI7IH1cblxuLmZhLWV4Y2hhbmdlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OsXCI7IH1cblxuLmZhLWNsb3VkLWRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OtXCI7IH1cblxuLmZhLWNsb3VkLXVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiBcIu+DrlwiOyB9XG5cbi5mYS11c2VyLW1kOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OwXCI7IH1cblxuLmZhLXN0ZXRob3Njb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OxXCI7IH1cblxuLmZhLXN1aXRjYXNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74OyXCI7IH1cblxuLmZhLWJlbGwtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+ColwiOyB9XG5cbi5mYS1jb2ZmZWU6YmVmb3JlIHsgY29udGVudDogXCLvg7RcIjsgfVxuXG4uZmEtY3V0bGVyeTpiZWZvcmUgeyBjb250ZW50OiBcIu+DtVwiOyB9XG5cbi5mYS1maWxlLXRleHQtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+DtlwiOyB9XG5cbi5mYS1idWlsZGluZy1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74O3XCI7IH1cblxuLmZhLWhvc3BpdGFsLW86YmVmb3JlIHsgY29udGVudDogXCLvg7hcIjsgfVxuXG4uZmEtYW1idWxhbmNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74O5XCI7IH1cblxuLmZhLW1lZGtpdDpiZWZvcmUgeyBjb250ZW50OiBcIu+DulwiOyB9XG5cbi5mYS1maWdodGVyLWpldDpiZWZvcmUgeyBjb250ZW50OiBcIu+Du1wiOyB9XG5cbi5mYS1iZWVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74O8XCI7IH1cblxuLmZhLWgtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74O9XCI7IH1cblxuLmZhLXBsdXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74O+XCI7IH1cblxuLmZhLWFuZ2xlLWRvdWJsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SAXCI7IH1cblxuLmZhLWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIu+EgVwiOyB9XG5cbi5mYS1hbmdsZS1kb3VibGUtdXA6YmVmb3JlIHsgY29udGVudDogXCLvhIJcIjsgfVxuXG4uZmEtYW5nbGUtZG91YmxlLWRvd246YmVmb3JlIHsgY29udGVudDogXCLvhINcIjsgfVxuXG4uZmEtYW5nbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIu+EhFwiOyB9XG5cbi5mYS1hbmdsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIu+EhVwiOyB9XG5cbi5mYS1hbmdsZS11cDpiZWZvcmUgeyBjb250ZW50OiBcIu+EhlwiOyB9XG5cbi5mYS1hbmdsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SHXCI7IH1cblxuLmZhLWRlc2t0b3A6YmVmb3JlIHsgY29udGVudDogXCLvhIhcIjsgfVxuXG4uZmEtbGFwdG9wOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SJXCI7IH1cblxuLmZhLXRhYmxldDpiZWZvcmUgeyBjb250ZW50OiBcIu+EilwiOyB9XG5cbi5mYS1tb2JpbGUtcGhvbmU6YmVmb3JlLCAuZmEtbW9iaWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SLXCI7IH1cblxuLmZhLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SMXCI7IH1cblxuLmZhLXF1b3RlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogXCLvhI1cIjsgfVxuXG4uZmEtcXVvdGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCLvhI5cIjsgfVxuXG4uZmEtc3Bpbm5lcjpiZWZvcmUgeyBjb250ZW50OiBcIu+EkFwiOyB9XG5cbi5mYS1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCLvhJFcIjsgfVxuXG4uZmEtbWFpbC1yZXBseTpiZWZvcmUsIC5mYS1yZXBseTpiZWZvcmUgeyBjb250ZW50OiBcIu+EklwiOyB9XG5cbi5mYS1naXRodWItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74STXCI7IH1cblxuLmZhLWZvbGRlci1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SUXCI7IH1cblxuLmZhLWZvbGRlci1vcGVuLW86YmVmb3JlIHsgY29udGVudDogXCLvhJVcIjsgfVxuXG4uZmEtc21pbGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+EmFwiOyB9XG5cbi5mYS1mcm93bi1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SZXCI7IH1cblxuLmZhLW1laC1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SaXCI7IH1cblxuLmZhLWdhbWVwYWQ6YmVmb3JlIHsgY29udGVudDogXCLvhJtcIjsgfVxuXG4uZmEta2V5Ym9hcmQtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+EnFwiOyB9XG5cbi5mYS1mbGFnLW86YmVmb3JlIHsgY29udGVudDogXCLvhJ1cIjsgfVxuXG4uZmEtZmxhZy1jaGVja2VyZWQ6YmVmb3JlIHsgY29udGVudDogXCLvhJ5cIjsgfVxuXG4uZmEtdGVybWluYWw6YmVmb3JlIHsgY29udGVudDogXCLvhKBcIjsgfVxuXG4uZmEtY29kZTpiZWZvcmUgeyBjb250ZW50OiBcIu+EoVwiOyB9XG5cbi5mYS1tYWlsLXJlcGx5LWFsbDpiZWZvcmUsIC5mYS1yZXBseS1hbGw6YmVmb3JlIHsgY29udGVudDogXCLvhKJcIjsgfVxuXG4uZmEtc3Rhci1oYWxmLWVtcHR5OmJlZm9yZSwgLmZhLXN0YXItaGFsZi1mdWxsOmJlZm9yZSwgLmZhLXN0YXItaGFsZi1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SjXCI7IH1cblxuLmZhLWxvY2F0aW9uLWFycm93OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SkXCI7IH1cblxuLmZhLWNyb3A6YmVmb3JlIHsgY29udGVudDogXCLvhKVcIjsgfVxuXG4uZmEtY29kZS1mb3JrOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SmXCI7IH1cblxuLmZhLXVubGluazpiZWZvcmUsIC5mYS1jaGFpbi1icm9rZW46YmVmb3JlIHsgY29udGVudDogXCLvhKdcIjsgfVxuXG4uZmEtcXVlc3Rpb246YmVmb3JlIHsgY29udGVudDogXCLvhKhcIjsgfVxuXG4uZmEtaW5mbzpiZWZvcmUgeyBjb250ZW50OiBcIu+EqVwiOyB9XG5cbi5mYS1leGNsYW1hdGlvbjpiZWZvcmUgeyBjb250ZW50OiBcIu+EqlwiOyB9XG5cbi5mYS1zdXBlcnNjcmlwdDpiZWZvcmUgeyBjb250ZW50OiBcIu+Eq1wiOyB9XG5cbi5mYS1zdWJzY3JpcHQ6YmVmb3JlIHsgY29udGVudDogXCLvhKxcIjsgfVxuXG4uZmEtZXJhc2VyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74StXCI7IH1cblxuLmZhLXB1enpsZS1waWVjZTpiZWZvcmUgeyBjb250ZW50OiBcIu+ErlwiOyB9XG5cbi5mYS1taWNyb3Bob25lOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SwXCI7IH1cblxuLmZhLW1pY3JvcGhvbmUtc2xhc2g6YmVmb3JlIHsgY29udGVudDogXCLvhLFcIjsgfVxuXG4uZmEtc2hpZWxkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74SyXCI7IH1cblxuLmZhLWNhbGVuZGFyLW86YmVmb3JlIHsgY29udGVudDogXCLvhLNcIjsgfVxuXG4uZmEtZmlyZS1leHRpbmd1aXNoZXI6YmVmb3JlIHsgY29udGVudDogXCLvhLRcIjsgfVxuXG4uZmEtcm9ja2V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74S1XCI7IH1cblxuLmZhLW1heGNkbjpiZWZvcmUgeyBjb250ZW50OiBcIu+EtlwiOyB9XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74S3XCI7IH1cblxuLmZhLWNoZXZyb24tY2lyY2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74S4XCI7IH1cblxuLmZhLWNoZXZyb24tY2lyY2xlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74S5XCI7IH1cblxuLmZhLWNoZXZyb24tY2lyY2xlLWRvd246YmVmb3JlIHsgY29udGVudDogXCLvhLpcIjsgfVxuXG4uZmEtaHRtbDU6YmVmb3JlIHsgY29udGVudDogXCLvhLtcIjsgfVxuXG4uZmEtY3NzMzpiZWZvcmUgeyBjb250ZW50OiBcIu+EvFwiOyB9XG5cbi5mYS1hbmNob3I6YmVmb3JlIHsgY29udGVudDogXCLvhL1cIjsgfVxuXG4uZmEtdW5sb2NrLWFsdDpiZWZvcmUgeyBjb250ZW50OiBcIu+EvlwiOyB9XG5cbi5mYS1idWxsc2V5ZTpiZWZvcmUgeyBjb250ZW50OiBcIu+FgFwiOyB9XG5cbi5mYS1lbGxpcHNpcy1oOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WBXCI7IH1cblxuLmZhLWVsbGlwc2lzLXY6YmVmb3JlIHsgY29udGVudDogXCLvhYJcIjsgfVxuXG4uZmEtcnNzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Fg1wiOyB9XG5cbi5mYS1wbGF5LWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+FhFwiOyB9XG5cbi5mYS10aWNrZXQ6YmVmb3JlIHsgY29udGVudDogXCLvhYVcIjsgfVxuXG4uZmEtbWludXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WGXCI7IH1cblxuLmZhLW1pbnVzLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WHXCI7IH1cblxuLmZhLWxldmVsLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WIXCI7IH1cblxuLmZhLWxldmVsLWRvd246YmVmb3JlIHsgY29udGVudDogXCLvhYlcIjsgfVxuXG4uZmEtY2hlY2stc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WKXCI7IH1cblxuLmZhLXBlbmNpbC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvhYtcIjsgfVxuXG4uZmEtZXh0ZXJuYWwtbGluay1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvhYxcIjsgfVxuXG4uZmEtc2hhcmUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WNXCI7IH1cblxuLmZhLWNvbXBhc3M6YmVmb3JlIHsgY29udGVudDogXCLvhY5cIjsgfVxuXG4uZmEtdG9nZ2xlLWRvd246YmVmb3JlLCAuZmEtY2FyZXQtc3F1YXJlLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIu+FkFwiOyB9XG5cbi5mYS10b2dnbGUtdXA6YmVmb3JlLCAuZmEtY2FyZXQtc3F1YXJlLW8tdXA6YmVmb3JlIHsgY29udGVudDogXCLvhZFcIjsgfVxuXG4uZmEtdG9nZ2xlLXJpZ2h0OmJlZm9yZSwgLmZhLWNhcmV0LXNxdWFyZS1vLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WSXCI7IH1cblxuLmZhLWV1cm86YmVmb3JlLCAuZmEtZXVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WTXCI7IH1cblxuLmZhLWdicDpiZWZvcmUgeyBjb250ZW50OiBcIu+FlFwiOyB9XG5cbi5mYS1kb2xsYXI6YmVmb3JlLCAuZmEtdXNkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WVXCI7IH1cblxuLmZhLXJ1cGVlOmJlZm9yZSwgLmZhLWlucjpiZWZvcmUgeyBjb250ZW50OiBcIu+FllwiOyB9XG5cbi5mYS1jbnk6YmVmb3JlLCAuZmEtcm1iOmJlZm9yZSwgLmZhLXllbjpiZWZvcmUsIC5mYS1qcHk6YmVmb3JlIHsgY29udGVudDogXCLvhZdcIjsgfVxuXG4uZmEtcnVibGU6YmVmb3JlLCAuZmEtcm91YmxlOmJlZm9yZSwgLmZhLXJ1YjpiZWZvcmUgeyBjb250ZW50OiBcIu+FmFwiOyB9XG5cbi5mYS13b246YmVmb3JlLCAuZmEta3J3OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WZXCI7IH1cblxuLmZhLWJpdGNvaW46YmVmb3JlLCAuZmEtYnRjOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WaXCI7IH1cblxuLmZhLWZpbGU6YmVmb3JlIHsgY29udGVudDogXCLvhZtcIjsgfVxuXG4uZmEtZmlsZS10ZXh0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WcXCI7IH1cblxuLmZhLXNvcnQtYWxwaGEtYXNjOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WdXCI7IH1cblxuLmZhLXNvcnQtYWxwaGEtZGVzYzpiZWZvcmUgeyBjb250ZW50OiBcIu+FnlwiOyB9XG5cbi5mYS1zb3J0LWFtb3VudC1hc2M6YmVmb3JlIHsgY29udGVudDogXCLvhaBcIjsgfVxuXG4uZmEtc29ydC1hbW91bnQtZGVzYzpiZWZvcmUgeyBjb250ZW50OiBcIu+FoVwiOyB9XG5cbi5mYS1zb3J0LW51bWVyaWMtYXNjOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WiXCI7IH1cblxuLmZhLXNvcnQtbnVtZXJpYy1kZXNjOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WjXCI7IH1cblxuLmZhLXRodW1icy11cDpiZWZvcmUgeyBjb250ZW50OiBcIu+FpFwiOyB9XG5cbi5mYS10aHVtYnMtZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIu+FpVwiOyB9XG5cbi5mYS15b3V0dWJlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+FplwiOyB9XG5cbi5mYS15b3V0dWJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WnXCI7IH1cblxuLmZhLXhpbmc6YmVmb3JlIHsgY29udGVudDogXCLvhahcIjsgfVxuXG4uZmEteGluZy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvhalcIjsgfVxuXG4uZmEteW91dHViZS1wbGF5OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WqXCI7IH1cblxuLmZhLWRyb3Bib3g6YmVmb3JlIHsgY29udGVudDogXCLvhatcIjsgfVxuXG4uZmEtc3RhY2stb3ZlcmZsb3c6YmVmb3JlIHsgY29udGVudDogXCLvhaxcIjsgfVxuXG4uZmEtaW5zdGFncmFtOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WtXCI7IH1cblxuLmZhLWZsaWNrcjpiZWZvcmUgeyBjb250ZW50OiBcIu+FrlwiOyB9XG5cbi5mYS1hZG46YmVmb3JlIHsgY29udGVudDogXCLvhbBcIjsgfVxuXG4uZmEtYml0YnVja2V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WxXCI7IH1cblxuLmZhLWJpdGJ1Y2tldC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvhbJcIjsgfVxuXG4uZmEtdHVtYmxyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74WzXCI7IH1cblxuLmZhLXR1bWJsci1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvhbRcIjsgfVxuXG4uZmEtbG9uZy1hcnJvdy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74W1XCI7IH1cblxuLmZhLWxvbmctYXJyb3ctdXA6YmVmb3JlIHsgY29udGVudDogXCLvhbZcIjsgfVxuXG4uZmEtbG9uZy1hcnJvdy1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74W3XCI7IH1cblxuLmZhLWxvbmctYXJyb3ctcmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCLvhbhcIjsgfVxuXG4uZmEtYXBwbGU6YmVmb3JlIHsgY29udGVudDogXCLvhblcIjsgfVxuXG4uZmEtd2luZG93czpiZWZvcmUgeyBjb250ZW50OiBcIu+FulwiOyB9XG5cbi5mYS1hbmRyb2lkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74W7XCI7IH1cblxuLmZhLWxpbnV4OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74W8XCI7IH1cblxuLmZhLWRyaWJiYmxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74W9XCI7IH1cblxuLmZhLXNreXBlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74W+XCI7IH1cblxuLmZhLWZvdXJzcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvhoBcIjsgfVxuXG4uZmEtdHJlbGxvOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aBXCI7IH1cblxuLmZhLWZlbWFsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+GglwiOyB9XG5cbi5mYS1tYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aDXCI7IH1cblxuLmZhLWdpdHRpcDpiZWZvcmUsIC5mYS1ncmF0aXBheTpiZWZvcmUgeyBjb250ZW50OiBcIu+GhFwiOyB9XG5cbi5mYS1zdW4tbzpiZWZvcmUgeyBjb250ZW50OiBcIu+GhVwiOyB9XG5cbi5mYS1tb29uLW86YmVmb3JlIHsgY29udGVudDogXCLvhoZcIjsgfVxuXG4uZmEtYXJjaGl2ZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Gh1wiOyB9XG5cbi5mYS1idWc6YmVmb3JlIHsgY29udGVudDogXCLvhohcIjsgfVxuXG4uZmEtdms6YmVmb3JlIHsgY29udGVudDogXCLvholcIjsgfVxuXG4uZmEtd2VpYm86YmVmb3JlIHsgY29udGVudDogXCLvhopcIjsgfVxuXG4uZmEtcmVucmVuOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aLXCI7IH1cblxuLmZhLXBhZ2VsaW5lczpiZWZvcmUgeyBjb250ZW50OiBcIu+GjFwiOyB9XG5cbi5mYS1zdGFjay1leGNoYW5nZTpiZWZvcmUgeyBjb250ZW50OiBcIu+GjVwiOyB9XG5cbi5mYS1hcnJvdy1jaXJjbGUtby1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIu+GjlwiOyB9XG5cbi5mYS1hcnJvdy1jaXJjbGUtby1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aQXCI7IH1cblxuLmZhLXRvZ2dsZS1sZWZ0OmJlZm9yZSwgLmZhLWNhcmV0LXNxdWFyZS1vLWxlZnQ6YmVmb3JlIHsgY29udGVudDogXCLvhpFcIjsgfVxuXG4uZmEtZG90LWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aSXCI7IH1cblxuLmZhLXdoZWVsY2hhaXI6YmVmb3JlIHsgY29udGVudDogXCLvhpNcIjsgfVxuXG4uZmEtdmltZW8tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aUXCI7IH1cblxuLmZhLXR1cmtpc2gtbGlyYTpiZWZvcmUsIC5mYS10cnk6YmVmb3JlIHsgY29udGVudDogXCLvhpVcIjsgfVxuXG4uZmEtcGx1cy1zcXVhcmUtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+GllwiOyB9XG5cbi5mYS1zcGFjZS1zaHV0dGxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aXXCI7IH1cblxuLmZhLXNsYWNrOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aYXCI7IH1cblxuLmZhLWVudmVsb3BlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+GmVwiOyB9XG5cbi5mYS13b3JkcHJlc3M6YmVmb3JlIHsgY29udGVudDogXCLvhppcIjsgfVxuXG4uZmEtb3BlbmlkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74abXCI7IH1cblxuLmZhLWluc3RpdHV0aW9uOmJlZm9yZSwgLmZhLWJhbms6YmVmb3JlLCAuZmEtdW5pdmVyc2l0eTpiZWZvcmUgeyBjb250ZW50OiBcIu+GnFwiOyB9XG5cbi5mYS1tb3J0YXItYm9hcmQ6YmVmb3JlLCAuZmEtZ3JhZHVhdGlvbi1jYXA6YmVmb3JlIHsgY29udGVudDogXCLvhp1cIjsgfVxuXG4uZmEteWFob286YmVmb3JlIHsgY29udGVudDogXCLvhp5cIjsgfVxuXG4uZmEtZ29vZ2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74agXCI7IH1cblxuLmZhLXJlZGRpdDpiZWZvcmUgeyBjb250ZW50OiBcIu+GoVwiOyB9XG5cbi5mYS1yZWRkaXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aiXCI7IH1cblxuLmZhLXN0dW1ibGV1cG9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Go1wiOyB9XG5cbi5mYS1zdHVtYmxldXBvbjpiZWZvcmUgeyBjb250ZW50OiBcIu+GpFwiOyB9XG5cbi5mYS1kZWxpY2lvdXM6YmVmb3JlIHsgY29udGVudDogXCLvhqVcIjsgfVxuXG4uZmEtZGlnZzpiZWZvcmUgeyBjb250ZW50OiBcIu+GplwiOyB9XG5cbi5mYS1waWVkLXBpcGVyLXBwOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74anXCI7IH1cblxuLmZhLXBpZWQtcGlwZXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74aoXCI7IH1cblxuLmZhLWRydXBhbDpiZWZvcmUgeyBjb250ZW50OiBcIu+GqVwiOyB9XG5cbi5mYS1qb29tbGE6YmVmb3JlIHsgY29udGVudDogXCLvhqpcIjsgfVxuXG4uZmEtbGFuZ3VhZ2U6YmVmb3JlIHsgY29udGVudDogXCLvhqtcIjsgfVxuXG4uZmEtZmF4OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74asXCI7IH1cblxuLmZhLWJ1aWxkaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74atXCI7IH1cblxuLmZhLWNoaWxkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74auXCI7IH1cblxuLmZhLXBhdzpiZWZvcmUgeyBjb250ZW50OiBcIu+GsFwiOyB9XG5cbi5mYS1zcG9vbjpiZWZvcmUgeyBjb250ZW50OiBcIu+GsVwiOyB9XG5cbi5mYS1jdWJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ayXCI7IH1cblxuLmZhLWN1YmVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74azXCI7IH1cblxuLmZhLWJlaGFuY2U6YmVmb3JlIHsgY29udGVudDogXCLvhrRcIjsgfVxuXG4uZmEtYmVoYW5jZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvhrVcIjsgfVxuXG4uZmEtc3RlYW06YmVmb3JlIHsgY29udGVudDogXCLvhrZcIjsgfVxuXG4uZmEtc3RlYW0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74a3XCI7IH1cblxuLmZhLXJlY3ljbGU6YmVmb3JlIHsgY29udGVudDogXCLvhrhcIjsgfVxuXG4uZmEtYXV0b21vYmlsZTpiZWZvcmUsIC5mYS1jYXI6YmVmb3JlIHsgY29udGVudDogXCLvhrlcIjsgfVxuXG4uZmEtY2FiOmJlZm9yZSwgLmZhLXRheGk6YmVmb3JlIHsgY29udGVudDogXCLvhrpcIjsgfVxuXG4uZmEtdHJlZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Gu1wiOyB9XG5cbi5mYS1zcG90aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74a8XCI7IH1cblxuLmZhLWRldmlhbnRhcnQ6YmVmb3JlIHsgY29udGVudDogXCLvhr1cIjsgfVxuXG4uZmEtc291bmRjbG91ZDpiZWZvcmUgeyBjb250ZW50OiBcIu+GvlwiOyB9XG5cbi5mYS1kYXRhYmFzZTpiZWZvcmUgeyBjb250ZW50OiBcIu+HgFwiOyB9XG5cbi5mYS1maWxlLXBkZi1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eBXCI7IH1cblxuLmZhLWZpbGUtd29yZC1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eCXCI7IH1cblxuLmZhLWZpbGUtZXhjZWwtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+Hg1wiOyB9XG5cbi5mYS1maWxlLXBvd2VycG9pbnQtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+HhFwiOyB9XG5cbi5mYS1maWxlLXBob3RvLW86YmVmb3JlLCAuZmEtZmlsZS1waWN0dXJlLW86YmVmb3JlLCAuZmEtZmlsZS1pbWFnZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eFXCI7IH1cblxuLmZhLWZpbGUtemlwLW86YmVmb3JlLCAuZmEtZmlsZS1hcmNoaXZlLW86YmVmb3JlIHsgY29udGVudDogXCLvh4ZcIjsgfVxuXG4uZmEtZmlsZS1zb3VuZC1vOmJlZm9yZSwgLmZhLWZpbGUtYXVkaW8tbzpiZWZvcmUgeyBjb250ZW50OiBcIu+Hh1wiOyB9XG5cbi5mYS1maWxlLW1vdmllLW86YmVmb3JlLCAuZmEtZmlsZS12aWRlby1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eIXCI7IH1cblxuLmZhLWZpbGUtY29kZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eJXCI7IH1cblxuLmZhLXZpbmU6YmVmb3JlIHsgY29udGVudDogXCLvh4pcIjsgfVxuXG4uZmEtY29kZXBlbjpiZWZvcmUgeyBjb250ZW50OiBcIu+Hi1wiOyB9XG5cbi5mYS1qc2ZpZGRsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+HjFwiOyB9XG5cbi5mYS1saWZlLWJvdXk6YmVmb3JlLCAuZmEtbGlmZS1idW95OmJlZm9yZSwgLmZhLWxpZmUtc2F2ZXI6YmVmb3JlLCAuZmEtc3VwcG9ydDpiZWZvcmUsIC5mYS1saWZlLXJpbmc6YmVmb3JlIHsgY29udGVudDogXCLvh41cIjsgfVxuXG4uZmEtY2lyY2xlLW8tbm90Y2g6YmVmb3JlIHsgY29udGVudDogXCLvh45cIjsgfVxuXG4uZmEtcmE6YmVmb3JlLCAuZmEtcmVzaXN0YW5jZTpiZWZvcmUsIC5mYS1yZWJlbDpiZWZvcmUgeyBjb250ZW50OiBcIu+HkFwiOyB9XG5cbi5mYS1nZTpiZWZvcmUsIC5mYS1lbXBpcmU6YmVmb3JlIHsgY29udGVudDogXCLvh5FcIjsgfVxuXG4uZmEtZ2l0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+HklwiOyB9XG5cbi5mYS1naXQ6YmVmb3JlIHsgY29udGVudDogXCLvh5NcIjsgfVxuXG4uZmEteS1jb21iaW5hdG9yLXNxdWFyZTpiZWZvcmUsIC5mYS15Yy1zcXVhcmU6YmVmb3JlLCAuZmEtaGFja2VyLW5ld3M6YmVmb3JlIHsgY29udGVudDogXCLvh5RcIjsgfVxuXG4uZmEtdGVuY2VudC13ZWlibzpiZWZvcmUgeyBjb250ZW50OiBcIu+HlVwiOyB9XG5cbi5mYS1xcTpiZWZvcmUgeyBjb250ZW50OiBcIu+HllwiOyB9XG5cbi5mYS13ZWNoYXQ6YmVmb3JlLCAuZmEtd2VpeGluOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eXXCI7IH1cblxuLmZhLXNlbmQ6YmVmb3JlLCAuZmEtcGFwZXItcGxhbmU6YmVmb3JlIHsgY29udGVudDogXCLvh5hcIjsgfVxuXG4uZmEtc2VuZC1vOmJlZm9yZSwgLmZhLXBhcGVyLXBsYW5lLW86YmVmb3JlIHsgY29udGVudDogXCLvh5lcIjsgfVxuXG4uZmEtaGlzdG9yeTpiZWZvcmUgeyBjb250ZW50OiBcIu+HmlwiOyB9XG5cbi5mYS1jaXJjbGUtdGhpbjpiZWZvcmUgeyBjb250ZW50OiBcIu+Hm1wiOyB9XG5cbi5mYS1oZWFkZXI6YmVmb3JlIHsgY29udGVudDogXCLvh5xcIjsgfVxuXG4uZmEtcGFyYWdyYXBoOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74edXCI7IH1cblxuLmZhLXNsaWRlcnM6YmVmb3JlIHsgY29udGVudDogXCLvh55cIjsgfVxuXG4uZmEtc2hhcmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74egXCI7IH1cblxuLmZhLXNoYXJlLWFsdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLvh6FcIjsgfVxuXG4uZmEtYm9tYjpiZWZvcmUgeyBjb250ZW50OiBcIu+HolwiOyB9XG5cbi5mYS1zb2NjZXItYmFsbC1vOmJlZm9yZSwgLmZhLWZ1dGJvbC1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ejXCI7IH1cblxuLmZhLXR0eTpiZWZvcmUgeyBjb250ZW50OiBcIu+HpFwiOyB9XG5cbi5mYS1iaW5vY3VsYXJzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74elXCI7IH1cblxuLmZhLXBsdWc6YmVmb3JlIHsgY29udGVudDogXCLvh6ZcIjsgfVxuXG4uZmEtc2xpZGVzaGFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+Hp1wiOyB9XG5cbi5mYS10d2l0Y2g6YmVmb3JlIHsgY29udGVudDogXCLvh6hcIjsgfVxuXG4uZmEteWVscDpiZWZvcmUgeyBjb250ZW50OiBcIu+HqVwiOyB9XG5cbi5mYS1uZXdzcGFwZXItbzpiZWZvcmUgeyBjb250ZW50OiBcIu+HqlwiOyB9XG5cbi5mYS13aWZpOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74erXCI7IH1cblxuLmZhLWNhbGN1bGF0b3I6YmVmb3JlIHsgY29udGVudDogXCLvh6xcIjsgfVxuXG4uZmEtcGF5cGFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74etXCI7IH1cblxuLmZhLWdvb2dsZS13YWxsZXQ6YmVmb3JlIHsgY29udGVudDogXCLvh65cIjsgfVxuXG4uZmEtY2MtdmlzYTpiZWZvcmUgeyBjb250ZW50OiBcIu+HsFwiOyB9XG5cbi5mYS1jYy1tYXN0ZXJjYXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74exXCI7IH1cblxuLmZhLWNjLWRpc2NvdmVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74eyXCI7IH1cblxuLmZhLWNjLWFtZXg6YmVmb3JlIHsgY29udGVudDogXCLvh7NcIjsgfVxuXG4uZmEtY2MtcGF5cGFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74e0XCI7IH1cblxuLmZhLWNjLXN0cmlwZTpiZWZvcmUgeyBjb250ZW50OiBcIu+HtVwiOyB9XG5cbi5mYS1iZWxsLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74e2XCI7IH1cblxuLmZhLWJlbGwtc2xhc2gtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+Ht1wiOyB9XG5cbi5mYS10cmFzaDpiZWZvcmUgeyBjb250ZW50OiBcIu+HuFwiOyB9XG5cbi5mYS1jb3B5cmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCLvh7lcIjsgfVxuXG4uZmEtYXQ6YmVmb3JlIHsgY29udGVudDogXCLvh7pcIjsgfVxuXG4uZmEtZXllZHJvcHBlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+Hu1wiOyB9XG5cbi5mYS1wYWludC1icnVzaDpiZWZvcmUgeyBjb250ZW50OiBcIu+HvFwiOyB9XG5cbi5mYS1iaXJ0aGRheS1jYWtlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74e9XCI7IH1cblxuLmZhLWFyZWEtY2hhcnQ6YmVmb3JlIHsgY29udGVudDogXCLvh75cIjsgfVxuXG4uZmEtcGllLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iAXCI7IH1cblxuLmZhLWxpbmUtY2hhcnQ6YmVmb3JlIHsgY29udGVudDogXCLviIFcIjsgfVxuXG4uZmEtbGFzdGZtOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iCXCI7IH1cblxuLmZhLWxhc3RmbS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLviINcIjsgfVxuXG4uZmEtdG9nZ2xlLW9mZjpiZWZvcmUgeyBjb250ZW50OiBcIu+IhFwiOyB9XG5cbi5mYS10b2dnbGUtb246YmVmb3JlIHsgY29udGVudDogXCLviIVcIjsgfVxuXG4uZmEtYmljeWNsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+IhlwiOyB9XG5cbi5mYS1idXM6YmVmb3JlIHsgY29udGVudDogXCLviIdcIjsgfVxuXG4uZmEtaW94aG9zdDpiZWZvcmUgeyBjb250ZW50OiBcIu+IiFwiOyB9XG5cbi5mYS1hbmdlbGxpc3Q6YmVmb3JlIHsgY29udGVudDogXCLviIlcIjsgfVxuXG4uZmEtY2M6YmVmb3JlIHsgY29udGVudDogXCLviIpcIjsgfVxuXG4uZmEtc2hla2VsOmJlZm9yZSwgLmZhLXNoZXFlbDpiZWZvcmUsIC5mYS1pbHM6YmVmb3JlIHsgY29udGVudDogXCLviItcIjsgfVxuXG4uZmEtbWVhbnBhdGg6YmVmb3JlIHsgY29udGVudDogXCLviIxcIjsgfVxuXG4uZmEtYnV5c2VsbGFkczpiZWZvcmUgeyBjb250ZW50OiBcIu+IjVwiOyB9XG5cbi5mYS1jb25uZWN0ZGV2ZWxvcDpiZWZvcmUgeyBjb250ZW50OiBcIu+IjlwiOyB9XG5cbi5mYS1kYXNoY3ViZTpiZWZvcmUgeyBjb250ZW50OiBcIu+IkFwiOyB9XG5cbi5mYS1mb3J1bWJlZTpiZWZvcmUgeyBjb250ZW50OiBcIu+IkVwiOyB9XG5cbi5mYS1sZWFucHViOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iSXCI7IH1cblxuLmZhLXNlbGxzeTpiZWZvcmUgeyBjb250ZW50OiBcIu+Ik1wiOyB9XG5cbi5mYS1zaGlydHNpbmJ1bGs6YmVmb3JlIHsgY29udGVudDogXCLviJRcIjsgfVxuXG4uZmEtc2ltcGx5YnVpbHQ6YmVmb3JlIHsgY29udGVudDogXCLviJVcIjsgfVxuXG4uZmEtc2t5YXRsYXM6YmVmb3JlIHsgY29udGVudDogXCLviJZcIjsgfVxuXG4uZmEtY2FydC1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iXXCI7IH1cblxuLmZhLWNhcnQtYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIu+ImFwiOyB9XG5cbi5mYS1kaWFtb25kOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iZXCI7IH1cblxuLmZhLXNoaXA6YmVmb3JlIHsgY29udGVudDogXCLviJpcIjsgfVxuXG4uZmEtdXNlci1zZWNyZXQ6YmVmb3JlIHsgY29udGVudDogXCLviJtcIjsgfVxuXG4uZmEtbW90b3JjeWNsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+InFwiOyB9XG5cbi5mYS1zdHJlZXQtdmlldzpiZWZvcmUgeyBjb250ZW50OiBcIu+InVwiOyB9XG5cbi5mYS1oZWFydGJlYXQ6YmVmb3JlIHsgY29udGVudDogXCLviJ5cIjsgfVxuXG4uZmEtdmVudXM6YmVmb3JlIHsgY29udGVudDogXCLviKFcIjsgfVxuXG4uZmEtbWFyczpiZWZvcmUgeyBjb250ZW50OiBcIu+IolwiOyB9XG5cbi5mYS1tZXJjdXJ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ijXCI7IH1cblxuLmZhLWludGVyc2V4OmJlZm9yZSwgLmZhLXRyYW5zZ2VuZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74ikXCI7IH1cblxuLmZhLXRyYW5zZ2VuZGVyLWFsdDpiZWZvcmUgeyBjb250ZW50OiBcIu+IpVwiOyB9XG5cbi5mYS12ZW51cy1kb3VibGU6YmVmb3JlIHsgY29udGVudDogXCLviKZcIjsgfVxuXG4uZmEtbWFycy1kb3VibGU6YmVmb3JlIHsgY29udGVudDogXCLviKdcIjsgfVxuXG4uZmEtdmVudXMtbWFyczpiZWZvcmUgeyBjb250ZW50OiBcIu+IqFwiOyB9XG5cbi5mYS1tYXJzLXN0cm9rZTpiZWZvcmUgeyBjb250ZW50OiBcIu+IqVwiOyB9XG5cbi5mYS1tYXJzLXN0cm9rZS12OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74iqXCI7IH1cblxuLmZhLW1hcnMtc3Ryb2tlLWg6YmVmb3JlIHsgY29udGVudDogXCLviKtcIjsgfVxuXG4uZmEtbmV1dGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74isXCI7IH1cblxuLmZhLWdlbmRlcmxlc3M6YmVmb3JlIHsgY29udGVudDogXCLviK1cIjsgfVxuXG4uZmEtZmFjZWJvb2stb2ZmaWNpYWw6YmVmb3JlIHsgY29udGVudDogXCLviLBcIjsgfVxuXG4uZmEtcGludGVyZXN0LXA6YmVmb3JlIHsgY29udGVudDogXCLviLFcIjsgfVxuXG4uZmEtd2hhdHNhcHA6YmVmb3JlIHsgY29udGVudDogXCLviLJcIjsgfVxuXG4uZmEtc2VydmVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74izXCI7IH1cblxuLmZhLXVzZXItcGx1czpiZWZvcmUgeyBjb250ZW50OiBcIu+ItFwiOyB9XG5cbi5mYS11c2VyLXRpbWVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74i1XCI7IH1cblxuLmZhLWhvdGVsOmJlZm9yZSwgLmZhLWJlZDpiZWZvcmUgeyBjb250ZW50OiBcIu+ItlwiOyB9XG5cbi5mYS12aWFjb2luOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74i3XCI7IH1cblxuLmZhLXRyYWluOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74i4XCI7IH1cblxuLmZhLXN1YndheTpiZWZvcmUgeyBjb250ZW50OiBcIu+IuVwiOyB9XG5cbi5mYS1tZWRpdW06YmVmb3JlIHsgY29udGVudDogXCLviLpcIjsgfVxuXG4uZmEteWM6YmVmb3JlLCAuZmEteS1jb21iaW5hdG9yOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74i7XCI7IH1cblxuLmZhLW9wdGluLW1vbnN0ZXI6YmVmb3JlIHsgY29udGVudDogXCLviLxcIjsgfVxuXG4uZmEtb3BlbmNhcnQ6YmVmb3JlIHsgY29udGVudDogXCLviL1cIjsgfVxuXG4uZmEtZXhwZWRpdGVkc3NsOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74i+XCI7IH1cblxuLmZhLWJhdHRlcnktNDpiZWZvcmUsIC5mYS1iYXR0ZXJ5OmJlZm9yZSwgLmZhLWJhdHRlcnktZnVsbDpiZWZvcmUgeyBjb250ZW50OiBcIu+JgFwiOyB9XG5cbi5mYS1iYXR0ZXJ5LTM6YmVmb3JlLCAuZmEtYmF0dGVyeS10aHJlZS1xdWFydGVyczpiZWZvcmUgeyBjb250ZW50OiBcIu+JgVwiOyB9XG5cbi5mYS1iYXR0ZXJ5LTI6YmVmb3JlLCAuZmEtYmF0dGVyeS1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mCXCI7IH1cblxuLmZhLWJhdHRlcnktMTpiZWZvcmUsIC5mYS1iYXR0ZXJ5LXF1YXJ0ZXI6YmVmb3JlIHsgY29udGVudDogXCLviYNcIjsgfVxuXG4uZmEtYmF0dGVyeS0wOmJlZm9yZSwgLmZhLWJhdHRlcnktZW1wdHk6YmVmb3JlIHsgY29udGVudDogXCLviYRcIjsgfVxuXG4uZmEtbW91c2UtcG9pbnRlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+JhVwiOyB9XG5cbi5mYS1pLWN1cnNvcjpiZWZvcmUgeyBjb250ZW50OiBcIu+JhlwiOyB9XG5cbi5mYS1vYmplY3QtZ3JvdXA6YmVmb3JlIHsgY29udGVudDogXCLviYdcIjsgfVxuXG4uZmEtb2JqZWN0LXVuZ3JvdXA6YmVmb3JlIHsgY29udGVudDogXCLviYhcIjsgfVxuXG4uZmEtc3RpY2t5LW5vdGU6YmVmb3JlIHsgY29udGVudDogXCLviYlcIjsgfVxuXG4uZmEtc3RpY2t5LW5vdGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+JilwiOyB9XG5cbi5mYS1jYy1qY2I6YmVmb3JlIHsgY29udGVudDogXCLviYtcIjsgfVxuXG4uZmEtY2MtZGluZXJzLWNsdWI6YmVmb3JlIHsgY29udGVudDogXCLviYxcIjsgfVxuXG4uZmEtY2xvbmU6YmVmb3JlIHsgY29udGVudDogXCLviY1cIjsgfVxuXG4uZmEtYmFsYW5jZS1zY2FsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+JjlwiOyB9XG5cbi5mYS1ob3VyZ2xhc3MtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+JkFwiOyB9XG5cbi5mYS1ob3VyZ2xhc3MtMTpiZWZvcmUsIC5mYS1ob3VyZ2xhc3Mtc3RhcnQ6YmVmb3JlIHsgY29udGVudDogXCLviZFcIjsgfVxuXG4uZmEtaG91cmdsYXNzLTI6YmVmb3JlLCAuZmEtaG91cmdsYXNzLWhhbGY6YmVmb3JlIHsgY29udGVudDogXCLviZJcIjsgfVxuXG4uZmEtaG91cmdsYXNzLTM6YmVmb3JlLCAuZmEtaG91cmdsYXNzLWVuZDpiZWZvcmUgeyBjb250ZW50OiBcIu+Jk1wiOyB9XG5cbi5mYS1ob3VyZ2xhc3M6YmVmb3JlIHsgY29udGVudDogXCLviZRcIjsgfVxuXG4uZmEtaGFuZC1ncmFiLW86YmVmb3JlLCAuZmEtaGFuZC1yb2NrLW86YmVmb3JlIHsgY29udGVudDogXCLviZVcIjsgfVxuXG4uZmEtaGFuZC1zdG9wLW86YmVmb3JlLCAuZmEtaGFuZC1wYXBlci1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mWXCI7IH1cblxuLmZhLWhhbmQtc2Npc3NvcnMtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+Jl1wiOyB9XG5cbi5mYS1oYW5kLWxpemFyZC1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mYXCI7IH1cblxuLmZhLWhhbmQtc3BvY2stbzpiZWZvcmUgeyBjb250ZW50OiBcIu+JmVwiOyB9XG5cbi5mYS1oYW5kLXBvaW50ZXItbzpiZWZvcmUgeyBjb250ZW50OiBcIu+JmlwiOyB9XG5cbi5mYS1oYW5kLXBlYWNlLW86YmVmb3JlIHsgY29udGVudDogXCLviZtcIjsgfVxuXG4uZmEtdHJhZGVtYXJrOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mcXCI7IH1cblxuLmZhLXJlZ2lzdGVyZWQ6YmVmb3JlIHsgY29udGVudDogXCLviZ1cIjsgfVxuXG4uZmEtY3JlYXRpdmUtY29tbW9uczpiZWZvcmUgeyBjb250ZW50OiBcIu+JnlwiOyB9XG5cbi5mYS1nZzpiZWZvcmUgeyBjb250ZW50OiBcIu+JoFwiOyB9XG5cbi5mYS1nZy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCLviaFcIjsgfVxuXG4uZmEtdHJpcGFkdmlzb3I6YmVmb3JlIHsgY29udGVudDogXCLviaJcIjsgfVxuXG4uZmEtb2Rub2tsYXNzbmlraTpiZWZvcmUgeyBjb250ZW50OiBcIu+Jo1wiOyB9XG5cbi5mYS1vZG5va2xhc3NuaWtpLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIu+JpFwiOyB9XG5cbi5mYS1nZXQtcG9ja2V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mlXCI7IH1cblxuLmZhLXdpa2lwZWRpYS13OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mmXCI7IH1cblxuLmZhLXNhZmFyaTpiZWZvcmUgeyBjb250ZW50OiBcIu+Jp1wiOyB9XG5cbi5mYS1jaHJvbWU6YmVmb3JlIHsgY29udGVudDogXCLviahcIjsgfVxuXG4uZmEtZmlyZWZveDpiZWZvcmUgeyBjb250ZW50OiBcIu+JqVwiOyB9XG5cbi5mYS1vcGVyYTpiZWZvcmUgeyBjb250ZW50OiBcIu+JqlwiOyB9XG5cbi5mYS1pbnRlcm5ldC1leHBsb3JlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+Jq1wiOyB9XG5cbi5mYS10djpiZWZvcmUsIC5mYS10ZWxldmlzaW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74msXCI7IH1cblxuLmZhLWNvbnRhbzpiZWZvcmUgeyBjb250ZW50OiBcIu+JrVwiOyB9XG5cbi5mYS01MDBweDpiZWZvcmUgeyBjb250ZW50OiBcIu+JrlwiOyB9XG5cbi5mYS1hbWF6b246YmVmb3JlIHsgY29udGVudDogXCLvibBcIjsgfVxuXG4uZmEtY2FsZW5kYXItcGx1cy1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74mxXCI7IH1cblxuLmZhLWNhbGVuZGFyLW1pbnVzLW86YmVmb3JlIHsgY29udGVudDogXCLvibJcIjsgfVxuXG4uZmEtY2FsZW5kYXItdGltZXMtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+Js1wiOyB9XG5cbi5mYS1jYWxlbmRhci1jaGVjay1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74m0XCI7IH1cblxuLmZhLWluZHVzdHJ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74m1XCI7IH1cblxuLmZhLW1hcC1waW46YmVmb3JlIHsgY29udGVudDogXCLvibZcIjsgfVxuXG4uZmEtbWFwLXNpZ25zOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74m3XCI7IH1cblxuLmZhLW1hcC1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74m4XCI7IH1cblxuLmZhLW1hcDpiZWZvcmUgeyBjb250ZW50OiBcIu+JuVwiOyB9XG5cbi5mYS1jb21tZW50aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74m6XCI7IH1cblxuLmZhLWNvbW1lbnRpbmctbzpiZWZvcmUgeyBjb250ZW50OiBcIu+Ju1wiOyB9XG5cbi5mYS1ob3V6ejpiZWZvcmUgeyBjb250ZW50OiBcIu+JvFwiOyB9XG5cbi5mYS12aW1lbzpiZWZvcmUgeyBjb250ZW50OiBcIu+JvVwiOyB9XG5cbi5mYS1ibGFjay10aWU6YmVmb3JlIHsgY29udGVudDogXCLvib5cIjsgfVxuXG4uZmEtZm9udGljb25zOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qAXCI7IH1cblxuLmZhLXJlZGRpdC1hbGllbjpiZWZvcmUgeyBjb250ZW50OiBcIu+KgVwiOyB9XG5cbi5mYS1lZGdlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qCXCI7IH1cblxuLmZhLWNyZWRpdC1jYXJkLWFsdDpiZWZvcmUgeyBjb250ZW50OiBcIu+Kg1wiOyB9XG5cbi5mYS1jb2RpZXBpZTpiZWZvcmUgeyBjb250ZW50OiBcIu+KhFwiOyB9XG5cbi5mYS1tb2R4OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qFXCI7IH1cblxuLmZhLWZvcnQtYXdlc29tZTpiZWZvcmUgeyBjb250ZW50OiBcIu+KhlwiOyB9XG5cbi5mYS11c2I6YmVmb3JlIHsgY29udGVudDogXCLviodcIjsgfVxuXG4uZmEtcHJvZHVjdC1odW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qIXCI7IH1cblxuLmZhLW1peGNsb3VkOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qJXCI7IH1cblxuLmZhLXNjcmliZDpiZWZvcmUgeyBjb250ZW50OiBcIu+KilwiOyB9XG5cbi5mYS1wYXVzZS1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCLviotcIjsgfVxuXG4uZmEtcGF1c2UtY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogXCLvioxcIjsgfVxuXG4uZmEtc3RvcC1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCLvio1cIjsgfVxuXG4uZmEtc3RvcC1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+KjlwiOyB9XG5cbi5mYS1zaG9wcGluZy1iYWc6YmVmb3JlIHsgY29udGVudDogXCLvipBcIjsgfVxuXG4uZmEtc2hvcHBpbmctYmFza2V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qRXCI7IH1cblxuLmZhLWhhc2h0YWc6YmVmb3JlIHsgY29udGVudDogXCLvipJcIjsgfVxuXG4uZmEtYmx1ZXRvb3RoOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qTXCI7IH1cblxuLmZhLWJsdWV0b290aC1iOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qUXCI7IH1cblxuLmZhLXBlcmNlbnQ6YmVmb3JlIHsgY29udGVudDogXCLvipVcIjsgfVxuXG4uZmEtZ2l0bGFiOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qWXCI7IH1cblxuLmZhLXdwYmVnaW5uZXI6YmVmb3JlIHsgY29udGVudDogXCLvipdcIjsgfVxuXG4uZmEtd3Bmb3JtczpiZWZvcmUgeyBjb250ZW50OiBcIu+KmFwiOyB9XG5cbi5mYS1lbnZpcmE6YmVmb3JlIHsgY29udGVudDogXCLviplcIjsgfVxuXG4uZmEtdW5pdmVyc2FsLWFjY2VzczpiZWZvcmUgeyBjb250ZW50OiBcIu+KmlwiOyB9XG5cbi5mYS13aGVlbGNoYWlyLWFsdDpiZWZvcmUgeyBjb250ZW50OiBcIu+Km1wiOyB9XG5cbi5mYS1xdWVzdGlvbi1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+KnFwiOyB9XG5cbi5mYS1ibGluZDpiZWZvcmUgeyBjb250ZW50OiBcIu+KnVwiOyB9XG5cbi5mYS1hdWRpby1kZXNjcmlwdGlvbjpiZWZvcmUgeyBjb250ZW50OiBcIu+KnlwiOyB9XG5cbi5mYS12b2x1bWUtY29udHJvbC1waG9uZTpiZWZvcmUgeyBjb250ZW50OiBcIu+KoFwiOyB9XG5cbi5mYS1icmFpbGxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qhXCI7IH1cblxuLmZhLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczpiZWZvcmUgeyBjb250ZW50OiBcIu+KolwiOyB9XG5cbi5mYS1hc2wtaW50ZXJwcmV0aW5nOmJlZm9yZSwgLmZhLWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qjXCI7IH1cblxuLmZhLWRlYWZuZXNzOmJlZm9yZSwgLmZhLWhhcmQtb2YtaGVhcmluZzpiZWZvcmUsIC5mYS1kZWFmOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qkXCI7IH1cblxuLmZhLWdsaWRlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qlXCI7IH1cblxuLmZhLWdsaWRlLWc6YmVmb3JlIHsgY29udGVudDogXCLviqZcIjsgfVxuXG4uZmEtc2lnbmluZzpiZWZvcmUsIC5mYS1zaWduLWxhbmd1YWdlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qnXCI7IH1cblxuLmZhLWxvdy12aXNpb246YmVmb3JlIHsgY29udGVudDogXCLviqhcIjsgfVxuXG4uZmEtdmlhZGVvOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qpXCI7IH1cblxuLmZhLXZpYWRlby1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCLviqpcIjsgfVxuXG4uZmEtc25hcGNoYXQ6YmVmb3JlIHsgY29udGVudDogXCLviqtcIjsgfVxuXG4uZmEtc25hcGNoYXQtZ2hvc3Q6YmVmb3JlIHsgY29udGVudDogXCLviqxcIjsgfVxuXG4uZmEtc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qtXCI7IH1cblxuLmZhLXBpZWQtcGlwZXI6YmVmb3JlIHsgY29udGVudDogXCLviq5cIjsgfVxuXG4uZmEtZmlyc3Qtb3JkZXI6YmVmb3JlIHsgY29udGVudDogXCLvirBcIjsgfVxuXG4uZmEteW9hc3Q6YmVmb3JlIHsgY29udGVudDogXCLvirFcIjsgfVxuXG4uZmEtdGhlbWVpc2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74qyXCI7IH1cblxuLmZhLWdvb2dsZS1wbHVzLWNpcmNsZTpiZWZvcmUsIC5mYS1nb29nbGUtcGx1cy1vZmZpY2lhbDpiZWZvcmUgeyBjb250ZW50OiBcIu+Ks1wiOyB9XG5cbi5mYS1mYTpiZWZvcmUsIC5mYS1mb250LWF3ZXNvbWU6YmVmb3JlIHsgY29udGVudDogXCLvirRcIjsgfVxuXG4uZmEtaGFuZHNoYWtlLW86YmVmb3JlIHsgY29udGVudDogXCLvirVcIjsgfVxuXG4uZmEtZW52ZWxvcGUtb3BlbjpiZWZvcmUgeyBjb250ZW50OiBcIu+KtlwiOyB9XG5cbi5mYS1lbnZlbG9wZS1vcGVuLW86YmVmb3JlIHsgY29udGVudDogXCLvirdcIjsgfVxuXG4uZmEtbGlub2RlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74q4XCI7IH1cblxuLmZhLWFkZHJlc3MtYm9vazpiZWZvcmUgeyBjb250ZW50OiBcIu+KuVwiOyB9XG5cbi5mYS1hZGRyZXNzLWJvb2stbzpiZWZvcmUgeyBjb250ZW50OiBcIu+KulwiOyB9XG5cbi5mYS12Y2FyZDpiZWZvcmUsIC5mYS1hZGRyZXNzLWNhcmQ6YmVmb3JlIHsgY29udGVudDogXCLvirtcIjsgfVxuXG4uZmEtdmNhcmQtbzpiZWZvcmUsIC5mYS1hZGRyZXNzLWNhcmQtbzpiZWZvcmUgeyBjb250ZW50OiBcIu+KvFwiOyB9XG5cbi5mYS11c2VyLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIu+KvVwiOyB9XG5cbi5mYS11c2VyLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74q+XCI7IH1cblxuLmZhLXVzZXItbzpiZWZvcmUgeyBjb250ZW50OiBcIu+LgFwiOyB9XG5cbi5mYS1pZC1iYWRnZTpiZWZvcmUgeyBjb250ZW50OiBcIu+LgVwiOyB9XG5cbi5mYS1kcml2ZXJzLWxpY2Vuc2U6YmVmb3JlLCAuZmEtaWQtY2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIu+LglwiOyB9XG5cbi5mYS1kcml2ZXJzLWxpY2Vuc2UtbzpiZWZvcmUsIC5mYS1pZC1jYXJkLW86YmVmb3JlIHsgY29udGVudDogXCLvi4NcIjsgfVxuXG4uZmEtcXVvcmE6YmVmb3JlIHsgY29udGVudDogXCLvi4RcIjsgfVxuXG4uZmEtZnJlZS1jb2RlLWNhbXA6YmVmb3JlIHsgY29udGVudDogXCLvi4VcIjsgfVxuXG4uZmEtdGVsZWdyYW06YmVmb3JlIHsgY29udGVudDogXCLvi4ZcIjsgfVxuXG4uZmEtdGhlcm1vbWV0ZXItNDpiZWZvcmUsIC5mYS10aGVybW9tZXRlcjpiZWZvcmUsIC5mYS10aGVybW9tZXRlci1mdWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uHXCI7IH1cblxuLmZhLXRoZXJtb21ldGVyLTM6YmVmb3JlLCAuZmEtdGhlcm1vbWV0ZXItdGhyZWUtcXVhcnRlcnM6YmVmb3JlIHsgY29udGVudDogXCLvi4hcIjsgfVxuXG4uZmEtdGhlcm1vbWV0ZXItMjpiZWZvcmUsIC5mYS10aGVybW9tZXRlci1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uJXCI7IH1cblxuLmZhLXRoZXJtb21ldGVyLTE6YmVmb3JlLCAuZmEtdGhlcm1vbWV0ZXItcXVhcnRlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+LilwiOyB9XG5cbi5mYS10aGVybW9tZXRlci0wOmJlZm9yZSwgLmZhLXRoZXJtb21ldGVyLWVtcHR5OmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uLXCI7IH1cblxuLmZhLXNob3dlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+LjFwiOyB9XG5cbi5mYS1iYXRodHViOmJlZm9yZSwgLmZhLXMxNTpiZWZvcmUsIC5mYS1iYXRoOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uNXCI7IH1cblxuLmZhLXBvZGNhc3Q6YmVmb3JlIHsgY29udGVudDogXCLvi45cIjsgfVxuXG4uZmEtd2luZG93LW1heGltaXplOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uQXCI7IH1cblxuLmZhLXdpbmRvdy1taW5pbWl6ZTpiZWZvcmUgeyBjb250ZW50OiBcIu+LkVwiOyB9XG5cbi5mYS13aW5kb3ctcmVzdG9yZTpiZWZvcmUgeyBjb250ZW50OiBcIu+LklwiOyB9XG5cbi5mYS10aW1lcy1yZWN0YW5nbGU6YmVmb3JlLCAuZmEtd2luZG93LWNsb3NlOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uTXCI7IH1cblxuLmZhLXRpbWVzLXJlY3RhbmdsZS1vOmJlZm9yZSwgLmZhLXdpbmRvdy1jbG9zZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uUXCI7IH1cblxuLmZhLWJhbmRjYW1wOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uVXCI7IH1cblxuLmZhLWdyYXY6YmVmb3JlIHsgY29udGVudDogXCLvi5ZcIjsgfVxuXG4uZmEtZXRzeTpiZWZvcmUgeyBjb250ZW50OiBcIu+Ll1wiOyB9XG5cbi5mYS1pbWRiOmJlZm9yZSB7IGNvbnRlbnQ6IFwi74uYXCI7IH1cblxuLmZhLXJhdmVscnk6YmVmb3JlIHsgY29udGVudDogXCLvi5lcIjsgfVxuXG4uZmEtZWVyY2FzdDpiZWZvcmUgeyBjb250ZW50OiBcIu+LmlwiOyB9XG5cbi5mYS1taWNyb2NoaXA6YmVmb3JlIHsgY29udGVudDogXCLvi5tcIjsgfVxuXG4uZmEtc25vd2ZsYWtlLW86YmVmb3JlIHsgY29udGVudDogXCLvi5xcIjsgfVxuXG4uZmEtc3VwZXJwb3dlcnM6YmVmb3JlIHsgY29udGVudDogXCLvi51cIjsgfVxuXG4uZmEtd3BleHBsb3JlcjpiZWZvcmUgeyBjb250ZW50OiBcIu+LnlwiOyB9XG5cbi5mYS1tZWV0dXA6YmVmb3JlIHsgY29udGVudDogXCLvi6BcIjsgfVxuXG4uc3Itb25seSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDFweDsgaGVpZ2h0OiAxcHg7IHBhZGRpbmc6IDA7IG1hcmdpbjogLTFweDsgb3ZlcmZsb3c6IGhpZGRlbjsgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTsgYm9yZGVyOiAwOyB9XG5cbi5zci1vbmx5LWZvY3VzYWJsZTphY3RpdmUsIC5zci1vbmx5LWZvY3VzYWJsZTpmb2N1cyB7IHBvc2l0aW9uOiBzdGF0aWM7IHdpZHRoOiBhdXRvOyBoZWlnaHQ6IGF1dG87IG1hcmdpbjogMDsgb3ZlcmZsb3c6IHZpc2libGU7IGNsaXA6IGF1dG87IH1cblxuLyohIEhhbWJ1cmdlcnMgQGRlc2NyaXB0aW9uIFRhc3R5IENTUy1hbmltYXRlZCBoYW1idXJnZXJzIEBhdXRob3IgSm9uYXRoYW4gU3VoIEBqb25zdWggQHNpdGUgaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnMgQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2pvbnN1aC9oYW1idXJnZXJzICovXG4uaGFtYnVyZ2VyIHsgcGFkZGluZzogMTBweCAxMHB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGN1cnNvcjogcG9pbnRlcjsgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgZmlsdGVyOyB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1czsgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgZm9udDogaW5oZXJpdDsgY29sb3I6IGluaGVyaXQ7IHRleHQtdHJhbnNmb3JtOiBub25lOyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgYm9yZGVyOiAwOyBtYXJnaW46IDA7IG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi5oYW1idXJnZXI6aG92ZXIsIGEuaGFtYnVyZ2VyLmFjdGl2ZSwgYnV0dG9uLmhhbWJ1cmdlci5hY3RpdmUgeyBvcGFjaXR5OiAwLjc7IH1cblxuLmhhbWJ1cmdlci5pcy1hY3RpdmU6aG92ZXIsIGEuaGFtYnVyZ2VyLmlzLWFjdGl2ZS5hY3RpdmUsIGJ1dHRvbi5oYW1idXJnZXIuaXMtYWN0aXZlLmFjdGl2ZSB7IG9wYWNpdHk6IDAuNzsgfVxuXG4uaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyLCAuaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG4uaGFtYnVyZ2VyLWJveCB7IHdpZHRoOiAyMnB4OyBoZWlnaHQ6IDE2cHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5oYW1idXJnZXItaW5uZXIgeyBkaXNwbGF5OiBibG9jazsgdG9wOiA1MCU7IG1hcmdpbi10b3A6IC0xcHg7IH1cblxuLmhhbWJ1cmdlci1pbm5lciwgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7IHdpZHRoOiAyMnB4OyBoZWlnaHQ6IDJweDsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogNHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7IHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlOyB9XG5cbi5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBkaXNwbGF5OiBibG9jazsgfVxuXG4uaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUgeyB0b3A6IC03cHg7IH1cblxuLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIgeyBib3R0b206IC03cHg7IH1cblxuLyogU3RhbmQgKi9cbi5oYW1idXJnZXItLXN0YW5kIC5oYW1idXJnZXItaW5uZXIgeyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMDc1cyBsaW5lYXI7IH1cblxuLmhhbWJ1cmdlci0tc3RhbmQgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHsgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjA3NXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1zdGFuZCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7IHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cblxuLmhhbWJ1cmdlci0tc3RhbmQuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIgeyB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xNXMgbGluZWFyOyB9XG5cbi5oYW1idXJnZXItLXN0YW5kLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUgeyB0b3A6IDA7IHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7IHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS1zdGFuZC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIgeyBib3R0b206IDA7IHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG5cbi8qIFN0YW5kIFJldmVyc2UgKi9cbi5oYW1idXJnZXItLXN0YW5kLXIgLmhhbWJ1cmdlci1pbm5lciB7IHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4wNzVzIGxpbmVhcjsgfVxuXG4uaGFtYnVyZ2VyLS1zdGFuZC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7IHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cblxuLmhhbWJ1cmdlci0tc3RhbmQtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7IHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cblxuLmhhbWJ1cmdlci0tc3RhbmQtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7IHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xNXMgbGluZWFyOyB9XG5cbi5oYW1idXJnZXItLXN0YW5kLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7IHRvcDogMDsgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG5cbi5oYW1idXJnZXItLXN0YW5kLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHsgYm90dG9tOiAwOyB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4vKiBPd2wgQ2Fyb3VzZWwgLSBDb3JlICovXG4ub3dsLWNhcm91c2VsIHsgZGlzcGxheTogbm9uZTsgd2lkdGg6IDEwMCU7IC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIHBvc2l0aW9uIHJlbGF0aXZlIGFuZCB6LWluZGV4IGZpeCB3ZWJraXQgcmVuZGVyaW5nIGZvbnRzIGlzc3VlICovIHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogMTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2UgeyBwb3NpdGlvbjogcmVsYXRpdmU7IC1tcy10b3VjaC1hY3Rpb246IHBhbi1ZOyB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjsgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IC8qIGZpeCBmaXJlZm94IGFuaW1hdGlvbiBnbGl0Y2ggKi8gfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2U6YWZ0ZXIgeyBjb250ZW50OiBcIi5cIjsgZGlzcGxheTogYmxvY2s7IGNsZWFyOiBib3RoOyB2aXNpYmlsaXR5OiBoaWRkZW47IGxpbmUtaGVpZ2h0OiAwOyBoZWlnaHQ6IDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyBvdmVyZmxvdzogaGlkZGVuOyAvKiBmaXggZm9yIGZsYXNoaW5nIGJhY2tncm91bmQgKi8gLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC13cmFwcGVyLCAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7IC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHsgcG9zaXRpb246IHJlbGF0aXZlOyBtaW4taGVpZ2h0OiAxcHg7IGZsb2F0OiBsZWZ0OyAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIGltZyB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMTAwJTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtbmF2LmRpc2FibGVkLCAub3dsLWNhcm91c2VsIC5vd2wtZG90cy5kaXNhYmxlZCB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLXByZXYsIC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1uZXh0LCAub3dsLWNhcm91c2VsIC5vd2wtZG90IHsgY3Vyc29yOiBwb2ludGVyOyAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOyAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7IC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7IC1tcy11c2VyLXNlbGVjdDogbm9uZTsgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLW5hdiBidXR0b24ub3dsLXByZXYsIC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1uZXh0LCAub3dsLWNhcm91c2VsIGJ1dHRvbi5vd2wtZG90IHsgYmFja2dyb3VuZDogbm9uZTsgY29sb3I6IGluaGVyaXQ7IGJvcmRlcjogbm9uZTsgcGFkZGluZzogMCAhaW1wb3J0YW50OyBmb250OiBpbmhlcml0OyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZCB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWxvYWRpbmcgeyBvcGFjaXR5OiAwOyBkaXNwbGF5OiBibG9jazsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1oaWRkZW4geyBvcGFjaXR5OiAwOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLXJlZnJlc2ggLm93bC1pdGVtIHsgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWRyYWcgLm93bC1pdGVtIHsgdG91Y2gtYWN0aW9uOiBwYW4teTsgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgLW1vei11c2VyLXNlbGVjdDogbm9uZTsgLW1zLXVzZXItc2VsZWN0OiBub25lOyB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1ncmFiIHsgY3Vyc29yOiBtb3ZlOyBjdXJzb3I6IGdyYWI7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtcnRsIHsgZGlyZWN0aW9uOiBydGw7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtcnRsIC5vd2wtaXRlbSB7IGZsb2F0OiByaWdodDsgfVxuXG4vKiBObyBKcyAqL1xuLm5vLWpzIC5vd2wtY2Fyb3VzZWwgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiBPd2wgQ2Fyb3VzZWwgLSBBbmltYXRlIFBsdWdpbiAqL1xuLm93bC1jYXJvdXNlbCAuYW5pbWF0ZWQgeyBhbmltYXRpb24tZHVyYXRpb246IDEwMDBtczsgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtYW5pbWF0ZWQtaW4geyB6LWluZGV4OiAwOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1vdXQgeyB6LWluZGV4OiAxOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLmZhZGVPdXQgeyBhbmltYXRpb24tbmFtZTogZmFkZU91dDsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXQgeyAwJSB7IG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDA7IH0gfVxuXG4vKiBPd2wgQ2Fyb3VzZWwgLSBBdXRvIEhlaWdodCBQbHVnaW4gKi9cbi5vd2wtaGVpZ2h0IHsgdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0OyB9XG5cbi8qIE93bCBDYXJvdXNlbCAtIExhenkgTG9hZCBQbHVnaW4gKi9cbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHsgLyoqIFRoaXMgaXMgaW50cm9kdWNlZCBkdWUgdG8gYSBidWcgaW4gSUUxMSB3aGVyZSBsYXp5IGxvYWRpbmcgY29tYmluZWQgd2l0aCBhdXRvaGVpZ2h0IHBsdWdpbiBjYXVzZXMgYSB3cm9uZyBjYWxjdWxhdGlvbiBvZiB0aGUgaGVpZ2h0IG9mIHRoZSBvd2wtaXRlbSB0aGF0IGJyZWFrcyBwYWdlIGxheW91dHMgKi8gfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenkgeyBvcGFjaXR5OiAwOyB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gLm93bC1sYXp5W3NyY149XCJcIl0sIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5vd2wtbGF6eTpub3QoW3NyY10pIHsgbWF4LWhlaWdodDogMDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWcub3dsLWxhenkgeyB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyB9XG5cbi8qIE93bCBDYXJvdXNlbCAtIFZpZGVvIFBsdWdpbiAqL1xuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXdyYXBwZXIgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGhlaWdodDogMTAwJTsgYmFja2dyb3VuZDogIzAwMDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheS1pY29uIHsgcG9zaXRpb246IGFic29sdXRlOyBoZWlnaHQ6IDgwcHg7IHdpZHRoOiA4MHB4OyBsZWZ0OiA1MCU7IHRvcDogNTAlOyBtYXJnaW4tbGVmdDogLTQwcHg7IG1hcmdpbi10b3A6IC00MHB4OyBiYWNrZ3JvdW5kOiB1cmwoXCJvd2wudmlkZW8ucGxheS5wbmdcIikgbm8tcmVwZWF0OyBjdXJzb3I6IHBvaW50ZXI7IHotaW5kZXg6IDE7IC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTAwbXMgZWFzZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheS1pY29uOmhvdmVyLCAub3dsLWNhcm91c2VsIGEub3dsLXZpZGVvLXBsYXktaWNvbi5hY3RpdmUsIC5vd2wtY2Fyb3VzZWwgYnV0dG9uLm93bC12aWRlby1wbGF5LWljb24uYWN0aXZlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjMsIDEuMyk7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby10biwgLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby1wbGF5LWljb24geyBkaXNwbGF5OiBub25lOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby10biB7IG9wYWNpdHk6IDA7IGhlaWdodDogMTAwJTsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLWZyYW1lIHsgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAxOyBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlOyB9XG5cbi5mZWF0aGVybGlnaHQtY2xvc2UtaWNvbjphZnRlciB7IGNvbnRlbnQ6IG5vbmU7IH1cblxuLyoqIEJyYW5kIENvbG9ycyBJbXBvcnRhbnQ6IElmIGNoYW5naW5nIHRoZW1lIGNvbG91cnMsIHJlbWVtYmVyIHRvIGNoYW5nZSB0aGVtIGluIHRoZSBFTEYgY2hpbGQgdGhlbWUgdG9vIGZvciBzdHJpbmcgcmVwbGFjZW1lbnQgKi9cbi8qIG9sZCBzdHlsaW5nIGZhbGxiYWNrICovXG4ucHctcHJvdGVjdCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyIHsgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi8qKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBWZXJzaW9uIDYuNi4zIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb24gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlICovXG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5odG1sIHsgbGluZS1oZWlnaHQ6IDEuMTU7IC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgfVxuXG5ib2R5IHsgbWFyZ2luOiAwOyB9XG5cbmgxIHsgZm9udC1zaXplOiAyZW07IG1hcmdpbjogMC42N2VtIDA7IH1cblxuaHIgeyBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgaGVpZ2h0OiAwOyBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG5wcmUgeyBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IGZvbnQtc2l6ZTogMWVtOyB9XG5cbmEgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5hYmJyW3RpdGxlXSB7IGJvcmRlci1ib3R0b206IG5vbmU7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IH1cblxuYiwgc3Ryb25nLCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBoMSwgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgaDIsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IGgzLCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBoNCwgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgaDUsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IHAsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IGg2LCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCAudXBkYXRlZCAuZGF0ZSwgLnVwZGF0ZWQgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgLmRhdGUgeyBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbmNvZGUsIGtiZCwgc2FtcCB7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgZm9udC1zaXplOiAxZW07IH1cblxuc21hbGwgeyBmb250LXNpemU6IDgwJTsgfVxuXG5zdWIsIHN1cCB7IGZvbnQtc2l6ZTogNzUlOyBsaW5lLWhlaWdodDogMDsgcG9zaXRpb246IHJlbGF0aXZlOyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHsgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7IHRvcDogLTAuNWVtOyB9XG5cbmltZyB7IGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG5idXR0b24sIGlucHV0LCBvcHRncm91cCwgc2VsZWN0LCB0ZXh0YXJlYSB7IGZvbnQtZmFtaWx5OiBpbmhlcml0OyBmb250LXNpemU6IDEwMCU7IGxpbmUtaGVpZ2h0OiAxLjE1OyBtYXJnaW46IDA7IH1cblxuYnV0dG9uLCBpbnB1dCB7IG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbmJ1dHRvbiwgc2VsZWN0IHsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuYnV0dG9uLCBbdHlwZT1cImJ1dHRvblwiXSwgW3R5cGU9XCJyZXNldFwiXSwgW3R5cGU9XCJzdWJtaXRcIl0geyAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgfVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLCBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLCBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7IGJvcmRlci1zdHlsZTogbm9uZTsgcGFkZGluZzogMDsgfVxuXG5idXR0b246LW1vei1mb2N1c3JpbmcsIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLCBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLCBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7IG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG5maWVsZHNldCB7IHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTsgfVxuXG5sZWdlbmQgeyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBjb2xvcjogaW5oZXJpdDsgZGlzcGxheTogdGFibGU7IG1heC13aWR0aDogMTAwJTsgcGFkZGluZzogMDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuXG5wcm9ncmVzcyB7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG50ZXh0YXJlYSB7IG92ZXJmbG93OiBhdXRvOyB9XG5cblt0eXBlPVwiY2hlY2tib3hcIl0sIFt0eXBlPVwicmFkaW9cIl0geyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBwYWRkaW5nOiAwOyB9XG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLCBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7IGhlaWdodDogYXV0bzsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7IC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyBvdXRsaW5lLW9mZnNldDogLTJweDsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7IC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHsgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IGZvbnQ6IGluaGVyaXQ7IH1cblxuZGV0YWlscyB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbnN1bW1hcnkgeyBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxudGVtcGxhdGUgeyBkaXNwbGF5OiBub25lOyB9XG5cbltoaWRkZW5dIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uZm91bmRhdGlvbi1tcSB7IGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDBlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbVwiOyB9XG5cbmh0bWwgeyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBmb250LXNpemU6IDEwMCU7IH1cblxuKiwgKjo6YmVmb3JlLCAqOjphZnRlciB7IGJveC1zaXppbmc6IGluaGVyaXQ7IH1cblxuYm9keSB7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgYmFja2dyb3VuZDogI0ZGRjsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV82NSBNZWRpdW0xNDc1NTMyXCIsIHNhbnMtc2VyaWY7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGxpbmUtaGVpZ2h0OiAxLjU7IGNvbG9yOiAjNTI1MjQ1OyAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG5pbWcgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IG1heC13aWR0aDogMTAwJTsgaGVpZ2h0OiBhdXRvOyAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyB9XG5cbnRleHRhcmVhIHsgaGVpZ2h0OiBhdXRvOyBtaW4taGVpZ2h0OiA1MHB4OyBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuc2VsZWN0IHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgd2lkdGg6IDEwMCU7IGJvcmRlci1yYWRpdXM6IDVweDsgfVxuXG4ubWFwX2NhbnZhcyBpbWcsIC5tYXBfY2FudmFzIGVtYmVkLCAubWFwX2NhbnZhcyBvYmplY3QsIC5tcWEtZGlzcGxheSBpbWcsIC5tcWEtZGlzcGxheSBlbWJlZCwgLm1xYS1kaXNwbGF5IG9iamVjdCB7IG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmJ1dHRvbiB7IHBhZGRpbmc6IDA7IGFwcGVhcmFuY2U6IG5vbmU7IGJvcmRlcjogMDsgYm9yZGVyLXJhZGl1czogNXB4OyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgbGluZS1oZWlnaHQ6IDE7IGN1cnNvcjogYXV0bzsgfVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYnV0dG9uIHsgb3V0bGluZTogMDsgfVxuXG5wcmUgeyBvdmVyZmxvdzogYXV0bzsgfVxuXG5idXR0b24sIGlucHV0LCBvcHRncm91cCwgc2VsZWN0LCB0ZXh0YXJlYSB7IGZvbnQtZmFtaWx5OiBpbmhlcml0OyB9XG5cbi5pcy12aXNpYmxlIHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uaXMtaGlkZGVuIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5yb3cgeyBtYXgtd2lkdGg6IDgzLjc1cmVtOyBtYXJnaW4tcmlnaHQ6IGF1dG87IG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi5yb3c6OmJlZm9yZSwgLnJvdzo6YWZ0ZXIgeyBkaXNwbGF5OiB0YWJsZTsgY29udGVudDogJyAnOyBmbGV4LWJhc2lzOiAwOyBvcmRlcjogMTsgfVxuXG4ucm93OjphZnRlciB7IGNsZWFyOiBib3RoOyB9XG5cbi5yb3cuY29sbGFwc2UgPiAuY29sdW1uLCAucm93LmNvbGxhcHNlID4gLmNvbHVtbnMgeyBwYWRkaW5nLXJpZ2h0OiAwOyBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLnJvdyAucm93IHsgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07IG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLnJvdyAucm93IHsgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtOyBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5yb3cgLnJvdyB7IG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTsgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuXG4ucm93IC5yb3cuY29sbGFwc2UgeyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5yb3cuZXhwYW5kZWQgeyBtYXgtd2lkdGg6IG5vbmU7IH1cblxuLnJvdy5leHBhbmRlZCAucm93IHsgbWFyZ2luLXJpZ2h0OiBhdXRvOyBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4ucm93Om5vdCguZXhwYW5kZWQpIC5yb3cgeyBtYXgtd2lkdGg6IG5vbmU7IH1cblxuLnJvdy5ndXR0ZXItc21hbGwgPiAuY29sdW1uLCAucm93Lmd1dHRlci1zbWFsbCA+IC5jb2x1bW5zIHsgcGFkZGluZy1yaWdodDogMC42MjVyZW07IHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cblxuLnJvdy5ndXR0ZXItbWVkaXVtID4gLmNvbHVtbiwgLnJvdy5ndXR0ZXItbWVkaXVtID4gLmNvbHVtbnMgeyBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG5cbi5jb2x1bW4sIC5jb2x1bW5zIHsgd2lkdGg6IDEwMCU7IGZsb2F0OiBsZWZ0OyBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTsgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuY29sdW1uLCAuY29sdW1ucyB7IHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuXG4uY29sdW1uLCAuY29sdW1ucywgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHsgZmxvYXQ6IGxlZnQ7IGNsZWFyOiBub25lOyB9XG5cbi5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7IGZsb2F0OiByaWdodDsgfVxuXG4uY29sdW1uLmVuZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5lbmQuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuXG4uY29sdW1uLnJvdy5yb3csIC5yb3cucm93LmNvbHVtbnMgeyBmbG9hdDogbm9uZTsgfVxuXG4ucm93IC5jb2x1bW4ucm93LnJvdywgLnJvdyAucm93LnJvdy5jb2x1bW5zIHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgcGFkZGluZy1yaWdodDogMDsgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5zbWFsbC0xIHsgd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTEgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTEgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC04LjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTAgeyBtYXJnaW4tbGVmdDogMCU7IH1cblxuLnNtYWxsLTIgeyB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTIgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtcHVsbC0yIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtMSB7IG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtMyB7IHdpZHRoOiAyNSU7IH1cblxuLnNtYWxsLXB1c2gtMyB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogMjUlOyB9XG5cbi5zbWFsbC1wdWxsLTMgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC0yNSU7IH1cblxuLnNtYWxsLW9mZnNldC0yIHsgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtNCB7IHdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtNCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTQgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC0zMy4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC0zIHsgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuXG4uc21hbGwtNSB7IHdpZHRoOiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtNSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogNDEuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTUgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC00MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC00IHsgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtNiB7IHdpZHRoOiA1MCU7IH1cblxuLnNtYWxsLXB1c2gtNiB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogNTAlOyB9XG5cbi5zbWFsbC1wdWxsLTYgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC01MCU7IH1cblxuLnNtYWxsLW9mZnNldC01IHsgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uc21hbGwtNyB7IHdpZHRoOiA1OC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtNyB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTcgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC01OC4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC02IHsgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuXG4uc21hbGwtOCB7IHdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtOCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogNjYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTggeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC02Ni42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC03IHsgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtOSB7IHdpZHRoOiA3NSU7IH1cblxuLnNtYWxsLXB1c2gtOSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogNzUlOyB9XG5cbi5zbWFsbC1wdWxsLTkgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC03NSU7IH1cblxuLnNtYWxsLW9mZnNldC04IHsgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uc21hbGwtMTAgeyB3aWR0aDogODMuMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTEwIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtMTAgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC04My4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC05IHsgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uc21hbGwtMTEgeyB3aWR0aDogOTEuNjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTExIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtMTEgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC05MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7IG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLTEyIHsgd2lkdGg6IDEwMCU7IH1cblxuLnNtYWxsLW9mZnNldC0xMSB7IG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLXVwLTEgPiAuY29sdW1uLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cblxuLnNtYWxsLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHsgY2xlYXI6IGJvdGg7IH1cblxuLnNtYWxsLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC0yID4gLmNvbHVtbiwgLnNtYWxsLXVwLTIgPiAuY29sdW1ucyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogNTAlOyB9XG5cbi5zbWFsbC11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cblxuLnNtYWxsLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHsgY2xlYXI6IGJvdGg7IH1cblxuLnNtYWxsLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC0zID4gLmNvbHVtbiwgLnNtYWxsLXVwLTMgPiAuY29sdW1ucyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cblxuLnNtYWxsLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHsgY2xlYXI6IGJvdGg7IH1cblxuLnNtYWxsLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTQgPiAuY29sdW1ucyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogMjUlOyB9XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cblxuLnNtYWxsLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHsgY2xlYXI6IGJvdGg7IH1cblxuLnNtYWxsLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC01ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTUgPiAuY29sdW1ucyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogMjAlOyB9XG5cbi5zbWFsbC11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cblxuLnNtYWxsLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHsgY2xlYXI6IGJvdGg7IH1cblxuLnNtYWxsLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC02ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTYgPiAuY29sdW1ucyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cblxuLnNtYWxsLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHsgY2xlYXI6IGJvdGg7IH1cblxuLnNtYWxsLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC03ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTcgPiAuY29sdW1ucyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogMTQuMjg1NzElOyB9XG5cbi5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cblxuLnNtYWxsLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHsgY2xlYXI6IGJvdGg7IH1cblxuLnNtYWxsLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC04ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTggPiAuY29sdW1ucyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogMTIuNSU7IH1cblxuLnNtYWxsLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuXG4uc21hbGwtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkgeyBjbGVhcjogYm90aDsgfVxuXG4uc21hbGwtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHsgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbnMgeyBwYWRkaW5nLXJpZ2h0OiAwOyBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLnNtYWxsLWNvbGxhcHNlIC5yb3cgeyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5leHBhbmRlZC5yb3cgLnNtYWxsLWNvbGxhcHNlLnJvdyB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHsgcGFkZGluZy1yaWdodDogMC42MjVyZW07IHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cblxuLnNtYWxsLWNlbnRlcmVkIHsgbWFyZ2luLXJpZ2h0OiBhdXRvOyBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4uc21hbGwtY2VudGVyZWQsIC5zbWFsbC1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHsgZmxvYXQ6IG5vbmU7IGNsZWFyOiBib3RoOyB9XG5cbi5zbWFsbC11bmNlbnRlcmVkLCAuc21hbGwtcHVzaC0wLCAuc21hbGwtcHVsbC0wIHsgcG9zaXRpb246IHN0YXRpYzsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuXG4uc21hbGwtdW5jZW50ZXJlZCwgLnNtYWxsLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLnNtYWxsLXB1c2gtMCwgLnNtYWxsLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuc21hbGwtcHVsbC0wLCAuc21hbGwtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgeyBmbG9hdDogbGVmdDsgY2xlYXI6IG5vbmU7IH1cblxuLnNtYWxsLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLnNtYWxsLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuc21hbGwtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgeyBmbG9hdDogcmlnaHQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLm1lZGl1bS0xIHsgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC0xIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtMSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTAgeyBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLm1lZGl1bS0yIHsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtMiB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC0yIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEgeyBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS0zIHsgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLXB1c2gtMyB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogMjUlOyB9XG4gIC5tZWRpdW0tcHVsbC0zIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtMjUlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIgeyBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tNCB7IHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdXNoLTQgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtNCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0zIHsgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAubWVkaXVtLTUgeyB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVzaC01IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTUgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC00MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNCB7IG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS02IHsgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLXB1c2gtNiB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogNTAlOyB9XG4gIC5tZWRpdW0tcHVsbC02IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtNTAlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTUgeyBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tNyB7IHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdXNoLTcgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtNyB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC02IHsgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAubWVkaXVtLTggeyB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVzaC04IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTggeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC02Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7IG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS05IHsgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLXB1c2gtOSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogNzUlOyB9XG4gIC5tZWRpdW0tcHVsbC05IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtNzUlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTggeyBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tMTAgeyB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC0xMCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC0xMCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC05IHsgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAubWVkaXVtLTExIHsgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtMTEgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtMTEgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IC05MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAgeyBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tMTIgeyB3aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7IG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbiwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHsgY2xlYXI6IGJvdGg7IH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHsgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbiwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkgeyBjbGVhcjogYm90aDsgfVxuICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uLCAubWVkaXVtLXVwLTMgPiAuY29sdW1ucyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7IGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHsgY2xlYXI6IGJvdGg7IH1cbiAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHsgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbiwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDIwJTsgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkgeyBjbGVhcjogYm90aDsgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uLCAubWVkaXVtLXVwLTYgPiAuY29sdW1ucyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7IGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zIHsgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHsgY2xlYXI6IGJvdGg7IH1cbiAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHsgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbiwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDEyLjUlOyB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7IGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMgeyBwYWRkaW5nLXJpZ2h0OiAwOyBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLm1lZGl1bS1jb2xsYXBzZSAucm93IHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuICAuZXhwYW5kZWQucm93IC5tZWRpdW0tY29sbGFwc2Uucm93IHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuICAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7IHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cbiAgLm1lZGl1bS1jZW50ZXJlZCB7IG1hcmdpbi1yaWdodDogYXV0bzsgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLm1lZGl1bS1jZW50ZXJlZCwgLm1lZGl1bS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHsgZmxvYXQ6IG5vbmU7IGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tdW5jZW50ZXJlZCwgLm1lZGl1bS1wdXNoLTAsIC5tZWRpdW0tcHVsbC0wIHsgcG9zaXRpb246IHN0YXRpYzsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuICAubWVkaXVtLXVuY2VudGVyZWQsIC5tZWRpdW0tdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubWVkaXVtLXB1c2gtMCwgLm1lZGl1bS1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLm1lZGl1bS1wdWxsLTAsIC5tZWRpdW0tcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgeyBmbG9hdDogbGVmdDsgY2xlYXI6IG5vbmU7IH1cbiAgLm1lZGl1bS11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5tZWRpdW0tcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5tZWRpdW0tcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgeyBmbG9hdDogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAubGFyZ2UtMSB7IHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC0xIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC0xIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC0wIHsgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5sYXJnZS0yIHsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC0yIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtMiB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogLTE2LjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEgeyBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLTMgeyB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1wdXNoLTMgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDI1JTsgfVxuICAubGFyZ2UtcHVsbC0zIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtMjUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMiB7IG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLTQgeyB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTQgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC00IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7IG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmxhcmdlLTUgeyB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTUgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC01IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7IG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLTYgeyB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1wdXNoLTYgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDUwJTsgfVxuICAubGFyZ2UtcHVsbC02IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtNTAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7IG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLTcgeyB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTcgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC03IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7IG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmxhcmdlLTggeyB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTggeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC04IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7IG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLTkgeyB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1wdXNoLTkgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDc1JTsgfVxuICAubGFyZ2UtcHVsbC05IHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtNzUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7IG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLTEwIHsgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC0xMCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1wdWxsLTEwIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7IG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmxhcmdlLTExIHsgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC0xMSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgbGVmdDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1wdWxsLTExIHsgcG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAtOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTAgeyBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS0xMiB7IHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTEgeyBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbiwgLmxhcmdlLXVwLTEgPiAuY29sdW1ucyB7IGZsb2F0OiBsZWZ0OyB3aWR0aDogMTAwJTsgfVxuICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7IGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW4sIC5sYXJnZS11cC0yID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7IGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW4sIC5sYXJnZS11cC0zID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7IGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW4sIC5sYXJnZS11cC00ID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7IGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC5sYXJnZS11cC01ID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDIwJTsgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7IGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNiA+IC5jb2x1bW4sIC5sYXJnZS11cC02ID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7IGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNyA+IC5jb2x1bW4sIC5sYXJnZS11cC03ID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7IGNsZWFyOiBub25lOyB9XG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7IGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgeyBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtOCA+IC5jb2x1bW4sIC5sYXJnZS11cC04ID4gLmNvbHVtbnMgeyBmbG9hdDogbGVmdDsgd2lkdGg6IDEyLjUlOyB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHsgY2xlYXI6IGJvdGg7IH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7IGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW5zIHsgcGFkZGluZy1yaWdodDogMDsgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5sYXJnZS1jb2xsYXBzZSAucm93IHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuICAuZXhwYW5kZWQucm93IC5sYXJnZS1jb2xsYXBzZS5yb3cgeyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7IHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cbiAgLmxhcmdlLWNlbnRlcmVkIHsgbWFyZ2luLXJpZ2h0OiBhdXRvOyBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAubGFyZ2UtY2VudGVyZWQsIC5sYXJnZS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHsgZmxvYXQ6IG5vbmU7IGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS11bmNlbnRlcmVkLCAubGFyZ2UtcHVzaC0wLCAubGFyZ2UtcHVsbC0wIHsgcG9zaXRpb246IHN0YXRpYzsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuICAubGFyZ2UtdW5jZW50ZXJlZCwgLmxhcmdlLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmxhcmdlLXB1c2gtMCwgLmxhcmdlLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubGFyZ2UtcHVsbC0wLCAubGFyZ2UtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgeyBmbG9hdDogbGVmdDsgY2xlYXI6IG5vbmU7IH1cbiAgLmxhcmdlLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmxhcmdlLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubGFyZ2UtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgeyBmbG9hdDogcmlnaHQ7IH0gfVxuXG4uY29sdW1uLWJsb2NrIHsgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuXG4uY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5jb2x1bW4tYmxvY2sgeyBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAuY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLmdyaWQtY29udGFpbmVyIHsgcGFkZGluZy1yaWdodDogMS4yNXJlbTsgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyBtYXgtd2lkdGg6IDgzLjc1cmVtOyBtYXJnaW4tbGVmdDogYXV0bzsgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLWNvbnRhaW5lciB7IHBhZGRpbmctcmlnaHQ6IDJyZW07IHBhZGRpbmctbGVmdDogMnJlbTsgfSB9XG5cbi5ncmlkLWNvbnRhaW5lci5mbHVpZCB7IHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07IHBhZGRpbmctbGVmdDogMS4yNXJlbTsgbWF4LXdpZHRoOiAxMDAlOyBtYXJnaW4tbGVmdDogYXV0bzsgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLWNvbnRhaW5lci5mbHVpZCB7IHBhZGRpbmctcmlnaHQ6IDJyZW07IHBhZGRpbmctbGVmdDogMnJlbTsgfSB9XG5cbi5ncmlkLWNvbnRhaW5lci5mdWxsIHsgcGFkZGluZy1yaWdodDogMDsgcGFkZGluZy1sZWZ0OiAwOyBtYXgtd2lkdGg6IDEwMCU7IG1hcmdpbi1sZWZ0OiBhdXRvOyBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLmdyaWQteCB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZmxvdzogcm93IHdyYXA7IH1cblxuLmNlbGwgeyBmbGV4OiAwIDAgYXV0bzsgbWluLWhlaWdodDogMHB4OyBtaW4td2lkdGg6IDBweDsgd2lkdGg6IDEwMCU7IH1cblxuLmNlbGwuYXV0byB7IGZsZXg6IDEgMSAwcHg7IH1cblxuLmNlbGwuc2hyaW5rIHsgZmxleDogMCAwIGF1dG87IH1cblxuLmdyaWQteCA+IC5hdXRvIHsgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQteCA+IC5zaHJpbmsgeyB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLXNocmluaywgLmdyaWQteCA+IC5zbWFsbC1mdWxsLCAuZ3JpZC14ID4gLnNtYWxsLTEsIC5ncmlkLXggPiAuc21hbGwtMiwgLmdyaWQteCA+IC5zbWFsbC0zLCAuZ3JpZC14ID4gLnNtYWxsLTQsIC5ncmlkLXggPiAuc21hbGwtNSwgLmdyaWQteCA+IC5zbWFsbC02LCAuZ3JpZC14ID4gLnNtYWxsLTcsIC5ncmlkLXggPiAuc21hbGwtOCwgLmdyaWQteCA+IC5zbWFsbC05LCAuZ3JpZC14ID4gLnNtYWxsLTEwLCAuZ3JpZC14ID4gLnNtYWxsLTExLCAuZ3JpZC14ID4gLnNtYWxsLTEyIHsgZmxleC1iYXNpczogYXV0bzsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXggPiAubWVkaXVtLWZ1bGwsIC5ncmlkLXggPiAubWVkaXVtLTEsIC5ncmlkLXggPiAubWVkaXVtLTIsIC5ncmlkLXggPiAubWVkaXVtLTMsIC5ncmlkLXggPiAubWVkaXVtLTQsIC5ncmlkLXggPiAubWVkaXVtLTUsIC5ncmlkLXggPiAubWVkaXVtLTYsIC5ncmlkLXggPiAubWVkaXVtLTcsIC5ncmlkLXggPiAubWVkaXVtLTgsIC5ncmlkLXggPiAubWVkaXVtLTksIC5ncmlkLXggPiAubWVkaXVtLTEwLCAuZ3JpZC14ID4gLm1lZGl1bS0xMSwgLmdyaWQteCA+IC5tZWRpdW0tMTIgeyBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXggPiAubGFyZ2UtZnVsbCwgLmdyaWQteCA+IC5sYXJnZS0xLCAuZ3JpZC14ID4gLmxhcmdlLTIsIC5ncmlkLXggPiAubGFyZ2UtMywgLmdyaWQteCA+IC5sYXJnZS00LCAuZ3JpZC14ID4gLmxhcmdlLTUsIC5ncmlkLXggPiAubGFyZ2UtNiwgLmdyaWQteCA+IC5sYXJnZS03LCAuZ3JpZC14ID4gLmxhcmdlLTgsIC5ncmlkLXggPiAubGFyZ2UtOSwgLmdyaWQteCA+IC5sYXJnZS0xMCwgLmdyaWQteCA+IC5sYXJnZS0xMSwgLmdyaWQteCA+IC5sYXJnZS0xMiB7IGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEsIC5ncmlkLXggPiAuc21hbGwtMiwgLmdyaWQteCA+IC5zbWFsbC0zLCAuZ3JpZC14ID4gLnNtYWxsLTQsIC5ncmlkLXggPiAuc21hbGwtNSwgLmdyaWQteCA+IC5zbWFsbC02LCAuZ3JpZC14ID4gLnNtYWxsLTcsIC5ncmlkLXggPiAuc21hbGwtOCwgLmdyaWQteCA+IC5zbWFsbC05LCAuZ3JpZC14ID4gLnNtYWxsLTEwLCAuZ3JpZC14ID4gLnNtYWxsLTExLCAuZ3JpZC14ID4gLnNtYWxsLTEyIHsgZmxleDogMCAwIGF1dG87IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xIHsgd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMiB7IHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0zIHsgd2lkdGg6IDI1JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTQgeyB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNSB7IHdpZHRoOiA0MS42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC02IHsgd2lkdGg6IDUwJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTcgeyB3aWR0aDogNTguMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtOCB7IHdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC05IHsgd2lkdGg6IDc1JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEwIHsgd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTExIHsgd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEyIHsgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdyaWQteCA+IC5tZWRpdW0tYXV0byB7IGZsZXg6IDEgMSAwcHg7IHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluaywgLmdyaWQteCA+IC5tZWRpdW0tMSwgLmdyaWQteCA+IC5tZWRpdW0tMiwgLmdyaWQteCA+IC5tZWRpdW0tMywgLmdyaWQteCA+IC5tZWRpdW0tNCwgLmdyaWQteCA+IC5tZWRpdW0tNSwgLmdyaWQteCA+IC5tZWRpdW0tNiwgLmdyaWQteCA+IC5tZWRpdW0tNywgLmdyaWQteCA+IC5tZWRpdW0tOCwgLmdyaWQteCA+IC5tZWRpdW0tOSwgLmdyaWQteCA+IC5tZWRpdW0tMTAsIC5ncmlkLXggPiAubWVkaXVtLTExLCAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7IGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluayB7IHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEgeyB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMiB7IHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMyB7IHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNCB7IHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNSB7IHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNiB7IHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNyB7IHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tOCB7IHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tOSB7IHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTAgeyB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTExIHsgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7IHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmdyaWQteCA+IC5sYXJnZS1hdXRvIHsgZmxleDogMSAxIDBweDsgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXggPiAubGFyZ2UtMSwgLmdyaWQteCA+IC5sYXJnZS0yLCAuZ3JpZC14ID4gLmxhcmdlLTMsIC5ncmlkLXggPiAubGFyZ2UtNCwgLmdyaWQteCA+IC5sYXJnZS01LCAuZ3JpZC14ID4gLmxhcmdlLTYsIC5ncmlkLXggPiAubGFyZ2UtNywgLmdyaWQteCA+IC5sYXJnZS04LCAuZ3JpZC14ID4gLmxhcmdlLTksIC5ncmlkLXggPiAubGFyZ2UtMTAsIC5ncmlkLXggPiAubGFyZ2UtMTEsIC5ncmlkLXggPiAubGFyZ2UtMTIgeyBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluayB7IHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMSB7IHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTIgeyB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMyB7IHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS00IHsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTUgeyB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNiB7IHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS03IHsgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTggeyB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtOSB7IHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMCB7IHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMSB7IHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMiB7IHdpZHRoOiAxMDAlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwgeyB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7IGhlaWdodDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teCB7IG1hcmdpbi1sZWZ0OiAtMC43NXJlbTsgbWFyZ2luLXJpZ2h0OiAtMC43NXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1tYXJnaW4teCB7IG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyB9IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDEwMCUgLSAxLjVyZW0pOyBtYXJnaW4tbGVmdDogMC43NXJlbTsgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLW1hcmdpbi14ID4gLmNlbGwgeyB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfSB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLmF1dG8geyB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zaHJpbmsgeyB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHsgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIgeyB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTMgeyB3aWR0aDogY2FsYygyNSUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTQgeyB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUgeyB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTYgeyB3aWR0aDogY2FsYyg1MCUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTcgeyB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTggeyB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTkgeyB3aWR0aDogY2FsYyg3NSUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHsgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7IHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTIgeyB3aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1tYXJnaW4teCA+IC5hdXRvIHsgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHsgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMSB7IHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7IHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTMgeyB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHsgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7IHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTYgeyB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC03IHsgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7IHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTkgeyB3aWR0aDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMCB7IHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHsgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTIgeyB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLWF1dG8geyB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tc2hyaW5rIHsgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEgeyB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0yIHsgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTMgeyB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNCB7IHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS01IHsgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTYgeyB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNyB7IHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS04IHsgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTkgeyB3aWR0aDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTAgeyB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTEgeyB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTIgeyB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1hdXRvIHsgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utc2hyaW5rIHsgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMSB7IHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMiB7IHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTMgeyB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS00IHsgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNSB7IHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTYgeyB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS03IHsgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtOCB7IHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTkgeyB3aWR0aDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMCB7IHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTExIHsgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTIgeyB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHsgbWFyZ2luLXJpZ2h0OiAtMC43NXJlbTsgbWFyZ2luLWxlZnQ6IC0wLjc1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXggeyBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTsgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfSB9XG5cbi5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHsgbWFyZ2luLXJpZ2h0OiAtMC43NXJlbTsgbWFyZ2luLWxlZnQ6IC0wLjc1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHsgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07IG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7IHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07IHBhZGRpbmctbGVmdDogMC43NXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7IHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtOyBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cblxuLnNtYWxsLXVwLTEgPiAuY2VsbCB7IHdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC11cC0yID4gLmNlbGwgeyB3aWR0aDogNTAlOyB9XG5cbi5zbWFsbC11cC0zID4gLmNlbGwgeyB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC11cC00ID4gLmNlbGwgeyB3aWR0aDogMjUlOyB9XG5cbi5zbWFsbC11cC01ID4gLmNlbGwgeyB3aWR0aDogMjAlOyB9XG5cbi5zbWFsbC11cC02ID4gLmNlbGwgeyB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC11cC03ID4gLmNlbGwgeyB3aWR0aDogMTQuMjg1NzElOyB9XG5cbi5zbWFsbC11cC04ID4gLmNlbGwgeyB3aWR0aDogMTIuNSU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLm1lZGl1bS11cC0xID4gLmNlbGwgeyB3aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLXVwLTIgPiAuY2VsbCB7IHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS11cC0zID4gLmNlbGwgeyB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jZWxsIHsgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLXVwLTUgPiAuY2VsbCB7IHdpZHRoOiAyMCU7IH1cbiAgLm1lZGl1bS11cC02ID4gLmNlbGwgeyB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jZWxsIHsgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubWVkaXVtLXVwLTggPiAuY2VsbCB7IHdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5sYXJnZS11cC0xID4gLmNlbGwgeyB3aWR0aDogMTAwJTsgfVxuICAubGFyZ2UtdXAtMiA+IC5jZWxsIHsgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtdXAtMyA+IC5jZWxsIHsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtdXAtNCA+IC5jZWxsIHsgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtdXAtNSA+IC5jZWxsIHsgd2lkdGg6IDIwJTsgfVxuICAubGFyZ2UtdXAtNiA+IC5jZWxsIHsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtdXAtNyA+IC5jZWxsIHsgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubGFyZ2UtdXAtOCA+IC5jZWxsIHsgd2lkdGg6IDEyLjUlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMiA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoNTAlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwgeyB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTQgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDI1JSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNSA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMjAlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwgeyB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtOCA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjVyZW0pOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwgeyB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwgeyB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwgeyB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwgeyB3aWR0aDogY2FsYygyMCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwgeyB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwgeyB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwgeyB3aWR0aDogY2FsYygxMi41JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0xID4gLmNlbGwgeyB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTIgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0zID4gLmNlbGwgeyB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNCA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTUgPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDIwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC02ID4gLmNlbGwgeyB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNyA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTggPiAuY2VsbCB7IHdpZHRoOiBjYWxjKDEyLjUlIC0gMS4yNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0xID4gLmNlbGwgeyB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMiA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMyA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNCA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNSA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMjAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNiA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNyA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtOCA+IC5jZWxsIHsgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjI1cmVtKTsgfSB9XG5cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgeyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHsgd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7IHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHsgd2lkdGg6IDI1JTsgfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQgeyB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7IHdpZHRoOiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHsgd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcgeyB3aWR0aDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7IHdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHsgd2lkdGg6IDc1JTsgfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHsgd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHsgd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHsgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7IHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHsgd2lkdGg6IDI1JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHsgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHsgd2lkdGg6IDUwJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHsgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHsgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHsgd2lkdGg6IDc1JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7IHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEgeyB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHsgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEgeyB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMgeyB3aWR0aDogMjUlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7IHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHsgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYgeyB3aWR0aDogNTAlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7IHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHsgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkgeyB3aWR0aDogNzUlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAgeyB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEgeyB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIgeyB3aWR0aDogMTAwJTsgfSB9XG5cbi5zbWFsbC1wYWRkaW5nLWNvbGxhcHNlIHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuXG4uc21hbGwtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHsgcGFkZGluZy1yaWdodDogMDsgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlIHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEgeyB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7IHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7IHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7IHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7IHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7IHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7IHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7IHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7IHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAgeyB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHsgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7IHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEgeyB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIgeyB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHsgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7IHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUgeyB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHsgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7IHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTggeyB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHsgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAgeyB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7IHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHsgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHsgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIgeyB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMgeyB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQgeyB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUgeyB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYgeyB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcgeyB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTggeyB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkgeyB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHsgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7IHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIgeyB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5tZWRpdW0tcGFkZGluZy1jb2xsYXBzZSB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwgeyBwYWRkaW5nLXJpZ2h0OiAwOyBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlIHsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tbGVmdDogMDsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwgeyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHsgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7IHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHsgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQgeyB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7IHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHsgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcgeyB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7IHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHsgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHsgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHsgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHsgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHsgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIgeyB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMgeyB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQgeyB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUgeyB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYgeyB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcgeyB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTggeyB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkgeyB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHsgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7IHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIgeyB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7IHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIgeyB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7IHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHsgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUgeyB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7IHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHsgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTggeyB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7IHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7IHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7IHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7IHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmxhcmdlLXBhZGRpbmctY29sbGFwc2UgeyBtYXJnaW4tcmlnaHQ6IDA7IG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwgeyBwYWRkaW5nLXJpZ2h0OiAwOyBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG4uc21hbGwtb2Zmc2V0LTAgeyBtYXJnaW4tbGVmdDogMCU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTAgeyBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMSB7IG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMSB7IG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC43NXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0yIHsgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMiB7IG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDAuNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMyB7IG1hcmdpbi1sZWZ0OiAyNSU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTMgeyBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjc1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTQgeyBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC00IHsgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMC43NXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC01IHsgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNSB7IG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDAuNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNiB7IG1hcmdpbi1sZWZ0OiA1MCU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTYgeyBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjc1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTcgeyBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC03IHsgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMC43NXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC04IHsgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOCB7IG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDAuNzVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtOSB7IG1hcmdpbi1sZWZ0OiA3NSU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTkgeyBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjc1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEwIHsgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMTAgeyBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAwLjc1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTExIHsgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMTEgeyBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAwLjc1cmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAubWVkaXVtLW9mZnNldC0wIHsgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMCB7IG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEgeyBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xIHsgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMiB7IG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0yIHsgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMgeyBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMyB7IG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC00IHsgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTQgeyBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNSB7IG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC01IHsgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYgeyBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNiB7IG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC03IHsgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTcgeyBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOCB7IG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC04IHsgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTkgeyBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtOSB7IG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7IG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xMCB7IG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7IG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xMSB7IG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuNjI1cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5sYXJnZS1vZmZzZXQtMCB7IG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMCB7IG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMC42MjVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7IG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMSB7IG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC42MjVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMiB7IG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTIgeyBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0zIHsgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMyB7IG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDAuNjI1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTQgeyBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC00IHsgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMC42MjVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7IG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTUgeyBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC02IHsgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNiB7IG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDAuNjI1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTcgeyBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC03IHsgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMC42MjVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7IG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTggeyBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC05IHsgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtOSB7IG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDAuNjI1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEwIHsgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMTAgeyBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0xMSB7IG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTExIHsgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC42MjVyZW0pOyB9IH1cblxuLmdyaWQteSB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuXG4uZ3JpZC15ID4gLmNlbGwgeyBoZWlnaHQ6IGF1dG87IG1heC1oZWlnaHQ6IG5vbmU7IH1cblxuLmdyaWQteSA+IC5hdXRvIHsgaGVpZ2h0OiBhdXRvOyB9XG5cbi5ncmlkLXkgPiAuc2hyaW5rIHsgaGVpZ2h0OiBhdXRvOyB9XG5cbi5ncmlkLXkgPiAuc21hbGwtc2hyaW5rLCAuZ3JpZC15ID4gLnNtYWxsLWZ1bGwsIC5ncmlkLXkgPiAuc21hbGwtMSwgLmdyaWQteSA+IC5zbWFsbC0yLCAuZ3JpZC15ID4gLnNtYWxsLTMsIC5ncmlkLXkgPiAuc21hbGwtNCwgLmdyaWQteSA+IC5zbWFsbC01LCAuZ3JpZC15ID4gLnNtYWxsLTYsIC5ncmlkLXkgPiAuc21hbGwtNywgLmdyaWQteSA+IC5zbWFsbC04LCAuZ3JpZC15ID4gLnNtYWxsLTksIC5ncmlkLXkgPiAuc21hbGwtMTAsIC5ncmlkLXkgPiAuc21hbGwtMTEsIC5ncmlkLXkgPiAuc21hbGwtMTIgeyBmbGV4LWJhc2lzOiBhdXRvOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLXkgPiAubWVkaXVtLXNocmluaywgLmdyaWQteSA+IC5tZWRpdW0tZnVsbCwgLmdyaWQteSA+IC5tZWRpdW0tMSwgLmdyaWQteSA+IC5tZWRpdW0tMiwgLmdyaWQteSA+IC5tZWRpdW0tMywgLmdyaWQteSA+IC5tZWRpdW0tNCwgLmdyaWQteSA+IC5tZWRpdW0tNSwgLmdyaWQteSA+IC5tZWRpdW0tNiwgLmdyaWQteSA+IC5tZWRpdW0tNywgLmdyaWQteSA+IC5tZWRpdW0tOCwgLmdyaWQteSA+IC5tZWRpdW0tOSwgLmdyaWQteSA+IC5tZWRpdW0tMTAsIC5ncmlkLXkgPiAubWVkaXVtLTExLCAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7IGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuZ3JpZC15ID4gLmxhcmdlLXNocmluaywgLmdyaWQteSA+IC5sYXJnZS1mdWxsLCAuZ3JpZC15ID4gLmxhcmdlLTEsIC5ncmlkLXkgPiAubGFyZ2UtMiwgLmdyaWQteSA+IC5sYXJnZS0zLCAuZ3JpZC15ID4gLmxhcmdlLTQsIC5ncmlkLXkgPiAubGFyZ2UtNSwgLmdyaWQteSA+IC5sYXJnZS02LCAuZ3JpZC15ID4gLmxhcmdlLTcsIC5ncmlkLXkgPiAubGFyZ2UtOCwgLmdyaWQteSA+IC5sYXJnZS05LCAuZ3JpZC15ID4gLmxhcmdlLTEwLCAuZ3JpZC15ID4gLmxhcmdlLTExLCAuZ3JpZC15ID4gLmxhcmdlLTEyIHsgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbi5ncmlkLXkgPiAuc21hbGwtMSwgLmdyaWQteSA+IC5zbWFsbC0yLCAuZ3JpZC15ID4gLnNtYWxsLTMsIC5ncmlkLXkgPiAuc21hbGwtNCwgLmdyaWQteSA+IC5zbWFsbC01LCAuZ3JpZC15ID4gLnNtYWxsLTYsIC5ncmlkLXkgPiAuc21hbGwtNywgLmdyaWQteSA+IC5zbWFsbC04LCAuZ3JpZC15ID4gLnNtYWxsLTksIC5ncmlkLXkgPiAuc21hbGwtMTAsIC5ncmlkLXkgPiAuc21hbGwtMTEsIC5ncmlkLXkgPiAuc21hbGwtMTIgeyBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uZ3JpZC15ID4gLnNtYWxsLTEgeyBoZWlnaHQ6IDguMzMzMzMlOyB9XG5cbi5ncmlkLXkgPiAuc21hbGwtMiB7IGhlaWdodDogMTYuNjY2NjclOyB9XG5cbi5ncmlkLXkgPiAuc21hbGwtMyB7IGhlaWdodDogMjUlOyB9XG5cbi5ncmlkLXkgPiAuc21hbGwtNCB7IGhlaWdodDogMzMuMzMzMzMlOyB9XG5cbi5ncmlkLXkgPiAuc21hbGwtNSB7IGhlaWdodDogNDEuNjY2NjclOyB9XG5cbi5ncmlkLXkgPiAuc21hbGwtNiB7IGhlaWdodDogNTAlOyB9XG5cbi5ncmlkLXkgPiAuc21hbGwtNyB7IGhlaWdodDogNTguMzMzMzMlOyB9XG5cbi5ncmlkLXkgPiAuc21hbGwtOCB7IGhlaWdodDogNjYuNjY2NjclOyB9XG5cbi5ncmlkLXkgPiAuc21hbGwtOSB7IGhlaWdodDogNzUlOyB9XG5cbi5ncmlkLXkgPiAuc21hbGwtMTAgeyBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuXG4uZ3JpZC15ID4gLnNtYWxsLTExIHsgaGVpZ2h0OiA5MS42NjY2NyU7IH1cblxuLmdyaWQteSA+IC5zbWFsbC0xMiB7IGhlaWdodDogMTAwJTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC15ID4gLm1lZGl1bS1hdXRvIHsgZmxleDogMSAxIDBweDsgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLXNocmluaywgLmdyaWQteSA+IC5tZWRpdW0tMSwgLmdyaWQteSA+IC5tZWRpdW0tMiwgLmdyaWQteSA+IC5tZWRpdW0tMywgLmdyaWQteSA+IC5tZWRpdW0tNCwgLmdyaWQteSA+IC5tZWRpdW0tNSwgLmdyaWQteSA+IC5tZWRpdW0tNiwgLmdyaWQteSA+IC5tZWRpdW0tNywgLmdyaWQteSA+IC5tZWRpdW0tOCwgLmdyaWQteSA+IC5tZWRpdW0tOSwgLmdyaWQteSA+IC5tZWRpdW0tMTAsIC5ncmlkLXkgPiAubWVkaXVtLTExLCAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7IGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLXNocmluayB7IGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS0xIHsgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS0yIHsgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMyB7IGhlaWdodDogMjUlOyB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTQgeyBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS01IHsgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tNiB7IGhlaWdodDogNTAlOyB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTcgeyBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS04IHsgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tOSB7IGhlaWdodDogNzUlOyB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTEwIHsgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMTEgeyBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7IGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5ncmlkLXkgPiAubGFyZ2UtYXV0byB7IGZsZXg6IDEgMSAwcHg7IGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC15ID4gLmxhcmdlLXNocmluaywgLmdyaWQteSA+IC5sYXJnZS0xLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS00LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS03LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMiB7IGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rIHsgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMSB7IGhlaWdodDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5sYXJnZS0yIHsgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5sYXJnZS0zIHsgaGVpZ2h0OiAyNSU7IH1cbiAgLmdyaWQteSA+IC5sYXJnZS00IHsgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5sYXJnZS01IHsgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5sYXJnZS02IHsgaGVpZ2h0OiA1MCU7IH1cbiAgLmdyaWQteSA+IC5sYXJnZS03IHsgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5sYXJnZS04IHsgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5sYXJnZS05IHsgaGVpZ2h0OiA3NSU7IH1cbiAgLmdyaWQteSA+IC5sYXJnZS0xMCB7IGhlaWdodDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMTEgeyBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTEyIHsgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7IG1hcmdpbi10b3A6IC0wLjc1cmVtOyBtYXJnaW4tYm90dG9tOiAtMC43NXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHsgbWFyZ2luLXRvcDogLTAuNjI1cmVtOyBtYXJnaW4tYm90dG9tOiAtMC42MjVyZW07IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXkgPiAuY2VsbCB7IHBhZGRpbmctdG9wOiAwLjc1cmVtOyBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ3JpZC1wYWRkaW5nLXkgPiAuY2VsbCB7IHBhZGRpbmctdG9wOiAwLjYyNXJlbTsgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtOyB9IH1cblxuLmdyaWQtbWFyZ2luLXkgeyBtYXJnaW4tdG9wOiAtMC43NXJlbTsgbWFyZ2luLWJvdHRvbTogLTAuNzVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdyaWQtbWFyZ2luLXkgeyBtYXJnaW4tdG9wOiAtMC42MjVyZW07IG1hcmdpbi1ib3R0b206IC0wLjYyNXJlbTsgfSB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLmNlbGwgeyBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IG1hcmdpbi10b3A6IDAuNzVyZW07IG1hcmdpbi1ib3R0b206IDAuNzVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7IGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IG1hcmdpbi10b3A6IDAuNjI1cmVtOyBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfSB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLmF1dG8geyBoZWlnaHQ6IGF1dG87IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHsgaGVpZ2h0OiBhdXRvOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEgeyBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIgeyBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHsgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7IGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUgeyBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHsgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7IGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTggeyBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHsgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAgeyBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7IGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHsgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLW1hcmdpbi15ID4gLmF1dG8geyBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHsgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEgeyBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHsgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMgeyBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7IGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHsgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYgeyBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7IGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHsgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkgeyBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAgeyBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEgeyBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIgeyBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHsgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsgeyBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEgeyBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7IGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7IGhlaWdodDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7IGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7IGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7IGhlaWdodDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7IGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7IGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7IGhlaWdodDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAgeyBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHsgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7IGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHsgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLXNocmluayB7IGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xIHsgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7IGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHsgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTQgeyBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7IGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHsgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcgeyBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7IGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHsgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEwIHsgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHsgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHsgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfSB9XG5cbi5ncmlkLWZyYW1lIHsgb3ZlcmZsb3c6IGhpZGRlbjsgcG9zaXRpb246IHJlbGF0aXZlOyBmbGV4LXdyYXA6IG5vd3JhcDsgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IHdpZHRoOiAxMDB2dzsgfVxuXG4uY2VsbCAuZ3JpZC1mcmFtZSB7IHdpZHRoOiAxMDAlOyB9XG5cbi5jZWxsLWJsb2NrIHsgb3ZlcmZsb3cteDogYXV0bzsgbWF4LXdpZHRoOiAxMDAlOyAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG5cbi5jZWxsLWJsb2NrLXkgeyBvdmVyZmxvdy15OiBhdXRvOyBtYXgtaGVpZ2h0OiAxMDAlOyBtaW4taGVpZ2h0OiAxMDAlOyAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG5cbi5jZWxsLWJsb2NrLWNvbnRhaW5lciB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IG1heC1oZWlnaHQ6IDEwMCU7IH1cblxuLmNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7IG1heC1oZWlnaHQ6IDEwMCU7IGZsZXgtd3JhcDogbm93cmFwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5tZWRpdW0tZ3JpZC1mcmFtZSB7IG92ZXJmbG93OiBoaWRkZW47IHBvc2l0aW9uOiByZWxhdGl2ZTsgZmxleC13cmFwOiBub3dyYXA7IGFsaWduLWl0ZW1zOiBzdHJldGNoOyB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLm1lZGl1bS1ncmlkLWZyYW1lIHsgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrIHsgb3ZlcmZsb3cteDogYXV0bzsgbWF4LXdpZHRoOiAxMDAlOyAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHsgbWF4LWhlaWdodDogMTAwJTsgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLXkgeyBvdmVyZmxvdy15OiBhdXRvOyBtYXgtaGVpZ2h0OiAxMDAlOyBtaW4taGVpZ2h0OiAxMDAlOyAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmxhcmdlLWdyaWQtZnJhbWUgeyBvdmVyZmxvdzogaGlkZGVuOyBwb3NpdGlvbjogcmVsYXRpdmU7IGZsZXgtd3JhcDogbm93cmFwOyBhbGlnbi1pdGVtczogc3RyZXRjaDsgd2lkdGg6IDEwMHZ3OyB9XG4gIC5jZWxsIC5sYXJnZS1ncmlkLWZyYW1lIHsgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2sgeyBvdmVyZmxvdy14OiBhdXRvOyBtYXgtd2lkdGg6IDEwMCU7IC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgbWF4LWhlaWdodDogMTAwJTsgfVxuICAubGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHsgbWF4LWhlaWdodDogMTAwJTsgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2steSB7IG92ZXJmbG93LXk6IGF1dG87IG1heC1oZWlnaHQ6IDEwMCU7IG1pbi1oZWlnaHQ6IDEwMCU7IC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH0gfVxuXG4uZ3JpZC15LmdyaWQtZnJhbWUgeyB3aWR0aDogYXV0bzsgb3ZlcmZsb3c6IGhpZGRlbjsgcG9zaXRpb246IHJlbGF0aXZlOyBmbGV4LXdyYXA6IG5vd3JhcDsgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IGhlaWdodDogMTAwdmg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdyaWQteS5tZWRpdW0tZ3JpZC1mcmFtZSB7IHdpZHRoOiBhdXRvOyBvdmVyZmxvdzogaGlkZGVuOyBwb3NpdGlvbjogcmVsYXRpdmU7IGZsZXgtd3JhcDogbm93cmFwOyBhbGlnbi1pdGVtczogc3RyZXRjaDsgaGVpZ2h0OiAxMDB2aDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7IHdpZHRoOiBhdXRvOyBvdmVyZmxvdzogaGlkZGVuOyBwb3NpdGlvbjogcmVsYXRpdmU7IGZsZXgtd3JhcDogbm93cmFwOyBhbGlnbi1pdGVtczogc3RyZXRjaDsgaGVpZ2h0OiAxMDB2aDsgfSB9XG5cbi5jZWxsIC5ncmlkLXkuZ3JpZC1mcmFtZSB7IGhlaWdodDogMTAwJTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuY2VsbCAuZ3JpZC15Lm1lZGl1bS1ncmlkLWZyYW1lIHsgaGVpZ2h0OiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmNlbGwgLmdyaWQteS5sYXJnZS1ncmlkLWZyYW1lIHsgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXkgeyBtYXJnaW4tdG9wOiAtMC43NXJlbTsgbWFyZ2luLWJvdHRvbTogLTAuNzVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdyaWQtbWFyZ2luLXkgeyBtYXJnaW4tdG9wOiAtMC42MjVyZW07IG1hcmdpbi1ib3R0b206IC0wLjYyNXJlbTsgfSB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLmNlbGwgeyBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuNXJlbSk7IG1hcmdpbi10b3A6IDAuNzVyZW07IG1hcmdpbi1ib3R0b206IDAuNzVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7IGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IG1hcmdpbi10b3A6IDAuNjI1cmVtOyBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfSB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLmF1dG8geyBoZWlnaHQ6IGF1dG87IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHsgaGVpZ2h0OiBhdXRvOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEgeyBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIgeyBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHsgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7IGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUgeyBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHsgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7IGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTggeyBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHsgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuNXJlbSk7IH1cblxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAgeyBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS41cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7IGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHsgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjVyZW0pOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLW1hcmdpbi15ID4gLmF1dG8geyBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHsgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEgeyBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHsgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMgeyBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7IGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHsgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYgeyBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7IGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHsgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkgeyBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAgeyBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEgeyBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIgeyBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHsgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsgeyBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEgeyBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7IGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7IGhlaWdodDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7IGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7IGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7IGhlaWdodDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7IGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7IGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7IGhlaWdodDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAgeyBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHsgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7IGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHsgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLXNocmluayB7IGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xIHsgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7IGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHsgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTQgeyBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7IGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHsgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcgeyBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7IGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHsgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEwIHsgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHsgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHsgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfSB9XG5cbi5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkgeyBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjVyZW0pOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkgeyBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjI1cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkgeyBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjI1cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5ncmlkLW1hcmdpbi15Lm1lZGl1bS1ncmlkLWZyYW1lIHsgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS4yNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuZ3JpZC1tYXJnaW4teS5sYXJnZS1ncmlkLWZyYW1lIHsgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS4yNXJlbSk7IH0gfVxuXG4uYWxpZ24tbGVmdCB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tcmlnaHQgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1jZW50ZXIgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYWxpZ24tanVzdGlmeSB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4uYWxpZ24tc3BhY2VkIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cblxuLmFsaWduLWxlZnQudmVydGljYWwubWVudSA+IGxpID4gYSB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tcmlnaHQudmVydGljYWwubWVudSA+IGxpID4gYSB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlci52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLXRvcCB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1zZWxmLXRvcCB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLWJvdHRvbSB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tc2VsZi1ib3R0b20geyBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tbWlkZGxlIHsgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc2VsZi1taWRkbGUgeyBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cblxuLmFsaWduLXN0cmV0Y2ggeyBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4uYWxpZ24tc2VsZi1zdHJldGNoIHsgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxuXG4uYWxpZ24tY2VudGVyLW1pZGRsZSB7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBhbGlnbi1pdGVtczogY2VudGVyOyBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cblxuLnNtYWxsLW9yZGVyLTEgeyBvcmRlcjogMTsgfVxuXG4uc21hbGwtb3JkZXItMiB7IG9yZGVyOiAyOyB9XG5cbi5zbWFsbC1vcmRlci0zIHsgb3JkZXI6IDM7IH1cblxuLnNtYWxsLW9yZGVyLTQgeyBvcmRlcjogNDsgfVxuXG4uc21hbGwtb3JkZXItNSB7IG9yZGVyOiA1OyB9XG5cbi5zbWFsbC1vcmRlci02IHsgb3JkZXI6IDY7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLm1lZGl1bS1vcmRlci0xIHsgb3JkZXI6IDE7IH1cbiAgLm1lZGl1bS1vcmRlci0yIHsgb3JkZXI6IDI7IH1cbiAgLm1lZGl1bS1vcmRlci0zIHsgb3JkZXI6IDM7IH1cbiAgLm1lZGl1bS1vcmRlci00IHsgb3JkZXI6IDQ7IH1cbiAgLm1lZGl1bS1vcmRlci01IHsgb3JkZXI6IDU7IH1cbiAgLm1lZGl1bS1vcmRlci02IHsgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAubGFyZ2Utb3JkZXItMSB7IG9yZGVyOiAxOyB9XG4gIC5sYXJnZS1vcmRlci0yIHsgb3JkZXI6IDI7IH1cbiAgLmxhcmdlLW9yZGVyLTMgeyBvcmRlcjogMzsgfVxuICAubGFyZ2Utb3JkZXItNCB7IG9yZGVyOiA0OyB9XG4gIC5sYXJnZS1vcmRlci01IHsgb3JkZXI6IDU7IH1cbiAgLmxhcmdlLW9yZGVyLTYgeyBvcmRlcjogNjsgfSB9XG5cbi5mbGV4LWNvbnRhaW5lciB7IGRpc3BsYXk6IGZsZXg7IH1cblxuLmZsZXgtY2hpbGQtYXV0byB7IGZsZXg6IDEgMSBhdXRvOyB9XG5cbi5mbGV4LWNoaWxkLWdyb3cgeyBmbGV4OiAxIDAgYXV0bzsgfVxuXG4uZmxleC1jaGlsZC1zaHJpbmsgeyBmbGV4OiAwIDEgYXV0bzsgfVxuXG4uZmxleC1kaXItcm93IHsgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4uZmxleC1kaXItcm93LXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cblxuLmZsZXgtZGlyLWNvbHVtbiB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLmZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5tZWRpdW0tZmxleC1jb250YWluZXIgeyBkaXNwbGF5OiBmbGV4OyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1hdXRvIHsgZmxleDogMSAxIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWdyb3cgeyBmbGV4OiAxIDAgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtc2hyaW5rIHsgZmxleDogMCAxIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1yb3cgeyBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93LXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4geyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAubGFyZ2UtZmxleC1jb250YWluZXIgeyBkaXNwbGF5OiBmbGV4OyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWF1dG8geyBmbGV4OiAxIDEgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1ncm93IHsgZmxleDogMSAwIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHsgZmxleDogMCAxIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdyB7IGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4geyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbmRpdiwgZGwsIGR0LCBkZCwgdWwsIG9sLCBsaSwgaDEsIGgyLCBoMywgaDQsIGg1LCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBoNiwgLnVwZGF0ZWQgLmRhdGUsIHByZSwgZm9ybSwgcCwgYmxvY2txdW90ZSwgdGgsIHRkIHsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyB9XG5cbnAgeyBtYXJnaW4tYm90dG9tOiAxcmVtOyBmb250LXNpemU6IGluaGVyaXQ7IGxpbmUtaGVpZ2h0OiAxLjY7IHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cblxuZW0sIGkgeyBmb250LXN0eWxlOiBpdGFsaWM7IGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZywgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgaDEsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IGgyLCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBoMywgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgaDQsIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IGg1LCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBwLCAuY2FyZC5jYXJkX19wdXNoZG93bi5haXJsaW5lcyAuY29udGVudC13cmFwIC5hY2NvcmRpb24tY29udGVudCBoNiwgLmNhcmQuY2FyZF9fcHVzaGRvd24uYWlybGluZXMgLmNvbnRlbnQtd3JhcCAuYWNjb3JkaW9uLWNvbnRlbnQgLnVwZGF0ZWQgLmRhdGUsIC51cGRhdGVkIC5jYXJkLmNhcmRfX3B1c2hkb3duLmFpcmxpbmVzIC5jb250ZW50LXdyYXAgLmFjY29yZGlvbi1jb250ZW50IC5kYXRlLCBiIHsgZm9udC13ZWlnaHQ6IGJvbGQ7IGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnNtYWxsIHsgZm9udC1zaXplOiA4MCU7IGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbmgxLCAuaDEsIGgyLCAuaDIsIGgzLCAuaDMsIGg0LCAuaDQsIGg1LCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCAuaDUsIGg2LCAudXBkYXRlZCAuZGF0ZSwgLmg2IHsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV84NSBIZWF2eTE0NzU1NDRcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBib2xkOyBjb2xvcjogIzA0MzI2MzsgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5oMSBzbWFsbCwgLmgxIHNtYWxsLCBoMiBzbWFsbCwgLmgyIHNtYWxsLCBoMyBzbWFsbCwgLmgzIHNtYWxsLCBoNCBzbWFsbCwgLmg0IHNtYWxsLCBoNSBzbWFsbCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCBzbWFsbCwgLmg1IHNtYWxsLCBoNiBzbWFsbCwgLnVwZGF0ZWQgLmRhdGUgc21hbGwsIC5oNiBzbWFsbCB7IGxpbmUtaGVpZ2h0OiAwOyBjb2xvcjogI0IxQjFCMTsgfVxuXG5oMSwgLmgxIHsgZm9udC1zaXplOiAyLjM3NXJlbTsgbGluZS1oZWlnaHQ6IDEuMDUyNjM7IG1hcmdpbi10b3A6IDA7IG1hcmdpbi1ib3R0b206IDEuNDM3NXJlbTsgfVxuXG5oMiwgLmgyIHsgZm9udC1zaXplOiAxLjg3NXJlbTsgbGluZS1oZWlnaHQ6IDEuMDY2Njc7IG1hcmdpbi10b3A6IDA7IG1hcmdpbi1ib3R0b206IDEuMzEyNXJlbTsgfVxuXG5oMywgLmgzIHsgZm9udC1zaXplOiAxLjU2MjVyZW07IGxpbmUtaGVpZ2h0OiAxLjA0OyBtYXJnaW4tdG9wOiAwOyBtYXJnaW4tYm90dG9tOiAxLjE4NzVyZW07IH1cblxuaDQsIC5oNCB7IGZvbnQtc2l6ZTogMS4xMjVyZW07IGxpbmUtaGVpZ2h0OiAxLjMzMzMzOyBtYXJnaW4tdG9wOiAwOyBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbmg1LCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCAuaDUgeyBmb250LXNpemU6IDFyZW07IGxpbmUtaGVpZ2h0OiAxLjU7IG1hcmdpbi10b3A6IDA7IG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuaDYsIC51cGRhdGVkIC5kYXRlLCAuaDYgeyBmb250LXNpemU6IDFyZW07IGxpbmUtaGVpZ2h0OiAxLjU7IG1hcmdpbi10b3A6IDA7IG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgaDEsIC5oMSB7IGZvbnQtc2l6ZTogMi42MjVyZW07IGxpbmUtaGVpZ2h0OiAxLjE0Mjg2OyBtYXJnaW4tYm90dG9tOiAxLjYyNXJlbTsgfVxuICBoMiwgLmgyIHsgZm9udC1zaXplOiAyLjEyNXJlbTsgbGluZS1oZWlnaHQ6IDEuMjM1Mjk7IG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICBoMywgLmgzIHsgZm9udC1zaXplOiAxLjYyNXJlbTsgbGluZS1oZWlnaHQ6IDEuMjMwNzc7IG1hcmdpbi1ib3R0b206IDEuMzc1cmVtOyB9XG4gIGg0LCAuaDQgeyBmb250LXNpemU6IDEuMzc1cmVtOyBsaW5lLWhlaWdodDogMS4yNzI3MzsgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgaDUsIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHAsIC5oNSB7IGZvbnQtc2l6ZTogMS4xMjVyZW07IGxpbmUtaGVpZ2h0OiAxLjMzMzMzOyBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gICBoNiwgLnVwZGF0ZWQgLmRhdGUsIC5oNiB7IGZvbnQtc2l6ZTogMXJlbTsgbGluZS1oZWlnaHQ6IDEuNTsgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IGgxLCAuaDEgeyBmb250LXNpemU6IDIuOTM3NXJlbTsgbGluZS1oZWlnaHQ6IDEuMTA2Mzg7IG1hcmdpbi1ib3R0b206IDEuNzVyZW07IH1cbiAgaDIsIC5oMiB7IGZvbnQtc2l6ZTogMi4zNzVyZW07IGxpbmUtaGVpZ2h0OiAxLjE4NDIxOyBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgaDMsIC5oMyB7IGZvbnQtc2l6ZTogMS44NzVyZW07IGxpbmUtaGVpZ2h0OiAxLjE2NjY3OyBtYXJnaW4tYm90dG9tOiAxLjM3NXJlbTsgfVxuICBoNCwgLmg0IHsgZm9udC1zaXplOiAxLjU2MjVyZW07IGxpbmUtaGVpZ2h0OiAxLjEyOyBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gICBoNSwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgLmg1IHsgZm9udC1zaXplOiAxLjI1cmVtOyBsaW5lLWhlaWdodDogMS4zOyBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gICBoNiwgLnVwZGF0ZWQgLmRhdGUsIC5oNiB7IGZvbnQtc2l6ZTogMXJlbTsgbGluZS1oZWlnaHQ6IDEuNTsgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfSB9XG5cbmEgeyBsaW5lLWhlaWdodDogaW5oZXJpdDsgY29sb3I6ICMwNDMyNjM7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuYTpob3ZlciwgYS5hY3RpdmUsIGEuYnV0dG9uLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmUsIGE6Zm9jdXMgeyBjb2xvcjogIzBGNTg5QTsgfVxuXG5hIGltZyB7IGJvcmRlcjogMDsgfVxuXG5ociB7IGNsZWFyOiBib3RoOyBtYXgtd2lkdGg6IDgzLjc1cmVtOyBoZWlnaHQ6IDA7IG1hcmdpbjogMS4yNXJlbSBhdXRvOyBib3JkZXItdG9wOiAwOyBib3JkZXItcmlnaHQ6IDA7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQjFCMUIxOyBib3JkZXItbGVmdDogMDsgfVxuXG51bCwgb2wsIGRsIHsgbWFyZ2luLWJvdHRvbTogMXJlbTsgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTsgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG5saSB7IGZvbnQtc2l6ZTogaW5oZXJpdDsgfVxuXG51bCB7IG1hcmdpbi1sZWZ0OiAxLjI1cmVtOyBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7IH1cblxub2wgeyBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfVxuXG51bCB1bCwgb2wgdWwsIHVsIG9sLCBvbCBvbCB7IG1hcmdpbi1sZWZ0OiAxLjI1cmVtOyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmRsIHsgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG5kbCBkdCB7IG1hcmdpbi1ib3R0b206IDAuM3JlbTsgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuYmxvY2txdW90ZSB7IG1hcmdpbjogMCAwIDFyZW07IHBhZGRpbmc6IDAuNXJlbSAxLjc1cmVtIDAuMDYyNXJlbSAxLjc1cmVtOyBib3JkZXItbGVmdDogbm9uZTsgfVxuXG5ibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAgeyBsaW5lLWhlaWdodDogMS42OyBjb2xvcjogIzA0MzI2MzsgfVxuXG5hYmJyLCBhYmJyW3RpdGxlXSB7IGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzAwMDsgY3Vyc29yOiBoZWxwOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuZmlndXJlIHsgbWFyZ2luOiAwOyB9XG5cbmtiZCB7IG1hcmdpbjogMDsgcGFkZGluZzogMC4xMjVyZW0gMC4yNXJlbSAwOyBiYWNrZ3JvdW5kLWNvbG9yOiAjRTRFNEU0OyBmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzY1IE1lZGl1bTE0NzU1MzJcIiwgc2Fucy1zZXJpZjsgY29sb3I6ICMwMDA7IGJvcmRlci1yYWRpdXM6IDVweDsgfVxuXG4uc3ViaGVhZGVyIHsgbWFyZ2luLXRvcDogMC4ycmVtOyBtYXJnaW4tYm90dG9tOiAwLjVyZW07IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGxpbmUtaGVpZ2h0OiAxLjQ7IGNvbG9yOiAjNzA3MDcwOyB9XG5cbi5sZWFkIHsgZm9udC1zaXplOiAxMjUlOyBsaW5lLWhlaWdodDogMS42OyB9XG5cbi5zdGF0IHsgZm9udC1zaXplOiAyLjVyZW07IGxpbmUtaGVpZ2h0OiAxOyB9XG5cbnAgKyAuc3RhdCB7IG1hcmdpbi10b3A6IC0xcmVtOyB9XG5cbnVsLm5vLWJ1bGxldCwgb2wubm8tYnVsbGV0IHsgbWFyZ2luLWxlZnQ6IDA7IGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLmNpdGUtYmxvY2ssIGNpdGUgeyBkaXNwbGF5OiBibG9jazsgY29sb3I6ICM3MDcwNzA7IGZvbnQtc2l6ZTogMC44MTI1cmVtOyB9XG5cbi5jaXRlLWJsb2NrOmJlZm9yZSwgY2l0ZTpiZWZvcmUgeyBjb250ZW50OiBcIuKAlCBcIjsgfVxuXG4uY29kZS1pbmxpbmUsIGNvZGUgeyBib3JkZXI6IDFweCBzb2xpZCAjQjFCMUIxOyBiYWNrZ3JvdW5kLWNvbG9yOiAjRTRFNEU0OyBmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzY1IE1lZGl1bTE0NzU1MzJcIiwgc2Fucy1zZXJpZjsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgY29sb3I6ICMwMDA7IGRpc3BsYXk6IGlubGluZTsgbWF4LXdpZHRoOiAxMDAlOyB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7IHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwLjA2MjVyZW07IH1cblxuLmNvZGUtYmxvY2sgeyBib3JkZXI6IDFweCBzb2xpZCAjQjFCMUIxOyBiYWNrZ3JvdW5kLWNvbG9yOiAjRTRFNEU0OyBmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzY1IE1lZGl1bTE0NzU1MzJcIiwgc2Fucy1zZXJpZjsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgY29sb3I6ICMwMDA7IGRpc3BsYXk6IGJsb2NrOyBvdmVyZmxvdzogYXV0bzsgd2hpdGUtc3BhY2U6IHByZTsgcGFkZGluZzogMXJlbTsgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG5cbi50ZXh0LWxlZnQgeyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXJpZ2h0IHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQtY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LWp1c3RpZnkgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5tZWRpdW0tdGV4dC1sZWZ0IHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubWVkaXVtLXRleHQtcmlnaHQgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubWVkaXVtLXRleHQtY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHsgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5sYXJnZS10ZXh0LWxlZnQgeyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5sYXJnZS10ZXh0LXJpZ2h0IHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmxhcmdlLXRleHQtY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCB7ICogeyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyBjb2xvcjogYmxhY2sgIWltcG9ydGFudDsgY29sb3ItYWRqdXN0OiBlY29ub215OyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIGEsIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5pciBhOmFmdGVyLCBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLCBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7IGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuICBwcmUsIGJsb2NrcXVvdGUgeyBib3JkZXI6IDFweCBzb2xpZCAjNzA3MDcwOyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgdGhlYWQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cbiAgdHIsIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cbiAgcCwgaDIsIGgzIHsgb3JwaGFuczogMzsgd2lkb3dzOiAzOyB9XG4gIGgyLCBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG4gIC5wcmludC1icmVhay1pbnNpZGUgeyBwYWdlLWJyZWFrLWluc2lkZTogYXV0bzsgfSB9XG5cbi5idXR0b24sIGxpLmZhdXgtYnV0dG9uIGEgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IG1hcmdpbjogMCAwIDFyZW0gMDsgcGFkZGluZzogMS4yNWVtIDIuOGVtIDEuMjVlbSAxLjRlbTsgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IGJvcmRlci1yYWRpdXM6IDVweDsgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7IGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfODUgSGVhdnkxNDc1NTQ0XCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxLjEyNXJlbTsgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyBsaW5lLWhlaWdodDogMTsgdGV4dC1hbGlnbjogY2VudGVyOyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5idXR0b24sIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYSB7IG91dGxpbmU6IDA7IH1cblxuLmJ1dHRvbi50aW55LCBsaS5mYXV4LWJ1dHRvbiBhLnRpbnkgeyBmb250LXNpemU6IDEuMTI1cmVtOyB9XG5cbi5idXR0b24uc21hbGwsIGxpLmZhdXgtYnV0dG9uIGEuc21hbGwgeyBmb250LXNpemU6IDEuMTI1cmVtOyB9XG5cbi5idXR0b24ubGFyZ2UsIGxpLmZhdXgtYnV0dG9uIGEubGFyZ2UgeyBmb250LXNpemU6IDEuMTI1cmVtOyB9XG5cbi5idXR0b24uZXhwYW5kZWQsIGxpLmZhdXgtYnV0dG9uIGEuZXhwYW5kZWQgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDEwMCU7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmJ1dHRvbiwgbGkuZmF1eC1idXR0b24gYSwgLmJ1dHRvbi5kaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0sIGxpLmZhdXgtYnV0dG9uIGFbZGlzYWJsZWRdLCAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCBhLmJ1dHRvbi5kaXNhYmxlZC5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQuYWN0aXZlLCBidXR0b24uYnV0dG9uLmRpc2FibGVkLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIGEuYnV0dG9uLmFjdGl2ZVtkaXNhYmxlZF0sIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlW2Rpc2FibGVkXSwgYnV0dG9uLmJ1dHRvbi5hY3RpdmVbZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiBhW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIGFbZGlzYWJsZWRdOmZvY3VzIHsgYmFja2dyb3VuZC1jb2xvcjogI0ZEQzQwMDsgY29sb3I6ICMwNDMyNjM7IH1cblxuLmJ1dHRvbjpob3ZlciwgYS5idXR0b24uYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZSwgYnV0dG9uLmJ1dHRvbi5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGE6aG92ZXIsIC5idXR0b246Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIGE6Zm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQzMjYzOyBjb2xvcjogIzA0MzI2MzsgfVxuXG4uYnV0dG9uLmhvbGxvdywgbGkuZmF1eC1idXR0b24gYS5ob2xsb3csIC5idXR0b24uaG9sbG93OmhvdmVyLCBhLmJ1dHRvbi5ob2xsb3cuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmhvbGxvdy5hY3RpdmUsIGJ1dHRvbi5idXR0b24uaG9sbG93LmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiBhLmhvbGxvdzpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgYS5idXR0b24uaG9sbG93LmRpc2FibGVkLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5ob2xsb3cuZGlzYWJsZWQuYWN0aXZlLCBidXR0b24uYnV0dG9uLmhvbGxvdy5kaXNhYmxlZC5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgbGkuZmF1eC1idXR0b24gYS5ob2xsb3cuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gYS5ob2xsb3dbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIGEuYnV0dG9uLmhvbGxvdy5hY3RpdmVbZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiBhLmhvbGxvdy5hY3RpdmVbZGlzYWJsZWRdLCBidXR0b24uYnV0dG9uLmhvbGxvdy5hY3RpdmVbZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiBhLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cywgbGkuZmF1eC1idXR0b24gYS5ob2xsb3dbZGlzYWJsZWRdOmZvY3VzIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmJ1dHRvbi5ob2xsb3csIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93LCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gYS5ob2xsb3cuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gYS5ob2xsb3dbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgYS5idXR0b24uaG9sbG93LmRpc2FibGVkLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5ob2xsb3cuZGlzYWJsZWQuYWN0aXZlLCBidXR0b24uYnV0dG9uLmhvbGxvdy5kaXNhYmxlZC5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIGEuYnV0dG9uLmhvbGxvdy5hY3RpdmVbZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiBhLmhvbGxvdy5hY3RpdmVbZGlzYWJsZWRdLCBidXR0b24uYnV0dG9uLmhvbGxvdy5hY3RpdmVbZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiBhLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiBhLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiBhLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMgeyBib3JkZXI6IDFweCBzb2xpZCAjRkRDNDAwOyBjb2xvcjogI0ZEQzQwMDsgfVxuXG4uYnV0dG9uLmhvbGxvdzpob3ZlciwgYS5idXR0b24uaG9sbG93LmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5ob2xsb3cuYWN0aXZlLCBidXR0b24uYnV0dG9uLmhvbGxvdy5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cywgbGkuZmF1eC1idXR0b24gYS5ob2xsb3c6Zm9jdXMgeyBib3JkZXItY29sb3I6ICM3ZjYyMDA7IGNvbG9yOiAjN2Y2MjAwOyB9XG5cbi5idXR0b24uY2xlYXIsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXIsIC5idXR0b24uY2xlYXI6aG92ZXIsIGEuYnV0dG9uLmNsZWFyLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5jbGVhci5hY3RpdmUsIGJ1dHRvbi5idXR0b24uY2xlYXIuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyOmZvY3VzLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLCBhLmJ1dHRvbi5jbGVhci5kaXNhYmxlZC5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXIuZGlzYWJsZWQuYWN0aXZlLCBidXR0b24uYnV0dG9uLmNsZWFyLmRpc2FibGVkLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgbGkuZmF1eC1idXR0b24gYS5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgYS5idXR0b24uY2xlYXIuYWN0aXZlW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gYS5jbGVhci5hY3RpdmVbZGlzYWJsZWRdLCBidXR0b24uYnV0dG9uLmNsZWFyLmFjdGl2ZVtkaXNhYmxlZF0sIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cywgbGkuZmF1eC1idXR0b24gYS5jbGVhcltkaXNhYmxlZF06Zm9jdXMgeyBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uYnV0dG9uLmNsZWFyLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gYS5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIGEuYnV0dG9uLmNsZWFyLmRpc2FibGVkLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5jbGVhci5kaXNhYmxlZC5hY3RpdmUsIGJ1dHRvbi5idXR0b24uY2xlYXIuZGlzYWJsZWQuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgYS5idXR0b24uY2xlYXIuYWN0aXZlW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gYS5jbGVhci5hY3RpdmVbZGlzYWJsZWRdLCBidXR0b24uYnV0dG9uLmNsZWFyLmFjdGl2ZVtkaXNhYmxlZF0sIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cywgbGkuZmF1eC1idXR0b24gYS5jbGVhcltkaXNhYmxlZF06Zm9jdXMgeyBjb2xvcjogI0ZEQzQwMDsgfVxuXG4uYnV0dG9uLmNsZWFyOmhvdmVyLCBhLmJ1dHRvbi5jbGVhci5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXIuYWN0aXZlLCBidXR0b24uYnV0dG9uLmNsZWFyLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cywgbGkuZmF1eC1idXR0b24gYS5jbGVhcjpmb2N1cyB7IGNvbG9yOiAjN2Y2MjAwOyB9XG5cbi5idXR0b24uZGlzYWJsZWQsIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQsIC5idXR0b25bZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiBhW2Rpc2FibGVkXSB7IG9wYWNpdHk6IDE7IGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLmJ1dHRvbi5kcm9wZG93bjo6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuZHJvcGRvd246OmFmdGVyIHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAwOyBoZWlnaHQ6IDA7IGJvcmRlcjogaW5zZXQgMC40ZW07IGNvbnRlbnQ6ICcnOyBib3JkZXItYm90dG9tLXdpZHRoOiAwOyBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDsgYm9yZGVyLWNvbG9yOiAjRkZGIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyBwb3NpdGlvbjogcmVsYXRpdmU7IHRvcDogMC40ZW07IGRpc3BsYXk6IGlubGluZS1ibG9jazsgZmxvYXQ6IHJpZ2h0OyBtYXJnaW4tbGVmdDogMi44ZW07IH1cblxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3c6OmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmRyb3Bkb3duLmhvbGxvdzo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXI6OmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmRyb3Bkb3duLmNsZWFyOjphZnRlciB7IGJvcmRlci10b3AtY29sb3I6ICNGREM0MDA7IH1cblxuLmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlciwgbGkuZmF1eC1idXR0b24gYS5hcnJvdy1vbmx5OjphZnRlciB7IHRvcDogLTAuMWVtOyBmbG9hdDogbm9uZTsgbWFyZ2luLWxlZnQ6IDA7IH1cblxuYS5idXR0b246aG92ZXIsIGEuYnV0dG9uLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGE6aG92ZXIsIGEuYnV0dG9uOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiBhOmZvY3VzIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cblt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSwgdGV4dGFyZWEgeyBkaXNwbGF5OiBibG9jazsgYm94LXNpemluZzogYm9yZGVyLWJveDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMi4zNzVyZW07IG1hcmdpbjogMCAwIDEuODc1cmVtOyBwYWRkaW5nOiAwLjQ2ODc1cmVtIDA7IGJvcmRlcjogbm9uZTsgYm9yZGVyLXJhZGl1czogMDsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGJveC1zaGFkb3c6IG5vbmU7IGZvbnQtZmFtaWx5OiBpbmhlcml0OyBmb250LXNpemU6IDFyZW07IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGxpbmUtaGVpZ2h0OiAxLjU7IGNvbG9yOiAjMDQzMjYzOyB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgYXBwZWFyYW5jZTogbm9uZTsgfVxuXG5bdHlwZT0ndGV4dCddOmZvY3VzLCBbdHlwZT0ncGFzc3dvcmQnXTpmb2N1cywgW3R5cGU9J2RhdGUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmZvY3VzLCBbdHlwZT0nbW9udGgnXTpmb2N1cywgW3R5cGU9J3dlZWsnXTpmb2N1cywgW3R5cGU9J2VtYWlsJ106Zm9jdXMsIFt0eXBlPSdudW1iZXInXTpmb2N1cywgW3R5cGU9J3NlYXJjaCddOmZvY3VzLCBbdHlwZT0ndGVsJ106Zm9jdXMsIFt0eXBlPSd0aW1lJ106Zm9jdXMsIFt0eXBlPSd1cmwnXTpmb2N1cywgW3R5cGU9J2NvbG9yJ106Zm9jdXMsIHRleHRhcmVhOmZvY3VzIHsgb3V0bGluZTogbm9uZTsgYm9yZGVyOiBub25lOyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgYm94LXNoYWRvdzogbm9uZTsgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cblxudGV4dGFyZWEgeyBtYXgtd2lkdGg6IDEwMCU7IH1cblxudGV4dGFyZWFbcm93c10geyBoZWlnaHQ6IGF1dG87IH1cblxuaW5wdXQ6ZGlzYWJsZWQsIGlucHV0W3JlYWRvbmx5XSwgdGV4dGFyZWE6ZGlzYWJsZWQsIHRleHRhcmVhW3JlYWRvbmx5XSB7IGJhY2tncm91bmQtY29sb3I6ICNFNEU0RTQ7IGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuW3R5cGU9J3N1Ym1pdCddLCBbdHlwZT0nYnV0dG9uJ10geyBhcHBlYXJhbmNlOiBub25lOyBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuaW5wdXRbdHlwZT0nc2VhcmNoJ10geyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbjo6cGxhY2Vob2xkZXIgeyBjb2xvcjogIzUyNTI0NTsgfVxuXG5bdHlwZT0nZmlsZSddLCBbdHlwZT0nY2hlY2tib3gnXSwgW3R5cGU9J3JhZGlvJ10geyBtYXJnaW46IDAgMCAxLjg3NXJlbTsgfVxuXG5bdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLCBbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IG1hcmdpbi1yaWdodDogMS44NzVyZW07IG1hcmdpbi1ib3R0b206IDA7IH1cblxuW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbFtmb3JdLCBbdHlwZT0ncmFkaW8nXSArIGxhYmVsW2Zvcl0geyBjdXJzb3I6IHBvaW50ZXI7IH1cblxubGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSwgbGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7IG1hcmdpbi1yaWdodDogMC45Mzc1cmVtOyB9XG5cblt0eXBlPSdmaWxlJ10geyB3aWR0aDogMTAwJTsgfVxuXG5sYWJlbCB7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW46IDA7IGZvbnQtc2l6ZTogMC44NzVyZW07IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGxpbmUtaGVpZ2h0OiAxLjg7IGNvbG9yOiAjMDAwOyB9XG5cbmxhYmVsLm1pZGRsZSB7IG1hcmdpbjogMCAwIDEuODc1cmVtOyBwYWRkaW5nOiAwLjkzNzVyZW0gMDsgfVxuXG4uaGVscC10ZXh0IHsgbWFyZ2luLXRvcDogLTAuOTM3NXJlbTsgZm9udC1zaXplOiAwLjgxMjVyZW07IGZvbnQtc3R5bGU6IGl0YWxpYzsgY29sb3I6ICMwMDA7IH1cblxuLmlucHV0LWdyb3VwIHsgZGlzcGxheTogZmxleDsgd2lkdGg6IDEwMCU7IG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4uaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHsgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuXG4uaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCwgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7IGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsLCAuaW5wdXQtZ3JvdXAtZmllbGQsIC5pbnB1dC1ncm91cC1idXR0b24sIC5pbnB1dC1ncm91cC1idXR0b24gYSwgLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCwgLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sIC5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwgeyBtYXJnaW46IDA7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsIHsgcGFkZGluZzogMCAxcmVtOyBib3JkZXI6IDFweCBzb2xpZCAjQjFCMUIxOyBiYWNrZ3JvdW5kOiAjRTRFNEU0OyBjb2xvcjogIzAwMDsgdGV4dC1hbGlnbjogY2VudGVyOyB3aGl0ZS1zcGFjZTogbm93cmFwOyBkaXNwbGF5OiBmbGV4OyBmbGV4OiAwIDAgYXV0bzsgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQgeyBib3JkZXItcmlnaHQ6IDA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsOmxhc3QtY2hpbGQgeyBib3JkZXItbGVmdDogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtZmllbGQgeyBib3JkZXItcmFkaXVzOiAwOyBmbGV4OiAxIDEgMHB4OyBtaW4td2lkdGg6IDA7IH1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiB7IHBhZGRpbmctdG9wOiAwOyBwYWRkaW5nLWJvdHRvbTogMDsgdGV4dC1hbGlnbjogY2VudGVyOyBkaXNwbGF5OiBmbGV4OyBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGEsIC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsIC5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLCAuaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHsgYWxpZ24tc2VsZjogc3RyZXRjaDsgaGVpZ2h0OiBhdXRvOyBwYWRkaW5nLXRvcDogMDsgcGFkZGluZy1ib3R0b206IDA7IGZvbnQtc2l6ZTogMXJlbTsgfVxuXG5maWVsZHNldCB7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgYm9yZGVyOiAwOyB9XG5cbmxlZ2VuZCB7IG1heC13aWR0aDogMTAwJTsgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG5cbi5maWVsZHNldCB7IG1hcmdpbjogMS4xMjVyZW0gMDsgcGFkZGluZzogMS4yNXJlbTsgYm9yZGVyOiAxcHggc29saWQgI0IxQjFCMTsgfVxuXG4uZmllbGRzZXQgbGVnZW5kIHsgbWFyZ2luOiAwOyBtYXJnaW4tbGVmdDogLTAuMTg3NXJlbTsgcGFkZGluZzogMCAwLjE4NzVyZW07IH1cblxuc2VsZWN0IHsgaGVpZ2h0OiAyLjM3NXJlbTsgbWFyZ2luOiAwIDAgMS44NzVyZW07IHBhZGRpbmc6IDAuNDY4NzVyZW0gMDsgYXBwZWFyYW5jZTogbm9uZTsgYm9yZGVyOiBub25lOyBib3JkZXItcmFkaXVzOiAwOyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOyBmb250LWZhbWlseTogaW5oZXJpdDsgZm9udC1zaXplOiAxcmVtOyBmb250LXdlaWdodDogbm9ybWFsOyBsaW5lLWhlaWdodDogMS41OyBjb2xvcjogIzA0MzI2MzsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjg0LCA1MCwgOTklMjknPjwvcG9seWdvbj48L3N2Zz5cIik7IGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDsgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTEuODc1cmVtIGNlbnRlcjsgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4OyBwYWRkaW5nLXJpZ2h0OiAyLjgxMjVyZW07IHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHsgc2VsZWN0IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTsgfSB9XG5cbnNlbGVjdDpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IGJvcmRlcjogbm9uZTsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGJveC1zaGFkb3c6IG5vbmU7IHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG5cbnNlbGVjdDpkaXNhYmxlZCB7IGJhY2tncm91bmQtY29sb3I6ICNFNEU0RTQ7IGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuc2VsZWN0OjotbXMtZXhwYW5kIHsgZGlzcGxheTogbm9uZTsgfVxuXG5zZWxlY3RbbXVsdGlwbGVdIHsgaGVpZ2h0OiBhdXRvOyBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbnNlbGVjdDpub3QoW211bHRpcGxlXSkgeyBwYWRkaW5nLXRvcDogMDsgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cykgeyBib3JkZXItY29sb3I6ICNhZDAwMzE7IGJhY2tncm91bmQtY29sb3I6ICNmN2U2ZWE7IH1cblxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cyk6OnBsYWNlaG9sZGVyIHsgY29sb3I6ICNhZDAwMzE7IH1cblxuLmlzLWludmFsaWQtbGFiZWwgeyBjb2xvcjogI2FkMDAzMTsgfVxuXG4uZm9ybS1lcnJvciB7IGRpc3BsYXk6IG5vbmU7IG1hcmdpbi10b3A6IC0wLjkzNzVyZW07IG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyBmb250LXNpemU6IDAuNzVyZW07IGZvbnQtd2VpZ2h0OiBib2xkOyBjb2xvcjogI2FkMDAzMTsgfVxuXG4uZm9ybS1lcnJvci5pcy12aXNpYmxlIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLmhpZGUgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmludmlzaWJsZSB7IHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgeyAuaGlkZS1mb3Itc21hbGwtb25seSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuc2hvdy1mb3Itc21hbGwtb25seSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5oaWRlLWZvci1tZWRpdW0geyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7IC5zaG93LWZvci1tZWRpdW0geyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHsgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuc2hvdy1mb3ItbWVkaXVtLW9ubHkgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgeyAuaGlkZS1mb3ItbGFyZ2UgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5zaG93LWZvci1sYXJnZSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkgeyAuaGlkZS1mb3ItbGFyZ2Utb25seSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHsgLnNob3ctZm9yLWxhcmdlLW9ubHkgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uc2hvdy1mb3Itc3IsIC5zaG93LW9uLWZvY3VzIHsgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7IHdpZHRoOiAxcHggIWltcG9ydGFudDsgaGVpZ2h0OiAxcHggIWltcG9ydGFudDsgcGFkZGluZzogMCAhaW1wb3J0YW50OyBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7IGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuXG4uc2hvdy1vbi1mb2N1czphY3RpdmUsIC5zaG93LW9uLWZvY3VzOmZvY3VzIHsgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50OyB3aWR0aDogYXV0byAhaW1wb3J0YW50OyBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDsgY2xpcDogYXV0byAhaW1wb3J0YW50OyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSwgLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkgeyAuc2hvdy1mb3ItbGFuZHNjYXBlLCAuaGlkZS1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkgeyAuc2hvdy1mb3ItbGFuZHNjYXBlLCAuaGlkZS1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uaGlkZS1mb3ItbGFuZHNjYXBlLCAuc2hvdy1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHsgLmhpZGUtZm9yLWxhbmRzY2FwZSwgLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkgeyAuaGlkZS1mb3ItbGFuZHNjYXBlLCAuc2hvdy1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuLmFjY29yZGlvbiB7IG1hcmdpbi1sZWZ0OiAwOyBiYWNrZ3JvdW5kOiAjRkZGOyBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cblxuLmFjY29yZGlvbltkaXNhYmxlZF0gLmFjY29yZGlvbi10aXRsZSB7IGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHsgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7IH1cblxuLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7IGJvcmRlci1yYWRpdXM6IDAgMCA1cHggNXB4OyB9XG5cbi5hY2NvcmRpb24tdGl0bGUgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGJsb2NrOyBwYWRkaW5nOiAxLjI1cmVtIDFyZW07IGJvcmRlcjogMXB4IHNvbGlkICNFNEU0RTQ7IGJvcmRlci1ib3R0b206IDA7IGZvbnQtc2l6ZTogMC43NXJlbTsgbGluZS1oZWlnaHQ6IDE7IGNvbG9yOiAjMDQzMjYzOyB9XG5cbjpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUgeyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0U0RTRFNDsgYm9yZGVyLXJhZGl1czogMCAwIDVweCA1cHg7IH1cblxuLmFjY29yZGlvbi10aXRsZTpob3ZlciwgYS5hY2NvcmRpb24tdGl0bGUuYWN0aXZlLCBidXR0b24uYWNjb3JkaW9uLXRpdGxlLmFjdGl2ZSwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7IGJhY2tncm91bmQtY29sb3I6ICNFNEU0RTQ7IH1cblxuLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDUwJTsgcmlnaHQ6IDFyZW07IG1hcmdpbi10b3A6IC0wLjVyZW07IGNvbnRlbnQ6IFwiK1wiOyB9XG5cbi5pcy1hY3RpdmUgPiAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUgeyBjb250ZW50OiBcIuKAk1wiOyB9XG5cbi5hY2NvcmRpb24tY29udGVudCB7IGRpc3BsYXk6IG5vbmU7IHBhZGRpbmc6IDAgMXJlbTsgYm9yZGVyOiAxcHggc29saWQgI0U0RTRFNDsgYm9yZGVyLWJvdHRvbTogMDsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGNvbG9yOiAjNTI1MjQ1OyB9XG5cbjpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0U0RTRFNDsgfVxuXG4uYnV0dG9uLWdyb3VwIHsgbWFyZ2luLWJvdHRvbTogMXJlbTsgZGlzcGxheTogZmxleDsgZmxleC13cmFwOiB3cmFwOyBhbGlnbi1pdGVtczogc3RyZXRjaDsgZmxleC1ncm93OiAxOyB9XG5cbi5idXR0b24tZ3JvdXA6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cDo6YWZ0ZXIgeyBkaXNwbGF5OiB0YWJsZTsgY29udGVudDogJyAnOyBmbGV4LWJhc2lzOiAwOyBvcmRlcjogMTsgfVxuXG4uYnV0dG9uLWdyb3VwOjphZnRlciB7IGNsZWFyOiBib3RoOyB9XG5cbi5idXR0b24tZ3JvdXA6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cDo6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyB9XG5cbi5idXR0b24tZ3JvdXAgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cCBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwIGEgeyBtYXJnaW46IDA7IG1hcmdpbi1yaWdodDogMXB4OyBtYXJnaW4tYm90dG9tOiAxcHg7IGZvbnQtc2l6ZTogMS4xMjVyZW07IGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5idXR0b24tZ3JvdXAgLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwIGxpLmZhdXgtYnV0dG9uIGE6bGFzdC1jaGlsZCwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cCBhOmxhc3QtY2hpbGQgeyBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLmJ1dHRvbi1ncm91cC50aW55IC5idXR0b24sIC5idXR0b24tZ3JvdXAudGlueSBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnRpbnkgYSB7IGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cblxuLmJ1dHRvbi1ncm91cC5zbWFsbCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnNtYWxsIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuc21hbGwgYSB7IGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cblxuLmJ1dHRvbi1ncm91cC5sYXJnZSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmxhcmdlIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAubGFyZ2UgYSB7IGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cblxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgYSB7IGZsZXg6IDEgMSAwcHg7IG1hcmdpbi1yaWdodDogMDsgfVxuXG4uYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhLmJ1dHRvbi5hY3RpdmUsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgYnV0dG9uLmJ1dHRvbi5hY3RpdmUsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGE6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGE6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGE6Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGE6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuYnV0dG9uLmRpc2FibGVkLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZC5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuZGlzYWJsZWQuYWN0aXZlLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBidXR0b24uYnV0dG9uLmRpc2FibGVkLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZDpob3ZlciwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZDpmb2N1cywgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGFbZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuYnV0dG9uLmFjdGl2ZVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYS5hY3RpdmVbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBidXR0b24uYnV0dG9uLmFjdGl2ZVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGFbZGlzYWJsZWRdOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGFbZGlzYWJsZWRdOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhW2Rpc2FibGVkXTpmb2N1cyB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGEsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBsaS5mYXV4LWJ1dHRvbiBhW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuYnV0dG9uLmRpc2FibGVkLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZC5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuZGlzYWJsZWQuYWN0aXZlLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBidXR0b24uYnV0dG9uLmRpc2FibGVkLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZDpob3ZlciwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuYnV0dG9uLmFjdGl2ZVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYS5hY3RpdmVbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBidXR0b24uYnV0dG9uLmFjdGl2ZVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGFbZGlzYWJsZWRdOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZDpmb2N1cywgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IGxpLmZhdXgtYnV0dG9uIGFbZGlzYWJsZWRdOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmhvbGxvdyBhW2Rpc2FibGVkXTpmb2N1cyB7IGJvcmRlcjogMXB4IHNvbGlkICNGREM0MDA7IGNvbG9yOiAjRkRDNDAwOyB9XG5cbi5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuYnV0dG9uLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgbGkuZmF1eC1idXR0b24gYS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuaG9sbG93IGEuYWN0aXZlLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyBidXR0b24uYnV0dG9uLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgbGkuZmF1eC1idXR0b24gYTpob3ZlciwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgbGkuZmF1eC1idXR0b24gYTpmb2N1cywgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5ob2xsb3cgYTpmb2N1cyB7IGJvcmRlci1jb2xvcjogIzdmNjIwMDsgY29sb3I6ICM3ZjYyMDA7IH1cblxuLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgYSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGEuYnV0dG9uLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5jbGVhciBidXR0b24uYnV0dG9uLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGE6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGE6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhLmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGEuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciBhLmJ1dHRvbi5kaXNhYmxlZC5hY3RpdmUsIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZC5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgYS5kaXNhYmxlZC5hY3RpdmUsIC5idXR0b24tZ3JvdXAuY2xlYXIgYnV0dG9uLmJ1dHRvbi5kaXNhYmxlZC5hY3RpdmUsIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZDpob3ZlciwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZDpmb2N1cywgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGFbZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGFbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGEuYnV0dG9uLmFjdGl2ZVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYS5hY3RpdmVbZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGEuYWN0aXZlW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciBidXR0b24uYnV0dG9uLmFjdGl2ZVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYVtkaXNhYmxlZF06aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgYVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYVtkaXNhYmxlZF06Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgYVtkaXNhYmxlZF06Zm9jdXMgeyBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24sIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGFbZGlzYWJsZWRdLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGFbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgYS5idXR0b24uZGlzYWJsZWQuYWN0aXZlLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGEuZGlzYWJsZWQuYWN0aXZlLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGJ1dHRvbi5idXR0b24uZGlzYWJsZWQuYWN0aXZlLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQ6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuY2xlYXIgYS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciBhLmJ1dHRvbi5hY3RpdmVbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlW2Rpc2FibGVkXSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhLmFjdGl2ZVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgYnV0dG9uLmJ1dHRvbi5hY3RpdmVbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGFbZGlzYWJsZWRdOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGFbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZDpmb2N1cywgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGxpLmZhdXgtYnV0dG9uIGFbZGlzYWJsZWRdOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGFbZGlzYWJsZWRdOmZvY3VzIHsgY29sb3I6ICNGREM0MDA7IH1cblxuLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIGEuYnV0dG9uLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5jbGVhciBhLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5jbGVhciBidXR0b24uYnV0dG9uLmFjdGl2ZSwgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGE6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciBsaS5mYXV4LWJ1dHRvbiBhOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLmNsZWFyIGE6Zm9jdXMgeyBjb2xvcjogIzdmNjIwMDsgfVxuXG4uYnV0dG9uLWdyb3VwLm5vLWdhcHMgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5uby1nYXBzIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAubm8tZ2FwcyBhIHsgbWFyZ2luLXJpZ2h0OiAtMC4wNjI1cmVtOyB9XG5cbi5idXR0b24tZ3JvdXAubm8tZ2FwcyAuYnV0dG9uICsgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5uby1nYXBzIGxpLmZhdXgtYnV0dG9uIGEgKyAuYnV0dG9uLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLm5vLWdhcHMgYSArIC5idXR0b24sIC5idXR0b24tZ3JvdXAubm8tZ2FwcyBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uICsgYSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5uby1nYXBzIC5idXR0b24gKyBhLCAuYnV0dG9uLWdyb3VwLm5vLWdhcHMgbGkuZmF1eC1idXR0b24gYSArIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAubm8tZ2FwcyBhICsgYSB7IGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIHsgZmxleC13cmFwOiB3cmFwOyB9XG5cbi5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkIGEsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIGEsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIGEgeyBmbGV4OiAwIDAgMTAwJTsgfVxuXG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQgLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQgbGkuZmF1eC1idXR0b24gYTpsYXN0LWNoaWxkLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQgYTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCBsaS5mYXV4LWJ1dHRvbiBhOmxhc3QtY2hpbGQsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgYTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIGxpLmZhdXgtYnV0dG9uIGE6bGFzdC1jaGlsZCwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gYTpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCBhLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCBhLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCBhIHsgZmxleDogMSAxIDBweDsgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIGEgeyBmbGV4OiAwIDAgYXV0bzsgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIGEgeyBmbGV4OiAwIDAgYXV0bzsgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7IC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgeyBkaXNwbGF5OiBibG9jazsgfVxuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCBhIHsgZGlzcGxheTogYmxvY2s7IG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgYSB7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4uZHJvcGRvd24tcGFuZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgei1pbmRleDogMTA7IGRpc3BsYXk6IG5vbmU7IHdpZHRoOiAzMDBweDsgcGFkZGluZzogMXJlbTsgdmlzaWJpbGl0eTogaGlkZGVuOyBib3JkZXI6IDFweCBzb2xpZCAjQjFCMUIxOyBib3JkZXItcmFkaXVzOiA1cHg7IGJhY2tncm91bmQtY29sb3I6ICNGRkY7IGZvbnQtc2l6ZTogMXJlbTsgfVxuXG4uZHJvcGRvd24tcGFuZS5pcy1vcGVuaW5nIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLmRyb3Bkb3duLXBhbmUuaXMtb3BlbiB7IGRpc3BsYXk6IGJsb2NrOyB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5kcm9wZG93bi1wYW5lLnRpbnkgeyB3aWR0aDogMTAwcHg7IH1cblxuLmRyb3Bkb3duLXBhbmUuc21hbGwgeyB3aWR0aDogMjAwcHg7IH1cblxuLmRyb3Bkb3duLXBhbmUubGFyZ2UgeyB3aWR0aDogNDAwcHg7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyB0b3A6IDEwMCU7IHJpZ2h0OiAwOyBsZWZ0OiBhdXRvOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7IHRvcDogMTAwJTsgcmlnaHQ6IGF1dG87IGxlZnQ6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEgeyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDA7IGhlaWdodDogMDsgYm9yZGVyOiBpbnNldCA2cHg7IGNvbnRlbnQ6ICcnOyBib3JkZXItYm90dG9tLXdpZHRoOiAwOyBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDsgYm9yZGVyLWNvbG9yOiAjMDQzMjYzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyByaWdodDogNXB4OyBsZWZ0OiBhdXRvOyBtYXJnaW4tdG9wOiAtM3B4OyB9XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuZHJvcGRvd24ubWVudSBhIHsgb3V0bGluZTogMDsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpID4gYSB7IGJhY2tncm91bmQ6ICNGRkY7IHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtYWN0aXZlID4gYSB7IGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyBjb2xvcjogIzA0MzI2MzsgfVxuXG4ubm8tanMgLmRyb3Bkb3duLm1lbnUgdWwgeyBkaXNwbGF5OiBub25lOyB9XG5cbi5kcm9wZG93bi5tZW51IC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7IHRvcDogMDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7IHRvcDogMDsgcmlnaHQ6IDEwMCU7IGxlZnQ6IGF1dG87IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHsgcmlnaHQ6IGF1dG87IGxlZnQ6IDEwMCU7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHsgcmlnaHQ6IDE0cHg7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDA7IGhlaWdodDogMDsgYm9yZGVyOiBpbnNldCA2cHg7IGNvbnRlbnQ6ICcnOyBib3JkZXItbGVmdC13aWR0aDogMDsgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDQzMjYzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyByaWdodDogYXV0bzsgbGVmdDogNXB4OyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMDsgaGVpZ2h0OiAwOyBib3JkZXI6IGluc2V0IDZweDsgY29udGVudDogJyc7IGJvcmRlci1yaWdodC13aWR0aDogMDsgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkOyBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwNDMyNjM7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyB0b3A6IDEwMCU7IHJpZ2h0OiAwOyBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7IHRvcDogMTAwJTsgcmlnaHQ6IGF1dG87IGxlZnQ6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEgeyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDA7IGhlaWdodDogMDsgYm9yZGVyOiBpbnNldCA2cHg7IGNvbnRlbnQ6ICcnOyBib3JkZXItYm90dG9tLXdpZHRoOiAwOyBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDsgYm9yZGVyLWNvbG9yOiAjMDQzMjYzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyByaWdodDogNXB4OyBsZWZ0OiBhdXRvOyBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHsgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7IHRvcDogMDsgcmlnaHQ6IDEwMCU7IGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7IHJpZ2h0OiBhdXRvOyBsZWZ0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIgeyByaWdodDogMTRweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDA7IGhlaWdodDogMDsgYm9yZGVyOiBpbnNldCA2cHg7IGNvbnRlbnQ6ICcnOyBib3JkZXItbGVmdC13aWR0aDogMDsgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDQzMjYzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyByaWdodDogYXV0bzsgbGVmdDogNXB4OyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDA7IGhlaWdodDogMDsgYm9yZGVyOiBpbnNldCA2cHg7IGNvbnRlbnQ6ICcnOyBib3JkZXItcmlnaHQtd2lkdGg6IDA7IGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMDQzMjYzOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7IHRvcDogMTAwJTsgcmlnaHQ6IDA7IGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyB0b3A6IDEwMCU7IHJpZ2h0OiBhdXRvOyBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEgeyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMDsgaGVpZ2h0OiAwOyBib3JkZXI6IGluc2V0IDZweDsgY29udGVudDogJyc7IGJvcmRlci1ib3R0b20td2lkdGg6IDA7IGJvcmRlci10b3Atc3R5bGU6IHNvbGlkOyBib3JkZXItY29sb3I6ICMwNDMyNjMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IHJpZ2h0OiA1cHg7IGxlZnQ6IGF1dG87IG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7IHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7IHRvcDogMDsgcmlnaHQ6IDEwMCU7IGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHsgcmlnaHQ6IGF1dG87IGxlZnQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHsgcmlnaHQ6IDE0cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDA7IGhlaWdodDogMDsgYm9yZGVyOiBpbnNldCA2cHg7IGNvbnRlbnQ6ICcnOyBib3JkZXItbGVmdC13aWR0aDogMDsgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDQzMjYzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyByaWdodDogYXV0bzsgbGVmdDogNXB4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMDsgaGVpZ2h0OiAwOyBib3JkZXI6IGluc2V0IDZweDsgY29udGVudDogJyc7IGJvcmRlci1yaWdodC13aWR0aDogMDsgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkOyBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwNDMyNjM7IH0gfVxuXG4uZHJvcGRvd24ubWVudS5hbGlnbi1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIgeyB0b3A6IDEwMCU7IHJpZ2h0OiAwOyBsZWZ0OiBhdXRvOyB9XG5cbi5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHsgd2lkdGg6IDEwMHB4OyB9XG5cbi5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsLmFsaWduLXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYTo6YWZ0ZXIgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNTAlOyByaWdodDogNXB4OyBsZWZ0OiBhdXRvOyBtYXJnaW4tdG9wOiAtNnB4OyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHsgdG9wOiAxMDAlOyBsZWZ0OiBhdXRvOyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgeyByaWdodDogMTAwJTsgbGVmdDogYXV0bzsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7IHJpZ2h0OiBhdXRvOyBsZWZ0OiAxMDAlOyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51IHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDEwMCU7IHotaW5kZXg6IDE7IGRpc3BsYXk6IG5vbmU7IG1pbi13aWR0aDogMjAwcHg7IGJvcmRlcjogMXB4IHNvbGlkICNCMUIxQjE7IGJhY2tncm91bmQ6ICNGRkY7IH1cblxuLmRyb3Bkb3duIC5pcy1kcm9wZG93bi1zdWJtZW51IGEgeyBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7IHJpZ2h0OiAxNHB4OyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIgeyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDA7IGhlaWdodDogMDsgYm9yZGVyOiBpbnNldCA2cHg7IGNvbnRlbnQ6ICcnOyBib3JkZXItbGVmdC13aWR0aDogMDsgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDQzMjYzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyByaWdodDogYXV0bzsgbGVmdDogNXB4OyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAwOyBoZWlnaHQ6IDA7IGJvcmRlcjogaW5zZXQgNnB4OyBjb250ZW50OiAnJzsgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwOyBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7IGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzA0MzI2MzsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudSB7IG1hcmdpbi10b3A6IC0xcHg7IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgPiBsaSB7IHdpZHRoOiAxMDAlOyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LmpzLWRyb3Bkb3duLWFjdGl2ZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5sYWJlbCB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgcGFkZGluZzogNXB4IDE0cHg7IGJvcmRlci1yYWRpdXM6IDA7IGZvbnQtc2l6ZTogMXJlbTsgbGluZS1oZWlnaHQ6IDE7IHdoaXRlLXNwYWNlOiBub3dyYXA7IGN1cnNvcjogZGVmYXVsdDsgYmFja2dyb3VuZDogI0ZGRjsgY29sb3I6ICMwNDMyNjM7IH1cblxuLm1lbnUgeyBwYWRkaW5nOiAwOyBtYXJnaW46IDA7IGxpc3Qtc3R5bGU6IG5vbmU7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogZmxleDsgZmxleC13cmFwOiB3cmFwOyB9XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudSBsaSB7IG91dGxpbmU6IDA7IH1cblxuLm1lbnUgYSwgLm1lbnUgLmJ1dHRvbiwgLm1lbnUgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLm1lbnUgYSB7IGxpbmUtaGVpZ2h0OiAxOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGRpc3BsYXk6IGJsb2NrOyBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuXG4ubWVudSBpbnB1dCwgLm1lbnUgc2VsZWN0LCAubWVudSBhLCAubWVudSBidXR0b24geyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5tZW51IGlucHV0IHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5tZW51LCAubWVudS5ob3Jpem9udGFsIHsgZmxleC13cmFwOiB3cmFwOyBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG5cbi5tZW51LnZlcnRpY2FsIHsgZmxleC13cmFwOiBub3dyYXA7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLm1lbnUuZXhwYW5kZWQgbGkgeyBmbGV4OiAxIDEgMHB4OyB9XG5cbi5tZW51LnNpbXBsZSB7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLm1lbnUuc2ltcGxlIGxpICsgbGkgeyBtYXJnaW4tbGVmdDogMXJlbTsgfVxuXG4ubWVudS5zaW1wbGUgYSB7IHBhZGRpbmc6IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLm1lbnUubWVkaXVtLWhvcml6b250YWwgeyBmbGV4LXdyYXA6IHdyYXA7IGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLm1lbnUubWVkaXVtLXZlcnRpY2FsIHsgZmxleC13cmFwOiBub3dyYXA7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLm1lbnUubWVkaXVtLWV4cGFuZGVkIGxpIHsgZmxleDogMSAxIDBweDsgfVxuICAubWVudS5tZWRpdW0tc2ltcGxlIGxpIHsgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7IC5tZW51LmxhcmdlLWhvcml6b250YWwgeyBmbGV4LXdyYXA6IHdyYXA7IGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLm1lbnUubGFyZ2UtdmVydGljYWwgeyBmbGV4LXdyYXA6IG5vd3JhcDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubWVudS5sYXJnZS1leHBhbmRlZCBsaSB7IGZsZXg6IDEgMSAwcHg7IH1cbiAgLm1lbnUubGFyZ2Utc2ltcGxlIGxpIHsgZmxleDogMSAxIDBweDsgfSB9XG5cbi5tZW51Lm5lc3RlZCB7IG1hcmdpbi1yaWdodDogMDsgbWFyZ2luLWxlZnQ6IDFyZW07IH1cblxuLm1lbnUuaWNvbnMgYSB7IGRpc3BsYXk6IGZsZXg7IH1cblxuLm1lbnUuaWNvbi10b3AgYSwgLm1lbnUuaWNvbi1yaWdodCBhLCAubWVudS5pY29uLWJvdHRvbSBhLCAubWVudS5pY29uLWxlZnQgYSB7IGRpc3BsYXk6IGZsZXg7IH1cblxuLm1lbnUuaWNvbi1sZWZ0IGxpIGEgeyBmbGV4LWZsb3c6IHJvdyBub3dyYXA7IH1cblxuLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaW1nLCAubWVudS5pY29uLWxlZnQgbGkgYSBpLCAubWVudS5pY29uLWxlZnQgbGkgYSBzdmcgeyBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07IH1cblxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIHsgZmxleC1mbG93OiByb3cgbm93cmFwOyB9XG5cbi5tZW51Lmljb24tcmlnaHQgbGkgYSBpbWcsIC5tZW51Lmljb24tcmlnaHQgbGkgYSBpLCAubWVudS5pY29uLXJpZ2h0IGxpIGEgc3ZnIHsgbWFyZ2luLWxlZnQ6IDAuMjVyZW07IH1cblxuLm1lbnUuaWNvbi10b3AgbGkgYSB7IGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuXG4ubWVudS5pY29uLXRvcCBsaSBhIGltZywgLm1lbnUuaWNvbi10b3AgbGkgYSBpLCAubWVudS5pY29uLXRvcCBsaSBhIHN2ZyB7IGFsaWduLXNlbGY6IHN0cmV0Y2g7IG1hcmdpbi1ib3R0b206IDAuMjVyZW07IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIHsgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG5cbi5tZW51Lmljb24tYm90dG9tIGxpIGEgaW1nLCAubWVudS5pY29uLWJvdHRvbSBsaSBhIGksIC5tZW51Lmljb24tYm90dG9tIGxpIGEgc3ZnIHsgYWxpZ24tc2VsZjogc3RyZXRjaDsgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5tZW51IC5pcy1hY3RpdmUgPiBhIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgY29sb3I6ICNGRkY7IH1cblxuLm1lbnUgLmFjdGl2ZSA+IGEgeyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBjb2xvcjogI0ZGRjsgfVxuXG4ubWVudS5hbGlnbi1sZWZ0IHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi5tZW51LmFsaWduLXJpZ2h0IGxpIHsgZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4ubWVudS5hbGlnbi1yaWdodCBsaSAuc3VibWVudSBsaSB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4ubWVudS5hbGlnbi1yaWdodC52ZXJ0aWNhbCBsaSB7IGRpc3BsYXk6IGJsb2NrOyB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4ubWVudS5hbGlnbi1yaWdodC52ZXJ0aWNhbCBsaSAuc3VibWVudSBsaSB7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi5tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQgeyBtYXJnaW4tcmlnaHQ6IDFyZW07IG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5tZW51LmFsaWduLWNlbnRlciBsaSB7IGRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5tZW51LmFsaWduLWNlbnRlciBsaSAuc3VibWVudSBsaSB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4ubWVudSAubWVudS10ZXh0IHsgcGFkZGluZzogMC43cmVtIDFyZW07IGZvbnQtd2VpZ2h0OiBib2xkOyBsaW5lLWhlaWdodDogMTsgY29sb3I6IGluaGVyaXQ7IH1cblxuLm1lbnUtY2VudGVyZWQgPiAubWVudSB7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5tZW51LWNlbnRlcmVkID4gLm1lbnUgbGkgeyBkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4ubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIC5zdWJtZW51IGxpIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHsgZGlzcGxheTogbm9uZTsgfVxuXG4ucGFnaW5hdGlvbiwgdWwucGFnZS1udW1iZXJzIHsgbWFyZ2luLWxlZnQ6IDA7IG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLnBhZ2luYXRpb246OmJlZm9yZSwgdWwucGFnZS1udW1iZXJzOjpiZWZvcmUsIC5wYWdpbmF0aW9uOjphZnRlciwgdWwucGFnZS1udW1iZXJzOjphZnRlciB7IGRpc3BsYXk6IHRhYmxlOyBjb250ZW50OiAnICc7IGZsZXgtYmFzaXM6IDA7IG9yZGVyOiAxOyB9XG5cbi5wYWdpbmF0aW9uOjphZnRlciwgdWwucGFnZS1udW1iZXJzOjphZnRlciB7IGNsZWFyOiBib3RoOyB9XG5cbi5wYWdpbmF0aW9uIGxpLCB1bC5wYWdlLW51bWJlcnMgbGkgeyBtYXJnaW4tcmlnaHQ6IDAuMDYyNXJlbTsgYm9yZGVyLXJhZGl1czogNXB4OyBmb250LXNpemU6IDFyZW07IGRpc3BsYXk6IG5vbmU7IH1cblxuLnBhZ2luYXRpb24gbGk6bGFzdC1jaGlsZCwgdWwucGFnZS1udW1iZXJzIGxpOmxhc3QtY2hpbGQsIC5wYWdpbmF0aW9uIGxpOmZpcnN0LWNoaWxkLCB1bC5wYWdlLW51bWJlcnMgbGk6Zmlyc3QtY2hpbGQgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLnBhZ2luYXRpb24gbGksIHVsLnBhZ2UtbnVtYmVycyBsaSB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG5cbi5wYWdpbmF0aW9uIGEsIHVsLnBhZ2UtbnVtYmVycyBhLCAucGFnaW5hdGlvbiBidXR0b24sIHVsLnBhZ2UtbnVtYmVycyBidXR0b24geyBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtOyBib3JkZXItcmFkaXVzOiA1cHg7IGNvbG9yOiAjMEY1ODlBOyB9XG5cbi5wYWdpbmF0aW9uIGE6aG92ZXIsIHVsLnBhZ2UtbnVtYmVycyBhOmhvdmVyLCAucGFnaW5hdGlvbiBhLmFjdGl2ZSwgdWwucGFnZS1udW1iZXJzIGEuYWN0aXZlLCAucGFnaW5hdGlvbiBidXR0b246aG92ZXIsIHVsLnBhZ2UtbnVtYmVycyBidXR0b246aG92ZXIsIC5wYWdpbmF0aW9uIGJ1dHRvbi5hY3RpdmUsIHVsLnBhZ2UtbnVtYmVycyBidXR0b24uYWN0aXZlIHsgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4ucGFnaW5hdGlvbiAuY3VycmVudCwgdWwucGFnZS1udW1iZXJzIC5jdXJyZW50IHsgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtOyBiYWNrZ3JvdW5kOiBub25lOyBjb2xvcjogIzA0MzI2MzsgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5wYWdpbmF0aW9uIC5kaXNhYmxlZCwgdWwucGFnZS1udW1iZXJzIC5kaXNhYmxlZCB7IHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTsgY29sb3I6ICNCMUIxQjE7IGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLnBhZ2luYXRpb24gLmRpc2FibGVkOmhvdmVyLCB1bC5wYWdlLW51bWJlcnMgLmRpc2FibGVkOmhvdmVyLCAucGFnaW5hdGlvbiBhLmRpc2FibGVkLmFjdGl2ZSwgdWwucGFnZS1udW1iZXJzIGEuZGlzYWJsZWQuYWN0aXZlLCAucGFnaW5hdGlvbiBidXR0b24uZGlzYWJsZWQuYWN0aXZlLCB1bC5wYWdlLW51bWJlcnMgYnV0dG9uLmRpc2FibGVkLmFjdGl2ZSB7IGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi5wYWdpbmF0aW9uIC5lbGxpcHNpczo6YWZ0ZXIsIHVsLnBhZ2UtbnVtYmVycyAuZWxsaXBzaXM6OmFmdGVyIHsgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtOyBjb250ZW50OiAnXFwyMDI2JzsgY29sb3I6ICMwNDMyNjM7IH1cblxuLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLCAucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgY29udGVudDogXCLCq1wiOyB9XG5cbi5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsIC5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW4tbGVmdDogMC41cmVtOyBjb250ZW50OiBcIsK7XCI7IH1cblxudGFibGUgeyBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyB3aWR0aDogMTAwJTsgbWFyZ2luLWJvdHRvbTogMXJlbTsgYm9yZGVyLXJhZGl1czogNXB4OyB9XG5cbnRoZWFkLCB0Ym9keSwgdGZvb3QgeyBib3JkZXI6IDFweCBzb2xpZCAjZTRlNWU5OyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOyB9XG5cbmNhcHRpb24geyBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07IGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbnRoZWFkIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgY29sb3I6ICNGRkY7IH1cblxudGZvb3QgeyBiYWNrZ3JvdW5kOiAjRjRGNEY0OyBjb2xvcjogIzA0MzI2MzsgfVxuXG50aGVhZCB0ciwgdGZvb3QgdHIgeyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG50aGVhZCB0aCwgdGhlYWQgdGQsIHRmb290IHRoLCB0Zm9vdCB0ZCB7IHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTsgZm9udC13ZWlnaHQ6IGJvbGQ7IHRleHQtYWxpZ246IGxlZnQ7IH1cblxudGJvZHkgdGgsIHRib2R5IHRkIHsgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtOyB9XG5cbnRib2R5IHRyIHsgYm9yZGVyLWJvdHRvbTogMDsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNGU1ZTk7IGJhY2tncm91bmQtY29sb3I6ICNGRkY7IH1cblxudGFibGUuc3RyaXBlZCB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikgeyBib3JkZXItYm90dG9tOiAwOyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IHRhYmxlLnN0YWNrIHRoZWFkIHsgZGlzcGxheTogbm9uZTsgfVxuICB0YWJsZS5zdGFjayB0Zm9vdCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdHIsIHRhYmxlLnN0YWNrIHRoLCB0YWJsZS5zdGFjayB0ZCB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gIHRhYmxlLnN0YWNrIHRkIHsgYm9yZGVyLXRvcDogMDsgfSB9XG5cbnRhYmxlLnNjcm9sbCB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMTAwJTsgb3ZlcmZsb3cteDogYXV0bzsgfVxuXG50YWJsZS5ob3ZlciB0aGVhZCB0cjpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6ICMwNDMyNjM7IH1cblxudGFibGUuaG92ZXIgdGZvb3QgdHI6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyB9XG5cbnRhYmxlLmhvdmVyIHRib2R5IHRyOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTsgfVxuXG50YWJsZS5ob3Zlci5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDsgfVxuXG4udGFibGUtc2Nyb2xsIHsgb3ZlcmZsb3cteDogYXV0bzsgfVxuXG4udGFicyB7IG1hcmdpbjogMDsgYm9yZGVyOiAxcHggc29saWQgI0U0RTRFNDsgYmFja2dyb3VuZDogI0ZGRjsgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG5cbi50YWJzOjpiZWZvcmUsIC50YWJzOjphZnRlciB7IGRpc3BsYXk6IHRhYmxlOyBjb250ZW50OiAnICc7IGZsZXgtYmFzaXM6IDA7IG9yZGVyOiAxOyB9XG5cbi50YWJzOjphZnRlciB7IGNsZWFyOiBib3RoOyB9XG5cbi50YWJzLnZlcnRpY2FsID4gbGkgeyBkaXNwbGF5OiBibG9jazsgZmxvYXQ6IG5vbmU7IHdpZHRoOiBhdXRvOyB9XG5cbi50YWJzLnNpbXBsZSA+IGxpID4gYSB7IHBhZGRpbmc6IDA7IH1cblxuLnRhYnMuc2ltcGxlID4gbGkgPiBhOmhvdmVyLCAudGFicy5zaW1wbGUgPiBsaSA+IGEuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAudGFicy5zaW1wbGUgPiBsaSA+IGEuYWN0aXZlIHsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnRhYnMucHJpbWFyeSB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IH1cblxuLnRhYnMucHJpbWFyeSA+IGxpID4gYSB7IGNvbG9yOiAjRkZGOyB9XG5cbi50YWJzLnByaW1hcnkgPiBsaSA+IGE6aG92ZXIsIC50YWJzLnByaW1hcnkgPiBsaSA+IGEuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAudGFicy5wcmltYXJ5ID4gbGkgPiBhLmFjdGl2ZSwgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpmb2N1cyB7IGJhY2tncm91bmQ6ICMwNTNjNzc7IH1cblxuLnRhYnMtdGl0bGUgeyBmbG9hdDogbGVmdDsgfVxuXG4udGFicy10aXRsZSA+IGEgeyBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogMS4yNXJlbSAxLjVyZW07IGZvbnQtc2l6ZTogMC43NXJlbTsgbGluZS1oZWlnaHQ6IDE7IGNvbG9yOiAjMDQzMjYzOyB9XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAudGFicy10aXRsZSA+IGEgeyBvdXRsaW5lOiAwOyB9XG5cbi50YWJzLXRpdGxlID4gYTpob3ZlciwgLnRhYnMtdGl0bGUgPiBhLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnRhYnMtdGl0bGUgPiBhLmFjdGl2ZSB7IGJhY2tncm91bmQ6ICNGRkY7IGNvbG9yOiAjMDMyYjU1OyB9XG5cbi50YWJzLXRpdGxlID4gYTpmb2N1cywgLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7IGJhY2tncm91bmQ6ICNFNEU0RTQ7IGNvbG9yOiAjMDQzMjYzOyB9XG5cbi50YWJzLWNvbnRlbnQgeyBib3JkZXI6IDFweCBzb2xpZCAjRTRFNEU0OyBib3JkZXItdG9wOiAwOyBiYWNrZ3JvdW5kOiAjRkZGOyBjb2xvcjogIzUyNTI0NTsgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuXG4udGFicy1jb250ZW50LnZlcnRpY2FsIHsgYm9yZGVyOiAxcHggc29saWQgI0U0RTRFNDsgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLnRhYnMtcGFuZWwgeyBkaXNwbGF5OiBub25lOyBwYWRkaW5nOiAxcmVtOyB9XG5cbi50YWJzLXBhbmVsLmlzLWFjdGl2ZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKiBNSVhJTlMgKi9cbkBrZXlmcmFtZXMgZmFkZWluIHsgZnJvbSB7IG9wYWNpdHk6IDA7IH1cbiAgdG8geyBvcGFjaXR5OiAxOyB9IH1cblxuLnNjcm9sbGJhciwgLmFjY29yZGlvbl9fY2FyZC5hY2NvcmRpb25fX2NhcmRfZXF1YWxpemUgLmFjY29yZGlvbi1jb250ZW50LCAuY2VsbC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24tY29udGVudCwgLmNlbGwgLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uIC5hY2NvcmRpb24tY29udGVudCB7IG1hcmdpbi1ib3R0b206IDJyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLnNjcm9sbGJhciwgLmFjY29yZGlvbl9fY2FyZC5hY2NvcmRpb25fX2NhcmRfZXF1YWxpemUgLmFjY29yZGlvbi1jb250ZW50LCAuY2VsbC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24tY29udGVudCwgLmNlbGwgLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uIC5hY2NvcmRpb24tY29udGVudCB7IG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuICAuc2Nyb2xsYmFyOjotd2Via2l0LXNjcm9sbGJhciwgLmFjY29yZGlvbl9fY2FyZC5hY2NvcmRpb25fX2NhcmRfZXF1YWxpemUgLmFjY29yZGlvbi1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhciwgLmNlbGwuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLCAuY2VsbCAuYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24gLmFjY29yZGlvbi1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhciB7IC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgd2lkdGg6IDhweDsgfVxuICAuc2Nyb2xsYmFyOjotd2Via2l0LXNjcm9sbGJhcjp2ZXJ0aWNhbCwgLmFjY29yZGlvbl9fY2FyZC5hY2NvcmRpb25fX2NhcmRfZXF1YWxpemUgLmFjY29yZGlvbi1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhcjp2ZXJ0aWNhbCwgLmNlbGwuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyOnZlcnRpY2FsLCAuY2VsbCAuYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24gLmFjY29yZGlvbi1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhcjp2ZXJ0aWNhbCB7IHdpZHRoOiA4cHg7IH1cbiAgLnNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXI6aG9yaXpvbnRhbCwgLmFjY29yZGlvbl9fY2FyZC5hY2NvcmRpb25fX2NhcmRfZXF1YWxpemUgLmFjY29yZGlvbi1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhcjpob3Jpem9udGFsLCAuY2VsbC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24tY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXI6aG9yaXpvbnRhbCwgLmNlbGwgLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uIC5hY2NvcmRpb24tY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXI6aG9yaXpvbnRhbCB7IGhlaWdodDogOHB4OyB9XG4gIC5zY3JvbGxiYXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iLCAuYWNjb3JkaW9uX19jYXJkLmFjY29yZGlvbl9fY2FyZF9lcXVhbGl6ZSAuYWNjb3JkaW9uLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iLCAuY2VsbC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24tY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIsIC5jZWxsIC5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHsgYm9yZGVyLXJhZGl1czogOHB4OyBib3JkZXI6IDFweCBzb2xpZCAjRjRGNEY0OyAvKiBzaG91bGQgbWF0Y2ggYmFja2dyb3VuZCwgY2FuJ3QgYmUgdHJhbnNwYXJlbnQgKi8gYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpOyB9IH1cblxuLyoqIDEuIEF2b2lkIHRoZSBJRSAxMC0xMSBgbWluLWhlaWdodGAgYnVnLiAyLiBTZXQgYGZsZXgtc2hyaW5rYCB0byBgMGAgdG8gcHJldmVudCBzb21lIGJyb3dzZXJzIGZyb20gbGV0dGluZyB0aGVzZSBpdGVtcyBzaHJpbmsgdG8gc21hbGxlciB0aGFuIHRoZWlyIGNvbnRlbnQncyBkZWZhdWx0IG1pbmltdW0gc2l6ZS4gU2VlIGh0dHA6Ly9iaXQubHkvMU1uMzVVUyBmb3IgZGV0YWlscy4gMy4gVXNlIGAlYCBpbnN0ZWFkIG9mIGB2aGAgc2luY2UgYHZoYCBpcyBidWdneSBpbiBvbGRlciBtb2JpbGUgU2FmYXJpLiAqL1xuaHRtbCB7IGhlaWdodDogMTAwJTsgfVxuXG5ib2R5IHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgaGVpZ2h0OiAxMDAlOyB9XG5cbi5zaXRlLWhlYWRlciwgLnNpdGUtZm9vdGVyIHsgZmxleDogbm9uZTsgfVxuXG4uc2l0ZS1jb250ZW50IHsgZmxleDogMSAwIGF1dG87IHBhZGRpbmc6IHZhcigtLXNwYWNlKSB2YXIoLS1zcGFjZSkgMDsgd2lkdGg6IDEwMCU7IH1cblxuLnNpdGUtY29udGVudDo6YWZ0ZXIgeyBjb250ZW50OiAnXFwwMGEwJzsgZGlzcGxheTogYmxvY2s7IG1hcmdpbi10b3A6IHZhcigtLXNwYWNlKTsgaGVpZ2h0OiAwcHg7IHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKiogR1JJRCBYLVkgKi9cbi5ncmlkLWNvbnRhaW5lci13cmFwcGVyIHsgd2lkdGg6IDEwMCU7IH1cblxuLmdyaWQtY29udGFpbmVyLmdyaWQtY29udGFpbmVyLWNvbGxhcHNlIHsgcGFkZGluZy1sZWZ0OiAwOyBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5hY2NvcmRpb24gLmFjY29yZGlvbi10aXRsZSB7IHBhZGRpbmc6IDEwcHggMCAxMHB4IDA7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYm9yZGVyOiAwOyBib3JkZXItYm90dG9tOiAycHggc29saWQgI2U0ZTVlOTsgfVxuXG4uYWNjb3JkaW9uIC5hY2NvcmRpb24tdGl0bGUgaDUsIC5hY2NvcmRpb24gLmFjY29yZGlvbi10aXRsZSBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuYWNjb3JkaW9uIC5hY2NvcmRpb24tdGl0bGUgcCwgLmFjY29yZGlvbiAuYWNjb3JkaW9uLXRpdGxlIC5oNSB7IG1heC13aWR0aDogOTUlOyBtYXJnaW4tYm90dG9tOiAxMHB4OyBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbi5hY2NvcmRpb24gLmFjY29yZGlvbi10aXRsZTpiZWZvcmUgeyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpOyBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTFweDsgd2lkdGg6IDE1cHg7IGhlaWdodDogMTFweDsgcmlnaHQ6IDEwcHg7IG1hcmdpbi10b3A6IDA7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IC5hY2NvcmRpb24gLmFjY29yZGlvbi10aXRsZTpiZWZvcmUgeyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpOyBtYXNrLXNpemU6IDE1cHggMTFweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbi5hY2NvcmRpb24gLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbiBhLmFjY29yZGlvbi10aXRsZS5hY3RpdmUsIC5hY2NvcmRpb24gYnV0dG9uLmFjY29yZGlvbi10aXRsZS5hY3RpdmUsIC5hY2NvcmRpb24gLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5hY2NvcmRpb24gLmFjY29yZGlvbi1jb250ZW50IHsgYm9yZGVyOiAwOyBtYXJnaW4tdG9wOiAxNXB4OyB9XG5cbi5hY2NvcmRpb24gLmFjY29yZGlvbi1jb250ZW50IGEgeyBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDE7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWNvbnRlbnQgcCB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0gfVxuXG4uYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbS5pcy1hY3RpdmUgLmFjY29yZGlvbi10aXRsZTpiZWZvcmUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC0xODBkZWcpOyB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19ncmlkIC5hY2NvcmRpb24tY29udGVudCAuY2FyZC5jYXJkX190aWxlIC50aWxlLS13cmFwIHsgcGFkZGluZzogMjBweDsgbWluLWhlaWdodDogMTUwcHg7IGRpc3BsYXk6IHRhYmxlOyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbjogYXV0bzsgfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9fZ3JpZCAuYWNjb3JkaW9uLWNvbnRlbnQgLmNhcmQuY2FyZF9fdGlsZSAudGlsZS0td3JhcCAudGlsZS0taW5uZXIgeyBkaXNwbGF5OiB0YWJsZS1jZWxsOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19pbmZvIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuYWNjb3JkaW9uLmFjY29yZGlvbl9faW5mbyAuZ3JpZC1jb250YWluZXIgeyBwYWRkaW5nLWxlZnQ6IDU1cHg7IH0gfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9faW5mbyAuYWNjb3JkaW9uLXRpdGxlIHsgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50OyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQzMjYzOyBjb2xvcjogIzBGNTg5QTsgbWFyZ2luLWJvdHRvbTogMHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5hY2NvcmRpb24uYWNjb3JkaW9uX19pbmZvIC5hY2NvcmRpb24tdGl0bGUgeyBwYWRkaW5nOiAxMHB4IDgwcHg7IH0gfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9faW5mbyAuYWNjb3JkaW9uLXRpdGxlIGltZyB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19pbmZvIC5hY2NvcmRpb24tdGl0bGUgaDQgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IG1hcmdpbi10b3A6IDIwcHggIWltcG9ydGFudDsgfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9faW5mbyAuYWNjb3JkaW9uLXRpdGxlIGg0LnBhcmFncmFwaCB7IG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9faW5mbyAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LXdoaXRlLnN2Zyk7IGJhY2tncm91bmQtc2l6ZTogMTVweCAxMXB4OyByaWdodDogNDBweDsgdG9wOiA1NSU7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgLmFjY29yZGlvbi5hY2NvcmRpb25fX2luZm8gLmFjY29yZGlvbi10aXRsZTpiZWZvcmUgeyBiYWNrZ3JvdW5kOiAjRkZGOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy13aGl0ZS5zdmcpOyBtYXNrLXNpemU6IDE1cHggMTFweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5hY2NvcmRpb24uYWNjb3JkaW9uX19pbmZvIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHsgcmlnaHQ6IDE1MHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLmFjY29yZGlvbi5hY2NvcmRpb25fX2luZm8gLmFjY29yZGlvbi10aXRsZTpiZWZvcmUgeyByaWdodDogMjEwcHg7IH0gfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9faW5mbyAuYWNjb3JkaW9uLXRpdGxlOmFmdGVyIHsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3ctd2hpdGUuc3ZnKTsgYmFja2dyb3VuZC1zaXplOiAxNXB4IDExcHg7IGxlZnQ6IDA7IHRvcDogNTUlOyBib3JkZXI6IDFweCBzb2xpZCBibGFjazsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuYWNjb3JkaW9uLmFjY29yZGlvbl9faW5mbyAuYWNjb3JkaW9uLXRpdGxlOmFmdGVyIHsgYmFja2dyb3VuZDogI0ZGRjsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3ctd2hpdGUuc3ZnKTsgbWFzay1zaXplOiAxNXB4IDExcHg7IG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7IH0gfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9faW5mbyAuYWNjb3JkaW9uLWNvbnRlbnQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyBjb2xvcjogIzc2NzE3NTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuYWNjb3JkaW9uLmFjY29yZGlvbl9faW5mbyAuYWNjb3JkaW9uLWNvbnRlbnQgeyBwYWRkaW5nOiAzMHB4IDgwcHg7IH0gfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9faW5mbyAuYWNjb3JkaW9uLWNvbnRlbnQgcCB7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgeyBsaXN0LXN0eWxlOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQucHVibGljYXRpb24geyBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24taXRlbSwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dIHsgZGlzcGxheTogYmxvY2s7IG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDsgfVxuXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dIC5hY2NvcmRpb24tdGl0bGUgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IGJvcmRlcjogMDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBwYWRkaW5nOiAwOyB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHsgY29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTsgYmFja2dyb3VuZC1zaXplOiAxNXB4IDExcHg7IHdpZHRoOiAxNXB4OyBoZWlnaHQ6IDExcHg7IHRvcDogMjBweDsgcmlnaHQ6IDA7IG1hcmdpbi10b3A6IDA7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlLCAuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCBbZGF0YS1hY2NvcmRpb24taXRlbV0gLmFjY29yZGlvbi10aXRsZTpiZWZvcmUgeyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpOyBtYXNrLXNpemU6IDE1cHggMTFweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOmhvdmVyLCAuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWl0ZW0gYS5hY2NvcmRpb24tdGl0bGUuYWN0aXZlLCAuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWl0ZW0gYnV0dG9uLmFjY29yZGlvbi10aXRsZS5hY3RpdmUsIC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzLCAuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCBbZGF0YS1hY2NvcmRpb24taXRlbV0gLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dIGEuYWNjb3JkaW9uLXRpdGxlLmFjdGl2ZSwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dIGJ1dHRvbi5hY2NvcmRpb24tdGl0bGUuYWN0aXZlLCAuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCBbZGF0YS1hY2NvcmRpb24taXRlbV0gLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOmhvdmVyOmJlZm9yZSwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbi1pdGVtIGEuYWNjb3JkaW9uLXRpdGxlLmFjdGl2ZTpiZWZvcmUsIC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24taXRlbSBidXR0b24uYWNjb3JkaW9uLXRpdGxlLmFjdGl2ZTpiZWZvcmUsIC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzOmJlZm9yZSwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dIC5hY2NvcmRpb24tdGl0bGU6aG92ZXI6YmVmb3JlLCAuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCBbZGF0YS1hY2NvcmRpb24taXRlbV0gYS5hY2NvcmRpb24tdGl0bGUuYWN0aXZlOmJlZm9yZSwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dIGJ1dHRvbi5hY2NvcmRpb24tdGl0bGUuYWN0aXZlOmJlZm9yZSwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXM6YmVmb3JlIHsgYm9yZGVyLWNvbG9yOiAjRkZGIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIC5zdWJoZWFkaW5nLCAuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCBbZGF0YS1hY2NvcmRpb24taXRlbV0gLmFjY29yZGlvbi10aXRsZSAuc3ViaGVhZGluZyB7IGRpc3BsYXk6IGJsb2NrOyBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQsIC5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkIFtkYXRhLWFjY29yZGlvbi1pdGVtXSAuYWNjb3JkaW9uLWNvbnRlbnQgeyBib3JkZXI6IDA7IHBhZGRpbmc6IDA7IH1cblxuLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSwgLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgW2RhdGEtYWNjb3JkaW9uLWl0ZW1dLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTE4MGRlZyk7IH1cblxuLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbi1pdGVtIC5saW5rLCAuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCBbZGF0YS1hY2NvcmRpb24taXRlbV0gLmxpbmsgeyBkaXNwbGF5OiBibG9jazsgY29sb3I6ICMwNDMyNjM7IG1hcmdpbi1ib3R0b206IDFyZW07IHdoaXRlLXNwYWNlOiBub3dyYXA7IG92ZXJmbG93OiBoaWRkZW47IHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX25vaW1nIC5hY2NvcmRpb24tdGl0bGUgeyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5hY2NvcmRpb24uYWNjb3JkaW9uX19jYXJkLmFjY29yZGlvbl9fY2FyZF9ub2ltZyAuYWNjb3JkaW9uX19jb250ZW50IHsgd2lkdGg6IDk1JTsgfVxuXG4uYWNjb3JkaW9uX19jYXJkLmdyZXlCZywgLmFjY29yZGlvbl9fY2FyZC50YWItY29sb3VyLWJnIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgfVxuXG4uYWNjb3JkaW9uX19jYXJkLmdyZXlCZyAuYWNjb3JkaW9uLWl0ZW0sIC5hY2NvcmRpb25fX2NhcmQudGFiLWNvbG91ci1iZyAuYWNjb3JkaW9uLWl0ZW0geyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyB9XG5cbi5hY2NvcmRpb25fX2NhcmQuZ3JleUJnIC5hY2NvcmRpb24tY29udGVudCwgLmFjY29yZGlvbl9fY2FyZC50YWItY29sb3VyLWJnIC5hY2NvcmRpb24tY29udGVudCB7IGJhY2tncm91bmQtY29sb3I6ICNGNEY0RjQ7IH1cblxuLmFjY29yZGlvbl9fY2FyZCAudGFnIHsgZGlzcGxheTogYmxvY2s7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLmFjY29yZGlvbl9fY2FyZCAudGFnLmJ1dHRvbiwgLmFjY29yZGlvbl9fY2FyZCBsaS5mYXV4LWJ1dHRvbiBhLnRhZywgbGkuZmF1eC1idXR0b24gLmFjY29yZGlvbl9fY2FyZCBhLnRhZyB7IG1hcmdpbi1ib3R0b206IDEwcHg7IH0gfVxuXG4uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb25fdGFnIHsgY29sb3I6ICMwNDMyNjMgIWltcG9ydGFudDsgYm9yZGVyOiAxcHggc29saWQgIzA0MzI2MyAhaW1wb3J0YW50OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgbWFyZ2luOiAxNXB4ICFpbXBvcnRhbnQ7IHBhZGRpbmc6IDEwcHggIWltcG9ydGFudDsgfVxuXG4uYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb25fdGFnLm5vX21hcmdpbiB7IG1hcmdpbjogMTVweCAxNXB4IDE1cHggMCAhaW1wb3J0YW50OyB9XG5cbi5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX2VxdWFsaXplIHsgcG9zaXRpb246IHJlbGF0aXZlOyBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbi5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX2VxdWFsaXplIC5icm93IC50YWcgeyBib3JkZXI6IHNvbGlkIDFweCBsaW1lOyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX2VxdWFsaXplIC5hY2NvcmRpb24tdGl0bGUgeyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmc6IDA7IG1hcmdpbjogMDsgfVxuXG4uYWNjb3JkaW9uX19jYXJkLmFjY29yZGlvbl9fY2FyZF9lcXVhbGl6ZSAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7IHRvcDogMWVtOyByaWdodDogMDsgfVxuXG4uYWNjb3JkaW9uX19jYXJkLmFjY29yZGlvbl9fY2FyZF9lcXVhbGl6ZSAuYWNjb3JkaW9uLXRpdGxlIC5wdXNoZG93bl9faGVhZGluZyB7IG1hcmdpbjogMCAwIDFyZW07IHBhZGRpbmc6IDAgMjRweCAwIDA7IHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLmFjY29yZGlvbl9fY2FyZC5hY2NvcmRpb25fX2NhcmRfZXF1YWxpemUgLmFjY29yZGlvbi10aXRsZSBoMywgLmFjY29yZGlvbl9fY2FyZC5hY2NvcmRpb25fX2NhcmRfZXF1YWxpemUgLmFjY29yZGlvbi10aXRsZSAuaDQsIC5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX2VxdWFsaXplIC5hY2NvcmRpb24tdGl0bGUgLmg1IHsgbWF4LXdpZHRoOiA5NSU7IH1cblxuLmFjY29yZGlvbl9fY2FyZC5hY2NvcmRpb25fX2NhcmRfYm94ZWQgLnRhZyB7IHBhZGRpbmc6IDFyZW0gMXJlbSAwOyB9XG5cbi5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX2JveGVkIC5hY2NvcmRpb24tdGl0bGUgLnB1c2hkb3duX19oZWFkaW5nIHsgbWFyZ2luOiAwIDFyZW0gMXJlbTsgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5hY2NvcmRpb25fX2NhcmQuYWNjb3JkaW9uX19jYXJkX2JveGVkIC5hY2NvcmRpb24tY29udGVudCB7IHBhZGRpbmctbGVmdDogMjBweDsgfVxuXG4uYWNjb3JkaW9uX19jYXJkLmFjY29yZGlvbl9fY2FyZF9ib3hlZCAubGluayB7IHBhZGRpbmc6IDEuNXJlbSAyMHB4OyB9XG5cbi5jYXJkX19leHBhbmRhYmxlIC5hY2NvcmRpb24tdGl0bGUgeyB6LWluZGV4OiAxOyB9XG5cbi5jYXJkX19leHBhbmRhYmxlIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHsgY29udGVudDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5jYXJkX19leHBhbmRhYmxlIGg1LCAuY2FyZF9fZXhwYW5kYWJsZSBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZF9fZXhwYW5kYWJsZSBwLCAuY2FyZF9fZXhwYW5kYWJsZSAuaDUgeyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmctcmlnaHQ6IDMwcHg7IH1cblxuLmNhcmRfX2V4cGFuZGFibGUgaDU6YmVmb3JlLCAuY2FyZF9fZXhwYW5kYWJsZSBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwOmJlZm9yZSwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmNhcmRfX2V4cGFuZGFibGUgcDpiZWZvcmUsIC5jYXJkX19leHBhbmRhYmxlIC5oNTpiZWZvcmUgeyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpOyBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTFweDsgd2lkdGg6IDE1cHg7IGhlaWdodDogMTFweDsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDE2cHg7IHJpZ2h0OiAwOyBtYXJnaW4tdG9wOiAwOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1czsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuY2FyZF9fZXhwYW5kYWJsZSBoNTpiZWZvcmUsIC5jYXJkX19leHBhbmRhYmxlIHNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlIHA6YmVmb3JlLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuY2FyZF9fZXhwYW5kYWJsZSBwOmJlZm9yZSwgLmNhcmRfX2V4cGFuZGFibGUgLmg1OmJlZm9yZSB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7IG1hc2stc2l6ZTogMTVweCAxMXB4OyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9IH1cblxuLmNlbGwuYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCAuYWNjb3JkaW9uLWNvbnRlbnQsIC5jZWxsIC5hY2NvcmRpb25fX2NhcmQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWNvbnRlbnQgeyBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbjpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUgeyBib3JkZXItYm90dG9tOiAycHggc29saWQgI2U0ZTVlOTsgfVxuXG4uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGUtbm8tYm9yZGVyLCA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAuYWNjb3JkaW9uLXRpdGxlLW5vLWJvcmRlciwgOmxhc3QtY2hpbGQgPiAuYWNjb3JkaW9uLWNvbnRlbnQ6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4uYWNjb3JkaW9uLWZ1bGwgLmFjY29yZGlvbi1jb250ZW50IHsgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjRkRDNDAwOyB9XG5cbmRldGFpbHMgeyBjb2xvcjogIzA0MzI2MzsgfVxuXG5kZXRhaWxzIHN1bW1hcnkgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGN1cnNvcjogcG9pbnRlcjsgfVxuXG5kZXRhaWxzIHN1bW1hcnk6Om1hcmtlciwgZGV0YWlscyBzdW1tYXJ5Ojotd2Via2l0LWRldGFpbHMtbWFya2VyIHsgY29udGVudDogJyc7IGRpc3BsYXk6IG5vbmU7IH1cblxuZGV0YWlscyBzdW1tYXJ5OmFmdGVyIHsgY29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTsgYmFja2dyb3VuZC1zaXplOiAxNXB4IDExcHg7IHdpZHRoOiAxNXB4OyBoZWlnaHQ6IDExcHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgcG9zaXRpb246IHJlbGF0aXZlOyB0b3A6IDBweDsgcmlnaHQ6IC0xMnB4OyBtYXJnaW4tdG9wOiAwOyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXM7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgZGV0YWlscyBzdW1tYXJ5OmFmdGVyIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTsgbWFzay1zaXplOiAxNXB4IDExcHg7IG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7IH0gfVxuXG5kZXRhaWxzW29wZW5dIHN1bW1hcnk6YWZ0ZXIgeyB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTsgfVxuXG4uYWNjb3JkaW9uX19zaWRlYmFyX3NlY3Rpb24gLmFjY29yZGlvbi5hY2NvcmRpb25fX3NpZGViYXIgeyBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuXG4uYWNjb3JkaW9uX19zaWRlYmFyX3NlY3Rpb24gLmFjY29yZGlvbi5hY2NvcmRpb25fX3NpZGViYXIgLmFjY29yZGlvbi10aXRsZSB7IHBhZGRpbmc6IDIwcHggMCA1cHggMDsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4uYWNjb3JkaW9uX19zaWRlYmFyX3NlY3Rpb24gLmFjY29yZGlvbi5hY2NvcmRpb25fX3NpZGViYXIgLmFjY29yZGlvbi1jb250ZW50IHsgcGFkZGluZzogMjBweDsgfVxuXG4uYWNjb3JkaW9uX19zaWRlYmFyX3NlY3Rpb24gLmFjY29yZGlvbi5hY2NvcmRpb25fX3NpZGViYXIgLmFjY29yZGlvbi1jb250ZW50IC5jYXJkIHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4uYWNjb3JkaW9uX19zaWRlYmFyX3NlY3Rpb24gLmFjY29yZGlvbi5hY2NvcmRpb25fX3NpZGViYXIgLmFjY29yZGlvbi1jb250ZW50IC5jYXJkIC5hY2NvcmRpb25fc2lkZWJhcl9zcGFuIHsgaGVpZ2h0OiAxMXB4OyB3aWR0aDogMnB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luOiBhdXRvIDVweCBhdXRvIDA7IH1cblxuLmNhcHRpb24geyBkaXNwbGF5OiBmbGV4OyBtYXJnaW4tYm90dG9tOiA2cHg7IH1cblxuLmNhcHRpb24uZGF0ZTpiZWZvcmUsIC5jYXB0aW9uLnRpbWU6YmVmb3JlLCAuY2FwdGlvbi5sb2NhdGlvbjpiZWZvcmUsIC5jYXB0aW9uLmFkZHJlc3M6YmVmb3JlIHsgY29udGVudDogXCJcIjsgdG9wOiA1MCU7IGxlZnQ6IDA7IG1hcmdpbi1yaWdodDogMTJweDsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jYXB0aW9uLmRhdGU6YmVmb3JlLCAuY2FwdGlvbi50aW1lOmJlZm9yZSB7IGhlaWdodDogMTdweDsgd2lkdGg6IDE3cHg7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy90aW1lLWljb24uc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlci9jb250YWluOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IC5jYXB0aW9uLmRhdGU6YmVmb3JlLCAuY2FwdGlvbi50aW1lOmJlZm9yZSB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy90aW1lLWljb24uc3ZnKTsgbWFzay1zaXplOiBjb250YWluOyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHsgLmNhcHRpb24uZGF0ZTpiZWZvcmUsIC5jYXB0aW9uLnRpbWU6YmVmb3JlIHsgbWFyZ2luLXRvcDogMTFweDsgfSB9XG5cbi5jYXB0aW9uLmxvY2F0aW9uIGEsIC5jYXB0aW9uLmFkZHJlc3MgYSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uY2FwdGlvbi5sb2NhdGlvbjpiZWZvcmUsIC5jYXB0aW9uLmFkZHJlc3M6YmVmb3JlIHsgaGVpZ2h0OiAyMXB4OyB3aWR0aDogMTdweDsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3Bpbi5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyL2NvbnRhaW47IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgLmNhcHRpb24ubG9jYXRpb246YmVmb3JlLCAuY2FwdGlvbi5hZGRyZXNzOmJlZm9yZSB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9waW4uc3ZnKTsgbWFzay1zaXplOiBjb250YWluOyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9IH1cblxuLyoqIENvbG9ycyAgKi9cbi8qIENvbG9yIHZhcmlhYmxlIGRlZmluZWQgaW4gICB+L3Njc3Mvc2V0dGluZ3MvX3NldHRpbmdzLnNjc3MgICovXG4vKiBMb29wcyB0aHJ1ICRjb2xvcnMgYW5kIGNyZWF0ZSAgY29sb3IgYmFja2dyb3VuZC1jb2xvciAgYm9yZGVyICh1bmNvbW1lbnQgYm9yZGVyIHNlY3Rpb24gYmVsb3cgdG8gcmVuZGVyKSAqL1xuLmNvbG9yLWJsYWNrIHsgY29sb3I6ICMwMDA7IH1cblxuLmNvbG9yLWJsYWNrLWJnIHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgfVxuXG4uY29sb3Itd2hpdGUgeyBjb2xvcjogI0ZGRjsgfVxuXG4uY29sb3Itd2hpdGUtYmcgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOyB9XG5cbi5jb2xvci1saWdodC1ncmF5IHsgY29sb3I6ICNFNEU0RTQ7IH1cblxuLmNvbG9yLWxpZ2h0LWdyYXktYmcgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRTRFNEU0OyB9XG5cbi5jb2xvci1tZWRpdW0tZ3JheSB7IGNvbG9yOiAjQjFCMUIxOyB9XG5cbi5jb2xvci1tZWRpdW0tZ3JheS1iZyB7IGJhY2tncm91bmQtY29sb3I6ICNCMUIxQjE7IH1cblxuLmNvbG9yLWRhcmstZ3JheSB7IGNvbG9yOiAjNzA3MDcwOyB9XG5cbi5jb2xvci1kYXJrLWdyYXktYmcgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjNzA3MDcwOyB9XG5cbi5jb2xvci13cmFwLWdyZXkgeyBjb2xvcjogI0Y0RjRGNDsgfVxuXG4uY29sb3Itd3JhcC1ncmV5LWJnIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgfVxuXG4vKiogQmFja2dyb3VuZCBjb2xvdXJzICovXG4uYmctdHJhbnNwYXJlbnQgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9XG5cbi8qKiBCYWNrZ3JvdW5kICovXG4uYmcgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuLmJnLmJnLWNvdmVyIHsgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuXG4uYmcuYmctY2VudGVyIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfVxuXG4uYmcuYmctdGludDpiZWZvcmUgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgei1pbmRleDogMTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgY29udGVudDogJyAnOyBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cblxuW3R5cGU9J3RleHQnXSwgW3R5cGU9J3Bhc3N3b3JkJ10sIFt0eXBlPSdkYXRlJ10sIFt0eXBlPSdkYXRldGltZSddLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgW3R5cGU9J21vbnRoJ10sIFt0eXBlPSd3ZWVrJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdzZWFyY2gnXSwgW3R5cGU9J3RlbCddLCBbdHlwZT0ndGltZSddLCBbdHlwZT0ndXJsJ10sIFt0eXBlPSdjb2xvciddLCB0ZXh0YXJlYSwgc2VsZWN0IHsgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwNDMyNjM7IHBhZGRpbmc6IC40Njg3NXJlbTsgfVxuXG5bdHlwZT0ndGV4dCddOmZvY3VzLCBbdHlwZT0ncGFzc3dvcmQnXTpmb2N1cywgW3R5cGU9J2RhdGUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmZvY3VzLCBbdHlwZT0nbW9udGgnXTpmb2N1cywgW3R5cGU9J3dlZWsnXTpmb2N1cywgW3R5cGU9J2VtYWlsJ106Zm9jdXMsIFt0eXBlPSdudW1iZXInXTpmb2N1cywgW3R5cGU9J3NlYXJjaCddOmZvY3VzLCBbdHlwZT0ndGVsJ106Zm9jdXMsIFt0eXBlPSd0aW1lJ106Zm9jdXMsIFt0eXBlPSd1cmwnXTpmb2N1cywgW3R5cGU9J2NvbG9yJ106Zm9jdXMsIHRleHRhcmVhOmZvY3VzLCBzZWxlY3Q6Zm9jdXMgeyBib3JkZXItYm90dG9tOiAycHggc29saWQgIzA0MzI2MzsgcGFkZGluZzogLjQ2ODc1cmVtOyB9XG5cblt0eXBlPSd0ZXh0J106OnBsYWNlaG9sZGVyLCBbdHlwZT0ncGFzc3dvcmQnXTo6cGxhY2Vob2xkZXIsIFt0eXBlPSdkYXRlJ106OnBsYWNlaG9sZGVyLCBbdHlwZT0nZGF0ZXRpbWUnXTo6cGxhY2Vob2xkZXIsIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOjpwbGFjZWhvbGRlciwgW3R5cGU9J21vbnRoJ106OnBsYWNlaG9sZGVyLCBbdHlwZT0nd2VlayddOjpwbGFjZWhvbGRlciwgW3R5cGU9J2VtYWlsJ106OnBsYWNlaG9sZGVyLCBbdHlwZT0nbnVtYmVyJ106OnBsYWNlaG9sZGVyLCBbdHlwZT0nc2VhcmNoJ106OnBsYWNlaG9sZGVyLCBbdHlwZT0ndGVsJ106OnBsYWNlaG9sZGVyLCBbdHlwZT0ndGltZSddOjpwbGFjZWhvbGRlciwgW3R5cGU9J3VybCddOjpwbGFjZWhvbGRlciwgW3R5cGU9J2NvbG9yJ106OnBsYWNlaG9sZGVyLCB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIsIHNlbGVjdDo6cGxhY2Vob2xkZXIgeyAvKiBDaHJvbWUsIEZpcmVmb3gsIE9wZXJhLCBTYWZhcmkgMTAuMSsgKi8gb3BhY2l0eTogMTsgLyogRmlyZWZveCAqLyB9XG5cbnRleHRhcmVhIHsgYmFja2dyb3VuZDogI0ZGRjsgcGFkZGluZzogMTRweDsgYm9yZGVyOiBub25lOyByZXNpemU6IG5vbmU7IH1cblxudGV4dGFyZWE6Zm9jdXMgeyBib3JkZXI6IG5vbmU7IH1cblxuc2VsZWN0IHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuc2VsZWN0OmZvY3VzIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnNpZ251cF9fZm9ybSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgb3ZlcmZsb3c6IGhpZGRlbjsgbWFyZ2luLXRvcDogLTIwcHggIWltcG9ydGFudDsgfVxuXG4uc2lnbnVwX19mb3JtIC5iZ19faW1nIHsgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgcGFkZGluZy10b3A6IDcwcHg7IHBhZGRpbmctYm90dG9tOiA3MHB4OyBoZWlnaHQ6IC13ZWJraXQtZml0LWNvbnRlbnQ7IGhlaWdodDogLW1vei1maXQtY29udGVudDsgaGVpZ2h0OiBmaXQtY29udGVudDsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5zaWdudXBfX2Zvcm0geyBtYXJnaW4tdG9wOiAtNDBweCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHsgLnNpZ251cF9fZm9ybSB7IG1hcmdpbi10b3A6IC03MHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgeyAuc2lnbnVwX19mb3JtIC5zaWdudXBfX2Zvcm1fY29udGFpbmVyIHsgbWFyZ2luLWJvdHRvbTogMHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgLnNpZ251cF9fZm9ybSB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5zaWdudXBfX2Zvcm0gLnNpZ251cF9fZm9ybV9jb250YWluZXIgeyBvcmRlcjogMjsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAuc2lnbnVwX19mb3JtIC5zaWdudXBfX2Zvcm1fY29udGFpbmVyIC5ncmlkLXggeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkRDNDAwOyBwYWRkaW5nOiAyNXB4OyB9IH1cblxuLnNpZ251cF9fZm9ybSAqIHsgY29sb3I6ICMwNDMyNjM7IH1cblxuLnNpZ251cF9fZm9ybSBbdHlwZT0ndGV4dCddLCAuc2lnbnVwX19mb3JtIFt0eXBlPSdwYXNzd29yZCddLCAuc2lnbnVwX19mb3JtIFt0eXBlPSdkYXRlJ10sIC5zaWdudXBfX2Zvcm0gW3R5cGU9J2RhdGV0aW1lJ10sIC5zaWdudXBfX2Zvcm0gW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIC5zaWdudXBfX2Zvcm0gW3R5cGU9J21vbnRoJ10sIC5zaWdudXBfX2Zvcm0gW3R5cGU9J3dlZWsnXSwgLnNpZ251cF9fZm9ybSBbdHlwZT0nZW1haWwnXSwgLnNpZ251cF9fZm9ybSBbdHlwZT0nbnVtYmVyJ10sIC5zaWdudXBfX2Zvcm0gW3R5cGU9J3NlYXJjaCddLCAuc2lnbnVwX19mb3JtIFt0eXBlPSd0ZWwnXSwgLnNpZ251cF9fZm9ybSBbdHlwZT0ndGltZSddLCAuc2lnbnVwX19mb3JtIFt0eXBlPSd1cmwnXSwgLnNpZ251cF9fZm9ybSBbdHlwZT0nY29sb3InXSwgLnNpZ251cF9fZm9ybSB0ZXh0YXJlYSwgLnNpZ251cF9fZm9ybSBzZWxlY3QgeyBwYWRkaW5nLWxlZnQ6IDEwcHg7IHBhZGRpbmctcmlnaHQ6IDEwcHg7IGZvbnQtd2VpZ2h0OiBib2xkOyBjb2xvcjogIzA0MzI2MyAhaW1wb3J0YW50OyB9XG5cbi5zaWdudXBfX2Zvcm0gW3R5cGU9J3RleHQnXTo6cGxhY2Vob2xkZXIsIC5zaWdudXBfX2Zvcm0gW3R5cGU9J3Bhc3N3b3JkJ106OnBsYWNlaG9sZGVyLCAuc2lnbnVwX19mb3JtIFt0eXBlPSdkYXRlJ106OnBsYWNlaG9sZGVyLCAuc2lnbnVwX19mb3JtIFt0eXBlPSdkYXRldGltZSddOjpwbGFjZWhvbGRlciwgLnNpZ251cF9fZm9ybSBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTo6cGxhY2Vob2xkZXIsIC5zaWdudXBfX2Zvcm0gW3R5cGU9J21vbnRoJ106OnBsYWNlaG9sZGVyLCAuc2lnbnVwX19mb3JtIFt0eXBlPSd3ZWVrJ106OnBsYWNlaG9sZGVyLCAuc2lnbnVwX19mb3JtIFt0eXBlPSdlbWFpbCddOjpwbGFjZWhvbGRlciwgLnNpZ251cF9fZm9ybSBbdHlwZT0nbnVtYmVyJ106OnBsYWNlaG9sZGVyLCAuc2lnbnVwX19mb3JtIFt0eXBlPSdzZWFyY2gnXTo6cGxhY2Vob2xkZXIsIC5zaWdudXBfX2Zvcm0gW3R5cGU9J3RlbCddOjpwbGFjZWhvbGRlciwgLnNpZ251cF9fZm9ybSBbdHlwZT0ndGltZSddOjpwbGFjZWhvbGRlciwgLnNpZ251cF9fZm9ybSBbdHlwZT0ndXJsJ106OnBsYWNlaG9sZGVyLCAuc2lnbnVwX19mb3JtIFt0eXBlPSdjb2xvciddOjpwbGFjZWhvbGRlciwgLnNpZ251cF9fZm9ybSB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIsIC5zaWdudXBfX2Zvcm0gc2VsZWN0OjpwbGFjZWhvbGRlciB7IGZvbnQtd2VpZ2h0OiBib2xkOyBjb2xvcjogIzA0MzI2MzsgfVxuXG4uc2lnbnVwX19mb3JtIC5mb3JtLWNvbnRlbnQgeyBwYWRkaW5nOiAzMHB4IDA7IGJhY2tncm91bmQtY29sb3I6ICNGREM0MDA7IHBhZGRpbmc6IDI1cHg7IGJvcmRlci1yYWRpdXM6IDVweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuc2lnbnVwX19mb3JtIC5mb3JtLWNvbnRlbnQgeyBwYWRkaW5nOiAzMnB4IDQwcHg7IH0gfVxuXG4uc2lnbnVwX19mb3JtIGZvcm0geyBtYXJnaW4tdG9wOiA0MHB4OyB9XG5cbi5zaWdudXBfX2Zvcm0gZm9ybSBpbnB1dDpub3QoLmJ1dHRvbiksIC5zaWdudXBfX2Zvcm0gZm9ybSBpbnB1dDpmb2N1czpub3QoLmJ1dHRvbikgeyBjb2xvcjogIzBGNTg5QTsgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50OyBib3JkZXItYm90dG9tLWNvbG9yOiAjRkZGOyBib3gtc2hhZG93OiBub25lOyB9XG5cbi5zaWdudXBfX2Zvcm0gZm9ybSBsYWJlbCB7IG1hcmdpbi10b3A6IDIwcHg7IH1cblxuLnNpZ251cF9fZm9ybSAuYnV0dG9uLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYSB7IG1hcmdpbi10b3A6IDE2cHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHsgLnNpZ251cF9fZm9ybSBpbWcgeyBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtOyBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07IG1hcmdpbi1sZWZ0OiBhdXRvOyBtYXJnaW4tcmlnaHQ6IGF1dG87IG9yZGVyOiAxOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLnNpZ251cF9fZm9ybSBpbWcgeyBtYXJnaW4tdG9wOiAwOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogNTAlOyBsZWZ0OiBjYWxjKDUwJSArIDIwcHgpOyB3aWR0aDogNTAlOyBoZWlnaHQ6IDEwMCU7IG9iamVjdC1maXQ6IGNvdmVyOyB9IH1cblxuZm9ybSNsb2FkX21vcmUgeyBwYWRkaW5nLXRvcDogNTBweDsgfVxuXG5mb3JtI2xvYWRfbW9yZSAjbG9hZE1vcmUgeyBtYXJnaW46IDAgYXV0bzsgfVxuXG4uZ2Zvcm1fd3JhcHBlciB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uZ2Zvcm1fd3JhcHBlciBmb3JtIHsgbWFyZ2luLXRvcDogMDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmllbGRzIHsgbGlzdC1zdHlsZTogbm9uZTsgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmhpZGRlbl9sYWJlbCBsZWdlbmQuZ2ZpZWxkX2xhYmVsIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZfcHJvZ3Jlc3NiYXIgeyBkaXNwbGF5OiBub25lOyB9XG5cbi5nZm9ybV93cmFwcGVyIC5nZm9ybV90aXRsZSB7IG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fdGl0bGUgeyBtYXJnaW4tYm90dG9tOiAzcmVtOyB9IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb250YWluZXJfZGF0ZSBzcGFuLnNjcmVlbi1yZWFkZXItdGV4dCB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb250YWluZXJfY2hlY2tib3ggdWwuZ2ZpZWxkX2NoZWNrYm94LCAuZ2Zvcm1fd3JhcHBlciAuZ2lucHV0X2NvbnRhaW5lcl9jaGVja2JveCB1bC5nZmllbGRfcmFkaW8sIC5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29udGFpbmVyX3JhZGlvIHVsLmdmaWVsZF9jaGVja2JveCwgLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb250YWluZXJfcmFkaW8gdWwuZ2ZpZWxkX3JhZGlvIHsgbWFyZ2luOiAyMHB4IDBweCAhaW1wb3J0YW50OyB9XG5cbi5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29udGFpbmVyX2NoZWNrYm94IHVsLmdmaWVsZF9jaGVja2JveCBsaTo6YmVmb3JlLCAuZ2Zvcm1fd3JhcHBlciAuZ2lucHV0X2NvbnRhaW5lcl9jaGVja2JveCB1bC5nZmllbGRfcmFkaW8gbGk6OmJlZm9yZSwgLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb250YWluZXJfcmFkaW8gdWwuZ2ZpZWxkX2NoZWNrYm94IGxpOjpiZWZvcmUsIC5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29udGFpbmVyX3JhZGlvIHVsLmdmaWVsZF9yYWRpbyBsaTo6YmVmb3JlIHsgY29udGVudDogdW5zZXQgIWltcG9ydGFudDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2lucHV0X2NvbnRhaW5lcl90ZXh0YXJlYSB0ZXh0YXJlYSB7IGJvcmRlci1yYWRpdXM6IDVweCAhaW1wb3J0YW50OyBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0ICFpbXBvcnRhbnQ7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyIHsgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuZ2Zvcm1fd3JhcHBlciAuZ2lucHV0X2NvbnRhaW5lcl9uYW1lIHsgZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyBjb2x1bW4tZ2FwOiAyMHB4OyB9XG4gIC5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29udGFpbmVyX25hbWUgPiBzcGFuIHsgZmxleDogMTsgfSB9XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfbGlzdCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmdmb3JtX3dyYXBwZXIgdGhlYWQsIC5nZm9ybV93cmFwcGVyIHRib2R5LCAuZ2Zvcm1fd3JhcHBlciB0Ym9keSB0ciwgLmdmb3JtX3dyYXBwZXIgdGZvb3QgeyBiYWNrZ3JvdW5kOiBub25lOyBib3JkZXI6IG5vbmU7IH1cblxuLmdmb3JtX3dyYXBwZXIgdGJvZHkgdGQgeyBwYWRkaW5nLWxlZnQ6IDA7IHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29udGFpbmVyX3RleHRhcmVhIHRleHRhcmVhIHsgYmFja2dyb3VuZDogI0ZGRiAhaW1wb3J0YW50OyB9XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfY29uc2VudF9sYWJlbCB7IG1hcmdpbi10b3A6IDEwcHg7IGNvbG9yOiAjNTI1MjQ1OyB9XG5cbi5nZm9ybV93cmFwcGVyIHRleHRhcmVhIHsgbWFyZ2luLXRvcDogMTBweDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZfbWFyZ2luX2J0bSB7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLnZhbGlkYXRpb25fZXJyb3IsIC52YWxpZGF0aW9uX21lc3NhZ2UgeyBjb2xvcjogI2FkMDAzMTsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4udmFsaWRhdGlvbl9tZXNzYWdlIHsgbWFyZ2luLXRvcDogLTIwcHg7IH1cblxuW2FyaWEtaW52YWxpZD10cnVlXSwgLmdmaWVsZF9lcnJvciBpbnB1dCwgLmdmaWVsZF9lcnJvciBzZWxlY3QgeyBib3JkZXItYm90dG9tLWNvbG9yOiAjYWQwMDMxOyBjb2xvcjogIzUyNTI0NTsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Vycm9yQDJ4LnBuZykgbm8tcmVwZWF0IGNlbnRlciByaWdodCA1cHgvMTdweCAxOHB4OyB9XG5cblthcmlhLWludmFsaWQ9dHJ1ZV06OnBsYWNlaG9sZGVyLCAuZ2ZpZWxkX2Vycm9yIGlucHV0OjpwbGFjZWhvbGRlciwgLmdmaWVsZF9lcnJvciBzZWxlY3Q6OnBsYWNlaG9sZGVyIHsgY29sb3I6ICNhZDAwMzE7IH1cblxuLmdmaWVsZF9sYWJlbCB7IGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfNjUgTWVkaXVtMTQ3NTUzMlwiLHNhbnMtc2VyaWY7IH1cblxuLmdmaWVsZF9lcnJvciAuZ2ZpZWxkX2xhYmVsLCAuZ2ZpZWxkX2Vycm9yIC5nZmllbGRfbGFiZWwgc3BhbiB7IGNvbG9yOiAjYWQwMDMxOyB9XG5cbi5nZmllbGRfZXJyb3IgLmdpbnB1dF9jb250YWluZXJfZmlsZXVwbG9hZCwgLmdmaWVsZF9lcnJvciAuZ2lucHV0X3JlY2FwdGNoYSB7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxudGV4dGFyZWFbYXJpYS1pbnZhbGlkPXRydWVdIHsgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4uZ2Zvcm1fY29uZmlybWF0aW9uX3dyYXBwZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDcwcHg7IH1cblxuLmdmb3JtX2NvbmZpcm1hdGlvbl93cmFwcGVyIC5nZm9ybV9jb25maXJtYXRpb25fbWVzc2FnZSB7IGNvbG9yOiAjMDQzMjYzOyBmb250LXNpemU6IDEuMjVyZW07IH1cblxuLmdmb3JtX2FuY2hvciB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAtMTUwcHg7IH1cblxuLmdmb3JtX21hcmdpbl90b3AgeyBtYXJnaW4tdG9wOiAyMHB4OyB9XG5cbi8qKiBCdXR0b25zIGFuZCBsaW5rcyAqL1xuYSwgYnV0dG9uLCBhLmJ1dHRvbiwgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gYSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5hLmRvbmF0ZV9idG4sIGJ1dHRvbi5kb25hdGVfYnRuLCBhLmJ1dHRvbi5kb25hdGVfYnRuLCBsaS5mYXV4LWJ1dHRvbiBhLmRvbmF0ZV9idG4sIGxpLmZhdXgtYnV0dG9uIGEuZG9uYXRlX2J0biB7IGJvcmRlci1yYWRpdXM6IDIzcHg7IH1cblxuYSB7IHRleHQtdW5kZXJsaW5lLXBvc2l0aW9uOiB1bmRlcjsgdHJhbnNpdGlvbjogY29sb3IgMC4yNXM7IH1cblxuYnV0dG9uLCBhLmJ1dHRvbiwgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gYSwgaW5wdXQuYnV0dG9uLCAuYnV0dG9uOnZpc2l0ZWQsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLnRvdWNoIGJ1dHRvbjpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC50b3VjaCBidXR0b24uYWN0aXZlOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnRvdWNoIGEuYnV0dG9uOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIGEuYnV0dG9uLmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIGxpLmZhdXgtYnV0dG9uIC50b3VjaCBhLmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgbGkuZmF1eC1idXR0b24gLnRvdWNoIGE6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAudG91Y2ggbGkuZmF1eC1idXR0b24gYTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBpbnB1dC5idXR0b246bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAudG91Y2ggLmJ1dHRvbjp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCBsaS5mYXV4LWJ1dHRvbiAudG91Y2ggYS5hY3RpdmU6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC50b3VjaCBhOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyIHsgYmFja2dyb3VuZDogI0ZEQzQwMCByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCB0cmFuc3BhcmVudCAxJSwgI0ZEQzQwMCAxJSkgY2VudGVyLzE1MDAwJTsgfVxuXG4udG91Y2ggYnV0dG9uOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC50b3VjaCBhLmJ1dHRvbjpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggbGkuZmF1eC1idXR0b24gYTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAudG91Y2ggYTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggbGkuZmF1eC1idXR0b24gYTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggaW5wdXQuYnV0dG9uOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC50b3VjaCAuYnV0dG9uOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAudG91Y2ggYTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkMTMxOyBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7IHRyYW5zaXRpb246IGJhY2tncm91bmQgMHM7IH1cblxuYnV0dG9uOmFmdGVyLCBhLmJ1dHRvbjphZnRlciwgbGkuZmF1eC1idXR0b24gYTphZnRlciwgbGkuZmF1eC1idXR0b24gYTphZnRlciwgaW5wdXQuYnV0dG9uOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQ6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZDphZnRlciB7IGNvbnRlbnQ6ICcnOyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDhweDsgaGVpZ2h0OiAxNXB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNTAlOyByaWdodDogMjVweDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pY29ucy9hcnJvdy1idG4tYmx1ZS5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIvY29udGFpbjsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyBidXR0b246YWZ0ZXIsIGEuYnV0dG9uOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOmFmdGVyLCBpbnB1dC5idXR0b246YWZ0ZXIsIC5idXR0b246dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOmFmdGVyIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi1ibHVlLnN2Zyk7IG1hc2stc2l6ZTogY29udGFpbjsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgbWFzay1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfSB9XG5cbmJ1dHRvbjpob3ZlcjphZnRlciwgYnV0dG9uLmFjdGl2ZTphZnRlciwgYnV0dG9uOmFjdGl2ZTphZnRlciwgYS5idXR0b246aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6aG92ZXI6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOmFjdGl2ZTphZnRlciwgaW5wdXQuYnV0dG9uOmhvdmVyOmFmdGVyLCBpbnB1dC5idXR0b246YWN0aXZlOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkOmFmdGVyLCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIC5idXR0b246dmlzaXRlZDphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZDphY3RpdmU6YWZ0ZXIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pY29ucy9hcnJvdy1idG4teWVsbG93LnN2Z1wiKTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyBidXR0b246aG92ZXI6YWZ0ZXIsIGJ1dHRvbi5hY3RpdmU6YWZ0ZXIsIGJ1dHRvbjphY3RpdmU6YWZ0ZXIsIGEuYnV0dG9uOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbjphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYTphY3RpdmU6YWZ0ZXIsIGlucHV0LmJ1dHRvbjpob3ZlcjphZnRlciwgaW5wdXQuYnV0dG9uOmFjdGl2ZTphZnRlciwgLmJ1dHRvbjp2aXNpdGVkOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZDphZnRlciwgYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOmhvdmVyOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6YWN0aXZlOmFmdGVyIHsgYmFja2dyb3VuZDogI0ZEQzQwMDsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnKTsgfSB9XG5cbmJ1dHRvbi5wcmltYXJ5LCBidXR0b24ucHJpbWFyeTp2aXNpdGVkLCBidXR0b24ucHJpbWFyeTphY3RpdmUsIGEuYnV0dG9uLnByaW1hcnksIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeSwgYS5idXR0b24ucHJpbWFyeTp2aXNpdGVkLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6dmlzaXRlZCwgYS5idXR0b24ucHJpbWFyeTphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeSwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OnZpc2l0ZWQsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphY3RpdmUsIGlucHV0LmJ1dHRvbi5wcmltYXJ5LCBpbnB1dC5idXR0b24ucHJpbWFyeTp2aXNpdGVkLCBpbnB1dC5idXR0b24ucHJpbWFyeTphY3RpdmUsIC5idXR0b246dmlzaXRlZC5wcmltYXJ5LCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQucHJpbWFyeSwgLmJ1dHRvbjp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZCwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZCwgLmJ1dHRvbjp2aXNpdGVkLnByaW1hcnk6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQucHJpbWFyeTphY3RpdmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkRDNDAwOyBjb2xvcjogIzA0MzI2MzsgfVxuXG5idXR0b24ucHJpbWFyeTpob3ZlciwgYnV0dG9uLnByaW1hcnkuYWN0aXZlLCBidXR0b24ucHJpbWFyeTphY3RpdmUsIGJ1dHRvbi5wcmltYXJ5OnZpc2l0ZWQ6aG92ZXIsIGJ1dHRvbi5wcmltYXJ5LmFjdGl2ZTp2aXNpdGVkLCBidXR0b24ucHJpbWFyeTp2aXNpdGVkOmFjdGl2ZSwgYnV0dG9uLnByaW1hcnk6YWN0aXZlOmhvdmVyLCBidXR0b24ucHJpbWFyeS5hY3RpdmU6YWN0aXZlLCBidXR0b24ucHJpbWFyeTphY3RpdmU6YWN0aXZlLCBhLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCBhLmJ1dHRvbi5wcmltYXJ5LmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmhvdmVyLCBhLmJ1dHRvbi5wcmltYXJ5OmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmFjdGl2ZSwgYS5idXR0b24ucHJpbWFyeTp2aXNpdGVkOmhvdmVyLCBhLmJ1dHRvbi5wcmltYXJ5LmFjdGl2ZTp2aXNpdGVkLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnkuYWN0aXZlOnZpc2l0ZWQsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTp2aXNpdGVkOmhvdmVyLCBhLmJ1dHRvbi5wcmltYXJ5OnZpc2l0ZWQ6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6dmlzaXRlZDphY3RpdmUsIGEuYnV0dG9uLnByaW1hcnk6YWN0aXZlOmhvdmVyLCBhLmJ1dHRvbi5wcmltYXJ5LmFjdGl2ZTphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeS5hY3RpdmU6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWN0aXZlOmhvdmVyLCBhLmJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphY3RpdmU6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTp2aXNpdGVkOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnkuYWN0aXZlOnZpc2l0ZWQsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTp2aXNpdGVkOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmFjdGl2ZTpob3ZlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LmFjdGl2ZTphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphY3RpdmU6YWN0aXZlLCBpbnB1dC5idXR0b24ucHJpbWFyeTpob3ZlciwgaW5wdXQuYnV0dG9uLnByaW1hcnk6YWN0aXZlLCBpbnB1dC5idXR0b24ucHJpbWFyeTp2aXNpdGVkOmhvdmVyLCBpbnB1dC5idXR0b24ucHJpbWFyeTp2aXNpdGVkOmFjdGl2ZSwgaW5wdXQuYnV0dG9uLnByaW1hcnk6YWN0aXZlOmhvdmVyLCBpbnB1dC5idXR0b24ucHJpbWFyeTphY3RpdmU6YWN0aXZlLCAuYnV0dG9uOnZpc2l0ZWQucHJpbWFyeTpob3ZlciwgYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQucHJpbWFyeSwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5LCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnksIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uOnZpc2l0ZWQucHJpbWFyeTphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZSwgLmJ1dHRvbjp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZDpob3ZlciwgYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTp2aXNpdGVkLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZCwgYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQ6aG92ZXIsIC5idXR0b246dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQ6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQucHJpbWFyeTp2aXNpdGVkOmFjdGl2ZSwgLmJ1dHRvbjp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmhvdmVyLCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZSwgYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmhvdmVyLCAuYnV0dG9uOnZpc2l0ZWQucHJpbWFyeTphY3RpdmU6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQucHJpbWFyeTphY3RpdmU6YWN0aXZlIHsgY29sb3I6ICNGRkY7IGJhY2tncm91bmQtY29sb3I6ICMwNDMyNjM7IH1cblxuYnV0dG9uLnByaW1hcnk6aG92ZXI6YWZ0ZXIsIGJ1dHRvbi5wcmltYXJ5LmFjdGl2ZTphZnRlciwgYnV0dG9uLnByaW1hcnk6YWN0aXZlOmFmdGVyLCBidXR0b24ucHJpbWFyeTp2aXNpdGVkOmhvdmVyOmFmdGVyLCBidXR0b24ucHJpbWFyeS5hY3RpdmU6dmlzaXRlZDphZnRlciwgYnV0dG9uLnByaW1hcnk6dmlzaXRlZDphY3RpdmU6YWZ0ZXIsIGJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTpob3ZlcjphZnRlciwgYnV0dG9uLnByaW1hcnkuYWN0aXZlOmFjdGl2ZTphZnRlciwgYnV0dG9uLnByaW1hcnk6YWN0aXZlOmFjdGl2ZTphZnRlciwgYS5idXR0b24ucHJpbWFyeTpob3ZlcjphZnRlciwgYS5idXR0b24ucHJpbWFyeS5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeS5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTpob3ZlcjphZnRlciwgYS5idXR0b24ucHJpbWFyeTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphY3RpdmU6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnk6dmlzaXRlZDpob3ZlcjphZnRlciwgYS5idXR0b24ucHJpbWFyeS5hY3RpdmU6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LmFjdGl2ZTp2aXNpdGVkOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6dmlzaXRlZDpob3ZlcjphZnRlciwgYS5idXR0b24ucHJpbWFyeTp2aXNpdGVkOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCBhLmJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTpob3ZlcjphZnRlciwgYS5idXR0b24ucHJpbWFyeS5hY3RpdmU6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnkuYWN0aXZlOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmFjdGl2ZTpob3ZlcjphZnRlciwgYS5idXR0b24ucHJpbWFyeTphY3RpdmU6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWN0aXZlOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnkuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6dmlzaXRlZDpob3ZlcjphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LmFjdGl2ZTp2aXNpdGVkOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6dmlzaXRlZDphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphY3RpdmU6aG92ZXI6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeS5hY3RpdmU6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWN0aXZlOmFjdGl2ZTphZnRlciwgaW5wdXQuYnV0dG9uLnByaW1hcnk6aG92ZXI6YWZ0ZXIsIGlucHV0LmJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTphZnRlciwgaW5wdXQuYnV0dG9uLnByaW1hcnk6dmlzaXRlZDpob3ZlcjphZnRlciwgaW5wdXQuYnV0dG9uLnByaW1hcnk6dmlzaXRlZDphY3RpdmU6YWZ0ZXIsIGlucHV0LmJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTpob3ZlcjphZnRlciwgaW5wdXQuYnV0dG9uLnByaW1hcnk6YWN0aXZlOmFjdGl2ZTphZnRlciwgLmJ1dHRvbjp2aXNpdGVkLnByaW1hcnk6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTphZnRlciwgYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQucHJpbWFyeTpob3ZlcjphZnRlciwgLmJ1dHRvbjp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQucHJpbWFyeTphY3RpdmU6YWZ0ZXIsIC5idXR0b246dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQ6YWZ0ZXIsIGJ1dHRvbi5idXR0b24uYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTp2aXNpdGVkOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQucHJpbWFyeTp2aXNpdGVkOmhvdmVyOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQucHJpbWFyeTp2aXNpdGVkOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZDphY3RpdmU6YWZ0ZXIsIC5idXR0b246dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZTpob3ZlcjphZnRlciwgYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTphY3RpdmU6YWZ0ZXIsIGJ1dHRvbi5idXR0b24uYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZTpob3ZlcjphZnRlciwgLmJ1dHRvbjp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmFjdGl2ZTphZnRlciB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnXCIpOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IGJ1dHRvbi5wcmltYXJ5OmhvdmVyOmFmdGVyLCBidXR0b24ucHJpbWFyeS5hY3RpdmU6YWZ0ZXIsIGJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTphZnRlciwgYnV0dG9uLnByaW1hcnk6dmlzaXRlZDpob3ZlcjphZnRlciwgYnV0dG9uLnByaW1hcnkuYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIGJ1dHRvbi5wcmltYXJ5OnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCBidXR0b24ucHJpbWFyeTphY3RpdmU6aG92ZXI6YWZ0ZXIsIGJ1dHRvbi5wcmltYXJ5LmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnk6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnkuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnkuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnk6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWN0aXZlOmFmdGVyLCBhLmJ1dHRvbi5wcmltYXJ5OnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnkuYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeS5hY3RpdmU6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnk6dmlzaXRlZDphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTp2aXNpdGVkOmFjdGl2ZTphZnRlciwgYS5idXR0b24ucHJpbWFyeTphY3RpdmU6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnkuYWN0aXZlOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphY3RpdmU6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLnByaW1hcnk6YWN0aXZlOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTpob3ZlcjphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeS5hY3RpdmU6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWN0aXZlOmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnkuYWN0aXZlOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5OmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGlucHV0LmJ1dHRvbi5wcmltYXJ5OmhvdmVyOmFmdGVyLCBpbnB1dC5idXR0b24ucHJpbWFyeTphY3RpdmU6YWZ0ZXIsIGlucHV0LmJ1dHRvbi5wcmltYXJ5OnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIGlucHV0LmJ1dHRvbi5wcmltYXJ5OnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCBpbnB1dC5idXR0b24ucHJpbWFyeTphY3RpdmU6aG92ZXI6YWZ0ZXIsIGlucHV0LmJ1dHRvbi5wcmltYXJ5OmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIC5idXR0b246dmlzaXRlZC5wcmltYXJ5OmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6YWZ0ZXIsIGJ1dHRvbi5idXR0b24uYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnk6aG92ZXI6YWZ0ZXIsIC5idXR0b246dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQucHJpbWFyeTp2aXNpdGVkOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQ6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOnZpc2l0ZWQucHJpbWFyeTp2aXNpdGVkOmFmdGVyLCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZDpob3ZlcjphZnRlciwgLmJ1dHRvbjp2aXNpdGVkLnByaW1hcnk6dmlzaXRlZDphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5wcmltYXJ5OnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQucHJpbWFyeTphY3RpdmU6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmFmdGVyLCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnByaW1hcnk6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQucHJpbWFyeTphY3RpdmU6aG92ZXI6YWZ0ZXIsIC5idXR0b246dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5wcmltYXJ5OmFjdGl2ZTphY3RpdmU6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiAjRkRDNDAwOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvYXJyb3ctYnRuLXllbGxvdy5zdmcpOyB9IH1cblxuYnV0dG9uLnNlY29uZGFyeSwgLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uLCBhLmJ1dHRvbi5zZWNvbmRhcnksIC5zaWdudXBfX2Zvcm0gYS5idXR0b24sIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeSwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnksIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLCBpbnB1dC5idXR0b24uc2Vjb25kYXJ5LCAuc2lnbnVwX19mb3JtIGlucHV0LmJ1dHRvbiwgLmJ1dHRvbjp2aXNpdGVkLnNlY29uZGFyeSwgLnNpZ251cF9fZm9ybSAuYnV0dG9uOnZpc2l0ZWQsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6dmlzaXRlZCwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnNlY29uZGFyeSB7IGJhY2tncm91bmQtY29sb3I6ICMwRjU4OUE7IGNvbG9yOiAjRkZGOyB9XG5cbi50b3VjaCBidXR0b24uc2Vjb25kYXJ5Om5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbjpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC5zaWdudXBfX2Zvcm0gLnRvdWNoIGJ1dHRvbi5idXR0b246bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAudG91Y2ggLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uLmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC5zaWdudXBfX2Zvcm0gLnRvdWNoIGJ1dHRvbi5idXR0b24uYWN0aXZlOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnRvdWNoIGJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnRvdWNoIGEuYnV0dG9uLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC50b3VjaCAuc2lnbnVwX19mb3JtIGEuYnV0dG9uOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnNpZ251cF9fZm9ybSAudG91Y2ggYS5idXR0b246bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAudG91Y2ggLnNpZ251cF9fZm9ybSBhLmJ1dHRvbi5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAuc2lnbnVwX19mb3JtIC50b3VjaCBhLmJ1dHRvbi5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAudG91Y2ggLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnRvdWNoIGEuYWN0aXZlOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIC50b3VjaCBhLmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIC50b3VjaCBhOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gLnRvdWNoIGE6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAudG91Y2ggYS5idXR0b24uc2Vjb25kYXJ5LmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeS5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCBsaS5mYXV4LWJ1dHRvbiAudG91Y2ggYS5zZWNvbmRhcnkuYWN0aXZlOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5Om5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgbGkuZmF1eC1idXR0b24gLnRvdWNoIGEuc2Vjb25kYXJ5Om5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5Om5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAuc2lnbnVwX19mb3JtIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEuYWN0aXZlOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6aG92ZXIsIC5zaWdudXBfX2Zvcm0gLnRvdWNoIGxpLmZhdXgtYnV0dG9uIGE6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAudG91Y2ggbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5LmFjdGl2ZTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBpbnB1dC5idXR0b24uc2Vjb25kYXJ5Om5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gaW5wdXQuYnV0dG9uOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnNpZ251cF9fZm9ybSAudG91Y2ggaW5wdXQuYnV0dG9uOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIC5idXR0b246dmlzaXRlZC5zZWNvbmRhcnk6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAudG91Y2ggLnNpZ251cF9fZm9ybSAuYnV0dG9uOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAuc2lnbnVwX19mb3JtIC50b3VjaCAuYnV0dG9uOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyLCAudG91Y2ggLnNpZ251cF9fZm9ybSBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC5zaWdudXBfX2Zvcm0gLnRvdWNoIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnRvdWNoIGEuYWN0aXZlOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAudG91Y2ggbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmFjdGl2ZTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAudG91Y2ggYS5hY3RpdmU6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCAuc2lnbnVwX19mb3JtIGJ1dHRvbi5idXR0b24uYWN0aXZlOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pLCAuc2lnbnVwX19mb3JtIC50b3VjaCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKSwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiAudG91Y2ggYTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSAudG91Y2ggYTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgLnRvdWNoIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIGxpLmZhdXgtYnV0dG9uIC50b3VjaCBhLmFjdGl2ZTp2aXNpdGVkLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSksIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQuc2Vjb25kYXJ5Om5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTpob3ZlciwgbGkuZmF1eC1idXR0b24gLnRvdWNoIGE6dmlzaXRlZC5zZWNvbmRhcnk6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmhvdmVyIHsgYmFja2dyb3VuZDogIzA0MzI2MyByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCB0cmFuc3BhcmVudCAxJSwgIzA0MzI2MyAxJSkgY2VudGVyLzE1MDAwJTsgfVxuXG4udG91Y2ggYnV0dG9uLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC5zaWdudXBfX2Zvcm0gLnRvdWNoIGJ1dHRvbi5idXR0b246bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIGEuYnV0dG9uLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggLnNpZ251cF9fZm9ybSBhLmJ1dHRvbjpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAuc2lnbnVwX19mb3JtIC50b3VjaCBhLmJ1dHRvbjpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gLnRvdWNoIGE6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIC50b3VjaCBhOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAudG91Y2ggYS5zZWNvbmRhcnk6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5Om5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC50b3VjaCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnNpZ251cF9fZm9ybSAudG91Y2ggbGkuZmF1eC1idXR0b24gYTpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC50b3VjaCBpbnB1dC5idXR0b24uc2Vjb25kYXJ5Om5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC50b3VjaCAuc2lnbnVwX19mb3JtIGlucHV0LmJ1dHRvbjpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAuc2lnbnVwX19mb3JtIC50b3VjaCBpbnB1dC5idXR0b246bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIC5idXR0b246dmlzaXRlZC5zZWNvbmRhcnk6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIC5zaWdudXBfX2Zvcm0gLmJ1dHRvbjp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC5zaWdudXBfX2Zvcm0gLnRvdWNoIC5idXR0b246dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCAudG91Y2ggLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiAudG91Y2ggYTp2aXNpdGVkOm5vdChpbnB1dFt0eXBlPVwic3VibWl0XCJdKTphY3RpdmUsIC50b3VjaCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6dmlzaXRlZDpub3QoaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSk6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIC50b3VjaCBhOnZpc2l0ZWQ6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgLnRvdWNoIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5zZWNvbmRhcnk6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnRvdWNoIGE6dmlzaXRlZC5zZWNvbmRhcnk6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pOmFjdGl2ZSB7IGJhY2tncm91bmQtY29sb3I6ICMwNjRiOTQ7IGJhY2tncm91bmQtc2l6ZTogMTAwJTsgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwczsgfVxuXG5idXR0b24uc2Vjb25kYXJ5OmFmdGVyLCAuc2lnbnVwX19mb3JtIGJ1dHRvbi5idXR0b246YWZ0ZXIsIGEuYnV0dG9uLnNlY29uZGFyeTphZnRlciwgLnNpZ251cF9fZm9ybSBhLmJ1dHRvbjphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5OmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6YWZ0ZXIsIGlucHV0LmJ1dHRvbi5zZWNvbmRhcnk6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gaW5wdXQuYnV0dG9uOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQuc2Vjb25kYXJ5OmFmdGVyLCAuc2lnbnVwX19mb3JtIC5idXR0b246dmlzaXRlZDphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTp2aXNpdGVkOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQuc2Vjb25kYXJ5OmFmdGVyIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaWNvbnMvYXJyb3ctYnRuLXdoaXRlLnN2Z1wiKTsgfVxuXG5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuc2lnbnVwX19mb3JtIGJ1dHRvbi5idXR0b246aG92ZXIsIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbi5hY3RpdmUsIGJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlLCBidXR0b24uc2Vjb25kYXJ5OmFjdGl2ZSwgLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uOmFjdGl2ZSwgYS5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuc2lnbnVwX19mb3JtIGEuYnV0dG9uOmhvdmVyLCAuc2lnbnVwX19mb3JtIGEuYnV0dG9uLmFjdGl2ZSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmFjdGl2ZSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6aG92ZXIsIGEuYnV0dG9uLnNlY29uZGFyeS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5LmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnk6aG92ZXIsIGEuYnV0dG9uLnNlY29uZGFyeTphY3RpdmUsIC5zaWdudXBfX2Zvcm0gYS5idXR0b246YWN0aXZlLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5OmhvdmVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEuYWN0aXZlLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTpob3ZlciwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnkuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTphY3RpdmUsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTphY3RpdmUsIGlucHV0LmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5zaWdudXBfX2Zvcm0gaW5wdXQuYnV0dG9uOmhvdmVyLCBpbnB1dC5idXR0b24uc2Vjb25kYXJ5OmFjdGl2ZSwgLnNpZ251cF9fZm9ybSBpbnB1dC5idXR0b246YWN0aXZlLCAuYnV0dG9uOnZpc2l0ZWQuc2Vjb25kYXJ5OmhvdmVyLCAuc2lnbnVwX19mb3JtIC5idXR0b246dmlzaXRlZDpob3ZlciwgLnNpZ251cF9fZm9ybSBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZCwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEuYWN0aXZlOnZpc2l0ZWQsIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZCwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTp2aXNpdGVkOmhvdmVyLCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5zZWNvbmRhcnksIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOnZpc2l0ZWQuc2Vjb25kYXJ5LCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnNlY29uZGFyeSwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbjp2aXNpdGVkLnNlY29uZGFyeTphY3RpdmUsIC5zaWdudXBfX2Zvcm0gLmJ1dHRvbjp2aXNpdGVkOmFjdGl2ZSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6dmlzaXRlZDphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5zZWNvbmRhcnk6YWN0aXZlIHsgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MzsgfVxuXG5idXR0b24uc2Vjb25kYXJ5OmhvdmVyOmFmdGVyLCAuc2lnbnVwX19mb3JtIGJ1dHRvbi5idXR0b246aG92ZXI6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbi5hY3RpdmU6YWZ0ZXIsIGJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlOmFmdGVyLCBidXR0b24uc2Vjb25kYXJ5OmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uOmFjdGl2ZTphZnRlciwgYS5idXR0b24uc2Vjb25kYXJ5OmhvdmVyOmFmdGVyLCAuc2lnbnVwX19mb3JtIGEuYnV0dG9uOmhvdmVyOmFmdGVyLCAuc2lnbnVwX19mb3JtIGEuYnV0dG9uLmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLnNlY29uZGFyeS5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5LmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnk6aG92ZXI6YWZ0ZXIsIGEuYnV0dG9uLnNlY29uZGFyeTphY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYS5idXR0b246YWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5OmhvdmVyOmFmdGVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEuYWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6aG92ZXI6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTpob3ZlcjphZnRlciwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnkuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTphY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTphY3RpdmU6YWZ0ZXIsIGlucHV0LmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXI6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gaW5wdXQuYnV0dG9uOmhvdmVyOmFmdGVyLCBpbnB1dC5idXR0b24uc2Vjb25kYXJ5OmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBpbnB1dC5idXR0b246YWN0aXZlOmFmdGVyLCAuYnV0dG9uOnZpc2l0ZWQuc2Vjb25kYXJ5OmhvdmVyOmFmdGVyLCAuc2lnbnVwX19mb3JtIC5idXR0b246dmlzaXRlZDpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZDphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEuYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZDphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYTp2aXNpdGVkOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5zZWNvbmRhcnk6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOnZpc2l0ZWQuc2Vjb25kYXJ5OmFmdGVyLCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLnNlY29uZGFyeTphZnRlciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLnNlY29uZGFyeTpob3ZlcjphZnRlciwgLmJ1dHRvbjp2aXNpdGVkLnNlY29uZGFyeTphY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gLmJ1dHRvbjp2aXNpdGVkOmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6dmlzaXRlZDphY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5zZWNvbmRhcnk6YWN0aXZlOmFmdGVyIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaWNvbnMvYXJyb3ctYnRuLXllbGxvdy5zdmdcIik7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgYnV0dG9uLnNlY29uZGFyeTpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uOmhvdmVyOmFmdGVyLCAuc2lnbnVwX19mb3JtIGJ1dHRvbi5idXR0b24uYWN0aXZlOmFmdGVyLCBidXR0b24uc2Vjb25kYXJ5LmFjdGl2ZTphZnRlciwgYnV0dG9uLnNlY29uZGFyeTphY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbjphY3RpdmU6YWZ0ZXIsIGEuYnV0dG9uLnNlY29uZGFyeTpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSBhLmJ1dHRvbjpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSBhLmJ1dHRvbi5hY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5hY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTpob3ZlcjphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeS5hY3RpdmU6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5OmhvdmVyOmFmdGVyLCBhLmJ1dHRvbi5zZWNvbmRhcnk6YWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIGEuYnV0dG9uOmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnk6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLnNlY29uZGFyeTpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6aG92ZXI6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5LmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnk6YWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6YWN0aXZlOmFmdGVyLCBpbnB1dC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyOmFmdGVyLCAuc2lnbnVwX19mb3JtIGlucHV0LmJ1dHRvbjpob3ZlcjphZnRlciwgaW5wdXQuYnV0dG9uLnNlY29uZGFyeTphY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gaW5wdXQuYnV0dG9uOmFjdGl2ZTphZnRlciwgLmJ1dHRvbjp2aXNpdGVkLnNlY29uZGFyeTpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSAuYnV0dG9uOnZpc2l0ZWQ6aG92ZXI6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6dmlzaXRlZDphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhLmFjdGl2ZTp2aXNpdGVkOmFmdGVyLCAuc2lnbnVwX19mb3JtIGJ1dHRvbi5idXR0b24uYWN0aXZlOnZpc2l0ZWQ6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6dmlzaXRlZDpob3ZlcjphZnRlciwgYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQuc2Vjb25kYXJ5OmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkLnNlY29uZGFyeTphZnRlciwgYnV0dG9uLmJ1dHRvbi5hY3RpdmU6dmlzaXRlZC5zZWNvbmRhcnk6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZC5zZWNvbmRhcnk6aG92ZXI6YWZ0ZXIsIC5idXR0b246dmlzaXRlZC5zZWNvbmRhcnk6YWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIC5idXR0b246dmlzaXRlZDphY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOnZpc2l0ZWQ6YWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQuc2Vjb25kYXJ5OmFjdGl2ZTphZnRlciB7IGJhY2tncm91bmQ6ICNGREM0MDA7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9hcnJvdy1idG4teWVsbG93LnN2Zyk7IH0gfVxuXG5idXR0b24uY2xlYXIsIGEuYnV0dG9uLmNsZWFyLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyLCBpbnB1dC5idXR0b24uY2xlYXIsIC5idXR0b246dmlzaXRlZC5jbGVhciwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkLmNsZWFyIHsgYm9yZGVyLXJhZGl1czogMDsgdGV4dC1hbGlnbjogY2VudGVyOyBjb2xvcjogIzA0MzI2MzsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbmJ1dHRvbi5jbGVhcjphZnRlciwgYS5idXR0b24uY2xlYXI6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXI6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXI6YWZ0ZXIsIGlucHV0LmJ1dHRvbi5jbGVhcjphZnRlciwgLmJ1dHRvbjp2aXNpdGVkLmNsZWFyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQuY2xlYXI6YWZ0ZXIgeyBjb250ZW50OiAnJzsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAxZW07IGJvdHRvbTogMTBweDsgaGVpZ2h0OiAzcHg7IHdpZHRoOiBjYWxjKDEwMCUgLSAyZW0pOyBiYWNrZ3JvdW5kOiAjRkRDNDAwOyB9XG5cbmJ1dHRvbi5jbGVhcjphY3RpdmUsIGJ1dHRvbi5jbGVhcjpob3ZlciwgYnV0dG9uLmNsZWFyLmFjdGl2ZSwgYS5idXR0b24uY2xlYXI6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyOmFjdGl2ZSwgYS5idXR0b24uY2xlYXI6aG92ZXIsIGEuYnV0dG9uLmNsZWFyLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5jbGVhci5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXI6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIGEuY2xlYXI6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiBhLmNsZWFyLmFjdGl2ZSwgaW5wdXQuYnV0dG9uLmNsZWFyOmFjdGl2ZSwgaW5wdXQuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uOnZpc2l0ZWQuY2xlYXI6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQuY2xlYXI6YWN0aXZlLCAuYnV0dG9uOnZpc2l0ZWQuY2xlYXI6aG92ZXIsIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLmNsZWFyLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkLmNsZWFyLCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLmNsZWFyLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQuY2xlYXI6aG92ZXIgeyBiYWNrZ3JvdW5kOiAjMEY1ODlBOyBjb2xvcjogI0ZGRjsgfVxuXG5idXR0b24uZGlzYWJsZWQsIGJ1dHRvbjpkaXNhYmxlZCwgYS5idXR0b24uZGlzYWJsZWQsIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQsIGEuYnV0dG9uOmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiBhOmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiBhLmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiBhOmRpc2FibGVkLCBpbnB1dC5idXR0b24uZGlzYWJsZWQsIGlucHV0LmJ1dHRvbjpkaXNhYmxlZCwgLmJ1dHRvbjp2aXNpdGVkLmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQuZGlzYWJsZWQsIC5idXR0b246dmlzaXRlZDpkaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOmRpc2FibGVkIHsgYmFja2dyb3VuZDogI0IxQjFCMTsgY29sb3I6ICNGRkY7IH1cblxuYnV0dG9uLmRpc2FibGVkOmFjdGl2ZSwgYnV0dG9uLmRpc2FibGVkOmhvdmVyLCBidXR0b24uZGlzYWJsZWQuYWN0aXZlLCBidXR0b246ZGlzYWJsZWQ6YWN0aXZlLCBidXR0b246ZGlzYWJsZWQ6aG92ZXIsIGJ1dHRvbi5hY3RpdmU6ZGlzYWJsZWQsIGEuYnV0dG9uLmRpc2FibGVkOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZDphY3RpdmUsIGEuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCBhLmJ1dHRvbi5kaXNhYmxlZC5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmRpc2FibGVkOmhvdmVyLCBhLmJ1dHRvbjpkaXNhYmxlZDphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGE6ZGlzYWJsZWQ6YWN0aXZlLCBhLmJ1dHRvbjpkaXNhYmxlZDpob3ZlciwgYS5idXR0b24uYWN0aXZlOmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTpkaXNhYmxlZCwgbGkuZmF1eC1idXR0b24gYTpkaXNhYmxlZDpob3ZlciwgbGkuZmF1eC1idXR0b24gYS5kaXNhYmxlZDphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQ6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIGEuZGlzYWJsZWQuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhOmRpc2FibGVkOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYTpkaXNhYmxlZDpob3ZlciwgbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6ZGlzYWJsZWQsIGlucHV0LmJ1dHRvbi5kaXNhYmxlZDphY3RpdmUsIGlucHV0LmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgaW5wdXQuYnV0dG9uOmRpc2FibGVkOmFjdGl2ZSwgaW5wdXQuYnV0dG9uOmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uOnZpc2l0ZWQuZGlzYWJsZWQ6YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQuZGlzYWJsZWQ6YWN0aXZlLCAuYnV0dG9uOnZpc2l0ZWQuZGlzYWJsZWQ6aG92ZXIsIGEuYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTp2aXNpdGVkLmRpc2FibGVkLCBidXR0b24uYnV0dG9uLmFjdGl2ZTp2aXNpdGVkLmRpc2FibGVkLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b246dmlzaXRlZDpkaXNhYmxlZDphY3RpdmUsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZDpkaXNhYmxlZDphY3RpdmUsIC5idXR0b246dmlzaXRlZDpkaXNhYmxlZDpob3ZlciwgYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQ6ZGlzYWJsZWQsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOnZpc2l0ZWQ6ZGlzYWJsZWQsIGJ1dHRvbi5idXR0b24uYWN0aXZlOnZpc2l0ZWQ6ZGlzYWJsZWQsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZDpkaXNhYmxlZDpob3ZlciB7IGJhY2tncm91bmQ6ICNCMUIxQjE7IGNvbG9yOiAjRkZGOyB9XG5cbmJ1dHRvbjpob3ZlciwgYnV0dG9uLmFjdGl2ZSwgYnV0dG9uOmFjdGl2ZSwgYnV0dG9uOmZvY3VzLCBhLmJ1dHRvbjpob3ZlciwgYS5idXR0b24uYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYTpob3ZlciwgYS5idXR0b246YWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhOmFjdGl2ZSwgYS5idXR0b246Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIGE6Zm9jdXMsIGxpLmZhdXgtYnV0dG9uIGE6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBhOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYTpmb2N1cywgaW5wdXQuYnV0dG9uOmhvdmVyLCBpbnB1dC5idXR0b246YWN0aXZlLCBpbnB1dC5idXR0b246Zm9jdXMsIC5idXR0b246dmlzaXRlZDpob3ZlciwgYS5idXR0b24uYWN0aXZlOnZpc2l0ZWQsIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlOnZpc2l0ZWQsIGJ1dHRvbi5idXR0b24uYWN0aXZlOnZpc2l0ZWQsIGxpLmZhdXgtYnV0dG9uIGE6dmlzaXRlZDpob3ZlciwgLmJ1dHRvbjp2aXNpdGVkOmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkOmFjdGl2ZSwgLmJ1dHRvbjp2aXNpdGVkOmZvY3VzLCBsaS5mYXV4LWJ1dHRvbiBhOnZpc2l0ZWQ6Zm9jdXMgeyBjb2xvcjogI0ZGRjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgeyBidXR0b24sIGEuYnV0dG9uLCBsaS5mYXV4LWJ1dHRvbiBhLCBsaS5mYXV4LWJ1dHRvbiBhLCBpbnB1dC5idXR0b24sIC5idXR0b246dmlzaXRlZCwgbGkuZmF1eC1idXR0b24gYTp2aXNpdGVkIHsgd2lkdGg6IDEwMCU7IHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuXG5pbnB1dC5idXR0b24sIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc3Ljk4NicgaGVpZ2h0PScxNS42OTYnIHZpZXdCb3g9JzAgMCA3Ljk4NiAxNS42OTYnJTNFJTNDcGF0aCBpZD0nYXJyb3cnIGRhdGEtbmFtZT0nUGF0aCA1NDY4JyBkPSdNLTE4MDk1LjM5MywzMjEzLjE4Mmw0LjM3OSw1Ljk0OS00LjM3OSw1LjU0MicgdHJhbnNmb3JtPSd0cmFuc2xhdGUoMTgwOTcuNSAtMzIxMS4wODQpJyBmaWxsPSdub25lJyBzdHJva2U9JyUyMzA0MzI2Mycgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnLyUzRSUzQy9zdmclM0VcIik7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoMTAwJSAtIDI1cHgpIGNlbnRlcjsgYmFja2dyb3VuZC1zaXplOiA4cHggMTVweDsgfVxuXG5pbnB1dC5idXR0b246aG92ZXIsIGlucHV0LmJ1dHRvbjphY3RpdmUsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06YWN0aXZlIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNy45ODYnIGhlaWdodD0nMTUuNjk2JyB2aWV3Qm94PScwIDAgNy45ODYgMTUuNjk2JyUzRSUzQ3BhdGggaWQ9J2Fycm93JyBkYXRhLW5hbWU9J1BhdGggNTQ2OCcgZD0nTS0xODA5NS4zOTMsMzIxMy4xODJsNC4zNzksNS45NDktNC4zNzksNS41NDInIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDE4MDk3LjUgLTMyMTEuMDg0KScgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNGREM0MDAnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJy8lM0UlM0Mvc3ZnJTNFXCIpOyB9XG5cbmlucHV0LmJ1dHRvbi5zZWNvbmRhcnksIC5zaWdudXBfX2Zvcm0gaW5wdXQuYnV0dG9uLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLnNlY29uZGFyeSwgLnNpZ251cF9fZm9ybSBpbnB1dC5idXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzcuOTg2JyBoZWlnaHQ9JzE1LjY5Nicgdmlld0JveD0nMCAwIDcuOTg2IDE1LjY5NiclM0UlM0NwYXRoIGlkPSdhcnJvdycgZGF0YS1uYW1lPSdQYXRoIDU0NjgnIGQ9J00tMTgwOTUuMzkzLDMyMTMuMTgybDQuMzc5LDUuOTQ5LTQuMzc5LDUuNTQyJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgxODA5Ny41IC0zMjExLjA4NCknIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzRkZGRkZGJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycvJTNFJTNDL3N2ZyUzRVwiKTsgfVxuXG5pbnB1dC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuc2lnbnVwX19mb3JtIGlucHV0LmJ1dHRvbjpob3ZlciwgaW5wdXQuYnV0dG9uLnNlY29uZGFyeTphY3RpdmUsIC5zaWdudXBfX2Zvcm0gaW5wdXQuYnV0dG9uOmFjdGl2ZSwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5zZWNvbmRhcnk6aG92ZXIsIC5zaWdudXBfX2Zvcm0gaW5wdXQuYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uc2Vjb25kYXJ5OmFjdGl2ZSwgLnNpZ251cF9fZm9ybSBpbnB1dC5idXR0b25bdHlwZT1cInN1Ym1pdFwiXTphY3RpdmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc3Ljk4NicgaGVpZ2h0PScxNS42OTYnIHZpZXdCb3g9JzAgMCA3Ljk4NiAxNS42OTYnJTNFJTNDcGF0aCBpZD0nYXJyb3cnIGRhdGEtbmFtZT0nUGF0aCA1NDY4JyBkPSdNLTE4MDk1LjM5MywzMjEzLjE4Mmw0LjM3OSw1Ljk0OS00LjM3OSw1LjU0MicgdHJhbnNmb3JtPSd0cmFuc2xhdGUoMTgwOTcuNSAtMzIxMS4wODQpJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM0ZEQzQwMCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnLyUzRSUzQy9zdmclM0VcIik7IH1cblxuaW5wdXQuYnV0dG9uLmdmb3JtX3ByZXZpb3VzX2J1dHRvbiwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5nZm9ybV9wcmV2aW91c19idXR0b24geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc3Ljk4NicgaGVpZ2h0PScxNS42OTYnIHZpZXdCb3g9JzAgMCA3Ljk4NiAxNS42OTYnJTNFJTNDcGF0aCBpZD0nUGF0aF81NDY4JyBkYXRhLW5hbWU9J1BhdGggNTQ2OCcgZD0nTS0xODA5NS4zOTMsMzIxMy4xODJsNC4zNzksNS45NDktNC4zNzksNS41NDInIHRyYW5zZm9ybT0ndHJhbnNsYXRlKC0xODA4OS41MTQgMzIyNi43OCkgcm90YXRlKDE4MCknIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMDQzMjYzJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycvJTNFJTNDL3N2ZyUzRVwiKTsgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYyg2JSkgY2VudGVyOyBwYWRkaW5nOiAxLjI1ZW0gMS40ZW0gMS4yNWVtIDIuOGVtOyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgaW5wdXQuYnV0dG9uLmdmb3JtX3ByZXZpb3VzX2J1dHRvbiwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5nZm9ybV9wcmV2aW91c19idXR0b24geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDE5JSkgY2VudGVyOyB9IH1cblxuaW5wdXQuYnV0dG9uLmdmb3JtX3ByZXZpb3VzX2J1dHRvbjpob3ZlciwgaW5wdXQuYnV0dG9uLmdmb3JtX3ByZXZpb3VzX2J1dHRvbjphY3RpdmUsIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uZ2Zvcm1fcHJldmlvdXNfYnV0dG9uOmhvdmVyLCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmdmb3JtX3ByZXZpb3VzX2J1dHRvbjphY3RpdmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc3Ljk4NicgaGVpZ2h0PScxNS42OTYnIHZpZXdCb3g9JzAgMCA3Ljk4NiAxNS42OTYnJTNFJTNDcGF0aCBpZD0nUGF0aF81NDY4JyBkYXRhLW5hbWU9J1BhdGggNTQ2OCcgZD0nTS0xODA5NS4zOTMsMzIxMy4xODJsNC4zNzksNS45NDktNC4zNzksNS41NDInIHRyYW5zZm9ybT0ndHJhbnNsYXRlKC0xODA4OS41MTQgMzIyNi43OCkgcm90YXRlKDE4MCknIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzRkRDNDAwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycvJTNFJTNDL3N2ZyUzRVwiKTsgfVxuXG4uYnV0dG9uX3JvdyAuY2VsbCB7IHBhZGRpbmc6IDQwcHggMDsgfVxuXG4uYnV0dG9uX19ncmlkIC5ncmV5X19jZWxsLCAuYnV0dG9uX19ncmlkIGEgLmdyZXlfX2NlbGwgeyBib3JkZXItdG9wOiA1cHggc29saWQgI0ZEQzQwMDsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgY29sb3I6ICM3MDcwNzA7IHBhZGRpbmc6IDIwcHg7IG1hcmdpbi1ib3R0b206IDEwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgdHJhbnNpdGlvbjogYWxsIDAuM3M7IH1cblxuLmJ1dHRvbl9fZ3JpZCAuZ3JleV9fY2VsbCB1bCwgLmJ1dHRvbl9fZ3JpZCBhIC5ncmV5X19jZWxsIHVsIHsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4uYnV0dG9uX19ncmlkIGEuZ3JleV9faW5uZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmJ1dHRvbl9fZ3JpZCBhLmdyZXlfX2lubmVyOmhvdmVyIC5ncmV5X19jZWxsLCAuYnV0dG9uX19ncmlkIGEuZ3JleV9faW5uZXIuYWN0aXZlIC5ncmV5X19jZWxsLCAuYnV0dG9uX19ncmlkIGEuZ3JleV9faW5uZXI6YWN0aXZlIC5ncmV5X19jZWxsIHsgdHJhbnNpdGlvbjogYWxsIDAuN3M7IGJhY2tncm91bmQtY29sb3I6ICMwRjU4OUE7IGNvbG9yOiAjMEY1ODlBOyB9XG5cbi5idXR0b25fX2dyaWQgYS5ncmV5X19pbm5lcjpob3ZlciAuZ3JleV9fY2VsbCBoMywgLmJ1dHRvbl9fZ3JpZCBhLmdyZXlfX2lubmVyLmFjdGl2ZSAuZ3JleV9fY2VsbCBoMywgLmJ1dHRvbl9fZ3JpZCBhLmdyZXlfX2lubmVyOmhvdmVyIC5ncmV5X19jZWxsIC5oNSwgLmJ1dHRvbl9fZ3JpZCBhLmdyZXlfX2lubmVyLmFjdGl2ZSAuZ3JleV9fY2VsbCAuaDUsIC5idXR0b25fX2dyaWQgYS5ncmV5X19pbm5lcjpob3ZlciAuZ3JleV9fY2VsbCBwLCAuYnV0dG9uX19ncmlkIGEuZ3JleV9faW5uZXIuYWN0aXZlIC5ncmV5X19jZWxsIHAsIC5idXR0b25fX2dyaWQgYS5ncmV5X19pbm5lcjpob3ZlciAuZ3JleV9fY2VsbCBhLCAuYnV0dG9uX19ncmlkIGEuZ3JleV9faW5uZXIuYWN0aXZlIC5ncmV5X19jZWxsIGEsIC5idXR0b25fX2dyaWQgYS5ncmV5X19pbm5lcjpob3ZlciAuZ3JleV9fY2VsbCBzcGFuLCAuYnV0dG9uX19ncmlkIGEuZ3JleV9faW5uZXIuYWN0aXZlIC5ncmV5X19jZWxsIHNwYW4sIC5idXR0b25fX2dyaWQgYS5ncmV5X19pbm5lcjphY3RpdmUgLmdyZXlfX2NlbGwgaDMsIC5idXR0b25fX2dyaWQgYS5ncmV5X19pbm5lcjphY3RpdmUgLmdyZXlfX2NlbGwgLmg1LCAuYnV0dG9uX19ncmlkIGEuZ3JleV9faW5uZXI6YWN0aXZlIC5ncmV5X19jZWxsIHAsIC5idXR0b25fX2dyaWQgYS5ncmV5X19pbm5lcjphY3RpdmUgLmdyZXlfX2NlbGwgYSwgLmJ1dHRvbl9fZ3JpZCBhLmdyZXlfX2lubmVyOmFjdGl2ZSAuZ3JleV9fY2VsbCBzcGFuIHsgY29sb3I6ICNmZmY7IH1cblxuLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyBjb2xvcjogI0ZEQzQwMDsgcGFkZGluZzogMjBweDsgbWFyZ2luLWJvdHRvbTogMTBweDsgcG9zaXRpb246IHJlbGF0aXZlOyB0cmFuc2l0aW9uOiBhbGwgMC4zczsgfVxuXG4uYnV0dG9uX19ncmlkIC5idXR0b25fX3NpbXBsZSBoNSwgLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGUgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGUgcCB7IG1pbi1oZWlnaHQ6IDU1cHg7IH1cblxuLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGUgcCB7IG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGUgYSB7IGNvbG9yOiAjRkRDNDAwOyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMjBweDsgbGVmdDogMjBweDsgdHJhbnNpdGlvbjogYWxsIDAuM3M7IH1cblxuLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGU6aG92ZXIsIC5idXR0b25fX2dyaWQgYS5idXR0b25fX3NpbXBsZS5hY3RpdmUsIC5idXR0b25fX2dyaWQgYnV0dG9uLmJ1dHRvbl9fc2ltcGxlLmFjdGl2ZSwgLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGU6YWN0aXZlIHsgYmFja2dyb3VuZC1jb2xvcjogIzc2NzE3NTsgY29sb3I6ICMwRjU4OUE7IH1cblxuLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGU6aG92ZXIgYSwgLmJ1dHRvbl9fZ3JpZCBhLmJ1dHRvbl9fc2ltcGxlLmFjdGl2ZSBhLCAuYnV0dG9uX19ncmlkIGJ1dHRvbi5idXR0b25fX3NpbXBsZS5hY3RpdmUgYSwgLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGU6YWN0aXZlIGEgeyBjb2xvcjogIzBGNTg5QTsgfVxuXG4uYnV0dG9uX19ncmlkIC5idXR0b25fX3NpbXBsZS5kZXRhaWxzIHsgdGV4dC1hbGlnbjogY2VudGVyOyBwYWRkaW5nLXRvcDogNTBweDsgcGFkZGluZy1ib3R0b206IDcwcHg7IH1cblxuLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGUuZGV0YWlscyBoNSwgLmJ1dHRvbl9fZ3JpZCAuYnV0dG9uX19zaW1wbGUuZGV0YWlscyBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSAuYnV0dG9uX19ncmlkIC5idXR0b25fX3NpbXBsZS5kZXRhaWxzIHAgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyBtaW4taGVpZ2h0OiB1bnNldDsgfVxuXG4uYnV0dG9uX19ncmlkIC5idXR0b25fX3NpbXBsZS5kZXRhaWxzIHAgeyBmb250LXNpemU6IDEuMTI1cmVtOyBjb2xvcjogIzBGNTg5QTsgfVxuXG4uYnV0dG9uX19ncmlkIC5idXR0b25fX3NpbXBsZS5kZXRhaWxzIGEgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IGZvbnQtd2VpZ2h0OiBib2xkOyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IHVuc2V0OyBib3R0b206IHVuc2V0OyB9XG5cbi5idXR0b25fX2dyaWQgLmJ1dHRvbl9fc2ltcGxlLmRldGFpbHM6aG92ZXIgcCwgLmJ1dHRvbl9fZ3JpZCBhLmJ1dHRvbl9fc2ltcGxlLmRldGFpbHMuYWN0aXZlIHAsIC5idXR0b25fX2dyaWQgYnV0dG9uLmJ1dHRvbl9fc2ltcGxlLmRldGFpbHMuYWN0aXZlIHAsIC5idXR0b25fX2dyaWQgLmJ1dHRvbl9fc2ltcGxlLmRldGFpbHM6YWN0aXZlIHAgeyBjb2xvcjogIzBGNTg5QTsgfVxuXG4uaGVyb19fYnV0dG9uX193cmFwIC5idXR0b24sIC5oZXJvX19idXR0b25fX3dyYXAgbGkuZmF1eC1idXR0b24gYSwgbGkuZmF1eC1idXR0b24gLmhlcm9fX2J1dHRvbl9fd3JhcCBhIHsgbWFyZ2luLXRvcDogMzVweDsgfVxuXG4uYnV0dG9uX19mdWxsd2lkdGggLmJ1dHRvbl9fc2ltcGxlIHsgZGlzcGxheTogaW5saW5lLWZsZXg7IHBhZGRpbmc6IDIwcHg7IGJvcmRlcjogMXB4IHNvbGlkICNGREM0MDA7IH1cblxuLmJ1dHRvbl9fZnVsbHdpZHRoIC5idXR0b25fX3NpbXBsZSBwIHsgaGVpZ2h0OiBmaXQtY29udGVudDsgbWFyZ2luOiBhdXRvIDA7IH1cblxuLmJ1dHRvbl9fZnVsbHdpZHRoIC5idXR0b25fX3NpbXBsZSBhIHsgbWFyZ2luOiBhdXRvIDAgYXV0byBhdXRvOyB9XG5cbi5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSB7IHBhZGRpbmc6IDBweDsgfVxuXG4uYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYSwgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIHNwYW4ubm8tbGluayB7IGRpc3BsYXk6IGlubGluZS1mbGV4OyBwYWRkaW5nOiAyMHB4OyB3aWR0aDogMTAwJTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBwb3NpdGlvbjogcmVsYXRpdmU7IGJvdHRvbTogMDsgbGVmdDogMDsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDsgbWFyZ2luLWJvdHRvbTogMTVweDsgY29sb3I6ICMwNDMyNjM7IGJvcmRlci1yYWRpdXM6IDVweDsgdHJhbnNpdGlvbjogYWxsIDAuMjVzOyB9XG5cbi5tZWRpYSAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYSwgLm1lZGlhIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBzcGFuLm5vLWxpbmsgeyBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7IHBhZGRpbmc6IDAgMCAyMHB4OyBib3JkZXItYm90dG9tOiAycHggc29saWQgI0U0RTRFNDsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgeyAubWVkaWEgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIGEsIC5tZWRpYSAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgc3Bhbi5uby1saW5rIHsgbWFyZ2luLWJvdHRvbTogMTVweDsgfSB9XG5cbi5tZWRpYSAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYTpob3ZlciwgLm1lZGlhIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBhLmFjdGl2ZSwgLm1lZGlhIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBhOmFjdGl2ZSwgLm1lZGlhIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBzcGFuLm5vLWxpbms6aG92ZXIsIC5tZWRpYSAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgc3Bhbi5uby1saW5rOmFjdGl2ZSB7IGNvbG9yOiAjMDQzMjYzOyB9XG5cbi5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBhOmhvdmVyLCAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYS5hY3RpdmUsIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBhOmFjdGl2ZSwgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIHNwYW4ubm8tbGluazpob3ZlciwgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIHNwYW4ubm8tbGluazphY3RpdmUgeyBjb2xvcjogI0ZEQzQwMDsgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MzsgfVxuXG4uYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYTpob3ZlciAuYXJyb3ctYnRuLCAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYS5hY3RpdmUgLmFycm93LWJ0biwgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIGE6YWN0aXZlIC5hcnJvdy1idG4sIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBzcGFuLm5vLWxpbms6aG92ZXIgLmFycm93LWJ0biwgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIHNwYW4ubm8tbGluazphY3RpdmUgLmFycm93LWJ0biB7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9idG5hcnJvdy1ob3Zlci5zdmcpOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBhOmhvdmVyIC5hcnJvdy1idG4sIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBhLmFjdGl2ZSAuYXJyb3ctYnRuLCAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYTphY3RpdmUgLmFycm93LWJ0biwgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIHNwYW4ubm8tbGluazpob3ZlciAuYXJyb3ctYnRuLCAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgc3Bhbi5uby1saW5rOmFjdGl2ZSAuYXJyb3ctYnRuIHsgYmFja2dyb3VuZDogI0ZEQzQwMDsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2J0bmFycm93LWhvdmVyLnN2Zyk7IG1hc2stc2l6ZTogMTVweCAxNXB4OyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9IH1cblxuLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIGEgcCwgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIHNwYW4ubm8tbGluayBwIHsgaGVpZ2h0OiBmaXQtY29udGVudDsgbWFyZ2luOiBhdXRvIDA7IGZvbnQtd2VpZ2h0OiA4MDA7IGxpbmUtaGVpZ2h0OiAxLjI7IH1cblxuLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIGEgLmFycm93LWJ0biwgLmJ1dHRvbl9faGFsZmhhbGYgLmJ1dHRvbl9fc2ltcGxlIHNwYW4ubm8tbGluayAuYXJyb3ctYnRuIHsgaGVpZ2h0OiAxNXB4OyBtaW4td2lkdGg6IDE1cHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW46IGF1dG8gMTBweCBhdXRvIDA7IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9idG5hcnJvdy5zdmcpOyBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBhIC5hcnJvdy1idG4sIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBzcGFuLm5vLWxpbmsgLmFycm93LWJ0biB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9idG5hcnJvdy5zdmcpOyBtYXNrLXNpemU6IDE1cHggMTVweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbi5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBhIC5kb3dubG9hZC1idG4sIC5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBzcGFuLm5vLWxpbmsgLmRvd25sb2FkLWJ0biB7IGhlaWdodDogMTVweDsgd2lkdGg6IDE1cHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW46IGF1dG8gMTBweCBhdXRvIDA7IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3dubG9hZC1idG5AMngucG5nKTsgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgYSAuZG93bmxvYWQtYnRuLCAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgc3Bhbi5uby1saW5rIC5kb3dubG9hZC1idG4geyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bmxvYWQtaWNvbi5zdmcpOyBtYXNrLXNpemU6IDE1cHggMTVweDsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbi5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZSBzcGFuLm5vLWxpbmsgeyBjb2xvcjogIzA0MzI2MzsgfVxuXG4uYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgc3Bhbi5uby1saW5rOmhvdmVyLCAuYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUgc3Bhbi5uby1saW5rOmFjdGl2ZSB7IGNvbG9yOiAjMDQzMjYzOyB9XG5cbi5idXR0b25fX2hhbGZoYWxmIC5idXR0b25fX3NpbXBsZS5idXR0b25fX3NpbXBsZV9lbGVjdGlvbiBhIHsgYmFja2dyb3VuZC1jb2xvcjogIzBGNTg5QTsgfVxuXG4uYnV0dG9uX19oYWxmaGFsZiAuYnV0dG9uX19zaW1wbGUuYnV0dG9uX19zaW1wbGVfZWxlY3Rpb24gLmVsZWN0aW9uLWJ0biB7IGhlaWdodDogMTVweDsgd2lkdGg6IDE1cHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW46IGF1dG8gMTBweCBhdXRvIDA7IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9idG5lbGVjdGlvbi5zdmcpOyBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5idXR0b25fX2NhcmQgeyBib3JkZXItdG9wOiAxNHB4IHNvbGlkICMwRjU4OUE7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTRlNWU5OyBwYWRkaW5nOiAxMHB4IDBweDsgfVxuXG4uYnV0dG9uX19jYXJkIGEgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmJ1dHRvbl9fY2FyZCBhIGg1OmFmdGVyLCAuYnV0dG9uX19jYXJkIGEgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcDphZnRlciwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLmJ1dHRvbl9fY2FyZCBhIHA6YWZ0ZXIgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGxlZnQ6IDEwcHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgY29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Fycm93LW5leHRAMngucG5nKTsgYmFja2dyb3VuZC1zaXplOiA5cHggMTNweDsgd2lkdGg6IDlweDsgaGVpZ2h0OiAxM3B4OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHsgLmJyZWFkY3J1bWItd3JhcCArIC5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgeyB0b3A6IDEzNXB4OyB9IH1cblxuLmRyb3Bkb3duX190YWJsZW9mY29udGVudCB7IG1pbi13aWR0aDogMjIwcHg7IGJhY2tncm91bmQtY29sb3I6ICMwNDMyNjM7IGNvbG9yOiAjRkZGOyBib3JkZXItcmFkaXVzOiAwcHggMHB4IDVweCA1cHg7IG1hcmdpbi1sZWZ0OiAzLjZyZW07IHBvc2l0aW9uOiBmaXhlZDsgdG9wOiAxMjhweDsgei1pbmRleDogOTk2OyBwYWRkaW5nOiAxMHB4IDMwcHg7IGRpc3BsYXk6IG5vbmU7IH1cblxuLmRyb3Bkb3duX190YWJsZW9mY29udGVudC5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnRfbW9iaWxlIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IC5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgeyBkaXNwbGF5OiBub25lOyB9XG4gIC5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50X21vYmlsZSB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IG1hcmdpbi1sZWZ0OiAwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwcHg7IG1pbi13aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkgYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgLmRyb3Bkb3duX190YWJsZW9mY29udGVudC5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnRfbW9iaWxlIHsgbWluLXdpZHRoOiBjYWxjKDEwMCUgLSAxLjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHsgLmRyb3Bkb3duX190YWJsZW9mY29udGVudC5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnRfbW9iaWxlIC5kcm9wZG93bi1jb250ZW50IHsgbWluLXdpZHRoOiAxMDAlOyB9IH1cblxuLmRyb3Bkb3duX190YWJsZW9mY29udGVudCBwIHsgZm9udC13ZWlnaHQ6IDcwMDsgbWFyZ2luOiAwcHg7IH1cblxuLmRyb3Bkb3duX190YWJsZW9mY29udGVudCBwOmFmdGVyIHsgY29udGVudDogJyc7IHdpZHRoOiAxNXB4OyBoZWlnaHQ6IDI1cHg7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LXllbGxvdy5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyL2NvbnRhaW47IGZsb2F0OiByaWdodDsgdHJhbnNpdGlvbjogYWxsIDAuNXM7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgLmRyb3Bkb3duX190YWJsZW9mY29udGVudCBwOmFmdGVyIHsgYmFja2dyb3VuZDogI0ZEQzQwMDsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cteWVsbG93LnN2Zyk7IG1hc2stc2l6ZTogY29udGFpbjsgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgbWFzay1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfSB9XG5cbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgLmRyb3Bkb3duLWNvbnRlbnQgeyBkaXNwbGF5OiBub25lOyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDBweDsgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MzsgY29sb3I6ICNGRkY7IG1pbi13aWR0aDogMjIwcHg7IG1heC1oZWlnaHQ6IDUwdmg7IG92ZXJmbG93OiBzY3JvbGw7IGJveC1zaGFkb3c6IDBweCA4cHggMTZweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpOyBwYWRkaW5nOiAxNXB4IDEwcHg7IHotaW5kZXg6IDE7IGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDsgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDVweDsgfVxuXG4uZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50IC5kcm9wZG93bi1jb250ZW50IHVsIHsgbWFyZ2luOiAwcHg7IGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLmRyb3Bkb3duX190YWJsZW9mY29udGVudCAuZHJvcGRvd24tY29udGVudCB1bCBsaSB7IHBhZGRpbmc6IDEwcHggMHB4IDEwcHggMjBweDsgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHJnYmEoMjI4LCAyMjgsIDIyOCwgMC4yKTsgfVxuXG4uZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50IC5kcm9wZG93bi1jb250ZW50IHVsIGxpIGEgeyBjb2xvcjogI2ZmZjsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBmb250LXNpemU6IDE2cHg7IHRyYW5zaXRpb246IGFsbCAwLjVzOyB9XG5cbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgLmRyb3Bkb3duLWNvbnRlbnQgdWwgbGk6YmVmb3JlIHsgY29udGVudDogJyc7IHdpZHRoOiAxM3B4OyBoZWlnaHQ6IDI1cHg7IGZsb2F0OiBsZWZ0OyBtYXJnaW4tbGVmdDogLTE5cHg7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy90YmNfd2hpdGUuc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlci9jb250YWluOyB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50IC5kcm9wZG93bi1jb250ZW50IHVsIGxpOmJlZm9yZSB7IGJhY2tncm91bmQ6ICNGRkY7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy90YmNfd2hpdGUuc3ZnKTsgbWFzay1zaXplOiBjb250YWluOyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9IH1cblxuLmRyb3Bkb3duX190YWJsZW9mY29udGVudCAuZHJvcGRvd24tY29udGVudCB1bCBsaTpob3ZlciBhLCAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50IC5kcm9wZG93bi1jb250ZW50IHVsIGxpOmFjdGl2ZSBhIHsgY29sb3I6ICNGREM0MDA7IH1cblxuLmRyb3Bkb3duX190YWJsZW9mY29udGVudCAuZHJvcGRvd24tY29udGVudCB1bCBsaTpob3ZlcjpiZWZvcmUsIC5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgLmRyb3Bkb3duLWNvbnRlbnQgdWwgbGk6YWN0aXZlOmJlZm9yZSB7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy90YmNfeWVsbG93LnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIvY29udGFpbjsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50IC5kcm9wZG93bi1jb250ZW50IHVsIGxpOmhvdmVyOmJlZm9yZSwgLmRyb3Bkb3duX190YWJsZW9mY29udGVudCAuZHJvcGRvd24tY29udGVudCB1bCBsaTphY3RpdmU6YmVmb3JlIHsgYmFja2dyb3VuZDogI0ZEQzQwMDsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL3RiY195ZWxsb3cuc3ZnKTsgfSB9XG5cbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgLmRyb3Bkb3duLWNvbnRlbnQuZHJvcGRvd24tY29udGVudF9jbG9zZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKGhvdmVyOiBob3ZlcikgYW5kIChtaW4td2lkdGg6IDEwMjVweCkgeyAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50OmhvdmVyIHA6YWZ0ZXIsIGEuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50LmFjdGl2ZSBwOmFmdGVyLCBidXR0b24uZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50LmFjdGl2ZSBwOmFmdGVyLCAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50OmFjdGl2ZSBwOmFmdGVyIHsgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKGhvdmVyOiBob3ZlcikgYW5kIChtaW4td2lkdGg6IDEwMjVweCkgeyAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50OmhvdmVyIC5kcm9wZG93bi1jb250ZW50LCBhLmRyb3Bkb3duX190YWJsZW9mY29udGVudC5hY3RpdmUgLmRyb3Bkb3duLWNvbnRlbnQsIGJ1dHRvbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQuYWN0aXZlIC5kcm9wZG93bi1jb250ZW50LCAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50OmFjdGl2ZSAuZHJvcGRvd24tY29udGVudCB7IGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmRyb3Bkb3duX190YWJsZW9mY29udGVudC50b2Nfc2hvdyB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQgdWwuZHJvcGRvd24tY29udGVudF9jbG9zZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5kcm9wZG93bl9fdGFibGVvZmNvbnRlbnQuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50X3JvdGF0ZSBwOmFmdGVyIHsgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuXG5ib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLmJ1dHRvbi5wcmltYXJ5LCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gYS5wcmltYXJ5LCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5wcmltYXJ5IHsgY29sb3I6IHdoaXRlOyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQzMjYzOyBib3JkZXI6IDJweCBzb2xpZCAjRkRDNDAwOyB9XG5cbmJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuYnV0dG9uLnByaW1hcnk6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhLnByaW1hcnk6YWZ0ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxuXG5ib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5idXR0b24ucHJpbWFyeS5hY3RpdmUsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnkuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5wcmltYXJ5LmFjdGl2ZSwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGJ1dHRvbi5idXR0b24ucHJpbWFyeS5hY3RpdmUsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhLnByaW1hcnk6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkRDNDAwOyBib3JkZXI6IDJweCBzb2xpZCAjMDQzMjYzOyB9XG5cbmJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuYnV0dG9uLnNlY29uZGFyeSwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gLmJ1dHRvbiwgLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLmJ1dHRvbiwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYSwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYSwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYSwgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYSwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5LCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5zZWNvbmRhcnkgeyBjb2xvcjogYmxhY2s7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBib3JkZXI6IDJweCBzb2xpZCAjRkRDNDAwOyB9XG5cbmJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gLmJ1dHRvbjpob3ZlciwgLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLmJ1dHRvbjpob3ZlciwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gYS5idXR0b24uYWN0aXZlLCAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhLmJ1dHRvbi5hY3RpdmUsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGEuYWN0aXZlLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhLmFjdGl2ZSwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYS5hY3RpdmUsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGEuYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uLmFjdGl2ZSwgLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYnV0dG9uLmJ1dHRvbi5hY3RpdmUsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGE6aG92ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGE6aG92ZXIsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGE6aG92ZXIsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhLmJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnkuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5zZWNvbmRhcnkuYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYnV0dG9uLmJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gYS5zZWNvbmRhcnk6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhLnNlY29uZGFyeTpob3ZlciB7IGNvbG9yOiB3aGl0ZTsgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MzsgfVxuXG5ib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXI6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIC5idXR0b246aG92ZXI6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIC5idXR0b246aG92ZXI6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIGEuYnV0dG9uLmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5idXR0b24uYWN0aXZlOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5hY3RpdmU6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhLmFjdGl2ZTphZnRlciwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gYnV0dG9uLmJ1dHRvbi5hY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGJ1dHRvbi5idXR0b24uYWN0aXZlOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOmhvdmVyOmFmdGVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhOmhvdmVyOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmRhcmstYnJhbmQtY29sb3VycyBhOmhvdmVyOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5idXR0b24uc2Vjb25kYXJ5LmFjdGl2ZTphZnRlciwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5LmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGEuc2Vjb25kYXJ5LmFjdGl2ZTphZnRlciwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGJ1dHRvbi5idXR0b24uc2Vjb25kYXJ5LmFjdGl2ZTphZnRlciwgYm9keS5taWNyb3NpdGUuZGFyay1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5OmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5kYXJrLWJyYW5kLWNvbG91cnMgYS5zZWNvbmRhcnk6aG92ZXI6YWZ0ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxuXG5ib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5idXR0b24ucHJpbWFyeSwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnksIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYS5wcmltYXJ5IHsgY29sb3I6IGJsYWNrOyBiYWNrZ3JvdW5kLWNvbG9yOiAjMEY1ODlBOyBib3JkZXI6IDJweCBzb2xpZCAjMDQzMjYzOyB9XG5cbmJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgLmJ1dHRvbi5wcmltYXJ5OmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIGEucHJpbWFyeTphZnRlciwgbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhLnByaW1hcnk6YWZ0ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxuXG5ib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5idXR0b24ucHJpbWFyeTpob3ZlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhLmJ1dHRvbi5wcmltYXJ5LmFjdGl2ZSwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnkuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGEucHJpbWFyeS5hY3RpdmUsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYnV0dG9uLmJ1dHRvbi5wcmltYXJ5LmFjdGl2ZSwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiBhLnByaW1hcnk6aG92ZXIsIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYS5wcmltYXJ5OmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MzsgYm9yZGVyOiAycHggc29saWQgIzBGNTg5QTsgfVxuXG5ib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5idXR0b24uc2Vjb25kYXJ5LCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gLmJ1dHRvbiwgLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5idXR0b24sIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYSwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5LCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGEuc2Vjb25kYXJ5IHsgY29sb3I6IHdoaXRlOyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgYm9yZGVyOiAycHggc29saWQgI0ZEQzQwMDsgfVxuXG5ib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5idXR0b24uc2Vjb25kYXJ5OmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gLmJ1dHRvbjphZnRlciwgLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5idXR0b246YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBhOmFmdGVyLCAuc2lnbnVwX19mb3JtIGxpLmZhdXgtYnV0dG9uIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYTphZnRlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGE6YWZ0ZXIsIGxpLmZhdXgtYnV0dG9uIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5OmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGEuc2Vjb25kYXJ5OmFmdGVyIHsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cblxuYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIC5idXR0b246aG92ZXIsIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuYnV0dG9uOmhvdmVyLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gYS5idXR0b24uYWN0aXZlLCAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYS5idXR0b24uYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5hY3RpdmUsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhLmFjdGl2ZSwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEuYWN0aXZlLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYS5hY3RpdmUsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uLmFjdGl2ZSwgLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGJ1dHRvbi5idXR0b24uYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTpob3ZlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGE6aG92ZXIsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYTpob3ZlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhLmJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5LmFjdGl2ZSwgbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhLnNlY29uZGFyeS5hY3RpdmUsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYnV0dG9uLmJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5OmhvdmVyLCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGEuc2Vjb25kYXJ5OmhvdmVyIHsgY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6ICMwRjU4OUE7IH1cblxuYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuYnV0dG9uLnNlY29uZGFyeTpob3ZlcjphZnRlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuc2lnbnVwX19mb3JtIC5idXR0b246aG92ZXI6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyAuYnV0dG9uOmhvdmVyOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gYS5idXR0b24uYWN0aXZlOmFmdGVyLCAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYS5idXR0b24uYWN0aXZlOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYS5hY3RpdmU6YWZ0ZXIsIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhLmFjdGl2ZTphZnRlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGEuYWN0aXZlOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYS5hY3RpdmU6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgLnNpZ251cF9fZm9ybSBidXR0b24uYnV0dG9uLmFjdGl2ZTphZnRlciwgLnNpZ251cF9fZm9ybSBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGJ1dHRvbi5idXR0b24uYWN0aXZlOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIC5zaWdudXBfX2Zvcm0gbGkuZmF1eC1idXR0b24gYTpob3ZlcjphZnRlciwgLnNpZ251cF9fZm9ybSBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGE6aG92ZXI6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgbGkuZmF1eC1idXR0b24gLnNpZ251cF9fZm9ybSBhOmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiAuc2lnbnVwX19mb3JtIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYTpob3ZlcjphZnRlciwgYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhLmJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5LmFjdGl2ZTphZnRlciwgbGkuZmF1eC1idXR0b24gYm9keS5taWNyb3NpdGUubGlnaHQtYnJhbmQtY29sb3VycyBhLnNlY29uZGFyeS5hY3RpdmU6YWZ0ZXIsIGJvZHkubWljcm9zaXRlLmxpZ2h0LWJyYW5kLWNvbG91cnMgYnV0dG9uLmJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlOmFmdGVyLCBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGxpLmZhdXgtYnV0dG9uIGEuc2Vjb25kYXJ5OmhvdmVyOmFmdGVyLCBsaS5mYXV4LWJ1dHRvbiBib2R5Lm1pY3Jvc2l0ZS5saWdodC1icmFuZC1jb2xvdXJzIGEuc2Vjb25kYXJ5OmhvdmVyOmFmdGVyIHsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cblxuaW1nLmltYWdlIHsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG5AbWVkaWEgb25seSBwcmludCB7IGltZyB7IHBhZ2UtYnJlYWstYmVmb3JlOiBhdXRvICFpbXBvcnRhbnQ7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF1dG8gIWltcG9ydGFudDsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkICFpbXBvcnRhbnQ7IH0gfVxuXG5pbWcuYWxpZ25sZWZ0IHsgZmxvYXQ6IGxlZnQ7IG1hcmdpbi1yaWdodDogMjBweDsgfVxuXG5pbWcuYWxpZ25yaWdodCB7IGZsb2F0OiByaWdodDsgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cblxuaW1nLmFsaWduY2VudGVyIHsgbWFyZ2luOiBhdXRvOyBkaXNwbGF5OiBmbGV4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7IGltZy5hbGlnbmNlbnRlciwgaW1nLmFsaWducmlnaHQsIGltZy5hbGlnbmxlZnQgeyBmbG9hdDogbm9uZTsgZGlzcGxheTogZmxleDsgbWFyZ2luOiAyMHB4IGF1dG87IH0gfVxuXG4uZmFjdHNoZWV0X2Jhbm5lcl9jb250YWluZXIgaW1nIHsgaGVpZ2h0OiBjbGFtcCgzNTBweCwgNDAwcHgsIDUwMHB4KTsgd2lkdGg6IGF1dG87IG9iamVjdC1maXQ6IGNvdmVyOyBvYmplY3QtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IH1cblxuaW1nLmFydGljbGVfaW1hZ2UgeyB3aWR0aDogMTAwJTsgaGVpZ2h0OiBhdXRvOyB9XG5cbi5jYXB0aW9uLXdyYXAgeyBwYWRkaW5nLXRvcDogMTBweDsgcGFkZGluZy1ib3R0b206IDBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgeyAuY2FwdGlvbi13cmFwIHsgcGFkZGluZy10b3A6IDIwcHg7IHBhZGRpbmctYm90dG9tOiAyMHB4OyB9IH1cblxudWwucGFnZS1udW1iZXJzIHsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGJhc2VsaW5lOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgZmxleC13cmFwOiB3cmFwOyB9XG5cbnVsLnBhZ2UtbnVtYmVycyBhLCB1bC5wYWdlLW51bWJlcnMgbGkuY3VycmVudCwgdWwucGFnZS1udW1iZXJzIGxpLmVsbGlwc2lzIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbnVsLnBhZ2UtbnVtYmVycyBhOmhvdmVyLCB1bC5wYWdlLW51bWJlcnMgYS5hY3RpdmUsIHVsLnBhZ2UtbnVtYmVycyBsaS5jdXJyZW50OmhvdmVyLCB1bC5wYWdlLW51bWJlcnMgbGkuZWxsaXBzaXM6aG92ZXIgeyBjb2xvcjogIzA0MzI2MzsgfVxuXG51bC5wYWdlLW51bWJlcnMgbGkgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGhlaWdodDogMzFweDsgfVxuXG51bC5wYWdlLW51bWJlcnMgbGkgLmN1cnJlbnQgeyBib3JkZXItYm90dG9tOiA0cHggc29saWQgIzBGNTg5QTsgfVxuXG51bC5wYWdlLW51bWJlcnMgLnByZXY6YWZ0ZXIsIHVsLnBhZ2UtbnVtYmVycyAubmV4dDphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IGRpc3BsYXk6IGZsZXg7IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IGJhY2tncm91bmQtc2l6ZTogMTFweCAxN3B4OyB3aWR0aDogMTFweDsgaGVpZ2h0OiAxN3B4OyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IHVsLnBhZ2UtbnVtYmVycyAucHJldjphZnRlciwgdWwucGFnZS1udW1iZXJzIC5uZXh0OmFmdGVyIHsgbWFzay1zaXplOiBjb250YWluOyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9IH1cblxudWwucGFnZS1udW1iZXJzIC5wcmV2OmFmdGVyIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ljb25zL3ByZXYtYnRuLnN2Zyk7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgdWwucGFnZS1udW1iZXJzIC5wcmV2OmFmdGVyIHsgYmFja2dyb3VuZDogIzA0MzI2MzsgbWFzay1pbWFnZTogdXJsKC4uL2ljb25zL3ByZXYtYnRuLnN2Zyk7IH0gfVxuXG51bC5wYWdlLW51bWJlcnMgLm5leHQ6YWZ0ZXIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaWNvbnMvbmV4dC1idG4uc3ZnKTsgfVxuXG5Ac3VwcG9ydHMgKG1hc2staW1hZ2U6IHVybChcIlwiKSkgeyB1bC5wYWdlLW51bWJlcnMgLm5leHQ6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvbmV4dC1idG4uc3ZnKTsgfSB9XG5cbi5zZWFyY2hfd3JhcHBlciB7IGJhY2tncm91bmQtY29sb3I6ICNGNEY0RjQgIWltcG9ydGFudDsgfVxuXG4uc2VhcmNoX3dyYXBwZXIgLnNlYXJjaCBpbnB1dCwgLnNlYXJjaF93cmFwcGVyIC5zZWFyY2ggaW5wdXQ6Zm9jdXMgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyBjb2xvcjogIzc2NzE3NTsgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50OyBib3JkZXI6IG5vbmU7IGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLnNlYXJjaF93cmFwcGVyIC5zZWFyY2ggaW5wdXQsIC5zZWFyY2hfd3JhcHBlciAuc2VhcmNoIHNlbGVjdCwgLnNlYXJjaF93cmFwcGVyIC5zZWFyY2ggOjpwbGFjZWhvbGRlciB7IGZvbnQtc2l6ZTogMS4yNXJlbTsgY29sb3I6ICM3NjcxNzU7IGJvcmRlcjogbm9uZTsgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4uc2VhcmNoX3dyYXBwZXIgLnNlYXJjaCBkaXYuc2VhcmNoX19pbnB1dCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uc2VhcmNoX3dyYXBwZXIgLnNlYXJjaCBkaXYuc2VhcmNoX19pbnB1dDo6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvc2VhcmNoLWljb24tZ3JleS5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyL2NvbnRhaW47IGhlaWdodDogMjBweDsgd2lkdGg6IDIwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAxMHB4OyByaWdodDogMTBweDsgfVxuXG4uc2VhcmNoX3dyYXBwZXIgLnNlYXJjaCAuc2VhcmNoX19maWx0ZXJzIHsgZGlzcGxheTogYmxvY2s7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHsgLnNlYXJjaF93cmFwcGVyIC5zZWFyY2ggLnNlYXJjaF9fZmlsdGVycyB7IGRpc3BsYXk6IGZsZXg7IH0gfVxuXG4uc2VhcmNoX3dyYXBwZXIgLnNlYXJjaCAuc2VhcmNoX19maWx0ZXJzIHNlbGVjdCB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7IGJhY2tncm91bmQtc2l6ZTogMTVweCA4cHg7IH1cblxuQHN1cHBvcnRzIChtYXNrLWltYWdlOiB1cmwoXCJcIikpIHsgLnNlYXJjaF93cmFwcGVyIC5zZWFyY2ggLnNlYXJjaF9fZmlsdGVycyBzZWxlY3QgeyBiYWNrZ3JvdW5kOiAjMDQzMjYzOyBtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpOyBtYXNrLXNpemU6IDE1cHggOHB4OyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5zZWFyY2hfd3JhcHBlciAuc2VhcmNoIC5zZWFyY2hfX2ZpbHRlcnMgbGFiZWwgeyBmbGV4OiAxOyBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cbiAgLnNlYXJjaF93cmFwcGVyIC5zZWFyY2ggLnNlYXJjaF9fZmlsdGVycyBsYWJlbC5sYXN0IHsgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuI215LWN1c3RvbS1zZWFyY2hmb3JtIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbiNteS1jdXN0b20tc2VhcmNoZm9ybSBpbnB1dFt0eXBlPXRleHRdIHsgYm9yZGVyOiBub25lOyBib3gtc2hhZG93OiBub25lOyB9XG5cbiNteS1jdXN0b20tc2VhcmNoZm9ybSBzZWxlY3QgeyBwYWRkaW5nLXRvcDogMDsgcGFkZGluZy1ib3R0b206IDA7IHdpZHRoOiA0OSU7IGRpc3BsYXk6IGlubGluZS1mbGV4OyBib3JkZXI6IG5vbmU7IGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuI215LWN1c3RvbS1zZWFyY2hmb3JtIHNlbGVjdDpudGgtY2hpbGQob2RkKSB7IGZsb2F0OiByaWdodDsgfVxuXG4jbXktY3VzdG9tLXNlYXJjaGZvcm0gaW5wdXRbdHlwZT1zdWJtaXRdIHsgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogMDsgaGVpZ2h0OiA0MHB4OyB3aWR0aDogNDBweDsgdGV4dC1pbmRlbnQ6IC05OTk5OXB4OyBjdXJzb3I6IHBvaW50ZXI7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYm9yZGVyOiBub25lOyB6LWluZGV4OiA5OTk5OTk5OTk5OTk5OyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvc2VhcmNoLWljb24tcmVkLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7IHRvcDogMHB4OyB9XG5cbi5zZWFyY2gtZm9ybSB7IG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4uc2VhcmNoLWZvcm0gaW5wdXRbdHlwZT1zZWFyY2hdOmFjdGl2ZSwgLnNlYXJjaC1mb3JtIGlucHV0W3R5cGU9c2VhcmNoXTpmb2N1cyB7IGJvcmRlcjogbm9uZTsgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyBib3JkZXItYm90dG9tOiA0cHggc29saWQgI0NFMDAzQTsgfVxuXG4uc2VhcmNoX3Jlc3VsdHMgLnJlc3VsdHNfdG90YWwgeyBtYXJnaW4tdG9wOiAyMHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7IC5zZWFyY2hfcmVzdWx0cyAucmVzdWx0c190b3RhbCB7IG1hcmdpbi10b3A6IDUwcHg7IH0gfVxuXG4uc2VhcmNoX3Jlc3VsdHMgLnJlc3VsdHNfaW5mbyB7IGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLnNlYXJjaF9yZXN1bHRzIC5waW5rX3RleHQgeyBjb2xvcjogIzA0MzI2MzsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV84NSBIZWF2eTE0NzU1NDRcIjsgfVxuXG4uc2VhcmNoX3Jlc3VsdHMgdWwgeyBsaXN0LXN0eWxlOiBub25lOyBtYXJnaW46IDBweCAhaW1wb3J0YW50OyB9XG5cbi5zZWFyY2hfcmVzdWx0cyB1bCBsaSB7IGxpc3Qtc3R5bGU6IG5vbmU7IGJvcmRlci1sZWZ0OiAzcHggc29saWQgIzA0MzI2MzsgcGFkZGluZy1sZWZ0OiAxcmVtOyB9XG5cbi5zZWFyY2hfcmVzdWx0cyB1bCBsaSBoMiB7IG1hcmdpbi10b3A6IDYwcHg7IH1cblxuLnNlYXJjaF9yZXN1bHRzIHVsIGxpIGg1LCAuc2VhcmNoX3Jlc3VsdHMgdWwgbGkgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgcCwgc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgLnNlYXJjaF9yZXN1bHRzIHVsIGxpIHAgeyBtYXJnaW4tYm90dG9tOiA4cHg7IH1cblxuLnNlYXJjaF9yZXN1bHRzIHVsIGxpIHAgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5zZWFyY2hfcmVzdWx0cyB1bCBsaSBhIHsgZm9udC13ZWlnaHQ6IDgwMDsgfVxuXG4uc2VhcmNoX3Jlc3VsdHMgdWwgbGkgYTo6YWZ0ZXIgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbi1sZWZ0OiAxMHB4OyBoZWlnaHQ6IDEzcHg7IHdpZHRoOiA5cHg7IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9hcnJvdy1idG4tYmx1ZS5zdmcpIG5vLXJlcGVhdDsgYmFja2dyb3VuZC1zaXplOiA5cHggMTNweDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbkBzdXBwb3J0cyAobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7IC5zZWFyY2hfcmVzdWx0cyB1bCBsaSBhOjphZnRlciB7IGJhY2tncm91bmQ6ICMwNDMyNjM7IG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9hcnJvdy1idG4tYmx1ZS5zdmcpOyBtYXNrLXNpemU6IDlweCAxM3B4OyBtYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9IH1cblxuLnNlYXJjaF9yZXN1bHRzIHVsIGxpOmJlZm9yZSB7IGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4jc2VhcmNoZm9ybS5zZWFyY2hfZGVza3RvcCB7IGRpc3BsYXk6IGZsZXg7IH1cblxuI3NlYXJjaGZvcm0uc2VhcmNoX2Rlc2t0b3AgaW5wdXRbdHlwZT0ndGV4dCddIHsgbWFyZ2luOiAwOyB9XG5cbiNzZWFyY2hmb3JtLnNlYXJjaF9kZXNrdG9wICNzZWFyY2gtbGFuZyB7IGJvcmRlci1yYWRpdXM6IDIzcHg7IHBhZGRpbmc6IDAuN3JlbSAycmVtIDAuN3JlbSAxcmVtOyBtYXJnaW46IDAgMCAwIDIwcHg7IGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoMTAwJSAtIDE1cHgpIGNlbnRlcjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHsgI3NlYXJjaGZvcm0uc2VhcmNoX2Rlc2t0b3AgeyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHsgI3NlYXJjaGZvcm0uc2VhcmNoX2Rlc2t0b3AgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICNzZWFyY2hmb3JtLnNlYXJjaF9kZXNrdG9wIGlucHV0W3R5cGU9J3RleHQnXSB7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgI3NlYXJjaGZvcm0uc2VhcmNoX2Rlc2t0b3AgI3NlYXJjaC1sYW5nIHsgbWFyZ2luOiAwIDAgMjBweCAwOyB3aWR0aDogZml0LWNvbnRlbnQ7IH0gfVxuXG4vKiogTGlzdHMgKi9cbnNlY3Rpb24gLmNlbGwgdWw6bm90KC5wYWdpbmF0aW9uKTpub3QodWwucGFnZS1udW1iZXJzKTpub3QoLnBhZ2UtbnVtYmVycyk6bm90KC50YWJzKTpub3QoLmFjY29yZGlvbik6bm90KC5zb2NpYWwtLWxpc3QpOm5vdCguc2lkZWJhcl9saXN0KTpub3QoLmJyZWFkY3J1bWItLW5hdmlnYXRpb24pOm5vdCguZGFzaGVkKTpub3QoLmdmb3JtX2ZpZWxkcykgeyBsaXN0LXN0eWxlOiBub25lOyAvKiBSZW1vdmUgZGVmYXVsdCBidWxsZXRzICovIG1hcmdpbi1sZWZ0OiAyNHB4OyBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cblxuc2VjdGlvbiAuY2VsbCB1bDpub3QoLnBhZ2luYXRpb24pOm5vdCh1bC5wYWdlLW51bWJlcnMpOm5vdCgucGFnZS1udW1iZXJzKTpub3QoLnRhYnMpOm5vdCguYWNjb3JkaW9uKTpub3QoLnNvY2lhbC0tbGlzdCk6bm90KC5zaWRlYmFyX2xpc3QpOm5vdCguYnJlYWRjcnVtYi0tbmF2aWdhdGlvbik6bm90KC5kYXNoZWQpOm5vdCguZ2Zvcm1fZmllbGRzKSBsaTo6YmVmb3JlIHsgY29udGVudDogXCJcXDIwMjJcIjsgLyogQWRkIGNvbnRlbnQ6IFxcMjAyMiBpcyB0aGUgQ1NTIENvZGUvdW5pY29kZSBmb3IgYSBidWxsZXQgKi8gY29sb3I6ICMwRjU4OUE7IC8qIENoYW5nZSB0aGUgY29sb3IgKi8gZm9udC13ZWlnaHQ6IGJvbGQ7IC8qIElmIHlvdSB3YW50IGl0IHRvIGJlIGJvbGQgKi8gZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiBOZWVkZWQgdG8gYWRkIHNwYWNlIGJldHdlZW4gdGhlIGJ1bGxldCBhbmQgdGhlIHRleHQgKi8gd2lkdGg6IDEuNWVtOyAvKiBBbHNvIG5lZWRlZCBmb3Igc3BhY2UgKHR3ZWFrIGlmIG5lZWRlZCkgKi8gbWFyZ2luLWxlZnQ6IC0xLjVlbTsgLyogQWxzbyBuZWVkZWQgZm9yIHNwYWNlICh0d2VhayBpZiBuZWVkZWQpICovIH1cblxuc2VjdGlvbiAuY2VsbCB1bC5hY2NvcmRpb24gbGk6OmJlZm9yZSB7IGNvbnRlbnQ6IG5vbmU7IH1cblxuc2VjdGlvbiAuZnJlZV90ZXh0IGJsb2NrcXVvdGUgeyBwb3NpdGlvbjogcmVsYXRpdmU7IG1hcmdpbjogNDBweCAwOyB9XG5cbnNlY3Rpb24gLmZyZWVfdGV4dCBibG9ja3F1b3RlOmJlZm9yZSB7IGNvbnRlbnQ6ICcnOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgd2lkdGg6IDEycHg7IGhlaWdodDogMTAwJTsgYmFja2dyb3VuZDogIzA0MzI2MzsgYm9yZGVyLXJhZGl1czogNnB4OyB9XG5cbi8qKiBUYWJzICovXG4udGFicyB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBib3JkZXI6IG5vbmU7IH1cblxuLnRhYnMgbGkudGFicy10aXRsZSB7IG1hcmdpbi1yaWdodDogNHB4OyB9XG5cbi50YWJzIGxpLnRhYnMtdGl0bGUgPiBhIHsgY29sb3I6ICNGREM0MDA7IGZvbnQtc2l6ZTogMXJlbTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0OyB9XG5cbi50YWJzIGxpLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0geyBiYWNrZ3JvdW5kOiAjMEY1ODlBOyBjb2xvcjogIzBGNTg5QTsgfVxuXG4udGFicyBsaS50YWJzLXRpdGxlIGE6Zm9jdXMgeyBib3JkZXItcmFkaXVzOiAwOyBvdXRsaW5lOiBub25lOyBib3gtc2hhZG93OiAwIDAgMnB4ICMwRjU4OUE7IH1cblxuLnRhYnMtY29udGVudCB7IGJvcmRlcjogbm9uZTsgfVxuXG4udGFicy1jb250ZW50IC50YWJzLXBhbmVsIHsgcGFkZGluZzogNDBweCAwOyBtYXJnaW46IDA7IH1cblxuLyoqIFR5cG9ncmFwaHkgKi9cbkBmb250LWZhY2UgeyBmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzU1IFJvbWFuMTQ3NTUyMFwiOyBzcmM6IHVybChcIi4uL2ZvbnRzLzE0NzU1MjAvYjI5MGU3NzUtZTBmOS00OTgwLTkxNGItYTRjMzJhNWUzZTM2LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy8xNDc1NTIwLzRiOTc4ZjcyLWJiNDgtNDZjMy05MDlhLTJhOGNkMmY4ODE5Yy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7IGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfNjUgTWVkaXVtMTQ3NTUzMlwiOyBzcmM6IHVybChcIi4uL2ZvbnRzLzE0NzU1MzIvMTdiOTBlZjUtYjYzZi00NTdiLWE5ODEtNTAzYmI3YWZlM2MwLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy8xNDc1NTMyL2M5YWVlYWJkLWRkNjUtNDkxZC1iNGJlLTNlMGRiOWFlNDdhMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7IGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfODUgSGVhdnkxNDc1NTQ0XCI7IHNyYzogdXJsKFwiLi4vZm9udHMvMTQ3NTU0NC9kNTEzZTE1ZS04ZjM1LTQxMjktYWQwNS00ODE4MTVlNTI2MjUud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzLzE0NzU1NDQvNjFiZDM2MmUtNzE2Mi00NmJkLWI2N2UtMjhmMzY2YzRhZmJlLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV85NSBCbGFjazE0NzU1NTZcIjsgc3JjOiB1cmwoXCIuLi9mb250cy8xNDc1NTU2L2M3OGViN2FmLWExYzgtNDg5Mi05NzRiLTUyMzc5NjQ2ZmVmNC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi5mb250cy8xNDc1NTU2Lzc1YjM2YzU4LTJhMDItNDA1Ny1hNTM3LTA5YWYwODMyYWU0Ni53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuYm9keSB7IGZvbnQtc3ludGhlc2lzOiBub25lICFpbXBvcnRhbnQ7IGZvbnQtc2l6ZTogMXJlbTsgbGluZS1oZWlnaHQ6IDEuNDsgbGV0dGVyLXNwYWNpbmc6IDA7IGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLnN1YmhlYWRpbmcgeyBmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzg1IEhlYXZ5MTQ3NTU0NFwiOyBmb250LXNpemU6IDAuODc1cmVtOyBsaW5lLWhlaWdodDogMS40NTsgbGV0dGVyLXNwYWNpbmc6IDAuMjc1ZW07IG1hcmdpbi1ib3R0b206IDhweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6ICMwRjU4OUE7IH1cblxuLnN0YW5kYXJkLWxpbmsgeyBmb250LXNpemU6IDEuMTI1cmVtOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjRkRDNDAwOyB0cmFuc2l0aW9uOiBhbGwgMC4zczsgY29sb3I6ICMwNDMyNjM7IH1cblxuLnN0YW5kYXJkLWxpbms6aG92ZXIsIGEuc3RhbmRhcmQtbGluay5hY3RpdmUsIGJ1dHRvbi5zdGFuZGFyZC1saW5rLmFjdGl2ZSB7IGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjNDU5NUU2OyBjb2xvcjogIzA0MzI2MzsgfVxuXG5wLmxhcmdlIHsgZm9udC1zaXplOiAxLjI1cmVtOyBtYXJnaW4tYm90dG9tOiAxLjI1ZW07IH1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBzZWN0aW9uIC5mcmVlX3RleHQgYmxvY2txdW90ZSBwLCBoNiwgLnVwZGF0ZWQgLmRhdGUgeyBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbmh0bWwgeyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuKiBodG1sIGJvZHkgeyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuLyoqIFNpdGUgSGVhZGVyICAqL1xuLnNpdGUtaGVhZGVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyBtYXgtd2lkdGg6IDEwMCU7IHdpZHRoOiAxMDAlOyB9XG5cbi5zaXRlLWhlYWRlciA+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+IC5jYy1saW5rIHsgbWFyZ2luLWJvdHRvbTogMWVtOyB9XG5cbi5jYy1mbG9hdGluZyAuY2MtbWVzc2FnZSB7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tYm90dG9tOiAxZW07IH1cblxuLmNjLXdpbmRvdy5jYy1mbG9hdGluZyAuY2MtY29tcGxpYW5jZSB7IC13ZWJraXQtYm94LWZsZXg6IDE7IC1tcy1mbGV4OiAxIDAgYXV0bzsgZmxleDogMSAwIGF1dG87IH1cblxuLmNjLXdpbmRvdy5jYy1iYW5uZXIgeyAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOyAtbXMtZmxleC1hbGlnbjogY2VudGVyOyBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5jYy1iYW5uZXIuY2MtdG9wIHsgbGVmdDogMDsgcmlnaHQ6IDA7IHRvcDogMDsgfVxuXG4uY2MtYmFubmVyLmNjLWJvdHRvbSB7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IH1cblxuLmNjLWJhbm5lciAuY2MtbWVzc2FnZSB7IGRpc3BsYXk6IGJsb2NrOyAtd2Via2l0LWJveC1mbGV4OiAxOyAtbXMtZmxleDogMSAxIGF1dG87IGZsZXg6IDEgMSBhdXRvOyBtYXgtd2lkdGg6IDEwMCU7IG1hcmdpbi1yaWdodDogMWVtOyB9XG5cbi5jYy1jb21wbGlhbmNlIHsgZGlzcGxheTogLXdlYmtpdC1ib3g7IGRpc3BsYXk6IC1tcy1mbGV4Ym94OyBkaXNwbGF5OiBmbGV4OyAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOyAtbXMtZmxleC1hbGlnbjogY2VudGVyOyBhbGlnbi1pdGVtczogY2VudGVyOyAtbXMtZmxleC1saW5lLXBhY2s6IGp1c3RpZnk7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuLmNjLWZsb2F0aW5nIC5jYy1jb21wbGlhbmNlID4gLmNjLWJ0biB7IC13ZWJraXQtYm94LWZsZXg6IDE7IC1tcy1mbGV4OiAxOyBmbGV4OiAxOyB9XG5cbi5jYy1idG4gKyAuY2MtYnRuIHsgbWFyZ2luLWxlZnQ6IC41ZW07IH1cblxuQG1lZGlhIHByaW50IHsgLmNjLXJldm9rZSwgLmNjLXdpbmRvdyB7IGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkgeyAuY2MtYnRuIHsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQxNHB4KSBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzM2cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkgeyAuY2Mtd2luZG93LmNjLXRvcCB7IHRvcDogMDsgfVxuICAuY2Mtd2luZG93LmNjLWJvdHRvbSB7IGJvdHRvbTogMDsgfVxuICAuY2Mtd2luZG93LmNjLWJhbm5lciwgLmNjLXdpbmRvdy5jYy1mbG9hdGluZywgLmNjLXdpbmRvdy5jYy1sZWZ0LCAuY2Mtd2luZG93LmNjLXJpZ2h0IHsgbGVmdDogMDsgcmlnaHQ6IDA7IH1cbiAgLmNjLXdpbmRvdy5jYy1iYW5uZXIgeyAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOyAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDsgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLmNjLXdpbmRvdy5jYy1iYW5uZXIgLmNjLWNvbXBsaWFuY2UgeyAtd2Via2l0LWJveC1mbGV4OiAxOyAtbXMtZmxleDogMSAxIGF1dG87IGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5jYy13aW5kb3cuY2MtZmxvYXRpbmcgeyBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgLmNjLXdpbmRvdyAuY2MtbWVzc2FnZSB7IG1hcmdpbi1ib3R0b206IDFlbTsgfVxuICAuY2Mtd2luZG93LmNjLWJhbm5lciB7IC13ZWJraXQtYm94LWFsaWduOiB1bnNldDsgLW1zLWZsZXgtYWxpZ246IHVuc2V0OyBhbGlnbi1pdGVtczogdW5zZXQ7IH1cbiAgLmNjLXdpbmRvdy5jYy1iYW5uZXIgLmNjLW1lc3NhZ2UgeyBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4uY2MtZmxvYXRpbmcuY2MtdGhlbWUtY2xhc3NpYyB7IHBhZGRpbmc6IDEuMmVtOyBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuLmNjLWZsb2F0aW5nLmNjLXR5cGUtaW5mby5jYy10aGVtZS1jbGFzc2ljIC5jYy1jb21wbGlhbmNlIHsgdGV4dC1hbGlnbjogY2VudGVyOyBkaXNwbGF5OiBpbmxpbmU7IC13ZWJraXQtYm94LWZsZXg6IDA7IC1tcy1mbGV4OiBub25lOyBmbGV4OiBub25lOyB9XG5cbi5jYy10aGVtZS1jbGFzc2ljIC5jYy1idG4geyBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuLmNjLXRoZW1lLWNsYXNzaWMgLmNjLWJ0bjpsYXN0LWNoaWxkIHsgbWluLXdpZHRoOiAxNDBweDsgfVxuXG4uY2MtZmxvYXRpbmcuY2MtdHlwZS1pbmZvLmNjLXRoZW1lLWNsYXNzaWMgLmNjLWJ0biB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uY2MtdGhlbWUtZWRnZWxlc3MuY2Mtd2luZG93IHsgcGFkZGluZzogMDsgfVxuXG4uY2MtZmxvYXRpbmcuY2MtdGhlbWUtZWRnZWxlc3MgLmNjLW1lc3NhZ2UgeyBtYXJnaW46IDJlbTsgbWFyZ2luLWJvdHRvbTogMS41ZW07IH1cblxuLmNjLWJhbm5lci5jYy10aGVtZS1lZGdlbGVzcyAuY2MtYnRuIHsgbWFyZ2luOiAwOyBwYWRkaW5nOiAuOGVtIDEuOGVtOyBoZWlnaHQ6IDEwMCU7IH1cblxuLmNjLWJhbm5lci5jYy10aGVtZS1lZGdlbGVzcyAuY2MtbWVzc2FnZSB7IG1hcmdpbi1sZWZ0OiAxZW07IH1cblxuLmNjLWZsb2F0aW5nLmNjLXRoZW1lLWVkZ2VsZXNzIC5jYy1idG4gKyAuY2MtYnRuIHsgbWFyZ2luLWxlZnQ6IDA7IH1cbiIsIi8qIVxuICogIEZvbnQgQXdlc29tZSA0LjcuMCBieSBAZGF2ZWdhbmR5IC0gaHR0cDovL2ZvbnRhd2Vzb21lLmlvIC0gQGZvbnRhd2Vzb21lXG4gKiAgTGljZW5zZSAtIGh0dHA6Ly9mb250YXdlc29tZS5pby9saWNlbnNlIChGb250OiBTSUwgT0ZMIDEuMSwgQ1NTOiBNSVQgTGljZW5zZSlcbiAqL1xuXG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwicGF0aFwiO1xuQGltcG9ydCBcImNvcmVcIjtcbkBpbXBvcnQgXCJsYXJnZXJcIjtcbkBpbXBvcnQgXCJmaXhlZC13aWR0aFwiO1xuQGltcG9ydCBcImxpc3RcIjtcbkBpbXBvcnQgXCJib3JkZXJlZC1wdWxsZWRcIjtcbkBpbXBvcnQgXCJhbmltYXRlZFwiO1xuQGltcG9ydCBcInJvdGF0ZWQtZmxpcHBlZFwiO1xuQGltcG9ydCBcInN0YWNrZWRcIjtcbkBpbXBvcnQgXCJpY29uc1wiO1xuQGltcG9ydCBcInNjcmVlbi1yZWFkZXJcIjtcbiIsIi8qIEZPTlQgUEFUSFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LmVvdD92PSN7JGZhLXZlcnNpb259Jyk7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQuZW90PyNpZWZpeCZ2PSN7JGZhLXZlcnNpb259JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgIHVybCgnI3skZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LndvZmYyP3Y9I3skZmEtdmVyc2lvbn0nKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQud29mZj92PSN7JGZhLXZlcnNpb259JykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQudHRmP3Y9I3skZmEtdmVyc2lvbn0nKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQuc3ZnP3Y9I3skZmEtdmVyc2lvbn0jZm9udGF3ZXNvbWVyZWd1bGFyJykgZm9ybWF0KCdzdmcnKTtcbi8vICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9Gb250QXdlc29tZS5vdGYnKSBmb3JtYXQoJ29wZW50eXBlJyk7IC8vIHVzZWQgd2hlbiBkZXZlbG9waW5nIGZvbnRzXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbiIsIi8vIEJhc2UgQ2xhc3MgRGVmaW5pdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsICN7JGZhLWZvbnQtc2l6ZS1iYXNlfS8jeyRmYS1saW5lLWhlaWdodC1iYXNlfSBGb250QXdlc29tZTsgLy8gc2hvcnRlbmluZyBmb250IGRlY2xhcmF0aW9uXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgLy8gY2FuJ3QgaGF2ZSBmb250LXNpemUgaW5oZXJpdCBvbiBsaW5lIGFib3ZlLCBzbyBuZWVkIHRvIG92ZXJyaWRlXG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvOyAvLyBvcHRpbWl6ZWxlZ2liaWxpdHkgdGhyb3dzIHRoaW5ncyBvZmYgIzEwOTRcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbn1cbiIsIi8vIEljb24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLyogbWFrZXMgdGhlIGZvbnQgMzMlIGxhcmdlciByZWxhdGl2ZSB0byB0aGUgaWNvbiBjb250YWluZXIgKi9cbi4jeyRmYS1jc3MtcHJlZml4fS1sZyB7XG4gIGZvbnQtc2l6ZTogKDRlbSAvIDMpO1xuICBsaW5lLWhlaWdodDogKDNlbSAvIDQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTE1JTtcbn1cbi4jeyRmYS1jc3MtcHJlZml4fS0yeCB7IGZvbnQtc2l6ZTogMmVtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tM3ggeyBmb250LXNpemU6IDNlbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LTR4IHsgZm9udC1zaXplOiA0ZW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS01eCB7IGZvbnQtc2l6ZTogNWVtOyB9XG4iLCIvLyBGaXhlZCBXaWR0aCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZ3IHtcbiAgd2lkdGg6ICgxOGVtIC8gMTQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCIvLyBMaXN0IEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS11bCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWxlZnQ6ICRmYS1saS13aWR0aDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICA+IGxpIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG59XG4uI3skZmEtY3NzLXByZWZpeH0tbGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0kZmEtbGktd2lkdGg7XG4gIHdpZHRoOiAkZmEtbGktd2lkdGg7XG4gIHRvcDogKDJlbSAvIDE0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAmLiN7JGZhLWNzcy1wcmVmaXh9LWxnIHtcbiAgICBsZWZ0OiAtJGZhLWxpLXdpZHRoICsgKDRlbSAvIDE0KTtcbiAgfVxufVxuIiwiLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kZmEtZm9udC1wYXRoOiAgICAgICAgXCIuLi9mb250c1wiICFkZWZhdWx0O1xuJGZhLWZvbnQtc2l6ZS1iYXNlOiAgIDE0cHggIWRlZmF1bHQ7XG4kZmEtbGluZS1oZWlnaHQtYmFzZTogMSAhZGVmYXVsdDtcbi8vJGZhLWZvbnQtcGF0aDogICAgICAgIFwiLy9uZXRkbmEuYm9vdHN0cmFwY2RuLmNvbS9mb250LWF3ZXNvbWUvNC43LjAvZm9udHNcIiAhZGVmYXVsdDsgLy8gZm9yIHJlZmVyZW5jaW5nIEJvb3RzdHJhcCBDRE4gZm9udCBmaWxlcyBkaXJlY3RseVxuJGZhLWNzcy1wcmVmaXg6ICAgICAgIGZhICFkZWZhdWx0O1xuJGZhLXZlcnNpb246ICAgICAgICAgIFwiNC43LjBcIiAhZGVmYXVsdDtcbiRmYS1ib3JkZXItY29sb3I6ICAgICAjZWVlICFkZWZhdWx0O1xuJGZhLWludmVyc2U6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kZmEtbGktd2lkdGg6ICAgICAgICAgKDMwZW0gLyAxNCkgIWRlZmF1bHQ7XG5cbiRmYS12YXItNTAwcHg6IFwiXFxmMjZlXCI7XG4kZmEtdmFyLWFkZHJlc3MtYm9vazogXCJcXGYyYjlcIjtcbiRmYS12YXItYWRkcmVzcy1ib29rLW86IFwiXFxmMmJhXCI7XG4kZmEtdmFyLWFkZHJlc3MtY2FyZDogXCJcXGYyYmJcIjtcbiRmYS12YXItYWRkcmVzcy1jYXJkLW86IFwiXFxmMmJjXCI7XG4kZmEtdmFyLWFkanVzdDogXCJcXGYwNDJcIjtcbiRmYS12YXItYWRuOiBcIlxcZjE3MFwiO1xuJGZhLXZhci1hbGlnbi1jZW50ZXI6IFwiXFxmMDM3XCI7XG4kZmEtdmFyLWFsaWduLWp1c3RpZnk6IFwiXFxmMDM5XCI7XG4kZmEtdmFyLWFsaWduLWxlZnQ6IFwiXFxmMDM2XCI7XG4kZmEtdmFyLWFsaWduLXJpZ2h0OiBcIlxcZjAzOFwiO1xuJGZhLXZhci1hbWF6b246IFwiXFxmMjcwXCI7XG4kZmEtdmFyLWFtYnVsYW5jZTogXCJcXGYwZjlcIjtcbiRmYS12YXItYW1lcmljYW4tc2lnbi1sYW5ndWFnZS1pbnRlcnByZXRpbmc6IFwiXFxmMmEzXCI7XG4kZmEtdmFyLWFuY2hvcjogXCJcXGYxM2RcIjtcbiRmYS12YXItYW5kcm9pZDogXCJcXGYxN2JcIjtcbiRmYS12YXItYW5nZWxsaXN0OiBcIlxcZjIwOVwiO1xuJGZhLXZhci1hbmdsZS1kb3VibGUtZG93bjogXCJcXGYxMDNcIjtcbiRmYS12YXItYW5nbGUtZG91YmxlLWxlZnQ6IFwiXFxmMTAwXCI7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS1yaWdodDogXCJcXGYxMDFcIjtcbiRmYS12YXItYW5nbGUtZG91YmxlLXVwOiBcIlxcZjEwMlwiO1xuJGZhLXZhci1hbmdsZS1kb3duOiBcIlxcZjEwN1wiO1xuJGZhLXZhci1hbmdsZS1sZWZ0OiBcIlxcZjEwNFwiO1xuJGZhLXZhci1hbmdsZS1yaWdodDogXCJcXGYxMDVcIjtcbiRmYS12YXItYW5nbGUtdXA6IFwiXFxmMTA2XCI7XG4kZmEtdmFyLWFwcGxlOiBcIlxcZjE3OVwiO1xuJGZhLXZhci1hcmNoaXZlOiBcIlxcZjE4N1wiO1xuJGZhLXZhci1hcmVhLWNoYXJ0OiBcIlxcZjFmZVwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtZG93bjogXCJcXGYwYWJcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLWxlZnQ6IFwiXFxmMGE4XCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLWRvd246IFwiXFxmMDFhXCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLWxlZnQ6IFwiXFxmMTkwXCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLXJpZ2h0OiBcIlxcZjE4ZVwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtby11cDogXCJcXGYwMWJcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLXJpZ2h0OiBcIlxcZjBhOVwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtdXA6IFwiXFxmMGFhXCI7XG4kZmEtdmFyLWFycm93LWRvd246IFwiXFxmMDYzXCI7XG4kZmEtdmFyLWFycm93LWxlZnQ6IFwiXFxmMDYwXCI7XG4kZmEtdmFyLWFycm93LXJpZ2h0OiBcIlxcZjA2MVwiO1xuJGZhLXZhci1hcnJvdy11cDogXCJcXGYwNjJcIjtcbiRmYS12YXItYXJyb3dzOiBcIlxcZjA0N1wiO1xuJGZhLXZhci1hcnJvd3MtYWx0OiBcIlxcZjBiMlwiO1xuJGZhLXZhci1hcnJvd3MtaDogXCJcXGYwN2VcIjtcbiRmYS12YXItYXJyb3dzLXY6IFwiXFxmMDdkXCI7XG4kZmEtdmFyLWFzbC1pbnRlcnByZXRpbmc6IFwiXFxmMmEzXCI7XG4kZmEtdmFyLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczogXCJcXGYyYTJcIjtcbiRmYS12YXItYXN0ZXJpc2s6IFwiXFxmMDY5XCI7XG4kZmEtdmFyLWF0OiBcIlxcZjFmYVwiO1xuJGZhLXZhci1hdWRpby1kZXNjcmlwdGlvbjogXCJcXGYyOWVcIjtcbiRmYS12YXItYXV0b21vYmlsZTogXCJcXGYxYjlcIjtcbiRmYS12YXItYmFja3dhcmQ6IFwiXFxmMDRhXCI7XG4kZmEtdmFyLWJhbGFuY2Utc2NhbGU6IFwiXFxmMjRlXCI7XG4kZmEtdmFyLWJhbjogXCJcXGYwNWVcIjtcbiRmYS12YXItYmFuZGNhbXA6IFwiXFxmMmQ1XCI7XG4kZmEtdmFyLWJhbms6IFwiXFxmMTljXCI7XG4kZmEtdmFyLWJhci1jaGFydDogXCJcXGYwODBcIjtcbiRmYS12YXItYmFyLWNoYXJ0LW86IFwiXFxmMDgwXCI7XG4kZmEtdmFyLWJhcmNvZGU6IFwiXFxmMDJhXCI7XG4kZmEtdmFyLWJhcnM6IFwiXFxmMGM5XCI7XG4kZmEtdmFyLWJhdGg6IFwiXFxmMmNkXCI7XG4kZmEtdmFyLWJhdGh0dWI6IFwiXFxmMmNkXCI7XG4kZmEtdmFyLWJhdHRlcnk6IFwiXFxmMjQwXCI7XG4kZmEtdmFyLWJhdHRlcnktMDogXCJcXGYyNDRcIjtcbiRmYS12YXItYmF0dGVyeS0xOiBcIlxcZjI0M1wiO1xuJGZhLXZhci1iYXR0ZXJ5LTI6IFwiXFxmMjQyXCI7XG4kZmEtdmFyLWJhdHRlcnktMzogXCJcXGYyNDFcIjtcbiRmYS12YXItYmF0dGVyeS00OiBcIlxcZjI0MFwiO1xuJGZhLXZhci1iYXR0ZXJ5LWVtcHR5OiBcIlxcZjI0NFwiO1xuJGZhLXZhci1iYXR0ZXJ5LWZ1bGw6IFwiXFxmMjQwXCI7XG4kZmEtdmFyLWJhdHRlcnktaGFsZjogXCJcXGYyNDJcIjtcbiRmYS12YXItYmF0dGVyeS1xdWFydGVyOiBcIlxcZjI0M1wiO1xuJGZhLXZhci1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOiBcIlxcZjI0MVwiO1xuJGZhLXZhci1iZWQ6IFwiXFxmMjM2XCI7XG4kZmEtdmFyLWJlZXI6IFwiXFxmMGZjXCI7XG4kZmEtdmFyLWJlaGFuY2U6IFwiXFxmMWI0XCI7XG4kZmEtdmFyLWJlaGFuY2Utc3F1YXJlOiBcIlxcZjFiNVwiO1xuJGZhLXZhci1iZWxsOiBcIlxcZjBmM1wiO1xuJGZhLXZhci1iZWxsLW86IFwiXFxmMGEyXCI7XG4kZmEtdmFyLWJlbGwtc2xhc2g6IFwiXFxmMWY2XCI7XG4kZmEtdmFyLWJlbGwtc2xhc2gtbzogXCJcXGYxZjdcIjtcbiRmYS12YXItYmljeWNsZTogXCJcXGYyMDZcIjtcbiRmYS12YXItYmlub2N1bGFyczogXCJcXGYxZTVcIjtcbiRmYS12YXItYmlydGhkYXktY2FrZTogXCJcXGYxZmRcIjtcbiRmYS12YXItYml0YnVja2V0OiBcIlxcZjE3MVwiO1xuJGZhLXZhci1iaXRidWNrZXQtc3F1YXJlOiBcIlxcZjE3MlwiO1xuJGZhLXZhci1iaXRjb2luOiBcIlxcZjE1YVwiO1xuJGZhLXZhci1ibGFjay10aWU6IFwiXFxmMjdlXCI7XG4kZmEtdmFyLWJsaW5kOiBcIlxcZjI5ZFwiO1xuJGZhLXZhci1ibHVldG9vdGg6IFwiXFxmMjkzXCI7XG4kZmEtdmFyLWJsdWV0b290aC1iOiBcIlxcZjI5NFwiO1xuJGZhLXZhci1ib2xkOiBcIlxcZjAzMlwiO1xuJGZhLXZhci1ib2x0OiBcIlxcZjBlN1wiO1xuJGZhLXZhci1ib21iOiBcIlxcZjFlMlwiO1xuJGZhLXZhci1ib29rOiBcIlxcZjAyZFwiO1xuJGZhLXZhci1ib29rbWFyazogXCJcXGYwMmVcIjtcbiRmYS12YXItYm9va21hcmstbzogXCJcXGYwOTdcIjtcbiRmYS12YXItYnJhaWxsZTogXCJcXGYyYTFcIjtcbiRmYS12YXItYnJpZWZjYXNlOiBcIlxcZjBiMVwiO1xuJGZhLXZhci1idGM6IFwiXFxmMTVhXCI7XG4kZmEtdmFyLWJ1ZzogXCJcXGYxODhcIjtcbiRmYS12YXItYnVpbGRpbmc6IFwiXFxmMWFkXCI7XG4kZmEtdmFyLWJ1aWxkaW5nLW86IFwiXFxmMGY3XCI7XG4kZmEtdmFyLWJ1bGxob3JuOiBcIlxcZjBhMVwiO1xuJGZhLXZhci1idWxsc2V5ZTogXCJcXGYxNDBcIjtcbiRmYS12YXItYnVzOiBcIlxcZjIwN1wiO1xuJGZhLXZhci1idXlzZWxsYWRzOiBcIlxcZjIwZFwiO1xuJGZhLXZhci1jYWI6IFwiXFxmMWJhXCI7XG4kZmEtdmFyLWNhbGN1bGF0b3I6IFwiXFxmMWVjXCI7XG4kZmEtdmFyLWNhbGVuZGFyOiBcIlxcZjA3M1wiO1xuJGZhLXZhci1jYWxlbmRhci1jaGVjay1vOiBcIlxcZjI3NFwiO1xuJGZhLXZhci1jYWxlbmRhci1taW51cy1vOiBcIlxcZjI3MlwiO1xuJGZhLXZhci1jYWxlbmRhci1vOiBcIlxcZjEzM1wiO1xuJGZhLXZhci1jYWxlbmRhci1wbHVzLW86IFwiXFxmMjcxXCI7XG4kZmEtdmFyLWNhbGVuZGFyLXRpbWVzLW86IFwiXFxmMjczXCI7XG4kZmEtdmFyLWNhbWVyYTogXCJcXGYwMzBcIjtcbiRmYS12YXItY2FtZXJhLXJldHJvOiBcIlxcZjA4M1wiO1xuJGZhLXZhci1jYXI6IFwiXFxmMWI5XCI7XG4kZmEtdmFyLWNhcmV0LWRvd246IFwiXFxmMGQ3XCI7XG4kZmEtdmFyLWNhcmV0LWxlZnQ6IFwiXFxmMGQ5XCI7XG4kZmEtdmFyLWNhcmV0LXJpZ2h0OiBcIlxcZjBkYVwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby1kb3duOiBcIlxcZjE1MFwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby1sZWZ0OiBcIlxcZjE5MVwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby1yaWdodDogXCJcXGYxNTJcIjtcbiRmYS12YXItY2FyZXQtc3F1YXJlLW8tdXA6IFwiXFxmMTUxXCI7XG4kZmEtdmFyLWNhcmV0LXVwOiBcIlxcZjBkOFwiO1xuJGZhLXZhci1jYXJ0LWFycm93LWRvd246IFwiXFxmMjE4XCI7XG4kZmEtdmFyLWNhcnQtcGx1czogXCJcXGYyMTdcIjtcbiRmYS12YXItY2M6IFwiXFxmMjBhXCI7XG4kZmEtdmFyLWNjLWFtZXg6IFwiXFxmMWYzXCI7XG4kZmEtdmFyLWNjLWRpbmVycy1jbHViOiBcIlxcZjI0Y1wiO1xuJGZhLXZhci1jYy1kaXNjb3ZlcjogXCJcXGYxZjJcIjtcbiRmYS12YXItY2MtamNiOiBcIlxcZjI0YlwiO1xuJGZhLXZhci1jYy1tYXN0ZXJjYXJkOiBcIlxcZjFmMVwiO1xuJGZhLXZhci1jYy1wYXlwYWw6IFwiXFxmMWY0XCI7XG4kZmEtdmFyLWNjLXN0cmlwZTogXCJcXGYxZjVcIjtcbiRmYS12YXItY2MtdmlzYTogXCJcXGYxZjBcIjtcbiRmYS12YXItY2VydGlmaWNhdGU6IFwiXFxmMGEzXCI7XG4kZmEtdmFyLWNoYWluOiBcIlxcZjBjMVwiO1xuJGZhLXZhci1jaGFpbi1icm9rZW46IFwiXFxmMTI3XCI7XG4kZmEtdmFyLWNoZWNrOiBcIlxcZjAwY1wiO1xuJGZhLXZhci1jaGVjay1jaXJjbGU6IFwiXFxmMDU4XCI7XG4kZmEtdmFyLWNoZWNrLWNpcmNsZS1vOiBcIlxcZjA1ZFwiO1xuJGZhLXZhci1jaGVjay1zcXVhcmU6IFwiXFxmMTRhXCI7XG4kZmEtdmFyLWNoZWNrLXNxdWFyZS1vOiBcIlxcZjA0NlwiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1kb3duOiBcIlxcZjEzYVwiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1sZWZ0OiBcIlxcZjEzN1wiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1yaWdodDogXCJcXGYxMzhcIjtcbiRmYS12YXItY2hldnJvbi1jaXJjbGUtdXA6IFwiXFxmMTM5XCI7XG4kZmEtdmFyLWNoZXZyb24tZG93bjogXCJcXGYwNzhcIjtcbiRmYS12YXItY2hldnJvbi1sZWZ0OiBcIlxcZjA1M1wiO1xuJGZhLXZhci1jaGV2cm9uLXJpZ2h0OiBcIlxcZjA1NFwiO1xuJGZhLXZhci1jaGV2cm9uLXVwOiBcIlxcZjA3N1wiO1xuJGZhLXZhci1jaGlsZDogXCJcXGYxYWVcIjtcbiRmYS12YXItY2hyb21lOiBcIlxcZjI2OFwiO1xuJGZhLXZhci1jaXJjbGU6IFwiXFxmMTExXCI7XG4kZmEtdmFyLWNpcmNsZS1vOiBcIlxcZjEwY1wiO1xuJGZhLXZhci1jaXJjbGUtby1ub3RjaDogXCJcXGYxY2VcIjtcbiRmYS12YXItY2lyY2xlLXRoaW46IFwiXFxmMWRiXCI7XG4kZmEtdmFyLWNsaXBib2FyZDogXCJcXGYwZWFcIjtcbiRmYS12YXItY2xvY2stbzogXCJcXGYwMTdcIjtcbiRmYS12YXItY2xvbmU6IFwiXFxmMjRkXCI7XG4kZmEtdmFyLWNsb3NlOiBcIlxcZjAwZFwiO1xuJGZhLXZhci1jbG91ZDogXCJcXGYwYzJcIjtcbiRmYS12YXItY2xvdWQtZG93bmxvYWQ6IFwiXFxmMGVkXCI7XG4kZmEtdmFyLWNsb3VkLXVwbG9hZDogXCJcXGYwZWVcIjtcbiRmYS12YXItY255OiBcIlxcZjE1N1wiO1xuJGZhLXZhci1jb2RlOiBcIlxcZjEyMVwiO1xuJGZhLXZhci1jb2RlLWZvcms6IFwiXFxmMTI2XCI7XG4kZmEtdmFyLWNvZGVwZW46IFwiXFxmMWNiXCI7XG4kZmEtdmFyLWNvZGllcGllOiBcIlxcZjI4NFwiO1xuJGZhLXZhci1jb2ZmZWU6IFwiXFxmMGY0XCI7XG4kZmEtdmFyLWNvZzogXCJcXGYwMTNcIjtcbiRmYS12YXItY29nczogXCJcXGYwODVcIjtcbiRmYS12YXItY29sdW1uczogXCJcXGYwZGJcIjtcbiRmYS12YXItY29tbWVudDogXCJcXGYwNzVcIjtcbiRmYS12YXItY29tbWVudC1vOiBcIlxcZjBlNVwiO1xuJGZhLXZhci1jb21tZW50aW5nOiBcIlxcZjI3YVwiO1xuJGZhLXZhci1jb21tZW50aW5nLW86IFwiXFxmMjdiXCI7XG4kZmEtdmFyLWNvbW1lbnRzOiBcIlxcZjA4NlwiO1xuJGZhLXZhci1jb21tZW50cy1vOiBcIlxcZjBlNlwiO1xuJGZhLXZhci1jb21wYXNzOiBcIlxcZjE0ZVwiO1xuJGZhLXZhci1jb21wcmVzczogXCJcXGYwNjZcIjtcbiRmYS12YXItY29ubmVjdGRldmVsb3A6IFwiXFxmMjBlXCI7XG4kZmEtdmFyLWNvbnRhbzogXCJcXGYyNmRcIjtcbiRmYS12YXItY29weTogXCJcXGYwYzVcIjtcbiRmYS12YXItY29weXJpZ2h0OiBcIlxcZjFmOVwiO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zOiBcIlxcZjI1ZVwiO1xuJGZhLXZhci1jcmVkaXQtY2FyZDogXCJcXGYwOWRcIjtcbiRmYS12YXItY3JlZGl0LWNhcmQtYWx0OiBcIlxcZjI4M1wiO1xuJGZhLXZhci1jcm9wOiBcIlxcZjEyNVwiO1xuJGZhLXZhci1jcm9zc2hhaXJzOiBcIlxcZjA1YlwiO1xuJGZhLXZhci1jc3MzOiBcIlxcZjEzY1wiO1xuJGZhLXZhci1jdWJlOiBcIlxcZjFiMlwiO1xuJGZhLXZhci1jdWJlczogXCJcXGYxYjNcIjtcbiRmYS12YXItY3V0OiBcIlxcZjBjNFwiO1xuJGZhLXZhci1jdXRsZXJ5OiBcIlxcZjBmNVwiO1xuJGZhLXZhci1kYXNoYm9hcmQ6IFwiXFxmMGU0XCI7XG4kZmEtdmFyLWRhc2hjdWJlOiBcIlxcZjIxMFwiO1xuJGZhLXZhci1kYXRhYmFzZTogXCJcXGYxYzBcIjtcbiRmYS12YXItZGVhZjogXCJcXGYyYTRcIjtcbiRmYS12YXItZGVhZm5lc3M6IFwiXFxmMmE0XCI7XG4kZmEtdmFyLWRlZGVudDogXCJcXGYwM2JcIjtcbiRmYS12YXItZGVsaWNpb3VzOiBcIlxcZjFhNVwiO1xuJGZhLXZhci1kZXNrdG9wOiBcIlxcZjEwOFwiO1xuJGZhLXZhci1kZXZpYW50YXJ0OiBcIlxcZjFiZFwiO1xuJGZhLXZhci1kaWFtb25kOiBcIlxcZjIxOVwiO1xuJGZhLXZhci1kaWdnOiBcIlxcZjFhNlwiO1xuJGZhLXZhci1kb2xsYXI6IFwiXFxmMTU1XCI7XG4kZmEtdmFyLWRvdC1jaXJjbGUtbzogXCJcXGYxOTJcIjtcbiRmYS12YXItZG93bmxvYWQ6IFwiXFxmMDE5XCI7XG4kZmEtdmFyLWRyaWJiYmxlOiBcIlxcZjE3ZFwiO1xuJGZhLXZhci1kcml2ZXJzLWxpY2Vuc2U6IFwiXFxmMmMyXCI7XG4kZmEtdmFyLWRyaXZlcnMtbGljZW5zZS1vOiBcIlxcZjJjM1wiO1xuJGZhLXZhci1kcm9wYm94OiBcIlxcZjE2YlwiO1xuJGZhLXZhci1kcnVwYWw6IFwiXFxmMWE5XCI7XG4kZmEtdmFyLWVkZ2U6IFwiXFxmMjgyXCI7XG4kZmEtdmFyLWVkaXQ6IFwiXFxmMDQ0XCI7XG4kZmEtdmFyLWVlcmNhc3Q6IFwiXFxmMmRhXCI7XG4kZmEtdmFyLWVqZWN0OiBcIlxcZjA1MlwiO1xuJGZhLXZhci1lbGxpcHNpcy1oOiBcIlxcZjE0MVwiO1xuJGZhLXZhci1lbGxpcHNpcy12OiBcIlxcZjE0MlwiO1xuJGZhLXZhci1lbXBpcmU6IFwiXFxmMWQxXCI7XG4kZmEtdmFyLWVudmVsb3BlOiBcIlxcZjBlMFwiO1xuJGZhLXZhci1lbnZlbG9wZS1vOiBcIlxcZjAwM1wiO1xuJGZhLXZhci1lbnZlbG9wZS1vcGVuOiBcIlxcZjJiNlwiO1xuJGZhLXZhci1lbnZlbG9wZS1vcGVuLW86IFwiXFxmMmI3XCI7XG4kZmEtdmFyLWVudmVsb3BlLXNxdWFyZTogXCJcXGYxOTlcIjtcbiRmYS12YXItZW52aXJhOiBcIlxcZjI5OVwiO1xuJGZhLXZhci1lcmFzZXI6IFwiXFxmMTJkXCI7XG4kZmEtdmFyLWV0c3k6IFwiXFxmMmQ3XCI7XG4kZmEtdmFyLWV1cjogXCJcXGYxNTNcIjtcbiRmYS12YXItZXVybzogXCJcXGYxNTNcIjtcbiRmYS12YXItZXhjaGFuZ2U6IFwiXFxmMGVjXCI7XG4kZmEtdmFyLWV4Y2xhbWF0aW9uOiBcIlxcZjEyYVwiO1xuJGZhLXZhci1leGNsYW1hdGlvbi1jaXJjbGU6IFwiXFxmMDZhXCI7XG4kZmEtdmFyLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOiBcIlxcZjA3MVwiO1xuJGZhLXZhci1leHBhbmQ6IFwiXFxmMDY1XCI7XG4kZmEtdmFyLWV4cGVkaXRlZHNzbDogXCJcXGYyM2VcIjtcbiRmYS12YXItZXh0ZXJuYWwtbGluazogXCJcXGYwOGVcIjtcbiRmYS12YXItZXh0ZXJuYWwtbGluay1zcXVhcmU6IFwiXFxmMTRjXCI7XG4kZmEtdmFyLWV5ZTogXCJcXGYwNmVcIjtcbiRmYS12YXItZXllLXNsYXNoOiBcIlxcZjA3MFwiO1xuJGZhLXZhci1leWVkcm9wcGVyOiBcIlxcZjFmYlwiO1xuJGZhLXZhci1mYTogXCJcXGYyYjRcIjtcbiRmYS12YXItZmFjZWJvb2s6IFwiXFxmMDlhXCI7XG4kZmEtdmFyLWZhY2Vib29rLWY6IFwiXFxmMDlhXCI7XG4kZmEtdmFyLWZhY2Vib29rLW9mZmljaWFsOiBcIlxcZjIzMFwiO1xuJGZhLXZhci1mYWNlYm9vay1zcXVhcmU6IFwiXFxmMDgyXCI7XG4kZmEtdmFyLWZhc3QtYmFja3dhcmQ6IFwiXFxmMDQ5XCI7XG4kZmEtdmFyLWZhc3QtZm9yd2FyZDogXCJcXGYwNTBcIjtcbiRmYS12YXItZmF4OiBcIlxcZjFhY1wiO1xuJGZhLXZhci1mZWVkOiBcIlxcZjA5ZVwiO1xuJGZhLXZhci1mZW1hbGU6IFwiXFxmMTgyXCI7XG4kZmEtdmFyLWZpZ2h0ZXItamV0OiBcIlxcZjBmYlwiO1xuJGZhLXZhci1maWxlOiBcIlxcZjE1YlwiO1xuJGZhLXZhci1maWxlLWFyY2hpdmUtbzogXCJcXGYxYzZcIjtcbiRmYS12YXItZmlsZS1hdWRpby1vOiBcIlxcZjFjN1wiO1xuJGZhLXZhci1maWxlLWNvZGUtbzogXCJcXGYxYzlcIjtcbiRmYS12YXItZmlsZS1leGNlbC1vOiBcIlxcZjFjM1wiO1xuJGZhLXZhci1maWxlLWltYWdlLW86IFwiXFxmMWM1XCI7XG4kZmEtdmFyLWZpbGUtbW92aWUtbzogXCJcXGYxYzhcIjtcbiRmYS12YXItZmlsZS1vOiBcIlxcZjAxNlwiO1xuJGZhLXZhci1maWxlLXBkZi1vOiBcIlxcZjFjMVwiO1xuJGZhLXZhci1maWxlLXBob3RvLW86IFwiXFxmMWM1XCI7XG4kZmEtdmFyLWZpbGUtcGljdHVyZS1vOiBcIlxcZjFjNVwiO1xuJGZhLXZhci1maWxlLXBvd2VycG9pbnQtbzogXCJcXGYxYzRcIjtcbiRmYS12YXItZmlsZS1zb3VuZC1vOiBcIlxcZjFjN1wiO1xuJGZhLXZhci1maWxlLXRleHQ6IFwiXFxmMTVjXCI7XG4kZmEtdmFyLWZpbGUtdGV4dC1vOiBcIlxcZjBmNlwiO1xuJGZhLXZhci1maWxlLXZpZGVvLW86IFwiXFxmMWM4XCI7XG4kZmEtdmFyLWZpbGUtd29yZC1vOiBcIlxcZjFjMlwiO1xuJGZhLXZhci1maWxlLXppcC1vOiBcIlxcZjFjNlwiO1xuJGZhLXZhci1maWxlcy1vOiBcIlxcZjBjNVwiO1xuJGZhLXZhci1maWxtOiBcIlxcZjAwOFwiO1xuJGZhLXZhci1maWx0ZXI6IFwiXFxmMGIwXCI7XG4kZmEtdmFyLWZpcmU6IFwiXFxmMDZkXCI7XG4kZmEtdmFyLWZpcmUtZXh0aW5ndWlzaGVyOiBcIlxcZjEzNFwiO1xuJGZhLXZhci1maXJlZm94OiBcIlxcZjI2OVwiO1xuJGZhLXZhci1maXJzdC1vcmRlcjogXCJcXGYyYjBcIjtcbiRmYS12YXItZmxhZzogXCJcXGYwMjRcIjtcbiRmYS12YXItZmxhZy1jaGVja2VyZWQ6IFwiXFxmMTFlXCI7XG4kZmEtdmFyLWZsYWctbzogXCJcXGYxMWRcIjtcbiRmYS12YXItZmxhc2g6IFwiXFxmMGU3XCI7XG4kZmEtdmFyLWZsYXNrOiBcIlxcZjBjM1wiO1xuJGZhLXZhci1mbGlja3I6IFwiXFxmMTZlXCI7XG4kZmEtdmFyLWZsb3BweS1vOiBcIlxcZjBjN1wiO1xuJGZhLXZhci1mb2xkZXI6IFwiXFxmMDdiXCI7XG4kZmEtdmFyLWZvbGRlci1vOiBcIlxcZjExNFwiO1xuJGZhLXZhci1mb2xkZXItb3BlbjogXCJcXGYwN2NcIjtcbiRmYS12YXItZm9sZGVyLW9wZW4tbzogXCJcXGYxMTVcIjtcbiRmYS12YXItZm9udDogXCJcXGYwMzFcIjtcbiRmYS12YXItZm9udC1hd2Vzb21lOiBcIlxcZjJiNFwiO1xuJGZhLXZhci1mb250aWNvbnM6IFwiXFxmMjgwXCI7XG4kZmEtdmFyLWZvcnQtYXdlc29tZTogXCJcXGYyODZcIjtcbiRmYS12YXItZm9ydW1iZWU6IFwiXFxmMjExXCI7XG4kZmEtdmFyLWZvcndhcmQ6IFwiXFxmMDRlXCI7XG4kZmEtdmFyLWZvdXJzcXVhcmU6IFwiXFxmMTgwXCI7XG4kZmEtdmFyLWZyZWUtY29kZS1jYW1wOiBcIlxcZjJjNVwiO1xuJGZhLXZhci1mcm93bi1vOiBcIlxcZjExOVwiO1xuJGZhLXZhci1mdXRib2wtbzogXCJcXGYxZTNcIjtcbiRmYS12YXItZ2FtZXBhZDogXCJcXGYxMWJcIjtcbiRmYS12YXItZ2F2ZWw6IFwiXFxmMGUzXCI7XG4kZmEtdmFyLWdicDogXCJcXGYxNTRcIjtcbiRmYS12YXItZ2U6IFwiXFxmMWQxXCI7XG4kZmEtdmFyLWdlYXI6IFwiXFxmMDEzXCI7XG4kZmEtdmFyLWdlYXJzOiBcIlxcZjA4NVwiO1xuJGZhLXZhci1nZW5kZXJsZXNzOiBcIlxcZjIyZFwiO1xuJGZhLXZhci1nZXQtcG9ja2V0OiBcIlxcZjI2NVwiO1xuJGZhLXZhci1nZzogXCJcXGYyNjBcIjtcbiRmYS12YXItZ2ctY2lyY2xlOiBcIlxcZjI2MVwiO1xuJGZhLXZhci1naWZ0OiBcIlxcZjA2YlwiO1xuJGZhLXZhci1naXQ6IFwiXFxmMWQzXCI7XG4kZmEtdmFyLWdpdC1zcXVhcmU6IFwiXFxmMWQyXCI7XG4kZmEtdmFyLWdpdGh1YjogXCJcXGYwOWJcIjtcbiRmYS12YXItZ2l0aHViLWFsdDogXCJcXGYxMTNcIjtcbiRmYS12YXItZ2l0aHViLXNxdWFyZTogXCJcXGYwOTJcIjtcbiRmYS12YXItZ2l0bGFiOiBcIlxcZjI5NlwiO1xuJGZhLXZhci1naXR0aXA6IFwiXFxmMTg0XCI7XG4kZmEtdmFyLWdsYXNzOiBcIlxcZjAwMFwiO1xuJGZhLXZhci1nbGlkZTogXCJcXGYyYTVcIjtcbiRmYS12YXItZ2xpZGUtZzogXCJcXGYyYTZcIjtcbiRmYS12YXItZ2xvYmU6IFwiXFxmMGFjXCI7XG4kZmEtdmFyLWdvb2dsZTogXCJcXGYxYTBcIjtcbiRmYS12YXItZ29vZ2xlLXBsdXM6IFwiXFxmMGQ1XCI7XG4kZmEtdmFyLWdvb2dsZS1wbHVzLWNpcmNsZTogXCJcXGYyYjNcIjtcbiRmYS12YXItZ29vZ2xlLXBsdXMtb2ZmaWNpYWw6IFwiXFxmMmIzXCI7XG4kZmEtdmFyLWdvb2dsZS1wbHVzLXNxdWFyZTogXCJcXGYwZDRcIjtcbiRmYS12YXItZ29vZ2xlLXdhbGxldDogXCJcXGYxZWVcIjtcbiRmYS12YXItZ3JhZHVhdGlvbi1jYXA6IFwiXFxmMTlkXCI7XG4kZmEtdmFyLWdyYXRpcGF5OiBcIlxcZjE4NFwiO1xuJGZhLXZhci1ncmF2OiBcIlxcZjJkNlwiO1xuJGZhLXZhci1ncm91cDogXCJcXGYwYzBcIjtcbiRmYS12YXItaC1zcXVhcmU6IFwiXFxmMGZkXCI7XG4kZmEtdmFyLWhhY2tlci1uZXdzOiBcIlxcZjFkNFwiO1xuJGZhLXZhci1oYW5kLWdyYWItbzogXCJcXGYyNTVcIjtcbiRmYS12YXItaGFuZC1saXphcmQtbzogXCJcXGYyNThcIjtcbiRmYS12YXItaGFuZC1vLWRvd246IFwiXFxmMGE3XCI7XG4kZmEtdmFyLWhhbmQtby1sZWZ0OiBcIlxcZjBhNVwiO1xuJGZhLXZhci1oYW5kLW8tcmlnaHQ6IFwiXFxmMGE0XCI7XG4kZmEtdmFyLWhhbmQtby11cDogXCJcXGYwYTZcIjtcbiRmYS12YXItaGFuZC1wYXBlci1vOiBcIlxcZjI1NlwiO1xuJGZhLXZhci1oYW5kLXBlYWNlLW86IFwiXFxmMjViXCI7XG4kZmEtdmFyLWhhbmQtcG9pbnRlci1vOiBcIlxcZjI1YVwiO1xuJGZhLXZhci1oYW5kLXJvY2stbzogXCJcXGYyNTVcIjtcbiRmYS12YXItaGFuZC1zY2lzc29ycy1vOiBcIlxcZjI1N1wiO1xuJGZhLXZhci1oYW5kLXNwb2NrLW86IFwiXFxmMjU5XCI7XG4kZmEtdmFyLWhhbmQtc3RvcC1vOiBcIlxcZjI1NlwiO1xuJGZhLXZhci1oYW5kc2hha2UtbzogXCJcXGYyYjVcIjtcbiRmYS12YXItaGFyZC1vZi1oZWFyaW5nOiBcIlxcZjJhNFwiO1xuJGZhLXZhci1oYXNodGFnOiBcIlxcZjI5MlwiO1xuJGZhLXZhci1oZGQtbzogXCJcXGYwYTBcIjtcbiRmYS12YXItaGVhZGVyOiBcIlxcZjFkY1wiO1xuJGZhLXZhci1oZWFkcGhvbmVzOiBcIlxcZjAyNVwiO1xuJGZhLXZhci1oZWFydDogXCJcXGYwMDRcIjtcbiRmYS12YXItaGVhcnQtbzogXCJcXGYwOGFcIjtcbiRmYS12YXItaGVhcnRiZWF0OiBcIlxcZjIxZVwiO1xuJGZhLXZhci1oaXN0b3J5OiBcIlxcZjFkYVwiO1xuJGZhLXZhci1ob21lOiBcIlxcZjAxNVwiO1xuJGZhLXZhci1ob3NwaXRhbC1vOiBcIlxcZjBmOFwiO1xuJGZhLXZhci1ob3RlbDogXCJcXGYyMzZcIjtcbiRmYS12YXItaG91cmdsYXNzOiBcIlxcZjI1NFwiO1xuJGZhLXZhci1ob3VyZ2xhc3MtMTogXCJcXGYyNTFcIjtcbiRmYS12YXItaG91cmdsYXNzLTI6IFwiXFxmMjUyXCI7XG4kZmEtdmFyLWhvdXJnbGFzcy0zOiBcIlxcZjI1M1wiO1xuJGZhLXZhci1ob3VyZ2xhc3MtZW5kOiBcIlxcZjI1M1wiO1xuJGZhLXZhci1ob3VyZ2xhc3MtaGFsZjogXCJcXGYyNTJcIjtcbiRmYS12YXItaG91cmdsYXNzLW86IFwiXFxmMjUwXCI7XG4kZmEtdmFyLWhvdXJnbGFzcy1zdGFydDogXCJcXGYyNTFcIjtcbiRmYS12YXItaG91eno6IFwiXFxmMjdjXCI7XG4kZmEtdmFyLWh0bWw1OiBcIlxcZjEzYlwiO1xuJGZhLXZhci1pLWN1cnNvcjogXCJcXGYyNDZcIjtcbiRmYS12YXItaWQtYmFkZ2U6IFwiXFxmMmMxXCI7XG4kZmEtdmFyLWlkLWNhcmQ6IFwiXFxmMmMyXCI7XG4kZmEtdmFyLWlkLWNhcmQtbzogXCJcXGYyYzNcIjtcbiRmYS12YXItaWxzOiBcIlxcZjIwYlwiO1xuJGZhLXZhci1pbWFnZTogXCJcXGYwM2VcIjtcbiRmYS12YXItaW1kYjogXCJcXGYyZDhcIjtcbiRmYS12YXItaW5ib3g6IFwiXFxmMDFjXCI7XG4kZmEtdmFyLWluZGVudDogXCJcXGYwM2NcIjtcbiRmYS12YXItaW5kdXN0cnk6IFwiXFxmMjc1XCI7XG4kZmEtdmFyLWluZm86IFwiXFxmMTI5XCI7XG4kZmEtdmFyLWluZm8tY2lyY2xlOiBcIlxcZjA1YVwiO1xuJGZhLXZhci1pbnI6IFwiXFxmMTU2XCI7XG4kZmEtdmFyLWluc3RhZ3JhbTogXCJcXGYxNmRcIjtcbiRmYS12YXItaW5zdGl0dXRpb246IFwiXFxmMTljXCI7XG4kZmEtdmFyLWludGVybmV0LWV4cGxvcmVyOiBcIlxcZjI2YlwiO1xuJGZhLXZhci1pbnRlcnNleDogXCJcXGYyMjRcIjtcbiRmYS12YXItaW94aG9zdDogXCJcXGYyMDhcIjtcbiRmYS12YXItaXRhbGljOiBcIlxcZjAzM1wiO1xuJGZhLXZhci1qb29tbGE6IFwiXFxmMWFhXCI7XG4kZmEtdmFyLWpweTogXCJcXGYxNTdcIjtcbiRmYS12YXItanNmaWRkbGU6IFwiXFxmMWNjXCI7XG4kZmEtdmFyLWtleTogXCJcXGYwODRcIjtcbiRmYS12YXIta2V5Ym9hcmQtbzogXCJcXGYxMWNcIjtcbiRmYS12YXIta3J3OiBcIlxcZjE1OVwiO1xuJGZhLXZhci1sYW5ndWFnZTogXCJcXGYxYWJcIjtcbiRmYS12YXItbGFwdG9wOiBcIlxcZjEwOVwiO1xuJGZhLXZhci1sYXN0Zm06IFwiXFxmMjAyXCI7XG4kZmEtdmFyLWxhc3RmbS1zcXVhcmU6IFwiXFxmMjAzXCI7XG4kZmEtdmFyLWxlYWY6IFwiXFxmMDZjXCI7XG4kZmEtdmFyLWxlYW5wdWI6IFwiXFxmMjEyXCI7XG4kZmEtdmFyLWxlZ2FsOiBcIlxcZjBlM1wiO1xuJGZhLXZhci1sZW1vbi1vOiBcIlxcZjA5NFwiO1xuJGZhLXZhci1sZXZlbC1kb3duOiBcIlxcZjE0OVwiO1xuJGZhLXZhci1sZXZlbC11cDogXCJcXGYxNDhcIjtcbiRmYS12YXItbGlmZS1ib3V5OiBcIlxcZjFjZFwiO1xuJGZhLXZhci1saWZlLWJ1b3k6IFwiXFxmMWNkXCI7XG4kZmEtdmFyLWxpZmUtcmluZzogXCJcXGYxY2RcIjtcbiRmYS12YXItbGlmZS1zYXZlcjogXCJcXGYxY2RcIjtcbiRmYS12YXItbGlnaHRidWxiLW86IFwiXFxmMGViXCI7XG4kZmEtdmFyLWxpbmUtY2hhcnQ6IFwiXFxmMjAxXCI7XG4kZmEtdmFyLWxpbms6IFwiXFxmMGMxXCI7XG4kZmEtdmFyLWxpbmtlZGluOiBcIlxcZjBlMVwiO1xuJGZhLXZhci1saW5rZWRpbi1zcXVhcmU6IFwiXFxmMDhjXCI7XG4kZmEtdmFyLWxpbm9kZTogXCJcXGYyYjhcIjtcbiRmYS12YXItbGludXg6IFwiXFxmMTdjXCI7XG4kZmEtdmFyLWxpc3Q6IFwiXFxmMDNhXCI7XG4kZmEtdmFyLWxpc3QtYWx0OiBcIlxcZjAyMlwiO1xuJGZhLXZhci1saXN0LW9sOiBcIlxcZjBjYlwiO1xuJGZhLXZhci1saXN0LXVsOiBcIlxcZjBjYVwiO1xuJGZhLXZhci1sb2NhdGlvbi1hcnJvdzogXCJcXGYxMjRcIjtcbiRmYS12YXItbG9jazogXCJcXGYwMjNcIjtcbiRmYS12YXItbG9uZy1hcnJvdy1kb3duOiBcIlxcZjE3NVwiO1xuJGZhLXZhci1sb25nLWFycm93LWxlZnQ6IFwiXFxmMTc3XCI7XG4kZmEtdmFyLWxvbmctYXJyb3ctcmlnaHQ6IFwiXFxmMTc4XCI7XG4kZmEtdmFyLWxvbmctYXJyb3ctdXA6IFwiXFxmMTc2XCI7XG4kZmEtdmFyLWxvdy12aXNpb246IFwiXFxmMmE4XCI7XG4kZmEtdmFyLW1hZ2ljOiBcIlxcZjBkMFwiO1xuJGZhLXZhci1tYWduZXQ6IFwiXFxmMDc2XCI7XG4kZmEtdmFyLW1haWwtZm9yd2FyZDogXCJcXGYwNjRcIjtcbiRmYS12YXItbWFpbC1yZXBseTogXCJcXGYxMTJcIjtcbiRmYS12YXItbWFpbC1yZXBseS1hbGw6IFwiXFxmMTIyXCI7XG4kZmEtdmFyLW1hbGU6IFwiXFxmMTgzXCI7XG4kZmEtdmFyLW1hcDogXCJcXGYyNzlcIjtcbiRmYS12YXItbWFwLW1hcmtlcjogXCJcXGYwNDFcIjtcbiRmYS12YXItbWFwLW86IFwiXFxmMjc4XCI7XG4kZmEtdmFyLW1hcC1waW46IFwiXFxmMjc2XCI7XG4kZmEtdmFyLW1hcC1zaWduczogXCJcXGYyNzdcIjtcbiRmYS12YXItbWFyczogXCJcXGYyMjJcIjtcbiRmYS12YXItbWFycy1kb3VibGU6IFwiXFxmMjI3XCI7XG4kZmEtdmFyLW1hcnMtc3Ryb2tlOiBcIlxcZjIyOVwiO1xuJGZhLXZhci1tYXJzLXN0cm9rZS1oOiBcIlxcZjIyYlwiO1xuJGZhLXZhci1tYXJzLXN0cm9rZS12OiBcIlxcZjIyYVwiO1xuJGZhLXZhci1tYXhjZG46IFwiXFxmMTM2XCI7XG4kZmEtdmFyLW1lYW5wYXRoOiBcIlxcZjIwY1wiO1xuJGZhLXZhci1tZWRpdW06IFwiXFxmMjNhXCI7XG4kZmEtdmFyLW1lZGtpdDogXCJcXGYwZmFcIjtcbiRmYS12YXItbWVldHVwOiBcIlxcZjJlMFwiO1xuJGZhLXZhci1tZWgtbzogXCJcXGYxMWFcIjtcbiRmYS12YXItbWVyY3VyeTogXCJcXGYyMjNcIjtcbiRmYS12YXItbWljcm9jaGlwOiBcIlxcZjJkYlwiO1xuJGZhLXZhci1taWNyb3Bob25lOiBcIlxcZjEzMFwiO1xuJGZhLXZhci1taWNyb3Bob25lLXNsYXNoOiBcIlxcZjEzMVwiO1xuJGZhLXZhci1taW51czogXCJcXGYwNjhcIjtcbiRmYS12YXItbWludXMtY2lyY2xlOiBcIlxcZjA1NlwiO1xuJGZhLXZhci1taW51cy1zcXVhcmU6IFwiXFxmMTQ2XCI7XG4kZmEtdmFyLW1pbnVzLXNxdWFyZS1vOiBcIlxcZjE0N1wiO1xuJGZhLXZhci1taXhjbG91ZDogXCJcXGYyODlcIjtcbiRmYS12YXItbW9iaWxlOiBcIlxcZjEwYlwiO1xuJGZhLXZhci1tb2JpbGUtcGhvbmU6IFwiXFxmMTBiXCI7XG4kZmEtdmFyLW1vZHg6IFwiXFxmMjg1XCI7XG4kZmEtdmFyLW1vbmV5OiBcIlxcZjBkNlwiO1xuJGZhLXZhci1tb29uLW86IFwiXFxmMTg2XCI7XG4kZmEtdmFyLW1vcnRhci1ib2FyZDogXCJcXGYxOWRcIjtcbiRmYS12YXItbW90b3JjeWNsZTogXCJcXGYyMWNcIjtcbiRmYS12YXItbW91c2UtcG9pbnRlcjogXCJcXGYyNDVcIjtcbiRmYS12YXItbXVzaWM6IFwiXFxmMDAxXCI7XG4kZmEtdmFyLW5hdmljb246IFwiXFxmMGM5XCI7XG4kZmEtdmFyLW5ldXRlcjogXCJcXGYyMmNcIjtcbiRmYS12YXItbmV3c3BhcGVyLW86IFwiXFxmMWVhXCI7XG4kZmEtdmFyLW9iamVjdC1ncm91cDogXCJcXGYyNDdcIjtcbiRmYS12YXItb2JqZWN0LXVuZ3JvdXA6IFwiXFxmMjQ4XCI7XG4kZmEtdmFyLW9kbm9rbGFzc25pa2k6IFwiXFxmMjYzXCI7XG4kZmEtdmFyLW9kbm9rbGFzc25pa2ktc3F1YXJlOiBcIlxcZjI2NFwiO1xuJGZhLXZhci1vcGVuY2FydDogXCJcXGYyM2RcIjtcbiRmYS12YXItb3BlbmlkOiBcIlxcZjE5YlwiO1xuJGZhLXZhci1vcGVyYTogXCJcXGYyNmFcIjtcbiRmYS12YXItb3B0aW4tbW9uc3RlcjogXCJcXGYyM2NcIjtcbiRmYS12YXItb3V0ZGVudDogXCJcXGYwM2JcIjtcbiRmYS12YXItcGFnZWxpbmVzOiBcIlxcZjE4Y1wiO1xuJGZhLXZhci1wYWludC1icnVzaDogXCJcXGYxZmNcIjtcbiRmYS12YXItcGFwZXItcGxhbmU6IFwiXFxmMWQ4XCI7XG4kZmEtdmFyLXBhcGVyLXBsYW5lLW86IFwiXFxmMWQ5XCI7XG4kZmEtdmFyLXBhcGVyY2xpcDogXCJcXGYwYzZcIjtcbiRmYS12YXItcGFyYWdyYXBoOiBcIlxcZjFkZFwiO1xuJGZhLXZhci1wYXN0ZTogXCJcXGYwZWFcIjtcbiRmYS12YXItcGF1c2U6IFwiXFxmMDRjXCI7XG4kZmEtdmFyLXBhdXNlLWNpcmNsZTogXCJcXGYyOGJcIjtcbiRmYS12YXItcGF1c2UtY2lyY2xlLW86IFwiXFxmMjhjXCI7XG4kZmEtdmFyLXBhdzogXCJcXGYxYjBcIjtcbiRmYS12YXItcGF5cGFsOiBcIlxcZjFlZFwiO1xuJGZhLXZhci1wZW5jaWw6IFwiXFxmMDQwXCI7XG4kZmEtdmFyLXBlbmNpbC1zcXVhcmU6IFwiXFxmMTRiXCI7XG4kZmEtdmFyLXBlbmNpbC1zcXVhcmUtbzogXCJcXGYwNDRcIjtcbiRmYS12YXItcGVyY2VudDogXCJcXGYyOTVcIjtcbiRmYS12YXItcGhvbmU6IFwiXFxmMDk1XCI7XG4kZmEtdmFyLXBob25lLXNxdWFyZTogXCJcXGYwOThcIjtcbiRmYS12YXItcGhvdG86IFwiXFxmMDNlXCI7XG4kZmEtdmFyLXBpY3R1cmUtbzogXCJcXGYwM2VcIjtcbiRmYS12YXItcGllLWNoYXJ0OiBcIlxcZjIwMFwiO1xuJGZhLXZhci1waWVkLXBpcGVyOiBcIlxcZjJhZVwiO1xuJGZhLXZhci1waWVkLXBpcGVyLWFsdDogXCJcXGYxYThcIjtcbiRmYS12YXItcGllZC1waXBlci1wcDogXCJcXGYxYTdcIjtcbiRmYS12YXItcGludGVyZXN0OiBcIlxcZjBkMlwiO1xuJGZhLXZhci1waW50ZXJlc3QtcDogXCJcXGYyMzFcIjtcbiRmYS12YXItcGludGVyZXN0LXNxdWFyZTogXCJcXGYwZDNcIjtcbiRmYS12YXItcGxhbmU6IFwiXFxmMDcyXCI7XG4kZmEtdmFyLXBsYXk6IFwiXFxmMDRiXCI7XG4kZmEtdmFyLXBsYXktY2lyY2xlOiBcIlxcZjE0NFwiO1xuJGZhLXZhci1wbGF5LWNpcmNsZS1vOiBcIlxcZjAxZFwiO1xuJGZhLXZhci1wbHVnOiBcIlxcZjFlNlwiO1xuJGZhLXZhci1wbHVzOiBcIlxcZjA2N1wiO1xuJGZhLXZhci1wbHVzLWNpcmNsZTogXCJcXGYwNTVcIjtcbiRmYS12YXItcGx1cy1zcXVhcmU6IFwiXFxmMGZlXCI7XG4kZmEtdmFyLXBsdXMtc3F1YXJlLW86IFwiXFxmMTk2XCI7XG4kZmEtdmFyLXBvZGNhc3Q6IFwiXFxmMmNlXCI7XG4kZmEtdmFyLXBvd2VyLW9mZjogXCJcXGYwMTFcIjtcbiRmYS12YXItcHJpbnQ6IFwiXFxmMDJmXCI7XG4kZmEtdmFyLXByb2R1Y3QtaHVudDogXCJcXGYyODhcIjtcbiRmYS12YXItcHV6emxlLXBpZWNlOiBcIlxcZjEyZVwiO1xuJGZhLXZhci1xcTogXCJcXGYxZDZcIjtcbiRmYS12YXItcXJjb2RlOiBcIlxcZjAyOVwiO1xuJGZhLXZhci1xdWVzdGlvbjogXCJcXGYxMjhcIjtcbiRmYS12YXItcXVlc3Rpb24tY2lyY2xlOiBcIlxcZjA1OVwiO1xuJGZhLXZhci1xdWVzdGlvbi1jaXJjbGUtbzogXCJcXGYyOWNcIjtcbiRmYS12YXItcXVvcmE6IFwiXFxmMmM0XCI7XG4kZmEtdmFyLXF1b3RlLWxlZnQ6IFwiXFxmMTBkXCI7XG4kZmEtdmFyLXF1b3RlLXJpZ2h0OiBcIlxcZjEwZVwiO1xuJGZhLXZhci1yYTogXCJcXGYxZDBcIjtcbiRmYS12YXItcmFuZG9tOiBcIlxcZjA3NFwiO1xuJGZhLXZhci1yYXZlbHJ5OiBcIlxcZjJkOVwiO1xuJGZhLXZhci1yZWJlbDogXCJcXGYxZDBcIjtcbiRmYS12YXItcmVjeWNsZTogXCJcXGYxYjhcIjtcbiRmYS12YXItcmVkZGl0OiBcIlxcZjFhMVwiO1xuJGZhLXZhci1yZWRkaXQtYWxpZW46IFwiXFxmMjgxXCI7XG4kZmEtdmFyLXJlZGRpdC1zcXVhcmU6IFwiXFxmMWEyXCI7XG4kZmEtdmFyLXJlZnJlc2g6IFwiXFxmMDIxXCI7XG4kZmEtdmFyLXJlZ2lzdGVyZWQ6IFwiXFxmMjVkXCI7XG4kZmEtdmFyLXJlbW92ZTogXCJcXGYwMGRcIjtcbiRmYS12YXItcmVucmVuOiBcIlxcZjE4YlwiO1xuJGZhLXZhci1yZW9yZGVyOiBcIlxcZjBjOVwiO1xuJGZhLXZhci1yZXBlYXQ6IFwiXFxmMDFlXCI7XG4kZmEtdmFyLXJlcGx5OiBcIlxcZjExMlwiO1xuJGZhLXZhci1yZXBseS1hbGw6IFwiXFxmMTIyXCI7XG4kZmEtdmFyLXJlc2lzdGFuY2U6IFwiXFxmMWQwXCI7XG4kZmEtdmFyLXJldHdlZXQ6IFwiXFxmMDc5XCI7XG4kZmEtdmFyLXJtYjogXCJcXGYxNTdcIjtcbiRmYS12YXItcm9hZDogXCJcXGYwMThcIjtcbiRmYS12YXItcm9ja2V0OiBcIlxcZjEzNVwiO1xuJGZhLXZhci1yb3RhdGUtbGVmdDogXCJcXGYwZTJcIjtcbiRmYS12YXItcm90YXRlLXJpZ2h0OiBcIlxcZjAxZVwiO1xuJGZhLXZhci1yb3VibGU6IFwiXFxmMTU4XCI7XG4kZmEtdmFyLXJzczogXCJcXGYwOWVcIjtcbiRmYS12YXItcnNzLXNxdWFyZTogXCJcXGYxNDNcIjtcbiRmYS12YXItcnViOiBcIlxcZjE1OFwiO1xuJGZhLXZhci1ydWJsZTogXCJcXGYxNThcIjtcbiRmYS12YXItcnVwZWU6IFwiXFxmMTU2XCI7XG4kZmEtdmFyLXMxNTogXCJcXGYyY2RcIjtcbiRmYS12YXItc2FmYXJpOiBcIlxcZjI2N1wiO1xuJGZhLXZhci1zYXZlOiBcIlxcZjBjN1wiO1xuJGZhLXZhci1zY2lzc29yczogXCJcXGYwYzRcIjtcbiRmYS12YXItc2NyaWJkOiBcIlxcZjI4YVwiO1xuJGZhLXZhci1zZWFyY2g6IFwiXFxmMDAyXCI7XG4kZmEtdmFyLXNlYXJjaC1taW51czogXCJcXGYwMTBcIjtcbiRmYS12YXItc2VhcmNoLXBsdXM6IFwiXFxmMDBlXCI7XG4kZmEtdmFyLXNlbGxzeTogXCJcXGYyMTNcIjtcbiRmYS12YXItc2VuZDogXCJcXGYxZDhcIjtcbiRmYS12YXItc2VuZC1vOiBcIlxcZjFkOVwiO1xuJGZhLXZhci1zZXJ2ZXI6IFwiXFxmMjMzXCI7XG4kZmEtdmFyLXNoYXJlOiBcIlxcZjA2NFwiO1xuJGZhLXZhci1zaGFyZS1hbHQ6IFwiXFxmMWUwXCI7XG4kZmEtdmFyLXNoYXJlLWFsdC1zcXVhcmU6IFwiXFxmMWUxXCI7XG4kZmEtdmFyLXNoYXJlLXNxdWFyZTogXCJcXGYxNGRcIjtcbiRmYS12YXItc2hhcmUtc3F1YXJlLW86IFwiXFxmMDQ1XCI7XG4kZmEtdmFyLXNoZWtlbDogXCJcXGYyMGJcIjtcbiRmYS12YXItc2hlcWVsOiBcIlxcZjIwYlwiO1xuJGZhLXZhci1zaGllbGQ6IFwiXFxmMTMyXCI7XG4kZmEtdmFyLXNoaXA6IFwiXFxmMjFhXCI7XG4kZmEtdmFyLXNoaXJ0c2luYnVsazogXCJcXGYyMTRcIjtcbiRmYS12YXItc2hvcHBpbmctYmFnOiBcIlxcZjI5MFwiO1xuJGZhLXZhci1zaG9wcGluZy1iYXNrZXQ6IFwiXFxmMjkxXCI7XG4kZmEtdmFyLXNob3BwaW5nLWNhcnQ6IFwiXFxmMDdhXCI7XG4kZmEtdmFyLXNob3dlcjogXCJcXGYyY2NcIjtcbiRmYS12YXItc2lnbi1pbjogXCJcXGYwOTBcIjtcbiRmYS12YXItc2lnbi1sYW5ndWFnZTogXCJcXGYyYTdcIjtcbiRmYS12YXItc2lnbi1vdXQ6IFwiXFxmMDhiXCI7XG4kZmEtdmFyLXNpZ25hbDogXCJcXGYwMTJcIjtcbiRmYS12YXItc2lnbmluZzogXCJcXGYyYTdcIjtcbiRmYS12YXItc2ltcGx5YnVpbHQ6IFwiXFxmMjE1XCI7XG4kZmEtdmFyLXNpdGVtYXA6IFwiXFxmMGU4XCI7XG4kZmEtdmFyLXNreWF0bGFzOiBcIlxcZjIxNlwiO1xuJGZhLXZhci1za3lwZTogXCJcXGYxN2VcIjtcbiRmYS12YXItc2xhY2s6IFwiXFxmMTk4XCI7XG4kZmEtdmFyLXNsaWRlcnM6IFwiXFxmMWRlXCI7XG4kZmEtdmFyLXNsaWRlc2hhcmU6IFwiXFxmMWU3XCI7XG4kZmEtdmFyLXNtaWxlLW86IFwiXFxmMTE4XCI7XG4kZmEtdmFyLXNuYXBjaGF0OiBcIlxcZjJhYlwiO1xuJGZhLXZhci1zbmFwY2hhdC1naG9zdDogXCJcXGYyYWNcIjtcbiRmYS12YXItc25hcGNoYXQtc3F1YXJlOiBcIlxcZjJhZFwiO1xuJGZhLXZhci1zbm93Zmxha2UtbzogXCJcXGYyZGNcIjtcbiRmYS12YXItc29jY2VyLWJhbGwtbzogXCJcXGYxZTNcIjtcbiRmYS12YXItc29ydDogXCJcXGYwZGNcIjtcbiRmYS12YXItc29ydC1hbHBoYS1hc2M6IFwiXFxmMTVkXCI7XG4kZmEtdmFyLXNvcnQtYWxwaGEtZGVzYzogXCJcXGYxNWVcIjtcbiRmYS12YXItc29ydC1hbW91bnQtYXNjOiBcIlxcZjE2MFwiO1xuJGZhLXZhci1zb3J0LWFtb3VudC1kZXNjOiBcIlxcZjE2MVwiO1xuJGZhLXZhci1zb3J0LWFzYzogXCJcXGYwZGVcIjtcbiRmYS12YXItc29ydC1kZXNjOiBcIlxcZjBkZFwiO1xuJGZhLXZhci1zb3J0LWRvd246IFwiXFxmMGRkXCI7XG4kZmEtdmFyLXNvcnQtbnVtZXJpYy1hc2M6IFwiXFxmMTYyXCI7XG4kZmEtdmFyLXNvcnQtbnVtZXJpYy1kZXNjOiBcIlxcZjE2M1wiO1xuJGZhLXZhci1zb3J0LXVwOiBcIlxcZjBkZVwiO1xuJGZhLXZhci1zb3VuZGNsb3VkOiBcIlxcZjFiZVwiO1xuJGZhLXZhci1zcGFjZS1zaHV0dGxlOiBcIlxcZjE5N1wiO1xuJGZhLXZhci1zcGlubmVyOiBcIlxcZjExMFwiO1xuJGZhLXZhci1zcG9vbjogXCJcXGYxYjFcIjtcbiRmYS12YXItc3BvdGlmeTogXCJcXGYxYmNcIjtcbiRmYS12YXItc3F1YXJlOiBcIlxcZjBjOFwiO1xuJGZhLXZhci1zcXVhcmUtbzogXCJcXGYwOTZcIjtcbiRmYS12YXItc3RhY2stZXhjaGFuZ2U6IFwiXFxmMThkXCI7XG4kZmEtdmFyLXN0YWNrLW92ZXJmbG93OiBcIlxcZjE2Y1wiO1xuJGZhLXZhci1zdGFyOiBcIlxcZjAwNVwiO1xuJGZhLXZhci1zdGFyLWhhbGY6IFwiXFxmMDg5XCI7XG4kZmEtdmFyLXN0YXItaGFsZi1lbXB0eTogXCJcXGYxMjNcIjtcbiRmYS12YXItc3Rhci1oYWxmLWZ1bGw6IFwiXFxmMTIzXCI7XG4kZmEtdmFyLXN0YXItaGFsZi1vOiBcIlxcZjEyM1wiO1xuJGZhLXZhci1zdGFyLW86IFwiXFxmMDA2XCI7XG4kZmEtdmFyLXN0ZWFtOiBcIlxcZjFiNlwiO1xuJGZhLXZhci1zdGVhbS1zcXVhcmU6IFwiXFxmMWI3XCI7XG4kZmEtdmFyLXN0ZXAtYmFja3dhcmQ6IFwiXFxmMDQ4XCI7XG4kZmEtdmFyLXN0ZXAtZm9yd2FyZDogXCJcXGYwNTFcIjtcbiRmYS12YXItc3RldGhvc2NvcGU6IFwiXFxmMGYxXCI7XG4kZmEtdmFyLXN0aWNreS1ub3RlOiBcIlxcZjI0OVwiO1xuJGZhLXZhci1zdGlja3ktbm90ZS1vOiBcIlxcZjI0YVwiO1xuJGZhLXZhci1zdG9wOiBcIlxcZjA0ZFwiO1xuJGZhLXZhci1zdG9wLWNpcmNsZTogXCJcXGYyOGRcIjtcbiRmYS12YXItc3RvcC1jaXJjbGUtbzogXCJcXGYyOGVcIjtcbiRmYS12YXItc3RyZWV0LXZpZXc6IFwiXFxmMjFkXCI7XG4kZmEtdmFyLXN0cmlrZXRocm91Z2g6IFwiXFxmMGNjXCI7XG4kZmEtdmFyLXN0dW1ibGV1cG9uOiBcIlxcZjFhNFwiO1xuJGZhLXZhci1zdHVtYmxldXBvbi1jaXJjbGU6IFwiXFxmMWEzXCI7XG4kZmEtdmFyLXN1YnNjcmlwdDogXCJcXGYxMmNcIjtcbiRmYS12YXItc3Vid2F5OiBcIlxcZjIzOVwiO1xuJGZhLXZhci1zdWl0Y2FzZTogXCJcXGYwZjJcIjtcbiRmYS12YXItc3VuLW86IFwiXFxmMTg1XCI7XG4kZmEtdmFyLXN1cGVycG93ZXJzOiBcIlxcZjJkZFwiO1xuJGZhLXZhci1zdXBlcnNjcmlwdDogXCJcXGYxMmJcIjtcbiRmYS12YXItc3VwcG9ydDogXCJcXGYxY2RcIjtcbiRmYS12YXItdGFibGU6IFwiXFxmMGNlXCI7XG4kZmEtdmFyLXRhYmxldDogXCJcXGYxMGFcIjtcbiRmYS12YXItdGFjaG9tZXRlcjogXCJcXGYwZTRcIjtcbiRmYS12YXItdGFnOiBcIlxcZjAyYlwiO1xuJGZhLXZhci10YWdzOiBcIlxcZjAyY1wiO1xuJGZhLXZhci10YXNrczogXCJcXGYwYWVcIjtcbiRmYS12YXItdGF4aTogXCJcXGYxYmFcIjtcbiRmYS12YXItdGVsZWdyYW06IFwiXFxmMmM2XCI7XG4kZmEtdmFyLXRlbGV2aXNpb246IFwiXFxmMjZjXCI7XG4kZmEtdmFyLXRlbmNlbnQtd2VpYm86IFwiXFxmMWQ1XCI7XG4kZmEtdmFyLXRlcm1pbmFsOiBcIlxcZjEyMFwiO1xuJGZhLXZhci10ZXh0LWhlaWdodDogXCJcXGYwMzRcIjtcbiRmYS12YXItdGV4dC13aWR0aDogXCJcXGYwMzVcIjtcbiRmYS12YXItdGg6IFwiXFxmMDBhXCI7XG4kZmEtdmFyLXRoLWxhcmdlOiBcIlxcZjAwOVwiO1xuJGZhLXZhci10aC1saXN0OiBcIlxcZjAwYlwiO1xuJGZhLXZhci10aGVtZWlzbGU6IFwiXFxmMmIyXCI7XG4kZmEtdmFyLXRoZXJtb21ldGVyOiBcIlxcZjJjN1wiO1xuJGZhLXZhci10aGVybW9tZXRlci0wOiBcIlxcZjJjYlwiO1xuJGZhLXZhci10aGVybW9tZXRlci0xOiBcIlxcZjJjYVwiO1xuJGZhLXZhci10aGVybW9tZXRlci0yOiBcIlxcZjJjOVwiO1xuJGZhLXZhci10aGVybW9tZXRlci0zOiBcIlxcZjJjOFwiO1xuJGZhLXZhci10aGVybW9tZXRlci00OiBcIlxcZjJjN1wiO1xuJGZhLXZhci10aGVybW9tZXRlci1lbXB0eTogXCJcXGYyY2JcIjtcbiRmYS12YXItdGhlcm1vbWV0ZXItZnVsbDogXCJcXGYyYzdcIjtcbiRmYS12YXItdGhlcm1vbWV0ZXItaGFsZjogXCJcXGYyYzlcIjtcbiRmYS12YXItdGhlcm1vbWV0ZXItcXVhcnRlcjogXCJcXGYyY2FcIjtcbiRmYS12YXItdGhlcm1vbWV0ZXItdGhyZWUtcXVhcnRlcnM6IFwiXFxmMmM4XCI7XG4kZmEtdmFyLXRodW1iLXRhY2s6IFwiXFxmMDhkXCI7XG4kZmEtdmFyLXRodW1icy1kb3duOiBcIlxcZjE2NVwiO1xuJGZhLXZhci10aHVtYnMtby1kb3duOiBcIlxcZjA4OFwiO1xuJGZhLXZhci10aHVtYnMtby11cDogXCJcXGYwODdcIjtcbiRmYS12YXItdGh1bWJzLXVwOiBcIlxcZjE2NFwiO1xuJGZhLXZhci10aWNrZXQ6IFwiXFxmMTQ1XCI7XG4kZmEtdmFyLXRpbWVzOiBcIlxcZjAwZFwiO1xuJGZhLXZhci10aW1lcy1jaXJjbGU6IFwiXFxmMDU3XCI7XG4kZmEtdmFyLXRpbWVzLWNpcmNsZS1vOiBcIlxcZjA1Y1wiO1xuJGZhLXZhci10aW1lcy1yZWN0YW5nbGU6IFwiXFxmMmQzXCI7XG4kZmEtdmFyLXRpbWVzLXJlY3RhbmdsZS1vOiBcIlxcZjJkNFwiO1xuJGZhLXZhci10aW50OiBcIlxcZjA0M1wiO1xuJGZhLXZhci10b2dnbGUtZG93bjogXCJcXGYxNTBcIjtcbiRmYS12YXItdG9nZ2xlLWxlZnQ6IFwiXFxmMTkxXCI7XG4kZmEtdmFyLXRvZ2dsZS1vZmY6IFwiXFxmMjA0XCI7XG4kZmEtdmFyLXRvZ2dsZS1vbjogXCJcXGYyMDVcIjtcbiRmYS12YXItdG9nZ2xlLXJpZ2h0OiBcIlxcZjE1MlwiO1xuJGZhLXZhci10b2dnbGUtdXA6IFwiXFxmMTUxXCI7XG4kZmEtdmFyLXRyYWRlbWFyazogXCJcXGYyNWNcIjtcbiRmYS12YXItdHJhaW46IFwiXFxmMjM4XCI7XG4kZmEtdmFyLXRyYW5zZ2VuZGVyOiBcIlxcZjIyNFwiO1xuJGZhLXZhci10cmFuc2dlbmRlci1hbHQ6IFwiXFxmMjI1XCI7XG4kZmEtdmFyLXRyYXNoOiBcIlxcZjFmOFwiO1xuJGZhLXZhci10cmFzaC1vOiBcIlxcZjAxNFwiO1xuJGZhLXZhci10cmVlOiBcIlxcZjFiYlwiO1xuJGZhLXZhci10cmVsbG86IFwiXFxmMTgxXCI7XG4kZmEtdmFyLXRyaXBhZHZpc29yOiBcIlxcZjI2MlwiO1xuJGZhLXZhci10cm9waHk6IFwiXFxmMDkxXCI7XG4kZmEtdmFyLXRydWNrOiBcIlxcZjBkMVwiO1xuJGZhLXZhci10cnk6IFwiXFxmMTk1XCI7XG4kZmEtdmFyLXR0eTogXCJcXGYxZTRcIjtcbiRmYS12YXItdHVtYmxyOiBcIlxcZjE3M1wiO1xuJGZhLXZhci10dW1ibHItc3F1YXJlOiBcIlxcZjE3NFwiO1xuJGZhLXZhci10dXJraXNoLWxpcmE6IFwiXFxmMTk1XCI7XG4kZmEtdmFyLXR2OiBcIlxcZjI2Y1wiO1xuJGZhLXZhci10d2l0Y2g6IFwiXFxmMWU4XCI7XG4kZmEtdmFyLXR3aXR0ZXI6IFwiXFxmMDk5XCI7XG4kZmEtdmFyLXR3aXR0ZXItc3F1YXJlOiBcIlxcZjA4MVwiO1xuJGZhLXZhci11bWJyZWxsYTogXCJcXGYwZTlcIjtcbiRmYS12YXItdW5kZXJsaW5lOiBcIlxcZjBjZFwiO1xuJGZhLXZhci11bmRvOiBcIlxcZjBlMlwiO1xuJGZhLXZhci11bml2ZXJzYWwtYWNjZXNzOiBcIlxcZjI5YVwiO1xuJGZhLXZhci11bml2ZXJzaXR5OiBcIlxcZjE5Y1wiO1xuJGZhLXZhci11bmxpbms6IFwiXFxmMTI3XCI7XG4kZmEtdmFyLXVubG9jazogXCJcXGYwOWNcIjtcbiRmYS12YXItdW5sb2NrLWFsdDogXCJcXGYxM2VcIjtcbiRmYS12YXItdW5zb3J0ZWQ6IFwiXFxmMGRjXCI7XG4kZmEtdmFyLXVwbG9hZDogXCJcXGYwOTNcIjtcbiRmYS12YXItdXNiOiBcIlxcZjI4N1wiO1xuJGZhLXZhci11c2Q6IFwiXFxmMTU1XCI7XG4kZmEtdmFyLXVzZXI6IFwiXFxmMDA3XCI7XG4kZmEtdmFyLXVzZXItY2lyY2xlOiBcIlxcZjJiZFwiO1xuJGZhLXZhci11c2VyLWNpcmNsZS1vOiBcIlxcZjJiZVwiO1xuJGZhLXZhci11c2VyLW1kOiBcIlxcZjBmMFwiO1xuJGZhLXZhci11c2VyLW86IFwiXFxmMmMwXCI7XG4kZmEtdmFyLXVzZXItcGx1czogXCJcXGYyMzRcIjtcbiRmYS12YXItdXNlci1zZWNyZXQ6IFwiXFxmMjFiXCI7XG4kZmEtdmFyLXVzZXItdGltZXM6IFwiXFxmMjM1XCI7XG4kZmEtdmFyLXVzZXJzOiBcIlxcZjBjMFwiO1xuJGZhLXZhci12Y2FyZDogXCJcXGYyYmJcIjtcbiRmYS12YXItdmNhcmQtbzogXCJcXGYyYmNcIjtcbiRmYS12YXItdmVudXM6IFwiXFxmMjIxXCI7XG4kZmEtdmFyLXZlbnVzLWRvdWJsZTogXCJcXGYyMjZcIjtcbiRmYS12YXItdmVudXMtbWFyczogXCJcXGYyMjhcIjtcbiRmYS12YXItdmlhY29pbjogXCJcXGYyMzdcIjtcbiRmYS12YXItdmlhZGVvOiBcIlxcZjJhOVwiO1xuJGZhLXZhci12aWFkZW8tc3F1YXJlOiBcIlxcZjJhYVwiO1xuJGZhLXZhci12aWRlby1jYW1lcmE6IFwiXFxmMDNkXCI7XG4kZmEtdmFyLXZpbWVvOiBcIlxcZjI3ZFwiO1xuJGZhLXZhci12aW1lby1zcXVhcmU6IFwiXFxmMTk0XCI7XG4kZmEtdmFyLXZpbmU6IFwiXFxmMWNhXCI7XG4kZmEtdmFyLXZrOiBcIlxcZjE4OVwiO1xuJGZhLXZhci12b2x1bWUtY29udHJvbC1waG9uZTogXCJcXGYyYTBcIjtcbiRmYS12YXItdm9sdW1lLWRvd246IFwiXFxmMDI3XCI7XG4kZmEtdmFyLXZvbHVtZS1vZmY6IFwiXFxmMDI2XCI7XG4kZmEtdmFyLXZvbHVtZS11cDogXCJcXGYwMjhcIjtcbiRmYS12YXItd2FybmluZzogXCJcXGYwNzFcIjtcbiRmYS12YXItd2VjaGF0OiBcIlxcZjFkN1wiO1xuJGZhLXZhci13ZWlibzogXCJcXGYxOGFcIjtcbiRmYS12YXItd2VpeGluOiBcIlxcZjFkN1wiO1xuJGZhLXZhci13aGF0c2FwcDogXCJcXGYyMzJcIjtcbiRmYS12YXItd2hlZWxjaGFpcjogXCJcXGYxOTNcIjtcbiRmYS12YXItd2hlZWxjaGFpci1hbHQ6IFwiXFxmMjliXCI7XG4kZmEtdmFyLXdpZmk6IFwiXFxmMWViXCI7XG4kZmEtdmFyLXdpa2lwZWRpYS13OiBcIlxcZjI2NlwiO1xuJGZhLXZhci13aW5kb3ctY2xvc2U6IFwiXFxmMmQzXCI7XG4kZmEtdmFyLXdpbmRvdy1jbG9zZS1vOiBcIlxcZjJkNFwiO1xuJGZhLXZhci13aW5kb3ctbWF4aW1pemU6IFwiXFxmMmQwXCI7XG4kZmEtdmFyLXdpbmRvdy1taW5pbWl6ZTogXCJcXGYyZDFcIjtcbiRmYS12YXItd2luZG93LXJlc3RvcmU6IFwiXFxmMmQyXCI7XG4kZmEtdmFyLXdpbmRvd3M6IFwiXFxmMTdhXCI7XG4kZmEtdmFyLXdvbjogXCJcXGYxNTlcIjtcbiRmYS12YXItd29yZHByZXNzOiBcIlxcZjE5YVwiO1xuJGZhLXZhci13cGJlZ2lubmVyOiBcIlxcZjI5N1wiO1xuJGZhLXZhci13cGV4cGxvcmVyOiBcIlxcZjJkZVwiO1xuJGZhLXZhci13cGZvcm1zOiBcIlxcZjI5OFwiO1xuJGZhLXZhci13cmVuY2g6IFwiXFxmMGFkXCI7XG4kZmEtdmFyLXhpbmc6IFwiXFxmMTY4XCI7XG4kZmEtdmFyLXhpbmctc3F1YXJlOiBcIlxcZjE2OVwiO1xuJGZhLXZhci15LWNvbWJpbmF0b3I6IFwiXFxmMjNiXCI7XG4kZmEtdmFyLXktY29tYmluYXRvci1zcXVhcmU6IFwiXFxmMWQ0XCI7XG4kZmEtdmFyLXlhaG9vOiBcIlxcZjE5ZVwiO1xuJGZhLXZhci15YzogXCJcXGYyM2JcIjtcbiRmYS12YXIteWMtc3F1YXJlOiBcIlxcZjFkNFwiO1xuJGZhLXZhci15ZWxwOiBcIlxcZjFlOVwiO1xuJGZhLXZhci15ZW46IFwiXFxmMTU3XCI7XG4kZmEtdmFyLXlvYXN0OiBcIlxcZjJiMVwiO1xuJGZhLXZhci15b3V0dWJlOiBcIlxcZjE2N1wiO1xuJGZhLXZhci15b3V0dWJlLXBsYXk6IFwiXFxmMTZhXCI7XG4kZmEtdmFyLXlvdXR1YmUtc3F1YXJlOiBcIlxcZjE2NlwiO1xuXG4iLCIvLyBCb3JkZXJlZCAmIFB1bGxlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tYm9yZGVyIHtcbiAgcGFkZGluZzogLjJlbSAuMjVlbSAuMTVlbTtcbiAgYm9yZGVyOiBzb2xpZCAuMDhlbSAkZmEtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAuMWVtO1xufVxuXG4uI3skZmEtY3NzLXByZWZpeH0tcHVsbC1sZWZ0IHsgZmxvYXQ6IGxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wdWxsLXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XG5cbi4jeyRmYS1jc3MtcHJlZml4fSB7XG4gICYuI3skZmEtY3NzLXByZWZpeH0tcHVsbC1sZWZ0IHsgbWFyZ2luLXJpZ2h0OiAuM2VtOyB9XG4gICYuI3skZmEtY3NzLXByZWZpeH0tcHVsbC1yaWdodCB7IG1hcmdpbi1sZWZ0OiAuM2VtOyB9XG59XG5cbi8qIERlcHJlY2F0ZWQgYXMgb2YgNC40LjAgKi9cbi5wdWxsLXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XG4ucHVsbC1sZWZ0IHsgZmxvYXQ6IGxlZnQ7IH1cblxuLiN7JGZhLWNzcy1wcmVmaXh9IHtcbiAgJi5wdWxsLWxlZnQgeyBtYXJnaW4tcmlnaHQ6IC4zZW07IH1cbiAgJi5wdWxsLXJpZ2h0IHsgbWFyZ2luLWxlZnQ6IC4zZW07IH1cbn1cbiIsIi8vIFNwaW5uaW5nIEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tc3BpbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmYS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjtcbiAgICAgICAgICBhbmltYXRpb246IGZhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xufVxuXG4uI3skZmEtY3NzLXByZWZpeH0tcHVsc2Uge1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmEtc3BpbiAxcyBpbmZpbml0ZSBzdGVwcyg4KTtcbiAgICAgICAgICBhbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYS1zcGluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmEtc3BpbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgfVxufVxuIiwiLy8gUm90YXRlZCAmIEZsaXBwZWQgSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS05MCAgeyBAaW5jbHVkZSBmYS1pY29uLXJvdGF0ZSg5MGRlZywgMSk7ICB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTE4MCB7IEBpbmNsdWRlIGZhLWljb24tcm90YXRlKDE4MGRlZywgMik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtMjcwIHsgQGluY2x1ZGUgZmEtaWNvbi1yb3RhdGUoMjcwZGVnLCAzKTsgfVxuXG4uI3skZmEtY3NzLXByZWZpeH0tZmxpcC1ob3Jpem9udGFsIHsgQGluY2x1ZGUgZmEtaWNvbi1mbGlwKC0xLCAxLCAwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtdmVydGljYWwgICB7IEBpbmNsdWRlIGZhLWljb24tZmxpcCgxLCAtMSwgMik7IH1cblxuLy8gSG9vayBmb3IgSUU4LTlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuOnJvb3QgLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS05MCxcbjpyb290IC4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtMTgwLFxuOnJvb3QgLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS0yNzAsXG46cm9vdCAuI3skZmEtY3NzLXByZWZpeH0tZmxpcC1ob3Jpem9udGFsLFxuOnJvb3QgLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtdmVydGljYWwge1xuICBmaWx0ZXI6IG5vbmU7XG59XG4iLCIvLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtaXhpbiBmYS1pY29uKCkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsICN7JGZhLWZvbnQtc2l6ZS1iYXNlfS8jeyRmYS1saW5lLWhlaWdodC1iYXNlfSBGb250QXdlc29tZTsgLy8gc2hvcnRlbmluZyBmb250IGRlY2xhcmF0aW9uXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgLy8gY2FuJ3QgaGF2ZSBmb250LXNpemUgaW5oZXJpdCBvbiBsaW5lIGFib3ZlLCBzbyBuZWVkIHRvIG92ZXJyaWRlXG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvOyAvLyBvcHRpbWl6ZWxlZ2liaWxpdHkgdGhyb3dzIHRoaW5ncyBvZmYgIzEwOTRcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbn1cblxuQG1peGluIGZhLWljb24tcm90YXRlKCRkZWdyZWVzLCAkcm90YXRpb24pIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0jeyRyb3RhdGlvbn0pXCI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG59XG5cbkBtaXhpbiBmYS1pY29uLWZsaXAoJGhvcml6LCAkdmVydCwgJHJvdGF0aW9uKSB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249I3skcm90YXRpb259LCBtaXJyb3I9MSlcIjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoJGhvcml6LCAkdmVydCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkaG9yaXosICR2ZXJ0KTtcbn1cblxuXG4vLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVycy4gQSBsYSBCb290c3RyYXAgNC5cbi8vXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cblxuQG1peGluIHNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gIH1cbn1cbiIsIi8vIFN0YWNrZWQgSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAyZW07XG4gIGhlaWdodDogMmVtO1xuICBsaW5lLWhlaWdodDogMmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLTF4LCAuI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMngge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMXggeyBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLTJ4IHsgZm9udC1zaXplOiAyZW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnZlcnNlIHsgY29sb3I6ICRmYS1pbnZlcnNlOyB9XG4iLCIvKiBGb250IEF3ZXNvbWUgdXNlcyB0aGUgVW5pY29kZSBQcml2YXRlIFVzZSBBcmVhIChQVUEpIHRvIGVuc3VyZSBzY3JlZW5cbiAgIHJlYWRlcnMgZG8gbm90IHJlYWQgb2ZmIHJhbmRvbSBjaGFyYWN0ZXJzIHRoYXQgcmVwcmVzZW50IGljb25zICovXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1nbGFzczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdsYXNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbXVzaWM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tdXNpYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlYXJjaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNlYXJjaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbnZlbG9wZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oZWFydDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGFyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3Rhci1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxtOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoLWxhcmdlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGgtbGFyZ2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGgtbGlzdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoLWxpc3Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZWNrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVtb3ZlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jbG9zZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGltZXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aW1lczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlYXJjaC1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2VhcmNoLXBsdXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWFyY2gtbWludXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zZWFyY2gtbWludXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wb3dlci1vZmY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wb3dlci1vZmY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduYWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaWduYWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZWFyOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jb2c6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb2c7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFzaC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJhc2gtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvbWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ob21lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvY2stbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNsb2NrLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb2FkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcm9hZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZG93bmxvYWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtby1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLW8tZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1vLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLW8tdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmJveDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWluYm94OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxheS1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsYXktY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtcmlnaHQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlcGVhdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlcGVhdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZnJlc2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZWZyZXNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdC1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saXN0LWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvY2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sb2NrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZsYWc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkcGhvbmVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGVhZHBob25lczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZvbHVtZS1vZmY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12b2x1bWUtb2ZmOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12b2x1bWUtZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZvbHVtZS11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZvbHVtZS11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXFyY29kZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXFyY29kZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhcmNvZGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXJjb2RlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFnOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGFnOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFnczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRhZ3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib29rOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYm9vazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvb2ttYXJrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYm9va21hcms7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcmludDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXByaW50OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FtZXJhOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FtZXJhOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib2xkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYm9sZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWl0YWxpYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWl0YWxpYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRleHQtaGVpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGV4dC1oZWlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZXh0LXdpZHRoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGV4dC13aWR0aDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFsaWduLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbGlnbi1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tY2VudGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYWxpZ24tY2VudGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbGlnbi1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFsaWduLWp1c3RpZnk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbGlnbi1qdXN0aWZ5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpc3Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZWRlbnQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LW91dGRlbnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1vdXRkZW50OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5kZW50OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5kZW50OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlkZW8tY2FtZXJhOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmlkZW8tY2FtZXJhOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvdG86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWltYWdlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1waWN0dXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waWN0dXJlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZW5jaWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wZW5jaWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXAtbWFya2VyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFwLW1hcmtlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkanVzdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFkanVzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpbnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aW50OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWRpdDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcGVuY2lsLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGVuY2lsLXNxdWFyZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcmUtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGFyZS1zcXVhcmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hlY2stc3F1YXJlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvd3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvd3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RlcC1iYWNrd2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhc3QtYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mYXN0LWJhY2t3YXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYWNrd2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wbGF5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF1c2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXVzZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0b3A6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdG9wOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvcndhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYXN0LWZvcndhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mYXN0LWZvcndhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGVwLWZvcndhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGVwLWZvcndhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lamVjdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVqZWN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVzLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsdXMtY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWludXMtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWludXMtY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGltZXMtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGltZXMtY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hlY2stY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVlc3Rpb24tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXVlc3Rpb24tY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5mby1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbmZvLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyb3NzaGFpcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jcm9zc2hhaXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGltZXMtY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aW1lcy1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hlY2stY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWlsLWZvcndhcmQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2hhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHBhbmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leHBhbmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21wcmVzczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbXByZXNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsdXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taW51czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1pbnVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXN0ZXJpc2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hc3RlcmlzazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV4Y2xhbWF0aW9uLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1naWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGVhZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxlYWY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV5ZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV5ZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV5ZS1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV5ZS1zbGFzaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdhcm5pbmc6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXhjbGFtYXRpb24tdHJpYW5nbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGFuZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsYW5lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYWxlbmRhcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJhbmRvbTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJhbmRvbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb21tZW50OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFnbmV0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFnbmV0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGV2cm9uLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXR3ZWV0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmV0d2VldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWNhcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaG9wcGluZy1jYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9sZGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyLW9wZW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb2xkZXItb3BlbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93cy12OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3dzLXY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvd3MtaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93cy1oOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFyLWNoYXJ0LW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhci1jaGFydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhci1jaGFydDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR3aXR0ZXItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHdpdHRlci1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYWNlYm9vay1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mYWNlYm9vay1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYW1lcmEtcmV0cm86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYW1lcmEtcmV0cm87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rZXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1rZXk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZWFyczpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY29nczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZ3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbW1lbnRzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWJzLW8tdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aHVtYnMtby11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1icy1vLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aHVtYnMtby1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3Rhci1oYWxmOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhcnQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhlYXJ0LW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduLW91dDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNpZ24tb3V0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlua2VkaW4tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlua2VkaW4tc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWItdGFjazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRodW1iLXRhY2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHRlcm5hbC1saW5rOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXh0ZXJuYWwtbGluazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ24taW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaWduLWluOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJvcGh5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJvcGh5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0aHViLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdpdGh1Yi1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11cGxvYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11cGxvYWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZW1vbi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGVtb24tbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGhvbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcXVhcmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNxdWFyZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9va21hcmstbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJvb2ttYXJrLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG9uZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waG9uZS1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10d2l0dGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHdpdHRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rLWY6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmFjZWJvb2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXRodWI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1naXRodWI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmxvY2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11bmxvY2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVkaXQtY2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNyZWRpdC1jYXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmVlZDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcnNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcnNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGRkLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oZGQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1bGxob3JuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnVsbGhvcm47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWxsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVsbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNlcnRpZmljYXRlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2VydGlmaWNhdGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLW8tcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLW8tcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLW8tbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtby1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1vLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1vLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1vLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLW8tZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xvYmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nbG9iZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdyZW5jaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdyZW5jaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhc2tzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGFza3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWx0ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWx0ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icmllZmNhc2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1icmllZmNhc2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvd3MtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3dzLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyb3VwOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hhaW46YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbms6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saW5rOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jbG91ZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYXNrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxhc2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jdXQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNjaXNzb3JzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2Npc3NvcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb3B5OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlcy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZXMtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhcGVyY2xpcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhcGVyY2xpcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNhdmU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsb3BweS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxvcHB5LW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1uYXZpY29uOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1yZW9yZGVyOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmFyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpc3QtdWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saXN0LXVsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdC1vbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpc3Qtb2w7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJpa2V0aHJvdWdoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RyaWtldGhyb3VnaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuZGVybGluZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVuZGVybGluZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhYmxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGFibGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWdpYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hZ2ljOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJ1Y2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cnVjazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpbnRlcmVzdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpbnRlcmVzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpbnRlcmVzdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waW50ZXJlc3Qtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsdXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ29vZ2xlLXBsdXMtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsdXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nb29nbGUtcGx1czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmV5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbW9uZXk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2x1bW5zOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29sdW1uczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuc29ydGVkOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtZG93bjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1kZXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1kZXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC11cDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LWFzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZW52ZWxvcGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5rZWRpbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpbmtlZGluOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLWxlZnQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuZG86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11bmRvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGVnYWw6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWdhdmVsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2F2ZWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kYXNoYm9hcmQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhY2hvbWV0ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YWNob21ldGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tbWVudC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudHMtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbW1lbnRzLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFzaDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYm9sdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJvbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaXRlbWFwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2l0ZW1hcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVtYnJlbGxhOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdW1icmVsbGE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXN0ZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY2xpcGJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xpcGJvYXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlnaHRidWxiLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saWdodGJ1bGItbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4Y2hhbmdlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXhjaGFuZ2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC1kb3dubG9hZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNsb3VkLWRvd25sb2FkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtdXBsb2FkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xvdWQtdXBsb2FkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1tZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXItbWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGV0aG9zY29wZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0ZXRob3Njb3BlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3VpdGNhc2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdWl0Y2FzZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlbGwtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJlbGwtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZmZlZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZmZlZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1dGxlcnk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jdXRsZXJ5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS10ZXh0LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLXRleHQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1aWxkaW5nLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idWlsZGluZy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9zcGl0YWwtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhvc3BpdGFsLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbWJ1bGFuY2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbWJ1bGFuY2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWRraXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tZWRraXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWdodGVyLWpldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpZ2h0ZXItamV0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJlZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWgtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1cy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wbHVzLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtZG91YmxlLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1kb3VibGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS1kb3VibGUtcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1kb3VibGUtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS1kb3VibGUtdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1kb3VibGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWRvdWJsZS1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGVza3RvcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRlc2t0b3A7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXB0b3A6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sYXB0b3A7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWJsZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YWJsZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb2JpbGUtcGhvbmU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vYmlsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1vYmlsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdW90ZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXVvdGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1b3RlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXVvdGUtcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGlubmVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3Bpbm5lcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1haWwtcmVwbHk6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlcGx5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVwbHk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXRodWItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2l0aHViLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbGRlci1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9sZGVyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXItb3Blbi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9sZGVyLW9wZW4tbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNtaWxlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zbWlsZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnJvd24tbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZyb3duLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWgtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1laC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2FtZXBhZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdhbWVwYWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rZXlib2FyZC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIta2V5Ym9hcmQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYWctbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZsYWctbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYWctY2hlY2tlcmVkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxhZy1jaGVja2VyZWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZXJtaW5hbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRlcm1pbmFsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29kZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWlsLXJlcGx5LWFsbDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmVwbHktYWxsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVwbHktYWxsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1oYWxmLWVtcHR5OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLWhhbGYtZnVsbDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1oYWxmLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGFyLWhhbGYtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvY2F0aW9uLWFycm93OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbG9jYXRpb24tYXJyb3c7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcm9wOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3JvcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZGUtZm9yazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZGUtZm9yazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVubGluazpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY2hhaW4tYnJva2VuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hhaW4tYnJva2VuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVlc3Rpb246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xdWVzdGlvbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluZm86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbmZvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjbGFtYXRpb246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leGNsYW1hdGlvbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1cGVyc2NyaXB0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3VwZXJzY3JpcHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWJzY3JpcHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdWJzY3JpcHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lcmFzZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lcmFzZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wdXp6bGUtcGllY2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wdXp6bGUtcGllY2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb3Bob25lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWljcm9waG9uZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvcGhvbmUtc2xhc2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1taWNyb3Bob25lLXNsYXNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hpZWxkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2hpZWxkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGVuZGFyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlLWV4dGluZ3Vpc2hlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpcmUtZXh0aW5ndWlzaGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm9ja2V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcm9ja2V0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWF4Y2RuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWF4Y2RuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1jaXJjbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tY2lyY2xlLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tY2lyY2xlLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1jaXJjbGUtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGV2cm9uLWNpcmNsZS11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tY2lyY2xlLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taHRtbDU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1odG1sNTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNzczM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jc3MzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5jaG9yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5jaG9yOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5sb2NrLWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVubG9jay1hbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idWxsc2V5ZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ1bGxzZXllOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWxsaXBzaXMtaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVsbGlwc2lzLWg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbGxpcHNpcy12OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZWxsaXBzaXMtdjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJzcy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yc3Mtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxheS1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wbGF5LWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpY2tldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRpY2tldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pbnVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1pbnVzLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pbnVzLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWludXMtc3F1YXJlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXZlbC11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxldmVsLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGV2ZWwtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxldmVsLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjay1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGVjay1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZW5jaWwtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGVuY2lsLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4dGVybmFsLWxpbmstc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXh0ZXJuYWwtbGluay1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGFyZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGFyZS1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21wYXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tcGFzczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1kb3duOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtby1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtc3F1YXJlLW8tZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS11cDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLW8tdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1zcXVhcmUtby11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1yaWdodDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLW8tcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1zcXVhcmUtby1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV1cm86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWV1cjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV1cjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdicDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdicDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvbGxhcjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdXNkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnVwZWU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWlucjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWlucjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNueTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcm1iOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS15ZW46YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWpweTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWpweTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1YmxlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1yb3VibGU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1YjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJ1YjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdvbjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0ta3J3OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIta3J3OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYml0Y29pbjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYnRjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnRjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXRleHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLXRleHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFscGhhLWFzYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvcnQtYWxwaGEtYXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbHBoYS1kZXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1hbHBoYS1kZXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbW91bnQtYXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1hbW91bnQtYXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbW91bnQtZGVzYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvcnQtYW1vdW50LWRlc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LW51bWVyaWMtYXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1udW1lcmljLWFzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtbnVtZXJpYy1kZXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1udW1lcmljLWRlc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aHVtYnMtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aHVtYnMtdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aHVtYnMtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRodW1icy1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teW91dHViZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15b3V0dWJlLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlvdXR1YmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15b3V0dWJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teGluZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXhpbmc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS14aW5nLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXhpbmctc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teW91dHViZS1wbGF5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteW91dHViZS1wbGF5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJvcGJveDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRyb3Bib3g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay1vdmVyZmxvdzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0YWNrLW92ZXJmbG93OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5zdGFncmFtOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5zdGFncmFtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxpY2tyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxpY2tyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYWRuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYml0YnVja2V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYml0YnVja2V0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYml0YnVja2V0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJpdGJ1Y2tldC1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10dW1ibHI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10dW1ibHI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10dW1ibHItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHVtYmxyLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvbmctYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvbmctYXJyb3ctZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvbmctYXJyb3ctdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sb25nLWFycm93LXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbG9uZy1hcnJvdy1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvbmctYXJyb3ctcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcHBsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFwcGxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdpbmRvd3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmRyb2lkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5kcm9pZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbnV4OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGludXg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcmliYmJsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRyaWJiYmxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2t5cGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1za3lwZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvdXJzcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb3Vyc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJlbGxvOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJlbGxvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmVtYWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmVtYWxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXR0aXA6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyYXRpcGF5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ3JhdGlwYXk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdW4tbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN1bi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9vbi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbW9vbi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJjaGl2ZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFyY2hpdmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idWc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idWc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12azpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2VpYm86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13ZWlibzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlbnJlbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlbnJlbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhZ2VsaW5lczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhZ2VsaW5lczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLWV4Y2hhbmdlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RhY2stZXhjaGFuZ2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtby1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS1vLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLW8tbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS1vLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2dnbGUtbGVmdDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLW8tbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LXNxdWFyZS1vLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb3QtY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kb3QtY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aGVlbGNoYWlyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2hlZWxjaGFpcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpbWVvLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZpbWVvLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR1cmtpc2gtbGlyYTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdHJ5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJ5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1cy1zcXVhcmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsdXMtc3F1YXJlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGFjZS1zaHV0dGxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3BhY2Utc2h1dHRsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNsYWNrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2xhY2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbnZlbG9wZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbnZlbG9wZS1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13b3JkcHJlc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13b3JkcHJlc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vcGVuaWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1vcGVuaWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnN0aXR1dGlvbjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYmFuazpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdW5pdmVyc2l0eTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVuaXZlcnNpdHk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb3J0YXItYm9hcmQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyYWR1YXRpb24tY2FwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ3JhZHVhdGlvbi1jYXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15YWhvbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXlhaG9vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ29vZ2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVkZGl0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVkZGl0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVkZGl0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlZGRpdC1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHVtYmxldXBvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdHVtYmxldXBvbi1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHVtYmxldXBvbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0dW1ibGV1cG9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGVsaWNpb3VzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGVsaWNpb3VzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlnZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRpZ2c7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWVkLXBpcGVyLXBwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGllZC1waXBlci1wcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpZWQtcGlwZXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGllZC1waXBlci1hbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcnVwYWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kcnVwYWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qb29tbGE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1qb29tbGE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYW5ndWFnZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxhbmd1YWdlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmF4OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmF4OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVpbGRpbmc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idWlsZGluZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoaWxkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hpbGQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcG9vbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNwb29uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3ViZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWN1YmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jdWJlczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWN1YmVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVoYW5jZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJlaGFuY2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWhhbmNlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJlaGFuY2Utc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RlYW06YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGVhbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZWFtLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0ZWFtLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlY3ljbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZWN5Y2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXV0b21vYmlsZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY2FyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FiOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10YXhpOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGF4aTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyZWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmVlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3BvdGlmeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNwb3RpZnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZXZpYW50YXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGV2aWFudGFydDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvdW5kY2xvdWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3VuZGNsb3VkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGF0YWJhc2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kYXRhYmFzZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtcGRmLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLXBkZi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS13b3JkLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLXdvcmQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtZXhjZWwtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtZXhjZWwtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtcG93ZXJwb2ludC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS1wb3dlcnBvaW50LW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXBob3RvLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtcGljdHVyZS1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWltYWdlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLWltYWdlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXppcC1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWFyY2hpdmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtYXJjaGl2ZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1zb3VuZC1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWF1ZGlvLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLWF1ZGlvLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLW1vdmllLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtdmlkZW8tbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtdmlkZW8tbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtY29kZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS1jb2RlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aW5lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmluZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZGVwZW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb2RlcGVuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tanNmaWRkbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1qc2ZpZGRsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpZmUtYm91eTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tbGlmZS1idW95OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1saWZlLXNhdmVyOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zdXBwb3J0OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1saWZlLXJpbmc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saWZlLXJpbmc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaXJjbGUtby1ub3RjaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNpcmNsZS1vLW5vdGNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmE6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlc2lzdGFuY2U6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlYmVsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmViZWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZW1waXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZW1waXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdpdC1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1naXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15LWNvbWJpbmF0b3Itc3F1YXJlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS15Yy1zcXVhcmU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhY2tlci1uZXdzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFja2VyLW5ld3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZW5jZW50LXdlaWJvOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGVuY2VudC13ZWlibzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXFxOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13ZWNoYXQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXdlaXhpbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdlaXhpbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlbmQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhcGVyLXBsYW5lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGFwZXItcGxhbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZW5kLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhcGVyLXBsYW5lLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXBlci1wbGFuZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGlzdG9yeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhpc3Rvcnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaXJjbGUtdGhpbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNpcmNsZS10aGluOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhZGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGVhZGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFyYWdyYXBoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGFyYWdyYXBoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xpZGVyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNsaWRlcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGFyZS1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGFyZS1hbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGFyZS1hbHQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2hhcmUtYWx0LXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvbWI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib21iOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29jY2VyLWJhbGwtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZnV0Ym9sLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mdXRib2wtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR0eTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXR0eTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpbm9jdWxhcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iaW5vY3VsYXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1ZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsdWc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbGlkZXNoYXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2xpZGVzaGFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR3aXRjaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXR3aXRjaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXllbHA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15ZWxwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmV3c3BhcGVyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1uZXdzcGFwZXItbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpZmk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aWZpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsY3VsYXRvcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGN1bGF0b3I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXlwYWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXlwYWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGUtd2FsbGV0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ29vZ2xlLXdhbGxldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLXZpc2E6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYy12aXNhOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtbWFzdGVyY2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjLW1hc3RlcmNhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1kaXNjb3ZlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjLWRpc2NvdmVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtYW1leDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjLWFtZXg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1wYXlwYWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYy1wYXlwYWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1zdHJpcGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYy1zdHJpcGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWxsLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVsbC1zbGFzaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlbGwtc2xhc2gtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJlbGwtc2xhc2gtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYXNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJhc2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb3B5cmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb3B5cmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWF0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXllZHJvcHBlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV5ZWRyb3BwZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYWludC1icnVzaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhaW50LWJydXNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmlydGhkYXktY2FrZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJpcnRoZGF5LWNha2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcmVhLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJlYS1jaGFydDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpZS1jaGFydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpZS1jaGFydDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbmUtY2hhcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saW5lLWNoYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGFzdGZtOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGFzdGZtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGFzdGZtLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxhc3RmbS1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2dnbGUtb2ZmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdG9nZ2xlLW9mZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1vbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRvZ2dsZS1vbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpY3ljbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iaWN5Y2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW94aG9zdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWlveGhvc3Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdlbGxpc3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdlbGxpc3Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hla2VsOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zaGVxZWw6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWlsczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWlsczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lYW5wYXRoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWVhbnBhdGg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idXlzZWxsYWRzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnV5c2VsbGFkczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbm5lY3RkZXZlbG9wOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29ubmVjdGRldmVsb3A7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kYXNoY3ViZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRhc2hjdWJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9ydW1iZWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb3J1bWJlZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxlYW5wdWI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sZWFucHViOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VsbHN5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2VsbHN5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hpcnRzaW5idWxrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2hpcnRzaW5idWxrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2ltcGx5YnVpbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaW1wbHlidWlsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNreWF0bGFzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2t5YXRsYXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJ0LXBsdXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJ0LXBsdXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJ0LWFycm93LWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJ0LWFycm93LWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWFtb25kOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGlhbW9uZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoaXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGlwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1zZWNyZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2VyLXNlY3JldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vdG9yY3ljbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tb3RvcmN5Y2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RyZWV0LXZpZXc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdHJlZXQtdmlldzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYXJ0YmVhdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhlYXJ0YmVhdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlbnVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmVudXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lcmN1cnk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tZXJjdXJ5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW50ZXJzZXg6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYW5zZ2VuZGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJhbnNnZW5kZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFuc2dlbmRlci1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFuc2dlbmRlci1hbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12ZW51cy1kb3VibGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12ZW51cy1kb3VibGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzLWRvdWJsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hcnMtZG91YmxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmVudXMtbWFyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZlbnVzLW1hcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzLXN0cm9rZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hcnMtc3Ryb2tlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFycy1zdHJva2UtdjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hcnMtc3Ryb2tlLXY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzLXN0cm9rZS1oOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFycy1zdHJva2UtaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5ldXRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW5ldXRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlbmRlcmxlc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nZW5kZXJsZXNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFjZWJvb2stb2ZmaWNpYWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mYWNlYm9vay1vZmZpY2lhbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpbnRlcmVzdC1wOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGludGVyZXN0LXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aGF0c2FwcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdoYXRzYXBwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VydmVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2VydmVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlci1wbHVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci10aW1lczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXItdGltZXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3RlbDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYmVkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlhY29pbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZpYWNvaW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFpbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyYWluOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Vid2F5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3Vid2F5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVkaXVtOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWVkaXVtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWM6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXktY29tYmluYXRvcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXktY29tYmluYXRvcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9wdGluLW1vbnN0ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1vcHRpbi1tb25zdGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3BlbmNhcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1vcGVuY2FydDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4cGVkaXRlZHNzbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV4cGVkaXRlZHNzbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktNDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1mdWxsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmF0dGVyeS1mdWxsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS0zOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmF0dGVyeS10aHJlZS1xdWFydGVyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktMjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmF0dGVyeS1oYWxmOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS0xOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LXF1YXJ0ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXR0ZXJ5LXF1YXJ0ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LTA6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktZW1wdHk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXR0ZXJ5LWVtcHR5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW91c2UtcG9pbnRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1vdXNlLXBvaW50ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pLWN1cnNvcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWktY3Vyc29yOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb2JqZWN0LWdyb3VwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb2JqZWN0LWdyb3VwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb2JqZWN0LXVuZ3JvdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1vYmplY3QtdW5ncm91cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0aWNreS1ub3RlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RpY2t5LW5vdGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGlja3ktbm90ZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RpY2t5LW5vdGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLWpjYjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjLWpjYjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLWRpbmVycy1jbHViOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtZGluZXJzLWNsdWI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG9uZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNsb25lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFsYW5jZS1zY2FsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhbGFuY2Utc2NhbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3MtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhvdXJnbGFzcy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLTE6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1zdGFydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhvdXJnbGFzcy1zdGFydDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy0yOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3MtaGFsZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhvdXJnbGFzcy1oYWxmOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLTM6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1lbmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ob3VyZ2xhc3MtZW5kOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91cmdsYXNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1ncmFiLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcm9jay1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1yb2NrLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXN0b3AtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1wYXBlci1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1wYXBlci1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1zY2lzc29ycy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1zY2lzc29ycy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1saXphcmQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtbGl6YXJkLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXNwb2NrLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLXNwb2NrLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBvaW50ZXItbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtcG9pbnRlci1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1wZWFjZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1wZWFjZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhZGVtYXJrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJhZGVtYXJrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVnaXN0ZXJlZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlZ2lzdGVyZWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVhdGl2ZS1jb21tb25zOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3JlYXRpdmUtY29tbW9uczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdnOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2c7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nZy1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmlwYWR2aXNvcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyaXBhZHZpc29yOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb2Rub2tsYXNzbmlraTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9kbm9rbGFzc25pa2k7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vZG5va2xhc3NuaWtpLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9kbm9rbGFzc25pa2ktc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2V0LXBvY2tldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdldC1wb2NrZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aWtpcGVkaWEtdzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdpa2lwZWRpYS13OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2FmYXJpOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2FmYXJpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hyb21lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hyb21lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlyZWZveDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpcmVmb3g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vcGVyYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9wZXJhOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW50ZXJuZXQtZXhwbG9yZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbnRlcm5ldC1leHBsb3JlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR2OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10ZWxldmlzaW9uOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGVsZXZpc2lvbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbnRhbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbnRhbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LTUwMHB4OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItNTAwcHg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbWF6b246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbWF6b247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1wbHVzLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYWxlbmRhci1wbHVzLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1taW51cy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FsZW5kYXItbWludXMtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLXRpbWVzLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYWxlbmRhci10aW1lcy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItY2hlY2stbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGVuZGFyLWNoZWNrLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmR1c3RyeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWluZHVzdHJ5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFwLXBpbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hcC1waW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXAtc2lnbnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXAtc2lnbnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXAtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hcC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudGluZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbW1lbnRpbmc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50aW5nLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb21tZW50aW5nLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3V6ejpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhvdXp6OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmltZW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12aW1lbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsYWNrLXRpZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJsYWNrLXRpZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbnRpY29uczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvbnRpY29uczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZGRpdC1hbGllbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlZGRpdC1hbGllbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVkZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lZGdlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlZGl0LWNhcmQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3JlZGl0LWNhcmQtYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29kaWVwaWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb2RpZXBpZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vZHg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tb2R4OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9ydC1hd2Vzb21lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9ydC1hd2Vzb21lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNiOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNiOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJvZHVjdC1odW50OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcHJvZHVjdC1odW50OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWl4Y2xvdWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1taXhjbG91ZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNjcmliZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNjcmliZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhdXNlLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhdXNlLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhdXNlLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGF1c2UtY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9wLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0b3AtY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcC1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0b3AtY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG9wcGluZy1iYWc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaG9wcGluZy1iYWc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG9wcGluZy1iYXNrZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaG9wcGluZy1iYXNrZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYXNodGFnOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFzaHRhZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsdWV0b290aDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJsdWV0b290aDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJsdWV0b290aC1iOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmx1ZXRvb3RoLWI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZXJjZW50OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGVyY2VudDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdGxhYjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdpdGxhYjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdwYmVnaW5uZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13cGJlZ2lubmVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td3Bmb3JtczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdwZm9ybXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbnZpcmE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbnZpcmE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bml2ZXJzYWwtYWNjZXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdW5pdmVyc2FsLWFjY2VzczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdoZWVsY2hhaXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2hlZWxjaGFpci1hbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdWVzdGlvbi1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXF1ZXN0aW9uLWNpcmNsZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxpbmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ibGluZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF1ZGlvLWRlc2NyaXB0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXVkaW8tZGVzY3JpcHRpb247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2x1bWUtY29udHJvbC1waG9uZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZvbHVtZS1jb250cm9sLXBob25lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnJhaWxsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJyYWlsbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hc2wtaW50ZXJwcmV0aW5nOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGVhZm5lc3M6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhcmQtb2YtaGVhcmluZzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZGVhZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRlYWY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbGlkZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdsaWRlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xpZGUtZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdsaWRlLWc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduaW5nOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduLWxhbmd1YWdlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2lnbi1sYW5ndWFnZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvdy12aXNpb246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sb3ctdmlzaW9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlhZGVvOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmlhZGVvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmlhZGVvLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZpYWRlby1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbmFwY2hhdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNuYXBjaGF0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25hcGNoYXQtZ2hvc3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zbmFwY2hhdC1naG9zdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNuYXBjaGF0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNuYXBjaGF0LXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpZWQtcGlwZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waWVkLXBpcGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlyc3Qtb3JkZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maXJzdC1vcmRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlvYXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteW9hc3Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVtZWlzbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aGVtZWlzbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGUtcGx1cy1jaXJjbGU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wbHVzLW9mZmljaWFsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ29vZ2xlLXBsdXMtb2ZmaWNpYWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZm9udC1hd2Vzb21lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9udC1hd2Vzb21lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZHNoYWtlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kc2hha2UtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlLW9wZW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbnZlbG9wZS1vcGVuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtb3Blbi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZW52ZWxvcGUtb3Blbi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlub2RlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlub2RlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRkcmVzcy1ib29rOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYWRkcmVzcy1ib29rOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRkcmVzcy1ib29rLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hZGRyZXNzLWJvb2stbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZjYXJkOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1hZGRyZXNzLWNhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hZGRyZXNzLWNhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12Y2FyZC1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1hZGRyZXNzLWNhcmQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFkZHJlc3MtY2FyZC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2VyLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2VyLWNpcmNsZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlci1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taWQtYmFkZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pZC1iYWRnZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyaXZlcnMtbGljZW5zZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taWQtY2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWlkLWNhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcml2ZXJzLWxpY2Vuc2UtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taWQtY2FyZC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaWQtY2FyZC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVvcmE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xdW9yYTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZyZWUtY29kZS1jYW1wOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZnJlZS1jb2RlLWNhbXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZWxlZ3JhbTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRlbGVncmFtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItNDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLWZ1bGw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aGVybW9tZXRlci1mdWxsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItMzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItdGhyZWUtcXVhcnRlcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aGVybW9tZXRlci10aHJlZS1xdWFydGVyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLTI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLWhhbGY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aGVybW9tZXRlci1oYWxmOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItMTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItcXVhcnRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoZXJtb21ldGVyLXF1YXJ0ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci0wOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci1lbXB0eTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoZXJtb21ldGVyLWVtcHR5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hvd2VyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2hvd2VyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0aHR1YjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tczE1OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXRoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmF0aDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBvZGNhc3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wb2RjYXN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LW1heGltaXplOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2luZG93LW1heGltaXplOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LW1pbmltaXplOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2luZG93LW1pbmltaXplOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LXJlc3RvcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aW5kb3ctcmVzdG9yZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpbWVzLXJlY3RhbmdsZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LWNsb3NlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2luZG93LWNsb3NlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGltZXMtcmVjdGFuZ2xlLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpbmRvdy1jbG9zZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2luZG93LWNsb3NlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYW5kY2FtcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhbmRjYW1wOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JhdjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdyYXY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ldHN5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXRzeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWltZGI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbWRiOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmF2ZWxyeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJhdmVscnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lZXJjYXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZWVyY2FzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvY2hpcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1pY3JvY2hpcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNub3dmbGFrZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc25vd2ZsYWtlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdXBlcnBvd2VyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN1cGVycG93ZXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td3BleHBsb3JlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdwZXhwbG9yZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWV0dXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tZWV0dXA7IH1cbiIsIi8vIFNjcmVlbiBSZWFkZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5zci1vbmx5IHsgQGluY2x1ZGUgc3Itb25seSgpOyB9XG4uc3Itb25seS1mb2N1c2FibGUgeyBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpOyB9XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG4vKiFcbiAqIEhhbWJ1cmdlcnNcbiAqIEBkZXNjcmlwdGlvbiBUYXN0eSBDU1MtYW5pbWF0ZWQgaGFtYnVyZ2Vyc1xuICogQGF1dGhvciBKb25hdGhhbiBTdWggQGpvbnN1aFxuICogQHNpdGUgaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnNcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9qb25zdWgvaGFtYnVyZ2Vyc1xuICovXG5cbi8vIFNldHRpbmdzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJGhhbWJ1cmdlci1wYWRkaW5nLXggICAgICAgICAgIDogMTVweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItcGFkZGluZy15ICAgICAgICAgICA6IDE1cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLXdpZHRoICAgICAgICAgOiA0MHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgICAgICAgIDogNHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICAgICAgIDogNnB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1jb2xvciAgICAgICAgIDogIzAwMCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cyA6IDRweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItaG92ZXItb3BhY2l0eSAgICAgICA6IDAuNyAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWxheWVyLWNvbG9yICA6ICRoYW1idXJnZXItbGF5ZXItY29sb3IgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1vcGFjaXR5OiAkaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHkgIWRlZmF1bHQ7XG5cbi8vIFRvIHVzZSBDU1MgZmlsdGVycyBhcyB0aGUgaG92ZXIgZWZmZWN0IGluc3RlYWQgb2Ygb3BhY2l0eSxcbi8vIHNldCAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgYXMgdHJ1ZSBhbmRcbi8vIGNoYW5nZSB0aGUgdmFsdWUgb2YgJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgYWNjb3JkaW5nbHkuXG4kaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgICA6IGZhbHNlICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgICAgICAgOiBvcGFjaXR5KDUwJSkgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1maWx0ZXI6ICRoYW1idXJnZXItaG92ZXItZmlsdGVyICFkZWZhdWx0O1xuXG4vLyBUeXBlcyAoUmVtb3ZlIG9yIGNvbW1lbnQgb3V0IHdoYXQgeW91IGRvbuKAmXQgbmVlZClcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kaGFtYnVyZ2VyLXR5cGVzOiAoXG4gIDNkeCxcbiAgM2R4LXIsXG4gIDNkeSxcbiAgM2R5LXIsXG4gIDNkeHksXG4gIDNkeHktcixcbiAgYXJyb3csXG4gIGFycm93LXIsXG4gIGFycm93YWx0LFxuICBhcnJvd2FsdC1yLFxuICBhcnJvd3R1cm4sXG4gIGFycm93dHVybi1yLFxuICBib3JpbmcsXG4gIGNvbGxhcHNlLFxuICBjb2xsYXBzZS1yLFxuICBlbGFzdGljLFxuICBlbGFzdGljLXIsXG4gIGVtcGhhdGljLFxuICBlbXBoYXRpYy1yLFxuICBtaW51cyxcbiAgc2xpZGVyLFxuICBzbGlkZXItcixcbiAgc3BpbixcbiAgc3Bpbi1yLFxuICBzcHJpbmcsXG4gIHNwcmluZy1yLFxuICBzdGFuZCxcbiAgc3RhbmQtcixcbiAgc3F1ZWV6ZSxcbiAgdm9ydGV4LFxuICB2b3J0ZXgtclxuKSAhZGVmYXVsdDtcblxuLy8gQmFzZSBIYW1idXJnZXIgKFdlIG5lZWQgdGhpcylcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0IFwiYmFzZVwiO1xuXG4vLyBIYW1idXJnZXIgdHlwZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0IFwidHlwZXMvM2R4XCI7XG5AaW1wb3J0IFwidHlwZXMvM2R4LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHlcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHktclwiO1xuQGltcG9ydCBcInR5cGVzLzNkeHlcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHh5LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd1wiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd2FsdFwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93YWx0LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd3R1cm5cIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd3R1cm4tclwiO1xuQGltcG9ydCBcInR5cGVzL2JvcmluZ1wiO1xuQGltcG9ydCBcInR5cGVzL2NvbGxhcHNlXCI7XG5AaW1wb3J0IFwidHlwZXMvY29sbGFwc2UtclwiO1xuQGltcG9ydCBcInR5cGVzL2VsYXN0aWNcIjtcbkBpbXBvcnQgXCJ0eXBlcy9lbGFzdGljLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9lbXBoYXRpY1wiO1xuQGltcG9ydCBcInR5cGVzL2VtcGhhdGljLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9taW51c1wiO1xuQGltcG9ydCBcInR5cGVzL3NsaWRlclwiO1xuQGltcG9ydCBcInR5cGVzL3NsaWRlci1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3BpblwiO1xuQGltcG9ydCBcInR5cGVzL3NwaW4tclwiO1xuQGltcG9ydCBcInR5cGVzL3NwcmluZ1wiO1xuQGltcG9ydCBcInR5cGVzL3NwcmluZy1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3RhbmRcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zdGFuZC1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3F1ZWV6ZVwiO1xuQGltcG9ydCBcInR5cGVzL3ZvcnRleFwiO1xuQGltcG9ydCBcInR5cGVzL3ZvcnRleC1yXCI7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDb29raW5nIHVwIGFkZGl0aW9uYWwgdHlwZXM6XG4vL1xuLy8gVGhlIFNhc3MgZm9yIGVhY2ggaGFtYnVyZ2VyIHR5cGUgc2hvdWxkIGJlIG5lc3RlZFxuLy8gaW5zaWRlIGFuIEBpZiBkaXJlY3RpdmUgdG8gY2hlY2sgd2hldGhlciBvciBub3Rcbi8vIGl0IGV4aXN0cyBpbiAkaGFtYnVyZ2VyLXR5cGVzIHNvIG9ubHkgdGhlIENTUyBmb3Jcbi8vIGluY2x1ZGVkIHR5cGVzIGFyZSBnZW5lcmF0ZWQuXG4vL1xuLy8gZS5nLiBoYW1idXJnZXJzL3R5cGVzL19uZXctdHlwZS5zY3NzXG4vL1xuLy8gQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIG5ldy10eXBlKSB7XG4vLyAgIC5oYW1idXJnZXItLW5ldy10eXBlIHtcbi8vICAgICAuLi5cbi8vICAgfVxuLy8gfVxuIiwiLy8gSGFtYnVyZ2VyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLmhhbWJ1cmdlciB7XG4gIHBhZGRpbmc6ICRoYW1idXJnZXItcGFkZGluZy15ICRoYW1idXJnZXItcGFkZGluZy14O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCBmaWx0ZXI7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuXG4gIC8vIE5vcm1hbGl6ZSAoPGJ1dHRvbj4pXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAmOmhvdmVyIHtcbiAgICBAaWYgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyID09IHRydWUge1xuICAgICAgZmlsdGVyOiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgb3BhY2l0eTogJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gICYuaXMtYWN0aXZlIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBpZiAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgPT0gdHJ1ZSB7XG4gICAgICAgIGZpbHRlcjogJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItZmlsdGVyO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBvcGFjaXR5OiAkaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1vcGFjaXR5O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXIsXG4gICAgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuICAgIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItYWN0aXZlLWxheWVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uaGFtYnVyZ2VyLWJveCB7XG4gIHdpZHRoOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoO1xuICBoZWlnaHQ6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMyArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFtYnVyZ2VyLWlubmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAvIC0yO1xuXG4gICYsXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIHdpZHRoOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoO1xuICAgIGhlaWdodDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhhbWJ1cmdlci1sYXllci1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAkaGFtYnVyZ2VyLWxheWVyLWJvcmRlci1yYWRpdXM7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgfVxuXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xO1xuICB9XG59XG4iLCIkaGFtYnVyZ2VyLXBhZGRpbmcteCAgICAgICAgICAgICAgICAgICAgICAgOiAxMHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1wYWRkaW5nLXkgICAgICAgICAgICAgICAgICAgICAgIDogMTBweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItd2lkdGggICAgICAgICAgICAgICAgICAgICA6IDIycHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAgICAgICAgICAgICAgICAgICAgOiAycHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgICAgICAgICAgICAgICAgICAgOiA1cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWNvbG9yICAgICAgICAgICAgICAgICAgICAgOiAjZmZmICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzICAgICAgICAgICAgIDogNHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5ICAgICAgICAgICAgICAgICAgIDogMC43ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci10cmFuc2l0aW9uLWR1cmF0aW9uICAgICAgIDogMC4xNXMgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWhvdmVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWRlZmF1bHQ7XG5cbi8vIFRvIHVzZSBDU1MgZmlsdGVycyBhcyB0aGUgaG92ZXIgZWZmZWN0IGluc3RlYWQgb2Ygb3BhY2l0eSxcbi8vIHNldCAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgYXMgdHJ1ZSBhbmRcbi8vIGNoYW5nZSB0aGUgdmFsdWUgb2YgJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgYWNjb3JkaW5nbHkuXG4kaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgICA6IGZhbHNlICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgICAgICAgOiBvcGFjaXR5KDUwJSkgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1maWx0ZXI6ICRoYW1idXJnZXItaG92ZXItZmlsdGVyICFkZWZhdWx0O1xuXG4vLyBUeXBlcyAoUmVtb3ZlIG9yIGNvbW1lbnQgb3V0IHdoYXQgeW91IGRvbuKAmXQgbmVlZClcbiRoYW1idXJnZXItdHlwZXM6IChcbi8vIDNkeCxcbi8vIDNkeC1yLFxuLy8gM2R5LFxuLy8gM2R5LXIsXG4vLyAzZHh5LFxuLy8gM2R4eS1yLFxuLy8gYXJyb3csXG4vLyBhcnJvdy1yLFxuLy8gYXJyb3dhbHQsXG4vLyBhcnJvd2FsdC1yLFxuLy8gYXJyb3d0dXJuLFxuLy8gYXJyb3d0dXJuLXIsXG4vLyBib3JpbmcsXG4vLyBjb2xsYXBzZSxcbi8vIGNvbGxhcHNlLXIsXG4vLyBlbGFzdGljLFxuLy8gZWxhc3RpYy1yLFxuLy8gZW1waGF0aWMsXG4vLyBlbXBoYXRpYy1yLFxuLy8gbWludXMsXG4vLyBzbGlkZXIsXG4vLyBzbGlkZXItcixcbi8vIHNwcmluZyxcbi8vIHNwcmluZy1yLFxuc3RhbmQsXG5zdGFuZC1yLFxuLy8gc3Bpbixcbi8vIHNwaW4tcixcbi8vIHNxdWVlemUsXG4vLyB2b3J0ZXgsXG4vLyB2b3J0ZXgtclxuKSAhZGVmYXVsdDtcbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzdGFuZCkge1xuICAvKlxuICAgKiBTdGFuZFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tc3RhbmQge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4wNzVzIGxpbmVhcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjA3NXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMDc1cyBlYXNlLWluLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjE1cyBsaW5lYXI7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3RhbmQtcikge1xuICAvKlxuICAgKiBTdGFuZCBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zdGFuZC1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMDc1cyBsaW5lYXI7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjA3NXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTVzIGxpbmVhcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQ29yZVxuICovXG4ub3dsLWNhcm91c2VsIHtcblx0ZGlzcGxheTogbm9uZTtcblx0d2lkdGg6IDEwMCU7XG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdC8qIHBvc2l0aW9uIHJlbGF0aXZlIGFuZCB6LWluZGV4IGZpeCB3ZWJraXQgcmVuZGVyaW5nIGZvbnRzIGlzc3VlICovXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMTtcblxuXHQub3dsLXN0YWdlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0LW1zLXRvdWNoLWFjdGlvbjogcGFuLVk7XG5cdFx0dG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG5cdFx0LW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IC8qIGZpeCBmaXJlZm94IGFuaW1hdGlvbiBnbGl0Y2ggKi9cblx0fVxuXG5cdC5vd2wtc3RhZ2U6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiLlwiO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGNsZWFyOiBib3RoO1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHRsaW5lLWhlaWdodDogMDtcblx0XHRoZWlnaHQ6IDA7XG5cdH1cblxuXHQub3dsLXN0YWdlLW91dGVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHQvKiBmaXggZm9yIGZsYXNoaW5nIGJhY2tncm91bmQgKi9cblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG5cdH1cblxuXHQub3dsLXdyYXBwZXIsXG5cdC5vd2wtaXRlbXtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG5cdFx0LW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0XHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG5cdH1cblxuXHQub3dsLWl0ZW0ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtaW4taGVpZ2h0OiAxcHg7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHQtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG5cdH1cblx0Lm93bC1pdGVtIGltZyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHQub3dsLW5hdi5kaXNhYmxlZCxcblx0Lm93bC1kb3RzLmRpc2FibGVkIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0Lm93bC1uYXYgLm93bC1wcmV2LFxuXHQub3dsLW5hdiAub3dsLW5leHQsXG5cdC5vd2wtZG90IHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdH1cblxuXHQub3dsLW5hdiBidXR0b24ub3dsLXByZXYsXG5cdC5vd2wtbmF2IGJ1dHRvbi5vd2wtbmV4dCxcblx0YnV0dG9uLm93bC1kb3Qge1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0Y29sb3I6IGluaGVyaXQ7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdHBhZGRpbmc6MCFpbXBvcnRhbnQ7XG5cdFx0Zm9udDogaW5oZXJpdDtcblx0fVxuXG5cdCYub3dsLWxvYWRlZCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQmLm93bC1sb2FkaW5nIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0Ji5vd2wtaGlkZGVuIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG5cblx0Ji5vd2wtcmVmcmVzaCAub3dsLWl0ZW0ge1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0fVxuXG5cdCYub3dsLWRyYWcgLm93bC1pdGVtIHtcblx0XHR0b3VjaC1hY3Rpb246IHBhbi15O1xuXHRcdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdH1cblxuXHQmLm93bC1ncmFiIHtcblx0XHRjdXJzb3I6IG1vdmU7XG5cdFx0Y3Vyc29yOiBncmFiO1xuXHR9XG5cblx0Ji5vd2wtcnRsIHtcblx0XHRkaXJlY3Rpb246IHJ0bDtcblx0fVxuXG5cdCYub3dsLXJ0bCAub3dsLWl0ZW0ge1xuXHRcdGZsb2F0OiByaWdodDtcblx0fVxufVxuXG4vKiBObyBKcyAqL1xuLm5vLWpzIC5vd2wtY2Fyb3VzZWwge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbiIsIi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQW5pbWF0ZSBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbHtcblx0LmFuaW1hdGVkIHtcblx0XHRhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcblx0XHRhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuXHR9XG5cdC5vd2wtYW5pbWF0ZWQtaW4ge1xuXHRcdHotaW5kZXg6IDA7XG5cdH1cblx0Lm93bC1hbmltYXRlZC1vdXQge1xuXHRcdHotaW5kZXg6IDE7XG5cdH1cblx0LmZhZGVPdXQge1xuXHRcdGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xuXHR9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG5cdDAlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cblx0MTAwJSB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuIiwiLypcbiAqIFx0T3dsIENhcm91c2VsIC0gQXV0byBIZWlnaHQgUGx1Z2luXG4gKi9cblxuLm93bC1oZWlnaHQge1xuXHR0cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG59XG4iLCIvKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBMYXp5IExvYWQgUGx1Z2luXG4gKi9cblxuLm93bC1jYXJvdXNlbCB7XG5cdC5vd2wtaXRlbSB7XG5cdFx0Lm93bC1sYXp5IHtcblx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuXHRcdH1cblxuXHRcdC8qKlxuXHRcdFx0VGhpcyBpcyBpbnRyb2R1Y2VkIGR1ZSB0byBhIGJ1ZyBpbiBJRTExIHdoZXJlIGxhenkgbG9hZGluZyBjb21iaW5lZCB3aXRoIGF1dG9oZWlnaHQgcGx1Z2luIGNhdXNlcyBhIHdyb25nXG5cdFx0XHRjYWxjdWxhdGlvbiBvZiB0aGUgaGVpZ2h0IG9mIHRoZSBvd2wtaXRlbSB0aGF0IGJyZWFrcyBwYWdlIGxheW91dHNcblx0XHQgKi9cblx0XHQub3dsLWxhenlbc3JjXj1cIlwiXSwgLm93bC1sYXp5Om5vdChbc3JjXSkge1xuXHRcdFx0bWF4LWhlaWdodDogMDtcblx0XHR9XG5cblx0XHRpbWcub3dsLWxhenkge1xuXHRcdFx0dHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcblx0XHR9XG5cdH1cbn1cblxuIiwiJG93bC1pbWFnZS1wYXRoOiBcIlwiICFkZWZhdWx0O1xuXG4vKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBWaWRlbyBQbHVnaW5cbiAqL1xuXG4ub3dsLWNhcm91c2Vse1xuXHQub3dsLXZpZGVvLXdyYXBwZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0YmFja2dyb3VuZDogIzAwMDtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheS1pY29uIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0aGVpZ2h0OiA4MHB4O1xuXHRcdHdpZHRoOiA4MHB4O1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR0b3A6IDUwJTtcblx0XHRtYXJnaW4tbGVmdDogLTQwcHg7XG5cdFx0bWFyZ2luLXRvcDogLTQwcHg7XG5cdFx0YmFja2dyb3VuZDogdXJsKFwiI3skb3dsLWltYWdlLXBhdGh9b3dsLnZpZGVvLnBsYXkucG5nXCIpIG5vLXJlcGVhdDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0ei1pbmRleDogMTtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTAwbXMgZWFzZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheS1pY29uOmhvdmVyIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXRuLFxuXHQub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby1wbGF5LWljb24ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQub3dsLXZpZGVvLXRuIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tZnJhbWUge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuIiwiLmZlYXRoZXJsaWdodC1jbG9zZS1pY29uIHtcblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogbm9uZTtcblx0fVxufVxuIiwiLy8gIEZvdW5kYXRpb24gZm9yIFNpdGVzIFNldHRpbmdzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAgMjAuIEZvcm1zXG4vLyAgMjEuIExhYmVsXG4vLyAgMjIuIE1lZGlhIE9iamVjdFxuLy8gIDIzLiBNZW51XG4vLyAgMjQuIE1ldGVyXG4vLyAgMjUuIE9mZi1jYW52YXNcbi8vICAyNi4gT3JiaXRcbi8vICAyNy4gUGFnaW5hdGlvblxuLy8gIDI4LiBQcm9ncmVzcyBCYXJcbi8vICAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAgMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vICAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vICAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAgNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vICA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vICA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDQ3LiBSZXZlYWxcbi8vICA0OC4gU2xpZGVyXG4vLyAgNDkuIFN3aXRjaFxuLy8gIDUwLiBUYWJsZVxuLy8gIDUxLiBUYWJzXG4vLyAgNTIuIFRodW1ibmFpbFxuLy8gIDUzLiBUaXRsZSBCYXJcbi8vICA1NC4gVG9vbHRpcFxuLy8gIDU1LiBUb3AgQmFyXG4vLyAgNTYuIFh5IEdyaWRcblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gMS4gR2xvYmFsXG4vLyAtLS0tLS0tLS1cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCU7XG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMzQwKTtcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xuXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMwNDMyNjMsXG4gIHNlY29uZGFyeTogI0ZEQzQwMCxcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNhZDAwMzEsXG4pO1xuXG4vKipcbiAqIEJyYW5kIENvbG9yc1xuICogSW1wb3J0YW50OiBJZiBjaGFuZ2luZyB0aGVtZSBjb2xvdXJzLCByZW1lbWJlciB0byBjaGFuZ2UgdGhlbSBpbiB0aGUgRUxGIGNoaWxkIHRoZW1lIHRvbyBmb3Igc3RyaW5nIHJlcGxhY2VtZW50XG4gKi9cbiRwcmltYXJ5LW9uZTogIzA0MzI2MztcbiRwcmltYXJ5LXRocmVlOiAjMEY1ODlBO1xuXG4vKiBvbGQgc3R5bGluZyBmYWxsYmFjayAqL1xuJHByaW1hcnktdHdvOiAkcHJpbWFyeS10aHJlZTtcblxuJHNlY29uZGFyeS1vbmU6ICNGREM0MDA7XG5cbiRlcnMtYXp1ZS1ibHVlOiAjNDU5NUU2O1xuJGJvcmRlcjogI2U0ZTVlOTtcbiRidWxsZXQtYmx1ZTogIzY0OUFEQjtcblxuJGJsYWNrOiAjMDAwO1xuJGRhcmtlc3QtZ3JheTogJGJsYWNrO1xuJGRhcmtlci1ncmF5OiAjNTI1MjQ1O1xuJGRhcmstZ3JheTogIzcwNzA3MDtcbiRtZWRpdW0tZ3JheTogI0IxQjFCMTtcbiRsaWdodC1ncmF5OiAjRTRFNEU0O1xuJGxpZ2h0ZXItZ3JheTogI0YwRjBGMDtcbiRsaWdodGVzdC1ncmF5OiAjRjRGNEY0O1xuJHdoaXRlOiAjRkZGO1xuJGJnLWdyZXk6ICRsaWdodGVzdC1ncmF5O1xuXG4kY2FwdGlvbi1ncmV5OiAjNzY3MTc1O1xuXG4kdGFiLWNvbG91cjogJGxpZ2h0ZXN0LWdyYXk7XG4kZm9vdGVyLWJyZWFrOiAjODY4Njg2O1xuJHR5cG9ncmFwaHk6ICM4OTg5ODk7XG5cbiBcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRib2R5LWZvbnQtY29sb3I6ICRkYXJrZXItZ3JheTtcbiRib2R5LWZvbnQtZmFtaWx5OiAnQXZlbmlyIExUIFcwMV82NSBNZWRpdW0xNDc1NTMyJywgc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDIwcHg7XG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xuJGdsb2JhbC1yYWRpdXM6IDVweDtcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xuJGdsb2JhbC1mbGV4Ym94OiB0cnVlO1xuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvO1xuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMDtcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcbiRwcmludC1ocmVmczogZmFsc2U7XG5cbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuLy8gMi4gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbik7XG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKTtcblxuLy8gMy4gVGhlIEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRncmlkLWNvbHVtbi1jb3VudDogMTI7XG4kZ3JpZC1jb2x1bW4tZ3V0dGVyOiAoXG4gIHNtYWxsOiAyMHB4LFxuICBtZWRpdW06IDMwcHgsXG4pO1xuJGdyaWQtY29sdW1uLWFsaWduLWVkZ2U6IHRydWU7XG4kZ3JpZC1jb2x1bW4tYWxpYXM6ICdjb2x1bW5zJztcbiRibG9jay1ncmlkLW1heDogODtcblxuLy8gNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cblxuJGhlYWRlci1mb250LWZhbWlseTogJ0F2ZW5pciBMVCBXMDFfODUgSGVhdnkxNDc1NTQ0JywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogJGJvZHktZm9udC1mYW1pbHk7XG4kaGVhZGVyLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAoJ2ZzJzogMzgsICdsaCc6IDQwLCAnbWInOiAyMywgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDInOiAoJ2ZzJzogMzAsICdsaCc6IDMyLCAnbWInOiAyMSwgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDMnOiAoJ2ZzJzogMjUsICdsaCc6IDI2LCAnbWInOiAxOSwgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDQnOiAoJ2ZzJzogMTgsICdsaCc6IDI0LCAnbWInOiAxNiwgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDUnOiAoJ2ZzJzogMTYsICdsaCc6IDI0LCAnbWInOiAxNiwgJ2Z3Jzogbm9ybWFsKSxcbiAgICAnaDYnOiAoJ2ZzJzogMTYsICdsaCc6IDI0LCAnbWInOiAxNiwgJ2Z3Jzogbm9ybWFsKSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmcyc6IDQyLCAnbGgnOiA0OCwgJ21iJzogMjYsICdmdyc6IG5vcm1hbCksXG4gICAgJ2gyJzogKCdmcyc6IDM0LCAnbGgnOiA0MiwgJ21iJzogMjQsICdmdyc6IG5vcm1hbCksXG4gICAgJ2gzJzogKCdmcyc6IDI2LCAnbGgnOiAzMiwgJ21iJzogMjIsICdmdyc6IG5vcm1hbCksXG4gICAgJ2g0JzogKCdmcyc6IDIyLCAnbGgnOiAyOCwgJ21iJzogMjAsICdmdyc6IG5vcm1hbCksXG4gICAgJ2g1JzogKCdmcyc6IDE4LCAnbGgnOiAyNCwgJ21iJzogMjAsICdmdyc6IG5vcm1hbCksXG4gICAgJ2g2JzogKCdmcyc6IDE2LCAnbGgnOiAyNCwgJ21iJzogMjAsICdmdyc6IG5vcm1hbCksXG4gICksXG4gIGxhcmdlOiAoXG4gICAgJ2gxJzogKCdmcyc6IDQ3LCAnbGgnOiA1MiwgJ21iJzogMjgsICdmdyc6IG5vcm1hbCksXG4gICAgJ2gyJzogKCdmcyc6IDM4LCAnbGgnOiA0NSwgJ21iJzogMjQsICdmdyc6IG5vcm1hbCksXG4gICAgJ2gzJzogKCdmcyc6IDMwLCAnbGgnOiAzNSwgJ21iJzogMjIsICdmdyc6IG5vcm1hbCksXG4gICAgJ2g0JzogKCdmcyc6IDI1LCAnbGgnOiAyOCwgJ21iJzogMjAsICdmdyc6IG5vcm1hbCksXG4gICAgJ2g1JzogKCdmcyc6IDIwLCAnbGgnOiAyNiwgJ21iJzogMjAsICdmdyc6IG5vcm1hbCksXG4gICAgJ2g2JzogKCdmcyc6IDE2LCAnbGgnOiAyNCwgJ21iJzogMjAsICdmdyc6IG5vcm1hbCksXG4gICksXG4pO1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJHNtYWxsLWZvbnQtc2l6ZTogODAlO1xuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNjtcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRjb2RlLWNvbG9yOiAkYmxhY2s7XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKTtcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LW9uZTtcbiRhbmNob3ItY29sb3ItaG92ZXI6ICRwcmltYXJ5LXR3bztcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjogdW5kZXJsaW5lO1xuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvO1xuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW07XG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW07XG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiRibG9ja3F1b3RlLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg4IDI4IDEgMjgpO1xuJGJsb2NrcXVvdGUtYm9yZGVyOiBub25lO1xuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCc7XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrO1xuXG4vLyA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNTtcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNjtcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheTtcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kc3RhdC1mb250LXNpemU6IDIuNXJlbTtcblxuLy8gNi4gQWJpZGVcbi8vIC0tLS0tLS0tXG5cbiRhYmlkZS1pbnB1dHM6IHRydWU7XG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDcuIEFjY29yZGlvblxuLy8gLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWU7XG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMCAxcmVtO1xuXG4vLyA4LiBBY2NvcmRpb24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDogbnVsbDtcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbDtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHg7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyA5LiBCYWRnZVxuLy8gLS0tLS0tLS1cblxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJhZGdlLWNvbG9yOiAkd2hpdGU7XG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbTtcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW07XG5cbi8vIDEwLiBCcmVhZGNydW1ic1xuLy8gLS0tLS0tLS0tLS0tLS0tXG5cbiRicmVhZGNydW1icy1tYXJnaW46IDA7XG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC41cmVtO1xuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW06ICc+JztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuXG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG5cbiRidXR0b24tZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4kYnV0dG9uLXBhZGRpbmc6IDEuMjVlbSAyLjhlbSAxLjI1ZW0gMS40ZW07XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LW9uZTtcbiRidXR0b24tYmFja2dyb3VuZC1ob3ZlcjogJHByaW1hcnktb25lO1xuJGJ1dHRvbi1jb2xvcjogJHByaW1hcnktb25lO1xuJGJ1dHRvbi1jb2xvci1hbHQ6ICR3aGl0ZTtcbiRidXR0b24tcmFkaXVzOiA1cHg7XG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweDtcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMS4xMjVyZW0sXG4gIHNtYWxsOiAxLjEyNXJlbSxcbiAgZGVmYXVsdDogMS4xMjVyZW0sXG4gIGxhcmdlOiAxLjEyNXJlbSxcbik7XG4kYnV0dG9uLXBhbGV0dGU6ICgpO1xuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAxO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJTtcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJTtcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlO1xuXG4vLyAxMy4gQ2FsbG91dFxuLy8gLS0tLS0tLS0tLS1cblxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSk7XG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDA7XG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtO1xuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xuXG4vLyAxNC4gQ2FyZFxuLy8gLS0tLS0tLS1cblxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRjYXJkLXNoYWRvdzogbm9uZTtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDE1LiBDbG9zZSBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbik7XG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcblxuLy8gMTYuIERyaWxsZG93blxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG4kZHJpbGxkb3duLWFycm93czogdHJ1ZTtcbiRkcmlsbGRvd24tcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDA7XG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcblxuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcbiRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZzogMS41cmVtO1xuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4O1xuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kO1xuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMDtcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudDtcblxuLy8gMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2O1xuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZTtcblxuLy8gMjAuIEZvcm1zXG4vLyAtLS0tLS0tLS1cblxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKTtcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKTtcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDMwKTtcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrO1xuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYztcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbTtcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2s7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44O1xuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG4kc2VsZWN0LXJhZGl1czogMDtcbiRpbnB1dC1jb2xvcjogJHByaW1hcnktb25lO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkZGFya2VyLWdyYXk7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuJGlucHV0LWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6IHRyYW5zcGFyZW50O1xuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LWJvcmRlcjogbm9uZTtcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICRpbnB1dC1ib3JkZXI7XG4kaW5wdXQtcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyA0KSAwO1xuJGlucHV0LXNoYWRvdzogbm9uZTtcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IG5vbmU7XG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZDtcbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XG4kaW5wdXQtcmFkaXVzOiAwO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIxLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG5cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kbGFiZWwtY29sb3I6ICRwcmltYXJ5LW9uZTtcbiRsYWJlbC1jb2xvci1hbHQ6ICR3aGl0ZTtcbiRsYWJlbC1wYWxldHRlOiAoKTtcbiRsYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiRsYWJlbC1wYWRkaW5nOiA1cHggMTRweDtcbiRsYWJlbC1yYWRpdXM6IDA7XG5cbi8vIDIyLiBNZWRpYSBPYmplY3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCU7XG5cbi8vIDIzLiBNZW51XG4vLyAtLS0tLS0tLVxuXG4kbWVudS1tYXJnaW46IDA7XG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRtZW51LWl0ZW1zLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJG1lbnUtc2ltcGxlLW1hcmdpbjogMXJlbTtcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGU7XG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG4kbWVudS1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJG1lbnUtc3RhdGUtYmFjay1jb21wYXQ6IHRydWU7XG4kbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdDogdHJ1ZTtcbiRtZW51LWljb25zLWJhY2stY29tcGF0OiB0cnVlO1xuXG4vLyAyNC4gTWV0ZXJcbi8vIC0tLS0tLS0tLVxuXG4kbWV0ZXItaGVpZ2h0OiAxcmVtO1xuJG1ldGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kbWV0ZXItYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG1ldGVyLWZpbGwtZ29vZDogJHN1Y2Nlc3MtY29sb3I7XG4kbWV0ZXItZmlsbC1tZWRpdW06ICR3YXJuaW5nLWNvbG9yO1xuJG1ldGVyLWZpbGwtYmFkOiAkYWxlcnQtY29sb3I7XG5cbi8vIDI1LiBPZmYtY2FudmFzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kb2ZmY2FudmFzLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweCxcbik7XG4kb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweCxcbik7XG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpO1xuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweDtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSk7XG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMTtcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTM7XG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xuXG4vLyAyNi4gT3JiaXRcbi8vIC0tLS0tLS0tLVxuXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTA7XG5cbi8vIDI3LiBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJHByaW1hcnktdGhyZWU7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6IG5vbmU7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogbm9uZTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHByaW1hcnktb25lO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRwcmltYXJ5LW9uZTtcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7XG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZTtcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcblxuLy8gMjguIFByb2dyZXNzIEJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAxcmVtO1xuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRwcm9ncmVzcy1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYXJyb3ctZGlyZWN0aW9uczogKFxuICBkb3duLFxuICB1cCxcbiAgcmlnaHQsXG4gIGxlZnRcbik7XG4kcHJvdG90eXBlLWFycm93LXNpemU6IDAuNDM3NXJlbTtcbiRwcm90b3R5cGUtYXJyb3ctY29sb3I6ICRibGFjaztcblxuLy8gMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXItYm94LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ub25lLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlcmVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXdpZHRoOiByZW0tY2FsYygxKTtcbiRwcm90b3R5cGUtYm9yZGVyLXR5cGU6IHNvbGlkO1xuJHByb3RvdHlwZS1ib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcblxuLy8gMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1kaXNwbGF5LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtZGlzcGxheTogKFxuICBpbmxpbmUsXG4gIGlubGluZS1ibG9jayxcbiAgYmxvY2ssXG4gIHRhYmxlLFxuICB0YWJsZS1jZWxsXG4pO1xuXG4vLyAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1mb250LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoNCk7XG4kcHJvdG90eXBlLWZvbnQtbm9ybWFsOiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kcHJvdG90eXBlLWZvbnQtYm9sZDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtbGlzdC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtdW5vcmRlcmVkOiAoXG4gIGRpc2MsXG4gIGNpcmNsZSxcbiAgc3F1YXJlXG4pO1xuJHByb3RvdHlwZS1zdHlsZS10eXBlLW9yZGVyZWQ6IChcbiAgZGVjaW1hbCxcbiAgbG93ZXItYWxwaGEsXG4gIGxvd2VyLWxhdGluLFxuICBsb3dlci1yb21hbixcbiAgdXBwZXItYWxwaGEsXG4gIHVwcGVyLWxhdGluLFxuICB1cHBlci1yb21hblxuKTtcblxuLy8gMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLW92ZXJmbG93LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtb3ZlcmZsb3c6IChcbiAgdmlzaWJsZSxcbiAgaGlkZGVuLFxuICBzY3JvbGxcbik7XG5cbi8vIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXBvc2l0aW9uOiAoXG4gIHN0YXRpYyxcbiAgcmVsYXRpdmUsXG4gIGFic29sdXRlLFxuICBmaXhlZFxuKTtcbiRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleDogOTc1O1xuXG4vLyAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXJvdW5kZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcblxuLy8gMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWFsaWduOiBjZW50ZXI7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1oZWlnaHQ6IHJlbS1jYWxjKDIpO1xuJHByb3RvdHlwZS1zZXBhcmF0b3Itd2lkdGg6IDNyZW07XG4kcHJvdG90eXBlLXNlcGFyYXRvci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLW1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyA0MC4gUHJvdG90eXBlIFNoYWRvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zaGFkb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsMCwwLC4xNiksXG4gICAgICAgICAgICAgICAgICAgICAgIDAgMnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xMik7XG5cbi8vIDQxLiBQcm90b3R5cGUgU2l6aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNpemluZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNpemluZzogKFxuICB3aWR0aCxcbiAgaGVpZ2h0XG4pO1xuJHByb3RvdHlwZS1zaXplczogKFxuICAyNTogMjUlLFxuICA1MDogNTAlLFxuICA3NTogNzUlLFxuICAxMDA6IDEwMCVcbik7XG5cbi8vIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc3BhY2luZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNwYWNlcnMtY291bnQ6IDM7XG5cbi8vIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWRlY29yYXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LWRlY29yYXRpb246IChcbiAgb3ZlcmxpbmUsXG4gIHVuZGVybGluZSxcbiAgbGluZS10aHJvdWdoLFxuKTtcblxuLy8gNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS10cmFuc2Zvcm1hdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtdHJhbnNmb3JtYXRpb246IChcbiAgbG93ZXJjYXNlLFxuICB1cHBlcmNhc2UsXG4gIGNhcGl0YWxpemVcbik7XG5cbi8vIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS11dGlsaXRpZXMtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuLy8gNDYuIFJlc3BvbnNpdmUgRW1iZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pO1xuXG4vLyA0Ny4gUmV2ZWFsXG4vLyAtLS0tLS0tLS0tXG5cbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlO1xuJHJldmVhbC13aWR0aDogNjAwcHg7XG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcmV2ZWFsLXppbmRleDogMTAwNTtcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSk7XG5cbi8vIDQ4LiBTbGlkZXJcbi8vIC0tLS0tLS0tLS1cblxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtO1xuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XG4kc2xpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHNsaWRlci1maWxsLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtd2lkdGg6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJHNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA0OS4gU3dpdGNoXG4vLyAtLS0tLS0tLS0tXG5cbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XG4kc3dpdGNoLWhlaWdodDogMnJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtO1xuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDUwLiBUYWJsZVxuLy8gLS0tLS0tLS0tXG5cbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkICRib3JkZXI7XG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XG4kdGFibGUtaG92ZXItc2NhbGU6IDIlO1xuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1pcy1zdHJpcGVkOiBmYWxzZTtcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6ICRsaWdodGVzdC1ncmF5O1xuJHRhYmxlLXN0cmlwZTogZXZlbjtcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogJHByaW1hcnktb25lO1xuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogJGJnLWdyZXk7XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6ICRiZy1ncmV5O1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJHdoaXRlO1xuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJHByaW1hcnktb25lO1xuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZTtcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW07XG5cbi8vIDUxLiBUYWJzXG4vLyAtLS0tLS0tLVxuXG4kdGFiLW1hcmdpbjogMDtcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheTtcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGU7XG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4kdGFiLWV4cGFuZC1tYXg6IDY7XG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXk7XG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gNTIuIFRodW1ibmFpbFxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZTtcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpO1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSk7XG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDUzLiBUaXRsZSBCYXJcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjaztcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXk7XG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuXG4vLyA1NC4gVG9vbHRpcFxuLy8gLS0tLS0tLS0tLS1cblxuJGhhcy10aXAtY3Vyc29yOiBoZWxwO1xuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXk7XG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlO1xuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbTtcbiR0b29sdGlwLW1heC13aWR0aDogMTByZW07XG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW07XG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NjtcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDU1LiBUb3AgQmFyXG4vLyAtLS0tLS0tLS0tLVxuXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuLy8gNTYuIFh5IEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiR4eS1ncmlkOiB0cnVlO1xuJGdyaWQtY29udGFpbmVyOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uczogMTI7XG5cbiRncmlkLW1hcmdpbi1ndXR0ZXJzOiAoXG4gIHNtYWxsOiAyNHB4LCAvLyAyMHB4XG4gIC8vbWVkaXVtOiAyNHB4LCAvLyAzMHB4XG4gIG1lZGl1bTogMjBweCAvLyBDbGllbnQgZmVlZGJhY2tcbik7XG5cbiRncmlkLXBhZGRpbmctZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnM7XG5cbi8vICRncmlkLWNvbnRhaW5lci1wYWRkaW5nOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnM7XG5cbiRncmlkLWNvbnRhaW5lci1wYWRkaW5nOiAoXG4gIHNtYWxsOiA0MHB4LFxuICBtZWRpdW06IDY0cHhcbik7XG5cbiRncmlkLWNvbnRhaW5lci1tYXg6ICRnbG9iYWwtd2lkdGg7XG4keHktYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIHB3IHByb3RlY3Qgc3R5bGluZ1xuLnB3LXByb3RlY3QgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbn0iLCIvKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4gKiBWZXJzaW9uIDYuNi4zXG4gKiBodHRwczovL2dldC5mb3VuZGF0aW9uXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuXG4vLyAtLS0gRGVwZW5kZW5jaWVzIC0tLVxuQGltcG9ydCAndmVuZG9yL25vcm1hbGl6ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvbWlzc2luZy1kZXBlbmRlbmNpZXMnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL3RydWUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvY29udGFpbic7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9wdXJnZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZW1vdmUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVwbGFjZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy90by1saXN0JztcblxuLy8gLS0tIFNldHRpbmdzIC0tLVxuLy8gaW1wb3J0IHlvdXIgb3duIGBzZXR0aW5nc2AgaGVyZSBvclxuLy8gaW1wb3J0IGFuZCBtb2RpZnkgdGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhyb3VnaFxuLy8gQGltcG9ydCAnc2V0dGluZ3Mvc2V0dGluZ3MnO1xuXG4vLyAtLS0gQ29tcG9uZW50cyAtLS1cbi8vIFV0aWxpdGllc1xuQGltcG9ydCAndXRpbC91dGlsJztcbi8vIEdsb2JhbCBzdHlsZXNcbkBpbXBvcnQgJ2dsb2JhbCc7XG5AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuXG4vLyBHcmlkc1xuQGltcG9ydCAnZ3JpZC9ncmlkJztcbkBpbXBvcnQgJ3h5LWdyaWQveHktZ3JpZCc7XG4vLyBHZW5lcmljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uLWdyb3VwJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2xvc2UtYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wcm9ncmVzcy1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGlkZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zd2l0Y2gnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJsZSc7XG4vLyBCYXNpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2JhZGdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYWxsb3V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FyZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2x0aXAnO1xuXG4vLyBDb250YWluZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhLW9iamVjdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmVzcG9uc2l2ZS1lbWJlZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51LWljb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RyaWxsZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUnO1xuXG4vLyBMYXlvdXQgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9vZmYtY2FudmFzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmV2ZWFsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RpY2t5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGl0bGUtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9wLWJhcic7XG5cbi8vIEhlbHBlcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxvYXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbGV4JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmlzaWJpbGl0eSc7XG5AaW1wb3J0ICdwcm90b3R5cGUvcHJvdG90eXBlJztcblxuXG5AbWl4aW4gZm91bmRhdGlvbi1ldmVyeXRoaW5nKFxuICAkZmxleDogdHJ1ZSxcbiAgJHByb3RvdHlwZTogZmFsc2UsXG4gICR4eS1ncmlkOiAkeHktZ3JpZFxuKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICBAaWYgJHh5LWdyaWQge1xuICAgICR4eS1ncmlkOiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvLyBHbG9iYWwgc3R5bGVzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuXG4gIC8vIEdyaWRzXG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICR4eS1ncmlkIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgLy8gQmFzaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG5cbiAgLy8gQ29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcblxuICAvLyBMYXlvdXQgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcblxuICAvLyBIZWxwZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcbiAgQGlmICRmbGV4IHsgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7IH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG4gIEBpZiAkcHJvdG90eXBlIHsgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlczsgfVxufVxuIiwiQG1peGluIGZvdW5kYXRpb24tbm9ybWFsaXplKCkge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLy8gRG9jdW1lbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuXG4gIGh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIH1cblxuICAvLyBTZWN0aW9uc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gIC8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvLyBHcm91cGluZyBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBUZXh0LWxldmVsIHNlbWFudGljc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gIC8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8vIDFcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgY29kZSxcbiAga2JkLFxuICBzYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICB9XG5cbiAgLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gIC8vIGFsbCBicm93c2Vycy5cblxuICBzdWIsXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIC8vIEVtYmVkZGVkIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuXG4gIGltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICB9XG5cbiAgLy8gRm9ybXNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMTAwJTsgLy8gMVxuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgbWFyZ2luOiAwOyAvLyAyXG4gIH1cblxuICAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgLy8gMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cblxuICBidXR0b24sXG4gIGlucHV0IHsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gIC8vIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cblxuICBidXR0b24sXG4gIHNlbGVjdCB7IC8vIDFcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG5cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBmaWVsZHNldCB7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAvLyAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gIC8vICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGxlZ2VuZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDFcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAzXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cblxuICBwcm9ncmVzcyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG5cbiAgdGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gIC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cblxuICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gMlxuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyXG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cblxuICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxuICAgIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgfVxuXG4gIC8vIEludGVyYWN0aXZlXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cblxuICBkZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cblxuICBzdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIH1cblxuICAvLyBNaXNjXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG5cbiAgW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBhbnRpYWxpYXNlZCB0eXBlLCB1c2luZyB0aGUgYC13ZWJraXQtZm9udC1zbW9vdGhpbmdgIGFuZCBgLW1vei1vc3gtZm9udC1zbW9vdGhpbmdgIENTUyBwcm9wZXJ0aWVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIG1hcmdpbiBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcGFkZGluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBvc2l0aW9uaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIG5vcm1hbCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIGJvbGQgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBlbGVtZW50cyB0aGF0IGhhdmUgYSBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1yYWRpdXM6IDAgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBDYW4gYmUgb3ZlcndyaXR0ZW4gYXQgaW5kaXZpZHVhbCBtZW51IGNvbXBvbmVudCBsZXZlbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIE5lc3RlZCBtYXJnaW4gZm9yIHN1Ym1lbnUuXG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHRleHQgZGlyZWN0aW9uIG9mIHRoZSBDU1MuIENhbiBiZSBlaXRoZXIgYGx0cmAgb3IgYHJ0bGAuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGZvciBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCBpdC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLWZsZXhib3g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVkIHJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIHByb3RvdHlwZXMgaWYgYXBwbGljYWJsZVxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJ1dHRvbiBjdXJzb3IncyB2YWx1ZSwgYGF1dG9gIGJ5IGRlZmF1bHRcbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG8gIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlIHRoYXQgY29udGFpbnMgdGhlIGZsZXgganVzdGlmeWluZyBvcHRpb25zXG4kLXpmLWZsZXgtanVzdGlmeTogLXpmLWZsZXgtanVzdGlmeSgkZ2xvYmFsLXRleHQtZGlyZWN0aW9uKTtcblxuLy8vIEdsb2JhbCB0b2xlcmFuY2UgZm9yIGNvbG9yIHBpY2sgY29udHJhc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgY29sb3JzXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXMge1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiAkZ2xvYmFsLWJ1dHRvbi1jdXJzb3I7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENyZWF0ZXMgYW4gaW5uZXIgYm94LXNoYWRvdyBmb3Igb25seSBvbmUgc2lkZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2lkZSAtIFNpZGUgdGhlIHNoYWRvdyBpcyBzdXBwb3NlZCB0byBhcHBlYXIuIENhbiBiZSBgdG9wYCwgYGxlZnRgLCBgcmlnaHRgIG9yIGBib3R0b21gLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSAtIFdpZHRoIGZvciB0aGUgdGFyZ2V0IHNpZGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3Igb2YgdGhlIHNoYWRvdy5cbkBtaXhpbiBpbm5lci1zaWRlLXNoYWRvdyhcbiAgJHNpZGU6IGJvdHRvbSxcbiAgJHNpemU6IDIwcHgsXG4gICRjb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpXG4pIHtcblxuICAkaGVscGVyOiByb3VuZCgkc2l6ZSAqIDAuNjUpO1xuXG4gIEBpZiAoJHNpZGUgPT0gdG9wKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAkaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGxlZnQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAkaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gcmlnaHQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAoLTEpKiRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBib3R0b20pIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICgtMSkqJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIGJvcmRlcjogaW5zZXQgJHRyaWFuZ2xlLXNpemU7XG5cbiAgY29udGVudDogJyc7XG5cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGRvd24pIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSB1cCkge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHJpZ2h0KSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBtZW51IGljb24gd2l0aCBhIHNldCB3aWR0aCwgaGVpZ2h0LCBudW1iZXIgb2YgYmFycywgYW5kIGNvbG9ycy4gVGhlIG1peGluIHVzZXMgdGhlIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiB0aGUgYmFycyB0byBkZXRlcm1pbmUgc3BhY2luZy4gPGRpdiBjbGFzcz1cImRvY3MtZXhhbXBsZS1idXJnZXJcIj48L2Rpdj5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yLWhvdmVyIFskZGFyay1ncmF5XSAtIENvbG9yIHRvIHVzZSB3aGVuIHRoZSBpY29uIGlzIGhvdmVyZWQgb3Zlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsyMHB4XSAtIFdpZHRoIG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkaGVpZ2h0IFsxNnB4XSAtIEhlaWdodCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdlaWdodCBbMnB4XSAtIEhlaWdodCBvZiBpbmRpdmlkdWFsIGJhcnMgaW4gdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXJzIFszXSAtIE51bWJlciBvZiBiYXJzIGluIHRoZSBpY29uLlxuQG1peGluIGhhbWJ1cmdlcihcbiAgJGNvbG9yOiAkYmxhY2ssXG4gICRjb2xvci1ob3ZlcjogJGRhcmstZ3JheSxcbiAgJHdpZHRoOiAyMHB4LFxuICAkaGVpZ2h0OiAxNnB4LFxuICAkd2VpZ2h0OiAycHgsXG4gICRiYXJzOiAzXG4pIHtcbiAgLy8gYm94LXNoYWRvdyBDU1Mgb3V0cHV0XG4gICRzaGFkb3c6ICgpO1xuICAkaG92ZXItc2hhZG93OiAoKTtcblxuICAvLyBTcGFjaW5nIGJldHdlZW4gYmFycyBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSB0b3RhbCBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgZWFjaCBiYXJcbiAgJHNwYWNpbmc6ICgkaGVpZ2h0IC0gKCR3ZWlnaHQgKiAkYmFycykpIC8gKCRiYXJzIC0gMSk7XG5cbiAgQGlmIHVuaXQoJHNwYWNpbmcpID09ICdweCcge1xuICAgICRzcGFjaW5nOiBmbG9vcigkc3BhY2luZyk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICRzaGFkb3c6IGFwcGVuZCgkc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3IsIGNvbW1hKTtcbiAgfVxuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHdlaWdodDtcblxuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaWYgJGNvbG9yLWhvdmVyIHtcbiAgICAvLyBHZW5lcmF0ZSBDU1NcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkaG92ZXItc2hhZG93OiBhcHBlbmQoJGhvdmVyLXNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLWhvdmVyLCBjb21tYSk7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkb3dud2FyZC1mYWNpbmcgdHJpYW5nbGUgYXMgYSBiYWNrZ3JvdW5kIGltYWdlIHRvIGFuIGVsZW1lbnQuIFRoZSBpbWFnZSBpcyBmb3JtYXR0ZWQgYXMgYW4gU1ZHLCBtYWtpbmcgaXQgZWFzeSB0byBjaGFuZ2UgdGhlIGNvbG9yLiBCZWNhdXNlIEludGVybmV0IEV4cGxvcmVyIGRvZXNuJ3Qgc3VwcG9ydCBlbmNvZGVkIFNWR3MgYXMgYmFja2dyb3VuZCBpbWFnZXMsIGEgUE5HIGZhbGxiYWNrIGlzIGFsc28gaW5jbHVkZWQuXG4vLy8gVGhlcmUgYXJlIHR3byBQTkcgZmFsbGJhY2tzOiBhIGJsYWNrIHRyaWFuZ2xlIGFuZCBhIHdoaXRlIHRyaWFuZ2xlLiBUaGUgb25lIHVzZWQgZGVwZW5kcyBvbiB0aGUgbGlnaHRuZXNzIG9mIHRoZSBpbnB1dCBjb2xvci5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIHRyaWFuZ2xlLlxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cm91bmQocmVkKCRjb2xvcikpfSwgI3tyb3VuZChncmVlbigkY29sb3IpKX0sICN7cm91bmQoYmx1ZSgkY29sb3IpKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogI3skcmdifSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBCbGFjayB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBsaWVzIHRoZSBtaWNybyBjbGVhcmZpeCBoYWNrIHBvcHVsYXJpemVkIGJ5IE5pY29sYXMgR2FsbGFnaGVyLiBJbmNsdWRlIHRoaXMgbWl4aW4gb24gYSBjb250YWluZXIgaWYgaXRzIGNoaWxkcmVuIGFyZSBhbGwgZmxvYXRlZCwgdG8gZ2l2ZSB0aGUgY29udGFpbmVyIGEgcHJvcGVyIGhlaWdodC5cbi8vLyBUaGUgY2xlYXJmaXggaXMgYXVnbWVudGVkIHdpdGggc3BlY2lmaWMgc3R5bGVzIHRvIHByZXZlbnQgYm9yZGVycyBpbiBmbGV4Ym94IGVudmlyb25tZW50c1xuLy8vIEBsaW5rIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrLyBNaWNybyBDbGVhcmZpeCBIYWNrXG4vLy8gQGxpbmsgaHR0cDovL2RhbmlzYWRlc2lnbmVyLmNvbS9ibG9nL2ZsZXhib3gtY2xlYXItZml4LXBzZXVkby1lbGVtZW50cy8gRmxleGJveCBmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBDU1MgZm9yIGEgXCJxdWFudGl0eSBxdWVyeVwiIHNlbGVjdG9yIHRoYXQgYXV0b21hdGljYWxseSBzaXplcyBlbGVtZW50cyBiYXNlZCBvbiBob3cgbWFueSB0aGVyZSBhcmUgaW5zaWRlIGEgY29udGFpbmVyLlxuLy8vIEBsaW5rIGh0dHA6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL3F1YW50aXR5LXF1ZXJpZXMtZm9yLWNzcyBRdWFudGl0eSBRdWVyaWVzIGZvciBDU1Ncbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IC0gTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGV0ZWN0LiBUaGUgaGlnaGVyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBDU1MgdGhhdCdzIHJlcXVpcmVkIHRvIGNvdmVyIGVhY2ggbnVtYmVyIG9mIGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGVsZW0gW2xpXSAtIFRhZyB0byB1c2UgZm9yIHNpYmxpbmcgc2VsZWN0b3JzLlxuQG1peGluIGF1dG8td2lkdGgoJG1heCwgJGVsZW06IGxpKSB7XG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJG1heCB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQsXG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQgfiAjeyRlbGVtfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgxIC8gJGkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbi8vLyBAbGluayBodHRwOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZW5mb3JjZSAtIElmIGB0cnVlYCwgdXNlIGAhaW1wb3J0YW50YCBvbiBhcHBsaWVkIHByb3BlcnRpZXNcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZShcbiAgJGVuZm9yY2U6IHRydWVcbikge1xuICAkaW1wb3J0YW50OiBpZigkZW5mb3JjZSwgJyFpbXBvcnRhbnQnLCBudWxsKTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGUgI3skaW1wb3J0YW50fTtcbiAgd2lkdGg6IDFweCAjeyRpbXBvcnRhbnR9O1xuICBoZWlnaHQ6IDFweCAjeyRpbXBvcnRhbnR9O1xuICBwYWRkaW5nOiAwICN7JGltcG9ydGFudH07XG4gIG92ZXJmbG93OiBoaWRkZW4gI3skaW1wb3J0YW50fTtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKSAjeyRpbXBvcnRhbnR9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICN7JGltcG9ydGFudH07XG4gIGJvcmRlcjogMCAjeyRpbXBvcnRhbnR9O1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGVuZm9yY2UgLSBJZiBgdHJ1ZWAsIHVzZSBgIWltcG9ydGFudGAgb24gYXBwbGllZCBwcm9wZXJ0aWVzXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmKFxuICAkZW5mb3JjZTogdHJ1ZVxuKSB7XG4gICRpbXBvcnRhbnQ6IGlmKCRlbmZvcmNlLCAnIWltcG9ydGFudCcsIG51bGwpO1xuXG4gIHBvc2l0aW9uOiBzdGF0aWMgI3skaW1wb3J0YW50fTtcbiAgd2lkdGg6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgaGVpZ2h0OiBhdXRvICN7JGltcG9ydGFudH07XG4gIG92ZXJmbG93OiB2aXNpYmxlICN7JGltcG9ydGFudH07XG4gIGNsaXA6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbCAjeyRpbXBvcnRhbnR9O1xufVxuXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiB2ZXJ0aWNhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gaG9yaXpvbnRhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLy8gQWJzb2x1dGVseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vLy8gSXRlcmF0ZXMgdGhyb3VnaCBicmVha3BvaW50cyBkZWZpbmVkIGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBhbmQgcHJpbnRzIHRoZSBDU1MgaW5zaWRlIHRoZSBtaXhpbiBhdCBlYWNoIGJyZWFrcG9pbnQncyBtZWRpYSBxdWVyeS4gVXNlIHRoaXMgd2l0aCB0aGUgZ3JpZCwgb3IgYW55IG90aGVyIGNvbXBvbmVudCB0aGF0IGhhcyByZXNwb25zaXZlIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRzbWFsbCBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBza2lwIHRoZSBgc21hbGxgIGJyZWFrcG9pbnQuIFVzZSB0aGlzIHdpdGggY29tcG9uZW50cyB0aGF0IGRvbid0IHByZWZpeCBjbGFzc2VzIHdpdGggYHNtYWxsLWAsIG9ubHkgYG1lZGl1bS1gIGFuZCB1cC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRhdXRvLWluc2VydC1icmVha3BvaW50cyBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBpdGVyYXRlIG92ZXIgYnJlYWtwb2ludHMgd2l0aG91dCBkb2luZyB0aGUgbWVkaWEgcXVlcnkgaXRzZWxmLiBVc2VmdWwgZm9yIG1vcmUgY29tcGxleCBtZWRpYSBxdWVyeSBnZW5lcmF0aW9uIGFzIGluIHRoZSBtYXJnaW4gZ3JpZC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50KFxuICAkc21hbGw6IHRydWUsXG4gICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZVxuKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oYXV0bywgLXpmLWJvb2woJHNtYWxsKSwgLXpmLWJvb2woJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzKSkge1xuICAgIEBjb250ZW50XG4gIH07XG59XG5cbi8vLyBJdGVyYXRlcyB3aXRoIGBAY29udGVudGAgdGhyb3VnaCB0aGUgZ2l2ZW4gbGlzdCBvZiBicmVha3BvaW50cyBgJGJyZWFrcG9pbnRzYC5cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfExpc3R9ICRicmVha3BvaW50cyBbYXV0b10gLSBCcmVha3BvaW50cyB0byBpdGVyYXRlcyBvbi4gSXQgY2FuIGJlIGEgYnJlYWtwb2ludCBuYW1lLCBsaXN0IG9mIGJyZWFrcG9pbnRzIG9yIGBhdXRvYCBmb3IgYWxsIGJyZWFrcG9pbnRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbnxOdWxsfSAkemVyby1icmVha3BvaW50IFtudWxsXSAtIFdoZXRoZXIgdGhlIHplcm8tYnJlYWtwb2ludCAob2Z0ZW4gYHNtYWxsYCkgbXVzdCBiZSBpbmNsdWRlZC4gSWYgYHRydWVgLCBpdCB3aWxsIGFsd2F5cyBiZSBhZGRlZCB0byB0aGUgbGlzdCBpZiBub3QgYWxyZWFkeSB0aGVyZS4gSWYgYGZhbHNlYCwgaXQgd2lsbCBhbHdheXMgYmUgcmVtb3ZlZC4gRG9lcyBub3RoaW5nIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtCb29sZWFufEtleXdvcmR9ICRtZWRpYS1xdWVyaWVzIFt0cnVlXSAtIFdoZXRoZXIgbWVkaWEtcXVlcmllcyBtdXN0IGJlIGdlbmVyYXRlZC4gSWYgYGZvci1saXN0c2AsIG9ubHkgZ2VuZXJhdGUgbWVkaWEtcXVlcmllcyB3aGVuIGAkYnJlYWtwb2ludHNgIGlzIGEgbGlzdC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50LWluKFxuICAkYnJlYWtwb2ludHM6IGF1dG8sXG4gICR6ZXJvLWJyZWFrcG9pbnQ6IG51bGwsXG4gICRtZWRpYS1xdWVyaWVzOiB0cnVlXG4pIHtcbiAgJC1saXN0OiAoKTtcbiAgJC1icmVha3BvaW50cy1pcy1hLWxpc3Q6IHRydWU7XG5cbiAgLy8gUmV0cmlldmUgdGhlIGxpc3Qgb2YgYnJlYWtwb2ludChzKSB0byBpdGVyYXRlIG9uLlxuICBAaWYgJGJyZWFrcG9pbnRzID09IGF1dG8ge1xuICAgICQtbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcbiAgfVxuICBAZWxzZSBpZiB0eXBlLW9mKCRicmVha3BvaW50cykgPT0gJ2xpc3QnIHtcbiAgICAkLWxpc3Q6ICRicmVha3BvaW50cztcbiAgfVxuICBAZWxzZSBpZiB0eXBlLW9mKCRicmVha3BvaW50cykgPT0gJ3N0cmluZycge1xuICAgICQtbGlzdDogKCRicmVha3BvaW50cyk7XG4gICAgJC1icmVha3BvaW50cy1pcy1hLWxpc3Q6IGZhbHNlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgXCIkYnJlYWtwb2ludHNcIiBpbiBcIi16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oKVwiLiBHb3QgXCIjeyRicmVha3BvaW50c31cIiAoI3t0eXBlLW9mKCRicmVha3BvaW50cyl9KS4gRXhwZWN0ZWQgYSBicmVha3BvaW50IG5hbWUsIGEgbGlzdCBvZiBicmVha3BvaW50cyBvciBcImF1dG9cIic7XG4gIH1cblxuICAvLyBBZGQgb3IgcmVtb3ZlIHRoZSB6ZXJvIGJyZWFrcG9pbnQgYWNjb3JkaW5nIHRvIGAkemVyby1icmVha3BvaW50YFxuICBAaWYgJHplcm8tYnJlYWtwb2ludCA9PSB0cnVlIHtcbiAgICAkLWxpc3Q6IGpvaW4oKCQtemYtemVyby1icmVha3BvaW50KSwgc2wtcmVtb3ZlKCQtbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpKTtcbiAgfVxuICBAZWxzZSBpZiAkemVyby1icmVha3BvaW50ID09IGZhbHNlIHtcbiAgICAkLWxpc3Q6IHNsLXJlbW92ZSgkLWxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIC8vIEl0ZXJhdGUgb24gYnJlYWtwb2ludChzKVxuICBAZWFjaCAkYnAgaW4gJC1saXN0IHtcbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6ICRicCAhZ2xvYmFsO1xuXG4gICAgQGlmICgkbWVkaWEtcXVlcmllcyA9PSB0cnVlXG4gICAgICBvciAoJG1lZGlhLXF1ZXJpZXMgPT0gJ2Zvci1saXN0cycgYW5kICQtYnJlYWtwb2ludHMtaXMtYS1saXN0KSkge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnApIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJGJwLXZhbHVlOiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkbmFtZSk7XG4gICAgICBAaWYgJGJwLXZhbHVlICE9IG51bGwge1xuICAgICAgICAkbmFtZTogJGJwLXZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGJyZWFrcG9pbnQgdmFsdWVcbiAgICAkLXpmLWJwLXZhbHVlOiAkbmFtZSAhZ2xvYmFsO1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gT3V0cHV0cyBDU1MgY2xhc3NlcyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gZm91bmRhdGlvbi1ncmlkKFxuICAkcm93OiAncm93JyxcbiAgJGNvbHVtbjogJ2NvbHVtbicsXG4gICRjb2x1bW4tcm93OiAnY29sdW1uLXJvdycsXG4gICRndXR0ZXI6ICdndXR0ZXInLFxuICAkcHVzaDogJ3B1c2gnLFxuICAkcHVsbDogJ3B1bGwnLFxuICAkY2VudGVyOiAnY2VudGVyZWQnLFxuICAkdW5jZW50ZXI6ICd1bmNlbnRlcmVkJyxcbiAgJGNvbGxhcHNlOiAnY29sbGFwc2UnLFxuICAkdW5jb2xsYXBzZTogJ3VuY29sbGFwc2UnLFxuICAkb2Zmc2V0OiAnb2Zmc2V0JyxcbiAgJGVuZDogJ2VuZCcsXG4gICRleHBhbmRlZDogJ2V4cGFuZGVkJyxcbiAgJGJsb2NrOiAnYmxvY2snXG4pIHtcbiAgLy8gUm93XG4gIC4jeyRyb3d9IHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcblxuICAgIC8vIENvbGxhcHNpbmdcbiAgICAmLiN7JGNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYgLiN7JHJvd30ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcblxuICAgICAgJi4jeyRjb2xsYXBzZX0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV4cGFuZGVkIChmdWxsLXdpZHRoKSByb3dcbiAgICAmLiN7JGV4cGFuZGVkfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG5cbiAgICAgIC4jeyRyb3d9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCguI3skZXhwYW5kZWR9KSAuI3skcm93fSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG4gICAgfVxuXG4gICAgQGlmIHR5cGUtb2YoJGdyaWQtY29sdW1uLWd1dHRlcikgPT0gJ21hcCcge1xuICAgICAgLy8gU3RhdGljICh1bnJlc3BvbnNpdmUpIHJvdyBndXR0ZXJzXG4gICAgICAvL1xuICAgICAgQGVhY2ggJGJyZWFrcG9pbnQsICR2YWx1ZSBpbiAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHtcbiAgICAgICAgJi4jeyRndXR0ZXJ9LSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICA+IC4jeyRjb2x1bW59IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWd1dHRlcigkdmFsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtblxuICAuI3skY29sdW1ufSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2w7XG5cbiAgICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICAgJi4jeyRlbmR9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtZW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtbiByb3dcbiAgLy8gVGhlIGRvdWJsZSAucm93IGNsYXNzIGlzIG5lZWRlZCB0byBidW1wIHVwIHRoZSBzcGVjaWZpY2l0eVxuICAuI3skY29sdW1ufS4jeyRyb3d9LiN7JHJvd30ge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG5cbiAgLy8gVG8gcHJvcGVybHkgbmVzdCBhIGNvbHVtbiByb3csIHBhZGRpbmcgYW5kIG1hcmdpbiBpcyByZW1vdmVkXG4gIC4jeyRyb3d9IC4jeyRjb2x1bW59LiN7JHJvd30uI3skcm93fSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgLy8gQ29sdW1uIHdpZHRoXG4gICAgICAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSgkaSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFNvdXJjZSBvcmRlcmluZ1xuICAgICAgQGlmICRpIDwgJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgICAgQGlmICRwdXNoIHtcbiAgICAgICAgICAuI3skLXpmLXNpemV9LSN7JHB1c2h9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGlmICRwdWxsIHtcbiAgICAgICAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICBAaWYgJG9mZnNldCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tI3skb2Zmc2V0fS0jeyRvfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtb2ZmKCRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJsb2NrIGdyaWRcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRibG9jay1ncmlkLW1heCB7XG4gICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoJGksICcuI3skY29sdW1ufScpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgY29sbGFwc2luZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JGV4cGFuZGVkfS4jeyRyb3d9IC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9LiN7JHJvd30ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS0jeyR1bmNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHsgQGluY2x1ZGUgZ3JpZC1jb2wtZ3V0dGVyKCQtemYtc2l6ZSk7IH1cbiAgICB9XG5cbiAgICAvLyBQb3NpdGlvbmluZ1xuICAgIEBpZiAkY2VudGVyIHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skY2VudGVyfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcyhjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEd1dHRlciBhZGp1c3RtZW50XG4gICAgJC1ndXR0ZXItdW5wb3Mtc2VsZWN0b3I6IChcbiAgICAgIGlmKCR1bmNlbnRlciwgJy4jeyQtemYtc2l6ZX0tI3skdW5jZW50ZXJ9JywgbnVsbCksXG4gICAgICBpZigkcHVzaCwgJy4jeyQtemYtc2l6ZX0tI3skcHVzaH0tMCcsIG51bGwpLFxuICAgICAgaWYoJHB1bGwsICcuI3skLXpmLXNpemV9LSN7JHB1bGx9LTAnLCBudWxsKSxcbiAgICApO1xuICAgIEBpZiAoJHVuY2VudGVyIG9yICRwdXNoIG9yICRwdWxsKSB7XG4gICAgICAjeyQtZ3V0dGVyLXVucG9zLXNlbGVjdG9yfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXVucG9zO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrIGdyaWQgY29sdW1uc1xuICAuI3skY29sdW1ufS0jeyRibG9ja30ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW1hcmdpbjtcbiAgfVxuXG4gIEBpZiAkY29sdW1uID09ICdjb2x1bW4nIGFuZCBoYXMtdmFsdWUoJGdyaWQtY29sdW1uLWFsaWFzKSB7XG4gICAgLiN7JGdyaWQtY29sdW1uLWFsaWFzfSB7XG4gICAgICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1ibG9jayBwbGFjZWhvbGRlci1pbi1leHRlbmRcbiAgICAgIEBleHRlbmQgLmNvbHVtbjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIGNvbHVtbnMgZGVmaW5lZCBpbnNpZGUgdGhpcyBtaXhpbiB0byB1c2UgYSBkaWZmZXJlbnQgY29sdW1uIGNvdW50LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgLSBOdW1iZXIgb2YgY29sdW1ucyB0byB1c2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkcm9vdCBbZmFsc2VdXG4vLy8gICBJZiBgZmFsc2VgLCBzZWxlY3RvcnMgaW5zaWRlIHRoaXMgbWl4aW4gd2lsbCBuZXN0IGluc2lkZSB0aGUgcGFyZW50IHNlbGVjdG9yLlxuLy8vICAgSWYgYHRydWVgLCBzZWxlY3RvcnMgd2lsbCBub3QgbmVzdC5cbkBtaXhpbiBncmlkLWNvbnRleHQoXG4gICRjb2x1bW5zLFxuICAkcm9vdDogZmFsc2Vcbikge1xuICAvLyBTdG9yZSB0aGUgY3VycmVudCBjb2x1bW4gY291bnQgc28gaXQgY2FuIGJlIHJlLXNldCBsYXRlclxuICAkb2xkLWdyaWQtY29sdW1uLWNvdW50OiAkZ3JpZC1jb2x1bW4tY291bnQ7XG4gICRncmlkLWNvbHVtbi1jb3VudDogJGNvbHVtbnMgIWdsb2JhbDtcblxuICBAaWYgJHJvb3Qge1xuICAgIEBhdC1yb290IHsgQGNvbnRlbnQ7IH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBvbGQgY29sdW1uIGNvdW50XG4gICRncmlkLWNvbHVtbi1jb3VudDogJG9sZC1ncmlkLWNvbHVtbi1jb3VudCAhZ2xvYmFsO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgcm93LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gQ29sdW1uIGNvdW50IGZvciB0aGlzIHJvdy4gYG51bGxgIHdpbGwgdXNlIHRoZSBkZWZhdWx0IGNvbHVtbiBjb3VudC5cbi8vLyBAcGFyYW0ge0tleXdvcmRzfSAkYmVoYXZpb3IgW251bGxdXG4vLy8gICBNb2RpZmljYXRpb25zIHRvIHRoZSBkZWZhdWx0IGdyaWQgc3R5bGVzLiBgbmVzdGAgaW5kaWNhdGVzIHRoZSByb3cgd2lsbCBiZSBwbGFjZWQgaW5zaWRlIGFub3RoZXIgcm93LiBgY29sbGFwc2VgIGluZGljYXRlcyB0aGF0IHRoZSBjb2x1bW5zIGluc2lkZSB0aGlzIHJvdyB3aWxsIG5vdCBoYXZlIHBhZGRpbmcuIGBuZXN0IGNvbGxhcHNlYCBjb21iaW5lcyBib3RoIGJlaGF2aW9ycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkY2YgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gaW5jbHVkZSBhIGNsZWFyZml4LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1yb3coXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICRzaXplOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjZjogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICAkbWFyZ2luOiBhdXRvO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcnMpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKCRzaXplKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGNmIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIEBpZiAkY29sdW1ucyAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbnRleHQoJGNvbHVtbnMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gSW52ZXJ0cyB0aGUgbWFyZ2lucyBvZiBhIHJvdyB0byBuZXN0IGl0IGluc2lkZSBvZiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1yb3ctbmVzdCgkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAkbWFyZ2luOiByZW0tY2FsYygtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJC16Zi1zaXplKSkgLyAyICogLTE7XG5cbiAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW47XG4gICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW47XG4gIH1cbn1cblxuLy8vIFNldCBhIGdyaWQgcm93IHNpemVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbkBtaXhpbiBncmlkLXJvdy1zaXplKCRzaXplOiAkZ3JpZC1yb3ctd2lkdGgpIHtcbiAgQGlmICRzaXplID09IGV4cGFuZCB7XG4gICAgJHNpemU6IG5vbmU7XG4gIH1cblxuICBtYXgtd2lkdGg6ICRzaXplO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuLy8vIENvbnZlcnRzIG9uZSBvciBtb3JlIHBpeGVsIHZhbHVlcyBpbnRvIG1hdGNoaW5nIHJlbSB2YWx1ZXMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkdmFsdWVzIC0gT25lIG9yIG1vcmUgdmFsdWVzIHRvIGNvbnZlcnQuIEJlIHN1cmUgdG8gc2VwYXJhdGUgdGhlbSB3aXRoIHNwYWNlcyBhbmQgbm90IGNvbW1hcy4gSWYgeW91IG5lZWQgdG8gY29udmVydCBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LCB3cmFwIHRoZSBsaXN0IGluIHBhcmVudGhlc2VzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBUaGUgYmFzZSB2YWx1ZSB0byB1c2Ugd2hlbiBjYWxjdWxhdGluZyB0aGUgYHJlbWAuIElmIHlvdSdyZSB1c2luZyBGb3VuZGF0aW9uIG91dCBvZiB0aGUgYm94LCB0aGlzIGlzIDE2cHguIElmIHRoaXMgcGFyYW1ldGVyIGlzIGBudWxsYCwgdGhlIGZ1bmN0aW9uIHdpbGwgcmVmZXJlbmNlIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlIGFzIHRoZSBiYXNlLlxuLy8vXG4vLy8gQHJldHVybnMge0xpc3R9IEEgbGlzdCBvZiBjb252ZXJ0ZWQgdmFsdWVzLlxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlOiBudWxsKSB7XG4gICRyZW0tdmFsdWVzOiAoKTtcbiAgJGNvdW50OiBsZW5ndGgoJHZhbHVlcyk7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIC8vIFRoaXMgaXMgYmVjYXVzZSAxMDAlIGZvbnQgc2l6ZSA9IDE2cHggaW4gbW9zdCBhbGwgYnJvd3NlcnNcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIC8vIFVzaW5nIHJlbSBhcyBiYXNlIGFsbG93cyBjb3JyZWN0IHNjYWxpbmdcbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmICRjb3VudCA9PSAxIHtcbiAgICBAcmV0dXJuIC16Zi10by1yZW0oJHZhbHVlcywgJGJhc2UpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY291bnQge1xuICAgICRyZW0tdmFsdWVzOiBhcHBlbmQoJHJlbS12YWx1ZXMsIC16Zi10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlbS12YWx1ZXM7XG59XG5cbi8vIENvbnZlcnRzIGEgdW5pdGxlc3MsIHBpeGVsLCBvciByZW0gdmFsdWUgdG8gZW0sIGZvciB1c2UgaW4gYnJlYWtwb2ludHMuXG5AZnVuY3Rpb24gLXpmLWJwLXRvLWVtKCR2YWx1ZSkge1xuICAvLyBQaXhlbCBhbmQgdW5pdGxlc3MgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gcmVtc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcgb3IgdW5pdGxlc3MoJHZhbHVlKSB7XG4gICAgJHZhbHVlOiByZW0tY2FsYygkdmFsdWUsICRiYXNlOiAxNnB4KTtcbiAgfVxuXG4gIC8vIFRoZW4gdGhlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBlbXNcbiAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxZW07XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsIHZhbHVlIHRvIG1hdGNoaW5nIHJlbSB2YWx1ZS4gKkFueSogdmFsdWUgcGFzc2VkLCByZWdhcmRsZXNzIG9mIHVuaXQsIGlzIGFzc3VtZWQgdG8gYmUgYSBwaXhlbCB2YWx1ZS4gQnkgZGVmYXVsdCwgdGhlIGJhc2UgcGl4ZWwgdmFsdWUgdXNlZCB0byBjYWxjdWxhdGUgdGhlIHJlbSB2YWx1ZSBpcyB0YWtlbiBmcm9tIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFBpeGVsIHZhbHVlIHRvIGNvbnZlcnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIEJhc2UgZm9yIHBpeGVsIGNvbnZlcnNpb24uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIG51bWJlciBpbiByZW1zLCBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSBnaXZlbiB2YWx1ZSBhbmQgdGhlIGJhc2UgcGl4ZWwgdmFsdWUuIHJlbSB2YWx1ZXMgYXJlIHBhc3NlZCB0aHJvdWdoIGFzIGlzLlxuQGZ1bmN0aW9uIC16Zi10by1yZW0oJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnbnVtYmVyJyB7XG4gICAgQHdhcm4gaW5zcGVjdCgkdmFsdWUpICsgJyB3YXMgcGFzc2VkIHRvIHJlbS1jYWxjKCksIHdoaWNoIGlzIG5vdCBhIG51bWJlci4nO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gVHJhbnNmb3JtIGVtIGludG8gcmVtIGlmIHNvbWVvbmUgaGFuZHMgb3ZlciAnZW0nc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogMXJlbTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSByZW0gaWYgdW5pdHMgZm9yICR2YWx1ZSBpcyBub3QgcmVtIG9yIGVtXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gVHVybiAwcmVtIGludG8gMFxuICBAaWYgJHZhbHVlID09IDByZW0ge1xuICAgICR2YWx1ZTogMDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCwgcGVyY2VudGFnZSwgcmVtIG9yIGVtIHZhbHVlIHRvIGEgdW5pdGxlc3MgdmFsdWUgYmFzZWQgb24gYSBnaXZlbiBmb250IHNpemUuIElkZWFsIGZvciB3b3JraW5nIG91dCB1bml0bGVzcyBsaW5lIGhlaWdodHMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gY29udmVydCB0byBhIHVuaXRsZXNzIGxpbmUgaGVpZ2h0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGZvbnQgc2l6ZSB0byB1c2UgdG8gd29yayBvdXQgdGhlIGxpbmUgaGVpZ2h0IC0gZGVmYXVsdHMgdG8gJGdsb2JhbC1mb250LXNpemVcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBVbml0bGVzcyBudW1iZXJcbkBmdW5jdGlvbiB1bml0bGVzcy1jYWxjKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBGaXJzdCwgbGV0cyBjb252ZXJ0IG91ciAkYmFzZSB0byBwaXhlbHNcblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gTm93IGxldCdzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogKCR2YWx1ZSAvIDEwMCUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgLy8gJ3B4J1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcge1xuICAgIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlciB0aGFuIDEwIGFyZSBtZWFudCB0byBiZSBhYnNvbHV0ZSBpbiAncHgnXG4gIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAoJHZhbHVlID4gMTApIHtcbiAgICBAcmV0dXJuICR2YWx1ZSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJGd1dHRlciBbYXV0b11cbi8vLyAgIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkZ3V0dGVycyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkZ3V0dGVycyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkZ3V0dGVyLCAkZ3V0dGVycykge1xuICAgICRwYWRkaW5nOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG5cbiAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICB9XG59XG5cbi8vLyBDb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZW1vdmluZyB0aGUgcGFkZGluZy4gKipOb3RlOioqIG9ubHkgdXNlIHRoaXMgbWl4aW4gd2l0aGluIGEgYnJlYWtwb2ludC4gVG8gY29sbGFwc2UgYSBjb2x1bW4ncyBndXR0ZXJzIG9uIGFsbCBzY3JlZW4gc2l6ZXMsIHVzZSB0aGUgYCRndXR0ZXJgIHBhcmFtZXRlciBvZiB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluIGluc3RlYWQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoMCk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWd1dHRlclxuQG1peGluIGdyaWQtY29sLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlciwgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcbn1cblxuLy8vIFNldHMgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMgdG8gbWF0Y2ggZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRtYXJnaW4gW2F1dG9dXG4vLy8gICBUaGUgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRtYXJnaW5zIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBtYXJnaW4gcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRtYXJnaW5zIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFyZ2lucyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1tYXJnaW4gKFxuICAkbWFyZ2luOiBhdXRvLFxuICAkbWFyZ2luczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRtYXJnaW4sICRtYXJnaW5zKSB7XG4gICAgJG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpO1xuICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIEhpRFBJIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzIGZvciByZXNvbHV0aW9ucy5cbi8vLyBWYWx1ZXMgbXVzdCByZXByZXNlbnQgdGhlIGRldmljZSBwaXhlbHMgLyB3ZWIgcGl4ZWxzIHJhdGlvbiBhbmQgYmUgdW5pdGxlc3Mgb3IgaW4gRFBQWC5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50cy1oaWRwaTogKFxuICBoaWRwaS0xOiAxLFxuICBoaWRwaS0xLTU6IDEuNSxcbiAgaGlkcGktMjogMixcbiAgcmV0aW5hOiAyLFxuICBoaWRwaS0zOiAzXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1RoZSBmaXJzdCBrZXkgaW4gdGhlICRicmVha3BvaW50cyBtYXAgbXVzdCBoYXZlIGEgdmFsdWUgb2YgXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFdlYiBzdGFuZGFyZCBQaXhlbHMgcGVyIGluY2guICgxZGRweCAvICRzdGQtd2ViLWRwaSkgPSAxZHBpXG4gIC8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvY3NzLXZhbHVlcy0zLyNhYnNvbHV0ZS1sZW5ndGhzXG4gICRzdGQtd2ViLWRwaTogOTY7XG5cbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBvZiB0aGUgZm9sbG93aW5nIGJyZWFrcG9pbnRcbiAgJGJwLW5leHQ6IG51bGw7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWluOiBudWxsO1xuICAvLyBWYWx1ZSBmb3IgbWluLXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogbnVsbDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIElmIG5hbWVkLCBuYW1lIG9mIHRoZSBicmVha3BvaW50XG4gICRuYW1lOiBudWxsO1xuICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIEhpRFBJIGJyZWFrcG9pbnRcbiAgJGhpZHBpOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cblxuICAvLyBJZiBhIGJyZWFrcG9pbnQgbmFtZSBpcyBnaXZlbiwgZ2V0IGl0cyB2YWx1ZSBmcm9tIHRoZSAkYnJlYWtwb2ludHMvJGJyZWFrcG9pbnRzLWhpZHBpIG1hcC5cbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLWhpZHBpLCAkYnApIHtcbiAgICAgICRuYW1lOiAkYnA7XG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLWhpZHBpLCAkbmFtZSk7XG4gICAgICAkYnAtbmV4dDogLXpmLW1hcC1uZXh0LW51bWJlcigkYnJlYWtwb2ludHMtaGlkcGksICRicCk7XG4gICAgICAkaGlkcGk6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgYCRicmVha3BvaW50c2Agb3IgYCRicmVha3BvaW50cy1oaWRwaWAgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBub3QgJG5hbWUgYW5kICRkaXIgPT0gJ29ubHknIHtcbiAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG5cbiAgLy8gT25seSAnb25seScgYW5kICd1cCcgaGF2ZSBhIG1pbiBsaW1pdC5cbiAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ3VwJyB7XG4gICAgJGJwLW1pbjogaWYoJGhpZHBpLCBzdHJpcC11bml0KCRicCksIC16Zi1icC10by1lbSgkYnApKTtcbiAgfVxuICAvLyBPbmx5ICdvbmx5JyBhbmQgJ2Rvd24nIGhhdmUgYSBtYXggbGltaXQuXG4gIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSB2YWx1ZSwgdXNlIGl0IGFzIG1heCBsaW1pdC5cbiAgICBAaWYgbm90ICRuYW1lIHtcbiAgICAgICRicC1tYXg6IGlmKCRoaWRwaSwgc3RyaXAtdW5pdCgkYnApLCAtemYtYnAtdG8tZW0oJGJwKSk7XG4gICAgfVxuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGlzIG5hbWVkLCB0aGUgbWF4IGxpbWl0IGlzIHRoZSBmb2xsb3dpbmcgYnJlYWtwb2ludCAtIDFweC5cbiAgICBAZWxzZSBpZiAkYnAtbmV4dCB7XG4gICAgICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gICAgICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAgICAgJGJwLW1heDogaWYoJGhpZHBpLCAkYnAtbmV4dCAtICgxLyRzdGQtd2ViLWRwaSksIC16Zi1icC10by1lbSgkYnAtbmV4dCkgLSAwLjAwMTI1KTtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmF0ZSB0aGUgbWVkaWEgcXVlcnkgc3RyaW5nIGZyb20gbWluIGFuZCBtYXggbGltaXRzLlxuICBAaWYgJGhpZHBpIHtcbiAgICAvLyBHZW5lcmF0ZSB2YWx1ZXMgaW4gRFBJIGluc3RlYWQgb2YgRFBQWCBmb3IgYW4gSUU5LTExL09wZXJhIG1pbmkgY29tcGF0aWJpbGl0eS5cbiAgICAvLyBTZWUgaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICAgICRicC1taW4tZHBpOiBpZigkYnAtbWluLCAkYnAtbWluICogJHN0ZC13ZWItZHBpICogMWRwaSwgJGJwLW1pbik7XG4gICAgJGJwLW1heC1kcGk6IGlmKCRicC1tYXgsICRicC1tYXggKiAkc3RkLXdlYi1kcGkgKiAxZHBpLCAkYnAtbWF4KTtcbiAgICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgICAgLXpmLWJwLWpvaW4oJGJwLW1pbiwgJGJwLW1heCwgJy13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbycsICctd2Via2l0LW1heC1kZXZpY2UtcGl4ZWwtcmF0aW8nKSxcbiAgICAgIC16Zi1icC1qb2luKCRicC1taW4tZHBpLCAkYnAtbWF4LWRwaSwgJ21pbi1yZXNvbHV0aW9uJywgJ21heC1yZXNvbHV0aW9uJyksXG4gICAgICAnLCAnKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAtemYtYnAtam9pbigkYnAtbWluLCAkYnAtbWF4KTtcbiAgfVxufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIGFuZCBgJGJyZWFrcG9pbnRzLWhpZHBpYCBtYXBzLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gSWYgbXVsdGlwbGUgdmFsdWVzIGFyZSBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGdlbmVyYXRlIGEgbWVkaWEgcXVlcnkgZm9yIGVhY2ggb2YgdGhlbSBhcyBkZXNjcmliZWQgYWJvdmUuXG4vLy8gU2luY2UgdGhlIGNvbnRlbnQgaXMgZHVwbGljYXRlZCBmb3IgZWFjaCBicmVha3BvaW50LCB0aGlzIG1peGluIHNob3VsZCBvbmx5IGJlIHVzZWQgd2l0aCBwcm9wZXJ0aWVzIHRoYXRcbi8vLyBjaGFuZ2UgYWNyb3NzIGJyZWFrcG9pbnRzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlcy4uLiAtIEJyZWFrcG9pbnQgbmFtZSBvciBweC9yZW0vZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlcy4uLikge1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkdmFsdWVzKSB7XG4gICAgJHZhbHVlOiBudGgoJHZhbHVlcywgJGkpO1xuICAgICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgbnRoKCR2YWx1ZSwgMSkpO1xuICAgICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuICAgIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICAgJGRpcjogaWYobGVuZ3RoKCR2YWx1ZSkgPiAxLCBudGgoJHZhbHVlLCAyKSwgdXApO1xuXG4gICAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gICAgLy8gTWFrZSBicmVha3BvaW50IHNpemUgYXZhaWxhYmxlIGFzIGEgdmFyaWFibGVcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gICAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICAgIEBpZiAkc3RyID09ICcnIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gICAgQGVsc2Uge1xuICAgICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgICAgLy8gZ2VuZXJhdGUgcHJpbnQgaWYgdGhlIGJyZWFrcG9pbnQgYWZmZWN0cyB0aGUgcHJpbnQtYnJlYWtwb2ludCAob3Igc21hbGxlcikuXG4gICAgICAvLyBUaGlzIG1lYW5zIHRoZSBjdXJyZW50IGNvbmRpdGlvbiBvbmx5IG5lZWRzIHRvIGJlIGV4dGVuZGVkIHNvICdkb3duJyBhbHdheXMgZ2VuZXJhdGVzIHByaW50LlxuICAgICAgQGlmICRicCAhPSBudWxsIGFuZCAoJGJwIDw9ICRwYnAgb3IgJGRpciA9PSBkb3duKSB7XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IG51bWJlciBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRudW1iZXIgLSBOdW1iZXIgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSBudW1iZXIgZm9sbG93aW5nIGAkbnVtYmVyYCwgaWYgYCRudW1iZXJgIHdhcyBmb3VuZC4gSWYgYCRudW1iZXJgIHdhcyBub3QgZm91bmQsIG9yIGAkbnVtYmVyYCB3YXMgdGhlIGJpZ2dlc3QgbnVtYmVyIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dC1udW1iZXIoJG1hcCwgJG51bWJlcikge1xuXG4gICRuZXh0X251bWJlcjogbnVsbDtcblxuICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgQGlmIHR5cGUtb2YoJHYpID09ICdudW1iZXInIGFuZCAkdiA+ICRudW1iZXIgYW5kICgkbmV4dF9udW1iZXIgPT0gbnVsbCBvciAkdiA8ICRuZXh0X251bWJlcikge1xuICAgICAgJG5leHRfbnVtYmVyOiAkdjtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXh0X251bWJlcjtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZF9rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmRfa2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZF9rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4vLy8gUmV0dXJuIHRoZSBiZXN0IGJyZWFrcG9pbnQgdG8gdXNlIGFjY29yZGluZyB0byB0aGUgY2FsbGluZyBjb250ZXh0LiBJdCByZXR1cm5zIGluIG9yZGVyOlxuLy8vIDEuIHRoZSBnaXZlbiBgJHZhbHVlYCBhcmd1bWVudCBpZiBpdCBpcyBub3QgbnVsbC5cbi8vLyAyLiB0aGUgZ2xvYmFsIGJyZWFrcG9pbnQgY29udGV4dCBgJC16Zi1zaXplYCBpZiBpdCBpcyBub3QgbnVsbCAobGlrZSBpZiBjYWxsZWQgaW5zaWRlIHRoZW4gYGJyZWFrcG9pbnQoKWAgbWl4aW4pXG4vLy8gMy4gdGhlIGdpdmVuIGAkZGVmYXVsdGAgYXJndW1lbnQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSBbbnVsbF0gLSBCcmVha3BvaW50IHRvIHVzZSBpbiBwcmlvcml0eSBpZiBub24tbnVsbC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkZWZhdWx0IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGJ5IGRlZmF1bHQgaWYgbm8gb3RoZXIgdmFsdWUgY2FuIGJlIHVzZWQuXG4vLy9cbi8vLyBAcmV0dXJuIHtLZXl3b3JkfSBUaGUgcmVzb2x2ZWQgYnJlYWtwb2ludC5cbkBmdW5jdGlvbiAtemYtY3VycmVudC1icmVha3BvaW50KCR2YWx1ZTogbnVsbCwgJGRlZmF1bHQ6IG51bGwpIHtcbiAgQGlmICgkdmFsdWUgIT0gbnVsbCkge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG4gIEBlbHNlIGlmICh2YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIGFuZCB0eXBlLW9mKCQtemYtc2l6ZSkgIT0gJ251bWJlcicpIGFuZCAkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgQHJldHVybiAkLXpmLXNpemU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJGRlZmF1bHQ7XG4gIH1cbn1cblxuLy8vIFJldHVybiBtZWRpYSBxdWVyeSBzdHJpbmcgZnJvbSB0aGUgZ2l2ZW4gbWluIGFuZC9vciBtYXggbGltaXRzLlxuLy8vIElmIGEgbGltaXQgaXMgZXF1YWwgdG8gYG51bGxgIG9yIGAwYCwgaXQgaXMgaWdub3JlZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWluIFswXSAtIE1pbiBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCBbMF0gLSBNYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtaW4tbmFtZSBbJ21pbi13aWR0aCddIC0gTmFtZSBvZiB0aGUgbWluIG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGVsaW1pdGVyIFsnbWF4LXdpZHRoJ10gLSBOYW1lIG9mIHRoZSBtYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBNZWRpYSBRdWVyeSBzdHJpbmcuXG5AZnVuY3Rpb24gLXpmLWJwLWpvaW4oXG4gICRtaW46IDAsXG4gICRtYXg6IDAsXG4gICRtaW4tbmFtZTogJ21pbi13aWR0aCcsXG4gICRtYXgtbmFtZTogJ21heC13aWR0aCdcbikge1xuICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgIGlmKCRtaW4gYW5kICRtaW4gPiAwLCAnKCN7JG1pbi1uYW1lfTogI3skbWlufSknLCBudWxsKSxcbiAgICBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJygjeyRtYXgtbmFtZX06ICN7JG1heH0pJywgbnVsbCksXG4gICAgJyBhbmQgJyk7XG59XG5cbiRzbWFsbC11cDogJyc7XG4kc21hbGwtb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbiRtZWRpdW0tdXA6ICcnO1xuJG1lZGl1bS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG4kbGFyZ2UtdXA6ICcnO1xuJGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG4keGxhcmdlLXVwOiAnJztcbiR4bGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHh4bGFyZ2UtdXA6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIHdpZHRoIG9mIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkd2lkdGggWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCB0byBtYWtlIHRoZSBjb2x1bW4uIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBmdW5jdGlvbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1zaXplKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgd2lkdGg6IGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXNpemUoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXNpemVcbkBtaXhpbiBncmlkLWNvbC1zaXplKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBGaW5kcyB0aGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3Igb2YgdHdvIGludGVnZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhIC0gRmlyc3QgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiIC0gU2Vjb25kIG51bWJlciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yLlxuQGZ1bmN0aW9uIGdjZCgkYSwgJGIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL0dyZWF0ZXN0X2NvbW1vbl9kaXZpc29yI0phdmFTY3JpcHRcbiAgQGlmICgkYiAhPSAwKSB7XG4gICAgQHJldHVybiBnY2QoJGIsICRhICUgJGIpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGFicygkYSk7XG4gIH1cbn1cblxuLy8vIEhhbmRsZXMgZGVjaW1hbCBleHBvbmVudHMgYnkgdHJ5aW5nIHRvIGNvbnZlcnQgdGhlbSBpbnRvIGEgZnJhY3Rpb24gYW5kIHRoZW4gdXNlIGEgbnRoLXJvb3QtYWxnb3JpdGhtIGZvciBwYXJ0cyBvZiB0aGUgY2FsY3VsYXRpb25cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBiYXNlIG51bWJlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGV4cG9uZW50IC0gVGhlIGV4cG9uZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHByb2R1Y3Qgb2YgdGhlIGV4cG9uZW50aWF0aW9uLlxuQGZ1bmN0aW9uIHBvdygkYmFzZSwgJGV4cG9uZW50LCAkcHJlYzogMTYpIHtcbiAgQGlmIChmbG9vcigkZXhwb25lbnQpICE9ICRleHBvbmVudCkge1xuICAgICRwcmVjMiA6IHBvdygxMCwgJHByZWMpO1xuICAgICRleHBvbmVudDogcm91bmQoJGV4cG9uZW50ICogJHByZWMyKTtcbiAgICAkZGVub21pbmF0b3I6IGdjZCgkZXhwb25lbnQsICRwcmVjMik7XG4gICAgQHJldHVybiBudGgtcm9vdChwb3coJGJhc2UsICRleHBvbmVudCAvICRkZW5vbWluYXRvciksICRwcmVjMiAvICRkZW5vbWluYXRvciwgJHByZWMpO1xuICB9XG5cbiAgJHZhbHVlOiAkYmFzZTtcbiAgQGlmICRleHBvbmVudCA+IDEge1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGV4cG9uZW50IHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogJGJhc2U7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRleHBvbmVudCA8IDEge1xuICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggLSRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAvICRiYXNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG5AZnVuY3Rpb24gbnRoLXJvb3QoJG51bSwgJG46IDIsICRwcmVjOiAxMikge1xuICAvLyBGcm9tOiBodHRwOi8vcm9zZXR0YWNvZGUub3JnL3dpa2kvTnRoX3Jvb3QjSmF2YVNjcmlwdFxuICAkeDogMTtcblxuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRwcmVjIHtcbiAgICAkeDogMSAvICRuICogKCgkbiAtIDEpICogJHggKyAoJG51bSAvIHBvdygkeCwgJG4gLSAxKSkpO1xuICB9XG5cbiAgQHJldHVybiAkeDtcbn1cblxuLy8vIENhbGN1bGF0ZXMgdGhlIGhlaWdodCBhcyBhIHBlcmNlbnRhZ2Ugb2YgdGhlIHdpZHRoIGZvciBhIGdpdmVuIHJhdGlvLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHJhdGlvIC0gUmF0aW8gdG8gdXNlIHRvIGNhbGN1bGF0ZSB0aGUgaGVpZ2h0LCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG4vLy8gQHJldHVybiB7TnVtYmVyfSBBIHBlcmNlbnRhZ2UgdmFsdWUgZm9yIHRoZSBoZWlnaHQgcmVsYXRpdmUgdG8gdGhlIHdpZHRoIG9mIGEgcmVzcG9uc2l2ZSBjb250YWluZXIuXG5AZnVuY3Rpb24gcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pIHtcbiAgJHc6IG50aCgkcmF0aW8sIDEpO1xuICAkaDogbnRoKCRyYXRpbywgMyk7XG4gIEByZXR1cm4gJGggLyAkdyAqIDEwMCU7XG59XG5cbi8vLyBQYXJzZSB0aGUgZ2l2ZW4gYCRmcmFjdGlvbmAgdG8gbnVtZXJhdG9ycyBhbmQgZGVudW1lcmF0b3JzLlxuLy8vXG4vLy8gQHBhcmFtIHsqfSAkZnJhY3Rpb24gLSBWYWx1ZSByZXByZXNlbnRpbmcgYSBmcmFjdGlvbiB0byBwYXJzZS4gSXQgY2FuIGJlIGZvcm1hdHRlZCBhcyBgNTAlYCwgYDEgb2YgMmAsIGAxLzJgIG9yIGA1MGAgKG5vIGRlbm9taW5hdG9yIHdvdWxkIGJlIHJldHVybmVkKS5cbi8vL1xuLy8vIEByZXR1cm4ge0xpc3R9IExpc3Qgb2YgcGFyc2VkIHZhbHVlcyB3aXRoIG51bWVyYXRvciBhdCBmaXJzdCBwb3NpdGlvbiBhbmQgZGVudW1lcmF0b3IgYXMgc2Vjb25kLiBUaGVzZSB2YWx1ZXMgbWF5IGJlIG51bGwuXG5AZnVuY3Rpb24gemYtcGFyc2UtZnJhY3Rpb24oJGZyYWN0aW9uKSB7XG5cbiAgQGlmIHR5cGUtb2YoJGZyYWN0aW9uKSA9PSAnbnVtYmVyJyB7XG4gICAgLy8gXCI1MCVcIlxuICAgIEBpZiB1bml0KCRmcmFjdGlvbikgPT0gJyUnIHtcbiAgICAgIEByZXR1cm4gKHN0cmlwLXVuaXQoJGZyYWN0aW9uKSwgMTAwKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgKHVuaXQoJGZyYWN0aW9uKSA9PSAnJykge1xuICAgICAgLy8gXCIwLjVcIlxuICAgICAgQGlmICRmcmFjdGlvbiA8IDEge1xuICAgICAgICBAcmV0dXJuICgkZnJhY3Rpb24gKiAxMDAsIDEwMCk7XG4gICAgICB9XG4gICAgICAvLyBcIjUwXCJcbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiAoJGZyYWN0aW9uLCBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiB0eXBlLW9mKCRmcmFjdGlvbikgPT0gJ2xpc3QnIHtcbiAgICAvLyBcIjUwIG9mIDEwMFwiLCBcIjUwLzEwMFwiLi4uXG4gICAgQGlmIGxlbmd0aCgkZnJhY3Rpb24pID09IDNcbiAgICAgIGFuZCB0eXBlLW9mKG50aCgkZnJhY3Rpb24sIDEpID09ICdudW1iZXInKVxuICAgICAgYW5kIHR5cGUtb2YobnRoKCRmcmFjdGlvbiwgMykgPT0gJ251bWJlcicpIHtcbiAgICAgIEByZXR1cm4gKG50aCgkZnJhY3Rpb24sIDEpLCBudGgoJGZyYWN0aW9uLCAzKSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAobnVsbCwgbnVsbCk7XG59XG5cbi8vLyBSZXR1cm5zIHdoZXRoZXIgdGhlIGdpdmVuIGAkdmFsdWVgIHJlcHJlc2VudHMgYSBmcmFjdGlvbi4gU3VwcG9ydHMgZm9ybWF0cyBsaWtlIGA1MCVgLCBgMSBvZiAyYCwgYDEgcGVyIDJgIG9yIGAxLzJgLlxuLy8vXG4vLy8gQHBhcmFtIHsqfSAkdmFsdWUgLSBWYWx1ZSB0byB0ZXN0LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGFsbG93LW5vLWRlbm9taW5hdG9yIFtmYWxzZV0gLSBJZiBgdHJ1ZWAsIHNpbXBsZSBudW1iZXJzIHdpdGhvdXQgZGVub21pbmF0b3JzIGxpa2UgYDUwYCBhcmUgc3VwcG9ydGVkLlxuLy8vXG4vLy8gQHJldHVybiB7Qm9vbGVhbn0gYHRydWVgIGlmIGAkdmFsdWVgIHJlcHJlc2VudHMgYSBmcmFjdGlvbiwgYGZhbHNlYCBvdGhlcndpc2UuXG5AZnVuY3Rpb24gemYtaXMtZnJhY3Rpb24oJHZhbHVlLCAkYWxsb3ctbm8tZGVub21pbmF0b3I6IGZhbHNlKSB7XG4gICRwYXJzZWQ6IHpmLXBhcnNlLWZyYWN0aW9uKCR2YWx1ZSk7XG4gIEByZXR1cm4gbm90KG50aCgkcGFyc2VkLCAxKSA9PSBudWxsXG4gICAgb3IgKG50aCgkcGFyc2VkLCAyKSA9PSBudWxsIGFuZCAkYWxsb3ctbm8tZGVub21pbmF0b3IgPT0gZmFsc2UpKTtcbn1cblxuLy8vIENhbGN1bGF0ZSBhIHBlcmNlbnRhZ2UgZnJvbSBhIGdpdmVuIGZyYWN0aW9uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGZyYWN0aW9uIC0gVmFsdWUgcmVwcmVzZW50aW5nIGEgZnJhY3Rpb24gdG8gdXNlIHRvIGNhbGN1bGF0ZSB0aGUgcGVyY2VudGFnZSwgZm9ybWF0dGVkIGFzIGA1MGAgKHJlbGF0aXZlIHRvIGAkZGVub21pbmF0b3JgKSwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRkZW5vbWluYXRvciAtIERlZmF1bHQgdmFsdWUgdG8gdXNlIGFzIGRlbm9taW5hdG9yIHdoZW4gYCRmcmFjdGlvbmAgcmVwcmVzZW50cyBhbiBhYnNvbHV0ZSB2YWx1ZS5cbkBmdW5jdGlvbiBmcmFjdGlvbi10by1wZXJjZW50YWdlKFxuICAkZnJhY3Rpb24sXG4gICRkZW5vbWluYXRvcjogbnVsbFxuKSB7XG4gICRwYXJzZWQ6IHpmLXBhcnNlLWZyYWN0aW9uKCRmcmFjdGlvbik7XG4gICRwYXJzZWQtbm9taW5hdG9yOiBudGgoJHBhcnNlZCwgMSk7XG4gICRwYXJzZWQtZGVub21pbmF0b3I6IG50aCgkcGFyc2VkLCAyKTtcblxuICBAaWYgJHBhcnNlZC1ub21pbmF0b3IgPT0gbnVsbCB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIFwiZnJhY3Rpb24tdG8tcGVyY2VudGFnZSgpXCIuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIiAvIFwibi9uXCIuJztcbiAgfVxuICBAaWYgJHBhcnNlZC1kZW5vbWluYXRvciA9PSBudWxsIHtcbiAgICBAaWYgdHlwZS1vZigkZGVub21pbmF0b3IpID09ICdudW1iZXInIHtcbiAgICAgICRwYXJzZWQtZGVub21pbmF0b3I6ICRkZW5vbWluYXRvcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGVycm9yICdFcnJvciB3aXRoIFwiZnJhY3Rpb24tdG8tcGVyY2VudGFnZSgpXCIuIEEgZGVmYXVsdCBcIiRkZW5vbWluYXRvclwiIGlzIHJlcXVpcmVkIHRvIHN1cHBvcnQgYWJzb2x1dGUgdmFsdWVzJztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIHBlcmNlbnRhZ2UoJHBhcnNlZC1ub21pbmF0b3IgLyAkcGFyc2VkLWRlbm9taW5hdG9yKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDYWxjdWxhdGVzIHRoZSB3aWR0aCBvZiBhIGNvbHVtbiBiYXNlZCBvbiBhIG51bWJlciBvZiBmYWN0b3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGNvbHVtbnNcbi8vLyAgIFdpZHRoIG9mIHRoZSBjb2x1bW4uIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHBlcmNlbnRhZ2UgdmFsdWUgd2lsbCBtYWtlIHRoZSBjb2x1bW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIHNpbmdsZSBkaWdpdCB3aWxsIG1ha2UgdGhlIGNvbHVtbiBzcGFuIHRoYXQgbnVtYmVyIG9mIGNvbHVtbnMgd2lkZSwgdGFraW5nIGludG8gYWNjb3VudCB0aGUgY29sdW1uIGNvdW50IG9mIHRoZSBwYXJlbnQgcm93LlxuLy8vICAgLSBBIGxpc3Qgb2YgdGhlIGZvcm1hdCBcInggb2YgeVwiICh3aXRob3V0IHF1b3Rlcykgd2lsbCBtYWtlIGEgY29sdW1uIHRoYXQgaXMgKngqIGNvbHVtbnMgd2lkZSwgYXNzdW1pbmcgKnkqIHRvdGFsIGNvbHVtbnMgZm9yIHRoZSBwYXJlbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIGNhbGN1bGF0ZWQgcGVyY2VudGFnZSB2YWx1ZS5cbkBmdW5jdGlvbiBncmlkLWNvbHVtbigkY29sdW1ucykge1xuICBAcmV0dXJuIGZyYWN0aW9uLXRvLXBlcmNlbnRhZ2UoJGNvbHVtbnMsICRkZW5vbWluYXRvcjogJGdyaWQtY29sdW1uLWNvdW50KTtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRjb2x1bW5zIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggb2YgdGhlIGNvbHVtbi4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uLWd1dHRlcigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuQG1peGluIGdyaWQtY29sdW1uKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xuICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuXG4gIC8vIEd1dHRlcnNcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgLy8gUG9zaXRpb25cbiAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKGF1dG8pO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uIHJvdy4gVGhpcyBpcyB0aGUgZXF1aXZhbGVudCBvZiBhZGRpbmcgYC5yb3dgIGFuZCBgLmNvbHVtbmAgdG8gdGhlIHNhbWUgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFdpZHRoIG9mIHRoZSBndXR0ZXJzIG9uIGVpdGhlciBzaWRlIG9mIHRoZSBjb2x1bW4gcm93LiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uLWd1dHRlcigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuQG1peGluIGdyaWQtY29sdW1uLXJvdyhcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLXJvdztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAmLFxuICAmOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBmdW5jdGlvbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEByZXR1cm4gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AbWl4aW4gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXJvdygpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcm93XG5AbWl4aW4gZ3JpZC1jb2wtcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygkZ3V0dGVycyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gUmVwb3NpdGlvbiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRwb3NpdGlvbiAtIEl0IGNhbiBiZTpcbi8vLyAgICogQSBudW1iZXI6IFRoZSBjb2x1bW4gd2lsbCBtb3ZlIGVxdWFsIHRvIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uIGNvdW50XG4vLy8gICAgIHNwZWNpZmllZC4gQSBwb3NpdGl2ZSBudW1iZXIgd2lsbCBwdXNoIHRoZSBjb2x1bW4gdG8gdGhlIHJpZ2h0LCB3aGlsZVxuLy8vICAgICBhIG5lZ2F0aXZlIG51bWJlciB3aWxsIHB1bGwgaXQgdG8gdGhlIGxlZnQuXG4vLy8gICAqIGBjZW50ZXJgOiBDb2x1bW4gd2lsbCBiZSBjZW50ZXJlZFxuLy8vICAgKiBgYXV0b2A6IENvbHVtbiB3aWxsIGJlIHB1c2hlZCB0byB0aGUgbGVmdCAob3IgdG8gdGhlIHJpZ2h0IGZvciB0aGUgbGFzdCBjb2x1bW4pLlxuQG1peGluIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbikge1xuICAvLyBBdXRvIHBvc2l0aW9uaW5nXG4gIEBpZiAkcG9zaXRpb24gPT0gYXV0byB7XG4gICAgJiwgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBMYXN0IGNvbHVtbiBhbGlnbm1lbnRcbiAgICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICAgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6ICRnbG9iYWwtcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHVzaC9wdWxsXG4gIEBlbHNlIGlmIHR5cGUtb2YoJHBvc2l0aW9uKSA9PSAnbnVtYmVyJyB7XG4gICAgJG9mZnNldDogcGVyY2VudGFnZSgkcG9zaXRpb24gLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxuXG4gIC8vIENlbnRlciBwb3NpdGlvbmluZ1xuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gY2VudGVyIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uLXBvc2l0aW9uKCkuIEVudGVyIGEgcG9zaXRpdmUgb3IgbmVnYXRpdmUgbnVtYmVyLCBcImNlbnRlclwiIG9yIFwiYXV0b1wiLic7XG4gIH1cbn1cblxuLy8vIFJlc2V0IGEgcG9zaXRpb24gZGVmaW5pdGlvbi5cbkBtaXhpbiBncmlkLWNvbHVtbi11bnBvc2l0aW9uIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oYXV0byk7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodCBieSBgJG5gIGNvbHVtbnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBXaWR0aCB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1vZmZzZXQoJG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogZ3JpZC1jb2x1bW4oJG4pO1xufVxuXG4vLy8gRGlzYWJsZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiB0aGUgbGFzdCBjb2x1bW4gaW4gYSByb3cgYWxpZ25pbmcgdG8gdGhlIG9wcG9zaXRlIGVkZ2UuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZW5kIHtcbiAgLy8gVGhpcyBleHRyYSBzcGVjaWZpY2l0eSBpcyByZXF1aXJlZCBmb3IgdGhlIHByb3BlcnR5IHRvIGJlIGFwcGxpZWRcbiAgJjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXBvcygkcG9zaXRpb24pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVucG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVucG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC11bnBvcyB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVucG9zaXRpb247XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1vZmZzZXQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLW9mZnNldFxuQG1peGluIGdyaWQtY29sLW9mZigkbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoJG4pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZW5kKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1lbmRcbkBtaXhpbiBncmlkLWNvbC1lbmQge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1lbmQ7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY29sdW1uJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRndXR0ZXJcbi8vLyAgIFRoZSBndXR0ZXIgdG8gYXBwbHkgdG8gY2hpbGQgZWxlbWVudHMuIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHdpbGwgdXNlIHRoZSB2YWx1ZXMgaW4gdGhlICRncmlkLWNvbHVtbi1ndXR0ZXIgbWFwLCBpbmNsdWRpbmcgYnJlYWtwb2ludCBzaXplcy5cbi8vLyAgIC0gQSBmaXhlZCBudW1lcmljIHZhbHVlIHdpbGwgYXBwbHkgdGhpcyBndXR0ZXIgdG8gYWxsIGJyZWFrcG9pbnRzLlxuQG1peGluIGdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbicsXG4gICRndXR0ZXI6IG51bGxcbikge1xuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICAgLy8gSWYgYSAkZ3V0dGVyIHZhbHVlIGlzIHBhc3NlZFxuICAgIEBpZigkZ3V0dGVyKSB7XG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICBAaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCR2YWx1ZSkgLyAyO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2UgaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbnVtYmVyJyBhbmQgc3RyaXAtdW5pdCgkZ3V0dGVyKSA+IDAge1xuICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKCN7JG59bisxKSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXh0cmEgQ1NTIHRvIGJsb2NrIGdyaWQgY2hpbGRyZW4gc28gdGhlIGxhc3QgaXRlbXMgaW4gdGhlIHJvdyBjZW50ZXIgYXV0b21hdGljYWxseS4gQXBwbHkgdGhpcyB0byB0aGUgY29sdW1ucywgbm90IHRoZSByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgaXRlbXMgdGhhdCBhcHBlYXIgaW4gZWFjaCByb3cuXG5AbWl4aW4gZ3JpZC1sYXlvdXQtY2VudGVyLWxhc3QoJG4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdG8gJG4ge1xuICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgxMDAgLSAxMDAvJG4gKiAkaSkgLyAyICogMSU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogKDEwMCAtIDEwMC8kbiAqICRpKSAvIDIgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vIE1hcmdpbiBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1iYXNlLWdyaWQtY2xhc3NlcyB7XG5cbiAgLy8gR3JpZCBDb250YWluZXJcbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcblxuICAgICYuZmx1aWQge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoMTAwJSk7XG4gICAgfVxuXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUsIDApO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJhc2UgZ3JpZCBzdHlsZXNcbiAgLmdyaWQteCB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgfVxuXG4gIC5jZWxsIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKGZ1bGwsICRndXR0ZXItdHlwZTogbm9uZSk7XG5cbiAgICAmLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgIH1cblxuICAgICYuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICB9XG4gIC5ncmlkLXgge1xuICAgID4gLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKGF1dG8sICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgfVxuXG4gICAgPiAuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQXV0byB3aWR0aFxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIC8vIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrL3dvcmthcm91bmQsIHNlZSB0aGVzZSBpc3N1ZXMgJiBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTAyNDRcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAyMjIgYW5kXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgLmdyaWQteCB7XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIC8vIFJlc3BvbnNpdmUgXCJhdXRvXCIgbW9kaWZpZXJcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwoYXV0bywgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAlLXh5LWNlbGwtYmFzZS1zaHJpbmstaG9yaXpvbnRhbC0jeyQtemYtc2l6ZX0ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBcInNocmlua1wiIG1vZGlmaWVyXG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9O1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgd2lkdGggbW9kaWZpZXJzXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstaG9yaXpvbnRhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCB3aWR0aCB3aGVuIHVzaW5nIGAuZ3JpZC1tYXJnaW4teGAgbm90IG9uIGAuZ3JpZC14YFxuICAuZ3JpZC1tYXJnaW4teDpub3QoLmdyaWQteCkgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAvLyBSZXNldCBoZWlnaHQgd2hlbiB1c2luZyBgLmdyaWQtbWFyZ2luLXlgIG5vdCBvbiBgLmdyaWQteWBcbiAgLmdyaWQtbWFyZ2luLXk6bm90KC5ncmlkLXkpID4gLmNlbGwge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG5AbWl4aW4gLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCRjbGFzcy1icmVha3BvaW50LCAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbCkge1xuICAkcHJlZml4OiBpZigkY2xhc3MtYnJlYWtwb2ludCA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCwgJycsICcjeyRjbGFzcy1icmVha3BvaW50fS0nKTtcbiAgPiAuI3skcHJlZml4fWF1dG8ge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShhdXRvLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gIH1cblxuICA+IC4jeyRwcmVmaXh9c2hyaW5rIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAkY2xhc3NuYW1lOiBpZigkdmVydGljYWwsICcuI3skY2xhc3MtYnJlYWtwb2ludH0tI3skaX0nLCAnLiN7JGNsYXNzLWJyZWFrcG9pbnR9LSN7JGl9Jyk7XG5cbiAgICA+ICN7JGNsYXNzbmFtZX0ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgfVxuICB9XG59XG5cbi8vIE1hcmdpbiBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKFxuICAkZ3V0dGVyLXBvc2l0aW9uOiBsZWZ0IHJpZ2h0LFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkd3JhcHBpbmctc2VsZWN0b3I6ICcuZ3JpZC1tYXJnaW4teCdcbil7XG4gICN7JHdyYXBwaW5nLXNlbGVjdG9yfSB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUsICRndXR0ZXItcG9zaXRpb246ICRndXR0ZXItcG9zaXRpb24pO1xuXG4gICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgID4gLmNlbGwge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgkdmVydGljYWw6ICR2ZXJ0aWNhbCwgJG91dHB1dDogKHNpemUgZ3V0dGVycykpO1xuICAgIH1cblxuICAgIC8vIGJhc2Ugc3R5bGVzIG5lZWQgdG8gYWxsIGJlIGJlZm9yZSB0aGUgYXV0byBhbmQgc2hyaW5rIHN0eWxlc1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpIGFuZCAkLXpmLXNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgPiAuY2VsbCB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbCgkdmVydGljYWw6ICR2ZXJ0aWNhbCwgJG91dHB1dDogKHNpemUgZ3V0dGVycykpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcblxuICAgICAgLy8gVGhpcyBpcyBwdXJlbHkgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycyAtIHRoZSBtYXJnaW4gZ3JpZCBoYXMgdG8gZ28gYmFjayBhbmQgYWRqdXN0IHdpZHRocyAob3IgaGVpZ2h0cylcbiAgICAgIC8vIGZvciBhbGwgcHJpb3IgYnJlYWtwb2ludHMuXG4gICAgICAvLyBBcyB0aGVpciBndXR0ZXIgaXMgZGVmaW5lZCB3aXRoIHRoZWlyIHdpZHRoL2hlaWdodCwgZXZlbiBicmVha3BvaW50IHdpdGhvdXQgYSBuZXcgbWFyZ2luIG11c3QgYmVcbiAgICAgIC8vIGdlbmVyYXRlZCB0byBub3QgaGF2aW5nIHRoZWlyIHdpZHRoL2hlaWdodCBvdmVycmlkZWQgYnkgcmUtYWRqdXN0ZWQgc21hbGxlciBicmVha3BvaW50cy5cbiAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkpIHtcbiAgICAgICAgQGVhY2ggJGJwIGluIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJC16Zi1zaXplKSB7XG4gICAgICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCRicCwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkLXpmLXNpemUsICQtemYtc2l6ZSwgJHZlcnRpY2FsKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUGFkZGluZyBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcyB7XG4gIC5ncmlkLXBhZGRpbmcteCB7XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIG5lc3RlZCBncmlkc1xuICAgIC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSk7XG4gICAgfVxuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBncmlkcyB3aXRoaW4gYGdyaWQtY29udGFpbmVyL2dyaWQtY29udGFpbmVyLmZsdWlkYFxuICAgIC8vIFRoaXMgYWxsb3dzIG1hcmdpbiBhbmQgcGFkZGluZyBncmlkcyB0byBsaW5lIHVwIHdpdGggZWFjaG90aGVyXG4gICAgLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAmIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgfVxuICB9XG59XG5cbi8vIEJsb2NrIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LWJsb2NrLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQ6IHRydWUsICRwYWRkaW5nLWdyaWQ6IHRydWUpIHtcbiAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkb3V0cHV0OiAoc2l6ZSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC8vIFRoaXMgaXMgcHVyZWx5IGZvciByZXNwb25zaXZlIGd1dHRlcnMgLSB0aGUgbWFyZ2luIGdyaWQgaGFzIHRvIGdvIGJhY2sgYW5kIGFkanVzdCB3aWR0aHMgKG9yIGhlaWdodHMpXG4gICAgICAgIC8vIGZvciBwcmlvciBicmVha3BvaW50cyBiYXNlZCBvbiB0aGUgcmVzcG9uc2l2ZSBndXR0ZXIuXG4gICAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkpIHtcbiAgICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICAgIEBpZihtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJGJwKSkge1xuICAgICAgICAgICAgICAuZ3JpZC1tYXJnaW4teC4jeyRicH0tdXAtI3skaX0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG91dHB1dDogKHNpemUpKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAuZ3JpZC1tYXJnaW4teC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG91dHB1dDogKHNpemUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDb2xsYXBzZSBjbGFzc2VzXG5AbWl4aW4geHktY29sbGFwc2UtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAZWFjaCAkYnAgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgICAuI3skYnB9LW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBtYXJnaW4sICRtaW4tYnJlYWtwb2ludDogJGJwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgICAuI3skYnB9LXBhZGRpbmctY29sbGFwc2Uge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbGxhcHNlKCRndXR0ZXItdHlwZTogcGFkZGluZywgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBPZmZzZXQgY2xhc3Nlc1xuQG1peGluIHh5LW9mZnNldC1jZWxsLWNsYXNzZXMge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gT2Zmc2V0c1xuICAgICAgJG86ICRpIC0gMTtcblxuICAgICAgLiN7JC16Zi1zaXplfS1vZmZzZXQtI3skb30ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLW9mZnNldCgkbywgJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgIH1cblxuICAgICAgLmdyaWQtbWFyZ2luLXggPiAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVmVydGljYWwgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktdmVydGljYWwtZ3JpZC1jbGFzc2VzKFxuICAkbWFyZ2luLWdyaWQ6IHRydWUsXG4gICRwYWRkaW5nLWdyaWQ6IHRydWVcbikge1xuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICB9XG4gIH1cblxuICAuZ3JpZC15IHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkKHZlcnRpY2FsLCBmYWxzZSk7XG5cblxuICAgID4gLmNlbGwge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1yZXNldCgpO1xuICAgIH1cblxuICAgID4gLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKGF1dG8sICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgIH1cblxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIC8vIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrL3dvcmthcm91bmQsIHNlZSB0aGVzZSBpc3N1ZXMgYW5kIFBScyBmb3IgdGhlIGJhY2tzdG9yeTpcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAyMjIgYW5kXG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAxNjRcbiAgICAgICRzdHI6IFwiPiAuI3skLXpmLXNpemV9LXNocmluaywgPiAuI3skLXpmLXNpemV9LWZ1bGxcIjtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICRzdHI6ICRzdHIgKyBcIiwgPiAuI3skLXpmLXNpemV9LSN7JGl9XCJcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tYXV0byB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbChhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgICAgfVxuXG4gICAgICAvLyBSZXNwb25zaXZlIFwic2hyaW5rXCIgbW9kaWZpZXJcbiAgICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cblxuICAgICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICB9XG5cbn1cblxuQG1peGluIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZDogdHJ1ZSwgJG1hcmdpbi1ncmlkOiB0cnVlKSB7XG4gIC8vIEZyYW1lZCBncmlkIHN0eWxlc1xuICAuZ3JpZC1mcmFtZSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgfVxuXG4gIC5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgfVxuXG4gIC5jZWxsLWJsb2NrIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gIH1cblxuICAuY2VsbC1ibG9jay15IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICB9XG5cblxuICAuY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gIH1cblxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcblxuICAgIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICAgIH1cblxuICAgIC5jZWxsIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2steSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdmVydGljYWwtZ3JpZCB7XG4gICAgLmdyaWQteSB7XG4gICAgICAmLmdyaWQtZnJhbWUge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAmLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAuZ3JpZC15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkaW5jbHVkZS1iYXNlOiBmYWxzZSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgIC5ncmlkLW1hcmdpbi15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaW5hbCBjbGFzc2VzXG5AbWl4aW4gZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXMoXG4gICRiYXNlLWdyaWQ6IHRydWUsXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZSxcbiAgJGJsb2NrLWdyaWQ6IHRydWUsXG4gICRjb2xsYXBzZTogdHJ1ZSxcbiAgJG9mZnNldDogdHJ1ZSxcbiAgJHZlcnRpY2FsLWdyaWQ6IHRydWUsXG4gICRmcmFtZS1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIEBpZigkYmFzZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmFzZS1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIE1hcmdpbiBncmlkXG4gIEBpZigkbWFyZ2luLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBQYWRkaW5nIGdyaWRcbiAgQGlmKCRwYWRkaW5nLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZFxuICBAaWYoJGJsb2NrLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIENvbGxhcHNlIGd1dHRlcnNcbiAgQGlmKCRjb2xsYXBzZSkge1xuICAgIEBpbmNsdWRlIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gT2Zmc2V0IGd1dHRlcnNcbiAgQGlmKCRvZmZzZXQpIHtcbiAgICBAaW5jbHVkZSB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBncmlkXG4gIEBpZigkdmVydGljYWwtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgQGlmICgkZnJhbWUtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZCwgJG1hcmdpbi1ncmlkKVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlIGd1dHRlcnMgZm9yIGEgY2VsbC9jb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGVpdGhlciBtYXJnaW4gb3IgcGFkZGluZy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lZ2F0aXZlIFtmYWxzZV0gLSBXaGV0aGVyIHRvIGFwcGx5IHRoZSBndXR0ZXIgYXMgYSBuZWdhdGl2ZSB2YWx1ZS4gQ29tbW9ubHkgdXNlZCBmb3IgbmVzdGVkIGdyaWRzLlxuQG1peGluIHh5LWd1dHRlcnMoXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRuZWdhdGl2ZTogZmFsc2Vcbikge1xuICAkb3BlcmF0b3I6IGlmKCRuZWdhdGl2ZSwgJy0nLCAnJyk7XG5cbiAgLy8gSWYgd2UgaGF2ZSBkZWNsYXJlZCBuZWdhdGl2ZSBndXR0ZXJzLCBmb3JjZSB0eXBlIHRvIGBtYXJnaW4uXG4gICRndXR0ZXItdHlwZTogaWYoJG5lZ2F0aXZlLCAnbWFyZ2luJywgJGd1dHRlci10eXBlKTtcblxuICAvLyBPdXRwdXQgb3VyIG1hcmdpbiBndXR0ZXJzLlxuICBAaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnKSB7XG4gICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoYXV0bywgJGd1dHRlcnMpIHtcbiAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcblxuICAgICAgLy8gTG9vcCB0aHJvdWdoIGVhY2ggZ3V0dGVyIHBvc2l0aW9uXG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ251bWJlcicpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVycykgLyAyO1xuXG4gICAgLy8gTG9vcCB0aHJvdWdoIGVhY2ggZ3V0dGVyIHBvc2l0aW9uXG4gICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogdW5xdW90ZShcIiN7JG9wZXJhdG9yfSN7JGd1dHRlcn1cIik7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIG1heCB3aWR0aCBjb250YWluZXIsIGRlc2lnbmVkIHRvIGhvdXNlIHlvdXIgZ3JpZCBjb250ZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbJGdyaWQtY29udGFpbmVyXSAtIGEgd2lkdGggdG8gbGltaXQgdGhlIGNvbnRhaW5lciB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRncmlkLWNvbnRhaW5lci1wYWRkaW5nXSAtIHBhZGRpbmdzIG9mIHRoZSBjb250YWluZXIuXG5AbWl4aW4geHktZ3JpZC1jb250YWluZXIoXG4gICR3aWR0aDogJGdyaWQtY29udGFpbmVyLFxuICAkcGFkZGluZzogJGdyaWQtY29udGFpbmVyLXBhZGRpbmdcbikge1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkcGFkZGluZywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLy8vIENyZWF0ZXMgYSBjb250YWluZXIgZm9yIHlvdXIgZmxleCBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbaG9yaXpvbnRhbF0gLSBFaXRoZXIgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbCBkaXJlY3Rpb24gb2YgY2VsbHMgd2l0aGluLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHdyYXAgW3RydWVdIC0gSWYgdGhlIGNlbGxzIHdpdGhpbiBzaG91bGQgd3JhcCBvciBub3QuXG5AbWl4aW4geHktZ3JpZChcbiAgJGRpcmVjdGlvbjogaG9yaXpvbnRhbCxcbiAgJHdyYXA6IHRydWVcbikge1xuICAkZGlyZWN0aW9uOiBpZigkZGlyZWN0aW9uID09ICdob3Jpem9udGFsJywgcm93LCBjb2x1bW4pO1xuICAkd3JhcDogaWYoJHdyYXAsIHdyYXAsIG5vd3JhcCk7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiAkZGlyZWN0aW9uICR3cmFwO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIENTUyBmbGV4IHZhbHVlIGZvciBhIGNlbGwgYmFzZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBBY2NlcHRzIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCwgYGdyb3dgLCBvciBhbnkgb3RoZXIgdmFsdWUgcmVwcmVzZW50aW5nIGEgY2VsbCBzaXplIChpdCB3aWxsIGJlIHRyZWF0ZWQgYXMgYHNocmlua2ApLlxuLy8vXG4vLy8gQHJldHVybnMge0xpc3R9IFRoZSBjZWxsIGZsZXggcHJvcGVydHkgdmFsdWUuXG5AZnVuY3Rpb24geHktY2VsbC1iYXNlKCRzaXplOiBmdWxsKSB7XG4gIEBpZiAoJHNpemUgPT0gJ2F1dG8nKSB7XG4gICAgQHJldHVybiAxIDEgMHB4O1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnZ3JvdycpIHtcbiAgICBAcmV0dXJuIDEgMCBhdXRvO1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnc2hyaW5rJyBvciAkc2l6ZSA9PSAnZnVsbCcgb3IgemYtaXMtZnJhY3Rpb24oJHNpemUsICRhbGxvdy1uby1kZW5vbWluYXRvcjogdHJ1ZSkpIHtcbiAgICBAcmV0dXJuIDAgMCBhdXRvO1xuICB9XG4gIEByZXR1cm4gbnVsbDtcbn1cblxuLy8vIENhbGN1bGF0ZSB0aGUgc2l6ZSBvZiBhIGNlbGwgZ3V0dGVycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCByZXR1cm5zIHRoZSByZXNwb25zaXZlIGd1dHRlcnMgbWFwIGAkZ3V0dGVyc2AuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ8TWFwfSBUaGUgY2VsbCBndXR0ZXIgc2l6ZSBvciB0aGUgcmVzcG9uc2l2ZSBndXR0ZXJzIG1hcC5cbkBmdW5jdGlvbiB4eS1jZWxsLWd1dHRlcnMoXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGJyZWFrcG9pbnQ6IG51bGxcbikge1xuICAvLyBGb3IgYGF1dG9gLCByZXR1cm5zIHRoZSByZXNwb25zaXZlIG1hcCBgJGd1dHRlcnNgLlxuICBAaWYgKCRicmVha3BvaW50ID09ICdhdXRvJykge1xuICAgIEByZXR1cm4gJGd1dHRlcnM7XG4gIH1cblxuICAvLyBVc2UgdGhlIGNvbnRleHR1YWwgYnJlYWtwb2ludCBieSBkZWZhdWx0LlxuICAkYnJlYWtwb2ludDogLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCk7XG5cbiAgQGlmICgkYnJlYWtwb2ludCkge1xuICAgIEByZXR1cm4gLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJC16Zi16ZXJvLWJyZWFrcG9pbnQpIG9yIDA7XG4gIH1cbn1cblxuLy8vIFJldHVybnMgdGhlIHBlcmNlbnRhZ2Ugc2l6ZSBvZiBhIGNlbGwuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkc2l6ZSBbJGdyaWQtY29sdW1uc10gLSBTaXplIHRvIG1ha2UgdGhlIGNlbGwuIFlvdSBjYW4gcGFzcyBhIHZhbHVlIGluIG11bHRpcGxlIGZvcm1hdHMsIHN1Y2ggYXMgYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvM2AuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBTaXplIG9mIHRoZSBjZWxsIChpbiBwZXJjZW50KS5cbkBmdW5jdGlvbiB4eS1jZWxsLXNpemUoXG4gICRzaXplOiAkZ3JpZC1jb2x1bW5zXG4pIHtcbiAgQHJldHVybiBmcmFjdGlvbi10by1wZXJjZW50YWdlKCRzaXplLCAkZGVub21pbmF0b3I6ICRncmlkLWNvbHVtbnMpO1xufVxuXG4vLy8gUmV0dXJucyB0aGUgYXBwcm9wcmlhdGUgQ1NTIHZhbHVlIGZvciBhIGNlbGwgc2l6ZS5cbi8vL1xuLy8vIEd1dHRlcnMtcmVsYXRlZCBhcmd1bWVudHMgYXJlIHJlcXVpcmVkIGZvciBjZWxscyB3aXRoIG1hcmdpbiBndXR0ZXJzIChieSBkZWZhdWx0KSBhcyB0aGUgZ3V0dGVyIGlzIGluY2x1ZGVkIGluIHRoZSB3aWR0aC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCBvciBhbnkgZnJhY3Rpb24gbGlrZSBgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgcmV0dXJucyBhIG1hcCBvZiBzaXplcyBhZGFwdGVkIHRvIHJlc3BvbnNpdmUgZ3V0dGVycy4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcnxTdHJpbmd8TWFwfSBUaGUgY2VsbCBzaXppbmcgcHJvcGVydHkgdmFsdWUsIG9yIGEgcmVzcG9uc2l2ZSBtYXAgb2YgdGhlbS5cbkBmdW5jdGlvbiB4eS1jZWxsLXNpemUtY3NzKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6IG51bGxcbikge1xuICAkbWFyZ2luLWd1dHRlcjogMDtcblxuICBAaWYgKCRzaXplID09ICdhdXRvJyBvciAkc2l6ZSA9PSAnc2hyaW5rJykge1xuICAgIEByZXR1cm4gYXV0bztcbiAgfVxuXG4gIC8vIEZvciBjZWxscyB3aXRoIG1hcmdpbiBndXR0ZXJzLCB0aGUgZ3V0dGVyIGlzIGluY2x1ZGVkIGluIHRoZSB3aWR0aC5cbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICAkbWFyZ2luLWd1dHRlcjogeHktY2VsbC1ndXR0ZXJzKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gICAgQGlmICgkbWFyZ2luLWd1dHRlciA9PSBudWxsKSB7XG4gICAgICBAZXJyb3IgJ3h5LWNlbGwtc2l6ZTogbm8gZ3V0dGVycyB3ZXJlIGZvdW5kIGluIGAkZ3V0dGVyc2AgZm9yIFwiJGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9XCInO1xuICAgIH1cbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSB0aGUgY2VsbCBzaXplIChudW1iZXIpXG4gICRzaXplLXJhdzogaWYoJHNpemUgPT0gJ2Z1bGwnLCAxMDAlLCB4eS1jZWxsLXNpemUoJHNpemUpKTtcblxuICAvLyBDYWxjdWxhdGUgdGhlIGNlbGwgQ1NTIHNpemUgaW5jbHVkaW5nIGd1dHRlcnMgKHN0cmluZylcbiAgLy8gSWYgdGhlIGNlbGwgaGFzIHJlc3BvbnNpdmUgbWFyZ2luIGd1dHRlcnMsIHJldHVybiBhIHJlc3BvbnNpdmUgbWFwIG9mIHNpemVzLlxuICBAaWYgdHlwZS1vZigkbWFyZ2luLWd1dHRlcikgPT0gJ21hcCcge1xuICAgICRyZXNwb25zaXZlLWNzcy1zaXplczogKCk7XG5cbiAgICBAZWFjaCAkYnAsICRtZyBpbiAkbWFyZ2luLWd1dHRlciB7XG4gICAgICAkc2l6ZS1jc3M6IGlmKCRtZyA9PSAwLCAkc2l6ZS1yYXcsIGNhbGMoI3skc2l6ZS1yYXd9IC0gI3tyZW0tY2FsYygkbWcpfSkpO1xuICAgICAgJHJlc3BvbnNpdmUtY3NzLXNpemVzOiBtYXAtbWVyZ2UoJHJlc3BvbnNpdmUtY3NzLXNpemVzLCAoJGJwOiAkc2l6ZS1jc3MpKTtcbiAgICB9XG5cbiAgICBAcmV0dXJuICRyZXNwb25zaXZlLWNzcy1zaXplcztcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiBhIHNpbmdsZSBDU1Mgc2l6ZS5cbiAgQGVsc2Uge1xuICAgICRjc3Mtc2l6ZTogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgJHNpemUtcmF3LCBjYWxjKCN7JHNpemUtcmF3fSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICAgIEByZXR1cm4gJGNzcy1zaXplO1xuICB9XG59XG5cbi8vLyBTZXRzIGJhc2UgZmxleCBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBBY2NlcHRzIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCwgYGdyb3dgLCBvciBhbnkgb3RoZXIgdmFsdWUgcmVwcmVzZW50aW5nIGEgY2VsbCBzaXplIChpdCB3aWxsIGJlIHRyZWF0ZWQgYXMgYHNocmlua2ApLlxuQG1peGluIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICAkYmFzZTogeHktY2VsbC1iYXNlKCRzaXplKTtcblxuICBmbGV4OiAjeyRiYXNlfTtcblxuICAvLyBTZXQgYmFzZSBzdHlsZXMgZm9yIFwiZnVsbFwiIG9ubHlcbiAgQGlmKCRzaXplID09ICdmdWxsJykge1xuICAgIG1pbi1oZWlnaHQ6IDBweDtcbiAgICBtaW4td2lkdGg6IDBweDtcbiAgfVxufVxuXG4vLy8gUmVzZXRzIGEgY2VsbHMgd2lkdGggKG9yIGhlaWdodCBpZiB2ZXJ0aWNhbCBpcyB0cnVlKSBhcyB3ZWxsIGFzIHN0cmlwcyBpdHMgZ3V0dGVycy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXJlc2V0KCR2ZXJ0aWNhbDogdHJ1ZSkge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgaGVpZ2h0LCB3aWR0aCk7XG4gICN7JGRpcmVjdGlvbn06IGF1dG87XG4gIG1heC0jeyRkaXJlY3Rpb259OiBub25lO1xufVxuXG4vLy8gU2V0cyBzaXppbmcgcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBHdXR0ZXJzLXJlbGF0ZWQgYXJndW1lbnRzIGFyZSByZXF1aXJlZCBmb3IgY2VsbHMgd2l0aCBtYXJnaW4gZ3V0dGVycyAoYnkgZGVmYXVsdCkgYXMgdGhlIGd1dHRlciBpcyBpbmNsdWRlZCBpbiB0aGUgd2lkdGguXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKDEwMCUgd2lkdGgpLCBgYXV0b2AgKHVzZSBhbGwgYXZhaWxhYmxlIHNwYWNlKSwgYHNocmlua2AgKHVzZSBvbmx5IHRoZSByZXF1aXJlZCBzcGFjZSkgb3IgYW55IGZyYWN0aW9uIChgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC4uLikuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIGdlbmVyYXRlcyBzaXplcyBhZGFwdGVkIGZvciByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1zaXplKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkc2l6ZXM6IHh5LWNlbGwtc2l6ZS1jc3MoJHNpemUsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRicmVha3BvaW50KTtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIGhlaWdodCwgd2lkdGgpO1xuXG4gIEBpZiAodHlwZS1vZigkc2l6ZXMpID09ICdtYXAnKSB7XG4gICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoYXV0bywgJHNpemVzKSB7XG4gICAgICAjeyRkaXJlY3Rpb259OiAkLXpmLWJwLXZhbHVlO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgI3skZGlyZWN0aW9ufTogJHNpemVzO1xuICB9XG59XG5cbi8vLyBTZXRzIGd1dHRlcnMgcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbbnVsbF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uIEJ5IGRlZmF1bHQgYHJpZ2h0IGxlZnRgIGZvciBob3Jpem9udGFsIGNlbGxzIGFuZCBgdG9wIGJvdHRvbWAgZm9yIHZlcnRpY2FsIGNlbGxzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgZ2VuZXJhdGVzIHJlc3BvbnNpdmUgZ3V0dGVycy4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBEaXJlY3Rpb24gb2YgdGhlIGd1dHRlcnMgdG8gb3V0cHV0LiBTZWUgYCRndXR0ZXItcG9zaXRpb25gLlxuQG1peGluIHh5LWNlbGwtZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAvLyBHZXQgdGhlIGRlZmF1bHQgZ3V0dGVyIHBvc2l0aW9uIGFjY29yZGluZyB0byBjZWxsIGRpcmVjdGlvblxuICBAaWYoJGd1dHRlci1wb3NpdGlvbiA9PSBudWxsKSB7XG4gICAgJGd1dHRlci1wb3NpdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHRvcCBib3R0b20sIGxlZnQgcmlnaHQpO1xuICB9XG5cbiAgLy8gR2V0IHRoZSBndXR0ZXIgd2lkdGggZm9yIHRoaXMgYnJlYWtwb2ludFxuICAkZ3V0dGVyLXdpZHRoOiB4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgQGlmICgkZ3V0dGVyLXdpZHRoID09IG51bGwpIHtcbiAgICBAZXJyb3IgJ3h5LWNlbGwtZ3V0dGVyczogbm8gZ3V0dGVycyB3ZXJlIGZvdW5kIGluIGAkZ3V0dGVyc2AgZm9yIFwiJGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9XCInO1xuICB9XG5cbiAgQGlmICgkZ3V0dGVyLXR5cGUgYW5kICRndXR0ZXItdHlwZSAhPSBub25lKSB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLXdpZHRoLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgY2VsbCBmb3IgeW91ciBncmlkLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgICgxMDAlIHdpZHRoKSwgYGF1dG9gICh1c2UgYWxsIGF2YWlsYWJsZSBzcGFjZSksIGBzaHJpbmtgICh1c2Ugb25seSB0aGUgcmVxdWlyZWQgc3BhY2UpIG9yIGFueSBmcmFjdGlvbiAoYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuLi4pLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW251bGxdIC0gW0RFUFJFQ0FURURdIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtudWxsXSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi4gQnkgZGVmYXVsdCBgcmlnaHQgbGVmdGAgZm9yIGhvcml6b250YWwgY2VsbHMgYW5kIGB0b3AgYm90dG9tYCBmb3IgdmVydGljYWwgY2VsbHMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCBnZW5lcmF0ZXMgcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuLy8vIEBwYXJhbSB7TGlzdH0gJG91dHB1dCBbKGJhc2Ugc2l6ZSBndXR0ZXJzKV0gLSBDZWxsIHBhcnRzIHRvIG91dHB1dC4gWW91IHdpbGwgbmVlZCB0byBnZW5lcmF0ZSBvdGhlcnMgcGFydHMgb2YgdGhlIGNlbGwgc2VwZXJhdGVseSwgaXQgbWF5IG5vdCB3b3JrIHByb3Blcmx5IG90aGVyd2lzZS5cbkBtaXhpbiB4eS1jZWxsKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IG51bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkb3V0cHV0OiAoYmFzZSBzaXplIGd1dHRlcnMpXG4pIHtcbiAgLy8gRGVmYXVsdCBmb3IgJGd1dHRlci1vdXRwdXRcbiAgQGlmICgkZ3V0dGVyLW91dHB1dCAhPSBudWxsKSB7XG4gICAgQHdhcm4gJ3h5LWNlbGw6ICRndXR0ZXItb3V0cHV0IGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZC4gU2VlIG1pZ3JhdGlvbiBub3RlcyBhdCBodHRwczovL2dpdC5pby9mb3VuZGF0aW9uLTYtNi0wJztcbiAgICBAaWYgKCRndXR0ZXItb3V0cHV0ID09IGZhbHNlKSB7XG4gICAgICAkb3V0cHV0OiBzbC1yZW1vdmUoJG91dHB1dCwgZ3V0dGVycyk7XG4gICAgfVxuICB9XG5cbiAgQGlmIChpbmRleCgkb3V0cHV0LCBiYXNlKSkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZSgkc2l6ZSk7XG4gIH1cbiAgQGlmIChpbmRleCgkb3V0cHV0LCBzaXplKSkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkc2l6ZSwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGJyZWFrcG9pbnQsICR2ZXJ0aWNhbCk7XG4gIH1cbiAgQGlmIChpbmRleCgkb3V0cHV0LCBndXR0ZXJzKSkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtZ3V0dGVycygkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uLCAkYnJlYWtwb2ludCwgJHZlcnRpY2FsKTtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHNpemVkIGdyaWQuIFVzZWQgdG8gZ2VuZXJhdGUgb3VyIGdyaWQgY2xhc3Nlcy5cbi8vL1xuLy8vIGB4eS1jZWxsLXN0YXRpYygpYCBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQuXG4vLy8gVXNlIGB4eS1jZWxsKClgIGluc3RlYWQgd2l0aCBgJG91dHB1dDogKHNpemUgZ3V0dGVycylgIHRvIG5vdCBnZW5lcmF0ZSB0aGUgY2VsbCBiYXNlLlxuLy8vIFNlZSBtaWdyYXRpb24gbm90ZXMgYXQgaHR0cHM6Ly9naXQuaW8vZm91bmRhdGlvbi02LTYtMFxuLy8vXG4vLy8gQGRlcHJlY2F0ZWQgdjYuNi4wXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKDEwMCUgd2lkdGgpLCBgYXV0b2AgKHVzZSBhbGwgYXZhaWxhYmxlIHNwYWNlKSwgYHNocmlua2AgKHVzZSBvbmx5IHRoZSByZXF1aXJlZCBzcGFjZSkgb3IgYW55IGZyYWN0aW9uIChgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC4uLikuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVycy4gQWx3YXlzIGB0cnVlYCBmb3IgbWFyZ2luIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXN0YXRpYyhcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICBAd2FybiAneHktY2VsbC1zdGF0aWMoKSBtaXhpbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQuIFVzZSBcInh5LWNlbGwoKVwiIGluc3RlYWQuIFNlZSBtaWdyYXRpb24gbm90ZXMgYXQgaHR0cHM6Ly9naXQuaW8vZm91bmRhdGlvbi02LTYtMCc7XG5cbiAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgJGd1dHRlci1wb3NpdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHRvcCBib3R0b20sIGxlZnQgcmlnaHQpO1xuXG4gICQtZ3V0dGVyLW91dHB1dDogaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nLCB0cnVlLCAkZ3V0dGVyLW91dHB1dCk7XG4gICQtZ3V0dGVyLW1hcmdpbjogaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nLCAkZ3V0dGVyLCAwKTtcblxuICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkLWd1dHRlci1tYXJnaW4sICR2ZXJ0aWNhbCk7XG4gIEBpZiAoJC1ndXR0ZXItb3V0cHV0KSB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY2VsbCddIC0gU2VsZWN0b3IocykgdG8gdXNlIGZvciBjaGlsZCBlbGVtZW50cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFtudWxsXSAtIFtERVBSRUNBVEVEXSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbbnVsbF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uIEJ5IGRlZmF1bHQgYHJpZ2h0IGxlZnRgIGZvciBob3Jpem9udGFsIGNlbGxzIGFuZCBgdG9wIGJvdHRvbWAgZm9yIHZlcnRpY2FsIGNlbGxzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgYnJlYWtwb2ludCB0byB1c2UgZm9yIHRoZSBjZWxsIGdlbmVyYXRpb24uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkb3V0cHV0IFsoYmFzZSBzaXplIGd1dHRlcnMpXSAtIENlbGwgcGFydHMgdG8gb3V0cHV0LiBZb3Ugd2lsbCBuZWVkIHRvIGdlbmVyYXRlIG90aGVycyBwYXJ0cyBvZiB0aGUgY2VsbCBzZXBlcmF0ZWx5LCBpdCBtYXkgbm90IHdvcmsgY29ycmVjdGx5IG90aGVyd2lzZS5cbkBtaXhpbiB4eS1ncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci1vdXRwdXQ6IG51bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkb3V0cHV0OiAoYmFzZSBzaXplIGd1dHRlcnMpXG4pIHtcbiAgJHNpemU6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgkc2l6ZSwgJGd1dHRlci1vdXRwdXQsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwsICRvdXRwdXQpO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ29sbGFwc2VzIHRoZSBncmlkIGEgY2VsbHMgd2l0aGluIGl0LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbLmNlbGxdIC0gVGhlIGNoaWxkIGVsZW1lbnQgdG8gcmVtb3ZlIHRoZSBndXR0ZXIgZnJvbS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFRoZSB0eXBlIG9mIGd1dHRlciB0byByZW1vdmUuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbnMgdG8gcmVtb3ZlIGd1dHRlcnMgZnJvbS4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbWluLWJyZWFrcG9pbnQgWyQtemYtemVyby1icmVha3BvaW50XSAtIE1pbmltdW0gYnJlYWtwb2ludCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgZm9yIHdoaWNoIHRvIGNvbGxhcHNlIHRoZSBndXR0ZXIuXG5AbWl4aW4geHktZ3JpZC1jb2xsYXBzZShcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG1pbi1icmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludFxuKSB7XG4gIC8vIEZpcnN0LCBsZXRzIG5lZ2F0ZSBhbnkgbWFyZ2lucyBvbiB0aGUgdG9wIGxldmVsXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGV4Y2x1ZGVkLWJwczogLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkbWluLWJyZWFrcG9pbnQpO1xuXG4gICAgLy8gT3V0cHV0IG5ldyB3aWR0aHMgdG8gbm90IGluY2x1ZGUgZ3V0dGVyc1xuICAgIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZihzbC1jb250YWluKCRleGNsdWRlZC1icHMsICRicCkpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgcGFkZGluZy0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgdmFsdWUgdG8gb2Zmc2V0IGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ8U3RyaW5nfSBUaGUgY2VsbCBvZmZzZXQgcHJvcGVydHkgdmFsdWUuXG5AZnVuY3Rpb24geHktY2VsbC1vZmZzZXQoXG4gICRuLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gICRicmVha3BvaW50OiAtemYtY3VycmVudC1icmVha3BvaW50KCRicmVha3BvaW50LCAkZGVmYXVsdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICAkc2l6ZTogeHktY2VsbC1zaXplKCRuKTtcblxuICAkb2Zmc2V0OiAkc2l6ZTtcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYyh4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KSAvIDIpO1xuICAgICRvZmZzZXQ6IGlmKCRndXR0ZXIgPT0gMCwgJHNpemUsIGNhbGMoI3skc2l6ZX0gKyAjeyRndXR0ZXJ9KSk7XG4gIH1cbiAgQHJldHVybiAkb2Zmc2V0O1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQvYm90dG9tIGJ5IGAkbmAgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRicmVha3BvaW50IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGZvciBgJGd1dHRlcnNgLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuIElmIGEgbGlzdCBpcyBnaXZlbiwgbWVkaWEtcXVlcmllcyB3aWxsIGJlIGdlbmVyYXRlZC4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIHRoZSBvZmZzZXQuIElmIHNldCB0byB0cnVlIHdpbGwgYXBwbHkgbWFyZ2luLXRvcCBpbnN0ZWFkLlxuQG1peGluIHh5LWNlbGwtb2Zmc2V0KFxuICRuLFxuICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAkYnJlYWtwb2ludDogbnVsbCxcbiAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJGJyZWFrcG9pbnQ6IC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQsICRkZWZhdWx0OiAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCwgJ3RvcCcsICRnbG9iYWwtbGVmdCk7XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludC1pbigkYnJlYWtwb2ludCwgJG1lZGlhLXF1ZXJpZXM6ICdmb3ItbGlzdHMnKSB7XG4gICAgJG9mZnNldDogeHktY2VsbC1vZmZzZXQoJG4sICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUpO1xuICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRvZmZzZXR9O1xuICB9XG59XG4iLCIvLy8gTW9kaWZpZXMgYSBncmlkIHRvIGdpdmUgaXQgXCJmcmFtZVwiIGJlaGF2aW9yIChubyBvdmVyZmxvdywgbm8gd3JhcCwgc3RyZXRjaCBiZWhhdmlvcilcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3RlZCBbZmFsc2VdIC0gSXMgZ3JpZCBuZXN0ZWQgb3Igbm90LiBJZiBuZXN0ZWQgaXMgdHJ1ZSB0aGlzIHNldHMgdGhlIGZyYW1lIHRvIDEwMCUgaGVpZ2h0LCBvdGhlcndpc2Ugd2lsbCBiZSAxMDB2aC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFtudWxsXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbmNsdWRlLWJhc2UgW3RydWVdIC0gSW5jbHVkZSB0aGUgYmFzZSBzdHlsZXMgdGhhdCBkb24ndCB2YXJ5IHBlciBicmVha3BvaW50LlxuQG1peGluIHh5LWdyaWQtZnJhbWUoXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRuZXN0ZWQ6IGZhbHNlLFxuICAkZ3V0dGVyczogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICRpbmNsdWRlLWJhc2U6IHRydWVcbikge1xuXG4gIEBpZiAkaW5jbHVkZS1iYXNlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gIEBpZiAkYnJlYWtwb2ludCA9PSBudWxsIGFuZCB0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJyB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUoJHZlcnRpY2FsLCAkbmVzdGVkLCAkZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBHZXQgb3VyIGd1dHRlcnMgaWYgYXBwbGljYWJsZVxuICAgICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG5cbiAgICAvLyBJZiB3ZSBoYXZlIGEgZ3V0dGVyLCBhZGQgaXQgdG8gdGhlIHdpZHRoL2hlaWdodFxuICAgIEBpZiAkZ3V0dGVyIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIGhlaWdodDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIHdpZHRoOiBjYWxjKCN7JHVuaXR9ICsgI3skZ3V0dGVyfSk7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgIGhlaWdodDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2aCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgd2lkdGg6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdncpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gTW9kaWZpZXMgYSBjZWxsIHRvIGdpdmUgaXQgXCJibG9ja1wiIGJlaGF2aW9yIChvdmVyZmxvdyBhdXRvLCBpbmVydGlhbCBzY3JvbGxpbmcpXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gSXMgZ3JpZCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsLiBTaG91bGQgbWF0Y2ggZ3JpZC5cbkBtaXhpbiB4eS1jZWxsLWJsb2NrKFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHByb3BlcnR5OiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgJ292ZXJmbG93LXknLCAnb3ZlcmZsb3cteCcpO1xuXG4gIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIH0gQGVsc2Uge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuLy8vIENvbnRhaW5lciBmb3IgaW5zaWRlIGEgZ3JpZCBmcmFtZSBjb250YWluaW5nIG11bHRpcGxlIGJsb2Nrcy4gVHlwaWNhbGx5IHVzZWRcbi8vLyBhcyBhIG1vZGlmaWVyIGZvciBhIGAuY2VsbGAgdG8gYWxsb3cgdGhlIGNlbGwgdG8gcGFzcyBhbG9uZyBmbGV4IHNpemluZ1xuLy8vIGNvbnN0cmFpbnRzIC8gZnJvbSBwYXJlbnRzIHRvIGNoaWxkcmVuLlxuQG1peGluIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuXG4gID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIEZsZXhib3ggVXRpbGl0aWVzXG4vLy8vXG4vL1xuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHRoZSBjb3VudCBvZiBzb3VyY2Ugb3JkZXJpbmdgXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQ6IDYgIWRlZmF1bHQ7XG5cbi8vLyBRdWlja2x5IGRpc2FibGUvZW5hYmxlIFJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIFZhbmlsbGEgRmxleCBIZWxwZXJzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWUgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmbGV4LWhlbHBlcnMge1xuICAuZmxleC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGZsZXg7XG4gIH1cblxuICAuZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuXG4gIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgIC5mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHMpIHtcbiAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgICAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgICAgICAgICAuI3skc2l6ZX0tZmxleC1kaXItI3skZGlyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzIHtcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdXNpbmcganVzdGlmeS1jb250ZW50XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtanVzdGlmeSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IFNwZWNpZmljYWxseSBmb3IgVmVydGljYWwgTWVudVxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gbWFwLXJlbW92ZSgkLXpmLWZsZXgtanVzdGlmeSwgJ2p1c3RpZnknLCAnc3BhY2VkJykge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgJi5tZW51ID4gbGkgPiBhIHtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBhbGlnbm1lbnQgdXNpbmcgYWxpZ24taXRlbXMgYW5kIGFsaWduLXNlbGZcbiAgQGVhY2ggJHZkaXIsICRwcm9wIGluICQtemYtZmxleC1hbGlnbiB7XG4gICAgLmFsaWduLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHk6ICR2ZGlyKTtcbiAgICB9XG5cbiAgICAuYWxpZ24tc2VsZi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduLXNlbGYoJHk6ICR2ZGlyKTtcbiAgICB9XG4gIH1cblxuICAvLyBDZW50cmFsIGFsaWdubWVudCBvZiBjb250ZW50XG4gIC5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiBjZW50ZXIsICR5OiBtaWRkbGUpO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC8vIFNvdXJjZSBvcmRlcmluZ1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudCB7XG4gICAgICAuI3skLXpmLXNpemV9LW9yZGVyLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigkaSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmFuaWxsYSBGbGV4Ym94IEhlbHBlcnNcbiAgQGluY2x1ZGUgZmxleC1oZWxwZXJzO1xufVxuIiwiQGZ1bmN0aW9uIC16Zi1mbGV4LWp1c3RpZnkoJHRleHQtZGlyZWN0aW9uKXtcbiAgJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgICAnbGVmdCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtZW5kLCBmbGV4LXN0YXJ0KSxcbiAgICAncmlnaHQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LXN0YXJ0LCBmbGV4LWVuZCksXG4gICAgJ2NlbnRlcic6IGNlbnRlcixcbiAgICAnanVzdGlmeSc6IHNwYWNlLWJldHdlZW4sXG4gICAgJ3NwYWNlZCc6IHNwYWNlLWFyb3VuZCxcbiAgKTtcblxuICBAcmV0dXJuICQtemYtZmxleC1qdXN0aWZ5O1xufVxuXG5cbiQtemYtZmxleC1hbGlnbjogKFxuICAndG9wJzogZmxleC1zdGFydCxcbiAgJ2JvdHRvbSc6IGZsZXgtZW5kLFxuICAnbWlkZGxlJzogY2VudGVyLFxuICAnc3RyZXRjaCc6IHN0cmV0Y2gsXG4pO1xuXG4kLXpmLWZsZXgtZGlyZWN0aW9uOiAoXG4gICdyb3cnOiByb3csXG4gICdyb3ctcmV2ZXJzZSc6IHJvdy1yZXZlcnNlLFxuICAnY29sdW1uJzogY29sdW1uLFxuICAnY29sdW1uLXJldmVyc2UnOiBjb2x1bW4tcmV2ZXJzZSxcbik7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggYnkgYWRkaW5nIGBkaXNwbGF5OiBmbGV4YCB0byB0aGUgZWxlbWVudC5cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLy8vIEhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5IGFsaWducyB0aGUgaXRlbXMgd2l0aGluIGEgZmxleCBjb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR4IFtudWxsXSAtIEhvcml6b250YWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGBsZWZ0YCwgYHJpZ2h0YCwgYGNlbnRlcmAsIGBqdXN0aWZ5YCwgb3IgYHNwYWNlZGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCBob3Jpem9udGFsIGFsaWdubWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbigkeDogbnVsbCwgJHk6IG51bGwpIHtcbiAgQGlmICR4IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWp1c3RpZnksICR4KSB7XG4gICAgICAkeDogbWFwLWdldCgkLXpmLWZsZXgtanVzdGlmeSwgJHgpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR4fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgaG9yaXpvbnRhbCBhbGlnbm1lbnQuIFVzZSBsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5LCBvciBzcGFjZWQuJztcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBqdXN0aWZ5LWNvbnRlbnQ6ICR4O1xuICBhbGlnbi1pdGVtczogJHk7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGFsaWduIGEgc2luZ2xlIGNvbHVtbiB3aXRoaW4gYSBmbGV4IHJvdy4gQXBwbHkgdGhpcyBtaXhpbiB0byBhIGZsZXggY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkeTogbnVsbCkge1xuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1jb2x1bW4tYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBhbGlnbi1zZWxmOiAkeTtcbn1cblxuLy8vIENoYW5nZXMgdGhlIHNvdXJjZSBvcmRlciBvZiBhIGZsZXggY2hpbGQuIENoaWxkcmVuIHdpdGggbG93ZXIgbnVtYmVycyBhcHBlYXIgZmlyc3QgaW4gdGhlIGxheW91dC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9yZGVyIFswXSAtIE9yZGVyIG51bWJlciB0byBhcHBseS5cbkBtaXhpbiBmbGV4LW9yZGVyKCRvcmRlcjogMCkge1xuICBvcmRlcjogJG9yZGVyO1xufVxuXG4vLy8gQ2hhbmdlIGZsZXgtZGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtyb3ddIC0gRmxleCBkaXJlY3Rpb24gdG8gdXNlLiBDYW4gYmVcbi8vLyAgIC0gcm93IChkZWZhdWx0KTogc2FtZSBhcyB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSByb3ctcmV2ZXJzZTogb3Bwb3NpdGUgdG8gdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gY29sdW1uOiBzYW1lIGFzIHJvdyBidXQgdG9wIHRvIGJvdHRvbVxuLy8vICAgLSBjb2x1bW4tcmV2ZXJzZTogc2FtZSBhcyByb3ctcmV2ZXJzZSB0b3AgdG8gYm90dG9tXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogcm93KSB7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktYmFzZVxuLy8vL1xuXG4vLyBCYXNlIFR5cG9ncmFwaHlcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4vLyBUaGVzZSBhcmUgc3R5bGVzIGFwcGxpZWQgdG8gYmFzaWMgSFRNTCB0YWdzLCBpbmNsdWRpbmc6XG4vLyAgIC0gUGFyYWdyYXBocyA8cD5cbi8vICAgLSBCb2xkL2l0YWxpY3MgPGI+IDxzdHJvbmc+IDxpPiA8ZW0+XG4vLyAgIC0gU21hbGwgdGV4dCA8c21hbGw+XG4vLyAgIC0gSGVhZGluZ3MgPGgxPi08aDY+XG4vLyAgIC0gQW5jaG9ycyA8YT5cbi8vICAgLSBEaXZpZGVycyA8aHI+XG4vLyAgIC0gTGlzdHMgPHVsPiA8b2w+IDxkbD5cbi8vICAgLSBCbG9ja3F1b3RlcyA8YmxvY2txdW90ZT5cbi8vICAgLSBDb2RlIGJsb2NrcyA8Y29kZT5cbi8vICAgLSBBYmJyZXZpYXRpb25zIDxhYmJyPlxuLy8gICAtIENpdGF0aW9ucyA8Y2l0ZT5cbi8vICAgLSBLZXlzdHJva2VzIDxrYmQ+XG5cbi8vLyBGb250IGZhbWlseSBmb3IgaGVhZGVyIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3R5bGUgKGUuZy4gaXRhbGljaXplZCkgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayB1c2VkIGZvciBlbGVtZW50cyB0aGF0IHVzZSBtb25vc3BhY2VkIHR5cGUsIHN1Y2ggYXMgY29kZSBzYW1wbGVzXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgZm9yIGhlYWRpbmdzIGF0IHZhcmlvdXMgc2NyZWVuIHNpemVzLiBFYWNoIGtleSBpcyBhIGJyZWFrcG9pbnQsIGFuZCBlYWNoIHZhbHVlIGlzIGEgbWFwIG9mIGhlYWRpbmcgc3R5bGVzLlxuLy8vIEB0eXBlIE1hcFxuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE5KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA0OCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiA0MCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAzMSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyNSksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLyAkaGVhZGVyLXN0eWxlcyBtYXAgaXMgYnVpbHQgZnJvbSAkaGVhZGVyLXNpemVzIGluIG9yZGVyIHRvIGVuc3VyZSBkb3dud2FyZCBjb21wYXRpYmlsaXR5XG4vLyB3aGVuICRoZWFkZXItc2l6ZXMgaXMgZGVwcmVjaWF0ZWQsICRoZWFkZXItc3R5bGVzIG5lZWRzIHRvIGdldCAhZGVmYXVsdCB2YWx1ZXMgbGlrZSBzZXR0aW5ncy5zY3NzXG5AZnVuY3Rpb24gYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcykge1xuICBAd2FybiAnTm90ZSwgdGhhdCAkaGVhZGVyLXNpemVzIGhhcyBiZWVuIHJlcGxhY2VkIHdpdGggJGhlYWRlci1zdHlsZXMuICRoZWFkZXItc2l6ZXMgc3RpbGwgd29ya3MsIGJ1dCBpdCBpcyBnb2luZyB0byBiZSBkZXByZWNpYXRlZC4nO1xuICAkaGVhZGVyLXN0eWxlczogKCk7XG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXNpemVzIHtcbiAgICAkaGVhZGVyLW1hcDogKCk7XG4gICAgQGVhY2ggJGhlYWRlciwgJGZvbnQtc2l6ZSBpbiAkaGVhZGVycyB7XG4gICAgICAkaGVhZGVyLW1hcDogbWFwLW1lcmdlKCRoZWFkZXItbWFwLCAoJGhlYWRlcjogKCdmb250LXNpemUnOiAkZm9udC1zaXplKSkpO1xuICAgIH1cbiAgICAkaGVhZGVyLXN0eWxlczogbWFwLW1lcmdlKCRoZWFkZXItc3R5bGVzLCAoJHNpemU6ICRoZWFkZXItbWFwKSk7XG4gIH1cbiAgQHJldHVybiAkaGVhZGVyLXN0eWxlcztcbn1cblxuLy8gSWYgaXQgZXhpc3RzICRoZWFkZXJzLXNpemVzIGlzIHVzZWQgdG8gYnVpbGQgJGhlYWRlci1zdHlsZXMuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoaGVhZGVyLXNpemVzKSB7XG4gICRoZWFkZXItc3R5bGVzOiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKTtcbn1cblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGA8c21hbGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzbWFsbC1mb250LXNpemU6IDgwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGA8c21hbGw+YCBlbGVtZW50cyB3aGVuIHBsYWNlZCBpbnNpZGUgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGluc2lkZSBgPHA+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIGZvciBwYXJhZ3JhcGggdGV4dC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIFVzZSB0aGUgYC5jb2RlLWlubGluZWAgY29tcG9uZW50IGFzIGRlZmF1bHQgZm9yIGA8Y29kZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRlbmFibGUtY29kZS1pbmxpbmU6IHRydWU7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3MuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIExpc3RcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcblxuLy8vIEJ1bGxldCB0eXBlIHRvIHVzZSBmb3IgdW5vcmRlcmVkIGxpc3RzIChlLmcuLCBgc3F1YXJlYCwgYGNpcmNsZWAsIGBkaXNjYCkuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjICFkZWZhdWx0O1xuXG4vLy8gUG9zaXRpb25pbmcgZm9yIGJ1bGxldHMgb24gdW5vcmRlcmVkIGxpc3QgaXRlbXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGxpc3RzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBhIGxpc3QgaW5zaWRlIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGA8ZGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGA8ZHQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBgPGR0PmAgYW5kIGA8ZGQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSBgPGJsb2NrcXVvdGU+YCBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG5cbi8vLyBTaWRlIGJvcmRlciBmb3IgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gVXNlIHRoZSBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudCBhcyBkZWZhdWx0IGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZW5hYmxlLWNpdGUtYmxvY2s6IHRydWU7XG5cbi8vLyBGb250IGZhbWlseSBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIGJvcmRlciBzdHlsZSBmb3IgYDxhYmJyPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjayAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1iYXNlIHtcbiAgLy8gVHlwb2dyYXBoeSByZXNldHNcbiAgZGl2LFxuICBkbCxcbiAgZHQsXG4gIGRkLFxuICB1bCxcbiAgb2wsXG4gIGxpLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwcmUsXG4gIGZvcm0sXG4gIHAsXG4gIGJsb2NrcXVvdGUsXG4gIHRoLFxuICB0ZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQYXJhZ3JhcGhzXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgIHRleHQtcmVuZGVyaW5nOiAkcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nO1xuICB9XG5cbiAgLy8gRW1waGFzaXplZCB0ZXh0XG4gIGVtLFxuICBpIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTdHJvbmcgdGV4dFxuICBzdHJvbmcsXG4gIGIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU21hbGwgdGV4dFxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSGVhZGluZ3NcbiAgaDEsIC5oMSxcbiAgaDIsIC5oMixcbiAgaDMsIC5oMyxcbiAgaDQsIC5oNCxcbiAgaDUsIC5oNSxcbiAgaDYsIC5oNiB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGhlYWRlci1mb250LXN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgIHRleHQtcmVuZGVyaW5nOiAkaGVhZGVyLXRleHQtcmVuZGVyaW5nO1xuXG4gICAgc21hbGwge1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBjb2xvcjogJGhlYWRlci1zbWFsbC1mb250LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgc3R5bGVzXG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXN0eWxlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGhlYWRlciwgJGhlYWRlci1kZWZzIGluICRoZWFkZXJzIHtcbiAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiAxcmVtO1xuICAgICAgICAjeyRoZWFkZXJ9LCAuI3skaGVhZGVyfSB7XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmb250LXNpemUpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZzKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmcykpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxoKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGgpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMoJGhlYWRlci1saW5laGVpZ2h0LCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG10KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbXQpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1iKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWIpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCRoZWFkZXItbWFyZ2luLWJvdHRvbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGlua3NcbiAgYSB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGFuY2hvci1jb2xvci1ob3ZlcjtcbiAgICAgIEBpZiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlciAhPSAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3Jpem9udGFsIHJ1bGVcbiAgaHIge1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgbWF4LXdpZHRoOiAkaHItd2lkdGg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogJGhyLW1hcmdpbjtcblxuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRoci1ib3JkZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBMaXN0c1xuICB1bCxcbiAgb2wsXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGlzdC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gTGlzdCBpdGVtc1xuICBsaSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gVW5vcmRlcmVkIGxpc3RzXG4gIHVsIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgICBsaXN0LXN0eWxlLXR5cGU6ICRsaXN0LXN0eWxlLXR5cGU7XG4gIH1cblxuICAvLyBPcmRlcmVkIGxpc3RzXG4gIG9sIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgfVxuXG4gIC8vIE5lc3RlZCB1bm9yZGVyZWQvb3JkZXJlZCBsaXN0c1xuICB1bCwgb2wge1xuICAgICYgJiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluaXRpb24gbGlzdHNcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmbmxpc3QtdGVybS13ZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2txdW90ZXNcbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6ICRibG9ja3F1b3RlLXBhZGRpbmc7XG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xuXG4gICAgJiwgcCB7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIElubGluZSBDaXRhdGlvbnNcbiAgQGlmICgkZW5hYmxlLWNpdGUtYmxvY2sgPT0gdHJ1ZSkge1xuICAgIGNpdGUge1xuICAgICAgLy8gRXh0ZW5kaW5nIGEgY2xhc3MgaXMgbm90IHJlY29tbWVuZGVkLlxuICAgICAgLy8gVE9ETzogQnJlYWsgdGhlIHR5cG9ncmFwaHktYmFzZS90eXBvZ3JhcGh5LWhlbHBlcnMgc2VwYXJhdGlvblxuICAgICAgQGV4dGVuZCAuY2l0ZS1ibG9jaztcbiAgICB9XG4gIH1cblxuICAvLyBBYmJyZXZpYXRpb25zXG4gIGFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiAkYWJici11bmRlcmxpbmU7XG4gICAgY3Vyc29yOiBoZWxwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIEZpZ3VyZXNcbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb2RlXG4gIEBpZiAoJGVuYWJsZS1jb2RlLWlubGluZSA9PSB0cnVlKSB7XG4gICAgY29kZSB7XG4gICAgICBAZXh0ZW5kIC5jb2RlLWlubGluZTtcbiAgICB9XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlzdHJva2UtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWhlbHBlcnNcbi8vLy9cblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRvcCBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgdGhlIGAuY29kZS1pbmxpbmVgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIHRoZSBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1ibG9jay1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIHVuZGVyIHRoZSBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b206IDEuNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGNpdGUtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICRjaXRlLWNvbG9yO1xuICBmb250LXNpemU6ICRjaXRlLWZvbnQtc2l6ZTtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIEFkZCBiYXNpYyBzdHlsZXMgZm9yIGEgY29kZSBoZWxwZXIuXG4vLy8gU2VlIGBjb2RlLWlubGluZWAgYW5kIGBjb2RlLWJsb2NrYCBtaXhpbnMuXG5AbWl4aW4gY29kZS1zdHlsZSB7XG4gIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkY29kZS1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG59XG5cbi8vLyBNYWtlIGNvZGUgaGVscGVyIGZyb20gdGhlIGBjb2RlLXN0eWxlYCBtaXhpbiBpbmxpbmUuXG4vLy8gVXNlZCB0byBnZW5lcmF0ZSBgLmNvZGUtaW5saW5lYFxuQG1peGluIGNvZGUtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICBwYWRkaW5nOiAkY29kZS1wYWRkaW5nO1xufVxuXG4vLy8gTWFrZSBjb2RlIGhlbHBlciBmcm9tIHRoZSBgY29kZS1zdHlsZWAgbWl4aW4gYSBibG9jay5cbi8vLyBVc2VkIHRvIGdlbmVyYXRlIGAuY29kZS1ibG9ja2BcbkBtaXhpbiBjb2RlLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuXG4gIHBhZGRpbmc6ICRjb2RlLWJsb2NrLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206ICRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b207XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5jaXRlLWJsb2NrIHtcbiAgICBAaW5jbHVkZSBjaXRlLWJsb2NrO1xuICB9XG5cbiAgLmNvZGUtaW5saW5lIHtcbiAgICBAaW5jbHVkZSBjb2RlLXN0eWxlO1xuICAgIEBpbmNsdWRlIGNvZGUtaW5saW5lO1xuICB9XG5cbiAgLmNvZGUtYmxvY2sge1xuICAgIEBpbmNsdWRlIGNvZGUtc3R5bGU7XG4gICAgQGluY2x1ZGUgY29kZS1ibG9jaztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSWYgYHRydWVgLCBhbGwgZWxlbWVudHMgd2lsbCBoYXZlIHRyYW5zcGFyZW50IGJhY2tncm91bmRzIHdoZW4gcHJpbnRlZCwgdG8gc2F2ZSBvbiBpbmsuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheXMgbmV4dCB0byBhbGwgbGlua3MgdGhlaXIgXCJocmVmXCIgd2hlbiBwcmludGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtaHJlZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgLy8gRW5zdXJlIGEgXCJibGFjay1vbi13aGl0ZVwiIHByaW50IGJ5IHJlbW92aW5nIGJhY2tncm91bmRzLFxuICAgICAgLy8gdXNpbmcgYmxhY2sgdGV4dCBldmVyeXdoZXJlIGFuZCBmb3JjaW5nIHRoZSBicm93c2VyIHRvIGVjb25vbWl6ZSBpbmsuXG4gICAgICBAaWYgJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgICAgY29sb3ItYWRqdXN0OiBlY29ub215O1xuICAgICAgfVxuICAgICAgLy8gT3RoZXJ3aXNlLCBwcmV2ZW50IGFueSBlY29ub215IGJ5IHRoZSBicm93c2VyLlxuICAgICAgQGVsc2Uge1xuICAgICAgICBjb2xvci1hZGp1c3Q6IGV4YWN0O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8vXG5cbi8vLyBGb250IGZhbWlseSBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEZvbnRcbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIElnbm9yZWQgaWYgbnVsbCAoZGVmYXVsdClcbi8vLyBAdHlwZSBGb250LVdlaWdodFxuJGJ1dHRvbi1mb250LXdlaWdodDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBidXR0b25zLCB0cmFuc3BhcmVudCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1ib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB3aWR0aCBmb3IgaG9sbG93IG91dGxpbmUgYnV0dG9uc1xuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIG9wYWNpdHkgZm9yIGEgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgaG9sbG93IGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCUgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsOiBmbGlwIGZyb20gbWFyZ2luLXJpZ2h0IHRvIG1hcmdpbi1sZWZ0IGZvciBkZWZhdWx0c1xuQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAkYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xufVxuXG4vLy8gdHJhbnNpdGlvbnMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZGl0aW9uYWwgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciAuZXhwYW5kZWRcbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBEb2N1bWVudCBidXR0b24tYmFzZSgpIG1peGluXG5AbWl4aW4gYnV0dG9uLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIGJvcmRlcjogJGJ1dHRvbi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG4gIGZvbnQtZmFtaWx5OiAkYnV0dG9uLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG4gIGZvbnQtd2VpZ2h0OiAkYnV0dG9uLWZvbnQtd2VpZ2h0O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGhvbGxvdyBvciBjbGVhciBidXR0b24gZmlsbGluZyBhY2NvcmRpbmcgdG8gYCRmaWxsYC5cbi8vLyBTZWUgbWl4aW4gYGJ1dHRvbi1maWxsLXN0eWxlYCBmb3IgdGhlIGZpbGxpbmcgc3R5bGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZpbGwgWyRidXR0b24tZmlsbF0gLSBUeXBlIG9mIGZpbGxpbmcgYmV0d2VlbiBgaG9sbG93YCBhbmQgYGNsZWFyYC4gYHNvbGlkYCBoYXMgbm8gZWZmZWN0cy5cbkBtaXhpbiBidXR0b24tZmlsbChcbiAgJGZpbGw6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpZiAkZmlsbCA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gIH1cbiAgQGVsc2UgaWYgJGZpbGwgPT0gY2xlYXIge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1jbGVhcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlcyBvZiBhIHNvbGlkL2hvbGxvdy9jbGVhciBidXR0b24gZmlsbGluZyBhY2NvcmRpbmcgdG8gYCRmaWxsYC5cbi8vLyBTZWUgbWl4aW5zIGBidXR0b24tc3R5bGVgLCBgYnV0dG9uLWhvbGxvdy1zdHlsZWAgYW5kIGBidXR0b24tY2xlYXItc3R5bGVgIGZvciBlZmZlY3RzIG9mIHZpc3VhbCBzdHlsaW5nIHBhcmFtZXRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZmlsbCBbJGJ1dHRvbi1maWxsXSAtIFR5cGUgb2YgZmlsbGluZyBiZXR3ZWVuIGBob2xsb3dgIGFuZCBgY2xlYXJgLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gLVxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gLVxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSAtXG5AbWl4aW4gYnV0dG9uLWZpbGwtc3R5bGUoXG4gICRmaWxsOiAkYnV0dG9uLWZpbGwsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkZmlsbCA9PSBzb2xpZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiYWNrZ3JvdW5kLCAkYmFja2dyb3VuZC1ob3ZlciwgJGNvbG9yKTtcbiAgfVxuICBAZWxzZSBpZiAkZmlsbCA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG4gIEBlbHNlIGlmICRmaWxsID09IGNsZWFyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tY2xlYXItc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgLy8gRGVmYXVsdCBhbmQgZGlzYWJsZWQgc3RhdGVzXG4gICYsXG4gICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkOmhvdmVyLCAmW2Rpc2FibGVkXTpob3ZlcixcbiAgJi5kaXNhYmxlZDpmb2N1cywgJltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGhvbGxvdyBidXR0b24uXG4vLy8gU2VlIG1peGluIGBidXR0b24taG9sbG93LXN0eWxlYCBmb3IgdGhlIGZpbGxpbmcgc3R5bGVzLlxuQG1peGluIGJ1dHRvbi1ob2xsb3cge1xuICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGhvbGxvdyBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWJhY2tncm91bmRdIC0gVGV4dCBhbmQgYm9yZGVyIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGhvdmVyLWxpZ2h0bmVzcyBbJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXSAtIENvbG9yIGxpZ2h0bmVzcyBvbiBob3Zlci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYm9yZGVyLXdpZHRoIFskYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhdIC0gQm9yZGVyIHdpZHRoIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uLWhvbGxvdy1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzcyxcbiAgJGJvcmRlci13aWR0aDogJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGNsZWFyIGJ1dHRvbi5cbi8vLyBTZWUgbWl4aW4gYGJ1dHRvbi1jbGVhci1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbkBtaXhpbiBidXR0b24tY2xlYXIge1xuICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBjbGVhciBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWJhY2tncm91bmRdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRob3Zlci1saWdodG5lc3MgWyRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc10gLSBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIuXG5AbWl4aW4gYnV0dG9uLWNsZWFyLXN0eWxlKFxuICAkY29sb3I6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50IGFuZCByZXNldGluZyB0aGUgY3Vyc29yLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3BhY2l0eSBbJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkXSAtIE9wYWNpdHkgb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWRcbikge1xuICBvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcbiAgQGluY2x1ZGUgYnV0dG9uLWZpbGwoJHN0eWxlKTtcbiAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJHN0eWxlLCAkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG5cbiAgQGlmICRleHBhbmQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uIHtcbiAgLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uKCRzdHlsZTogbm9uZSk7XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIEBpZiAkYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQge1xuICAgICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gb25seSkge1xuICAgICAgICAgICYuI3skc2l6ZX0tb25seS1leHBhbmRlZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gZG93bikge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1kb3duLWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9KSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb2xpZCwgaG9sbG93ICYgY2xlYXIgc3R5bGVzXG4gICAgQGVhY2ggJGZpbGxpbmcgaW4gKHNvbGlkIGhvbGxvdyBjbGVhcikge1xuICAgICAgJHNlbGVjdG9yOiBpZigkYnV0dG9uLWZpbGwgPT0gJGZpbGxpbmcsIG51bGwsICcuI3skZmlsbGluZ30nKTtcblxuICAgICAgJiN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsKCRmaWxsaW5nKTtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcpO1xuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nLCAkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdywgJi5jbGVhciB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cblxuICBhLmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEZvbnQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBGb250XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZm9jdXNlZCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBmb2N1c2VkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMiAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgaW5zaWRlIHRleHQgaW5wdXRzIHdoZW4gbm90IGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IG91dHNpZGUgdGV4dCBpbnB1dHMgd2hlbiBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDdXJzb3IgdG8gdXNlIHdoZW4gaG92ZXJpbmcgb3ZlciBhIGRpc2FibGVkIHRleHQgaW5wdXQuXG4vLy8gQHR5cGUgQ3Vyc29yXG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuLy8vIFByb3BlcnRpZXMgdG8gdHJhbnNpdGlvbiBvbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIHRoZSB1cC9kb3duIGJ1dHRvbnMgdGhhdCBDaHJvbWUgYW5kIEZpcmVmb3ggYWRkIHRvIGA8aW5wdXQgdHlwZT0nbnVtYmVyJz5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBSYWRpdXMgZm9yIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBmb3JtIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWVsZW1lbnQge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3c7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS10ZXh0IHtcbiAgLy8gVGV4dCBpbnB1dHNcbiAgI3t0ZXh0LWlucHV0cygpfSxcbiAgdGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIGZvcm0tZWxlbWVudDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gVGV4dCBhcmVhc1xuICB0ZXh0YXJlYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgJltyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICAvLyBEaXNhYmxlZC9yZWFkb25seSBzdGF0ZVxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9uIGJ1dHRvbi1saWtlIGlucHV0c1xuICBbdHlwZT0nc3VibWl0J10sXG4gIFt0eXBlPSdidXR0b24nXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1idXR0b24tcmFkaXVzO1xuICB9XG5cbiAgLy8gUmVzZXQgTm9ybWFsaXplIHNldHRpbmcgY29udGVudC1ib3ggdG8gc2VhcmNoIGVsZW1lbnRzXG4gIGlucHV0W3R5cGU9J3NlYXJjaCddIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIE51bWJlciBpbnB1dCBzdHlsZXNcbiAgW3R5cGU9J251bWJlciddIHtcbiAgICBAaWYgbm90ICRpbnB1dC1udW1iZXItc3Bpbm5lcnMge1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICA6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGZvcm0gbGFiZWxzLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBtb3JlIHNwYWNlIGJldHdlZW4gdGhlIGxhYmVsIGFuZCBpdHMgaW5wdXQgZmllbGQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG5cbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbkBtaXhpbiBmb3JtLWxhYmVsLW1pZGRsZSB7XG4gICRpbnB1dC1ib3JkZXItd2lkdGg6IGdldC1ib3JkZXItdmFsdWUoJGlucHV0LWJvcmRlciwgd2lkdGgpO1xuXG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nIC8gMiArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpKSAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWxhYmVsIHtcbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm0tbGFiZWw7XG5cbiAgICAmLm1pZGRsZSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWxhYmVsLW1pZGRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0L3JpZ2h0IHBhZGRpbmcgb2YgYW4gcHJlL3Bvc3RmaXhlZCBpbnB1dCBsYWJlbFxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXgge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqICRpbnB1dC1saW5lLWhlaWdodCkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIHRhYmxlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cywgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJWlucHV0LWdyb3VwLWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZzogMCAkaW5wdXQtcHJlZml4LXBhZGRpbmc7XG4gICAgYm9yZGVyOiAkaW5wdXQtcHJlZml4LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtcHJlZml4LWJhY2tncm91bmQ7XG5cbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXByZWZpeC1ib3JkZXIpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbixcbiAgICBsYWJlbCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcblxuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgfVxuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1maWVsZHNldCB7XG4gIGZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICBsZWdlbmQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLmZpZWxkc2V0IHtcbiAgICBAaW5jbHVkZSBmaWVsZHNldDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGRyb3Bkb3duIHRyaWFuZ2xlIGluc2lkZSBzZWxlY3QgbWVudXMuIFNldCB0byBgdHJhbnNwYXJlbnRgIHRvIHJlbW92ZSBpdCBlbnRpcmVseS5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tc2VsZWN0IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkc2VsZWN0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgJHNlbGVjdC10cmlhbmdsZS1jb2xvciAhPSB0cmFuc3BhcmVudCB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC10cmlhbmdsZSgkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGdsb2JhbC1yaWdodCAoLSRmb3JtLXNwYWNpbmcpIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcblxuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogKCRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuICB9XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIEhpZGUgdGhlIGRyb3Bkb3duIGFycm93IHNob3duIGluIG5ld2VyIElFIHZlcnNpb25zXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbiAgJjpub3QoW211bHRpcGxlXSkge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFiaWRlXG4vLy8vXG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gaW5wdXRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1pbnB1dHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gbGFiZWxzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1sYWJlbHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSBmb3IgaW52YWxpZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgb2YgYW4gaW5wdXQgZmllbGQgdG8gaGF2ZSBhbiBlcnJvciBzdGF0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYWxlcnQtY29sb3JdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFja2dyb3VuZC1saWdodGVuIFsxMCVdIC0gTGlnaHRuZXNzIGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1saWdodGVuOiAxMCVcbikge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgkYmFja2dyb3VuZCwgJHdoaXRlLCAkYmFja2dyb3VuZC1saWdodGVuKTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgJHNpemU6IC16Zi1icC10by1lbSgkc2l6ZSkgLSAuMDAxMjU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IHdpdGhpbiBhIGNlcnRhaW4gYnJlYWtwb2ludC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yLW9ubHkoJHNpemUpIHtcbiAgJGxvd2VyLWJvdW5kLXNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICR1cHBlci1ib3VuZC1zaXplOiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG5cbiAgLy8gbW9yZSBvZnRlbiB0aGFuIG5vdCB0aGlzIHdpbGwgYmUgY29ycmVjdCwganVzdCBvbmUgdGltZSByb3VuZCB0aGUgbG9vcCBpdCB3b24ndCBzbyBzZXQgaW4gc2NvcGUgaGVyZVxuICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSkgLSAuMDAxMjU7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYW4gYWNjb3JkaW9uIGdyb3VwLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBwbHVzIGFuZCBtaW51cyBpY29ucyB0byB0aGUgc2lkZSBvZiBlYWNoIGFjY29yZGlvbiB0aXRsZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENvbnRlbnQgZm9yIHRoZSBwbHVzIGljb24gd2hlbiBgJGFjY29yZGlvbi1wbHVzbWludXNgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJGFjY29yZGlvbi1wbHVzLWNvbnRlbnQ6ICdcXDAwMkInICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIG1pbnVzIGljb24gd2hlbiBgJGFjY29yZGlvbi1wbHVzbWludXNgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJGFjY29yZGlvbi1taW51cy1jb250ZW50OiAnXFwyMDEzJyAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBhY2NvcmRpb24gdGl0bGVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhbiBhY2NvcmRpb24gaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBhY2NvcmRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBzYW1lIGVsZW1lbnQgdGhhdCBnZXRzIGBkYXRhLWFjY29yZGlvbmAuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lciAoXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWJhY2tncm91bmRcbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICZbZGlzYWJsZWRdIHtcbiAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaXN0IGl0ZW0gd2l0aGluIGFuIGFjY29yZGlvbiB1bC5cbkBtaXhpbiBhY2NvcmRpb24taXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzIDAgMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgdGl0bGUgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpbmsgd2l0aGluIGFuIGFjY29yZGlvbiBpdGVtLlxuQG1peGluIGFjY29yZGlvbi10aXRsZSAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJGFjY29yZGlvbi10aXRsZS1mb250LXNpemUsXG4gICRjb2xvcjogJGFjY29yZGlvbi1pdGVtLWNvbG9yLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAmIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG5cbiAgQGlmICRhY2NvcmRpb24tcGx1c21pbnVzIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICRhY2NvcmRpb24tcGx1cy1jb250ZW50O1xuICAgIH1cblxuICAgIC5pcy1hY3RpdmUgPiAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGFjY29yZGlvbi1taW51cy1jb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFjY29yZGlvbiBjb250ZW50LiBBcHBseSB0aGlzIHRvIHRoZSBjb250ZW50IHBhbmUgYmVsb3cgYW4gYWNjb3JkaW9uIGl0ZW0ncyB0aXRsZS5cbkBtaXhpbiBhY2NvcmRpb24tY29udGVudCAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZyxcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRhY2NvcmRpb24tY29udGVudC1jb2xvclxuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZCA+ICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24ge1xuICAuYWNjb3JkaW9uIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGFpbmVyO1xuICB9XG5cbiAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24taXRlbTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi10aXRsZTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b24tZ3JvdXBcbi8vLy9cblxuLy8vIE1hcmdpbiBmb3IgYnV0dG9uIGdyb3Vwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYmV0d2VlbiBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJyAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gbnVtYmVyIG9mIGJ1dHRvbnMgdGhhdCBjYW4gYmUgaW4gYW4gZXZlbi13aWR0aCBidXR0b24gZ3JvdXAuIChPbmx5IG5lZWRlZCB3aGVuICRnbG9iYWwtZmxleGJveDogZmFsc2U7KVxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDYgIWRlZmF1bHQ7XG5cbi8vLyBEZXRlcm1pbmVzIGlmICRidXR0b24tcmFkaXVzIGlzIGFwcGxpZWQgdG8gZWFjaCBidXR0b24gb3IgdGhlIGJ1dHRvbiBncm91cCBhcyBhIHdob2xlLiBVc2UgJGdsb2JhbC1yYWRpdXMgaW4gX3NldHRpbmdzLnNjc3MgdG8gY2hhbmdlIHJhZGl1cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGQgc3R5bGVzIGZvciBhIGJ1dHRvbiBncm91cCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRjaGlsZC1zZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjaW5nIFskYnV0dG9uZ3JvdXAtc3BhY2luZ10gLSBTcGFjaW5nIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAoXG4gICRjaGlsZC1zZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkc3BhY2luZzogJGJ1dHRvbmdyb3VwLXNwYWNpbmdcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLWJvdHRvbTogJGJ1dHRvbmdyb3VwLW1hcmdpbjtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBmbGV4LWdyb3c6IDE7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgLy8gRGlzYWJsZSBjbGVhcmZpeFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG5cbiAgI3skY2hpbGQtc2VsZWN0b3J9IHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIH1cblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBNYWtlIGJ1dHRvbnMgYm9uZGVkIHdpdGhvdXQgZ2FwIGJldHdlZW4gdGhlbS4gQm9yZGVycyBiZXR3ZWVuIGJ1dHRvbnMgYXJlIG1lcmdlZFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC1uby1nYXBzKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJGJvcmRlci13aWR0aDogJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXG4pIHtcbiAgI3skc2VsZWN0b3J9IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogcmVtLWNhbGMoLSRib3JkZXItd2lkdGgpO1xuXG4gICAgKyAjeyRzZWxlY3Rvcn0ge1xuICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZnVsbC13aWR0aCBidXR0b24gZ3JvdXAsIG1ha2luZyBlYWNoIGJ1dHRvbiBlcXVhbCB3aWR0aC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNwYWNpbmcgWyRidXR0b25ncm91cC1zcGFjaW5nXSAtIFNwYWNpbmcgYmV0d2VlbiBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC1leHBhbmQoXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkc3BhY2luZzogJGJ1dHRvbmdyb3VwLXNwYWNpbmcsXG4gICRjb3VudDogbnVsbFxuKSB7XG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogLSRzcGFjaW5nO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IC8vIERpc2FibGUgY2xlYXJmaXhcbiAgICB9XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gT25lIGNoaWxkXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gI3skc3BhY2luZ30pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFR3byBvciBtb3JlIGNoaWxkcmVlblxuICAgICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYnV0dG9uZ3JvdXAtZXhwYW5kLW1heCB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgICAmLCAmOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygje3BlcmNlbnRhZ2UoMSAvICRpKX0gLSAjeyRzcGFjaW5nfSk7XG4gICAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZyAqIC0kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC1zdGFjayhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBVbi1zdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtdW5zdGFjayhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cCB7XG4gIC5idXR0b24tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cDtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBHcm91cFxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWV4cGFuZDtcbiAgICB9XG5cbiAgICAvLyBTb2xpZCwgaG9sbG93ICYgY2xlYXIgc3R5bGVzXG4gICAgQGVhY2ggJGZpbGxpbmcgaW4gKHNvbGlkIGhvbGxvdyBjbGVhcikge1xuICAgICAgJGJhc2Utc2VsZWN0b3I6IGlmKCRidXR0b24tZmlsbCA9PSAkZmlsbGluZywgbnVsbCwgJy4jeyRmaWxsaW5nfScpO1xuXG4gICAgICAmI3skYmFzZS1zZWxlY3Rvcn0ge1xuICAgICAgICAvLyBEbyBub3QgZ2VuZXJhdGUgYnV0dG9uIGJhc2Ugc3R5bGVzIGZvciB0aGUgZGVmYXVsdCBmaWxsaW5nXG4gICAgICAgIEBpZigkYnV0dG9uLWZpbGwgIT0gJGZpbGxpbmcpIHtcbiAgICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwoJGZpbGxpbmcpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAkaW5kaXZpZHVhbC1zZWxlY3RvcjogaWYoJGJ1dHRvbi1maWxsID09ICRmaWxsaW5nLCBudWxsLCAnICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfS4jeyRuYW1lfScpO1xuXG4gICAgICAgICAgJi4jeyRuYW1lfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0sICN7JGluZGl2aWR1YWwtc2VsZWN0b3J9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nLCAkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi5uby1nYXBzIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1uby1nYXBzO1xuICAgIH1cblxuICAgICYuc3RhY2tlZCxcbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLFxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdGFjaztcblxuICAgICAgJi5leHBhbmRlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtdW5zdGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93blxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGRyb3Bkb3duIHBhbmVzLiBFYWNoIHNpemUgaXMgYSBDU1MgY2xhc3MgeW91IGNhbiBhcHBseS5cbi8vLyBAdHlwZSBNYXBcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQXBwbGllcyBzdHlsZXMgZm9yIGEgYmFzaWMgZHJvcGRvd24uXG5AbWl4aW4gZHJvcGRvd24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcblxuICBkaXNwbGF5OiBub25lO1xuXG4gIHdpZHRoOiAkZHJvcGRvd24td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nO1xuXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkZHJvcGRvd24tcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmFja2dyb3VuZDtcblxuICBmb250LXNpemU6ICRkcm9wZG93bi1mb250LXNpemU7XG5cblxuICAvLyBBbGxvdyBhbiBpbnRlcm1pdHRlbnQgc3RhdGUgdG8gZG8gcG9zaXRpb25pbmcgYmVmb3JlIG1ha2luZyB2aXNpYmxlLlxuICAmLmlzLW9wZW5pbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJi5pcy1vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duIHtcbiAgLmRyb3Bkb3duLXBhbmUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcjtcbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkZHJvcGRvd24tc2l6ZXMge1xuICAgIC5kcm9wZG93bi1wYW5lIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd24tbWVudVxuLy8vL1xuXG4vLy8gRW5hYmxlcyBhcnJvd3MgZm9yIGl0ZW1zIHdpdGggZHJvcGRvd24gbWVudXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBwYWRkaW5nIGZvciBhbGlnbmluZyB0aGUgYXJyb3cgY29ycmVjdGx5LlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJvcGRvd25zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBzdWItbWVudSBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gQm9yZGVyIHdpZHRoIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLyBVc2VkIHRvIGFkanVzdCB0b3AgbWFyZ2luIG9mIGEgc3ViLW1lbnUgaWYgYSBib3JkZXIgaXMgdXNlZC5cbi8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGg6IG50aCgkZHJvcGRvd25tZW51LWJvcmRlciwgMSk7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0uIEV4cGxpY2l0IG92ZXJyaWRlIGZvciBtZW51IGRlZmF1bHRzXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0uIEV4cGxpY2l0IG92ZXJyaWRlIGZvciBtZW51IGRlZmF1bHRzXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICA+IGE6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAxNHB4O1xuICB9XG5cbiAgJi5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgfVxuXG4gICYub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpO1xuICB9XG59XG5cbkBtaXhpbiBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgID4gbGkub3BlbnMtbGVmdCB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaS5vcGVucy1yaWdodCB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc7XG4gICAgICB9XG5cbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IC0xICogKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSAvIDIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICA+IGxpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLWxlZnQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLXJpZ2h0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudSB7XG4gIC5kcm9wZG93bi5tZW51IHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcblxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIH1cblxuICAgIC8vIFRvcC1sZXZlbCBpdGVtXG4gICAgPiBsaSA+IGEge1xuICAgICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kO1xuICAgICAgcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC8vIFRvcC1sZXZlbCBpdGVtIGFjdGl2ZSBzdGF0ZVxuICAgID4gbGkuaXMtYWN0aXZlID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlO1xuICAgIH1cblxuICAgIC5uby1qcyAmIHVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuI3skc2l6ZX0tdmVydGljYWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gICAgd2lkdGg6IDEwMHB4O1xuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBhOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplO1xuICAgIH1cblxuICAgICYub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG5cbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1pbi13aWR0aDogJGRyb3Bkb3dubWVudS1taW4td2lkdGg7XG5cbiAgICBib3JkZXI6ICRkcm9wZG93bm1lbnUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kO1xuXG4gICAgLmRyb3Bkb3duICYgYSB7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICh0eXBlLW9mKCRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKSA9PSAnbnVtYmVyJykge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICBtYXJnaW4tdG9wOiAoLSRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8vIFtUT0RPXSBDdXQgYmFjayBzcGVjaWZpY2l0eVxuICAgIC8vJjpub3QoLmpzLWRyb3Bkb3duLW5vaG92ZXIpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50OmhvdmVyID4gJiwgLy8gd2h5IGlzIHRoaXMgbGluZSBuZWVkZWQ/IE9wZW5pbmcgaXMgaGFuZGxlZCBieSBKUyBhbmQgdGhpcyBjYXVzZXMgc29tZSB1Z2x5IGZsaWNrZXJpbmcgd2hlbiB0aGUgc3ViIGlzIHJlLXBvc2l0aW9uZWQgYXV0b21hdGljYWxseS4uLlxuICAgICYuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgcGlsbCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgc2ltcGxlIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgdGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLi5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1jb2xvci1hbHQtYWN0aXZlOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBzdGF0ZS4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYGFjdGl2ZWAgd2l0aCBgaXMtYWN0aXZlYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYGFjdGl2ZWAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBjZW50ZXJlZC4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYC5tZW51LWNlbnRlcmVkID4gLm1lbnVgIHdpdGggYC5tZW51LmFsaWduLWNlbnRlcmAuIFxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBtZW51LWNlbnRlcmVkYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciB1c2luZyBgaWNvbi0qYCBjbGFzc2VzIHdpdGhvdXQgYC5pY29uc2AgY2xhc3Nlc1xuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IHRoaXMgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBNZW51LlxuQG1peGluIG1lbnUtYmFzZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgbGkge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgfVxuXG4gIGEsXG4gIC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtcy1wYWRkaW5nO1xuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9mIGlubmVyIGVsZW1lbnRzXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIG1lbnUgaXRlbXMuXG5AbWl4aW4gbWVudS1hbGlnbigkYWxpZ25tZW50KSB7XG4gIEBpZiAkYWxpZ25tZW50ID09IGxlZnQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSBjZW50ZXIge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFRoaXMgZWZmZWN0cyB0aGUgc2lkZSBvZiB0aGUgYDxsaT5gIHRoYXQgcmVjZWl2ZXMgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiBbJG1lbnUtc2ltcGxlLW1hcmdpbl0gLSBUaGUgbWFyZ2luIHRvIGFwcGx5IHRvIGVhY2ggYDxsaT5gLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCwgJG1hcmdpbjogJG1lbnUtc2ltcGxlLW1hcmdpbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgbGkgKyBsaSB7XG4gICAgbWFyZ2luLSN7JGRpcn06ICRtYXJnaW47XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJG1hcmdpbiBbJG1lbnUtbmVzdGVkLW1hcmdpbl0gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRuZXN0ZWQtYWxpZ25tZW50IFtsZWZ0XSAtIEFsaWdubWVudCBvZiB0aGUgbmVzdGVkIGNsYXNzXG5AbWl4aW4gbWVudS1uZXN0ZWQoXG4gICRtYXJnaW46ICRtZW51LW5lc3RlZC1tYXJnaW4sXG4gICRuZXN0ZWQtYWxpZ25tZW50OiBsZWZ0XG4pIHtcbiAgQGlmICRuZXN0ZWQtYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1hcmdpbjtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xuICB9XG5cbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBpY29ucyBpbiBtZW51cy5cbkBtaXhpbiBtZW51LWljb25zKCkge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBpbWcsXG4gICAgaSxcbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgKyBzcGFuIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgcG9zaXRpb24gY2xhc3NlcyBmb3IgaWNvbnMgd2l0aGluIGEgbWVudS5cbkBtaXhpbiBtZW51LWljb24tcG9zaXRpb24oJHBvc2l0aW9uOiBsZWZ0LCAkc3BhY2luZzogJG1lbnUtaWNvbi1zcGFjaW5nKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRzcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46ICRzcGFjaW5nIGF1dG8gMDtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBtZW51LXN0YXRlLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmUsICgkbWVudS1pdGVtLWNvbG9yLWFjdGl2ZSwgJG1lbnUtaXRlbS1jb2xvci1hbHQtYWN0aXZlKSk7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUge1xuICAubWVudSB7XG4gICAgQGluY2x1ZGUgbWVudS1iYXNlO1xuXG4gICAgLy8gRGVmYXVsdCBvcmllbnRhdGlvbjogaG9yaXpvbnRhbFxuICAgICYsICYuaG9yaXpvbnRhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICB9XG5cbiAgICAvLyBWZXJ0aWNhbCBvcmllbnRhdGlvbiBtb2RpZmllclxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggbW9kaWZpZXIgZm9yIGhvcml6b250YWwgb3JpZW50YXRpb25cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgIH1cblxuICAgIC8vIFNpbXBsZVxuICAgICYuc2ltcGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc2ltcGxlO1xuICAgIH1cblxuICAgIC8vIEJyZWFrcG9pbnQgc3BlY2lmaWMgdmVyc2lvbnNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogZmFsc2UpIHtcbiAgICAgICYuI3skLXpmLXNpemV9LWhvcml6b250YWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tdmVydGljYWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXNpbXBsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmLm5lc3RlZCB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZDtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJhc2UgU3R5bGVzXG4gICAgJi5pY29ucyB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgIH1cblxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1pY29ucy1iYWNrLWNvbXBhdCB7XG4gICAgICAmLmljb24tdG9wLFxuICAgICAgJi5pY29uLXJpZ2h0LFxuICAgICAgJi5pY29uLWJvdHRvbSxcbiAgICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29ucztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJY29uIExlZnRcbiAgICAmLmljb24tbGVmdCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBSaWdodFxuICAgICYuaWNvbi1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24ocmlnaHQpO1xuICAgIH1cblxuICAgIC8vIEljb24gVG9wXG4gICAgJi5pY29uLXRvcCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24odG9wKTtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJvdHRvbVxuICAgICYuaWNvbi1ib3R0b20ge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKGJvdHRvbSk7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgfVxuICAgIFxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1zdGF0ZS1iYWNrLWNvbXBhdCB7XG4gICAgICAuYWN0aXZlID4gYSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtc3RhdGUtYWN0aXZlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGxlZnRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1sZWZ0fSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGxlZnQpO1xuICAgIH1cblxuICAgIC8vIEFsaWduIHJpZ2h0XG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24ocmlnaHQpO1xuXG4gICAgICAubmVzdGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJG5lc3RlZC1hbGlnbm1lbnQ6IHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiBjZW50ZXJcbiAgICAmLmFsaWduLWNlbnRlciB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGNlbnRlcik7XG4gICAgfVxuXG4gICAgLm1lbnUtdGV4dCB7XG4gICAgICBAaW5jbHVkZSBtZW51LXRleHQ7XG4gICAgfVxuICB9XG5cbiAgQGlmICRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0IHtcbiAgICAubWVudS1jZW50ZXJlZCB7XG4gICAgICA+IC5tZW51IHtcbiAgICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmV2ZW50IEZPVUMgd2hlbiB1c2luZyB0aGUgUmVzcG9uc2l2ZSBNZW51IHBsdWdpblxuICAubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGxhYmVsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRlIHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIG9mIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGJhc2Ugc3R5bGVzIGZvciBhIGxhYmVsLlxuQG1peGluIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkbGFiZWwtcGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiAkbGFiZWwtcmFkaXVzO1xuXG4gIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbGFiZWwge1xuICAubGFiZWwge1xuICAgIEBpbmNsdWRlIGxhYmVsO1xuXG4gICAgYmFja2dyb3VuZDogJGxhYmVsLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRsYWJlbC1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGxhYmVsLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGxhYmVsLWNvbG9yLCAkbGFiZWwtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcGFnaW5hdGlvblxuLy8vL1xuXG4vLy8gRm9udCBzaXplIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBvZiB0aGUgcGFnaW5hdGlvbiBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCBtYXJnaW4gdG8gc2VwYXJhdGUgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBlbGxpcHNpcyBpbiBhIHBhZ2luYXRpb24gbWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIElmIGBmYWxzZWAsIGRvbid0IGRpc3BsYXkgcGFnZSBudW1iZXIgbGlua3Mgb24gbW9iaWxlLCBvbmx5IG5leHQvcHJldmlvdXMgbGlua3Ncbi8vLyBhbmQgb3B0aW9uYWxseSBjdXJyZW50IHBhZ2UgbnVtYmVyLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXkgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgb24gbW9iaWxlIGV2ZW4gaWYgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGBmYWxzZWAuXG4vLy8gVGhpcyBwYXJhbWV0ZXIgd2lsbCBvbmx5IG92ZXJyaWRlIHRoZSB2aXNpYmlsaXR5IHNldHRpbmcgb2YgdGhlIGN1cnJlbnQgaXRlbSBmb3IgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7YCxcbi8vLyBpdCB3aWxsIG5vdCBhZmZlY3QgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgdmlzaWJpbGl0eSB3aGVuIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgdHJ1ZWAuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFycm93cyBhcmUgYWRkZWQgdG8gdGhlIG5leHQgYW5kIHByZXZpb3VzIGxpbmtzIG9mIHBhZ2luYXRpb24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIHByZXZpb3VzIGFycm93IHdoZW4gYCRwYWdpbmF0aW9uLWFycm93c2AgaXMgYHRydWVgXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFnaW5hdGlvbi1hcnJvdy1wcmV2aW91czogJ1xcMDBBQicgIWRlZmF1bHQ7XG5cbi8vLyBDb250ZW50IGZvciB0aGUgbmV4dCBhcnJvdyB3aGVuIGAkcGFnaW5hdGlvbi1hcnJvd3NgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhZ2luYXRpb24tYXJyb3ctbmV4dDogJ1xcMDBCQicgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwYWdpbmF0aW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWNvbnRhaW5lciAoXG4gICRtYXJnaW4tYm90dG9tOiAkcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tLFxuICAkZm9udC1zaXplOiAkcGFnaW5hdGlvbi1mb250LXNpemUsXG4gICRzcGFjaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmcsXG4gICRyYWRpdXM6ICRwYWdpbmF0aW9uLXJhZGl1cyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gIC8vIExpc3QgaXRlbVxuICBsaSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6bGFzdC1jaGlsZCxcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtIHtcbiAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBjdXJyZW50IHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50LFxuICAkY29sb3ItY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50XG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWN1cnJlbnQ7XG4gIGNvbG9yOiAkY29sb3ItY3VycmVudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gZWxsaXBzaXMgZm9yIHVzZSBpbiBhIHBhZ2luYXRpb24gbGlzdC5cbkBtaXhpbiBwYWdpbmF0aW9uLWVsbGlwc2lzIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvclxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb250ZW50OiAnXFwyMDI2JztcbiAgY29sb3I6ICRjb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcGFnaW5hdGlvbiB7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWNvbnRhaW5lcjtcblxuICAgIC5jdXJyZW50IHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1jdXJyZW50O1xuICAgIH1cblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLmVsbGlwc2lzOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWVsbGlwc2lzO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFnaW5hdGlvbi1hcnJvd3Mge1xuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAkcGFnaW5hdGlvbi1hcnJvdy1wcmV2aW91cztcbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuICAgIC5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICRwYWdpbmF0aW9uLWFycm93LW5leHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCB0YWJsZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgdGFibGUgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZSAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHN0cmlwZWQgdGFibGUgcm93cyBhbmQgdGhlIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1jb2xvci1zY2FsZTogNSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHN0eWxlIGZvciB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWJsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0YW5kYXJkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdHJpcGVkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgdGFibGVzIGFyZSBzdHJpcGVkIGJ5IGRlZmF1bHQgYW5kIGFuIC51bnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC4gSWYgYGZhbHNlYCwgYSAuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBzdHJpcGVkIHJvd3MuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgc3RyaXBlIG9uIHJvd3Mgb2YgdGhlIHRhYmxlcywgZXhjbHVkaW5nIHRoZSBoZWFkZXIgYW5kIGZvb3Rlci4gSWYgZXZlbiwgdGhlIGV2ZW4gcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBvZGQsIHRoZSBvZGQgcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBlbXB0eSwgb3IgYW55IG90aGVyIHZhbHVlLCB0aGUgdGFibGUgcm93cyB3aWxsIGhhdmUgbm8gc3RyaXBpbmcuXG4vLy8gQHR5cGUgS2V5d29yZFxuJHRhYmxlLXN0cmlwZTogZXZlbiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlYWRlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBmb290ZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGhlYWRlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9vdGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgaGVhZGVyIHdoZW4gdXNpbmcgc3RhY2tlZCB0YWJsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggc3RhY2tlZCB0YWJsZSBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuQG1peGluIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSkge1xuICB0ciB7XG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBldmVuLCBkYXJrZW4gdGhlIGV2ZW4gcm93cy5cbiAgICBAaWYgJHN0cmlwZSA9PSBldmVuIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIG9kZCwgZGFya2VuIHRoZSBvZGQgcm93cy5cbiAgICBAZWxzZSBpZiAkc3RyaXBlID09IG9kZCB7XG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS11bnN0cmlwZSgpIHtcbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlOiAkdGFibGUtc3RyaXBlLCAkaXMtc3RyaXBlZDogJHRhYmxlLWlzLXN0cmlwZWQpIHtcbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2FwdGlvblxuICBjYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWRcbiAgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1oZWFkLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBmb290XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtZm9vdC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtZm9vdC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZCBhbmQgZm9vdFxuICB0aGVhZCxcbiAgdGZvb3Qge1xuICAgIC8vIFJvd3Mgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0ciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAvLyBDZWxscyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiAjeyRnbG9iYWwtbGVmdH07XG4gICAgfVxuICB9XG5cbiAgLy8gVGFibGUgcm93c1xuICB0Ym9keSB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBzdHJpcGVkXG4gIEBpZiAkaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgIH1cblxuICAgICYudW5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgbm90IHN0cmlwZWRcbiAgQGVsc2UgaWYgJGlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgIH1cblxuICAgICYuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGFibGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0cmlwZSBbJHRhYmxlLXN0cmlwZV0gLSBVc2VzIGtleXdvcmRzIGV2ZW4sIG9kZCwgb3Igbm9uZSB0byBkYXJrZW4gcm93cyBvZiB0aGUgdGFibGUuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGV2ZW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVzdCBbZmFsc2VdIC0gTmVlZGVkIGlmIHlvdSBvbmx5IHdhbnQgdG8gYXBwbHkgdGhpcyB0byBhIHNwZWNpZmljIHRhYmxlLlxuQG1peGluIHRhYmxlKFxuICAkc3RyaXBlOiAkdGFibGUtc3RyaXBlLFxuICAkbmVzdDogZmFsc2Vcbikge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4gIEBpZiAkbmVzdCB7XG4gICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGF0LXJvb3Qge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGFiaWxpdHkgdG8gaG9yaXpvbnRhbGx5IHNjcm9sbCB0aGUgdGFibGUgd2hlbiB0aGUgY29udGVudCBvdmVyZmxvd3MgaG9yaXpvbnRhbGx5LlxuQG1peGluIHRhYmxlLXNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLy8vIFNsaWdodGx5IGRhcmtlbnMgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG5AbWl4aW4gdGFibGUtaG92ZXIge1xuICB0aGVhZCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBoZWFkZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBmb290ZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1mb290LXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Ym9keSB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSBub24tc3RyaXBlZCB0YWJsZSByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlIGlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2UgaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzdGFja2VkIHRhYmxlLiBVc2VmdWwgZm9yIHNtYWxsLXNjcmVlbiBsYXlvdXRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGhlYWRlciBbJHNob3ctaGVhZGVyLWZvci1zdGFja2VkXSAtIFNob3cgdGhlIGZpcnN0IHRoIG9mIGhlYWRlciB3aGVuIHN0YWNrZWQuXG5AbWl4aW4gdGFibGUtc3RhY2soJGhlYWRlcjogJHNob3ctaGVhZGVyLWZvci1zdGFja2VkKSB7XG4gIEBpZiAkaGVhZGVyIHtcbiAgICB0aGVhZCB7XG4gICAgICB0aCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHRyLFxuICB0aCxcbiAgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFibGUoJG5lc3Q6IGZhbHNlKSB7XG4gIHRhYmxlIHtcbiAgICBAaW5jbHVkZSB0YWJsZSgkbmVzdDogJG5lc3QpO1xuICB9XG5cbiAgdGFibGUuc3RhY2sge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQgZG93bikge1xuICAgICAgQGluY2x1ZGUgdGFibGUtc3RhY2s7XG4gICAgfVxuICB9XG5cbiAgdGFibGUuc2Nyb2xsIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1zY3JvbGw7XG4gIH1cblxuICB0YWJsZS5ob3ZlciB7XG4gICAgQGluY2x1ZGUgdGFibGUtaG92ZXI7XG4gIH1cblxuICAudGFibGUtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0YWJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBvZiB0aGUgdGFiIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgZm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRhYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhIHRhYiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lciAoXG4gICRtYXJnaW46ICR0YWItbWFyZ2luLFxuICAkYmFja2dyb3VuZDogJHRhYi1iYWNrZ3JvdW5kLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJG1hcmdpbjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRhaW5lciB0byBoYXZlIHZlcnRpY2FsIHRhYnMuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGFpbmVyKClgLlxuQG1peGluIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsIHtcbiAgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgbGlua3Mgd2l0aGluIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgYDxsaT5gIGVsZW1lbnRzIGluc2lkZSBhIHRhYiBjb250YWluZXIuXG5AbWl4aW4gdGFicy10aXRsZSAoXG4gICRwYWRkaW5nOiAkdGFiLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJHRhYi1pdGVtLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkdGFiLWNvbG9yLFxuICAkY29sb3ItYWN0aXZlOiAkdGFiLWFjdGl2ZS1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkYmFja2dyb3VuZC1hY3RpdmU6ICR0YWItYmFja2dyb3VuZC1hY3RpdmVcbikge1xuICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gID4gYSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJlthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRjb2xvci1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHdyYXBwZXIgdGhhdCBzdXJyb3VuZHMgYSB0YWIgZ3JvdXAncyBjb250ZW50IHBhbmVzLlxuQG1peGluIHRhYnMtY29udGVudCAoXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkdGFiLWNvbnRlbnQtY29sb3IsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRlbnQgY29udGFpbmVyIHRvIGhhdmUgYSB2ZXJ0aWNhbCBzdHlsZSwgYnkgc2hpZnRpbmcgdGhlIGJvcmRlciBhcm91bmQuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGVudCgpYC5cbkBtaXhpbiB0YWJzLWNvbnRlbnQtdmVydGljYWwgKFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBpbmRpdmlkdWFsIHRhYiBjb250ZW50IHBhbmVsIHdpdGhpbiB0aGUgdGFiIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIHRhYnMtcGFuZWwgKFxuICAkcGFkZGluZzogJHRhYi1jb250ZW50LXBhZGRpbmdcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFicyB7XG4gIC50YWJzIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsXG4gIC50YWJzLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFNpbXBsZVxuICAudGFicy5zaW1wbGUge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmltYXJ5IGNvbG9yXG4gIC50YWJzLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJHByaW1hcnktY29sb3IpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCRwcmltYXJ5LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFicy10aXRsZSB7XG4gICAgQGluY2x1ZGUgdGFicy10aXRsZTtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudDtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudC12ZXJ0aWNhbDtcbiAgfVxuXG4gIC50YWJzLXBhbmVsIHtcbiAgICBAaW5jbHVkZSB0YWJzLXBhbmVsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIGNoZWNrIHRoZSBsdW1pbmFuY2Ugb2YuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuQGZ1bmN0aW9uIGNvbG9yLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI3JlbGF0aXZlbHVtaW5hbmNlZGVmXG4gICRyZ2JhOiByZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpO1xuICAkcmdiYTI6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMyB7XG4gICAgJHJnYjogbnRoKCRyZ2JhLCAkaSk7XG4gICAgJHJnYjogJHJnYiAvIDI1NTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCAkcmdiIC8gMTIuOTIsIHBvdygoJHJnYiArIDAuMDU1KSAvIDEuMDU1LCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiAkbHVtaW5hbmNlMSAvICRsdW1pbmFuY2UyO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IDEgLyAkcmF0aW87XG4gIH1cblxuICAkcmF0aW86IHJvdW5kKCRyYXRpbyAqIDEwKSAvIDEwO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFzZSAtIENvbG9yIHRvIGNoZWNrIGx1bWluYW5jZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRjb2xvcnMgWygkd2hpdGUsICRibGFjayldIC0gQ29sb3JzIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b2xlcmFuY2UgWyRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2VdIC0gQ29udHJhc3QgdG9sZXJhbmNlLlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAkZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3Qtd2FybmluZ3MgYW5kICRjb250cmFzdCA8IDMpIHtcbiAgICBAd2FybiBcIkNvbnRyYXN0IHJhdGlvIG9mICN7JGJlc3R9IG9uICN7JGJhc2V9IGlzIHByZXR0eSBiYWQsIGp1c3QgI3skY29udHJhc3R9XCI7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYCBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRwcmltYXJ5LWNvbG9yOiAjMTc3OWJhICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiAjNzY3Njc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogIzNhZGI3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHdhcm5pbmctY29sb3I6ICNmZmFlMDAgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRhbGVydC1jb2xvcjogI2NjNGIzNyAhZ2xvYmFsO1xuICB9XG59XG4iLCIvKipcbiAqIE1JWElOU1xuICovXG5cbkBtaXhpbiB4eS1jZW50ZXIoKSB7XG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHR0b3A6NTAlO1xuXHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0LW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVpbiB7XG5cdGZyb20geyBvcGFjaXR5OiAwOyB9XG5cdHRvICAgeyBvcGFjaXR5OiAxOyB9XG59XG5cbi5zY3JvbGxiYXIgeyBcblxuXHRtYXJnaW4tYm90dG9tOiAycmVtO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcblx0XHQkc2Nyb2xsYmFyLXdpZHRoOiA4cHg7XG5cdFx0JHNjcm9sbGJhci1oZWlnaHQ6IDhweDtcblx0XHQkc2Nyb2xsYmFyLWNvbG9yOiAkdGFiLWNvbG91cjtcblx0XHRvdmVyZmxvdy15OiBzY3JvbGw7XG5cdFx0XG5cdFx0Jjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuXHRcdFx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXHRcdFx0d2lkdGg6ICRzY3JvbGxiYXItd2lkdGg7XG5cdFx0fVxuXG5cdFx0Jjo6LXdlYmtpdC1zY3JvbGxiYXI6dmVydGljYWwge1xuXHRcdFx0d2lkdGg6ICRzY3JvbGxiYXItd2lkdGg7XG5cdFx0fVxuXHRcdFxuXHRcdCY6Oi13ZWJraXQtc2Nyb2xsYmFyOmhvcml6b250YWwge1xuXHRcdFx0aGVpZ2h0OiAkc2Nyb2xsYmFyLWhlaWdodDtcblx0XHR9XG5cdFx0XG5cdFx0Jjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogOHB4O1xuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJHNjcm9sbGJhci1jb2xvcjsgLyogc2hvdWxkIG1hdGNoIGJhY2tncm91bmQsIGNhbid0IGJlIHRyYW5zcGFyZW50ICovXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC41KTtcblx0XHR9XG5cblx0XHRwIHtcblx0XHRcdC8vIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cdFx0fVxuXHR9XHRcbn1cblxuQGZ1bmN0aW9uIGVuY29kZWNvbG9yKCRzdHJpbmcpIHtcblx0QGlmIHR5cGUtb2YoJHN0cmluZykgPT0gJ2NvbG9yJyB7XG4gICAgICAgICRoZXg6IHN0ci1zbGljZShpZS1oZXgtc3RyKCRzdHJpbmcpLCA0KTtcbiAgICAgICAgJHN0cmluZzp1bnF1b3RlKFwiI3skaGV4fVwiKTtcbiAgICB9XG4gICAgJHN0cmluZzogJyUyMycgKyAkc3RyaW5nO1xuXHRAcmV0dXJuICRzdHJpbmc7XG59XG4iLCIvKipcbiAqIDEuIEF2b2lkIHRoZSBJRSAxMC0xMSBgbWluLWhlaWdodGAgYnVnLlxuICogMi4gU2V0IGBmbGV4LXNocmlua2AgdG8gYDBgIHRvIHByZXZlbnQgc29tZSBicm93c2VycyBmcm9tXG4gKiAgICBsZXR0aW5nIHRoZXNlIGl0ZW1zIHNocmluayB0byBzbWFsbGVyIHRoYW4gdGhlaXIgY29udGVudCdzIGRlZmF1bHRcbiAqICAgIG1pbmltdW0gc2l6ZS4gU2VlIGh0dHA6Ly9iaXQubHkvMU1uMzVVUyBmb3IgZGV0YWlscy5cbiAqIDMuIFVzZSBgJWAgaW5zdGVhZCBvZiBgdmhgIHNpbmNlIGB2aGAgaXMgYnVnZ3kgaW4gb2xkZXIgbW9iaWxlIFNhZmFyaS5cbiAqL1xuXG4gLy8gRm9yIHRoaXMgc25pcHBldCB0byB3b3JrLCB1c2UgbWFya3VwIC4uLlxuIC8vIDxib2R5PlxuIC8vICAgPGhlYWRlcj7igKY8L2hlYWRlcj5cbiAvLyAgIDxtYWluIGNsYXNzPVwiU2l0ZS1jb250ZW50XCI+4oCmPC9tYWluPlxuIC8vICAgPGZvb3Rlcj7igKY8L2Zvb3Rlcj5cbiAvLyA8L2JvZHk+XG5cbmh0bWwge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbmJvZHkge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG5cbi5zaXRlLWhlYWRlcixcbi5zaXRlLWZvb3RlciB7XG5cdGZsZXg6IG5vbmU7XG59XG5cbi5zaXRlLWNvbnRlbnQge1xuXHRmbGV4OiAxIDAgYXV0bztcblx0cGFkZGluZzogdmFyKC0tc3BhY2UpIHZhcigtLXNwYWNlKSAwO1xuXHR3aWR0aDogMTAwJTtcbn1cblxuLnNpdGUtY29udGVudDo6YWZ0ZXIge1xuXHRjb250ZW50OiAnXFwwMGEwJztcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi10b3A6IHZhcigtLXNwYWNlKTtcblx0aGVpZ2h0OiAwcHg7XG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbiIsIi8qKlxuICogR1JJRCBYLVlcbiAqL1xuXG4uZ3JpZC1jb250YWluZXItd3JhcHBlciB7XG5cdHdpZHRoOiAxMDAlO1x0XG59XG5cbi5ncmlkLWNvbnRhaW5lciB7XG5cdCYuZ3JpZC1jb250YWluZXItY29sbGFwc2Uge1x0XHRcblx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0cGFkZGluZy1yaWdodDogMDtcblx0fVxufVxuIiwiLy8gRGVmYXVsdCBBY2NvcmRpb25cbi5hY2NvcmRpb24ge1xuXHQuYWNjb3JkaW9uLXRpdGxlIHtcblx0XHQvLyBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXHRcdHBhZGRpbmc6IDEwcHggMCAxMHB4IDA7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdGJvcmRlcjogMDtcblx0XHRib3JkZXItYm90dG9tOiAycHggc29saWQgJGJvcmRlcjtcblx0XHRoNSwgLmg1IHtcblx0XHRcdG1heC13aWR0aDogOTUlO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0fVxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpO1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiAxNXB4IDExcHg7XG5cdFx0XHR3aWR0aDogMTVweDtcblx0XHRcdGhlaWdodDogMTFweDtcblx0XHRcdHJpZ2h0OiAxMHB4O1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cztcblxuXHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7XG5cdFx0XHRcdG1hc2stc2l6ZTogMTVweCAxMXB4O1xuXHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmOmhvdmVyLCAmOmZvY3VzIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdH1cblx0fVxuXHQuYWNjb3JkaW9uLWNvbnRlbnQge1xuXHRcdGJvcmRlcjogMDtcblx0XHRtYXJnaW4tdG9wOiAxNXB4O1xuXG5cdFx0YSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR6LWluZGV4OiAxO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKXtcblx0XHRcdHAge1xuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIHtcblx0XHQuYWNjb3JkaW9uLXRpdGxlIHtcblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtMTgwZGVnKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLmFjY29yZGlvbl9fZ3JpZCB7XG5cdFx0LmFjY29yZGlvbi1jb250ZW50IHtcblx0XHRcdC5jYXJkLmNhcmRfX3RpbGUge1xuXHRcdFx0XHQudGlsZS0td3JhcCB7XG5cdFx0XHRcdFx0cGFkZGluZzogMjBweDtcblx0XHRcdFx0XHRtaW4taGVpZ2h0OiAxNTBweDtcblx0XHRcdFx0XHRkaXNwbGF5OiB0YWJsZTtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0bWFyZ2luOiBhdXRvO1xuXG5cdFx0XHRcdFx0LnRpbGUtLWlubmVyIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdFx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYuYWNjb3JkaW9uX19pbmZvIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdC5ncmlkLWNvbnRhaW5lciB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogNTVweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmFjY29yZGlvbi10aXRsZSB7XG5cdFx0XHRib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRjb2xvcjogJHByaW1hcnktdGhyZWU7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG5cdFx0XHRcdHBhZGRpbmc6IDEwcHggODBweDtcblx0XHRcdH1cblx0XHRcdG1hcmdpbi1ib3R0b206IDBweDtcblx0XHRcdGltZyB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRcdFx0fVxuXHRcdFx0aDQge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDIwcHggIWltcG9ydGFudDtcblx0XHRcdFx0Ji5wYXJhZ3JhcGgge1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LXdoaXRlLnN2Zyk7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTVweCAxMXB4O1xuXHRcdFx0XHRyaWdodDogNDBweDtcblxuXHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LXdoaXRlLnN2Zyk7XG5cdFx0XHRcdFx0bWFzay1zaXplOiAxNXB4IDExcHg7XG5cdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcblx0XHRcdFx0XHRyaWdodDogMTUwcHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG5cdFx0XHRcdFx0cmlnaHQ6IDIxMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHRcdHRvcDogNTUlO1xuXHRcdFx0fVxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LXdoaXRlLnN2Zyk7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTVweCAxMXB4O1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR0b3A6IDU1JTtcblx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgYmxhY2s7XG5cblx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy13aGl0ZS5zdmcpO1xuXHRcdFx0XHRcdG1hc2stc2l6ZTogMTVweCAxMXB4O1xuXHRcdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LmFjY29yZGlvbi1jb250ZW50IHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRiZy1ncmV5O1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuXHRcdFx0XHRwYWRkaW5nOiAzMHB4IDgwcHg7XG5cdFx0XHR9XG5cdFx0XHRjb2xvcjogJGNhcHRpb24tZ3JleTtcblx0XHRcdHB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIENhcmQgd2l0aCBkcm9wZG93biBzZWN0aW9uXG4uYWNjb3JkaW9uLmFjY29yZGlvbl9fY2FyZCB7XG5cblx0Ji5wdWJsaWNhdGlvbiB7XG5cdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0fVxuXHRcblx0bGlzdC1zdHlsZTogbm9uZSAhaW1wb3J0YW50O1xuXHRcblx0LmFjY29yZGlvbi1pdGVtLCBbZGF0YS1hY2NvcmRpb24taXRlbV0ge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcblx0XHRcblx0XHQuYWNjb3JkaW9uLXRpdGxlIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdGJvcmRlcjogMDtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDExcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG5cdFx0XHRcdGhlaWdodDogMTFweDtcblx0XHRcdFx0dG9wOiAyMHB4O1xuXHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdFx0Ly8gdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG5cdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTtcblx0XHRcdFx0XHRtYXNrLXNpemU6IDE1cHggMTFweDtcblx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCY6aG92ZXIsICY6Zm9jdXMge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGJvcmRlci1jb2xvcjogJHdoaXRlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC5zdWJoZWFkaW5nIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDQwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdC5hY2NvcmRpb24tY29udGVudCB7XG5cdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdH1cblxuXHRcdCYuaXMtYWN0aXZlIHtcblx0XHRcdC5hY2NvcmRpb24tdGl0bGUge1xuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtMTgwZGVnKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5saW5rIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0Y29sb3I6ICRwcmltYXJ5LW9uZTtcblx0XHRcdG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuXHRcdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR9XG5cdH1cblxuXHQmLmFjY29yZGlvbl9fY2FyZF9ub2ltZyB7XG5cdFx0LmFjY29yZGlvbi10aXRsZSB7XG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdH1cblxuXHRcdC5hY2NvcmRpb25fX2NvbnRlbnQge1xuXHRcdFx0d2lkdGg6IDk1JTtcblx0XHR9XG5cdH1cbn1cblxuJGNvbnRlbnQtaGVpZ2h0LXNtYWxsOiAxMHJlbTtcbiRjb250ZW50LWhlaWdodC1tZWRpdW06IDE3cmVtO1xuXG4vLyBDYXJkIHdpdGggZHJvcGRvd24gc2VjdGlvbiwgc2xpZ2h0IGRpZmYgdG8gYWJvdmUsIFxuLy8gYWNjb21tb2RhdGVzIGJhY2tncm91bmQgY29sb3IgYW5kIGFic29sdXRlIHBvc2l0aW9uZWQgQ1RBIGxpbmtcbi5hY2NvcmRpb25fX2NhcmQge1xuXHRcblx0Ji5ncmV5QmcsIFxuXHQmLnRhYi1jb2xvdXItYmcge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR0YWItY29sb3VyO1xuXHRcdC5hY2NvcmRpb24taXRlbSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGFiLWNvbG91cjtcblx0XHR9XG5cdFx0LmFjY29yZGlvbi1jb250ZW50IHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR0YWItY29sb3VyO1xuXHRcdH1cblx0fVxuXHRcblx0LnRhZyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblx0LnRhZy5idXR0b24ge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdH1cblx0fVxuXG5cdC5hY2NvcmRpb25fdGFnIHtcblx0XHRjb2xvcjogJHByaW1hcnktb25lICFpbXBvcnRhbnQ7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgJHByaW1hcnktb25lICFpbXBvcnRhbnQ7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG5cdFx0bWFyZ2luOiAxNXB4ICFpbXBvcnRhbnQ7XG5cdFx0cGFkZGluZzogMTBweCAhaW1wb3J0YW50O1xuXHRcdCYubm9fbWFyZ2luIHtcblx0XHRcdG1hcmdpbjogMTVweCAxNXB4IDE1cHggMCAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxuXG5cdCYuYWNjb3JkaW9uX19jYXJkX2VxdWFsaXplIHtcdFx0XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1x0XHRcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHRcdFxuXHRcdC5icm93IHtcblx0XHRcdC50YWcge1xuXHRcdFx0XHRib3JkZXI6IHNvbGlkIDFweCBsaW1lO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5hY2NvcmRpb24tdGl0bGUge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0dG9wOiAxZW07XG5cdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0fVxuXHRcdFx0LnB1c2hkb3duX19oZWFkaW5nIHsgXHRcdFx0XG5cdFx0XHRcdG1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luO1xuXHRcdFx0XHRwYWRkaW5nOiAwIDI0cHggMCAwO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1x0XG5cdFx0XHR9XG5cblx0XHRcdGgzLCAuaDQsIC5oNSB7XG5cdFx0XHRcdG1heC13aWR0aDogOTUlO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHQuYWNjb3JkaW9uLWNvbnRlbnQge1x0XHRcdFxuXHRcdFx0QGV4dGVuZCAuc2Nyb2xsYmFyO1xuXHRcdFx0Ly8gaGVpZ2h0OiAkY29udGVudC1oZWlnaHQtbWVkaXVtO1x0XHRcdFxuXHRcdH1cblxuXHR9XG5cblx0Ly8gVGhpcyBleHBlY3RzIGEgYmctY29sb3IgXG5cdCYuYWNjb3JkaW9uX19jYXJkX2JveGVkIHtcblx0XHRcblx0XHQudGFnIHtcblx0XHRcdHBhZGRpbmc6ICRnbG9iYWwtbWFyZ2luICRnbG9iYWwtbWFyZ2luICAwO1xuXHRcdH1cblxuXHRcdC5hY2NvcmRpb24tdGl0bGUge1xuXHRcdFx0LnB1c2hkb3duX19oZWFkaW5nIHsgXG5cdFx0XHRcdG1hcmdpbjogMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbjtcblx0XHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5hY2NvcmRpb24tY29udGVudCB7XHRcdFx0XG5cdFx0XHRwYWRkaW5nLWxlZnQ6ICRnbG9iYWwtcGFkZGluZztcdFx0XHRcblx0XHR9XG5cblx0XHQubGluayB7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygyNCkgJGdsb2JhbC1wYWRkaW5nO1xuXHRcdH1cblx0fVxufVxuXG4uY2FyZF9fZXhwYW5kYWJsZSB7XG5cdC5hY2NvcmRpb24tdGl0bGUge1xuXHRcdHotaW5kZXg6IDE7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0aDUsIC5oNSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHBhZGRpbmctcmlnaHQ6IDMwcHg7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTFweDtcblx0XHRcdHdpZHRoOiAxNXB4O1xuXHRcdFx0aGVpZ2h0OiAxMXB4O1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAxNnB4O1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzO1xuXG5cdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTtcblx0XHRcdFx0bWFzay1zaXplOiAxNXB4IDExcHg7XG5cdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5jZWxsLmFjY29yZGlvbi5hY2NvcmRpb25fX2NhcmQsXG4uY2VsbCAuYWNjb3JkaW9uX19jYXJkIC5hY2NvcmRpb24ge1xuXHQuYWNjb3JkaW9uLWNvbnRlbnQge1xuXHRcdEBleHRlbmQgLnNjcm9sbGJhcjtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG5cdFx0XHQvLyBoZWlnaHQ6ICRjb250ZW50LWhlaWdodC1tZWRpdW07XG5cdFx0fVxuXHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdH1cbn1cblxuLy8gT3ZlcnJpZGUgaW5oZXJpdGVkIEZvdW5kYXRpb24gY2xhc3Nlc1xuOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpPi5hY2NvcmRpb24tdGl0bGUge1xuXHRib3JkZXItYm90dG9tOiAycHggc29saWQgJGJvcmRlcjtcbn1cblxuLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLXRpdGxlLW5vLWJvcmRlciwgXG46bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSk+LmFjY29yZGlvbi10aXRsZS1uby1ib3JkZXIgLCBcbjpsYXN0LWNoaWxkPi5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcblx0Ym9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1x0XG59XG5cbi5hY2NvcmRpb24tZnVsbCB7XG5cdC5hY2NvcmRpb24tY29udGVudCB7XG5cdFx0Ym9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkc2Vjb25kYXJ5LW9uZTtcblx0fVxufVxuXG5kZXRhaWxzIHtcblx0Y29sb3I6ICRwcmltYXJ5LW9uZTtcblxuXHRzdW1tYXJ5IHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdFx0Jjo6bWFya2VyLCAmOjotd2Via2l0LWRldGFpbHMtbWFya2VyIHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpO1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiAxNXB4IDExcHg7XG5cdFx0XHR3aWR0aDogMTVweDtcblx0XHRcdGhlaWdodDogMTFweDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHRvcDogMHB4O1xuXHRcdFx0cmlnaHQ6IC0xMnB4O1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cztcblxuXHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7XG5cdFx0XHRcdG1hc2stc2l6ZTogMTVweCAxMXB4O1xuXHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCZbb3Blbl0ge1xuXHRcdHN1bW1hcnkge1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uYWNjb3JkaW9uX19zaWRlYmFyX3NlY3Rpb24ge1xuXHQvLyBkaXNwbGF5OiBub25lO1xuXHQuYWNjb3JkaW9uLmFjY29yZGlvbl9fc2lkZWJhciB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG5cdFx0LmFjY29yZGlvbi10aXRsZSB7XG5cdFx0XHQvLyBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHQvLyBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xuXHRcdFx0cGFkZGluZzogMjBweCAwIDVweCAwO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHR9XG5cdFx0LmFjY29yZGlvbi1jb250ZW50IHtcblx0XHRcdHBhZGRpbmc6IDIwcHg7XG5cdFx0XHQuY2FyZCB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0XHRcdC5hY2NvcmRpb25fc2lkZWJhcl9zcGFuIHtcblx0XHRcdFx0XHRoZWlnaHQ6IDExcHg7XG5cdFx0XHRcdFx0d2lkdGg6IDJweDtcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdG1hcmdpbjogYXV0byA1cHggYXV0byAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC8vICYuYWNjb3JkaW9uX19zaWRlYmFyX3Nob3cge1xuXHQvLyBcdGRpc3BsYXk6IGJsb2NrO1xuXHQvLyB9XG59XG5cbiIsIi5jYXB0aW9uIHtcblx0ZGlzcGxheTogZmxleDtcblx0bWFyZ2luLWJvdHRvbTogNnB4O1xuXG5cdCYuZGF0ZSwgJi50aW1lLCAmLmxvY2F0aW9uLCAmLmFkZHJlc3Mge1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEycHg7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0Ji5kYXRlLCAmLnRpbWUge1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGhlaWdodDogMTdweDtcblx0XHRcdHdpZHRoOiAxN3B4O1xuXHRcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3RpbWUtaWNvbi5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIC8gY29udGFpbjtcblxuXHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy90aW1lLWljb24uc3ZnKTtcblx0XHRcdFx0bWFzay1zaXplOiBjb250YWluO1xuXHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRtYXNrLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcblx0XHRcdFx0bWFyZ2luLXRvcDogMTFweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLmxvY2F0aW9uLCAmLmFkZHJlc3Mge1xuXHRcdGEge1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdH1cblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGhlaWdodDogMjFweDtcblx0XHRcdHdpZHRoOiAxN3B4O1xuXHRcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3Bpbi5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIC8gY29udGFpbjtcblxuXHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9waW4uc3ZnKTtcblx0XHRcdFx0bWFzay1zaXplOiBjb250YWluO1xuXHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRtYXNrLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLyoqXG4gKiBDb2xvcnMgXG4gKi9cblxuLypcblx0Q29sb3IgdmFyaWFibGUgZGVmaW5lZCBpbiAgXG5cdH4vc2Nzcy9zZXR0aW5ncy9fc2V0dGluZ3Muc2NzcyBcbiovXG5cbiRjb2xvcnM6IChcblx0J2JsYWNrJzogICAgICAgJGJsYWNrLFxuXHQnd2hpdGUnOiAgICAgICAkd2hpdGUsXG5cdCdsaWdodC1ncmF5JzogICRsaWdodC1ncmF5LFxuXHQnbWVkaXVtLWdyYXknOiAkbWVkaXVtLWdyYXksXG5cdCdkYXJrLWdyYXknOiAgICRkYXJrLWdyYXksXG5cdCd3cmFwLWdyZXknOiAkYmctZ3JleVxuKTtcblxuLyogTG9vcHMgdGhydSAkY29sb3JzIGFuZCBjcmVhdGUgXG5cdCogY29sb3Jcblx0KiBiYWNrZ3JvdW5kLWNvbG9yIFxuXHQqIGJvcmRlciAodW5jb21tZW50IGJvcmRlciBzZWN0aW9uIGJlbG93IHRvIHJlbmRlcilcbiovXG5cbi5jb2xvciB7XG5cdEBlYWNoICRjb2xvciBpbiAkY29sb3JzIHtcdFx0XG5cdFx0JGtleTogbnRoKCRjb2xvciwgMSk7XG5cdFx0JHZhbHVlOiBudGgoJGNvbG9yLCAyKTtcdFx0XG5cdFx0Ji0jeyRrZXl9IHtcblx0XHRcdGNvbG9yOiAkdmFsdWU7ICAgICAgICAgICAgXHRcdFx0XG5cdFx0XHQmLWJnIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHZhbHVlO1xuXHRcdFx0fVx0XG5cdFx0XHQvLyAmLWJvcmRlciB7XG5cdFx0XHQvLyBcdGJvcmRlci1jb2xvcjogJHZhbHVlO1x0XG5cdFx0XHQvLyB9ICAgICAgICBcblx0XHR9XG5cdH1cbn1cblxuIiwiLyoqXG4gKiBCYWNrZ3JvdW5kIGNvbG91cnNcbiAqL1xuXG4gLmJnLXRyYW5zcGFyZW50IHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi8qKlxuICogQmFja2dyb3VuZFxuICovXG5cbiAuYmcge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cblx0Ji5iZy1jb3ZlciB7XG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0fVxuXG5cdCYuYmctY2VudGVyIHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHR9XG5cdFxuXHQmLmJnLXRpbnR7XHRcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHR6LWluZGV4OiAxO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRjb250ZW50OiAnICc7XG5cdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNSk7XG5cdFx0fVxuXHR9XG59XG4iLCJcblt0eXBlPSd0ZXh0J10sIFxuW3R5cGU9J3Bhc3N3b3JkJ10sIFxuW3R5cGU9J2RhdGUnXSwgXG5bdHlwZT0nZGF0ZXRpbWUnXSwgXG5bdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgXG5bdHlwZT0nbW9udGgnXSwgXG5bdHlwZT0nd2VlayddLCBcblt0eXBlPSdlbWFpbCddLCBcblt0eXBlPSdudW1iZXInXSwgXG5bdHlwZT0nc2VhcmNoJ10sIFxuW3R5cGU9J3RlbCddLCBcblt0eXBlPSd0aW1lJ10sIFxuW3R5cGU9J3VybCddLCBcblt0eXBlPSdjb2xvciddLCBcbnRleHRhcmVhLFxuc2VsZWN0XG57XG5cdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkcHJpbWFyeS1vbmU7XG5cdHBhZGRpbmc6IC40Njg3NXJlbTtcblxuXHQmOmZvY3VzIHtcblx0XHRib3JkZXItYm90dG9tOiAycHggc29saWQgJHByaW1hcnktb25lO1xuXHRcdHBhZGRpbmc6IC40Njg3NXJlbTtcblx0fVxuXG5cdCY6OnBsYWNlaG9sZGVyIHsgXG5cdFx0LyogQ2hyb21lLCBGaXJlZm94LCBPcGVyYSwgU2FmYXJpIDEwLjErICovXG5cdFx0b3BhY2l0eTogMTsgXG5cdFx0LyogRmlyZWZveCAqL1xuXHR9XG59XG5cbnRleHRhcmVhIHtcblx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRwYWRkaW5nOiAxNHB4O1xuXHRib3JkZXI6IG5vbmU7XG5cdHJlc2l6ZTogbm9uZTtcblxuXHQmOmZvY3VzIHtcblx0XHRib3JkZXI6IG5vbmU7XG5cdH1cbn1cblxuc2VsZWN0IHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cblx0Jjpmb2N1cyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdH1cbn1cblxuLy8gTWFpbENoaW1wIFNpZ251cFxuLnNpZ251cF9fZm9ybSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Ly9iYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0bWFyZ2luLXRvcDogLTIwcHggIWltcG9ydGFudDtcblxuXHQmIC5iZ19faW1nIHtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0cGFkZGluZy10b3A6IDcwcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDcwcHg7XG5cdFx0aGVpZ2h0OiAtd2Via2l0LWZpdC1jb250ZW50O1xuXHRcdGhlaWdodDogLW1vei1maXQtY29udGVudDtcblx0XHRoZWlnaHQ6IGZpdC1jb250ZW50O1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcblx0XHRtYXJnaW4tdG9wOiAtNDBweCAhaW1wb3J0YW50O1xuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuXHRcdG1hcmdpbi10b3A6IC03MHB4ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcblx0XHQuc2lnbnVwX19mb3JtX2NvbnRhaW5lciB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwcHg7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKXtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cblx0XHQuc2lnbnVwX19mb3JtX2NvbnRhaW5lciB7XG5cdFx0XHRvcmRlcjogMjtcblx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0XHQuZ3JpZC14IHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdHBhZGRpbmc6IDI1cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHR9XG5cdCoge1xuXHRcdGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdH1cblxuXHRbdHlwZT0ndGV4dCddLCBcblx0W3R5cGU9J3Bhc3N3b3JkJ10sIFxuXHRbdHlwZT0nZGF0ZSddLCBcblx0W3R5cGU9J2RhdGV0aW1lJ10sIFxuXHRbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgXG5cdFt0eXBlPSdtb250aCddLCBcblx0W3R5cGU9J3dlZWsnXSwgXG5cdFt0eXBlPSdlbWFpbCddLCBcblx0W3R5cGU9J251bWJlciddLCBcblx0W3R5cGU9J3NlYXJjaCddLCBcblx0W3R5cGU9J3RlbCddLCBcblx0W3R5cGU9J3RpbWUnXSwgXG5cdFt0eXBlPSd1cmwnXSwgXG5cdFt0eXBlPSdjb2xvciddLCBcblx0dGV4dGFyZWEsXG5cdHNlbGVjdCB7XG5cdFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cdFx0Y29sb3I6ICRwcmltYXJ5LW9uZSAhaW1wb3J0YW50O1xuXG5cdFx0Jjo6cGxhY2Vob2xkZXIgeyBcblx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXHRcdFx0Y29sb3I6ICRwcmltYXJ5LW9uZTtcblx0XHR9XG5cdH1cblxuXHQuZm9ybS1jb250ZW50IHtcblx0XHRwYWRkaW5nOiAzMHB4IDA7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1vbmU7ICAgICAgICAgICAgXG5cdFx0cGFkZGluZzogMjVweDtcblx0XHRib3JkZXItcmFkaXVzOiA1cHg7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0cGFkZGluZzogMzJweCA0MHB4O1xuXHRcdFx0Ly9wYWRkaW5nOiA1MHB4IDkwcHggNTBweCAwO1xuXHRcdH1cblx0fVxuXG5cdHAge1xuXHRcdC8vZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdC8vZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG5cdFx0fVxuXHR9XG5cdGZvcm0ge1xuXHRcdG1hcmdpbi10b3A6IDQwcHg7XG5cdFx0aW5wdXQ6bm90KC5idXR0b24pLCBpbnB1dDpmb2N1czpub3QoLmJ1dHRvbikge1xuXHRcdFx0Y29sb3I6ICRwcmltYXJ5LXRocmVlO1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0Ly8gYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHQvLyBib3JkZXI6IG5vbmU7XG5cdFx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdH1cblx0XHRsYWJlbCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdH1cblx0fVxuXHQuYnV0dG9uIHtcblx0XHRAZXh0ZW5kIC5zZWNvbmRhcnk7XG5cdFx0bWFyZ2luLXRvcDogMTZweDtcblx0fVxuXHRcblx0aW1nIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRcdG9yZGVyOiAxO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0bGVmdDogY2FsYyg1MCUgKyAyMHB4KTtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHR9XG5cdH1cblxufVxuXG4vLyBMb2FkIE1vcmUgZm9ybVxuXG5mb3JtI2xvYWRfbW9yZSB7XG5cdHBhZGRpbmctdG9wOiA1MHB4O1xuXHQjbG9hZE1vcmUge1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHR9XG59XG5cbi5nZm9ybV93cmFwcGVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdGZvcm0ge1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdH1cblxuXHQuZ2Zvcm1fZmllbGRzIHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHR9XG5cblx0LmhpZGRlbl9sYWJlbCB7XG5cdFx0bGVnZW5kLmdmaWVsZF9sYWJlbCB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXHQuZ2ZfcHJvZ3Jlc3NiYXIge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQuZ2Zvcm1fdGl0bGUge1xuXHRcdG1hcmdpbi1ib3R0b206IDIuNXJlbTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogM3JlbTtcblx0XHR9XG5cdH1cblxuXHQuZ2lucHV0X2NvbnRhaW5lcl9kYXRlIHtcblx0XHRzcGFuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXG5cdC5naW5wdXRfY29udGFpbmVyX2NoZWNrYm94LCAuZ2lucHV0X2NvbnRhaW5lcl9yYWRpbyB7XG5cdFx0dWwuZ2ZpZWxkX2NoZWNrYm94LCB1bC5nZmllbGRfcmFkaW8ge1xuXHRcdFx0bWFyZ2luOiAyMHB4IDBweCAhaW1wb3J0YW50O1xuXHRcdFx0bGk6OmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmdpbnB1dF9jb250YWluZXJfdGV4dGFyZWEge1xuXHRcdHRleHRhcmVhIHtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDVweCAhaW1wb3J0YW50O1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNCAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxuXG5cdC5nZm9ybV92YWxpZGF0aW9uX2NvbnRhaW5lciB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5naW5wdXRfY29udGFpbmVyX25hbWUge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0Y29sdW1uLWdhcDogMjBweDtcblxuXHRcdFx0PiBzcGFuIHtcblx0XHRcdFx0ZmxleDogMTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuZ2ZpZWxkX2xpc3Qge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cblxuXHR0aGVhZCwgdGJvZHksIHRib2R5IHRyLCB0Zm9vdCB7XG5cdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRib3JkZXI6IG5vbmU7XG5cdH1cblx0dGJvZHkgdGQge1xuXHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0fVxuXG5cdC5naW5wdXRfY29udGFpbmVyX3RleHRhcmVhIHRleHRhcmVhIHtcblx0XHRiYWNrZ3JvdW5kOiAkd2hpdGUgIWltcG9ydGFudDtcblx0fVxuXG5cdC5nZmllbGRfY29uc2VudF9sYWJlbCB7XG5cdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHRjb2xvcjogJGRhcmtlci1ncmF5O1xuXHR9XG5cblx0dGV4dGFyZWEge1xuXHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdH1cblx0LmdmX21hcmdpbl9idG0ge1xuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdH1cbn1cblxuLnZhbGlkYXRpb25fZXJyb3IsIC52YWxpZGF0aW9uX21lc3NhZ2Uge1xuXHRjb2xvcjogJGFsZXJ0LWNvbG9yO1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4udmFsaWRhdGlvbl9tZXNzYWdlIHtcbiAgICBtYXJnaW4tdG9wOiAtMjBweDtcbn1cblxuW2FyaWEtaW52YWxpZD10cnVlXSwgLmdmaWVsZF9lcnJvciBpbnB1dCwgLmdmaWVsZF9lcnJvciBzZWxlY3Qge1xuXHRib3JkZXItYm90dG9tLWNvbG9yOiAkYWxlcnQtY29sb3I7XG5cdGNvbG9yOiAkZGFya2VyLWdyYXk7XG5cdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9lcnJvckAyeC5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQgNXB4IC8gMTdweCAxOHB4O1xuXG5cdCY6OnBsYWNlaG9sZGVyIHsgXG5cdFx0Y29sb3I6ICRhbGVydC1jb2xvcjtcblx0fVx0XG59XG5cbi5nZmllbGRfbGFiZWwge1xuICAgIGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfNjUgTWVkaXVtMTQ3NTUzMlwiLHNhbnMtc2VyaWY7XG59XG5cbi5nZmllbGRfZXJyb3Ige1xuXHQuZ2ZpZWxkX2xhYmVsLCAuZ2ZpZWxkX2xhYmVsIHNwYW4ge1xuXHRcdGNvbG9yOiAkYWxlcnQtY29sb3I7XG5cdH1cblx0LmdpbnB1dF9jb250YWluZXJfZmlsZXVwbG9hZCwgLmdpbnB1dF9yZWNhcHRjaGEge1xuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdH1cbn1cblxudGV4dGFyZWFbYXJpYS1pbnZhbGlkPXRydWVdIHtcblx0YmFja2dyb3VuZDogbm9uZTtcbn1cblxuLmdmb3JtX2NvbmZpcm1hdGlvbl93cmFwcGVyICB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuXHQuZ2Zvcm1fY29uZmlybWF0aW9uX21lc3NhZ2Uge1xuXHRcdGNvbG9yOiAjMDQzMjYzO1xuXHRcdGZvbnQtc2l6ZTogMS4yNXJlbTtcblx0fVxufVxuXG4uZ2Zvcm1fYW5jaG9yIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTE1MHB4O1xufVxuXG4uZ2Zvcm1fbWFyZ2luX3RvcCB7XG5cdG1hcmdpbi10b3A6IDIwcHg7XG59IiwiLyoqXG4gKiBCdXR0b25zIGFuZCBsaW5rc1xuICovXG5cbiAvLyBNb2JpbGUgaG92ZXIgc3RhdGVcbiBAbWl4aW4gcmlwcGxlKCRob3Zlci1jb2xvciwgJGFjdGl2ZS1jb2xvcikge1xuXHQudG91Y2ggJiB7XG4gICAgICAgICY6bm90KGlucHV0W3R5cGU9XCJzdWJtaXRcIl0pIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRob3Zlci1jb2xvciByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCB0cmFuc3BhcmVudCAxJSwgJGhvdmVyLWNvbG9yIDElKSBjZW50ZXIvMTUwMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtY29sb3I7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMHM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblx0fVxufVxuXG5hLCBidXR0b24sIGEuYnV0dG9uLCBsaS5mYXV4LWJ1dHRvbiBhIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdCYuYWN0aXZlIHtcblx0XHRAZXh0ZW5kIDpob3Zlcjtcblx0fVxuXG4gICAgJi5kb25hdGVfYnRuIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjNweDtcbiAgICB9XG59XG5cbmEge1xuXHR0ZXh0LXVuZGVybGluZS1wb3NpdGlvbjogdW5kZXI7XG5cdHRyYW5zaXRpb246IGNvbG9yIDAuMjVzO1xufVxuXG5saS5mYXV4LWJ1dHRvbiBhIHtcblx0QGV4dGVuZCAuYnV0dG9uO1xufVxuXG5idXR0b24sIGEuYnV0dG9uLCBsaS5mYXV4LWJ1dHRvbiBhLCBpbnB1dC5idXR0b24sIC5idXR0b246dmlzaXRlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblxuICAgIEBpbmNsdWRlIHJpcHBsZSgkYnV0dG9uLWJhY2tncm91bmQsIGxpZ2h0ZW4oJGJ1dHRvbi1iYWNrZ3JvdW5kLCAxMCUpKTtcbiAgICBcblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDhweDtcblx0XHRoZWlnaHQ6IDE1cHg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdHJpZ2h0OiAyNXB4O1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ljb25zL2Fycm93LWJ0bi1ibHVlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIC8gY29udGFpbjtcblxuXHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9hcnJvdy1idG4tYmx1ZS5zdmcpO1xuXHRcdFx0bWFzay1zaXplOiBjb250YWluO1xuXHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0fVxuXHR9XG5cblx0Jjpob3ZlciwgJjphY3RpdmUge1xuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pY29ucy9hcnJvdy1idG4teWVsbG93LnN2ZycpO1xuXG5cdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktb25lO1xuXHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvYXJyb3ctYnRuLXllbGxvdy5zdmcpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG4gICAgJi5wcmltYXJ5LCAmLnByaW1hcnk6dmlzaXRlZCwgJi5wcmltYXJ5OmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktb25lO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktb25lO1xuICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pY29ucy9hcnJvdy1idG4teWVsbG93LnN2ZycpO1xuXG5cdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvYXJyb3ctYnRuLXllbGxvdy5zdmcpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuICAgIH1cblxuXHQmLnNlY29uZGFyeSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdHdvO1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0QGluY2x1ZGUgcmlwcGxlKCRwcmltYXJ5LW9uZSwgbGlnaHRlbigkcHJpbWFyeS1vbmUsIDEwJSkpO1xuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ljb25zL2Fycm93LWJ0bi13aGl0ZS5zdmcnKTtcblx0XHR9XG5cblx0XHQmOmhvdmVyLCAmOmFjdGl2ZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnJyk7XG5cblx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktb25lO1xuXHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9hcnJvdy1idG4teWVsbG93LnN2Zyk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLmNsZWFyIHtcblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiAxZW07XG5cdFx0XHRib3R0b206IDEwcHg7XG5cdFx0XHRoZWlnaHQ6IDNweDtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAyZW0pO1xuXHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1vbmU7XG5cdFx0fVxuXG5cdFx0JjphY3RpdmUsICY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktdGhyZWU7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdH0gXG5cdH1cblxuXHQmLmRpc2FibGVkLCAmOmRpc2FibGVkIHtcblx0XHRiYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblxuXHRcdCY6YWN0aXZlLCAmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXHR9XG5cblx0Jjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR9XG59XG5cbmlucHV0LmJ1dHRvbiwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzcuOTg2JyBoZWlnaHQ9JzE1LjY5Nicgdmlld0JveD0nMCAwIDcuOTg2IDE1LjY5NiclM0UlM0NwYXRoIGlkPSdhcnJvdycgZGF0YS1uYW1lPSdQYXRoIDU0NjgnIGQ9J00tMTgwOTUuMzkzLDMyMTMuMTgybDQuMzc5LDUuOTQ5LTQuMzc5LDUuNTQyJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgxODA5Ny41IC0zMjExLjA4NCknIGZpbGw9J25vbmUnIHN0cm9rZT0nI3tlbmNvZGVjb2xvcigkcHJpbWFyeS1vbmUpfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnLyUzRSUzQy9zdmclM0VcIik7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoMTAwJSAtIDI1cHgpIGNlbnRlcjtcblx0YmFja2dyb3VuZC1zaXplOiA4cHggMTVweDtcblxuXHQmOmhvdmVyLCAmOmFjdGl2ZSB7XG5cdFx0Ly8gYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pY29ucy9hcnJvdy1idG4teWVsbG93LnN2ZycpO1xuXHRcdC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ljb25zL2Fycm93LWJ0bi1keW5hbWljLnN2Zz9jb2xvcj0jeyRzZWNvbmRhcnktb25lfVwiKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc3Ljk4NicgaGVpZ2h0PScxNS42OTYnIHZpZXdCb3g9JzAgMCA3Ljk4NiAxNS42OTYnJTNFJTNDcGF0aCBpZD0nYXJyb3cnIGRhdGEtbmFtZT0nUGF0aCA1NDY4JyBkPSdNLTE4MDk1LjM5MywzMjEzLjE4Mmw0LjM3OSw1Ljk0OS00LjM3OSw1LjU0MicgdHJhbnNmb3JtPSd0cmFuc2xhdGUoMTgwOTcuNSAtMzIxMS4wODQpJyBmaWxsPSdub25lJyBzdHJva2U9JyN7ZW5jb2RlY29sb3IoJHNlY29uZGFyeS1vbmUpfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnLyUzRSUzQy9zdmclM0VcIik7XG5cdH1cblxuXHQmLnNlY29uZGFyeSB7XG5cdFx0Ly8gYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pY29ucy9hcnJvdy1idG4td2hpdGUuc3ZnJyk7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNy45ODYnIGhlaWdodD0nMTUuNjk2JyB2aWV3Qm94PScwIDAgNy45ODYgMTUuNjk2JyUzRSUzQ3BhdGggaWQ9J2Fycm93JyBkYXRhLW5hbWU9J1BhdGggNTQ2OCcgZD0nTS0xODA5NS4zOTMsMzIxMy4xODJsNC4zNzksNS45NDktNC4zNzksNS41NDInIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDE4MDk3LjUgLTMyMTEuMDg0KScgZmlsbD0nbm9uZScgc3Ryb2tlPScje2VuY29kZWNvbG9yKCR3aGl0ZSl9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycvJTNFJTNDL3N2ZyUzRVwiKTtcblxuXHRcdCY6aG92ZXIsICY6YWN0aXZlIHtcblx0XHRcdC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaWNvbnMvYXJyb3ctYnRuLXllbGxvdy5zdmcnKTtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzcuOTg2JyBoZWlnaHQ9JzE1LjY5Nicgdmlld0JveD0nMCAwIDcuOTg2IDE1LjY5NiclM0UlM0NwYXRoIGlkPSdhcnJvdycgZGF0YS1uYW1lPSdQYXRoIDU0NjgnIGQ9J00tMTgwOTUuMzkzLDMyMTMuMTgybDQuMzc5LDUuOTQ5LTQuMzc5LDUuNTQyJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgxODA5Ny41IC0zMjExLjA4NCknIGZpbGw9J25vbmUnIHN0cm9rZT0nI3tlbmNvZGVjb2xvcigkc2Vjb25kYXJ5LW9uZSl9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycvJTNFJTNDL3N2ZyUzRVwiKTtcblx0XHR9XG5cdH1cblxuICAgICYuZ2Zvcm1fcHJldmlvdXNfYnV0dG9uIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc3Ljk4NicgaGVpZ2h0PScxNS42OTYnIHZpZXdCb3g9JzAgMCA3Ljk4NiAxNS42OTYnJTNFJTNDcGF0aCBpZD0nUGF0aF81NDY4JyBkYXRhLW5hbWU9J1BhdGggNTQ2OCcgZD0nTS0xODA5NS4zOTMsMzIxMy4xODJsNC4zNzksNS45NDktNC4zNzksNS41NDInIHRyYW5zZm9ybT0ndHJhbnNsYXRlKC0xODA4OS41MTQgMzIyNi43OCkgcm90YXRlKDE4MCknIGZpbGw9J25vbmUnIHN0cm9rZT0nI3tlbmNvZGVjb2xvcigkcHJpbWFyeS1vbmUpfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnLyUzRSUzQy9zdmclM0VcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoNiUpIGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMS4yNWVtIDEuNGVtIDEuMjVlbSAyLjhlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygxOSUpIGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIsICY6YWN0aXZlIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzcuOTg2JyBoZWlnaHQ9JzE1LjY5Nicgdmlld0JveD0nMCAwIDcuOTg2IDE1LjY5NiclM0UlM0NwYXRoIGlkPSdQYXRoXzU0NjgnIGRhdGEtbmFtZT0nUGF0aCA1NDY4JyBkPSdNLTE4MDk1LjM5MywzMjEzLjE4Mmw0LjM3OSw1Ljk0OS00LjM3OSw1LjU0MicgdHJhbnNmb3JtPSd0cmFuc2xhdGUoLTE4MDg5LjUxNCAzMjI2Ljc4KSByb3RhdGUoMTgwKScgZmlsbD0nbm9uZScgc3Ryb2tlPScje2VuY29kZWNvbG9yKCRzZWNvbmRhcnktb25lKX0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuXHRcdH1cbiAgICB9XG59XG5cbi8vIE9ubHkgdXNlZCBmb3IgZGVtbyB2aWV3IGluIERlc2lnbiBMaWJyYXJ5XG4uYnV0dG9uX3JvdyB7XG4gICAgLmNlbGwge1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDA7XG4gICAgfVxufVxuXG4uYnV0dG9uX19ncmlkIHtcbiAgICAuZ3JleV9fY2VsbCwgYSAuZ3JleV9fY2VsbCB7XG4gICAgICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWdyZXk7XG4gICAgICAgIC8vY29sb3I6ICRzZWNvbmRhcnktZWlnaHQ7XG4gICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIGEuZ3JleV9faW5uZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICY6aG92ZXIsICY6YWN0aXZlIHtcbiAgICAgICAgICAgIC5ncmV5X19jZWxsIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC43cztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS10d287XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuICAgICAgICAgICAgICAgIGgzLCAuaDUsIHAsIGEsIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJ1dHRvbl9fc2ltcGxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWdyZXk7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcblxuICAgICAgICBoNSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA1NXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1vbmU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FwdGlvbi1ncmV5O1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuXG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS10aHJlZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuZGV0YWlscyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA3MHB4O1xuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogdW5zZXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktdHdvO1xuICAgICAgICAgICAgICAgIC8vbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgYm90dG9tOiB1bnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIsICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG4uaGVyb19fYnV0dG9uX193cmFwIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICB9XG59XG5cbi5idXR0b25fX2Z1bGx3aWR0aCB7XG5cbiAgICAuYnV0dG9uX19zaW1wbGUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNlY29uZGFyeS1vbmU7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDA7XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG8gMCBhdXRvIGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idXR0b25fX2hhbGZoYWxmIHtcbiAgICAuYnV0dG9uX19zaW1wbGUge1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgIGEsIHNwYW4ubm8tbGluayB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIC8vIGhlaWdodDogLXdlYmtpdC1maWxsLWF2YWlsYWJsZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFiLWNvbG91cjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XG5cblx0XHRcdC5tZWRpYSAmIHtcblx0XHRcdFx0YmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0XHRwYWRkaW5nOiAwIDAgMjBweDtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG5cdFx0XHRcdCY6aG92ZXIsICY6YWN0aXZlIHtcblx0XHRcdFx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cbiAgICAgICAgICAgICY6aG92ZXIsICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcblxuXHRcdFx0XHQuYXJyb3ctYnRuIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYnRuYXJyb3ctaG92ZXIuc3ZnKTtcblxuXHRcdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktb25lO1xuXHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2J0bmFycm93LWhvdmVyLnN2Zyk7XG5cdFx0XHRcdFx0XHRtYXNrLXNpemU6IDE1cHggMTVweDtcblx0XHRcdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDA7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYXJyb3ctYnRuIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDEwcHggYXV0byAwO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2J0bmFycm93LnN2Zyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2J0bmFycm93LnN2Zyk7XG5cdFx0XHRcdFx0bWFzay1zaXplOiAxNXB4IDE1cHg7XG5cdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0fVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZG93bmxvYWQtYnRuIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG8gMTBweCBhdXRvIDA7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bmxvYWQtYnRuQDJ4LnBuZyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd25sb2FkLWljb24uc3ZnKTtcblx0XHRcdFx0XHRtYXNrLXNpemU6IDE1cHggMTVweDtcblx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHR9XG4gICAgICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIHNwYW4ubm8tbGluayB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktb25lO1xuICAgICAgICAgICAgJjpob3ZlciwgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5idXR0b25fX3NpbXBsZV9lbGVjdGlvbiB7XG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmVsZWN0aW9uLWJ0biB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDEwcHggYXV0byAwO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2J0bmVsZWN0aW9uLnN2Zyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxufVxuXG4vL092ZXJyaWRlXG4uYnV0dG9uX19jYXJkIHtcbiAgICBib3JkZXItdG9wOiAxNHB4IHNvbGlkICRwcmltYXJ5LXR3bztcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlcjtcbiAgICBwYWRkaW5nOiAxMHB4IDBweDsgXG4gICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgaDU6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYXJyb3ctbmV4dEAyeC5wbmcpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA5cHggMTNweDtcbiAgICAgICAgICAgIHdpZHRoOiA5cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5icmVhZGNydW1iLXdyYXAgKyAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHRvcDogMTM1cHg7XG4gICAgfVxufVxuXG4uZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50IHtcbiAgICBtaW4td2lkdGg6IDIyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggNXB4IDVweDtcbiAgICBtYXJnaW4tbGVmdDogMy42cmVtO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDEyOHB4O1xuICAgIHotaW5kZXg6IDk5NjtcbiAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAmLmRyb3Bkb3duX190YWJsZW9mY29udGVudF9tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgLy8gbWFyZ2luLWxlZnQ6IDJyZW07XG4gICAgICAgIC8vIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAvLyB0b3A6IDk1cHg7XG4gICAgICAgIC8vIG1heC13aWR0aDogODMuNzVyZW07XG4gICAgICAgIC8vIHdpZHRoOiAtd2Via2l0LWZpbGwtYXZhaWxhYmxlO1xuICAgICAgICAvLyAuZHJvcGRvd24tY29udGVudCB7XG4gICAgICAgIC8vICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLy8gfVxuICAgICAgICAmLmRyb3Bkb3duX190YWJsZW9mY29udGVudF9tb2JpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogY2FsYygxMDAlIC0gMS41cmVtKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kcm9wZG93bi1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgLy8gICAgIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICAgIC8vICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gICAgLy8gfVxuICAgIHAge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cteWVsbG93LnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIvY29udGFpbjtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuXG5cdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktb25lO1xuXHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy15ZWxsb3cuc3ZnKTtcblx0XHRcdFx0bWFzay1zaXplOiBjb250YWluO1xuXHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRtYXNrLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdFx0fVxuICAgICAgICB9XG4gICAgfVxuICAgIC5kcm9wZG93bi1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgbWluLXdpZHRoOiAyMjBweDtcblx0XHRtYXgtaGVpZ2h0OiA1MHZoO1xuXHRcdG92ZXJmbG93OiBzY3JvbGw7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCA4cHggMTZweCAwcHggcmdiYSgwLDAsMCwwLjIpO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cdFx0Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdFx0Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwcHggMTBweCAyMHB4OztcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgcmdiYSgyMjgsMjI4LDIyOCwwLjIpOztcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTlweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3RiY193aGl0ZS5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyL2NvbnRhaW47XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzOyAgICAgIFxuXG5cdFx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL3RiY193aGl0ZS5zdmcpO1xuXHRcdFx0XHRcdFx0bWFzay1zaXplOiBjb250YWluO1xuXHRcdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0XHRcdFx0fVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSAge1xuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvdGJjX3llbGxvdy5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyL2NvbnRhaW47XG5cblx0XHRcdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy90YmNfeWVsbG93LnN2Zyk7XG5cdFx0XHRcdFx0XHR9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5kcm9wZG93bi1jb250ZW50X2Nsb3NlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICY6aG92ZXIsICY6YWN0aXZlICB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHsgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgICAgICAgICAgICAuZHJvcGRvd24tY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnRvY19zaG93IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgICAgJi5kcm9wZG93bi1jb250ZW50X2Nsb3NlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50X3JvdGF0ZSB7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgJjphZnRlciB7ICAgICAgXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIE1pY3Jvc2l0ZSBidXR0b24gb3ZlcnJpZGVzXG5ib2R5Lm1pY3Jvc2l0ZSB7XG4gICAgLy8gRGFyayBicmFuZCBjb2xvdXJzXG4gICAgJi5kYXJrLWJyYW5kLWNvbG91cnMge1xuICAgICAgICAuYnV0dG9uLnByaW1hcnkge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHNlY29uZGFyeS1vbmU7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktb25lO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRwcmltYXJ5LW9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uLnNlY29uZGFyeSB7XG4gICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRzZWNvbmRhcnktb25lO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idXR0b24udGVydGlhcnkge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gTGlnaHQgYnJhbmQgY29sb3Vyc1xuICAgICYubGlnaHQtYnJhbmQtY29sb3VycyB7XG4gICAgICAgIC5idXR0b24ucHJpbWFyeSB7XG4gICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS10d287XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkcHJpbWFyeS1vbmU7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkcHJpbWFyeS10d287XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbi5zZWNvbmRhcnkge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS10d287XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uLnRlcnRpYXJ5IHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiaW1nIHtcblx0Ji5pbWFnZSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0fVxuXG5cdEBtZWRpYSBvbmx5IHByaW50IHtcblx0XHRwYWdlLWJyZWFrLWJlZm9yZTogYXV0byAhaW1wb3J0YW50O1xuXHRcdHBhZ2UtYnJlYWstYWZ0ZXI6IGF1dG8gIWltcG9ydGFudDtcblx0XHRwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQgIWltcG9ydGFudDtcblx0fVxuXG5cdCYuYWxpZ25sZWZ0IHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHRtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cdH1cblxuXHQmLmFsaWducmlnaHQge1xuXHRcdGZsb2F0OiByaWdodDtcblx0XHRtYXJnaW4tbGVmdDogMjBweDtcblx0fVxuXG5cdCYuYWxpZ25jZW50ZXIge1xuXHRcdG1hcmdpbjogYXV0bztcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG5cblx0Ji5hbGlnbmNlbnRlciwgJi5hbGlnbnJpZ2h0LCAmLmFsaWdubGVmdCB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG5cdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRtYXJnaW46IDIwcHggYXV0bztcblx0XHR9XG5cdH1cblxuXHQuZmFjdHNoZWV0X2Jhbm5lcl9jb250YWluZXIgJiB7XG5cdFx0aGVpZ2h0OiBjbGFtcCgzNTBweCw0MDBweCw1MDBweCk7XG5cdFx0d2lkdGg6IGF1dG87XG5cdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHR9XG59XG5cbmltZy5hcnRpY2xlX2ltYWdlIHtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogYXV0bztcbn1cblxuLmNhcHRpb24td3JhcCB7XG5cdHBhZGRpbmctdG9wOiAxMHB4O1xuXHRwYWRkaW5nLWJvdHRvbTogMHB4O1xuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdHBhZGRpbmctdG9wOiAyMHB4O1xuXHRcdHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXHR9XG59XG4iLCJ1bC5wYWdlLW51bWJlcnMge1xuXHRAZXh0ZW5kIC5wYWdpbmF0aW9uO1xuXHRkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGZsZXgtd3JhcDogd3JhcDtcblxuXHRhLCBsaS5jdXJyZW50LCBsaS5lbGxpcHNpcyB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdH1cblx0fVxuXHRsaSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdGhlaWdodDogMzFweDtcblxuXHRcdC5jdXJyZW50IHtcblx0XHRcdGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkcHJpbWFyeS10d287XG5cdFx0fVxuXHR9XG5cdC5wcmV2LCAubmV4dCB7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiAxMXB4IDE3cHg7XG5cdFx0XHR3aWR0aDogMTFweDtcblx0XHRcdGhlaWdodDogMTdweDtcblxuXHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRtYXNrLXNpemU6IGNvbnRhaW47XG5cdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnByZXY6YWZ0ZXJ7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ljb25zL3ByZXYtYnRuLnN2Zyk7XG5cblx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvcHJldi1idG4uc3ZnKTtcblx0XHR9XG5cdH1cblx0Lm5leHQ6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaWNvbnMvbmV4dC1idG4uc3ZnKTtcblxuXHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9uZXh0LWJ0bi5zdmcpO1xuXHRcdH1cblx0fVxufVxuIiwiLnNlYXJjaF93cmFwcGVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWdyZXkgIWltcG9ydGFudDtcblx0LnNlYXJjaCB7XG5cdFx0aW5wdXQsIGlucHV0OmZvY3VzIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0XHRjb2xvcjogJGNhcHRpb24tZ3JleTtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cblx0XHR9XG5cdFx0aW5wdXQsIHNlbGVjdCwgOjpwbGFjZWhvbGRlciB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcblx0XHRcdGNvbG9yOiAkY2FwdGlvbi1ncmV5O1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHR9XG5cdFx0ZGl2LnNlYXJjaF9faW5wdXQge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvc2VhcmNoLWljb24tZ3JleS5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIC8gY29udGFpbjtcblx0XHRcdFx0aGVpZ2h0OiAyMHB4O1xuXHRcdFx0XHR3aWR0aDogMjBweDtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDEwcHg7XG5cdFx0XHRcdHJpZ2h0OiAxMHB4O1xuXHRcdFx0fVxuXHRcblx0XHR9XG5cdFx0LnNlYXJjaF9fZmlsdGVycyB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHR9XG5cdFx0XHRzZWxlY3Qge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDE1cHggOHB4O1xuXG5cdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTtcblx0XHRcdFx0XHRtYXNrLXNpemU6IDE1cHggOHB4O1xuXHRcdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdGxhYmVsIHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRcdFx0ZmxleDogMTtcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcblx0XHRcdFx0XHRcdCYubGFzdCB7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuI215LWN1c3RvbS1zZWFyY2hmb3JtIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRpbnB1dFt0eXBlPXRleHRdIHtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0fVxuXHRzZWxlY3Qge1xuXHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHRcdHdpZHRoOiA0OSU7XG5cdFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdH1cblx0c2VsZWN0Om50aC1jaGlsZChvZGQpe1xuXHRcdGZsb2F0OiByaWdodDtcblx0fVxuXHRpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRyaWdodDogMDtcblx0XHRoZWlnaHQ6IDQwcHg7XG5cdFx0d2lkdGg6IDQwcHg7XG5cdFx0dGV4dC1pbmRlbnQ6IC05OTk5OXB4O1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdHotaW5kZXg6IDk5OTk5OTk5OTk5OTk7XG5cdFx0YmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3NlYXJjaC1pY29uLXJlZC5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuXHRcdHRvcDogMHB4O1xuXHR9XG59XG5cbi5zZWFyY2gtZm9ybSB7XG5cdGlucHV0W3R5cGU9c2VhcmNoXSB7XG5cdFx0JjphY3RpdmUsICY6Zm9jdXMge1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0Ym94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNDRTAwM0E7XG5cdFx0fVxuXHR9XG5cdG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLnNlYXJjaF9yZXN1bHRzIHtcblx0LnJlc3VsdHNfdG90YWwge1xuXHRcdC8vIHBhZGRpbmctbGVmdDogMjBweDtcblx0XHQvLyBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdG1hcmdpbi10b3A6IDUwcHg7XG5cdFx0fVxuXHR9XG5cdC5yZXN1bHRzX2luZm8ge1xuXHRcdC8vIHBhZGRpbmctbGVmdDogNDBweDtcblx0XHQvLyBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuXHRcdC8vIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuXHRcdC8vIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkbGlnaHQtZ3JheTtcblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHR9XG5cdC5waW5rX3RleHQge1xuXHRcdGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdFx0Zm9udC1mYW1pbHk6XCJBdmVuaXIgTFQgVzAxXzg1IEhlYXZ5MTQ3NTU0NFwiO1xuXHR9XG5cdHVsIHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7XG5cdFx0bGkge1xuXHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdGJvcmRlci1sZWZ0OiAzcHggc29saWQgJHByaW1hcnktb25lO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxcmVtO1xuXHRcdFxuXHRcdFx0aDIge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA2MHB4O1xuXHRcdFx0fVxuXG5cdFx0XHRoNSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDhweDtcblx0XHRcdH1cblx0XHRcdHAge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRcdFx0fVxuXHRcdFx0YSB7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA4MDA7XG5cdFx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxM3B4O1xuXHRcdFx0XHRcdHdpZHRoOiA5cHg7XG5cdFx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYXJyb3ctYnRuLWJsdWUuc3ZnKSBuby1yZXBlYXQ7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiA5cHggMTNweDtcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuXHRcdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9hcnJvdy1idG4tYmx1ZS5zdmcpO1xuXHRcdFx0XHRcdFx0bWFzay1zaXplOiA5cHggMTNweDtcblx0XHRcdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuI3NlYXJjaGZvcm0uc2VhcmNoX2Rlc2t0b3Age1xuXHRkaXNwbGF5OiBmbGV4O1xuXG5cdGlucHV0W3R5cGU9J3RleHQnXSB7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG5cblx0I3NlYXJjaC1sYW5nIHtcblx0XHRib3JkZXItcmFkaXVzOiAyM3B4O1xuXHRcdHBhZGRpbmc6IDAuN3JlbSAycmVtIDAuN3JlbSAxcmVtO1xuXHRcdG1hcmdpbjogMCAwIDAgMjBweDtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAxNXB4KSBjZW50ZXI7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cblx0XHRpbnB1dFt0eXBlPSd0ZXh0J10ge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHR9XG5cblx0XHQjc2VhcmNoLWxhbmcge1xuXHRcdFx0bWFyZ2luOiAwIDAgMjBweCAwO1xuXHRcdFx0d2lkdGg6IGZpdC1jb250ZW50O1xuXHRcdH1cblx0fVxufSIsIi8qKlxuICogTGlzdHNcbiAqL1xuXG4gc2VjdGlvbiB7XG4gICAgLmNlbGwge1xuICAgICAgICB1bDpub3QoLnBhZ2luYXRpb24pOm5vdCgucGFnZS1udW1iZXJzKTpub3QoLnRhYnMpOm5vdCguYWNjb3JkaW9uKTpub3QoLnNvY2lhbC0tbGlzdCk6bm90KC5zaWRlYmFyX2xpc3QpOm5vdCguYnJlYWRjcnVtYi0tbmF2aWdhdGlvbik6bm90KC5kYXNoZWQpOm5vdCguZ2Zvcm1fZmllbGRzKXtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IC8qIFJlbW92ZSBkZWZhdWx0IGJ1bGxldHMgKi9cbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIC8vZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXDIwMjJcIjsgIC8qIEFkZCBjb250ZW50OiBcXDIwMjIgaXMgdGhlIENTUyBDb2RlL3VuaWNvZGUgZm9yIGEgYnVsbGV0ICovXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS10d287IC8qIENoYW5nZSB0aGUgY29sb3IgKi9cbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IC8qIElmIHlvdSB3YW50IGl0IHRvIGJlIGJvbGQgKi9cbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiBOZWVkZWQgdG8gYWRkIHNwYWNlIGJldHdlZW4gdGhlIGJ1bGxldCBhbmQgdGhlIHRleHQgKi9cbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEuNWVtOyAvKiBBbHNvIG5lZWRlZCBmb3Igc3BhY2UgKHR3ZWFrIGlmIG5lZWRlZCkgKi9cbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjVlbTsgLyogQWxzbyBuZWVkZWQgZm9yIHNwYWNlICh0d2VhayBpZiBuZWVkZWQpICovXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHVsLmFjY29yZGlvbiB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZSAgLyogQWRkIGNvbnRlbnQ6IFxcMjAyMiBpcyB0aGUgQ1NTIENvZGUvdW5pY29kZSBmb3IgYSBidWxsZXQgKi9cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cdC5mcmVlX3RleHQge1xuXHRcdHVsLCBvbCB7XG5cdFx0XHQvLyBtYXJnaW4tYm90dG9tOiA1MHB4O1xuXHRcdH1cblxuXHRcdGJsb2NrcXVvdGUge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0bWFyZ2luOiA0MHB4IDA7XG5cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR3aWR0aDogMTJweDtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDZweDtcblx0XHRcdH1cblxuXHRcdFx0cCB7XG5cdFx0XHRcdEBleHRlbmQgaDU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG4gfVxuIiwiLyoqXG4gKiBUYWJzXG4gKi9cblxuLnRhYnMge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyOiBub25lO1xuXG5cdGxpLnRhYnMtdGl0bGUge1xuXHRcdG1hcmdpbi1yaWdodDogNHB4O1xuXHRcdCY+YSB7XG5cdFx0XHRjb2xvcjogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGFiLWNvbG91cjtcblx0XHR9XG5cdFx0XG5cdFx0Jj5hW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0ge1xuXHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktdHdvO1xuXHRcdFx0Y29sb3I6ICRwcmltYXJ5LXRocmVlO1xuXHRcdH1cblxuXHRcdGE6Zm9jdXMge1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRcdG91dGxpbmU6IG5vbmU7XG4gIFx0XHRcdGJveC1zaGFkb3c6IDAgMCAycHggJHByaW1hcnktdGhyZWU7XG5cdFx0fVxuXHR9XG59XG5cbi50YWJzLWNvbnRlbnQge1xuXHRib3JkZXI6IG5vbmU7XG5cdC50YWJzLXBhbmVsIHtcblx0XHRwYWRkaW5nOiAoJGdsb2JhbC1wYWRkaW5nICogMikgMDtcblx0XHRtYXJnaW46IDA7XG5cdH1cbn1cbiIsIi8qKlxuKiBUeXBvZ3JhcGh5XG4qL1xuXG5AZm9udC1mYWNle1xuXHRmb250LWZhbWlseTpcIkF2ZW5pciBMVCBXMDFfNTUgUm9tYW4xNDc1NTIwXCI7XG5cdHNyYzp1cmwoXCIuLi9mb250cy8xNDc1NTIwL2IyOTBlNzc1LWUwZjktNDk4MC05MTRiLWE0YzMyYTVlM2UzNi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSx1cmwoXCIuLi9mb250cy8xNDc1NTIwLzRiOTc4ZjcyLWJiNDgtNDZjMy05MDlhLTJhOGNkMmY4ODE5Yy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2V7XG4gICBmb250LWZhbWlseTpcIkF2ZW5pciBMVCBXMDFfNjUgTWVkaXVtMTQ3NTUzMlwiO1xuICAgc3JjOnVybChcIi4uL2ZvbnRzLzE0NzU1MzIvMTdiOTBlZjUtYjYzZi00NTdiLWE5ODEtNTAzYmI3YWZlM2MwLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLHVybChcIi4uL2ZvbnRzLzE0NzU1MzIvYzlhZWVhYmQtZGQ2NS00OTFkLWI0YmUtM2UwZGI5YWU0N2EwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cblxuQGZvbnQtZmFjZXtcbiAgIGZvbnQtZmFtaWx5OlwiQXZlbmlyIExUIFcwMV84NSBIZWF2eTE0NzU1NDRcIjtcbiAgIHNyYzp1cmwoXCIuLi9mb250cy8xNDc1NTQ0L2Q1MTNlMTVlLThmMzUtNDEyOS1hZDA1LTQ4MTgxNWU1MjYyNS53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSx1cmwoXCIuLi9mb250cy8xNDc1NTQ0LzYxYmQzNjJlLTcxNjItNDZiZC1iNjdlLTI4ZjM2NmM0YWZiZS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2V7XG4gICBmb250LWZhbWlseTpcIkF2ZW5pciBMVCBXMDFfOTUgQmxhY2sxNDc1NTU2XCI7XG4gICBzcmM6dXJsKFwiLi4vZm9udHMvMTQ3NTU1Ni9jNzhlYjdhZi1hMWM4LTQ4OTItOTc0Yi01MjM3OTY0NmZlZjQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksdXJsKFwiLi5mb250cy8xNDc1NTU2Lzc1YjM2YzU4LTJhMDItNDA1Ny1hNTM3LTA5YWYwODMyYWU0Ni53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbmJvZHkge1xuICAgZm9udC1zeW50aGVzaXM6IG5vbmUgIWltcG9ydGFudDtcbiAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLnN1YmhlYWRpbmcge1xuXHRmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzg1IEhlYXZ5MTQ3NTU0NFwiO1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblx0bGluZS1oZWlnaHQ6IDEuNDU7XG5cdGxldHRlci1zcGFjaW5nOiAwLjI3NWVtO1xuXHRtYXJnaW4tYm90dG9tOiA4cHg7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGNvbG9yOiAkcHJpbWFyeS10aHJlZTtcbn1cblxuLnN0YW5kYXJkLWxpbmsge1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRib3JkZXItYm90dG9tOiAzcHggc29saWQgJHNlY29uZGFyeS1vbmU7XG5cdHRyYW5zaXRpb246IGFsbCAwLjNzO1xuXHRjb2xvcjogJHByaW1hcnktb25lO1xuXHQmOmhvdmVyIHtcblx0XHRib3JkZXItYm90dG9tOiAzcHggc29saWQgJGVycy1henVlLWJsdWU7XG5cdFx0Y29sb3I6ICRwcmltYXJ5LW9uZTtcblx0fVxufVxuXG5wIHtcblx0Ji5sYXJnZSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMCk7XG5cdFx0bWFyZ2luLWJvdHRvbTogMS4yNWVtO1xuXHR9XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xufVxuIiwiaHRtbCB7IG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuKiBodG1sIGJvZHkgeyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuJGhlYWRlci1oZWlnaHQ6IDE4NHB4O1xuJGhlYWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcblxuLy9TRVQgVEhFIEhFQURFUiBJQ09OIFBST1BFUlRJRVNcbiRoZWFkZXItaWNvbi1iYWNrZ3JvdW5kOiAnLi4vaWNvbnMvbG9nby5wbmcnO1xuJGhlYWRlci1pY29uLXdpZHRoOiAzMXB4O1xuJGhlYWRlci1pY29uLWhlaWdodDogMzFweDtcbiRoZWFkZXItaWNvbi1tYXJnaW46IDVweCAxNnB4IDVweCAwO1xuXG4vKipcblx0U2l0ZSBIZWFkZXIgXG4qL1xuLnNpdGUtaGVhZGVyIHtcdFx0XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHR3aWR0aDogMTAwJTtcblxuXHQ+IC5ncmlkLWNvbnRhaW5lciB7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHR9XG5cblx0LmhlYWRlci13cmFwIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRtaW4taGVpZ2h0OiA1NXB4O1xuXHR9XG5cblx0YSB7XG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0fVxuXG5cdC5oYW1idXJnZXIgeyBcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAxMHB4O1xuXHRcdHJpZ2h0OjE2cHg7XG5cdFx0LmhhbWJ1cmdlci1ib3gge1xuXHRcdFx0aGVpZ2h0OiAxMHB4O1xuXHRcdH1cblxuXHRcdC5oYW1iX2Nsb3NlIHtcblx0XHRcdGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuM3M7XG5cdFx0fVxuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdC8vIGNvbnRlbnQ6IFwiTWVudVwiO1xuXHRcdFx0Ly8gZm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdFx0Ly8gZm9udC1zaXplOiAxZW07XG5cdFx0XHQvLyBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHRcdFx0Ly8gcG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0Ly8gdG9wOi0ycHg7XG5cdFx0fVxuXG5cdFx0Ji5pcy1hY3RpdmU6OmJlZm9yZSB7XG5cdFx0XHQvLyBjb250ZW50OiBcIkNsb3NlXCI7XG5cdFx0XHQvLyBmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0XHQvLyBmb250LXNpemU6IDFlbTtcblx0XHRcdC8vIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cdFx0XHQvLyBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHQvLyB0b3A6LTJweDtcblx0XHR9XG5cblx0XHQmLmlzLWFjdGl2ZSB7XG5cdFx0XHQuaGFtYl9jbG9zZSB7XG5cdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmhhbWJ1cmdlci1pbm5lciwgLmhhbWJ1cmdlci1pbm5lcjphZnRlciwgLmhhbWJ1cmdlci1pbm5lcjpiZWZvcmUsIC5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6YWZ0ZXIsIC5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6YmVmb3JlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdH1cblx0XG5cdC5pY29uIHsgXG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6ICRoZWFkZXItaWNvbi13aWR0aDtcblx0XHRoZWlnaHQ6ICRoZWFkZXItaWNvbi1oZWlnaHQ7XG5cdFx0Ly8gYmFja2dyb3VuZDogdXJsKCRoZWFkZXItaWNvbi1iYWNrZ3JvdW5kKSBuby1yZXBlYXQgY2VudGVyIGxlZnQgLyBjb250YWluO1x0XHRcblxuXHRcdGltZyB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdG9iamVjdC1maXQ6IGNvbnRhaW47XG5cdFx0XHRvYmplY3QtcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pY29ucy9sb2dvLWZ1bGwucG5nKTtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiA0NHB4O1xuXHRcdFx0bWFyZ2luOiAkaGVhZGVyLWljb24tbWFyZ2luO1xuXHRcdH1cblxuXHRcdHNwYW4ge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlOyBcblx0XHRcdGxlZnQ6IC05OTk5OXB4O1xuXHRcdH1cblxuXHRcdCYuaWNvbi1zbWFsbCB7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0XHQvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaWNvbnMvbG9nby5wbmcpO1xuXHRcdFx0dHJhbnNpdGlvbjogd2lkdGggMC4yNXMsIGhlaWdodCAwLjI1cztcblx0XHRcdHdpZHRoOiAzMHB4O1xuXHRcdFx0aGVpZ2h0OiAzMHB4O1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiA1MCU7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcblx0XHRcdHdpZHRoOiA0MHB4O1xuXHRcdH1cblx0fVxuXG5cdC5zZWFyY2hfX3dyYXBwZXIge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHBhZGRpbmctbGVmdDogMjRweDtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0d2lkdGg6IDg1JTtcblx0XHRcdHBhZGRpbmctbGVmdDogMTBweDtcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdH1cblxuXHRcdGZvcm0ge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdH1cblx0XHRpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG5cdFx0XHRtYXJnaW46IDBweDtcblx0XHRcdHBhZGRpbmc6IDRweCAyMHB4O1xuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlcjtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDM1cHg7XG5cdFx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdFx0Zm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV81NSBSb21hbjE0NzU1MjBcIjtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodGVzdC1ncmF5O1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdHBhZGRpbmc6IDI0cHggMjBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubWVudSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHR3aWR0aDogMTAwJTtcdFx0XHRcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHRcdFx0XG5cdFx0bGkge1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHQvLyBwYWRkaW5nOiAxNnB4O1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1x0XG5cdFx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMHB4O1xuXHRcdFx0XHR9XG5cdFxuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0Ly8gQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XHRcblx0XHRcdC8vIFx0JjpiZWZvcmUge1xuXHRcdFx0Ly8gXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHQvLyBcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ljb25zL21vYmlsZV9tZW51X2Fycm93QDJ4LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgLyBjb250YWluO1xuXHRcdFx0Ly8gXHRcdHdpZHRoOiAxMHB4O1xuXHRcdFx0Ly8gXHRcdGhlaWdodDogMTFweDtcblx0XHRcdC8vIFx0XHRyaWdodDogMTBweDtcblx0XHRcdC8vIFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHQvLyBcdH1cblx0XHRcdC8vIH1cblxuXHRcdFx0Jjpub3QoLmZhdXgtYnV0dG9uKSB7XG5cdFx0XHRcdGEsIGg2IHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRwYWRkaW5nOiAxNnB4IDAgNXB4O1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRcdH1cblx0XHRcdFx0YSB7XG5cblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkcHJpbWFyeS10d287XG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmLnNlYXJjaC0tbGluayB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMjBweDtcblx0XHRcdFx0XHRcdGNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3NlYXJjaC1pY29uLnN2Zykgbm8tcmVwZWF0IGNlbnRlciByaWdodDtcblx0XHRcdFx0XHRcdHRleHQtaW5kZW50OiAtOTk5OTlweDtcblx0XHRcdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCYuc2VjdGlvbi1sYW5kaW5nIHtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDBweCAwcHggNXB4IDBweDtcblx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLnNlY29uZGFyeSB7XG5cdFx0XHRtYXJnaW46IDEwcHggMCAxN3B4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHRcdFx0PiBsaSB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0cGFkZGluZzogMCAyMXB4O1xuXG5cdFx0XHRcdCY6bnRoLWNoaWxkKC1uKzIpIHtcblx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYm9yZGVyO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6bnRoLWxhc3QtY2hpbGQoMikge1xuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDBweDtcblx0XHRcdFx0XHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOm5vdCguZmF1eC1idXR0b24pIHtcblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5sYW5ndWFnZXMge1xuXHRcdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHRcdFx0PiBhIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZ2xvYmUuc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlciAvIGNvbnRhaW47XG5cdFx0XHRcdFx0XHR0ZXh0LWluZGVudDogLTk5OTlweDtcblx0XHRcdFx0XHRcdHdpZHRoOiA1MHB4O1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxNnB4O1xuXG5cdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOiA4cHg7XG5cdFx0XHRcdFx0XHRcdGhlaWdodDogNXB4O1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIC8gY29udGFpbjtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmOmhvdmVyLCAmOmZvY3VzLCAmOmZvY3VzLXdpdGhpbiB7XG5cdFx0XHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdHRvcDogMTAwJTtcblx0XHRcdFx0XHRcdFx0cmlnaHQ6IC04MHB4O1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogNzV2dztcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiAyMDBweDtcblx0XHRcdFx0XHRcdFx0ei1pbmRleDogOTk4O1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQjbGFuZ3VhZ2UtbWVudSB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdCNsYW5ndWFnZS1tZW51IHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdFx0XHR0b3A6ICgkaGVhZGVyLWhlaWdodCAtIDQ4cHgpO1xuXHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdFx0ei1pbmRleDogOTk5O1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdFx0XHRwYWRkaW5nOiAyMHB4IDA7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogZGlzcGxheSAwIDJzO1xuXG5cdFx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRsaWdodC1ncmF5O1xuXHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDEwcHg7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdHVsIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRcdFx0XHRtYXJnaW46IDAgMCAxMHB4O1xuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOiAzMyU7XG5cdFx0XHRcdFx0XHRcdGZsZXg6IDAgMCBhdXRvO1xuXHRcdFx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cblx0XHRcdFx0XHRcdFx0LmxhYmVsIHtcblx0XHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRsaWdodGVyLWdyYXk7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDQ2cHg7XG5cdFx0XHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdFx0XHRcdFx0d2lkdGg6IGF1dG87XG5cblx0XHRcdFx0XHRcdCZbdGFyZ2V0PVwiX2JsYW5rXCJdIHtcblx0XHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAxMnB4O1xuXHRcdFx0XHRcdFx0XHRcdGhlaWdodDogMTJweDtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogNnB4O1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMnB4O1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaWNvbnMvbmV3LXdpbmRvdy1ibHVlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIC8gY29udGFpbjtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCY6aG92ZXIsICY6Zm9jdXMsICY6Zm9jdXMtd2l0aGluIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYuZmF1eC1idXR0b24gYSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiByZW0tY2FsYyg0NCk7XG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogcmVtLWNhbGMoNDQpO1xuXG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRjb250ZW50OiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYuc2VhcmNoLWl0ZW0ge1xuXHRcdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cdFx0fVxuXHRcdCYuaGlkZS1mb3ItbGFyZ2Uge1xuXHRcdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICRmb290ZXItYnJlYWs7XG5cdFx0fVxuXHRcdCYuZHJvcGRvd24ge1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0bWFyZ2luLXRvcDogMTJweDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDZweDtcblxuXHRcdFx0Ly8gYWxpZ24gdG8gdGhlIGxlZnQgaWYgMCwxLDIsMyBpdGVtcyBpbiBsaXN0XG5cdFx0XHQmLml0ZW1zLTIsICYuaXRlbXMtMyB7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRcdFx0Y29sdW1uLWdhcDogNDBweDtcblx0XHRcdH1cblxuXHRcdFx0Ji5uYXZfY2hpbGQge1xuXHRcdFx0XHRsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCwgbGkge1xuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTVweCAxMXB4O1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogMTVweDtcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiAxMXB4O1xuXHRcdFx0XHRcdFx0XHR0b3A6IDIwcHg7XG5cdFx0XHRcdFx0XHRcdHJpZ2h0OiAtMjVweDtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXG5cdFx0XHRcdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTtcblx0XHRcdFx0XHRcdFx0XHRtYXNrLXNpemU6IDE1cHggMTFweDtcblx0XHRcdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogJHByaW1hcnktdHdvO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFxuXHRcdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy15ZWxsb3cuc3ZnKTtcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTFweDtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTVweDtcblx0XHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDExcHg7XG5cblx0XHRcdFx0XHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0XHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LXllbGxvdy5zdmcpO1xuXHRcdFx0XHRcdFx0XHRcdFx0bWFzay1zaXplOiAxNXB4IDExcHg7XG5cdFx0XHRcdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuaXMtZHJvcGRvd24tc3VibWVudSB7XG5cdFx0XHRcdFx0XHRtYXJnaW46IDBweDtcblx0XHRcdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRcdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDEwcHggMjVweDtcblx0XHRcdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4zcztcblx0XHRcdFx0XHRcdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdFx0XHRjb250ZW50OiBub25lO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdGxpOm5vdCguaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQpIHtcblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogJHByaW1hcnktdHdvO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b20tY29sb3I6ICRzZWNvbmRhcnktb25lO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0gXG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0Lm1lbnUge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1x0XHRcblx0XHRcdGxpIHtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8qKlxuXHRQYW5lbCAmJiBcblx0Rml4ZWQgUG9zaXRpb24gbmF2aWdhdGlvblxuKi9cbmJvZHkge1xuXHQmLnBhbmVsLW9wZW4geyBcdFx0XG5cdFx0XG5cdFx0dHJhbnNpdGlvbjogYWxsIDFzIGJvdW5jZTtcblx0XHRcblx0XHQuc2l0ZS1oZWFkZXIgeyBcblx0XHRcdGhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG5cdFx0XHRcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1x0XHRcdFxuXHRcdFx0XHRoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdFx0bWF4LWhlaWdodDogMTAwdmg7XHRcdFx0XHRcblx0XHRcdFx0Lm1lbnUge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdGFiLWNvbG91cjtcblx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0bGk6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuZHJvcGRvd24tcGFuZSB7XG5cdFx0XHRcdFx0XHR1bCB7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQjbWVnYV9fbWVudV9fd3JhcHBlciB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdFx0XHR0b3A6IDU1cHg7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdHBhZGRpbmc6IDAgJGdsb2JhbC1wYWRkaW5nO1xuXHRcdFx0XHRoZWlnaHQ6IGNhbGMoMTAwdmggLSA1NXB4KTtcblxuXHRcdFx0XHQuZHJvcGRvd24tcGFuZSB7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdHRvcDogMTBweCAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5tZW51LnNlY29uZGFyeSB7XG5cdFx0XHRcdGRpc3BsYXk6aW5saW5lLWZsZXg7XG5cdFx0XHRcdGJvcmRlci10b3A6IG5vbmU7XG5cdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IG5vbmU7XG5cdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRcdFx0XHR3aWR0aDogNDAlO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGxpLmZhdXgtYnV0dG9uIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRwYWRkaW5nOiAwcHg7XG5cdFx0XHRcdFx0d2lkdGg6IDYwJTtcblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRsaS5sYW5ndWFnZXMgPiBhIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZ2xvYmUuc3ZnKSBuby1yZXBlYXQgbGVmdCBjZW50ZXIvY29udGFpbjtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IG5vcm1hbDtcblxuXHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDI1cHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdFxuXHQmLmZpeGVkLW1lbnUge1xuXHRcdC5zaXRlLWhlYWRlciB7IFx0XG5cdFx0XHQmLWZpeGVkIHtcblx0XHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdHotaW5kZXg6IDk5Nztcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRoZWlnaHQ6IDU1cHg7XG5cblx0XHRcdFx0QG1lZGlhIG9ubHkgcHJpbnQge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuXHRcdFx0XHRcdGhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdCYuY2hpbGRfaGVhZGVyIHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxNzBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQuc2l0ZS1jb250ZW50IHtcblx0XHRcdG1hcmdpbi10b3A6IDU1cHg7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAkaGVhZGVyLWhlaWdodDtcblx0XHRcdH1cblxuXHRcdFx0QG1lZGlhIG9ubHkgcHJpbnQge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cblx0XHRcdCYuY2hpbGRfdGhlbWUge1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAxNzBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vKlxuKlx0TWVnYSBNZW51XG4qL1xuXG4jbWVnYV9fbWVudV9fd3JhcHBlciB7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuXHRcdG92ZXJmbG93LXk6IHNjcm9sbDtcblxuXHRcdCNtZW51LWV5ZWJyb3ctbGlua3MtMSB7XG5cdFx0XHRwYWRkaW5nOiAxNXB4IDBweDtcblx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdFx0XHRsaSB7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLnNocmlua2VkX21lbnUge1xuXHRcdC5tZWdhLW1lbnUge1xuXHRcdFx0Lm1lZ2FfbWVudV9pbm5lci5kcm9wZG93bi1wYW5lIHtcblx0XHRcdFx0dG9wOiAxMjZweCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5tZW51LnNlY29uZGFyeSAge1xuXHRcdC5sYW5ndWFnZXMge1xuXG5cdFx0XHQjbGFuZ3VhZ2UtbWVudV9tb2Ige1xuXHRcdFx0XHQvLyB0b3A6IDU1cHg7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHR6LWluZGV4OiA5OTk7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdHBhZGRpbmc6IDIwcHggMDtcblx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkbGlnaHQtZ3JheTtcblx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMTBweDtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHRcdHVsIHtcblx0XHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRcdFx0bWFyZ2luOiAwIDAgMTBweDtcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRcdHdpZHRoOiA1MCU7XHRcdFx0XHRcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHRcdFx0ZmxleDogMCAwIGF1dG87XG5cdFx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdFx0XHRcdFx0LmxhYmVsIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xuXHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkbGlnaHRlci1ncmF5O1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogNDZweDtcblx0XHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmU7XG5cdFx0XHRcdFx0d2lkdGg6IGF1dG87XG5cblx0XHRcdFx0XHQmW3RhcmdldD1cIl9ibGFua1wiXSB7XG5cdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDEycHg7XG5cdFx0XHRcdFx0XHRcdGhlaWdodDogMTJweDtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDZweDtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAycHg7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaWNvbnMvbmV3LXdpbmRvdy1ibHVlLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIC8gY29udGFpbjtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0Lmxhbmd1YWdlX21vYmlsZV9hcnJvdyB7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHRvcDogNjVweDtcblx0XHRcdFx0XHRyaWdodDogMzVweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmOmhvdmVyLCAmOmZvY3VzLCAmOmZvY3VzLXdpdGhpbiB7XG5cdFxuXHRcdFx0XHQvLyAjbGFuZ3VhZ2UtbWVudV9tb2Ige1xuXHRcdFx0XHQvLyBcdHRvcDogNyU7XG5cdFx0XHRcdC8vIH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbi5tZWdhLW1lbnUge1xuXHQubWVnYV9tZW51X2lubmVyLmRyb3Bkb3duLXBhbmUge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0Ly8gbGVmdDogLTIlICFpbXBvcnRhbnQ7XG5cdFx0dG9wOiAkaGVhZGVyLWhlaWdodCAhaW1wb3J0YW50O1xuXHRcdGxlZnQ6IDAgIWltcG9ydGFudDtcblx0XHRyaWdodDogMCAhaW1wb3J0YW50O1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXG5cdFx0LmdyaWQtY29udGFpbmVyIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblxuXHRcdGxpIHtcblx0XHRcdHBhZGRpbmc6IDBweDtcblx0XHRcdGEge1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdFx0XHR0ZXh0LXVuZGVybGluZS1wb3NpdGlvbjogYXV0bztcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDVweCAxMHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuICBcblx0Lm1lbnUge1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0Ji52ZXJ0aWNhbCB7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0Ly9ib3JkZXI6IDFweCBzb2xpZCByZWQ7XG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0bGkge1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubWVnYS0tcGFkZGluZyB7XG5cdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XG5cdH1cblxuXHQubWVudS1zdHJldGNoIHtcblx0XHRtYXJnaW4tbGVmdDogLTIwcHg7XG5cdFx0bWFyZ2luLXJpZ2h0OiAtMjBweDtcblx0fVxuXG5cdC5iYW5uZXItbGluayB7XG5cdFx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQuc2VjdGlvbi0taG9tZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHRhYi1jb2xvdXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHRwYWRkaW5nOiAxMHB4IDA7XG5cdFx0YSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdH1cblx0fVxuXG5cdC5ib3JkZXItLXJpZ2h0IHtcblx0XHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYm9yZGVyO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpe1xuXHRcdFx0Ym9yZGVyLXJpZ2h0OiBub25lO1xuXHRcdH1cblx0fVxuXHQuc2lkZS0tcGFuZWwge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuXHRcdFx0cGFkZGluZy1yaWdodDogMjBweDtcblx0XHR9XG5cdFx0c3BhbiB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXHRcdGEge1xuXHRcdFx0cGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcblx0XHR9XG5cdFx0Lm1lbnVfY3RhX2Jsb2NrIHtcblx0XHRcdGZsZXg6IDEgMCBhdXRvO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdHdvO1xuXHRcdFx0cGFkZGluZzogMjJweDtcblx0XHRcdGEge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXHRcdFx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAkc2Vjb25kYXJ5LW9uZSAhaW1wb3J0YW50O1xuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5tb2JpbGVfYmFubmVyIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogNDBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LmNvbCB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdG1hcmdpbjogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuXHRcdFx0d2lkdGg6IDMzJTtcblx0XHR9XG5cdFx0dWwge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuXHRcdFx0cGFkZGluZy1yaWdodDogMTBweDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXHRcdFx0bGkge1xuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRwYWRkaW5nOiA1cHggMTBweCA1cHggMTBweDtcblx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQubWVudS0tdGl0bGUge1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG5cdFx0XHRcdHBhZGRpbmc6IDAgMjBweCAwIDIwcHg7XG5cdFx0XHR9XG5cblx0XHRcdGEsIGg2IHtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXG5cdFx0XHQmLm1lbnUtLXRpdGxlLS0wIHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcblx0XHRcdFx0XHQvLyBtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRociB7XG5cdFx0XHRcdGhlaWdodDogMXB4O1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubWVudS0tY3RhIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMTAwJTtcblx0XHQubWVudS0tYmFubmVyIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0cGFkZGluZzogMjBweDtcblx0XHR9XG5cdH1cblxufVxuXG4uc2hyaW5rLS1oaWRlICB7XG5cdGhlaWdodDogYXV0bztcblx0b3BhY2l0eTogMTtcblx0dHJhbnNpdGlvbjogaGVpZ2h0IDBtcyAwbXMsIG9wYWNpdHkgNjAwbXMgMG1zO1xufVxuXG5cbiNzaXRlLWhlYWRlci5tZW51X19zbWFsbCB7XG5cdGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkcHJpbWFyeS10d287XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdG1pbi1oZWlnaHQ6IDEzMHB4O1xuXHR9XG5cblx0LnNocmluay0taGlkZSB7XG5cdFx0Ly9kaXNwbGF5OiBub25lO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0aGVpZ2h0OiAwO1xuXHRcdC8vb3ZlcmZsb3c6IGhpZGRlbjtcblx0XHR0cmFuc2l0aW9uOiBoZWlnaHQgMG1zIDEwMG1zLCBvcGFjaXR5IDEwMG1zIDBtcztcblx0fVxuXHQuaWNvbi5pY29uLXNtYWxsIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRcdHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cdFx0XHR3aWR0aDogNzBweDtcblx0XHRcdGhlaWdodDogNzBweDtcblx0XHR9XG5cdH1cblx0XG5cdCNsYW5ndWFnZS1tZW51IHtcblx0XHR0b3A6IDEyNnB4O1xuXHR9XG5cblx0Lm1lbnUge1xuXHRcdGxpIHtcblx0XHRcdGEge1xuXHRcdFx0XHQmLnNlYXJjaC0tbGluayB7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdGhlaWdodDogMThweDtcblx0XHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgMG1zO1xuXHRcdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCYuZHJvcGRvd24ge1xuXHRcdFx0Ly9kaXNwbGF5OiBpbmxpbmU7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHR3aWR0aDogOTAlO1xuXHRcdH1cblx0XHQmLnNlY29uZGFyeSB7XG5cdFx0XHQ+IGxpOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0d2lkdGg6IDQwcHg7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIFVzZWQgZm9yIG92ZXJyaWRpbmcgZGVmYXVsdHNcbi5kcm9wZG93bi1wYW5lLmN1c3RvbSB7XG5cdHBhZGRpbmc6IDA7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdGJvcmRlcjogMDtcbn1cblxuLmhlYWRlci1zcGFjZXIge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiA4MHB4O1xuXHRkaXNwbGF5OiBncmlkO1xuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcblx0XHRoZWlnaHQ6IDIwMHB4O1xuXHR9XG59XG5cbi8vIGdyZXkgYmFja2dvdW5kIHdoZW4gbWVnYW1lbnUgb3BlblxuXG4uYmdGaWx0ZXIge1xuXHQvLyBwb3NpdGlvbjogZml4ZWQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcblx0b3BhY2l0eTogMDtcbiAgICB3aWR0aDogMTAwdnc7XG5cdGhlaWdodDogMTAwdmg7XHRcblx0ei1pbmRleDogOTk2O1xufVxuXG4uaGVhZGVyNF92MiB7XG5cdC5oZWFkZXI0X3YyX3RyYWZmaWNMaWdodCB7XG5cdFx0bWFyZ2luOiAycmVtIDAgMS41cmVtIDA7XG5cdFx0LnRyYWZmaWNMaWdodF9ncmVlbiB7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0cGFkZGluZzogLjg1ZW0gMi4zZW07XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjQ0NFMEQwO1xuXHRcdFx0d2lkdGg6IGZpdC1jb250ZW50O1xuXHRcdH1cblx0XHQudHJhZmZpY0xpZ2h0X3JlZCB7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0cGFkZGluZzogLjg1ZW0gMi4zZW07XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkFFN0VDO1xuXHRcdFx0d2lkdGg6IGZpdC1jb250ZW50O1xuXHRcdH1cblx0fVxufVxuIiwiLyoqXG4gKiBGT09URVIgXG4gKi9cbi5zaXRlLWZvb3RlciB7XHRcblx0Y29sb3I6ICR3aGl0ZTtcblx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuXHRwYWRkaW5nOiA4MHB4IDAgMjBweCAwO1xuXG5cdGg2IHtcblx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdH1cblx0YTpub3QoLmJ1dHRvbikge1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0dGV4dC11bmRlcmxpbmUtcG9zaXRpb246IGF1dG87XG5cdH1cblx0LmJ1dHRvbiB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0bWFyZ2luLXRvcDogMjBweDtcblx0fVxuXG5cdC5jZWxsLmF1dG8ge1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdH1cblxuXHR1bCB7XG5cdFx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0Ji5mb290ZXItLWxpbmtzIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcblx0XHRcdH1cblxuXHRcdFx0bGkge1xuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMzBweDtcblxuXHRcdFx0XHRcdCZbdGFyZ2V0PVwiX2JsYW5rXCJdIHtcblx0XHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZXh0ZXJuYWwtbGluay1pY29uLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgLyBjb250YWluO1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogMzBweDtcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiAxMXB4O1xuXHRcdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IC0zMHB4O1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHR9XG5cdFx0Ji50ZXJtcy1saXN0IHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0Ym9yZGVyLXRvcDogMnB4IHNvbGlkICRwcmltYXJ5LXRocmVlO1xuXHRcdFx0Ym9yZGVyLXRvcDogMnB4IHNvbGlkIHJnYmEoJHdoaXRlLCAwLjMpO1xuXHRcdFx0bWFyZ2luLXRvcDogNDBweDtcblx0XHRcdHBhZGRpbmctdG9wOiAyMHB4O1xuXG5cdFx0XHRsaSB7XG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiA1cHg7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICR3aGl0ZTtcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCYubGFzdCB7XG5cdFx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IG5vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCY6bGFzdC1jaGlsZCBhIHtcblx0XHRcdFx0XHRcdGJvcmRlci1yaWdodDogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0JjpsYXN0LWNoaWxkIGEge1xuXHRcdFx0XHRcdGJvcmRlci1yaWdodDogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQmLnNvY2lhbCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdFx0XHRtYXJnaW4tbGVmdDogMHB4O1xuXG5cdFx0XHRsaSB7XG5cdFx0XHRcdHdpZHRoOiAyNSU7XG5cdFx0XHRcdG1heC13aWR0aDogNjBweDtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XG5cblx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0aSB7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDA7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMTAwJTtcblx0XHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjI1cztcblxuXHRcdFx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHRcdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdGkge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDE1cHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHR9XG5cblx0Lm1pY3Jvc2l0ZS1sb2dvIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblxuXHQuZm9vdGVyX19sb2dvIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuICAgIFx0Ly8ganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cblx0XHRhLmljb246Zmlyc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRcdFx0cGFkZGluZy1yaWdodDogMjBweDtcblx0XHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNmZmY7XG5cdFx0fVxuXHR9XG5cblx0Lmljb24ge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRtYXJnaW46IDA7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdHdpZHRoOiAyMjlweDtcblx0XHRoZWlnaHQ6IDUzcHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0XHQvLyBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZm9vdGVyLWxvZ28uc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlciAvIGNvbnRhaW47XG5cblx0XHRpbWcge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRvYmplY3QtcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuXHRcdFx0b2JqZWN0LWZpdDogY29udGFpbjtcblx0XHR9XG5cdFx0c3BhbiB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgXHRcdGxlZnQ6IC05OTk5OXB4O1xuXHRcdH1cblx0fVxuXHQuYm9yZGVyLWNvbFx0e1xuXHRcdHBhZGRpbmctdG9wOiAyMHB4O1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdHBhZGRpbmctdG9wOiBpbml0aWFsO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0Ym9yZGVyLXRvcDogMDtcblx0XHR9XG5cdFx0c3BhbiB7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRcdH1cblx0fVxuXG5cdC5zZWFyY2hfX3dyYXBwZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtYXJnaW4tYm90dG9tOiAyNXB4O1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiBhdXRvO1xuXHRcdH1cblx0XHRpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG5cdFx0XHRwYWRkaW5nOiAyNHB4IDIwcHg7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDI1cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cblx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRvdXRsaW5lOm5vbmUgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdHJpZ2h0OiAxMHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uZGlzY2xhaW1lcl9mb290ZXIge1xuXHRwYWRkaW5nOiAyMHB4IDBweDtcblx0LmRpc2NsYWltZXJfY29udGVudCB7XG5cdFx0cHtcblx0XHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRcdGNvbG9yOiAjNzA3MDcwO1xuXHRcdFx0bWFyZ2luOiAwcHg7XG5cdFx0fVxuXHR9XG5cdC5kaXNjbGFpbWVyX2ltZ3Mge1xuXHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0aW1nLmRpc2NsYWltZXJfaW1nIHtcblx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDBweDtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDMwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIE1pY3Jvc2l0ZSBPdmVycmlkZXNcbmJvZHkubWljcm9zaXRlIHtcblx0LnNpdGUtZm9vdGVyIHtcblx0XHRwYWRkaW5nOiAzNHB4IDAgMzRweDsgLy8gODBweCAwIDIwcHggMDtcblx0fVxufVxuIiwiLmhlYWRpbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHNwYW4sIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG5cdGhyIHtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdH1cblx0cCB7XG5cdFx0Y29sb3I6ICRwcmltYXJ5LW9uZTtcblx0fVxuXG4gICAgLmhlYWRpbmctLXRhZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblx0LnRleHQtcmlnaHQge1xuICAgICAgICB0ZXh0LWFsaWduOiB1bnNldDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cdFx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICB9XG5cdH1cblxuXHRhcnRpY2xlICYge1xuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdH1cbn1cblxuaHIge1xuXHRib3JkZXI6IG5vbmU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4vLyBOZWdhdGl2ZSBtYXJnaW5cbi5vdmVybGFwX19tYXJnaW4ge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTcycHg7XG4gICAgfVxuICAgIC50ZXh0X193cmFwcGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG5cdFx0aDUge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMik7XG5cdFx0fVxuICAgIH1cbn1cblxuLmZpbHRlcl9vcHRpb25zIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICAgIHNlbGVjdCwgaW5wdXQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIHNlbGVjdCwgaW5wdXQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gVXNlIHRvIHRoaXMgbWFrZSBvdXRlciB3cmFwcGVyIGdyZXkgLSB1c2VkIG9uIENhcmQgRG93bmxvYWRcbi5ncmV5X291dGVyX3dyYXAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1ncmV5ICFpbXBvcnRhbnQ7XG59XG5cbi51cGRhdGVkIHtcblx0c3BhbiB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNCkgIWltcG9ydGFudDtcblx0fVxuXG5cdC5kYXRlIHtcblx0XHRAZXh0ZW5kIGg2O1xuXHRcdGNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cdH1cbn1cblxuLnRhZ3Mge1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblx0Zm9udC1mYW1pbHk6XCJBdmVuaXIgTFQgVzAxXzU1IFJvbWFuMTQ3NTUyMFwiO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRjb2xvcjogJHByaW1hcnktb25lO1xufVxuIiwiLyoqXG5cdEJyZWFkY3J1bWJcbiovXG4uYnJlYWRjcnVtYi13cmFwIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWdyZXk7XG5cdC8vIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4uYnJlYWRjcnVtYiB7XHRcblx0LmJyZWFkY3J1bWItLW5hdmlnYXRpb24ge1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRtYXJnaW46IDE1cHggMCAxNXB4O1xuXHRcdGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMHB4O1xuXHRcdH1cblxuXHRcdGxpIHtcblx0XHRcdGEge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuXHRcdFx0XHQmLmFjdGl2ZSwgJjpob3ZlciB7XG5cdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0QG1lZGlhIG9ubHkgcHJpbnQge1xuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0fVxufVxuXG4jYnJlYWRjcnVtYnMge1xuXHRAbWVkaWEgb25seSBwcmludCB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi8vIEhpZGUgYnJlYWRjcnVtYnMgb24gaG9tZXBhZ2Vcbi5ob21lIHAjYnJlYWRjcnVtYnMge1xuXHRkaXNwbGF5OiBub25lO1xufVxuIiwiI3NlYXJjaF9fd3JhcHBlciB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAtMTAwJTtcblx0bGVmdDogMDtcblx0cmlnaHQ6IDA7XG4gICAgb3BhY2l0eTogMDtcblx0ei1pbmRleDogOTk4ICFpbXBvcnRhbnQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICRiZy1ncmV5O1xuXG5cdCYuc2hvdyB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR0b3A6IDA7XG5cblx0XHQjc2VhcmNoLWNsb3NlIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxuXG5cdC5pY29uIHsgXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdG1hcmdpbi10b3A6IDlweDtcblx0XHR3aWR0aDogJGhlYWRlci1pY29uLXdpZHRoO1xuXHRcdGhlaWdodDogJGhlYWRlci1pY29uLWhlaWdodDtcblx0XHQvLyBiYWNrZ3JvdW5kOiB1cmwoJGhlYWRlci1pY29uLWJhY2tncm91bmQpIG5vLXJlcGVhdCBjZW50ZXIgbGVmdCAvIGNvbnRhaW47XG5cdFx0c3BhbiB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7IFxuXHRcdFx0bGVmdDogLTk5OTk5cHg7XG5cdFx0fVxuXG5cdFx0Ji5pY29uLXNtYWxsIHtcblx0XHRcdC8vIGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9FUlMtbG9nby5zdmcpIG5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXHQjc2VhcmNoLWNsb3NlIHtcblx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvY2xvc2UtcG9wdXAuc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlciAvIGNvbnRhaW47XG5cdFx0aGVpZ2h0OjE3cHg7XG5cdFx0d2lkdGg6MTdweDtcblx0XHR0ZXh0LWluZGVudDotOTk5OXB4O1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRyaWdodDogMjBweDtcblx0XHR0b3A6IDE5cHg7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9jbG9zZS1wb3B1cC5zdmcpO1xuXHRcdFx0bWFzay1zaXplOiBjb250YWluO1xuXHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAzNHB4O1xuXHRcdFx0cmlnaHQ6IDlweDtcblx0XHR9XG5cdH1cblx0XG5cdGZvcm0ge1xuXHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdH1cblxuXHQuc2VhcmNoLWZvcm0ge1xuXHRcdG1hcmdpbi1ib3R0b206IDUwcHg7XG5cdH1cblx0LmNhcmQge1xuXHRcdHVsIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiB1bnNldDtcblx0XHRcdGxpOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6IHVuc2V0O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRtaW4taGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcblx0fVxufVxuXG4uc2VhcmNoX193cmFwcGVyIHtcblx0aW5wdXRbdHlwZT1zdWJtaXRdLCAuc2VhcmNoLWljb24ge1xuXHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9zZWFyY2gtaWNvbi5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQgMjBweDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1MCU7XG5cdFx0cmlnaHQ6IDBweDtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0aGVpZ2h0OiA1MHB4O1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHRleHQtaW5kZW50OiAtOTk5OTlweDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdC8vIHotaW5kZXg6IDk5NTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHR6LWluZGV4OiA5OTU7XG5cdFx0fVxuXHR9XG59XG4iLCIvKipcblx0U29sYWNlIE1pY3Jvc2l0ZVxuKi9cblxuLnNvbGFjZS1taWNyb3NpdGUge1xuXHQmLm1pY3Jvc2l0ZSB7XG5cblx0XHQvLyBDb3BpZWQgZnJvbSBleHRlcm5hbCBLbm93bGVkZ2UgSHViIHNpdGVcblx0XHRAZm9udC1mYWNlIHtcblx0XHRcdGZvbnQtZmFtaWx5OiBcIkF2ZW5pck5leHRcIjtcblx0XHRcdHNyYzogdXJsKFwiLi4vZm9udHMvdHdvLUJoN3NFMDM4LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDEwMDtcblx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHR9XG5cdFx0XHRcblx0XHRAZm9udC1mYWNlIHtcblx0XHRcdGZvbnQtZmFtaWx5OiBcIkF2ZW5pck5leHRcIjtcblx0XHRcdHNyYzogdXJsKFwiLi4vZm9udHMvb25lLVBuczl0TlE5LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHR9XG5cdFx0XHRcblx0XHRAZm9udC1mYWNlIHtcblx0XHRcdGZvbnQtZmFtaWx5OiBcIkF2ZW5pck5leHRcIjtcblx0XHRcdHNyYzogdXJsKFwiLi4vZm9udHMvdGhyZWUtRGZWZHFfNW8ud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7XG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdH1cblxuXHRcdC5wYWdlLXdpZHRoIHtcblx0XHRcdG1heC13aWR0aDogdmFyKC0tcGFnZS13aWR0aCk7XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHR9XG5cblx0XHQuYnVyZ2VyLW1lbnUge1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gT3ZlcnJpZGVzXG5cdFx0LnNpdGUtaGVhZGVyIHtcblx0XHRcdGEge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0dWwge1xuXHRcdFx0XHQmI21lbnUtdXBwZXIge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuXHRcdFx0XHRcdFx0XHQmOmhvdmVyLCAmOmZvY3VzIHtcblx0XHRcdFx0XHRcdFx0XHRjb2xvcjogIzA5NjI2Zjtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQmI21lbnUtbWFpbiB7XG5cdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICMwOTYyNmY7XG5cdFx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdCYuc2VsZWN0ZWQge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDk2MjZmO1xuXHRcdFx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdCNsYW5ndWFnZXMge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0fVxuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRjb250ZW50OiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGNvbG9yOiAjMDk2MjZmO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuc2l0ZS1zd2l0Y2hlciB7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI1LjJweCk7XG5cdFx0XHRcdFx0Ji5hY3RpdmUge1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQmOm5vdCguYWN0aXZlKSB7XG5cdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICMwOTYyNmY7XG5cdFx0XHRcdFx0XHRcdHRleHQtdW5kZXJsaW5lLXBvc2l0aW9uOiBhdXRvO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQuc2l0ZS1mb290ZXIge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdGNvbG9yOiB1bnNldDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRcdC5tZW51IHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg4cHgpO1xuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNS4ycHgpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LmZvb3Rlci1ib3R0b20ge1xuXHRcdFx0XHQubGVnYWxNZW51cyB7XG5cdFx0XHRcdFx0Lm1lbnUge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdGdhcDogcmVtLWNhbGMoMjBweCk7XG5cdFx0XHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMThweCk7XG5cdFx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI1LjJweCk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LmRpc2NsYWltZXItdGV4dCB7XG5cdFx0XHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHRcdFx0fVxuXHRcdFx0XHQuc2l0ZS1icmFuZGluZyB7XG5cdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5iZ0ZpbHRlciB7XG5cdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHRcdC8vIFNlYXJjaCBvdmVybGF5XG5cdFx0LnNlYXJjaC1vdmVybGF5IHtcblx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0LnBsYWNlaG9sZGVyIHtcblx0XHRcdFx0XHRoZWlnaHQ6IDUwcHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0YnV0dG9uI3NlYXJjaENsb3NlIHtcblx0XHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAjMDk2MjZmO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIzA5NjI2Zjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRjb250ZW50OiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQjc2VhcmNoZm9ybS5zZWFyY2hfZGVza3RvcCAjc2VhcmNoLWxhbmcge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gTW9iaWxlXG5cdFx0Lm1vYmlsZS1tZW51LXBhbmVsIHtcblx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdCYjbGFuZ3VhZ2VzIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdH1cblx0XHRcdFx0Ji5zZWFyY2gtdG9nZ2xlIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0Y29udGVudDogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5tb2JpbGUtbWVudS1wYW5lbF9fbWFpbiwgLm1vYmlsZS1tZW51LXBhbmVsX19sb3dlciB7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0XHQmOmhvdmVyLCAmOmFjdGl2ZSB7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQubW9iaWxlLW1lbnUtcGFuZWxfX21vYmlsZSB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LndwbWwtbHMtc3RhdGljcy1mb290ZXIge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuIiwiLyoqXG4gKiBBUlRJQ0xFIFxuICovXG4gXG5hcnRpY2xlIHtcblx0cGFkZGluZy10b3A6IDQwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG5cblx0Lm90aGVyLXRyYW5zbGF0aW9ucyB7XG5cdFx0QGV4dGVuZCAuZmlsdGVycztcblx0XHR0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcblx0XHRwYWRkaW5nOiA0MHB4IDU1cHggIWltcG9ydGFudDtcblx0XHRtYXJnaW4tdG9wOiA0MHB4ICFpbXBvcnRhbnQ7XG5cblx0XHRzZWxlY3Qge1xuXHRcdFx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0LmZhY3RzaGVldC1jb250ZW50IHtcblx0XHRtYXJnaW4tdG9wOiA1NXB4O1xuXHR9XG5cblx0KyAuc2lnbnVwX2Zvcm0ge1xuXHRcdG1hcmdpbi10b3A6IDBweCAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi8qKlxuICogVHlwb2dyYXBoeSBwYWdlXG4gKi9cblxuLmFydGljbGVfX3BhZ2UsIC5idXR0b25fX3BhZ2Uge1xuICAgIC5hcnRpY2xlX190aXRsZSwgLmJ1dHRvbl9fdGl0bGUge1xuICAgICAgICBtYXJnaW46IDYwcHggMDtcbiAgICAgICAgLmFydGljbGVfX3RpdGxlX2JvcmRlciwgLmJ1dHRvbl90aXRsZV9ib3JkZXIge1xuICAgICAgICAgICBjb2xvcjogJHR5cG9ncmFwaHk7XG4gICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHR5cG9ncmFwaHk7XG4gICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYXJ0aWNsZV9faW5saW5lIHtcbiAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAvLyB3aWR0aDogMTAwJTtcbiAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLmFydGljbGVfX2NvbG9yX3NwaGVyZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuXHRcdHBhZGRpbmctYm90dG9tOiA0MCU7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgLy8gYm9yZGVyOiAxcHggc29saWQgJHNlY29uZGFyeS1vbmU7XG5cbiAgICAgICAmLnByaW1hcnlfb25lIHtcbiAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuICAgICAgIH1cbiAgICAgICAmLnByaW1hcnlfdHdvIHtcbiAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdHdvO1xuICAgICAgIH1cbiAgICAgICAmLnByaW1hcnlfdGhyZWUge1xuICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS10aHJlZTtcbiAgICAgICB9XG5cdCAgICYuc2Vjb25kYXJ5X29uZSB7XG5cdFx0ICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1vbmU7XG5cdCAgIH1cbiAgICB9XG5cbiAgICAuYXJ0aWNsZV9fY29sb3JfaGV4X3ByaW1hcnksIC5hcnRpY2xlX19jb2xvcl9oZXhfc2Vjb25kYXJ5IHtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgbWFyZ2luOiAzMHB4IGF1dG87XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5hcnRpY2xlX190ZXh0IHtcbiAgICAgICAgLmFydGljbGVfX3RleHRfbGFiZWwge1xuICAgICAgICAgICBjb2xvcjogJHR5cG9ncmFwaHk7XG4gICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYXJ0aWNsZV9fdGV4dF9jb2xvciB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzZWNvbmRhcnktb25lO1xuXG4gICAgICAgICAgICAmLnRleHRfYmxhY2sge1xuICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi50ZXh0X3doaXRlIHtcbiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYudGV4dF9jb2JhbHQge1xuICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdHdvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi50ZXh0X2dyZXkge1xuICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnRleHRfZ3JleV9saWdodCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcHRpb24tZ3JleTtcbiAgICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnRleHRfYmx1ZSB7XG4gICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZyZWVfdGV4dCB7XG4gICAgLy9tYXJnaW4tbGVmdDogMDtcbiAgICAvL21hcmdpbi1yaWdodDogMDtcbiAgICAuY2VsbCB7XG4gICAgICAgIC8vcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgICAgICAvL3BhZGRpbmctcmlnaHQ6IDEycHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIC8vcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgLy9wYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIEgyIG5lZWRzIHRvIG1hdGNoIEgzIHN0eWxlIGZvciB0aGlzIG1vZHVsZVxuICAgIGgyIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxOXB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyOCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzIpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjJweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFydGljbGVfX2ZlYXR1cmUge1xuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIC5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICAgICAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICB1bCB7XG4gICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIH1cbiAgICBvbCB7XG4gICAgICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgICAgICBsaXN0LXN0eWxlOiBub25lOyBcbiAgICAgICBjb3VudGVyLXJlc2V0OiBsaTtcbiAgICAgICBsaSB7XG4gICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IGxpO1xuICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgY29udGVudDogY291bnRlcihsaSk7XG4gICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS10aHJlZTtcbiAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICB3aWR0aDogMS4ycmVtO1xuICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjJyZW07XG4gICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTRlbTtcbiAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMi40ZW07XG4gICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgICAgICAgICB9XG4gICAgICAgfVxuICAgIH1cbn1cblxuLy8gTmV3cyBhcnRpY2xlc1xuLm5ld3NfaW50cm9fY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbn1cbi5uZXdzX2ludHJvX2NvbnRlbnQsIC5uZXdzX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICB9XG59XG5cblxuLmNvbnRlbnRzX3RhYmxlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0ZXN0LWdyYXk7XG5cdGJvcmRlci1yYWRpdXM6IDhweDtcblxuXHQuYWNjb3JkaW9uIHtcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXG5cdFx0LmFjY29yZGlvbi1pdGVtIHtcblx0XHRcdC5hY2NvcmRpb24tdGl0bGUge1xuXHRcdFx0XHRtYXJnaW46IDMwcHggMjRweCAwO1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdHRyYW5zaXRpb246IGJvcmRlciAwLjI1cztcblxuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmLmlzLWFjdGl2ZSB7XG5cdFx0XHRcdC5hY2NvcmRpb24tdGl0bGUge1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYTNhM2EzO1xuXG5cdFx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKSByb3RhdGUoLTE4MGRlZyk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5hY2NvcmRpb24tY29udGVudCB7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdFx0cGFkZGluZzogMjBweCA1OHB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG5cdFx0XHRcdFx0LmFycm93LWJ0biB7XG5cdFx0XHRcdFx0XHR0b3A6IDJweDtcblx0XHRcdFx0XHRcdGhlaWdodDogMTVweDtcblx0XHRcdFx0XHRcdG1pbi13aWR0aDogMTVweDtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdG1hcmdpbjogYXV0byAxMHB4IGF1dG8gMDtcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYnRuYXJyb3cuc3ZnKTtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTVweCAxNXB4O1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdFx0XHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2J0bmFycm93LnN2Zyk7XG5cdFx0XHRcdFx0XHRcdG1hc2stc2l6ZTogMTVweCAxNXB4O1xuXHRcdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRwcmltYXJ5LW9uZTtcblxuXHRcdFx0XHRcdFx0LmFycm93LWJ0biB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9idG5hcnJvdy1ob3Zlci5zdmcpO1xuXG5cdFx0XHRcdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvYnRuYXJyb3ctaG92ZXIuc3ZnKTtcblx0XHRcdFx0XHRcdFx0XHRtYXNrLXNpemU6IDE1cHggMTVweDtcblx0XHRcdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi8qKlxuICogQVdBUkRcbiAqL1xuIFxuLmF3YXJkX19oZXJvIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICB9XG4gICAgLnJlZ19vcGVucywgLnJlZ19jbG9zZXMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIH1cbiAgICAucmVnX29wZW5zIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHVuc2V0O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbn0iLCIvKipcbiAqIENBUkRcbiAqL1xuIFxuLmNhcmQge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyNUNGXCI7ICBcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJ1bGxldC1ibHVlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgXG4gICAgICAgICAgICAgICAgd2lkdGg6IDFlbTsgXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblx0LmltZ19saW5rIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdH1cblxuICAgIC5jYXJkLWxpbmsge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiBpbml0aWFsO1xuXHRcdC8vIGJvcmRlci1yYWRpdXM6IDVweDtcblxuXHRcdD4gZGl2Om5vdChbY2xhc3NdKSB7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XG5cdFx0XHQudGV4dF9fd3JhcHBlciB7XG5cdFx0XHRcdGZsZXg6IDEgMCBhdXRvO1xuXHRcdFx0fVxuXHRcdH1cblxuICAgICAgICAmLm92ZXJyaWRlIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGg1LCAuaDUge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cdFx0LnRleHRfX3dyYXBwZXIge1xuXHRcdFx0Y29sb3I6ICRwcmltYXJ5LW9uZTtcblx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjI1cztcblx0XHRcdHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG5cblx0XHRcdC5zdWJoZWFkaW5nIHtcblx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuMjVzO1xuXHRcdFx0fVxuXG5cdFx0XHRoNSwgLmg1IHtcblx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuMjVzO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0LnRleHRfX3dyYXBwZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogJHByaW1hcnktb25lO1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cblxuXHRcdFx0XHQuc3ViaGVhZGluZyB7XG5cdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRoNSwgLmg1IHtcblx0XHRcdFx0XHRjb2xvcjogJHNlY29uZGFyeS1vbmU7XG5cblx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdC8qXG5cdFx0XHRcdFx0XHQvLyBSZW1vdmVkIGR1ZSB0byBsb25nIHRpdGxlIGNvbmZsaWN0c1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnKTtcblxuXHRcdFx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnKTtcblx0XHRcdFx0XHRcdFx0bWFzay1zaXplOiA5cHggMTNweDtcblx0XHRcdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdCovXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuICAgIH1cblxuXHQub3ZlcmxheS1saW5rIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdHRleHQtaW5kZW50OiAtOTk5OTlweDtcblx0XHR6LWluZGV4OiAwO1xuXHR9XG5cblx0Ji5oYXMtaW1hZ2Uge1xuXHRcdG1pbi1oZWlnaHQ6IDI1NXB4O1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHQub3ZlcmxheS1pbWFnZSB7XG5cdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji5oYXMtbGluayB7XG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjI1cztcblxuXHRcdCY6aG92ZXIsICYuaGFzLWltYWdlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcblxuXHRcdFx0YSB7XG5cdFx0XHRcdGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdH1cblxuXHRcdFx0aDQsIGg1LCBwLCBhW2hyZWZePVwibWFpbHRvOlwiXSwgYVtocmVmXj1cInRlbDpcIl0sIGxpIHtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQub3ZlcmxheS1pbWFnZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0dGV4dC1pbmRlbnQ6IC05OTk5OXB4O1xuXHRcdHotaW5kZXg6IDI7XG5cdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cztcblx0fVxuXG4gICAgJi50cmFuc3BhcmVudCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIC5jYXJkLWxpbmtzIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XG4gICAgICAgICAgICBhLmxpbmstc2Vjb25kIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnRhZywgLmNhcmQtbGlua3MgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktdGhyZWU7XG4gICAgICAgIH1cbiAgICAgICAgLnRhZyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgICAgICAuY2FyZC1saW5rcyBhIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICB9XG5cdCYuYm9yZGVyZWQge1xuXHRcdGJvcmRlci10b3A6IDEycHggc29saWQgJHByaW1hcnktY29sb3I7XG5cdFx0dHJhbnNpdGlvbjogYWxsIDAuMjVzO1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRib3JkZXItdG9wLWNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHR9XG5cdH1cblxuICAgICYuY2FyZF9fc2ltcGxlIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIC5idXR0b25fd3JhcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgICYubWVkaXVtLTYge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMzBweCAwcHggMTBweCAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5jYXJkX19zaW1wbGUuaGVyby1wYWRkaW5nIHtcbiAgICAgICAgZGl2IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmNhcmRfX2xpbmsge1xuICAgICAgICBib3JkZXItdG9wOiBzb2xpZCA1cHggJHNlY29uZGFyeS1vbmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIH1cbiAgICAmLmNhcmRfX2xpc3Qge1xuICAgICAgICBociB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuY2FyZF9fY2FsbG91dCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICAgICAgcGFkZGluZzogNTBweCAyNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblx0Ji5jYXJkX19leHBhbmRhYmxlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjI1cztcblxuXHRcdC5jb250ZW50LXdyYXAge1xuXHRcdFx0cGFkZGluZzogMThweCAyNHB4O1xuXHRcdH1cblxuXHRcdC5hY2NvcmRpb24tY29udGVudCB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXG5cdFx0XHQuY29udGVudCB7XG5cdFx0XHRcdGJvcmRlci1sZWZ0OiA1cHggc29saWQgJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMTZweDtcblx0XHRcdH1cblxuXHRcdFx0aDYge1xuXHRcdFx0XHQmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdHAge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5hY2NvcmRpb24tdGl0bGUge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHQvLyBib3R0b206IDc2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwMHB4O1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHRleHQtaW5kZW50OiAtOTk5OXB4O1xuXHRcdH1cblxuXHRcdC5saW5rIHtcblx0XHRcdHotaW5kZXg6IDI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblx0XHRcdGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcblx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMThweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAxOHB4IDI0cHggMThweDtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDsgXG4gICAgICAgICAgICB9XG5cdFx0fVxuXG5cdFx0Jjpob3ZlciwgJjpmb2N1cyB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cblx0XHRcdGg1LCAuaDUsIC5oNiwgaDYsIHAsIGEsIC5zdWJoZWFkaW5nLCAuYWNjb3JkaW9uLWNvbnRlbnQgKiwgLmxpbmsge1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0fVxuXG5cdFx0XHRoNSwgLmg1IHtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pY29ucy9kb3duLWFycm93LXdoaXRlLnN2Zyk7XG5cblx0XHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy13aGl0ZS5zdmcpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuICAgICAgICAgICAgaDMuaDUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgIH1cblx0XHR9XG5cdH1cbiAgICAmLmNhcmRfX3N0YXQge1xuICAgICAgICAudGV4dF9fd3JhcHBlciB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgLnN0YXRfX3dyYXBwZXJfX291dGVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc3RhdF9fd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNTAlIDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICAgICAgICAgICAgICAgIC5zdGF0IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDU0KTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuY2FyZF9fYmdfX2ltZyB7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS10aHJlZTtcblx0XHRwYWRkaW5nLXRvcDogODBweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogNjBweDtcblxuICAgICAgICBzcGFuLnN1YmhlYWRpbmcsIHAgPiBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS10aHJlZTtcbiAgICAgICAgfVxuICAgICAgICAuY3RhX3dyYXAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uLnByaW1hcnlfZGVmYXVsdC5ibHVlX2JnIHtcbiAgICAgICAgICAgIC8vbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgfVxuICAgICAgICAmLmRhcmtfX3RleHQge1xuICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktb25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBzcGFuLnN1YmhlYWRpbmcsIGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmdyZXlCZyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY0O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuY2FyZHMtaGVhZGluZy1tYXJnaW4tYm90dG9tIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gICAgfVxuICAgICYuY2FyZF9faGVhZGluZywgJi5jYXJkX19oZWFkaW5nX19pbm5lciB7XG4gICAgICAgIC8vIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgICAgaDIuaDMge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMDBweDsgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblx0XHQuc3RhbmRhcmQtbGluayB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTZweDtcblx0XHRcdH1cblx0XHR9XG4gICAgfVxuICAgICYuY2FyZF9faGVhZGluZ19faW5uZXIubWFyZ2luLWJvdHRvbSwgJi5jYXJkX19oZWFkaW5nX19pbm5lciAubWFyZ2luLWJvdHRvbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgICYuY2FyZF9faGVhZGluZ19faW5uZXIge1xuICAgICAgICAuaGVhZGluZyB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIC5oZWFkaW5nIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LW9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuY2FyZF9fcHJldmlldyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIC5oNSwgaDUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDkyJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6OmFmdGVyIHtcblx0XHRcdFx0Lypcblx0XHRcdFx0Ly8gUmVtb3ZlZCBkdWUgdG8gbG9uZyB0aXRsZSBjb25mbGljdHNcblxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi1ibHVlLnN2Zyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA5cHggMTNweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogOXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgLy90cmFuc2l0aW9uOiBsZWZ0IDAuNXMgZWFzZTtcblxuXHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktb25lO1xuXHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9hcnJvdy1idG4tYmx1ZS5zdmcpO1xuXHRcdFx0XHRcdG1hc2stc2l6ZTogOXB4IDEzcHg7XG5cdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0fVxuXHRcdFx0XHQqL1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LW9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmltYWdlX19wcmV2aWV3IHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGhlaWdodDogMDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xuXHRcdFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGltZyB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50YWdfaW1nIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggN3B4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuMjc1ZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJBdmVuaXIgTFQgVzAxXzU1IFJvbWFuMTQ3NTUyMFwiO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5lcnMtdmlzaW9uIHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgLypcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Fycm93LW5leHRAMngucG5nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogOXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy90cmFuc2l0aW9uOiBsZWZ0IDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cdFx0XHQmLmFpcmxpbmVzLCAmLnBhdGllbnQtb3JnYW5pc2F0aW9uLCAmLnBhcnRuZXJfc29jaWV0aWVzLCAmLmNvbnRhaW4ge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkbGlnaHRlci1ncmF5O1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAwO1xuXG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdFx0XHRvYmplY3QtZml0OiBjb250YWluO1xuXHRcdFx0XHRcdG9iamVjdC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuICAgICAgICB9XG4gICAgICAgIC50ZXh0X193cmFwcGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkbGlnaHRlci1ncmF5O1xuXHRcdFx0Ym9yZGVyLXRvcDogMDtcblx0XHRcdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmg1LCBoNSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5wb2RjYXN0X2Jsb2NrIHtcbiAgICAgICAgICAgIC50ZXh0X193cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5oNTo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZmF1eC0tbGluayB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmRhdGUsIC5jYXRlZ29yeSB7XG4gICAgICAgICAgICBjb2xvcjogIzc2NzE3NTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgICAgICAuY2F0ZWdvcnkge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjFweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTlweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9hcnRpY2xlLWljb25AMngucG5nKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE5cHggMjFweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FwdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgICAgICAgICAgJi5sYXN0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHNwYW4uY2FwdGlvbiB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjFweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTlweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9hcnRpY2xlLWljb25AMngucG5nKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE5cHggMjFweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5wcmV2aWV3X19kZXRhaWxzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQob2RkKSBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGxpLmRvd25sb2FkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZG93bmxvYWQucG5nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0uNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuY2FyZF9fcHJldmlld19ob21lIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICAuaW1hZ2VfX3ByZXZpZXcge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgJHByaW1hcnktdGhyZWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhcmRfX3B1c2hkb3duIHtcbiAgICAgICAgLmltYWdlX19wcmV2aWV3IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIC8vIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMjMwcHg7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjMwcHg7XG4gICAgICAgICAgICB9XG5cdFx0XHRpbWcge1xuXHRcdFx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHRcdFx0aGVpZ2h0OiAyMzBweDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cblx0XHRcdCYuYWlybGluZXMsICYucGF0aWVudC1vcmdhbmlzYXRpb24sICYucGFydG5lcl9zb2NpZXRpZXMsICYuY29udGFpbiB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRsaWdodGVyLWdyYXk7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cblx0XHRcdFx0aW1nIHtcblx0XHRcdFx0XHR3aWR0aDogNTAlO1xuXHRcdFx0XHRcdG9iamVjdC1maXQ6IGNvbnRhaW47XG5cdFx0XHRcdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYucGF0aWVudC1vcmdhbmlzYXRpb24uZGVmYXVsdC1iZyB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRsaWdodGVyLWdyYXk7XG5cdFx0XHR9XG4gICAgICAgIH1cblxuXHRcdCYuYWlybGluZXMge1xuXHRcdFx0LmNvbnRlbnQtd3JhcCB7XG5cdFx0XHRcdC5hY2NvcmRpb24tY29udGVudCB7XG5cdFx0XHRcdFx0aDEsaDIsaDMsaDQsaDUsaDYge1xuXHRcdFx0XHRcdFx0QGV4dGVuZCBzdHJvbmc7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjY7XG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuICAgICAgICAuY29udGVudC13cmFwIHtcbiAgICAgICAgICAgIGgzLmg1IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5tZWRpdW0tNiB7XG4gICAgICAgICAgICAuaW1hZ2VfX3ByZXZpZXcge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMxMnB4O1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAzMTJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMxMnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnRleHRfX3dyYXBwZXIge1xuICAgICAgICAgICAgLy8gcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgLy8gcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICAgIC8qXG4gICAgICAgICAgICAudGFnIHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS10d287XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAqL1xuICAgICAgICAgICAgLnB1c2hkb3duX19oZWFkaW5nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogOTAlO1xuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgLypcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cuc3ZnKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDExcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgKi9cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucmVhZF9fbW9yZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXR3bztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGhyIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7IFxuICAgICAgICAgICAgICAgIGhlaWdodDogMnB4OyBcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFByb2ZpbGUgd2l0aCBwdXNoZG93blxuICAgICAgICAmLmNhcmRfX3Byb2ZpbGUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0ZXN0LWdyYXk7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAwO1xuXG5cdFx0XHQuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0fVxuXG4gICAgICAgICAgICBoNCwgLmg0LCBoNSwgLmg1LCBoNiwgLmg2IHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgJi5idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLnN0YW5kYXJkX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMTE1NDI7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGJ1bGxldC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnB1c2hkb3duX19oZWFkaW5nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICYuaDUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXHQmLmNhcmRfX21lZGlhIHtcblx0XHQuZmVhdHVyZWRfaW1nIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdFx0cGFkZGluZzogNDBweCAyMHB4O1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRwYWRkaW5nOiA4MHB4IDEwMHB4O1xuXHRcdFx0fVxuXG5cdFx0XHRoMiwgcCB7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHR9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IGNsYW1wKDIwcHgsIDUwcHgsIDcwcHgpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgIH1cblx0XHR9XG5cblx0XHQmICsgLmNlbGwge1xuXHRcdFx0YSB7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbiAgICAmLmNhcmRfX3RpbGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIC50aWxlLS13cmFwIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyNzBweDtcblxuICAgICAgICAgICAgLypcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAqL1xuXG4gICAgICAgICAgICAudGlsZS0taW5uZXIge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgIC8vIE5FV1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cbiAgICAgICAgICAgICAgICBpbWcsIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktb25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50aWxlLS1ob3ZlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0NXB4IDMwcHggNDVweCAzMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXR3bztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIHNwYW4udW5kZXJsaW5lIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGg0LCBwLCBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jYXJkLWxpbmsuZmF1eC1saW5rIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIC50aWxlLS13cmFwID4gYSAudGlsZS0taG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjcwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYudGV4dF9fYmcge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktb25lO1xuXHRcdHBhZGRpbmc6IDMycHggNDBweDtcblxuXHRcdGgxLCBoMiwgLnN1YmhlYWRpbmcsIHAge1xuXHRcdFx0Y29sb3I6ICRwcmltYXJ5LW9uZTtcblx0XHR9XG5cbiAgICAgICAgLnN1YmhlYWRpbmcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuXG5cdFx0aDIge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuXHRcdH1cblxuXHRcdC5idXR0b24tZ3JvdXAge1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHRcdFx0YTpub3QoLmJ1dHRvbikge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0Ly9mbGV4OiAxIDAgYXV0bztcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyAgIFxuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1vbmU7ICAgICBcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICRzZWNvbmRhcnktb25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkYnVsbGV0LWJsdWU7XG4gICAgICAgICAgICAgICAgfVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cdFx0fVxuXG4gICAgICAgIC5jbGVhcmZpeCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICAmLm5lZ2F0aXZlX19tYXJnaW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5oaWdobG9naHRfX3ZpZGVvX2J0biB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMHB4IDBweDtcblxuICAgICAgICB9XG5cblx0XHQmLmJnLW5vbmUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHRoMiwgcCB7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcblx0XHRcdH1cbiAgICAgICAgICAgIC5zdWJoZWFkaW5nIHtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuICAgICAgICAgICAgLmJ1dHRvbi1ncm91cCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgfVxuXHRcdH1cblxuXHRcdCYuYmctYmx1ZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS10aHJlZTtcblxuXHRcdFx0LnN1YmhlYWRpbmcsIGgyLCBwLCBhOm5vdCguYnV0dG9uKSB7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHR9XG5cdFx0fVxuXG4gICAgICAgICYuYmcteWVsbG93ICB7XG4gICAgICAgICAgICAuYnV0dG9uLWdyb3VwIHsgICAgXG4gICAgICAgICAgICAgICAgYTpub3QoLmJ1dHRvbikge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJHByaW1hcnktb25lO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGJ1bGxldC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuY2FyZF9fc2ltcGxlSGVhZGluZyB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIC5oZWFkaW5nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAuaDQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0byAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0byAwIGF1dG8gYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuY2FyZF9fc2ltcGxlSGVhZGluZ19mZWF0dXJlZCB7XG4gICAgICAgIC5oZWFkaW5nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgLmg0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG8gMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG8gMCBhdXRvIGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhcmRfX2ZlYXR1cmVkLCAmLmNhcmRfX3NpbXBsZUhlYWRpbmdfaW1nIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9jYXJkcy9jYXJkLWhlYWRpbmcucG5nKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICYuY2FyZF9fZmVhdHVyZWQge1xuICAgICAgICBtaW4taGVpZ2h0OiAyMzBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAgNXB4IDVweCAwcHggMHB4O1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgLmxpbmstYmxvY2sge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5jYXJkX19mZWF0dXJlZF9fdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNGMEYwRjA7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAgMHB4IDBweCA1cHggNXB4O1xuICAgICAgICB9XG4gICAgICAgIGEuaW5uZXItd3JhcCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAuY2FwdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgJi5sYXN0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgfVxuXG5cdFx0XHQmLmRhdGUsICYuYXV0aG9yIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRwYWRkaW5nOiAwIDEycHg7XG5cdFx0XHR9XG5cblx0XHRcdCYuZGF0ZSB7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdH1cblxuXHRcdFx0Ji5hdXRob3Ige1xuXHRcdFx0XHRmb250LWZhbWlseTpcIkF2ZW5pciBMVCBXMDFfODUgSGVhdnkxNDc1NTQ0XCI7XG5cdFx0XHR9XG5cblx0XHRcdCYuZGF0ZSArIC5hdXRob3Ige1xuXHRcdFx0XHRib3JkZXItbGVmdDogMXB4IHNvbGlkICRib3JkZXI7XG5cdFx0XHR9XG4gICAgICAgIH1cbiAgICAgICAgc3Bhbi5jYXB0aW9uIHtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgdG9wOiA2cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxOXB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2FydGljbGUtaWNvbkAyeC5wbmcpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTlweCAyMXB4O1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuY2FyZF9fYmx1ZSwgJi5jYXJkX19ncmV5IHtcbiAgICAgICAgLmNlbGw6bm90KC5jYXJkX19oZWFkaW5nX19pbm5lcikge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdHdvO1xuICAgICAgICAgICAgKjpub3QoYSkgIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktdGhyZWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAvL21hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNlbGwubGFyZ2Utb3JkZXItMSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOTBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmltZ19fZmVhdHVyZWQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC52ZXJ0aWNhbF9fYWxpZ24ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcC50ZXh0LWxpbmsge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS10aHJlZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5jYXJkX19ibHVlIHtcbiAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgLmJ1dHRvbi50ZXJ0aWFyeSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktdGhyZWU7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzZWNvbmRhcnktb25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idXR0b24uc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeS10aHJlZTtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktb25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmNhcmRfX2hhbHZlcyB7XG4gICAgICAgIC52ZXJ0aWNhbF9fYWxpZ24ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cbiAgICAgICAgLmhhbHZlc19sZWZ0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1ncmV5O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAvL2NvbG9yOiAkcHJpbWFyeS10d287XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuY2FyZF9fZ3JleSB7XG4gICAgICAgIC5jZWxsOm5vdCguY2FyZF9faGVhZGluZ19faW5uZXIpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1ncmV5O1xuICAgICAgICAgICAgKjpub3QoYSkgIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc3ViaGVhZGluZyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXR3bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmNhcmRfX3NpbXBsZUhlYWRpbmdfZmVhdHVyZWRIYWxmIHtcbiAgICAgICAgLmNhcmRfaW1nIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvY2FyZHMvY2FyZC1oZWFkaW5nLnBuZykgbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNhcmRfY29udGVudCB7XG4gICAgICAgICAgICAuaDUge1xuXG4gICAgICAgICAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvYXJyb3ctbmV4dEAyeC5wbmcpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEycHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhcmRfX3Byb2ZpbGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDBweCAyMHB4IDMwcHggMjBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMzBweCBhdXRvO1xuICAgICAgICAucHJvZmlsZV9pbWcge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcblx0XHRcdGhlaWdodDogMDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiA1MCU7XG4gICAgICAgICAgICBtYXJnaW46IDMwcHggYXV0bztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgLy8gaGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICB9XG4gICAgICAgIC5wcm9maWxlX2luZm8ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBzcGFuOmFmdGVyIHtcblx0XHRcdFx0Lypcblx0XHRcdFx0Ly8gUmVtb3ZlZCBkdWUgdG8gbG9uZyB0aXRsZSBjb25mbGljdHNcblxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9kb3duLWFycm93LnN2Zyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDEwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI5cHg7XG5cblx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bi1hcnJvdy5zdmcpO1xuXHRcdFx0XHRcdG1hc2stc2l6ZTogMTVweCAxMHB4O1xuXHRcdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0Ki9cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJvZmlsZV9saW5rIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRDdEN0Q3O1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMnB4IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5saXN0aW5nIHtcblx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICRwcmltYXJ5LW9uZTtcbiAgICAgICAgcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuXG4gICAgICAgICYucG9zdF9saXN0aW5ne1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA0MzI2MztcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjRkRDNDAwO1xuICAgICAgICAgICAgICAgIC5saXN0aW5nLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBiLCBhLCBzdW1tYXJ5LCBkaXYge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBhLmNhcmQge1xuICAgICAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHN1bW1hcnk6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Rvd24tYXJyb3cteWVsbG93LnN2Zyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLTEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi55ZWxsb3dfbGlzdGluZyB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ndWlkZWxpbmVfbGFiZWwge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgY29sb3I6ICRjYXB0aW9uLWdyZXk7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1vbmU7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnllYXIge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGFnc19sYWJlbCB7XG4gICAgICAgICAgICBjb2xvcjogJGNhcHRpb24tZ3JleTtcbiAgICAgICAgfVxuXHRcdFxuXHRcdC5saXN0aW5nLWNvbnRlbnQge1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0LnRhZ3Mge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxOHB4O1xuXHRcdFx0fVxuXG5cdFx0XHQuYXV0aG9ycywgLnB1Ymxpc2hlZC10eXBlLCAucHVibGlzaGVkLXllYXIge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5vdmVybGF5LWxpbmsge1xuXHRcdFx0fiAubGlzdGluZy1jb250ZW50IHtcblx0XHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnRyYW5zbGF0aW9ucyB7XG5cdFx0XHRib3JkZXItdG9wOiAycHggc29saWQgJGxpZ2h0LWdyYXk7XG5cdFx0XHRwYWRkaW5nLXRvcDogN3B4O1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IGFsbDtcblxuXHRcdFx0dWwge1xuXHRcdFx0XHRtYXJnaW46IDQ2cHggMCAwIDI2cHggIWltcG9ydGFudDtcblxuXHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0Y29udGVudDogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRzdW1tYXJ5IHtcblx0XHRcdFx0b3V0bGluZTogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0LmNhcmQge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRmbGV4OiAxIDAgYXV0bztcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0YmFja2dyb3VuZDogJGxpZ2h0ZXItZ3JheTtcblx0XHRcdFx0cGFkZGluZzogMThweCA2MHB4IDE4cHggMjBweDtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRwb2ludGVyLWV2ZW50czogYWxsO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XG5cblx0XHRcdFx0c3Bhbi5sYWJlbCB7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxNHB4O1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjI1cztcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5sYW5nIHtcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0aDUge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuMjVzO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pY29ucy9uZXctd2luZG93LWJsdWUuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgLyBjb250YWluO1xuXHRcdFx0XHRcdHdpZHRoOiAxOHB4O1xuXHRcdFx0XHRcdGhlaWdodDogMThweDtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0cmlnaHQ6IDIwcHg7XG5cdFx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG5cdFx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktb25lO1xuXHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL25ldy13aW5kb3ctYmx1ZS5zdmcpO1xuXHRcdFx0XHRcdFx0bWFzay1zaXplOiBjb250YWluO1xuXHRcdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmhvdmVyLCAmOmZvY3VzIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cblx0XHRcdFx0XHRzcGFuLmxhYmVsIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktb25lO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdGg1IHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaWNvbnMvbmV3LXdpbmRvdy15ZWxsb3cuc3ZnJyk7XG5cblx0XHRcdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9uZXctd2luZG93LXllbGxvdy5zdmcpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cbiAgICB9XG4gICAgJi5jYXJkX19ldmVudCB7XG4gICAgICAgIC50ZXh0X193cmFwcGVyIHtcbiAgICAgICAgICAgIC5kYXRlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNhdGVnb3J5IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNhcHRpb24tZ3JleTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAmLmxvY2F0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxOXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE5cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2dsb2JlLWljb25AMngucG5nKSBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE5cHggMTlweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuY29sLS1maXJzdCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idXR0b25fX3dyYXAge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHggYXV0bzsgLy8gQ2xpZW50IGZlZWRiYWNrXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5jYXJkX19ldmVudF9zaW1wbGUge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTEwcHg7XG4gICAgICAgICAgICAuY29sLS1maXJzdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgLmRhdGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5jYXJkX19ldmVudF9pbWFnZSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxNTBweDtcbiAgICAgICAgICAgIC5ldmVudF9pbWdfYmcge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhcmRfX2RldGFpbHMge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIC8vIHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG4gICAgICAgIC8vIHBhZGRpbmc6IDM2cHggNDZweDtcbiAgICAgICAgcGFkZGluZzogMThweCAyNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFiLWNvbG91cjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgJi5oYXMtbGluayB7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodGVzdC1ncmF5O1xuICAgICAgICAgICAgICAgICAgICBoNCwgaDUsIHAsIGFbaHJlZl49XCJtYWlsdG86XCJdLCBhW2hyZWZePVwidGVsOlwiXSwgbGksIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkX19kZXRhaWxzX2xpbmsge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhhcy1saW5rIHtcbiAgICAgICAgICAgIGg0LCBoNSwgcCwgYVtocmVmXj1cIm1haWx0bzpcIl0sIGFbaHJlZl49XCJ0ZWw6XCJdLCBsaSwgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRleHRfX3dyYXBwZXIge1xuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zdWJoZWFkaW5nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRhdGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY2FwdGlvbi1ncmV5O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICYubG9jYXRpb24ge1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE5cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTlweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvZ2xvYmUtaWNvbkAyeC5wbmcpIG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTlweCAxOXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNhcmRfX2RldGFpbHNfY29udGFjdHMge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwcHg7XG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuY29sLS1maXJzdCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGJ1bGxldC1ibHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhLnNpbXBsZV9saW5rIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b25fX3dyYXAge1xuICAgICAgICAgICAgLy9kaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgLy9hbGlnbi1pdGVtczogYmFzZWxpbmU7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAyMHB4IGF1dG87IC8vIENsaWVudCBmZWVkYmFja1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnRfX3dyYXAge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIC8vIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmLm1lZGl1bS02IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7IC8vIDQwcHggMjBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuY2FyZF9fZGV0YWlsc19zaW1wbGUge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICRzZWNvbmRhcnktb25lO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5jYXJkX19kZXRhaWxzX3NpbmdsZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICAgICAgLmNvbC0tZmlyc3Qge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5idXR0b24udGFnIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDIwcHggNXB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5kYXRlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5jYXJkX19kZXRhaWxzX3NvY2lldHkge1xuICAgICAgICAgICAgcGFkZGluZzogNTBweCAyMHB4IDIwcHggMjBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIC5idXR0b24udGFnLm5vX2xpbmsge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDsgXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lOyAgICAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29udGVudF9fd3JhcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ1dHRvbl9fd3JhcCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweCAyMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5jYXJkX19kZXRhaWxzX3NjaWVuY2Uge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xuICAgICAgICAgICAgLm9yZ2FuaXplciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ1dHRvbl9fd3JhcCB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvc2NpZW5jZV9iYXJyb3cuc3ZnKSBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHRcdFx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9zY2llbmNlX2JhcnJvdy5zdmcpO1xuXHRcdFx0XHRcdFx0XHRtYXNrLXNpemU6IDE1cHggMTVweDtcblx0XHRcdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuY2FyZF9fZGV0YWlsc190YWcge1xuICAgICAgICAgICAgcGFkZGluZzogNDZweCAyNHB4IDE4cHggMjRweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50YWcubm9fbGluayB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAyNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdGhyZWU7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMjc1ZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExUIFcwMV81NSBSb21hbjE0NzU1MjBcIjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIC8qIG1hcmdpbi10b3A6IC0xOHB4OyAqL1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cblx0XHQvLyBAbWVkaWEgcHJpbnQge1xuXHRcdFx0XG5cdFx0Ly8gfVxuICAgIH1cblxuICAgICYuY2FyZF9fdGVhbSB7XG4gICAgICAgIC5pbWdfX3dyYXBwZXIge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGV4dF9fd3JhcHBlciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMTAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM3NjcxNzUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uX19zaW1wbGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhcmRfX3RlYW1faW1nIHtcbiAgICAgICAgLmltZ19fd3JhcHBlciB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIC50ZXh0X193cmFwcGVyIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggNDBweDtcbiAgICAgICAgICAgIC5oNiwgaDYge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS10d287XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhcmRfX2ltZ19kZXRhaWxzIHtcbiAgICAgICAgLmltYWdlX193cmFwcGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgcGFkZGluZzogMjAwcHggMjBweCAyMHB4IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmLmNhcmRfX2FjY29yZGlhbi1uZXh0IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cblxuICAgICYuY2FyZF9kb3dubG9hZF9saXN0IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgIC8vIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuXG5cdFx0LmRvd25sb2FkX2xpc3QsIC5ub3JtYWxfbGlzdCB7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcblxuXHRcdFx0bGkge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggNTBweCAxNXB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdFx0XHQgICAgZm9udC1mYW1pbHk6XCJBdmVuaXIgTFQgVzAxXzg1IEhlYXZ5MTQ3NTU0NFwiO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodGVyLWdyYXk7XG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cblx0XHRcdFx0XHQmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG4gICAgICAgIC5kb3dubG9hZF9saXN0IHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bmxvYWQtaWNvbi5zdmcpO1xuXG5cdFx0XHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd25sb2FkLWljb24uc3ZnKTtcblx0XHRcdFx0XHRcdFx0bWFzay1zaXplOiAyMHB4IDE4cHg7XG5cdFx0XHRcdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdFx0XHR9XG4gICAgICAgICAgICAgICAgICAgIH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaWNvbnMvZG93bmxvYWQtaWNvbi15ZWxsb3cuc3ZnKTtcblxuXHRcdFx0XHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Rvd25sb2FkLWljb24teWVsbG93LnN2Zyk7XG5cdFx0XHRcdFx0XHRcdFx0bWFzay1zaXplOiAyMHB4IDE4cHg7XG5cdFx0XHRcdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm5vcm1hbF9saXN0IHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaWNvbnMvZXh0ZXJuYWwtbGluay1pY29uLWJsdWUuc3ZnKTtcblxuXHRcdFx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9leHRlcm5hbC1saW5rLWljb24tYmx1ZS5zdmcpO1xuXHRcdFx0XHRcdFx0XHRtYXNrLXNpemU6IDExcHggMTFweDtcblx0XHRcdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ljb25zL2V4dGVybmFsLWxpbmstaWNvbi15ZWxsb3cuc3ZnKTtcblxuXHRcdFx0XHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2V4dGVybmFsLWxpbmstaWNvbi15ZWxsb3cuc3ZnKTtcblx0XHRcdFx0XHRcdFx0XHRtYXNrLXNpemU6IDExcHggMTFweDtcblx0XHRcdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmNhcmRfc3VnZ2VzdGVkIHtcbiAgICAgICAgLmltYWdlX193cmFwcGVyIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmZlYXR1cmVkX2NhcmQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnByb21vX2NhcmRfZnVsbCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICAgICAgICAmLnByb21vX2NhcmRfZnVsbF9pbWcge1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxpc3Rpbmdfbm9fcG9zdF9tc2cge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgIH1cbn1cblxuLmNhcmRfdGFibGUge1xuICAgIHRhYmxlIHtcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgICAgdHIge1xuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Q3RDdENztcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNhcmRfZmVhdHVyZWQge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkICRsaWdodGVyLWdyYXk7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuZ3JpZC14IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLmZlYXR1cmVkX2ltZyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvY2FyZHMvY2FyZC1oZWFkaW5nLnBuZykgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7XG4gICAgICAgIC8vIGJhY2tncm91bmQtc2l6ZTogY29udGFpbiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXHRcdG1pbi1oZWlnaHQ6IDEzMHB4O1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxNTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuXHQudGFnIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiA1cHggN3B4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuMjc1ZW07XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRmb250LWZhbWlseTpcIkF2ZW5pciBMVCBXMDFfNTUgUm9tYW4xNDc1NTIwXCI7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxMik7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG5cbiAgICAuZmVhdHVyZWRfdGV4dCB7XG4gICAgICAgIHBhZGRpbmc6IDRweCAxNnB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcblxuICAgICAgICBoMy5oNSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuXHRcdFx0XHQvKlxuXHRcdFx0XHQvLyBSZW1vdmVkIGR1ZSB0byBsb25nIHRpdGxlIGNvbmZsaWN0c1xuXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi1ibHVlLnN2Zyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA5cHggMTNweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogOXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvYXJyb3ctYnRuLWJsdWUuc3ZnKTtcblx0XHRcdFx0XHRtYXNrLXNpemU6IDlweCAxM3B4O1xuXHRcdFx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0Ki9cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG5cdFx0fVxuXG5cdFx0Ji5jYXJkX19zbWFsbCB7XG5cdFx0XHRhIHtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICAuZmVhdHVyZWRfdGV4dCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cbiAgICAgICAgICAgIC5zdWJoZWFkaW5nLCAuY2FwdGlvbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSAuaDUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcblxuXHRcdFx0XHRcdC8qXG5cdFx0XHRcdFx0Ly8gUmVtb3ZlZCBkdWUgdG8gbG9uZyB0aXRsZSBjb25mbGljdHNcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnKTtcblxuXHRcdFx0XHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRzZWNvbmRhcnktb25lO1xuXHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL2Fycm93LWJ0bi15ZWxsb3cuc3ZnKTtcblx0XHRcdFx0XHRcdG1hc2stc2l6ZTogOXB4IDEzcHg7XG5cdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQqL1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNhcmRfX2NhbGxvdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXR3bztcbiAgICAuY2FyZCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdHdvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cdFx0cGFkZGluZzogNTBweCAwO1xuXHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0cGFkZGluZzogNzBweCAwO1xuXHRcdH1cblxuICAgICAgICBoMiwgLmgyLCBoNCwgLmg0IHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyM3B4O1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7IFxuICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5mdWxsX3RleHQge1xuICAgICAgICAuY2FyZCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgfVxuXG5cdCYuc2Vjb25kYXJ5IHtcblx0XHQuY2FyZCB7XG5cdFx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1vbmU7XG5cblx0XHRcdGgyLCAuaDIsIGg0LCAuaDQge1xuXHRcdFx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uY2FyZF9fZmFtZSB7XG4gICAgLmNlbGwuc2luZ2xlX19mYW1lIHtcbiAgICAgICAgcGFkZGluZzogNDBweCAyMHB4IDMwcHggMjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgaDUsIGg2IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgaDYge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXR3bztcbiAgICAgICAgfVxuICAgICAgICBociB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmdfX2ltZyB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBwYWRkaW5nLXRvcDogNzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcbiAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gICAgXG4gICAgfVxuXG4gICAgJi5hbHQge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICAmLmhlcm9fX2Nhcm91c2VsIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgaDEsIGgyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoMSwgaDIsIGgyIHNwYW4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXHQuYnV0dG9uLWdyb3VwIHtcblx0XHQuYnV0dG9uIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMjZweDtcblx0XHR9XG5cdH1cblxuICAgICYuYmdfX2hlcm8ge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ2MHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdFx0aDEge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjIpO1xuXHRcdH1cblxuICAgICAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXHRcdGE6bm90KC5idXR0b24pIHtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkc2Vjb25kYXJ5LW9uZTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiA0cHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICM2NDlBREI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0bWFyZ2luOiAwIDYwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXG4gICAgICAgICYuYmdfX2hlcm9faG9tZSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMjA4cHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzZweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogNjRweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTQ4cHg7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jYXJkX19wcmV2aWV3IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9vdG5vdGVzX2NhcmQge1xuICAgIG1hcmdpbjogMS41cmVtIC43NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgI0I5QjlCOTtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMHJlbTtcbiAgICB9XG5cbn1cblxuLm1vcmVfbmV3cyB7XG4gICAgYmFja2dyb3VuZDogJGJnLWdyZXk7XG4gICAgcGFkZGluZzogMThweCAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cdGEsIHAsIC5zaG93IHtcblx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdHRyYW5zaXRpb246IGNvbG9yIDAuMjVzO1xuXHR9XG4gICAgcCB7XG5cdFx0bWFyZ2luOiAxLjdyZW0gMCAyLjVyZW07XG4gICAgICAgIGNvbG9yOiAkZGFya2VyLWdyYXk7XG5cdH1cbiAgICBzcGFuLmZhdXgtbGluayB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBmb250LWZhbWlseTpcIkF2ZW5pciBMVCBXMDFfNjUgTWVkaXVtMTQ3NTUzMlwiO1xuICAgICAgICAvLyBmb250LXdlaWdodDogYm9sZGVyO1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRjb2xvcjogJHNlY29uZGFyeS1vbmU7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XG5cdFx0fVxuICAgIH1cblxuICAgIGg0LnNob3cge1xuICAgICAgICBmb250LXNpemU6IDIzcHg7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cblx0XHRhLCBwLCAuc2hvdyB7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdH1cbiAgICB9XG59XG5cbi5uZXdzX2F1dGhvcl9pbmZvIHtcbiAgICAuaW1nX3dyYXBwZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBtYXJnaW46IDBweCBhdXRvIDIwcHggYXV0bztcbiAgICB9XG59IFxuXG4uaGVhZGluZ19fdGVhbSB7XG4gICAgaDMge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbn1cblxuLmNhcmRfX3ZvdGluZ19zdGF0IHtcbiAgICBwYWRkaW5nOiAyMHB4IDQwcHg7XG4gICAgcCwgaDIsIGg0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwcHggMHB4IDBweDtcbiAgICB9XG59XG5cbi5jYXJkX19wb3B1cCB7XG4gICAgcGFkZGluZzogJGNhcmQtcGFkZGluZztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRUZFREUxO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAmLmluZm9jYXJkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIC5pbmZvY2FyZC1jb250ZW50IHtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyOCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYucG9wdXBfY2hlY2sge1xuICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjMjFBNjdBO1xuICAgIH1cbiAgICAmLnBvcHVwX2luZm8ge1xuICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjMEY1ODlBO1xuICAgIH1cbiAgICAmLnBvcHVwX3dhcm5pbmcge1xuICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjQ0UwMDNBO1xuICAgIH1cbiAgICAucG9wdXBfY2xvc2Uge1xuICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pY29ucy9jbG9zZS1wb3B1cC5zdmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDtcbiAgICAgICAgcmlnaHQ6IDMwcHg7XG5cblx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRtYXNrLWltYWdlOiB1cmwoLi4vaWNvbnMvY2xvc2UtcG9wdXAuc3ZnKTtcblx0XHRcdG1hc2stc2l6ZTogMTVweCAxNXB4O1xuXHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHR9XG4gICAgfVxuICAgIC5wb3B1cC1pY29uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIC5pY29uX2NoZWNrIHtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG8gMTBweCBhdXRvIDA7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3BvcHVwLWNoZWNrLnN2Zyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHggMzBweDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAuaWNvbl9pbmZvIHtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG8gMTBweCBhdXRvIDA7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3BvcHVwLWluZm8uc3ZnKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweCAzMHB4O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5pY29uX3dhcm5pbmcge1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogYXV0byAxMHB4IGF1dG8gMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvcG9wdXAtd2FybmluZy5zdmcpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDMwcHg7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnBvcHVwLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2FyZF9fY2Fyb3VzZWwge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBpbml0aWFsO1xuICAgIH1cbiAgIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG5cbiAgICAgICAub3dsLWl0ZW0ge1xuICAgICAgICAgICAgLmNhcm91c2VsX3RleHQge1xuICAgICAgICAgICAgICAgIC8vcGFkZGluZzogMzBweCAyMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDYwcHggMjBweCAwIDIwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY2Fyb3VzZWxfaW1nIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOyAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgIH1cbiAgIH0gXG4gICAub3dsLWRvdHMge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC01MHB4O1xuICAgICAgICAub3dsLWRvdCB7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY2FwdGlvbi1ncmV5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktb25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmx1ZV9fYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXR3bzsgXG59XG4uZXZlbnRzX25hdl9yZWdpc3RlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdHdvOyBcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIC5jYXJkIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luOiBhdXRvOyBcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjJlbSAxZW07XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZXZlbnRzX25hdl9saW5rcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjIyMjsgXG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICBwYWRkaW5nOiAxLjJlbSAxZW07XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwcHggMHB4IDVweCAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmV2ZW50c19oZWFkaW5nX2xpbmtzIHtcbiAgICBtYXJnaW46IDMwcHggMHB4O1xuICAgIC5ldmVudHNfaGVhZGluZ19saW5rIHtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG59XG5cbi5mZWF0aGVybGlnaHQge1xuICAgIC5mZWF0aGVybGlnaHQtY29udGVudCB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDk1JTtcbiAgICAgICAgbWluLWhlaWdodDogODAlO1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAuZmVhdGhlcmxpZ2h0LWlubmVyIHtcbiAgICAgICAgICAgIGhlaWdodDogOTUlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDk1JTtcbiAgICAgICAgICAgIC52aWRlby1ib3gge1xuICAgICAgICAgICAgICAgIGhlaWdodDogOTUlO1xuICAgICAgICAgICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZHluYW1pYy1tb2R1bGUge1xuICAgIC5vdmVybGF5LWxpbmsge1xuICAgICAgICB6LWluZGV4OiA5ODk7XG4gICAgfVxuICAgIC5jZWxsIHtcbiAgICAgICAgLmltYWdlX19wcmV2aWV3IGltZ3tcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cbiAgICAgICAgJi5pbWFnZS13cmFwIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAuZmVhdHVyZWRfaW1nIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuZmVhdHVyZWRfdGV4dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvKiBWZXJ0aWNhbCBhbGlnbm1lbnQgKi9cbiAgICAgICAgICAgIGhlaWdodDogMTAwJTsgLyogT3B0aW9uYWwsIGRlcGVuZHMgb24gcGFyZW50IGNvbnRleHQgKi9cbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDk5MDtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5mZWF0dXJlZF9pbWcge1xuICAgICAgICAgICAgICAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4xKTtcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICAgICAgICAgICAgIC8vb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbWFnZV9fcHJldmlldyB7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4xKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTaW5nbGUgQ2FyZFxuICAgIC5sYXJnZS0xMCB7XG4gICAgICAgIC5jZWxsLnNtYWxsLTUuaW1hZ2Utd3JhcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsLW9ubHkpIHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAvL21pbi1oZWlnaHQ6IDQwMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBNaWNyb3NpdGUgT3ZlcnJpZGVzXG5ib2R5Lm1pY3Jvc2l0ZSB7XG4gICAgJi5saWdodC1icmFuZC1jb2xvdXJzIHtcbiAgICAgICAgLmNhcmQuY2FyZF9fcHJldmlldyB7XG4gICAgICAgICAgICAudGV4dF9fd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgaDUsIHAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuZGFyay1icmFuZC1jb2xvdXJzIHtcbiAgICAgICAgLmNhcmQuY2FyZF9fcHJldmlldyB7XG4gICAgICAgICAgICAudGV4dF9fd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgaDUsIHAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLnRleHRfX3dyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICBoNSwgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuY2Fyb3VzZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1ncmV5ICFpbXBvcnRhbnQ7XG5cbn1cblxuLm93bC1jYXJvdXNlbCB7XG4gICAgLm93bC1zdGFnZS1vdXRlciB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgLm93bC1zdGFnZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgLy9oZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAvL21heC1oZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNDYwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRjYXB0aW9uLWdyZXk7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRwcmltYXJ5LW9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5maWx0ZXJzIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRjb2xvcjogJHdoaXRlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS10aHJlZTtcblx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdG1hcmdpbi10b3A6IC02MHB4O1xuXHRwYWRkaW5nOiAwICRnbG9iYWwtcGFkZGluZztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTVweCk7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcblx0XHRtYXJnaW4tdG9wOiAtODBweDtcblx0fVxuXG5cdHNlbGVjdCB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRib3JkZXItY29sb3I6ICR3aGl0ZTtcblx0XHRtYXJnaW46IDMwcHggMDtcblx0XHRtYXgtd2lkdGg6IDI4NXB4O1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaWNvbnMvZG93bi1hcnJvdy13aGl0ZS5zdmcnKTtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCAxMHB4O1xuXHRcdGJhY2tncm91bmQtc2l6ZTogMTRweCA3cHg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdGhyZWU7XG5cblx0XHRvcHRpb24ge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdGhyZWU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdG1heC13aWR0aDogMzA1cHg7XG5cdFx0fVxuXHR9XG5cdFxuXHQmOmVtcHR5IHtcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdH1cblxuXHQuc21hbGwtdHdvLXVwICYge1xuXHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRtYXJnaW4tdG9wOiAtNTBweDtcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHR9XG59XG4iLCIvKipcbiAqIEhlcm9cbiAqL1xuIFxuLmhlcm9fX2Jhbm5lciB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgfVxuIFxufVxuXG4udGllcl9vbmUge1xuXHQudGV4dF9fYmcge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcblxuXHRcdGgxLCBoMiwgLnN1YmhlYWRpbmcsIHAsIGE6bm90KC5idXR0b24pIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgYS5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGE6b25seS1vZi10eXBlIHtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICB9XG5cdH1cbn1cblxuLm92ZXJsYXBfX21hcmdpbiB7XG4gICAgLmNhcmQuY2FyZF9fcHJldmlldyB7XG4gICAgICAgIC5jYXJkLWxpbmsge1xuICAgICAgICAgICAgLnRleHRfX3dyYXBwZXIge1xuICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRpZXJfdHdvIHtcblx0Lmhlcm9fX2Jhbm5lciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktb25lO1xuICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xuICAgICAgICB9XG5cdH1cblxuXHQuaGVyb19fb2Zmc2V0IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRlci1ncmF5O1xuXG5cdFx0aDEsIC5oMSwgaDIsIC5oMiB7XG5cdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdH1cblx0fVxufVxuXG4udGllcl90aHJlZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTkwcHggIWltcG9ydGFudDtcbiAgICB9XG5cdC5jYXJkIHtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuXHRcdHBhZGRpbmc6IDI4cHggMjRweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG5cdH1cbn1cblxuLnRpZXJfb25lLCAudGllcl90d28sIC5oZXJvLWV2ZW50IHtcblx0LmNhcmQge1xuICAgICAgICBwYWRkaW5nOiAzMnB4IDIwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMnB4IDQwcHg7XG4gICAgICAgIH1cblx0fVxufVxuXG4udGllcl9vbmUsIC50aWVyX3R3bywgLnRpZXJfdGhyZWUge1xuXHRwIHtcblx0XHRmb250LWZhbWlseTogJ0F2ZW5pciBMVCBXMDFfNTUgUm9tYW4xNDc1NTIwJztcblx0XHRtYXJnaW4tYm90dG9tOiAycmVtO1xuXHR9XG59XG5cbi50aWVyX3R3bywgLnRpZXJfdGhyZWUge1xuICAgIHAsIC5sYXJnZV9pbnRybyBzcGFuIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcblx0XHRsaW5lLWhlaWdodDogcmVtLWNhbGMoMjgpO1xuXHRcdGxldHRlci1zcGFjaW5nOiAwO1xuXHRcdGNvbG9yOiAkcHJpbWFyeS1vbmU7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMCk7IC8vIFRoaXMgd2FzIHByZXZpb3VzbHkgMjRcblx0XHRcdGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMCk7XG5cdFx0fVxuICAgIH1cbn1cblxuLmhlcm8tZXZlbnQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRlc3QtZ3JheTtcblx0cGFkZGluZy1ib3R0b206IDQycHg7XG5cblx0LnNoYXJlIHtcblx0XHRtYXJnaW46IDIzcHggMDtcblx0fVxuXG5cdC5jb250ZW50IHtcblx0XHQuY2VsbCB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXG5cdFx0LmNvbnRlbnQtdGV4dCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuXHRcdFx0Lmhlcm9fX2J1dHRvbl9fd3JhcCB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgICAgIH1cblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG5cdFx0XHRcdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uaGVyb19fb2Zmc2V0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTAwO1xuXHRtYXJnaW4tdG9wOiAtMjAwcHg7XG4gICAgbWluLWhlaWdodDogMjcwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTI1MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yMDBweDtcbiAgICB9XG59XG5cbi5oZXJvX3RpZXIzX2xhcmdlIHtcblx0bWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuLmhlcm9fdGllcjNfaW1nIHtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi5oZWFkZXI0X3YyIHtcbiAgICAuY2FwdGlvbiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblx0XHRjb2xvcjogJHByaW1hcnktb25lOyBcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgJi5kYXRlOmJlZm9yZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cblx0aW1nIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHR9XG59XG5cblxuLmhlcm9fX21lZGlhIHtcbiAgICBwYWRkaW5nOiAxMDBweCAwcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9wbGFjZWhvbGRlci5qcGcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnlvdXR1YmVfX2J0biB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5saWdodGJveCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTsgXG4gICAgICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgIC5saWdodGJveC1jb250YWluZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA5NjBweDtcbiAgICAgICAgICAgIG1hcmdpbjogNyUgYXV0bztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyAgICBcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMyU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcblxuICAgICAgICAgICAgLmxpZ2h0Ym94LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDZweCByZ2JhKDAsIDAsIDAsIDAuNyk7XG5cbiAgICAgICAgICAgICAgICAubGlnaHRib3gtY2xvc2Uge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyAgICBcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7ICAgICAgXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC0yMnB4O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMyU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnZpZGVvLWNvbnRhaW5lciB7ICBcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAgXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzMHB4OyBcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwOyBcblxuICAgICAgICAgICAgICAgICAgICAmIGlmcmFtZSwgJiBvYmplY3QsICYgZW1iZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOyAgXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaGVyb19uZXdzX3ZlcnNpb24ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxuICAgIC5oZWFkaW5nX25ld3Mge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgcHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAubmV3c190YWdzIHtcbiAgICAgICAgLmNlbGx7XG4gICAgICAgICAgICBtYXJnaW46IDBweCAxMHB4IDIwcHggMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0QjdFO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm5ld3Nfc3VwcG9ydGVycyB7XG4gICAgICAgIC5ncmlkLXgge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweCA1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwcHggMHB4IDEwcHggMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaGVyb190aWVyNV9sYXJnZSB7XG4gICAgLmhlcm9fdGV4dF9hcmVhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAuaGVyb190aXRsZV9hcmVhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCA1MHB4O1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zdWJoZWFkaW5nIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI0Q3RDdENztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaGVyb19pbmZvX2FyZWEge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCA1MHB4IDUwcHggNTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNEN0Q3RDc7XG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL2Nsb2NrLWJsdWUucG5nKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaGVyb19kYXRhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmhlcm9fdGh1bWJuYWlsIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIH1cbn1cblxuLmZhY3RzaGVldF9iYW5uZXJfY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC5wcmludF9idG4ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjVweDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwRjU4OUE7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTJweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgfVxuICAgICAgICAmLlRvY19wcmludCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgfSBcbiAgICAgICAgfVxuICAgICAgICBpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LW9uZTtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LW9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5mYWN0c2hlZXRfaGVyb19jb250ZW50IHtcblx0cGFkZGluZy1sZWZ0OiAoJGdsb2JhbC1wYWRkaW5nICsgNDBweCkgIWltcG9ydGFudDtcblx0cGFkZGluZy1yaWdodDogKCRnbG9iYWwtcGFkZGluZyArIDQwcHgpICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgIH0gXG59XG4iLCIvLyBPdmVycmlkZSBkZWZhdWx0c1xuLmZlYXRoZXJsaWdodCB7XG4gICAgLmZlYXRoZXJsaWdodC1jbG9zZS1pY29uIHtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDQwcHggMjBweCAwO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICAgIH1cbn0gXG5cbi8vIEN1c3RvbSAtIERlY2xhcmF0aW9uIG9mIEludGVyZXN0c1xuLmRlY2xhcmF0aW9uSW50ZXJlc3RzLCAudmlkZW9fbGlnaHRib3gge1xuICAgIGRpc3BsYXk6IG5vbmU7IC8vIEhpZGUgYnkgZGVmYXVsdFxuICAgIC5kZWNsYXJhdGlvbkhlYWRlciwgLnZpZGVvLWJveCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgfVxuICAgIHRhYmxlIHtcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNhcHRpb24tZ3JleTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNhcHRpb24tZ3JleTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIjbWFwIHtcblx0aGVpZ2h0OiA1MzBweDtcblxuXHRidXR0b24ge1xuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuLm1hcC13cmFwIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdC5jYWxsb3V0LS1jb250YWN0IHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0Ym90dG9tOiAzNnB4O1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdGJvdHRvbTogYXV0bztcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0fVxuXG5cdFx0LmNlbGwge1xuXHRcdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdFx0cGFkZGluZzogNDBweDtcblx0XHR9XG5cblx0XHRhZGRyZXNzIHtcblx0XHRcdGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMVCBXMDFfNTUgUm9tYW4xNDc1NTIwXCI7XG5cdFx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0XHRjb2xvcjogJHByaW1hcnktb25lO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjhweDtcblx0XHR9XG5cdH1cbn1cbiIsIi8qKlxuICogU0VDVElPTiBcbiAqL1xuXG5zZWN0aW9uIHtcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdG1hcmdpbi1ib3R0b206IDUwcHg7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogODBweDtcblx0fVxuXG5cdCYuc2VjdGlvbi1jb2xsYXBzZSB7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG5cblx0Ji5zZWN0aW9uLXNpZGViYXIge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdH1cblxuXHQmLnNlY3Rpb24tcHVsbHVwIHtcblx0XHRtYXJnaW4tdG9wOiAtMzBweDtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAtNTBweDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAtODBweDtcblx0XHR9XG5cdH1cblxuXHQmLmdyZXlCZyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWdyZXk7XG5cdFx0LmdyaWQtY29udGFpbmVyIHtcblx0XHRcdC8vIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuXHRcdFx0cGFkZGluZy10b3A6IDQwcHg7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogNDBweDtcblxuXHRcdFx0Ji5wdXNoZG93bi13cmFwIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWdyZXk7XG5cdFx0XHRcdC5hY2NvcmRpb25fX2NhcmQsIC5hY2NvcmRpb24tY29udGVudCB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWdyZXk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdCYudHJhbnNwYXJlbnQge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0LmdyaWQteCB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdGhyZWU7XG5cdFx0XHRcdFx0Ji50cmFuc3BhcmVudCB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LmdyaWQteDpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0LmNlbGwge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LXRocmVlO1xuXHRcdFx0XHRcdCYudHJhbnNwYXJlbnQge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCYuaW5uZXIge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCYubWVkaXVtLTUge1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMjBweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0Ji53cmFwcGVyIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdFx0LmJ1dHRvbl9faGFsZmhhbGYge1xuXHRcdFx0XHRcdFx0XHQuYnV0dG9uX19zaW1wbGUge1xuXHRcdFx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktdGhyZWU7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdC5jZWxsLmNhcmRfX2hlYWRpbmdfX2lubmVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LmNhcmQuY2FyZF9fc2ltcGxlIHtcblx0XHRcdFx0cGFkZGluZzogMjBweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdH1cblxuXHQmLmFjY29yZGlvbkJnIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZ3JleTtcblx0XHQuYWNjb3JkaW9uLCAuYWNjb3JkaW9uLWNvbnRlbnQge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJnLWdyZXk7XG5cdFx0fVxuXHR9XG5cblx0Ji5saXN0aW5ncyB7XG5cdFx0YmFja2dyb3VuZDogJGxpZ2h0ZXN0LWdyYXk7XG5cdFx0cGFkZGluZy1ib3R0b206IDQwcHg7XG5cblx0XHQmLmhhcy1oZWFkaW5nIHtcblx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cblx0XHRcdC5saXN0aW5nIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0ZXN0LWdyYXk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5zdG9yaWVzIHtcblx0XHRcdHBhZGRpbmctdG9wOiA0MHB4O1xuXHRcdH1cblxuXHRcdCYucmlzay1mYWN0b3JzIHtcblx0XHRcdG1hcmdpbi10b3A6IC04MHB4O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogNzBweDtcblx0XHRcdHBhZGRpbmctdG9wOiA0MHB4O1xuXHRcdH1cblxuXHR9XG5cblx0Ji5mb3JtIHtcblx0XHRiYWNrZ3JvdW5kOiAkbGlnaHRlci1ncmF5O1xuXHRcdHBhZGRpbmc6IDQwcHggMDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHBhZGRpbmc6IDgwcHggMDtcblx0XHR9XG5cdH1cblxuXHQmLm1iMCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMHB4O1xuXHR9XG5cdFxufVxuXG5AbWVkaWEgcHJpbnQge1xuXHQuZmFjdHNoZWV0LWNvbnRlbnQsIC5jYXJkLmNhcmRfX2hlYWRpbmcge1xuXHRcdC5tZWRpdW0tOCwgLmhlYWRpbmcubWVkaXVtLTgsIC5jYXJkX19kZXRhaWxzIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bGVmdDogMCU7XG5cdFx0fVxuXHR9XG5cdC5mYWN0c2hlZXQtY29udGVudCB7XG5cdFx0LmNhcmRfX2RldGFpbHMge1xuXHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRcdGxlZnQ6IDAlICFpbXBvcnRhbnQ7XG5cdFx0XHQuYnV0dG9uIHtcblx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuZmFjdHNoZWV0X2hlcm9fY29udGVudCB7XG5cdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHRoZWlnaHQ6IDQ1dmg7XG5cdH1cblxuXHQuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50LCAuZHJvcGRvd25fX3RhYmxlb2Zjb250ZW50X21vYmlsZSwgI2Nvb2tpZS1sYXctaW5mby1hZ2FpbiB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblxuXHQuZmFjdHNoZWV0X2Jhbm5lcl9jb250YWluZXIge1xuXHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdFx0aGVpZ2h0OiA0NXZoO1xuXHR9XG5cblx0LmNhcmRfX2ZlYXR1cmVkX190ZXh0LCAuY2FyZF9fZmVhdHVyZWQge1xuXHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdH1cbn1cbiIsIi8qKlxuICogU0hBUkVcbiAqL1xuIFxuLnNoYXJlIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICAuc2hhcmUtLXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICB1bC5zb2NpYWwtLWxpc3Qge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdFx0XHR3aWR0aDogMjJweDtcblx0XHRcdGhlaWdodDogMjJweDtcblx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblxuXHRcdFx0YSB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRcdH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qKlxuICogVklERU9cbiAqL1xuIFxuLnZpZGVvIHtcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCAuaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgJi52aWRlb19fZW1iZWQge1xuICAgICAgICAudmlkZW9fX3dyYXBwZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgLyogMTY6OSAqL1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICAgICAgfVxuICAgICAgICAudmlkZW9fX3dyYXBwZXIgaWZyYW1lIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAudmlkZW9fX2ljb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3ZpZGVvLXBsYXllci1pY29uLnN2Zykgbm8tcmVwZWF0IGxlZnQgY2VudGVyIC8gMjhweCAxN3B4O1xuICAgICAgICAgICAgbWluLWhlaWdodDogMThweDtcblxuXHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1vbmU7XG5cdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy92aWRlby1wbGF5ZXItaWNvbi5zdmcpO1xuXHRcdFx0XHRtYXNrLXNpemU6IDI4cHggMTdweDtcblx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdH1cblxuICAgICAgICAgICAgJi5zb3VuZGNsb3VkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvc291bmRjbG91ZC1wbGF5ZXItaWNvbi5zdmcpIG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDM0cHggMjdweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMzRweDtcblxuXHRcdFx0XHRAc3VwcG9ydHMobWFzay1pbWFnZTogdXJsKFwiXCIpKSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktb25lO1xuXHRcdFx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy9zb3VuZGNsb3VkLXBsYXllci1pY29uLnN2Zyk7XG5cdFx0XHRcdFx0bWFzay1zaXplOiAzNHB4IDI3cHg7XG5cdFx0XHRcdFx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHRtYXNrLXBvc2l0aW9uOiBjZW50ZXIgMzRweDtcblx0XHRcdFx0fVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC52aWRlby10ZXh0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuICAgICAgICAudmlkZW9fX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cbiAgICAgICAgLnZpZGVvX19pbmZvIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNzY3MTc1O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmLnZpZGVvX190aW1lIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE1cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjFweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIxcHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ljb25zL3RpbWUtaWNvbi5zdmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlciAvIDIxcHggMjFweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdFx0XHRcdFx0QHN1cHBvcnRzKG1hc2staW1hZ2U6IHVybChcIlwiKSkge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJHByaW1hcnktb25lO1xuXHRcdFx0XHRcdFx0bWFzay1pbWFnZTogdXJsKC4uL2ljb25zL3RpbWUtaWNvbi5zdmcpO1xuXHRcdFx0XHRcdFx0bWFzay1zaXplOiAyMXB4IDIxcHg7XG5cdFx0XHRcdFx0XHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdFx0bWFzay1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG5cdFx0XHRcdFx0fVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYudmlld19fY291bnQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblx0XHQudmlkZW9fbWFyZ2luIHtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0fVxuXG4gICAgfVxuXG4gICAgLy8gVmlkZW8gcGxheWVyIGNvbXBvbmVudHNcbiAgICAudmlkZW9fX2Jhbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRoZWlnaHQ6IDA7XG5cdFx0cGFkZGluZy1ib3R0b206IDU2LjI1JTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdG1hcmdpbi1ib3R0b206IDIycHg7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0XHRvYmplY3QtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC52aWRlby1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gICAgLnZpZGVvLWNvbnRhaW5lciBpZnJhbWUsICBcbiAgICAudmlkZW8tY29udGFpbmVyIG9iamVjdCwgIFxuICAgIC52aWRlby1jb250YWluZXIgZW1iZWQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gICAgLnBsYXlidXR0b257XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaWNvbnMvdmlkZW8tcGxheS5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIC8gNTBweCA1MHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXHRcdHotaW5kZXg6IDk5OTtcblxuXHRcdEBzdXBwb3J0cyhtYXNrLWltYWdlOiB1cmwoXCJcIikpIHtcblx0XHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5LW9uZTtcblx0XHRcdG1hc2staW1hZ2U6IHVybCguLi9pY29ucy92aWRlby1wbGF5LnN2Zyk7XG5cdFx0XHRtYXNrLXNpemU6IDUwcHggNTBweDtcblx0XHRcdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRtYXNrLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDY1cHggNjVweDtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5jbG9zZXtcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgICBcbn1cblxuLm1lZGlhIHtcblx0LnZpZGVvX19lbWJlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuXHRcdC52aWRlb19fd3JhcHBlciB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMnB4O1xuXHRcdH1cblxuXHRcdC52aWRlb19faW5mbyB7XG5cdFx0XHQmLnZpZGVvX190aW1lIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLmNjLXdpbmRvd3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgMXMgZWFzZTt0cmFuc2l0aW9uOm9wYWNpdHkgMXMgZWFzZX0uY2Mtd2luZG93LmNjLWludmlzaWJsZXtvcGFjaXR5OjB9LmNjLWFuaW1hdGUuY2MtcmV2b2tley13ZWJraXQtdHJhbnNpdGlvbjp0cmFuc2Zvcm0gMXMgZWFzZTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gMXMgZWFzZTt0cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIDFzIGVhc2U7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMXMgZWFzZTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAxcyBlYXNlLC13ZWJraXQtdHJhbnNmb3JtIDFzIGVhc2V9LmNjLWFuaW1hdGUuY2MtcmV2b2tlLmNjLXRvcHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC0yZW0pO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0yZW0pfS5jYy1hbmltYXRlLmNjLXJldm9rZS5jYy1ib3R0b217LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgyZW0pO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDJlbSl9LmNjLWFuaW1hdGUuY2MtcmV2b2tlLmNjLWFjdGl2ZS5jYy10b3B7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX0uY2MtYW5pbWF0ZS5jYy1yZXZva2UuY2MtYWN0aXZlLmNjLWJvdHRvbXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfS5jYy1yZXZva2U6aG92ZXJ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX0uY2MtZ3Jvd2Vye21heC1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC10cmFuc2l0aW9uOm1heC1oZWlnaHQgMXM7dHJhbnNpdGlvbjptYXgtaGVpZ2h0IDFzfVxuLmNjLXJldm9rZSwuY2Mtd2luZG93e3Bvc2l0aW9uOmZpeGVkO292ZXJmbG93OmhpZGRlbjstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Zm9udC1mYW1pbHk6SGVsdmV0aWNhLENhbGlicmksQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTZweDtsaW5lLWhlaWdodDoxLjVlbTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LXdyYXA6bm93cmFwO2ZsZXgtd3JhcDpub3dyYXA7ei1pbmRleDo5OTk5fS5jYy13aW5kb3cuY2Mtc3RhdGlje3Bvc2l0aW9uOnN0YXRpY30uY2Mtd2luZG93LmNjLWZsb2F0aW5ne3BhZGRpbmc6MmVtO21heC13aWR0aDoyNGVtOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5jYy13aW5kb3cuY2MtYmFubmVye3BhZGRpbmc6MWVtIDEuOGVtO3dpZHRoOjEwMCU7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvd30uY2MtcmV2b2tle3BhZGRpbmc6LjVlbX0uY2MtcmV2b2tlOmhvdmVye3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LmNjLWhlYWRlcntmb250LXNpemU6MThweDtmb250LXdlaWdodDo3MDB9LmNjLWJ0biwuY2MtY2xvc2UsLmNjLWxpbmssLmNjLXJldm9rZXtjdXJzb3I6cG9pbnRlcn0uY2MtbGlua3tvcGFjaXR5Oi44O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6LjJlbTt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5jYy1saW5rOmhvdmVye29wYWNpdHk6MX0uY2MtbGluazphY3RpdmUsLmNjLWxpbms6dmlzaXRlZHtjb2xvcjppbml0aWFsfS5jYy1idG57ZGlzcGxheTpibG9jaztwYWRkaW5nOi40ZW0gLjhlbTtmb250LXNpemU6LjllbTtmb250LXdlaWdodDo3MDA7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWQ7dGV4dC1hbGlnbjpjZW50ZXI7d2hpdGUtc3BhY2U6bm93cmFwfS5jYy1oaWdobGlnaHQgLmNjLWJ0bjpmaXJzdC1jaGlsZHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH0uY2MtaGlnaGxpZ2h0IC5jYy1idG46Zmlyc3QtY2hpbGQ6Zm9jdXMsLmNjLWhpZ2hsaWdodCAuY2MtYnRuOmZpcnN0LWNoaWxkOmhvdmVye2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0uY2MtY2xvc2V7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LjVlbTtyaWdodDouNWVtO2ZvbnQtc2l6ZToxLjZlbTtvcGFjaXR5Oi45O2xpbmUtaGVpZ2h0Oi43NX0uY2MtY2xvc2U6Zm9jdXMsLmNjLWNsb3NlOmhvdmVye29wYWNpdHk6MX1cbi5jYy1yZXZva2UuY2MtdG9we3RvcDowO2xlZnQ6M2VtO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjVlbTtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czouNWVtfS5jYy1yZXZva2UuY2MtYm90dG9te2JvdHRvbTowO2xlZnQ6M2VtO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6LjVlbTtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouNWVtfS5jYy1yZXZva2UuY2MtbGVmdHtsZWZ0OjNlbTtyaWdodDp1bnNldH0uY2MtcmV2b2tlLmNjLXJpZ2h0e3JpZ2h0OjNlbTtsZWZ0OnVuc2V0fS5jYy10b3B7dG9wOjFlbX0uY2MtbGVmdHtsZWZ0OjFlbX0uY2MtcmlnaHR7cmlnaHQ6MWVtfS5jYy1ib3R0b217Ym90dG9tOjFlbX0uY2MtZmxvYXRpbmc+LmNjLWxpbmt7bWFyZ2luLWJvdHRvbToxZW19LmNjLWZsb2F0aW5nIC5jYy1tZXNzYWdle2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJvdHRvbToxZW19LmNjLXdpbmRvdy5jYy1mbG9hdGluZyAuY2MtY29tcGxpYW5jZXstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAwIGF1dG87ZmxleDoxIDAgYXV0b30uY2Mtd2luZG93LmNjLWJhbm5lcnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0uY2MtYmFubmVyLmNjLXRvcHtsZWZ0OjA7cmlnaHQ6MDt0b3A6MH0uY2MtYmFubmVyLmNjLWJvdHRvbXtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MH0uY2MtYmFubmVyIC5jYy1tZXNzYWdle2Rpc3BsYXk6YmxvY2s7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG87bWF4LXdpZHRoOjEwMCU7bWFyZ2luLXJpZ2h0OjFlbX0uY2MtY29tcGxpYW5jZXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tcy1mbGV4LWxpbmUtcGFjazpqdXN0aWZ5O2FsaWduLWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0uY2MtZmxvYXRpbmcgLmNjLWNvbXBsaWFuY2U+LmNjLWJ0bnstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MTtmbGV4OjF9LmNjLWJ0bisuY2MtYnRue21hcmdpbi1sZWZ0Oi41ZW19XG5AbWVkaWEgcHJpbnR7LmNjLXJldm9rZSwuY2Mtd2luZG93e2Rpc3BsYXk6bm9uZX19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo5MDBweCl7LmNjLWJ0bnt3aGl0ZS1zcGFjZTpub3JtYWx9fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NDE0cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpLHNjcmVlbiBhbmQgKG1heC13aWR0aDo3MzZweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5jYy13aW5kb3cuY2MtdG9we3RvcDowfS5jYy13aW5kb3cuY2MtYm90dG9te2JvdHRvbTowfS5jYy13aW5kb3cuY2MtYmFubmVyLC5jYy13aW5kb3cuY2MtZmxvYXRpbmcsLmNjLXdpbmRvdy5jYy1sZWZ0LC5jYy13aW5kb3cuY2MtcmlnaHR7bGVmdDowO3JpZ2h0OjB9LmNjLXdpbmRvdy5jYy1iYW5uZXJ7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LmNjLXdpbmRvdy5jYy1iYW5uZXIgLmNjLWNvbXBsaWFuY2V7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG99LmNjLXdpbmRvdy5jYy1mbG9hdGluZ3ttYXgtd2lkdGg6bm9uZX0uY2Mtd2luZG93IC5jYy1tZXNzYWdle21hcmdpbi1ib3R0b206MWVtfS5jYy13aW5kb3cuY2MtYmFubmVyey13ZWJraXQtYm94LWFsaWduOnVuc2V0Oy1tcy1mbGV4LWFsaWduOnVuc2V0O2FsaWduLWl0ZW1zOnVuc2V0fS5jYy13aW5kb3cuY2MtYmFubmVyIC5jYy1tZXNzYWdle21hcmdpbi1yaWdodDowfX1cbi5jYy1mbG9hdGluZy5jYy10aGVtZS1jbGFzc2lje3BhZGRpbmc6MS4yZW07Ym9yZGVyLXJhZGl1czo1cHh9LmNjLWZsb2F0aW5nLmNjLXR5cGUtaW5mby5jYy10aGVtZS1jbGFzc2ljIC5jYy1jb21wbGlhbmNle3RleHQtYWxpZ246Y2VudGVyO2Rpc3BsYXk6aW5saW5lOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleDpub25lO2ZsZXg6bm9uZX0uY2MtdGhlbWUtY2xhc3NpYyAuY2MtYnRue2JvcmRlci1yYWRpdXM6NXB4fS5jYy10aGVtZS1jbGFzc2ljIC5jYy1idG46bGFzdC1jaGlsZHttaW4td2lkdGg6MTQwcHh9LmNjLWZsb2F0aW5nLmNjLXR5cGUtaW5mby5jYy10aGVtZS1jbGFzc2ljIC5jYy1idG57ZGlzcGxheTppbmxpbmUtYmxvY2t9XG4uY2MtdGhlbWUtZWRnZWxlc3MuY2Mtd2luZG93e3BhZGRpbmc6MH0uY2MtZmxvYXRpbmcuY2MtdGhlbWUtZWRnZWxlc3MgLmNjLW1lc3NhZ2V7bWFyZ2luOjJlbTttYXJnaW4tYm90dG9tOjEuNWVtfS5jYy1iYW5uZXIuY2MtdGhlbWUtZWRnZWxlc3MgLmNjLWJ0bnttYXJnaW46MDtwYWRkaW5nOi44ZW0gMS44ZW07aGVpZ2h0OjEwMCV9LmNjLWJhbm5lci5jYy10aGVtZS1lZGdlbGVzcyAuY2MtbWVzc2FnZXttYXJnaW4tbGVmdDoxZW19LmNjLWZsb2F0aW5nLmNjLXRoZW1lLWVkZ2VsZXNzIC5jYy1idG4rLmNjLWJ0bnttYXJnaW4tbGVmdDowfSJdfQ== */
