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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.pull-left {
  float: left; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.fa-inverse {
  color: #fff; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

textarea {
  line-height: 18px; }

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

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

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

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

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

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

div.sidebar select {
  width: 100%; }

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

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

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

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

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

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

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

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

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

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

.inline {
  margin-top: 5px;
  margin-bottom: 15px;
  padding: 15px;
  background-color: #e0f1f9; }

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

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

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

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

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

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

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

.inline label {
  display: inline; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* PHOTO */
.inline_photo .thumbnail {
  margin-bottom: 5px; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.wmd-spacer1 {
  left: 50px; }

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

.wmd-quote-button {
  left: 100px;
  background-position: -60px 0; }

.wmd-code-button {
  left: 125px;
  background-position: -80px 0; }

.wmd-image-button {
  left: 150px;
  background-position: -100px 0; }

.wmd-spacer2 {
  left: 175px; }

.wmd-olist-button {
  left: 200px;
  background-position: -120px 0; }

.wmd-ulist-button {
  left: 225px;
  background-position: -140px 0; }

.wmd-heading-button {
  left: 250px;
  background-position: -160px 0; }

.wmd-hr-button {
  left: 275px;
  background-position: -180px 0; }

.wmd-spacer3 {
  left: 300px; }

.wmd-undo-button {
  left: 325px;
  background-position: -200px 0; }

.wmd-redo-button {
  left: 350px;
  background-position: -220px 0; }

.wmd-help-button {
  right: 0px;
  background-position: -240px 0; }

.wmd-prompt-background {
  background-color: #000; }

.wmd-prompt-dialog {
  background-color: #fff;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px; }
  .wmd-prompt-dialog > div {
    font-size: 0.8em;
    font-family: arial, helvetica, sans-serif; }

.wmd-embed-help {
  padding: 10px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  width: 180px;
  background-color: #3d7cb1;
  position: absolute;
  z-index: 1001;
  top: 30px;
  right: 0px; }
  .wmd-embed-help p {
    font-size: 12px;
    border-bottom: none;
    margin-bottom: .2em;
    padding-bottom: 0px;
    color: #fff; }

.wmd-embed {
  background-color: transparent;
  color: #888;
  padding: 0px; }

.try_embed {
  font-size: 12px;
  border-bottom: none;
  color: #fff;
  font-weight: bold;
  padding-right: 16px;
  background: url(../../images/arrows/white_right.gif) no-repeat;
  background-position: right center; }

.oembed {
  margin: 0px auto 1em auto;
  padding: 0px; }
  .oembed .credit {
    font-weight: normal; }

.oembed-video .credit, .oembed-photo .credit {
  margin: 0px;
  padding: 0px;
  font-size: 12px; }

.oembed-video p small {
  color: #777; }

.oembed-link {
  float: none; }
  .oembed-link .credit {
    font-size: 14px;
    line-height: 18px; }

.wmd-preview .oembed-video {
  margin: 0 auto 10px auto;
  padding: 70px 10px;
  background: #333;
  text-align: center; }
  .wmd-preview .oembed-video h3 {
    font-size: 20px;
    color: #fff; }
  .wmd-preview .oembed-video p, .wmd-preview .oembed-video a {
    color: #fff; }

body.entry_detail .wmd-preview p {
  border-bottom: 0px; }

.list .comment .oembed, #comment_form .oembed, #answers .oembed, .comment_text .oembed {
  float: right;
  margin: 0 0 10px 10px;
  clear: right; }

.list .comment .oembed-link, #comment_form .oembed-link, #answers .oembed-link, .comment_text .oembed-link {
  float: none; }

.list .comment .oembed-video p, .list .comment .oembed-photo p {
  font-size: 12px; }

#answers .list .oembed-video p, #answers .list .oembed-photo p {
  font-size: 12px; }

.comment_text {
  zoom: 1; }
  .comment_text:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }

.galleries .wmd-preview, .galleries .wmd-button-bar {
  width: 600px; }

#comment_form .wmd-image-button {
  display: none; }

/* .list .comment ul, .wmd-preview ul, #answers ul { list-style-type: disc; margin-left: 15px; } */
/* RESET */
#toolbar, #header, #nav, #subnav, #comments, .sidebar, #footer {
  display: none; }

#page, #body, #body .wrapper, .content, .content_title {
  margin: 0;
  padding: 0;
  width: 100% !important;
  min-width: 0; }

#sql_debug {
  display: none; }

/* POPUP STYLES */
body {
  padding: 20px !important;
  background: #fff !important; }

form textarea {
  width: 435px; }

.content_title {
  padding: 0 0 10px 0 !important;
  border-bottom: 1px solid #ddd; }

.content_title h2 {
  margin-top: 0;
  font-size: 20px;
  line-height: 25px; }

.content_title .feed {
  display: none; }

.content {
  padding: 20px 0 !important; }

.inline {
  margin-top: 5px;
  margin-bottom: 15px;
  padding: 15px;
  background-color: #e0f1f9; }

.inline-left {
  float: left;
  margin-right: 20px;
  width: 180px;
  clear: left; }

.inline-right {
  float: right;
  margin-left: 20px;
  width: 180px;
  clear: right; }

.inline p, .inline ol, .inline ul {
  margin-bottom: 10px;
  font-size: 12px;
  line-height: 18px; }

.inline .type {
  margin-bottom: 0;
  font-size: 11px;
  color: #68a1c6; }

.inline h3, .inline .title, .inline .name, .inline .topic {
  margin-bottom: 5px;
  font-size: 14px;
  font-weight: bold;
  line-height: 17px;
  color: #39b44a; }

.inline .more {
  margin-bottom: 0; }

.inline .button, .inline #comment_form button, #comment_form .inline button {
  font-size: 12px; }

.inline label {
  display: inline; }

.inline form {
  margin-bottom: 0; }
  .inline form .submit {
    margin-bottom: 0; }
    .inline form .submit .button, .inline form .submit #comment_form button, #comment_form .inline form .submit button {
      padding: 8px 25px;
      width: auto; }
    .inline form .submit .alt_button {
      display: inline;
      float: none;
      padding: 8px 10px;
      background: none;
      font-size: 12px;
      color: #68a1c6; }

/* AUDIO CLIP SET */
.inline_audio_clip_set .audio_clip_list {
  padding-left: 0;
  font-size: 13px;
  line-height: 18px; }
  .inline_audio_clip_set .audio_clip_list li {
    margin-bottom: 10px; }

/* BUSINESS AD */
.ad_inline h6 {
  line-height: 16px; }

.ad_inline .thumbnail {
  margin-bottom: 5px; }

/* CATEGORY */
.category_inline .thumbnail {
  margin-bottom: 20px;
  display: block; }
  .category_inline .thumbnail:last-child {
    margin-bottom: 0; }

/* CHAT */
.inline_chat form {
  margin: 10px 0 0 0; }
  .inline_chat form p {
    margin: 0;
    padding: 0; }

/* DOCUMENT */
.inline_document .thumbnail {
  margin-bottom: 5px; }

.inline_document .download {
  margin-bottom: 0;
  font-size: 11px;
  font-weight: bold; }
  .inline_document .download a {
    padding: 3px 10px;
    background: #999;
    color: #fff;
    -webkit-border-radius: 9px;
    -moz-border-radius: 9px; }
    .inline_document .download a:hover {
      background: #326a99; }

/* EMBEDDED */
.inline_embedded {
  width: 300px; }
  .inline_embedded .caption {
    margin-top: 10px; }

/* EVENT TIME */
.inline_event_time .event_info {
  list-style: none;
  padding-left: 0;
  font-size: 13px;
  line-height: 16px;
  color: #555; }
  .inline_event_time .event_info li {
    margin-bottom: 5px; }

/* FEATURE */
.inline_feature .thumbnail {
  margin-bottom: 5px; }

/* ON THE STREET */
.inline_onthestreet .question {
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 18px;
  color: #333; }

.inline_onthestreet .thumbnail {
  margin-bottom: 10px; }

.inline_onthestreet blockquote {
  margin-bottom: 10px;
  padding: 0; }
  .inline_onthestreet blockquote p {
    margin-bottom: 5px;
    font-size: 14px;
    line-height: 18px; }
  .inline_onthestreet blockquote cite {
    font-size: 12px;
    color: #999; }

/* MOVIE */
.inline_movie .thumbnail {
  margin-bottom: 5px; }

/* PHOTO */
.inline_photo .thumbnail {
  margin-bottom: 5px; }

.inline_photo .byline, .inline_photo .credit {
  margin-bottom: 5px;
  font-weight: bold;
  color: #777; }

.inline_photo.inline_weight_lead {
  padding: 0; }
  .inline_photo.inline_weight_lead .photo_meta {
    padding: 15px; }

/* PODCAST EPISODE */
.inline_podcast .show {
  margin-bottom: 0;
  font-size: 13px;
  line-height: 18px; }
  .inline_podcast .show a {
    color: #999; }

.inline_podcast .episode {
  margin-bottom: 10px;
  font-size: 16px;
  line-height: 18px; }

.inline_podcast .player {
  margin-bottom: 10px; }

/* POLL */
.inline_poll .question {
  margin-bottom: 5px;
  font-size: 18px;
  line-height: 22px;
  color: #555; }

.inline_poll form ul {
  list-style: none;
  padding: 0;
  color: #555; }
  .inline_poll form ul li {
    font-weight: bold; }

/* POLL RESULTS */
.inline_poll_results .question {
  margin-bottom: 10px;
  font-size: 16px;
  line-height: 20px;
  color: #555; }
  .inline_poll_results .question a {
    color: #39b44a; }

.inline_poll_results .results {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 12px;
  font-weight: bold; }
  .inline_poll_results .results li {
    position: relative;
    margin-bottom: 5px;
    padding-bottom: 15px;
    border: none; }
    .inline_poll_results .results li .total {
      font-size: 11px;
      font-weight: normal;
      color: #68a1c6; }
    .inline_poll_results .results li .bar {
      position: absolute;
      bottom: 0;
      left: 0;
      height: 15px;
      background-color: #69c67a; }
      .inline_poll_results .results li .bar .percent {
        position: absolute;
        top: -2px;
        right: -35px;
        width: 30px;
        font-weight: bold;
        color: #39b44a;
        text-align: left; }

.inline_poll_results .total_votes {
  color: #68a1c6; }

.inline_weight_lead.inline_poll_results .question, .inline_weight_large.inline_poll_results .question {
  font-size: 20px;
  line-height: 25px; }

.inline_weight_lead.inline_poll_results .results, .inline_weight_large.inline_poll_results .results {
  font-size: 15px; }

.inline_weight_lead.inline_poll_results .results li, .inline_weight_large.inline_poll_results .results li {
  padding-bottom: 30px; }

.inline_weight_lead.inline_poll_results .results li .bar, .inline_weight_large.inline_poll_results .results li .bar {
  height: 25px; }

.inline_weight_lead.inline_poll_results .results li .bar .percent, .inline_weight_large.inline_poll_results .results li .bar .percent {
  top: 2px; }

/* RECURRING INLINE */
.recurring_inline h3 {
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 18px;
  color: #555; }

.recurring_inline ul {
  padding-left: 0;
  list-style: none;
  font-size: 13px;
  line-height: 18px; }

.recurring_inline li {
  margin-bottom: 10px; }

/* TEXT ININE */
.text_inline ul {
  padding-left: 15px; }
  .text_inline ul li {
    margin-bottom: 10px; }

/* VIDEO */
.inline_video .thumbnail {
  margin-bottom: 5px; }

.inline_video.inline_weight_lead {
  padding: 0; }
  .inline_video.inline_weight_lead .caption {
    padding: 15px; }

.inline_video.inline_weight_large .title, .inline_video.inline_weight_medium .title {
  margin: 15px 0 5px 0; }

/* VIDEO SET */
.inline_video_set .thumbnail {
  margin-bottom: 5px; }

/* WEIGHT: LEAD */
.inline_weight_lead {
  float: none;
  width: auto;
  margin: 0 0 15px 0; }
  .inline_weight_lead .title {
    font-size: 20px;
    line-height: 25px; }
  .inline_weight_lead .type {
    display: none; }
  .inline_weight_lead textarea {
    width: 628px;
    height: 50px; }

/* WEIGHT: LARGE */
.inline_weight_large {
  float: none;
  width: auto;
  margin: 0 0 15px 0; }
  .inline_weight_large .title {
    font-size: 20px;
    line-height: 25px; }
  .inline_weight_large textarea {
    width: 628px;
    height: 50px; }

/* WEIGHT: MEDIUM */
.inline_weight_medium {
  width: 410px; }
  .inline_weight_medium textarea {
    width: 400px;
    height: 50px; }

/* PHOTOS AND GALLERIES */
body.gallery_detail #page {
  background-color: #111; }

body.gallery_detail #subnav {
  margin-bottom: 0;
  background-color: #333; }

body.gallery_detail #body {
  padding-top: 10px; }

body.gallery_detail .content_title {
  border: none; }
  body.gallery_detail .content_title h2 {
    color: #fff; }
  body.gallery_detail .content_title p {
    color: #999; }
  body.gallery_detail .content_title a {
    color: #fff; }
  body.gallery_detail .content_title .back a {
    color: #777; }
  body.gallery_detail .content_title .vote_box {
    margin-top: 0;
    display: none; }

body.gallery_detail .object_tools {
  display: none; }

body.gallery_detail .content {
  width: 990px; }

body.gallery_detail .list .item {
  margin-bottom: 50px; }
  body.gallery_detail .list .item .thumbnail {
    float: none;
    margin: 0; }
    body.gallery_detail .list .item .thumbnail img {
      display: block;
      margin: 0; }
  body.gallery_detail .list .item .caption {
    padding: 20px;
    background-color: #222;
    font-size: 15px;
    line-height: 20px;
    color: #bbb; }

body.gallery_detail #comments {
  padding: 20px;
  background-color: #fff;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }

.gallery_photo_detail .previous_next {
  padding: 10px;
  width: 300px;
  margin-bottom: 10px;
  background: #fff;
  overflow: hidden; }
  .gallery_photo_detail .previous_next div {
    float: left;
    width: 120px; }
  .gallery_photo_detail .previous_next .previous {
    margin-right: 10px;
    padding-left: 20px;
    background: url(../../images/arrows/less_than.gif) 0 50% no-repeat; }
  .gallery_photo_detail .previous_next .next {
    margin-left: 10px;
    padding-right: 20px;
    background: url(../../images/arrows/greater_than.gif) 100% 50% no-repeat; }
  .gallery_photo_detail .previous_next .no_photo {
    margin: 0;
    padding: 30px 10px 0 10px;
    height: 70px;
    background: #eee;
    font-size: 13px;
    line-height: 18px;
    font-weight: bold;
    text-align: center;
    color: #777; }
  .gallery_photo_detail .previous_next a img {
    display: block; }

.photo_grid {
  overflow: hidden; }
  .photo_grid .item {
    float: left;
    margin: 0 10px 10px 0; }
    .photo_grid .item .thumbnail {
      margin: 0; }
    .photo_grid .item .photo_info {
      display: none; }

table.photos td {
  padding: 0 20px 20px 0;
  width: 210px; }
  table.photos td .thumbnail {
    margin-left: 0; }
  table.photos td.last {
    padding-right: 0; }
  table.photos td .caption {
    margin-bottom: 0;
    font-size: 13px;
    line-height: 18px;
    color: #777; }
  table.photos td ul {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 12px;
    line-height: 18px;
    color: #999; }

/* AUDIO */
.audio_list .related {
  margin: 0;
  font-size: 13px;
  color: #999; }
  .audio_list .related strong {
    color: #777; }

.audio_player {
  margin-bottom: 20px;
  padding: 5px;
  width: 580px;
  height: 35px;
  background: #ddd; }

ul.playlist {
  list-style: none;
  padding-left: 3px;
  font-size: 12px;
  line-height: 15px; }
  ul.playlist li {
    margin: 5px 0;
    padding: 0;
    background: none; }
    ul.playlist li a {
      color: #4e9bda; }
      ul.playlist li a.active {
        color: #125a95;
        font-weight: bold; }

/* VIDEO */
video {
  background: #111; }

body.video_detail .video {
  margin-bottom: 20px; }

body.video_list #video_details {
  margin-bottom: 20px;
  padding: 10px 5px 5px 5px; }
  body.video_list #video_details p {
    margin-bottom: 5px; }
    body.video_list #video_details p.caption {
      margin: 8px 0;
      color: #666;
      font-weight: normal; }
  body.video_list #video_details ul.byline {
    list-style: none;
    margin: 5px 0 0 0;
    padding: 0;
    font-size: 12px;
    line-height: 20px;
    color: #666;
    overflow: hidden; }
    body.video_list #video_details ul.byline li {
      float: left;
      margin: 0 10px 0 0;
      overflow: hidden; }

ul.video_list {
  list-style: none;
  margin: 25px 0 0 0;
  padding: 0;
  font-size: 14px;
  line-height: 18px;
  color: #666;
  overflow: hidden; }

h3 + ul.video_list {
  margin-top: 5px; }

ul.video_list li {
  width: 205px;
  height: 250px;
  float: left;
  margin: 0 21px 0 0; }
  ul.video_list li.last {
    margin-right: 0; }
  ul.video_list li a.thumbnail img {
    padding: 4px;
    margin: auto;
    border: 1px solid #ddd; }
  ul.video_list li a.thumbnail:hover img {
    padding: 5px;
    border: none;
    background: #18629d; }
  ul.video_list li a.title {
    display: block;
    padding-bottom: 4px;
    margin-bottom: 2px;
    font-weight: bold; }
  ul.video_list li span.date {
    display: block;
    font-size: 12px; }
  ul.video_list li .hidden {
    display: none; }

div.video_list .item .thumbnail {
  float: left;
  margin: 0 10px 0 0; }

.module_video {
  padding: 0;
  border: none;
  background-color: #111; }
  .module_video h2 a {
    margin-bottom: 0;
    background-color: #111;
    color: #fff; }
    .module_video h2 a:hover {
      background-color: #111; }
  .module_video .body {
    padding: 0; }
    .module_video .body p {
      margin: 10px;
      color: #999;
      font-size: 13px;
      line-height: 16px; }
      .module_video .body p a {
        color: #68a1c6; }

body {
  font-family: "Roboto", sans-serif;
  background: #eaeef1;
  margin: 0 auto; }

main {
  display: block; }

h1, h2, h3, h4, h5, h6 {
  color: #555; }

.container {
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto; }
  .container:after {
    content: " ";
    display: block;
    clear: both; }

main.container {
  padding: 1em; }
  @media (min-width: 769px) {
    main.container {
      padding: 0; } }

.pull-right {
  float: right; }

a {
  color: #18629d;
  text-decoration: none; }

a:hover {
  font-weight: bold;
  text-decoration: underline; }

.divider-background {
  background: #63c151; }

.secondary-divider-background {
  background: #0b354e; }

.top-menu-background {
  background: #63c151; }

.main-menu-background {
  background: #0b354e; }

@media (max-width: 768px) {
  .hidden-mobile-sm {
    display: none; } }

.button, #comment_form button, .alt_button {
  padding: 10px;
  background: #dedede;
  color: #222;
  border-radius: 8px;
  color: #222; }

a.alt_button:hover {
  text-decoration: none; }

/* HEADER */
.ellington_menu.no-hover ul li:hover {
  background: initial !important; }

.ellington_menu {
  width: 100%; }
  .ellington_menu ul {
    list-style: none;
    margin: 0px;
    padding: 0;
    height: 100%;
    float: left;
    position: relative;
    background: #63c151;
    width: 100%;
    display: none;
    z-index: 999; }
    .ellington_menu ul a {
      display: block;
      color: #fff;
      text-decoration: none;
      font-weight: 700;
      font-size: 14px;
      line-height: 32px;
      padding: 0 15px; }
    .ellington_menu ul li {
      background: #63c151; }
      .ellington_menu ul li ul {
        display: block; }
        .ellington_menu ul li ul li {
          padding-left: 1em; }
    .ellington_menu ul li:hover {
      background: #82cb51; }
  @media (min-width: 769px) {
    .ellington_menu {
      height: 2em; }
      .ellington_menu .pull-right {
        float: right; }
      .ellington_menu ul {
        display: block;
        background: transparent;
        width: auto; }
        .ellington_menu ul li {
          background: transparent;
          position: relative;
          float: left;
          margin: 0;
          padding: 0; }
          .ellington_menu ul li .current-menu-item {
            background: #63c151; }
          .ellington_menu ul li ul {
            display: none;
            position: absolute;
            top: 100%;
            left: 0;
            z-index: 999;
            background: #63c151;
            padding: 0; }
            .ellington_menu ul li ul a {
              line-height: 120%;
              padding: 10px 15px; }
            .ellington_menu ul li ul li {
              float: none;
              width: 200px;
              background: #63c151; }
            .ellington_menu ul li ul ul {
              top: 0;
              left: 100%;
              z-index: 999; }
        .ellington_menu ul li:hover > ul {
          display: block; } }
  .ellington_menu .social-networks {
    width: auto;
    color: #fff;
    display: block;
    float: right; }
    .ellington_menu .social-networks a {
      display: inline-block;
      padding: 0; }
      .ellington_menu .social-networks a i {
        vertical-align: middle;
        margin-right: 10px; }
        @media (min-width: 769px) {
          .ellington_menu .social-networks a i {
            font-size: 20px; } }

.top-menu-background .ellington_menu_toggle {
  background: #63c151; }

.main-menu-background .ellington_menu_toggle {
  background: #0b354e;
  margin-top: 5px;
  margin-right: 10px; }

.ellington_menu_toggle {
  outline: 0;
  color: #fff;
  font-size: 30px;
  border-radius: 0.2em;
  border: 2px solid black;
  float: right;
  display: none; }
  @media (max-width: 768px) {
    .ellington_menu_toggle {
      display: block; } }

.header {
  background: #072c43;
  margin-bottom: 1.5em; }

.banner {
  display: none;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  float: none;
  margin-top: 2em;
  margin-bottom: 2em; }
  @media (min-width: 769px) {
    .banner {
      display: block; } }
  .banner .logo {
    width: 32.20339%;
    float: left;
    margin-right: 1.69492%; }
  .banner .right-top-menu {
    width: 23.72881%;
    float: right;
    margin-right: 0; }

#logo {
  display: none; }
  @media (min-width: 769px) {
    #logo {
      display: block; } }

#logo-mobile {
  display: inline-block;
  margin-left: 1em; }
  @media (min-width: 769px) {
    #logo-mobile {
      display: none; } }

/* BODY */
.hero {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0; }

.card, .card-transparent {
  background: #fff; }
  .card img, .card-transparent img {
    position: relative;
    width: 100%;
    vertical-align: middle; }
  .card .overlay, .card-transparent .overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 0; }
    .card .overlay h1, .card-transparent .overlay h1, .card .overlay h2, .card-transparent .overlay h2, .card .overlay h3, .card-transparent .overlay h3, .card .overlay h4, .card-transparent .overlay h4, .card .overlay h5, .card-transparent .overlay h5, .card .overlay h6, .card-transparent .overlay h6, .card .overlay span, .card-transparent .overlay span, .card .overlay p, .card-transparent .overlay p {
      position: absolute;
      bottom: 0;
      left: 0;
      margin: 10px; }

.card-transparent {
  background: transparent; }

.main-story {
  width: 49.15254%;
  float: left;
  margin-right: 1.69492%;
  margin-right: 0; }
  @media (max-width: 768px) {
    .main-story {
      width: 100%;
      float: left;
      margin-left: 0;
      margin-right: 0; } }
  .main-story .article-tease {
    margin-left: 1em;
    margin-right: 1em; }

.secondary-items {
  width: 49.15254%;
  float: right;
  margin-right: 0;
  margin-right: 0; }
  @media (max-width: 768px) {
    .secondary-items {
      width: 91.52542%;
      float: left;
      margin-right: 1.69492%;
      margin-left: 1em;
      margin-top: 1em; } }
  .secondary-items .card, .secondary-items .card-transparent {
    width: 47.36842%;
    float: left;
    position: relative;
    margin-bottom: 2.54237%; }
    .secondary-items .card:nth-child(2n + 1), .secondary-items .card-transparent:nth-child(2n + 1) {
      margin-left: 0;
      margin-right: -100%;
      clear: both;
      margin-left: 0; }
    .secondary-items .card:nth-child(2n + 2), .secondary-items .card-transparent:nth-child(2n + 2) {
      margin-left: 52.63158%;
      margin-right: -100%;
      clear: none; }

.main-section {
  width: 74.57627%;
  float: left;
  margin-right: 1.69492%; }
  @media (max-width: 768px) {
    .main-section {
      width: 100%;
      float: left;
      margin-left: 0;
      margin-right: 0; } }
  .main-section .card, .main-section .card-transparent {
    width: 100%;
    float: right;
    margin-right: 0;
    margin-bottom: 1em; }
    .main-section .card .card-image, .main-section .card-transparent .card-image {
      padding: 1em;
      margin-right: 0px; }
      @media (min-width: 769px) {
        .main-section .card .card-image, .main-section .card-transparent .card-image {
          width: 28.57143%;
          float: left;
          margin-right: 2.04082%;
          padding: 0; } }
    .main-section .card .card-content, .main-section .card-transparent .card-content {
      padding-left: 1em;
      padding-right: 1em;
      padding-bottom: 1em; }
      .main-section .card .card-content .date, .main-section .card-transparent .card-content .date {
        float: right;
        font-size: 12px;
        margin-right: 1.69492%; }
      @media (max-width: 768px) {
        .main-section .card .card-content h3, .main-section .card-transparent .card-content h3 {
          margin-top: 0px; } }
      @media (min-width: 769px) {
        .main-section .card .card-content, .main-section .card-transparent .card-content {
          width: 69.38776%;
          float: right;
          margin-right: 0;
          padding: 0; } }

.video-player iframe {
  height: 480px; }

.video-widget iframe {
  height: 135px; }

.video-player iframe, .video-widget iframe {
  width: 100%; }
  @media (max-width: 768px) {
    .video-player iframe, .video-widget iframe {
      height: 180px; } }
  @media (min-width: 768px) and (max-width: 970px) {
    .video-player iframe, .video-widget iframe {
      height: 480px; } }

.video-info {
  padding: 1.25em; }
  .video-info .video-title {
    font-size: 18px;
    font-weight: bold; }
  .video-info .video-description {
    font-size: 14px; }
  .video-info .video-date {
    float: right;
    font-size: 12px; }

.sidebar {
  float: left;
  width: 100%; }
  @media (min-width: 769px) {
    .sidebar {
      width: 23.72881%;
      float: right;
      margin-right: 0; } }
  .sidebar h3 {
    margin-bottom: 0.3em; }
  .sidebar .top-stories, .sidebar .poll {
    padding: 1em; }
  .sidebar .top-stories ul {
    list-style: none;
    margin: 0px;
    padding: 0; }
    .sidebar .top-stories ul li {
      margin-top: 1em; }
  .sidebar .top-stories p {
    margin: 0;
    color: #777;
    font-size: 15px; }
  .sidebar .card h1, .sidebar .card-transparent h1, .sidebar .card h2, .sidebar .card-transparent h2, .sidebar .card h3, .sidebar .card-transparent h3, .sidebar .card h4, .sidebar .card-transparent h4, .sidebar .card h5, .sidebar .card-transparent h5, .sidebar .card h6, .sidebar .card-transparent h6 {
    margin: 0; }
  .sidebar .poll ul {
    list-style: none;
    margin: 0px;
    padding: 0; }
    .sidebar .poll ul li {
      margin-top: 0.5em;
      font-size: 14px; }
  .sidebar .poll .bar {
    background: #63c151;
    display: block;
    min-width: 2px;
    height: 15px; }

/* Footer */
footer {
  border-top: 1em #63c151 solid;
  background: #072c43; }
  footer .container {
    padding: 1em; }
  footer .copyright {
    text-align: center;
    font-size: 14px;
    color: #777;
    margin-top: 5px; }
  footer .column {
    width: 32.20339%;
    float: left; }
    footer .column:nth-child(3n + 1) {
      margin-left: 0;
      margin-right: -100%;
      clear: both;
      margin-left: 0; }
    footer .column:nth-child(3n + 2) {
      margin-left: 33.89831%;
      margin-right: -100%;
      clear: none; }
    footer .column:nth-child(3n + 3) {
      margin-left: 67.79661%;
      margin-right: -100%;
      clear: none; }
  footer h4 {
    font-size: 18px;
    color: #fff; }
  footer ul {
    list-style: none;
    margin: 0px;
    padding: 0; }
    footer ul a {
      font-size: 15px;
      color: #fff; }
  @media (min-width: 768px) and (max-width: 970px) {
    footer .column {
      width: 23.72881%;
      float: left; }
      footer .column:nth-child(4n + 1) {
        margin-left: 0;
        margin-right: -100%;
        clear: both;
        margin-left: 0; }
      footer .column:nth-child(4n + 2) {
        margin-left: 25.42373%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(4n + 3) {
        margin-left: 50.84746%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(4n + 4) {
        margin-left: 76.27119%;
        margin-right: -100%;
        clear: none; } }
  @media (min-width: 769px) {
    footer .column {
      width: 6.77966%;
      float: left; }
      footer .column:nth-child(12n + 1) {
        margin-left: 0;
        margin-right: -100%;
        clear: both;
        margin-left: 0; }
      footer .column:nth-child(12n + 2) {
        margin-left: 8.47458%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(12n + 3) {
        margin-left: 16.94915%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(12n + 4) {
        margin-left: 25.42373%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(12n + 5) {
        margin-left: 33.89831%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(12n + 6) {
        margin-left: 42.37288%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(12n + 7) {
        margin-left: 50.84746%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(12n + 8) {
        margin-left: 59.32203%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(12n + 9) {
        margin-left: 67.79661%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(12n + 10) {
        margin-left: 76.27119%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(12n + 11) {
        margin-left: 84.74576%;
        margin-right: -100%;
        clear: none; }
      footer .column:nth-child(12n + 12) {
        margin-left: 93.22034%;
        margin-right: -100%;
        clear: none; } }

.main-section .header, .sub_header {
  background: none;
  margin: 0; }

.content_info, .content_title {
  padding-bottom: 0.5em;
  border-bottom: 1px #777 solid;
  margin-top: 0.5em; }
  .content_info .vote_box, .content_title .vote_box {
    float: right;
    padding: 0px 5px 0px 5px;
    border: 1px solid #dedede;
    background-color: #f7f7f7;
    text-align: center;
    border-radius: 4px; }
    .content_info .vote_box form, .content_title .vote_box form {
      margin-bottom: 0px; }

.vote_form.single .upvote,
.vote_form.single .downvote {
  display: block;
  float: left;
  padding: 0;
  width: 38px;
  height: 28px;
  border: none;
  overflow: hidden;
  cursor: pointer;
  box-shadow: none;
  border-radius: 0;
  font-size: 25px;
  background: transparent;
  color: #072c43; }

.vote_form.single .voted {
  color: #63c151; }

.datetime, .byline {
  font-size: 1em;
  display: inline;
  margin: 0;
  color: #777; }

.datetime {
  display: block;
  margin-top: 5px; }
  @media (min-width: 769px) {
    .datetime {
      float: right;
      display: inline;
      margin-top: 0px; } }

ul.object_tools {
  list-style: none;
  margin: 0px;
  padding: 0;
  width: 100%;
  display: inline-block;
  margin-top: 5px; }
  ul.object_tools li {
    display: inline-block;
    margin-right: 5.26316%;
    min-height: 30px;
    color: #18629d;
    float: left; }
    ul.object_tools li small {
      display: block;
      margin-top: 3px; }
  ul.object_tools i.fa {
    margin-right: 5px; }

#comments {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #0b354e;
  clear: both;
  position: relative; }

#comment_status_form {
  float: right; }

#comment_form p.avatar {
  float: left;
  margin-right: 10px; }

#comment_form button {
  border: none;
  font-size: initial;
  color: #dedede;
  background: #116db3; }

.message {
  border: 1px #0b354e solid;
  color: #fff;
  padding: 10px;
  margin-top: 10px;
  background: #116db3;
  margin-bottom: 10px; }
  .message h1, .message h2, .message h3, .message h4, .message h5, .message h6, .message a {
    color: #fff;
    margin: 0; }

.message_info {
  background: #116db3; }

.message_error {
  background: #f44336; }

.message_success {
  background: #4caf50; }

ul.tabs {
  list-style: none;
  margin: 0px;
  padding: 0; }
  ul.tabs li {
    display: inline-block;
    padding: 10px;
    background: #c5c4c4;
    border-radius: 5px 5px 0px 0px;
    font-size: 15px; }
    ul.tabs li a {
      color: #222; }

.tab_content {
  display: none;
  background: #c5c4c4;
  padding: 5px 20px 5px 20px; }

.tab_content_on {
  display: block; }

#photo_add_container {
  display: none; }

.comment_textarea {
  display: inline-block;
  width: 90%; }
  .comment_textarea textarea {
    width: 100%; }
  .comment_textarea .photo_add_button {
    float: right; }

#login {
  width: 48.97959%;
  float: left;
  margin-right: 2.04082%; }

.social_registration {
  width: 40.67797%;
  float: right;
  margin-right: 0; }
  .social_registration button {
    margin-top: 1em; }
  .social_registration h4 {
    margin: 1em 0px 0px 0px; }

.signin_form ul {
  list-style: none;
  margin: 0px;
  padding: 0; }

form p label {
  display: block; }

form p.submit {
  text-align: right; }

.menu_wrapper {
  display: none;
  background: white;
  border-radius: 3px;
  padding: 1em;
  border: 1px solid #ccc;
  z-index: 9; }

.photo_source a {
  background: #c5c4c4;
  border-radius: 5px;
  padding: 10px 15px 10px 15px; }

.list .item {
  background: #fff;
  padding: 10px;
  margin-bottom: 1em; }
  .list .item ul {
    list-style: none;
    margin: 0px;
    padding: 0;
    text-align: right; }
    .list .item ul li {
      margin-right: 1.69492%;
      display: inline-block;
      color: #18629d;
      font-size: 12px; }

table.category_list {
  background: #fff;
  width: 100%; }
  table.category_list th {
    padding: 5px 20px 5px 0;
    border-bottom: 1px solid #c5c4c4;
    font-weight: bold;
    color: #777; }
  table.category_list td {
    text-align: center;
    padding: 5px 20px 5px 0;
    border-bottom: 1px solid #c5c4c4; }

ul.title_info {
  list-style: none;
  margin: 0px;
  padding: 0; }

.events .object_tools {
  margin-top: 20px;
  border-top: 1px solid #0b354e;
  border-bottom: 1px solid #0b354e;
  padding: 10px 0px 10px 0px; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmNzcyIsInNvdXJjZXMiOlsic3R5bGVzLnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9fc3VzeS5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9fc3VzeS5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9fc3Uuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvc3UvX3V0aWxpdGllcy5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9zdS9fc2V0dGluZ3Muc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvc3UvX3ZhbGlkYXRpb24uc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvc3UvX2dyaWQuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L19mbG9hdC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvX3NoYXJlZC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvX3N1cHBvcnQuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L3N1cHBvcnQvX3N1cHBvcnQuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L3N1cHBvcnQvX3ByZWZpeC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc3VwcG9ydC9fYmFja2dyb3VuZC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc3VwcG9ydC9fYm94LXNpemluZy5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc3VwcG9ydC9fcmVtLnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9zdXBwb3J0L19jbGVhcmZpeC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc2hhcmVkL19pbnNwZWN0LnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9zaGFyZWQvX291dHB1dC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc2hhcmVkL19kaXJlY3Rpb24uc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L3NoYXJlZC9fYmFja2dyb3VuZC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc2hhcmVkL19jb250YWluZXIuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L3NoYXJlZC9fbWFyZ2lucy5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc2hhcmVkL19wYWRkaW5nLnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9mbG9hdC9fY29udGFpbmVyLnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9mbG9hdC9fc3Bhbi5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvZmxvYXQvX2VuZC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvZmxvYXQvX2lzb2xhdGUuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fc2V0dGluZ3Muc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fdmFsaWRhdGlvbi5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19ncmlkcy5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19ib3gtc2l6aW5nLnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L2xhbmd1YWdlL3N1c3kvX2NvbnRleHQuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fYmFja2dyb3VuZC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19jb250YWluZXIuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fc3Bhbi5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19ndXR0ZXJzLnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L2xhbmd1YWdlL3N1c3kvX2lzb2xhdGUuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fZ2FsbGVyeS5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19yb3dzLnNjc3MiLCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L2xhbmd1YWdlL3N1c3kvX21hcmdpbnMuc2NzcyIsIi4uL2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fcGFkZGluZy5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19ibGVlZC5zY3NzIiwiLi4vY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19icmVha3BvaW50LXBsdWdpbi5zY3NzIiwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvX2JyZWFrcG9pbnQuc2NzcyIsIi4uL2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvX3NldHRpbmdzLnNjc3MiLCIuLi9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L19jb250ZXh0LnNjc3MiLCIuLi9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L19oZWxwZXJzLnNjc3MiLCIuLi9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L19wYXJzZXJzLnNjc3MiLCIuLi9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L3BhcnNlcnMvX3F1ZXJ5LnNjc3MiLCIuLi9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L3BhcnNlcnMvX3NpbmdsZS5zY3NzIiwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL3NpbmdsZS9fZGVmYXVsdC5zY3NzIiwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL19kb3VibGUuc2NzcyIsIi4uL2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvcGFyc2Vycy9kb3VibGUvX2RlZmF1bHQtcGFpci5zY3NzIiwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL2RvdWJsZS9fZG91YmxlLXN0cmluZy5zY3NzIiwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL2RvdWJsZS9fZGVmYXVsdC5zY3NzIiwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL190cmlwbGUuc2NzcyIsIi4uL2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvcGFyc2Vycy90cmlwbGUvX2RlZmF1bHQuc2NzcyIsIi4uL2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvcGFyc2Vycy9fcmVzb2x1dGlvbi5zY3NzIiwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL3Jlc29sdXRpb24vX3Jlc29sdXRpb24uc2NzcyIsIi4uL2NvbXBvbmVudHMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvX25vLXF1ZXJ5LnNjc3MiLCIuLi9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L19yZXNwb25kLXRvLnNjc3MiLCIuLi9jb21wb25lbnRzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L19sZWdhY3ktc2V0dGluZ3Muc2NzcyIsIi4uL2NvbXBvbmVudHMvZm9udC1hd2Vzb21lL3Njc3MvZm9udC1hd2Vzb21lLnNjc3MiLCIuLi9jb21wb25lbnRzL2ZvbnQtYXdlc29tZS9zY3NzL192YXJpYWJsZXMuc2NzcyIsIi4uL2NvbXBvbmVudHMvZm9udC1hd2Vzb21lL3Njc3MvX21peGlucy5zY3NzIiwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvc2Nzcy9fcGF0aC5zY3NzIiwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvc2Nzcy9fY29yZS5zY3NzIiwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvc2Nzcy9fbGFyZ2VyLnNjc3MiLCIuLi9jb21wb25lbnRzL2ZvbnQtYXdlc29tZS9zY3NzL19maXhlZC13aWR0aC5zY3NzIiwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvc2Nzcy9fbGlzdC5zY3NzIiwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvc2Nzcy9fYm9yZGVyZWQtcHVsbGVkLnNjc3MiLCIuLi9jb21wb25lbnRzL2ZvbnQtYXdlc29tZS9zY3NzL19hbmltYXRlZC5zY3NzIiwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvc2Nzcy9fcm90YXRlZC1mbGlwcGVkLnNjc3MiLCIuLi9jb21wb25lbnRzL2ZvbnQtYXdlc29tZS9zY3NzL19zdGFja2VkLnNjc3MiLCIuLi9jb21wb25lbnRzL2ZvbnQtYXdlc29tZS9zY3NzL19pY29ucy5zY3NzIiwiLi4vY29tcG9uZW50cy9mb250LWF3ZXNvbWUvc2Nzcy9fc2NyZWVuLXJlYWRlci5zY3NzIiwiX3ZhcmlhYmxlcy5zY3NzIiwiX21peGluZ3Muc2NzcyIsImxpYi9jYWxlbmRhcnMuc2NzcyIsImxpYi9mb3Jtcy5zY3NzIiwibGliL2FjY29yZGlvbi5zY3NzIiwibGliL3BhZ2luYXRpb24uc2NzcyIsImxpYi9tb2R1bGVzLnNjc3MiLCJsaWIvaW5saW5lcy5zY3NzIiwibGliL3dtZC5zY3NzIiwibGliL3BvcHVwcy5jc3MiLCJhcHBzL21lZGlhLnNjc3MiLCJfbWVudS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5XCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludFwiO1xuJGZhLWZvbnQtcGF0aDogXCIuLi9jb21wb25lbnRzL2ZvbnQtYXdlc29tZS9mb250c1wiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvZm9udC1hd2Vzb21lL3Njc3MvZm9udC1hd2Vzb21lLnNjc3NcIjtcbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9Um9ib3RvJyk7XG5AaW1wb3J0IFwiX3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIl9taXhpbmdzXCI7XG5cbkBpbXBvcnQgXCIuL2xpYi9jYWxlbmRhcnNcIjtcbkBpbXBvcnQgXCIuL2xpYi9mb3Jtc1wiO1xuQGltcG9ydCBcIi4vbGliL2FjY29yZGlvblwiO1xuQGltcG9ydCBcIi4vbGliL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCIuL2xpYi9tb2R1bGVzXCI7XG5AaW1wb3J0IFwiLi9saWIvaW5saW5lc1wiO1xuQGltcG9ydCBcIi4vbGliL3dtZFwiO1xuQGltcG9ydCBcIi4vbGliL3BvcHVwc1wiO1xuQGltcG9ydCBcIi4vbGliL2lubGluZXNcIjtcblxuQGltcG9ydCBcIi4vYXBwcy9tZWRpYVwiO1xuLy9AaW1wb3J0IFwiLi9hcHBzL2V2ZW50c1wiO1xuXG4kc3VzeTogKFxuICBjb2x1bW5zOiAkdG90YWwtY29sdW1ucyxcbiAgY29udGFpbmVyOiAxMTQwcHgsXG4gIGd1dHRlcnM6IDAuMjUsXG4gIGd1dHRlci1wb3NpdGlvbjogYWZ0ZXIsXG4gIGdsb2JhbC1ib3gtc2l6aW5nOiBib3JkZXItYm94Ly8sXG4gIC8vZGVidWc6IChpbWFnZTogc2hvdy1jb2x1bW5zKVxuKTtcblxuYm9keXtcbiAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrO1xuICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxubWFpbntcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDZ7XG4gIGNvbG9yOiAkdGV4dC10aXRsZS1jb2xvcjtcbn1cblxuIC5jb250YWluZXJ7XG4gICBAaW5jbHVkZSBjb250YWluZXI7XG4gfSBcblxuIG1haW4uY29udGFpbmVye1xuICAgIHBhZGRpbmc6IDFlbTtcbiAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5vbi1tb2JpbGUtdGFibGV0KXtcbiAgICAgcGFkZGluZzogMDtcbiAgIH1cbiB9XG5cbiAucHVsbC1yaWdodHtcbiAgIGZsb2F0OiByaWdodDtcbiB9XG5cbiBhe1xuICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuIH1cbiBhOmhvdmVye1xuICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiB9XG5cbiAuZGl2aWRlci1iYWNrZ3JvdW5ke1xuICAgIGJhY2tncm91bmQ6ICRkaXZpZGVyLWJhY2tncm91bmQ7XG4gfVxuIC5zZWNvbmRhcnktZGl2aWRlci1iYWNrZ3JvdW5ke1xuICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktZGl2aWRlci1iYWNrZ3JvdW5kO1xuIH1cblxuIC50b3AtbWVudS1iYWNrZ3JvdW5ke1xuICAgIGJhY2tncm91bmQ6ICRkaXZpZGVyLWJhY2tncm91bmQ7XG4gfVxuXG4gLm1haW4tbWVudS1iYWNrZ3JvdW5ke1xuICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktZGl2aWRlci1iYWNrZ3JvdW5kO1xuIH1cblxuLmhpZGRlbi1tb2JpbGUtc217XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1vYmlsZS1zbWFsbCl7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uYnV0dG9uLCAuYWx0X2J1dHRvbntcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZDogJGJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQ7XG4gIGNvbG9yOiAkYnV0dG9uLWRlZmF1bHQtZm9udC1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBjb2xvcjogJGJ1dHRvbi1kZWZhdWx0LWZvbnQtY29sb3I7XG59XG5hLmFsdF9idXR0b246aG92ZXJ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogSEVBREVSICovIFxuXG5AaW1wb3J0IFwiLi9fbWVudS5zY3NzXCI7IFxuXG4uaGVhZGVye1xuICBiYWNrZ3JvdW5kOiAkaGVhZGVyLWJhY2tncm91bmQ7XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xufVxuXG4uYmFubmVye1xuICBkaXNwbGF5OiBub25lO1xuICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbm9uLW1vYmlsZS10YWJsZXQpe1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW4tdG9wOiAyZW07ICAgIFxuICBtYXJnaW4tYm90dG9tOiAyZW07ICAgIFxuICAubG9nb3tcbiAgICBAaW5jbHVkZSBzcGFuKDQpO1xuICB9XG4gIC5yaWdodC10b3AtbWVudXtcbiAgICBAaW5jbHVkZSBzcGFuKDMgbGFzdCk7XG4gIH1cbn1cblxuI2xvZ297XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5vbi1tb2JpbGUtdGFibGV0KXtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4jbG9nby1tb2JpbGV7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbm9uLW1vYmlsZS10YWJsZXQpe1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLyogQk9EWSAqL1xuXG4uaGVyb3tcbiAgIEBpbmNsdWRlIHNwYW4oMTIgbmVzdCk7XG59IFxuXG4uY2FyZHtcbiAgYmFja2dyb3VuZDogJGNhcmQtYmFja2dyb3VuZDtcbiAgaW1ne1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG4gIC5vdmVybGF5e1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHNwYW4sIHB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgbWFyZ2luOiAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC10cmFuc3BhcmVudHtcbiAgQGV4dGVuZCAuY2FyZDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5tYWluLXN0b3J5e1xuICAgQGluY2x1ZGUgc3Bhbig2IG9mIDEyKTtcbiAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1vYmlsZS1zbWFsbCl7XG4gICAgIEBpbmNsdWRlIHNwYW4oZnVsbCk7XG4gICB9XG4gIC5hcnRpY2xlLXRlYXNle1xuICAgICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICAgfVxuICAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uc2Vjb25kYXJ5LWl0ZW1ze1xuICBAaW5jbHVkZSBzcGFuKDYgb2YgMTIgbGFzdCk7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbW9iaWxlLXNtYWxsKXtcbiAgICAgQGluY2x1ZGUgc3BhbigxMSk7XG4gICAgIG1hcmdpbi1sZWZ0OiBndXR0ZXIoMWVtKTtcbiAgICAgbWFyZ2luLXRvcDogZ3V0dGVyKDFlbSk7XG4gIH1cbiAgLmNhcmR7XG4gICAgQGluY2x1ZGUgZ2FsbGVyeSgyIG9mIDQpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiBzcGFuKDAuNSk7XG4gIH1cbn1cblxuLm1haW4tc2VjdGlvbntcbiAgICBAaW5jbHVkZSBzcGFuKDkgb2YgMTIpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1vYmlsZS1zbWFsbCl7XG4gICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICB9XG5cbiAgICAuY2FyZHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oMTAgb2YgMTAgbGFzdCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICAuY2FyZC1pbWFnZXtcbiAgICAgICAgcGFkZGluZzogMWVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRub24tbW9iaWxlLXRhYmxldCl7XG4gICAgICAgICAgQGluY2x1ZGUgc3BhbigzIG9mIDEwKTtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICAgICAgfVxuICAgICAgLmNhcmQtY29udGVudHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDFlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICAgICAgLmRhdGV7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGd1dHRlcigpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1vYmlsZS1zbWFsbCl7XG4gICAgICAgICAgaDN7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5vbi1tb2JpbGUtdGFibGV0KXtcbiAgICAgICAgICBAaW5jbHVkZSBzcGFuKDcgb2YgMTAgbGFzdCk7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiB9XG5cblxuIC52aWRlby1wbGF5ZXIgaWZyYW1le1xuICAgICBoZWlnaHQ6IDQ4MHB4O1xuIH1cbiAgXG4gLnZpZGVvLXdpZGdldCBpZnJhbWV7XG4gICAgIGhlaWdodDogMTM1cHg7XG4gfVxuXG4gLnZpZGVvLXBsYXllciwgLnZpZGVvLXdpZGdldHtcbiAgIGlmcmFtZXtcbiAgICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbW9iaWxlLXNtYWxsKXtcbiAgICAgaGVpZ2h0OiAxODBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbW9iaWxlLWxhcmdlKXtcbiAgICAgaGVpZ2h0OiA0ODBweDtcbiAgICB9XG5cbiAgIH1cbiB9XG4gXG4gLnZpZGVvLWluZm97XG4gICBwYWRkaW5nOiAxLjI1ZW07XG4gICAudmlkZW8tdGl0bGV7XG4gICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICB9XG4gICAudmlkZW8tZGVzY3JpcHRpb257XG4gICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgIH1cbiAgIC52aWRlby1kYXRle1xuICAgICBmbG9hdDogcmlnaHQ7XG4gICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgIH1cbiB9XG4uc2lkZWJhcntcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRub24tbW9iaWxlLXRhYmxldCl7XG4gICAgQGluY2x1ZGUgc3BhbigzIGxhc3QpO1xuICB9XG4gIGgze1xuICAgIG1hcmdpbi1ib3R0b206IDAuM2VtO1xuICB9XG4gIC50b3Atc3RvcmllcywgLnBvbGx7XG4gICAgcGFkZGluZzogMWVtO1xuICB9XG4gIC50b3Atc3Rvcmllc3tcbiAgICB1bHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyX2xpc3Rfc3R5bGU7XG4gICAgICBsaXtcbiAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuICAgICAgfVxuICAgIH1cbiAgICBwe1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgY29sb3I6ICR0ZXh0LXNvZnQtY29sb3I7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgfVxuICB9XG4gIC5jYXJkIHtcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2e1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuICAucG9sbHtcbiAgICB1bHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyX2xpc3Rfc3R5bGU7XG4gICAgICBsaXtcbiAgICAgICAgbWFyZ2luLXRvcDogMC41ZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweFxuICAgICAgfVxuICAgIH1cbiAgICAuYmFye1xuICAgICAgYmFja2dyb3VuZDogJHBvbGwtYmFyLWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtaW4td2lkdGg6IDJweDtcbiAgICAgIGhlaWdodDogMTVweDtcbiAgICB9XG4gIH1cbn1cblxuLyogRm9vdGVyICovXG5mb290ZXJ7XG5cbiAgYm9yZGVyLXRvcDogMWVtICRkaXZpZGVyLWJhY2tncm91bmQgc29saWQ7XG4gIGJhY2tncm91bmQ6ICRmb290ZXItYmFja2dyb3VuZDtcbiAgLmNvbnRhaW5lcntcbiAgICBwYWRkaW5nOiAxZW07XG4gIH1cbiAgLmNvcHlyaWdodHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiAkdGV4dC1zb2Z0LWNvbG9yO1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgfVxuICAuY29sdW1ue1xuICAgIEBpbmNsdWRlIGdhbGxlcnkoNCk7XG4gIH1cblxuICBoNHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgY29sb3I6ICRtZW51LWNvbG9yO1xuICB9XG4gIHVse1xuICAgIEBpbmNsdWRlIGNsZWFyX2xpc3Rfc3R5bGU7XG4gICAgYSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBjb2xvcjogJG1lbnUtY29sb3I7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1vYmlsZS1sYXJnZSl7XG4gICAgLmNvbHVtbntcbiAgICAgIEBpbmNsdWRlIGdhbGxlcnkoMyBvZiAxMik7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5vbi1tb2JpbGUtdGFibGV0KXtcbiAgICAuY29sdW1ue1xuICAgICAgQGluY2x1ZGUgZ2FsbGVyeSgxIG9mIDEyKTtcbiAgICB9XG4gIH1cblxufVxuXG4vL1N0b3J5IGRldGFpbFxuLm1haW4tc2VjdGlvbiAuaGVhZGVyLCAuc3ViX2hlYWRlcntcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uY29udGVudF9pbmZvLCAuY29udGVudF90aXRsZXtcbiAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xuICBib3JkZXItYm90dG9tOiAxcHggJHRleHQtc29mdC1jb2xvciBzb2xpZDtcbiAgbWFyZ2luLXRvcDogMC41ZW07XG4gIC52b3RlX2JveHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcGFkZGluZzogMHB4IDVweCAwcHggNXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICR2b3RpbmctYm94LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdm90aW5nLWJveC1iYWNrZ3JvdW5kO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgZm9ybXtcbiAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICB9XG4gIH1cbn1cblxuLnZvdGVfZm9ybS5zaW5nbGUgLnVwdm90ZSxcbi52b3RlX2Zvcm0uc2luZ2xlIC5kb3dudm90ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMzhweDtcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBmb250LXNpemU6IDI1cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICR2b3RpbmctYm94LXZvdGUtY29sb3I7XG59XG5cbi52b3RlX2Zvcm0uc2luZ2xlIC52b3RlZHtcbiAgY29sb3I6ICR2b3RpbmctYm94LXZvdGVkLWNvbG9yO1xufVxuXG4uZGF0ZXRpbWUsIC5ieWxpbmV7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICR0ZXh0LXNvZnQtY29sb3I7XG59XG5cbi5kYXRldGltZXtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbm9uLW1vYmlsZS10YWJsZXQpe1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICB9XG59XG5cbnVsLm9iamVjdF90b29sc3tcbiAgQGluY2x1ZGUgY2xlYXJfbGlzdF9zdHlsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBsaXtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXIoNCk7XG4gICAgbWluLWhlaWdodDogMzBweDtcbiAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgc21hbGx7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICB9XG4gIH1cbiAgaS5mYXtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxufVxuXG4jY29tbWVudHN7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNlY29uZGFyeS1kaXZpZGVyLWJhY2tncm91bmQ7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jY29tbWVudF9zdGF0dXNfZm9ybXtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5cblxuI2NvbW1lbnRfZm9ybXtcbiAgcC5hdmF0YXJ7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG4gIGJ1dHRvbntcbiAgICBAZXh0ZW5kIC5idXR0b247XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGZvbnQtc2l6ZTogaW5pdGlhbDtcbiAgICBjb2xvcjogJGJ1dHRvbi1oaWdobGlnaHQtZm9udC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWhpZ2hsaWdodC1iYWNrZ3JvdW5kO1xuICB9XG59XG5cbi5tZXNzYWdlIHtcbiAgYm9yZGVyOiAxcHggJHNlY29uZGFyeS1kaXZpZGVyLWJhY2tncm91bmQgc29saWQ7XG4gIGNvbG9yOiAkbWVudS1jb2xvcjtcbiAgcGFkZGluZzogMTBweDsgXG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIGJhY2tncm91bmQ6ICRtZXNzYWdlLWluZm8tYmFja2dyb3VuZDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgaDEsIGgyLCBoMywgaDQsIGg1ICxoNiwgYXtcbiAgICBjb2xvcjogJG1lbnUtY29sb3I7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59ICBcblxuLm1lc3NhZ2VfaW5mb3tcbiAgYmFja2dyb3VuZDogJG1lc3NhZ2UtaW5mby1iYWNrZ3JvdW5kO1xufVxuLm1lc3NhZ2VfZXJyb3J7XG4gIGJhY2tncm91bmQ6ICRtZXNzYWdlLWVycm9yLWJhY2tncm91bmQ7XG59XG5cbi5tZXNzYWdlX3N1Y2Nlc3N7XG4gIGJhY2tncm91bmQ6ICRtZXNzYWdlLXN1Y2Nlc3MtYmFja2dyb3VuZDtcbn1cbnVsLnRhYnMge1xuICBAaW5jbHVkZSBjbGVhcl9saXN0X3N0eWxlO1xuICBsaXtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAkdGFicy1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMHB4IDBweDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgYXtcbiAgICAgIGNvbG9yOiAkdGFicy1mb250LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4udGFiX2NvbnRlbnR7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICR0YWJzLWNvbnRlbnQtYmFja2dyb3VuZDtcbiAgcGFkZGluZzogNXB4IDIwcHggNXB4IDIwcHg7XG59IFxuLnRhYl9jb250ZW50X29ue1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuI3Bob3RvX2FkZF9jb250YWluZXJ7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb21tZW50X3RleHRhcmVhe1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA5MCU7XG4gIHRleHRhcmVhe1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5waG90b19hZGRfYnV0dG9ue1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuI2xvZ2lue1xuICBAaW5jbHVkZSBzcGFuKDUgb2YgMTApO1xufVxuLnNvY2lhbF9yZWdpc3RyYXRpb257XG4gIEBpbmNsdWRlIHNwYW4oNSBvciAxMCBsYXN0KTtcbiAgYnV0dG9ue1xuICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgfVxuICBoNHtcbiAgICBtYXJnaW46IDFlbSAwcHggMHB4IDBweDtcbiAgfVxufVxuLnNpZ25pbl9mb3Jte1xuICB1bHtcbiAgICBAaW5jbHVkZSBjbGVhcl9saXN0X3N0eWxlO1xuICB9XG59XG5cbmZvcm0ge1xuICBwIHtcbiAgICBsYWJlbHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuICBwLnN1Ym1pdHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG4ubWVudV93cmFwcGVye1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBwYWRkaW5nOiAxZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIHotaW5kZXg6IDk7XG59XG5cbi5waG90b19zb3VyY2V7XG4gIGF7XG4gICAgYmFja2dyb3VuZDogJHRhYnMtYmFja2dyb3VuZDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgcGFkZGluZzogMTBweCAxNXB4IDEwcHggMTVweDtcbiAgfVxufVxuXG4ubGlzdHtcbiAgLml0ZW17XG4gICAgYmFja2dyb3VuZDogJGNhcmQtYmFja2dyb3VuZDtcbiAgICBwYWRkaW5nOiAxMHB4OyBcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgdWx7XG4gICAgICBAaW5jbHVkZSBjbGVhcl9saXN0X3N0eWxlO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBsaXtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBndXR0ZXIoKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxudGFibGUuY2F0ZWdvcnlfbGlzdHtcbiAgYmFja2dyb3VuZDogJGNhcmQtYmFja2dyb3VuZDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRoe1xuICAgIHBhZGRpbmc6IDVweCAyMHB4IDVweCAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdGFicy1jb250ZW50LWJhY2tncm91bmQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICR0ZXh0LXNvZnQtY29sb3I7XG4gIH1cbiAgdGR7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyBcbiAgICBwYWRkaW5nOiA1cHggMjBweCA1cHggMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHRhYnMtY29udGVudC1iYWNrZ3JvdW5kO1xuICB9XG59XG5cblxuLy9ldmVudHNcbnVsLnRpdGxlX2luZm97XG4gIEBpbmNsdWRlIGNsZWFyX2xpc3Rfc3R5bGU7XG59XG5cbi5ldmVudHMgLm9iamVjdF90b29sc3tcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRzZWNvbmRhcnktZGl2aWRlci1iYWNrZ3JvdW5kO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNlY29uZGFyeS1kaXZpZGVyLWJhY2tncm91bmQ7XG4gIHBhZGRpbmc6IDEwcHggMHB4IDEwcHggMHB4O1xufVxuIiwiLy8gU3VzeVxuLy8gPT09PVxuXG5AaW1wb3J0ICdzdXN5L2xhbmd1YWdlL3N1c3knO1xuIiwiLy8gU3VzeSBOZXh0IFN5bnRheFxuLy8gPT09PT09PT09PT09PT09PVxuXG4kc3VzeS12ZXJzaW9uOiAyLjE7XG5cbkBpbXBvcnQgXCIuLi9zdVwiO1xuQGltcG9ydCBcIi4uL291dHB1dC9mbG9hdFwiO1xuXG5AaW1wb3J0IFwic3VzeS9zZXR0aW5nc1wiO1xuQGltcG9ydCBcInN1c3kvdmFsaWRhdGlvblwiO1xuQGltcG9ydCBcInN1c3kvZ3JpZHNcIjtcbkBpbXBvcnQgXCJzdXN5L2JveC1zaXppbmdcIjtcbkBpbXBvcnQgXCJzdXN5L2NvbnRleHRcIjtcbkBpbXBvcnQgXCJzdXN5L2JhY2tncm91bmRcIjtcbkBpbXBvcnQgXCJzdXN5L2NvbnRhaW5lclwiO1xuQGltcG9ydCBcInN1c3kvc3BhblwiO1xuQGltcG9ydCBcInN1c3kvZ3V0dGVyc1wiO1xuQGltcG9ydCBcInN1c3kvaXNvbGF0ZVwiO1xuQGltcG9ydCBcInN1c3kvZ2FsbGVyeVwiO1xuQGltcG9ydCBcInN1c3kvcm93c1wiO1xuQGltcG9ydCBcInN1c3kvbWFyZ2luc1wiO1xuQGltcG9ydCBcInN1c3kvcGFkZGluZ1wiO1xuQGltcG9ydCBcInN1c3kvYmxlZWRcIjtcbkBpbXBvcnQgXCJzdXN5L2JyZWFrcG9pbnQtcGx1Z2luXCI7XG4iLCIvLyBTdVxuLy8gPT1cblxuQGltcG9ydCBcInN1L3V0aWxpdGllc1wiO1xuQGltcG9ydCBcInN1L3NldHRpbmdzXCI7XG5AaW1wb3J0IFwic3UvdmFsaWRhdGlvblwiO1xuQGltcG9ydCBcInN1L2dyaWRcIjtcbiIsIi8vIE1hcCBGdW5jdGlvbnNcbi8vID09PT09PT09PT09PT1cblxuXG4vLyBUcnVuY2F0ZSBMaXN0XG4vLyAtLS0tLS0tLS0tLS0tXG4vLyAtIFJldHVybiBhIGxpc3QsIHRydW5jYXRlZCB0byBhIGdpdmVuIGxlbmd0aFxuQGZ1bmN0aW9uIF9zdXN5LXRydW5jYXRlLWxpc3QoXG4gICRsaXN0LFxuICAkbGVuZ3RoXG4pIHtcbiAgJF9yZXR1cm46ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRsaXN0KSB7XG4gICAgJF9yZXR1cm46IGlmKCRpIDw9ICRsZW5ndGgsIGFwcGVuZCgkX3JldHVybiwgbnRoKCRsaXN0LCAkaSkpLCAkX3JldHVybik7XG4gIH1cblxuICBAcmV0dXJuICRfcmV0dXJuO1xufVxuXG5cbi8vIERlZXAgR2V0XG4vLyAtLS0tLS0tLVxuLy8gLSBSZXR1cm4gYSB2YWx1ZSBkZWVwIGluIG5lc3RlZCBtYXBzXG5AZnVuY3Rpb24gX3N1c3ktZGVlcC1nZXQoXG4gICRtYXAsXG4gICRrZXlzLi4uXG4pIHtcbiAgJF9yZXR1cm46ICRtYXA7XG5cbiAgQGVhY2ggJGtleSBpbiAka2V5cyB7XG4gICAgQGlmIHR5cGUtb2YoJF9yZXR1cm4pID09IG1hcCB7XG4gICAgICAkX3JldHVybjogbWFwLWdldCgkX3JldHVybiwgJGtleSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cblxuXG4vLyBEZWVwIFNldFxuLy8gLS0tLS0tLS1cbi8vIC0gU2V0IGEgdmFsdWUgZGVlcCBpbiBuZXN0ZWQgbWFwc1xuQGZ1bmN0aW9uIF9zdXN5LWRlZXAtc2V0KFxuICAkbWFwLFxuICAka2V5cy12YWx1ZS4uLlxuKSB7XG4gICRfdmFsdWU6IG50aCgka2V5cy12YWx1ZSwgLTEpO1xuICAkX2tleXM6IF9zdXN5LXRydW5jYXRlLWxpc3QoJGtleXMtdmFsdWUsIGxlbmd0aCgka2V5cy12YWx1ZSkgLSAxKTtcbiAgJF9sZW5ndGg6IGxlbmd0aCgkX2tleXMpO1xuICAkX3JldHVybjogKCk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkX2xlbmd0aCB7XG4gICAgJF9uOiAwIC0gJGk7XG4gICAgJF9sZXZlbDogX3N1c3ktdHJ1bmNhdGUtbGlzdCgkX2tleXMsICRfbGVuZ3RoICsgJF9uKTtcbiAgICAkX2xldmVsOiBfc3VzeS1kZWVwLWdldCgkbWFwLCAkX2xldmVsLi4uKTtcbiAgICAkX21lcmdlOiBudGgoJF9rZXlzLCAkX24pO1xuICAgICRfbWVyZ2U6ICgkX21lcmdlOiAkX3ZhbHVlKTtcbiAgICAkX3JldHVybjogaWYoJF9sZXZlbCwgbWFwLW1lcmdlKCRfbGV2ZWwsICRfbWVyZ2UpLCAkX21lcmdlKTtcbiAgICAkX3ZhbHVlOiAkX3JldHVybjtcbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG5cblxuLy8gRGVlcCBNZXJnZVxuLy8gLS0tLS0tLS0tLVxuLy8gUmV0dXJuIDIgb2JqZWN0cyBvZiBhbnkgZGVwdGgsIG1lcmdlZFxuQGZ1bmN0aW9uIF9zdXN5LWRlZXAtbWVyZ2UoXG4gICRtYXAxLFxuICAkbWFwMlxuKSB7XG5cbiAgQGlmIHR5cGUtb2YoJG1hcDEpICE9IG1hcCBvciB0eXBlLW9mKCRtYXAyKSAhPSBtYXAge1xuICAgICRtYXAxOiAkbWFwMjtcbiAgfSBAZWxzZSB7XG4gICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAyIHtcbiAgICAgICRfbmV3OiAoJGtleTogX3N1c3lfZGVlcC1tZXJnZShtYXAtZ2V0KCRtYXAxLCAka2V5KSwgJHZhbHVlKSk7XG4gICAgICAkbWFwMTogbWFwLW1lcmdlKCRtYXAxLCAkX25ldyk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbWFwMTtcbn1cblxuXG4vLyBEZWVwIEhhcy1LZXlcbi8vIC0tLS0tLS0tLS0tLVxuLy8gLSBSZXR1cm4gdHJ1ZSBpZiBhIGRlZXAga2V5IGV4aXN0c1xuQGZ1bmN0aW9uIF9zdXN5LWRlZXAtaGFzLWtleShcbiAgJG1hcCxcbiAgJGtleXMuLi5cbikge1xuICAkX3JldHVybjogbnVsbDtcbiAgJF9zdG9wOiBmYWxzZTtcblxuICBAZWFjaCAka2V5IGluICRrZXlzIHtcbiAgICBAaWYgbm90KCRfc3RvcCkge1xuICAgICAgJF9yZXR1cm46IG1hcC1oYXMta2V5KCRtYXAsICRrZXkpO1xuICAgIH1cblxuICAgIEBpZiAkX3JldHVybiB7XG4gICAgICAkbWFwOiBtYXAtZ2V0KCRtYXAsICRrZXkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJF9zdG9wOiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG4iLCIvLyBTZXR0aW5nc1xuLy8gPT09PT09PT1cblxuLy8gVmVyc2lvblxuLy8gLS0tLS0tLVxuJHN1LXZlcnNpb246IDEuMTtcblxuXG4vLyBEZWZhdWx0IFNldHRpbmdzXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG4vLyBQUklWQVRFOiBUaGUgYmFzaWMgc2V0dGluZ3NcbiRzdXN5LWRlZmF1bHRzOiAoXG4gIGNvbHVtbnM6IDQsXG4gIGd1dHRlcnM6IC4yNSxcbik7XG5cblxuLy8gVXNlciBTZXR0aW5nc1xuLy8gLS0tLS0tLS0tLS0tLVxuLy8gLSBEZWZpbmUgdGhlICRzdXN5IHZhcmlhYmxlIHdpdGggYSBtYXAgb2YgeW91ciBvd24gc2V0dGluZ3MuXG4vLyAtIFNldCBFSVRIRVIgJGNvbHVtbi13aWR0aCBPUiAkY29udGFpbmVyXG4vLyAtIFVzZSAkY29sdW1uLXdpZHRoIGZvciBzdGF0aWMgbGF5b3V0c1xuJHN1c3k6ICgpICFkZWZhdWx0O1xuXG5cbi8vIFN1c3kgRGVmYXVsdHNcbi8vIC0tLS0tLS0tLS0tLS1cbi8vIFBSSVZBVEU6IEFkZCBkZWZhdWx0cyB0byBTdXN5XG5AbWl4aW4gc3VzeS1kZWZhdWx0cyhcbiAgJGRlZmF1bHRzXG4pIHtcbiAgJHN1c3ktZGVmYXVsdHM6IG1hcC1tZXJnZSgkc3VzeS1kZWZhdWx0cywgJGRlZmF1bHRzKSAhZ2xvYmFsO1xufVxuXG5cbi8vIFN1c3kgU2V0XG4vLyAtLS0tLS0tLVxuLy8gQ2hhbmdlIG9uZSBzZXR0aW5nXG4vLyAtICRrZXkgICA6IHNldHRpbmcgbmFtZVxuLy8gLSAkdmFsdWUgOiBzZXR0aW5nIHZhbHVlXG5AbWl4aW4gc3VzeS1zZXQoXG4gICRrZXktdmFsdWUuLi5cbikge1xuICAkc3VzeTogX3N1c3ktZGVlcC1zZXQoJHN1c3ksICRrZXktdmFsdWUuLi4pICFnbG9iYWw7XG59XG5cblxuLy8gU3VzeSBHZXRcbi8vIC0tLS0tLS0tXG4vLyBSZXR1cm4gb25lIHNldHRpbmcgZnJvbSBhIGdyaWRcbi8vIC0gJGtleSAgICAgOiA8a2V5d29yZD5cbi8vIC0gJGxheW91dCAgOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gc3VzeS1nZXQoXG4gICRrZXksXG4gICRsYXlvdXQ6IG1hcC1tZXJnZSgkc3VzeS1kZWZhdWx0cywgJHN1c3kpXG4pIHtcbiAgJGxheW91dDogcGFyc2UtZ3JpZCgkbGF5b3V0KTtcbiAgJF9vcHRpb25zOiAkbGF5b3V0ICRzdXN5ICRzdXN5LWRlZmF1bHRzO1xuICAkX2JyZWFrOiBmYWxzZTtcbiAgJF9yZXR1cm46IG51bGw7XG5cbiAgQGVhY2ggJG9wdCBpbiAkX29wdGlvbnMge1xuICAgIEBpZiB0eXBlLW9mKCRvcHQpID09IG1hcCBhbmQgbm90KCRfYnJlYWspIHtcbiAgICAgICRfa2V5c2V0OiBfc3VzeS1kZWVwLWhhcy1rZXkoJG9wdCwgJGtleS4uLik7XG4gICAgICBAaWYgJF9rZXlzZXQge1xuICAgICAgICAkX3JldHVybjogX3N1c3ktZGVlcC1nZXQoJG9wdCwgJGtleS4uLik7XG4gICAgICAgICRfYnJlYWs6IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cbiIsIi8vIE1hdGggVmFsaWRhdGlvblxuLy8gPT09PT09PT09PT09PT09XG5cblxuLy8gVmFsaWQgQ29sdW1uc1xuLy8gLS0tLS0tLS0tLS0tLVxuLy8gQ2hlY2sgdGhhdCBhIGNvbHVtbiBzZXR0aW5nIGlzIHZhbGlkLlxuQGZ1bmN0aW9uIHZhbGlkLWNvbHVtbnMoXG4gICRjb2x1bW5zLFxuICAkc2lsZW50OiBmYWxzZVxuKSB7XG4gICR0eXBlOiB0eXBlLW9mKCRjb2x1bW5zKTtcbiAgJHJldHVybjogbnVsbDtcblxuICBAaWYgJHR5cGUgPT0gbnVtYmVyIGFuZCB1bml0bGVzcygkY29sdW1ucykge1xuICAgICRyZXR1cm46ICRjb2x1bW5zO1xuICB9IEBlbHNlIGlmICR0eXBlID09IGxpc3Qge1xuICAgICRmYWlsOiBudWxsO1xuICAgIEBlYWNoICRjb2wgaW4gJGNvbHVtbnMge1xuICAgICAgQGlmIHR5cGUtb2YoJGNvbCkgPT0gbnVtYmVyIHtcbiAgICAgICAgJGZhaWw6ICRmYWlsIG9yIGlmKHVuaXRsZXNzKCRjb2wpLCBudWxsLCB0cnVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkZmFpbDogdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJHJldHVybjogaWYoJGZhaWwsICRyZXR1cm4sICRjb2x1bW5zKTtcbiAgfVxuXG4gIEBpZiAkcmV0dXJuICE9ICRjb2x1bW5zIGFuZCBub3QoJHNpbGVudCkge1xuICAgICRyZXR1cm46IG51bGw7XG4gICAgJHdhcm46ICckY29sdW1ucyBtdXN0IGJlIGEgdW5pdGxlc3MgbnVtYmVyIG9yIGxpc3Qgb2YgdW5pdGxlc3MgbnVtYmVycy4nO1xuICAgIEB3YXJuICR3YXJuICsgJyBDdXJyZW50IHZhbHVlIFsjeyR0eXBlfV06ICN7JGNvbHVtbnN9JztcbiAgfVxuXG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuXG4vLyBWYWxpZCBHdXR0ZXJzXG4vLyAtLS0tLS0tLS0tLS0tXG4vLyBDaGVjayB0aGF0IGEgZ3V0dGVyIHNldHRpbmcgaXMgdmFsaWQuXG5AZnVuY3Rpb24gdmFsaWQtZ3V0dGVycyhcbiAgJGd1dHRlcnMsXG4gICRzaWxlbnQ6IGZhbHNlXG4pIHtcbiAgJHR5cGU6IHR5cGUtb2YoJGd1dHRlcnMpO1xuICAkcmV0dXJuOiBudWxsO1xuXG4gIEBpZiAkdHlwZSA9PSBudW1iZXIgYW5kIHVuaXRsZXNzKCRndXR0ZXJzKSB7XG4gICAgJHJldHVybjogJGd1dHRlcnM7XG4gIH0gQGVsc2UgaWYgbm90KCRzaWxlbnQpIHtcbiAgICAkd2FybjogJyRndXR0ZXJzIG11c3QgYmUgYSB1bml0bGVzcyBudW1iZXIuJztcbiAgICBAd2FybiAkd2FybiArICcgQ3VycmVudCB2YWx1ZSBbI3skdHlwZX1dOiAjeyRndXR0ZXJzfSc7XG4gIH1cblxuICBAcmV0dXJuICRyZXR1cm47XG59XG4iLCIvLyBDb2x1bW4gbWF0aFxuLy8gPT09PT09PT09PT1cblxuXG4vLyBJcyBTeW1tZXRyaWNhbFxuLy8gLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybnMgdHJ1ZSBpZiBhIGdyaWQgaXMgc3ltbWV0cmljYWwuXG4vLyAtIFskY29sdW1uc10gICA6IDxudW1iZXI+IHwgPGxpc3Q+XG5AZnVuY3Rpb24gaXMtc3ltbWV0cmljYWwoXG4gICRjb2x1bW5zOiBzdXN5LWdldChjb2x1bW5zKVxuKSB7XG4gICRjb2x1bW5zOiB2YWxpZC1jb2x1bW5zKCRjb2x1bW5zKTtcbiAgQHJldHVybiBpZih0eXBlLW9mKCRjb2x1bW5zKSA9PSBudW1iZXIsICRjb2x1bW5zLCBudWxsKTtcbn1cblxuXG4vLyBTdXN5IENvdW50XG4vLyAtLS0tLS0tLS0tXG4vLyBGaW5kIHRoZSBudW1iZXIgb2YgY29sdW1ucyBpbiBhIGdpdmVuIGxheW91dFxuLy8gLSBbJGNvbHVtbnNdICAgOiA8bnVtYmVyPiB8IDxsaXN0PlxuQGZ1bmN0aW9uIHN1c3ktY291bnQoXG4gICRjb2x1bW5zOiBzdXN5LWdldChjb2x1bW5zKVxuKSB7XG4gICRjb2x1bW5zOiB2YWxpZC1jb2x1bW5zKCRjb2x1bW5zKTtcbiAgQHJldHVybiBpcy1zeW1tZXRyaWNhbCgkY29sdW1ucykgb3IgbGVuZ3RoKCRjb2x1bW5zKTtcbn1cblxuXG4vLyBTdXN5IFN1bVxuLy8gLS0tLS0tLS1cbi8vIEZpbmQgdGhlIHRvdGFsIHN1bSBvZiBjb2x1bW4tdW5pdHMgaW4gYSBsYXlvdXRcbi8vIC0gWyRjb2x1bW5zXSAgIDogPG51bWJlcj4gfCA8bGlzdD5cbi8vIC0gWyRndXR0ZXJzXSAgIDogPHJhdGlvPlxuLy8gLSBbJHNwcmVhZF0gICAgOiBmYWxzZS9uYXJyb3cgfCB3aWRlIHwgd2lkZXJcbkBmdW5jdGlvbiBzdXN5LXN1bShcbiAgJGNvbHVtbnMgIDogc3VzeS1nZXQoY29sdW1ucyksXG4gICRndXR0ZXJzICA6IHN1c3ktZ2V0KGd1dHRlcnMpLFxuICAkc3ByZWFkICAgOiBmYWxzZVxuKSB7XG4gICRjb2x1bW5zOiB2YWxpZC1jb2x1bW5zKCRjb2x1bW5zKTtcbiAgJGd1dHRlcnM6IHZhbGlkLWd1dHRlcnMoJGd1dHRlcnMpO1xuXG4gICRzcHJlYWQ6IGlmKCRzcHJlYWQgPT0gd2lkZSwgMCwgaWYoJHNwcmVhZCA9PSB3aWRlciwgMSwgLTEpKTtcbiAgJGd1dHRlci1zdW06IChzdXN5LWNvdW50KCRjb2x1bW5zKSArICRzcHJlYWQpICogJGd1dHRlcnM7XG4gICRjb2x1bW4tc3VtOiBpcy1zeW1tZXRyaWNhbCgkY29sdW1ucyk7XG5cbiAgQGlmIG5vdCgkY29sdW1uLXN1bSkge1xuICAgIEBlYWNoICRjb2x1bW4gaW4gJGNvbHVtbnMge1xuICAgICAgJGNvbHVtbi1zdW06ICgkY29sdW1uLXN1bSBvciAwKSArICRjb2x1bW47XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkY29sdW1uLXN1bSArICRndXR0ZXItc3VtO1xufVxuXG5cbi8vIFN1c3kgU2xpY2Vcbi8vIC0tLS0tLS0tLS1cbi8vIFJldHVybiBhIHN1YnNldCBvZiBjb2x1bW5zIGF0IGEgZ2l2ZW4gbG9jYXRpb24uXG4vLyAtICRzcGFuICAgICAgICA6IDxudW1iZXI+XG4vLyAtICRsb2NhdGlvbiAgICA6IDxudW1iZXI+XG4vLyAtIFskY29sdW1uc10gICA6IDxudW1iZXI+IHwgPGxpc3Q+XG5AZnVuY3Rpb24gc3VzeS1zbGljZShcbiAgJHNwYW4sXG4gICRsb2NhdGlvbixcbiAgJGNvbHVtbnM6IHN1c3ktZ2V0KGNvbHVtbnMpXG4pIHtcbiAgJGNvbHVtbnM6IHZhbGlkLWNvbHVtbnMoJGNvbHVtbnMpO1xuICAkc3ViLWNvbHVtbnM6ICRzcGFuO1xuXG4gIEBpZiBub3QoaXMtc3ltbWV0cmljYWwoJGNvbHVtbnMpKSB7XG4gICAgJGxvY2F0aW9uOiAkbG9jYXRpb24gb3IgMTtcbiAgICAkc3ViLWNvbHVtbnM6ICgpO1xuICAgIEBmb3IgJGkgZnJvbSAkbG9jYXRpb24gdG8gKCRsb2NhdGlvbiArICRzcGFuKSB7XG4gICAgICAkc3ViLWNvbHVtbnM6IGFwcGVuZCgkc3ViLWNvbHVtbnMsIG50aCgkY29sdW1ucywgJGkpKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdWItY29sdW1ucztcbn1cblxuXG4vLyBTdXN5XG4vLyAtLS0tXG4vLyBGaW5kIHRoZSBzdW0gb2YgYSBjb2x1bW4tc3Bhbi5cbi8vIC0gJHNwYW4gICAgICAgIDogPG51bWJlcj5cbi8vIC0gJGxvY2F0aW9uICAgIDogPG51bWJlcj5cbi8vIC0gWyRjb2x1bW5zXSAgIDogPG51bWJlcj4gfCA8bGlzdD5cbi8vIC0gWyRndXR0ZXJzXSAgIDogPHJhdGlvPlxuLy8gLSBbJHNwcmVhZF0gICAgOiBmYWxzZS9uYXJyb3cgfCB3aWRlIHwgd2lkZXJcbkBmdW5jdGlvbiBzdXN5KFxuICAkc3BhbixcbiAgJGxvY2F0aW9uICAgICA6IGZhbHNlLFxuICAkY29sdW1ucyAgICAgIDogc3VzeS1nZXQoY29sdW1ucyksXG4gICRndXR0ZXJzICAgICAgOiBzdXN5LWdldChndXR0ZXJzKSxcbiAgJHNwcmVhZCAgICAgICA6IGZhbHNlXG4pIHtcbiAgJGNvbHVtbnM6IHZhbGlkLWNvbHVtbnMoJGNvbHVtbnMpO1xuICAkZ3V0dGVyczogdmFsaWQtZ3V0dGVycygkZ3V0dGVycyk7XG4gICRzcGFuOiBzdXN5LXNsaWNlKCRzcGFuLCAkbG9jYXRpb24sICRjb2x1bW5zKTtcblxuICBAcmV0dXJuIHN1c3ktc3VtKCRzcGFuLCAkZ3V0dGVycywgJHNwcmVhZCk7XG59XG4iLCIvLyBGbG9hdCBBUElcbi8vID09PT09PT09PVxuXG5AaW1wb3J0IFwic2hhcmVkXCI7XG5cbkBpbXBvcnQgXCJmbG9hdC9jb250YWluZXJcIjtcbkBpbXBvcnQgXCJmbG9hdC9zcGFuXCI7XG5AaW1wb3J0IFwiZmxvYXQvZW5kXCI7XG5AaW1wb3J0IFwiZmxvYXQvaXNvbGF0ZVwiO1xuIiwiLy8gU2hhcmVkIEFQSVxuLy8gPT09PT09PT09PVxuXG5AaW1wb3J0IFwic3VwcG9ydFwiO1xuXG5AaW1wb3J0IFwic2hhcmVkL2luc3BlY3RcIjtcbkBpbXBvcnQgXCJzaGFyZWQvb3V0cHV0XCI7XG5AaW1wb3J0IFwic2hhcmVkL2RpcmVjdGlvblwiO1xuQGltcG9ydCBcInNoYXJlZC9iYWNrZ3JvdW5kXCI7XG5AaW1wb3J0IFwic2hhcmVkL2NvbnRhaW5lclwiO1xuQGltcG9ydCBcInNoYXJlZC9tYXJnaW5zXCI7XG5AaW1wb3J0IFwic2hhcmVkL3BhZGRpbmdcIjtcblxuXG5cbiIsIi8vIFN1c3kgQnJvd3NlciBTdXBwb3J0XG4vLyA9PT09PT09PT09PT09PT09PT09PVxuXG5AaW1wb3J0IFwic3VwcG9ydC9zdXBwb3J0XCI7XG5AaW1wb3J0IFwic3VwcG9ydC9wcmVmaXhcIjtcbkBpbXBvcnQgXCJzdXBwb3J0L2JhY2tncm91bmRcIjtcbkBpbXBvcnQgXCJzdXBwb3J0L2JveC1zaXppbmdcIjtcbkBpbXBvcnQgXCJzdXBwb3J0L3JlbVwiO1xuQGltcG9ydCBcInN1cHBvcnQvY2xlYXJmaXhcIjtcbiIsIi8vIEJyb3dzZXIgU3VwcG9ydFxuLy8gPT09PT09PT09PT09PT09XG5cbi8vIFN1c3kgU3VwcG9ydCBEZWZhdWx0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AaW5jbHVkZSBzdXN5LWRlZmF1bHRzKChcbiAgdXNlLWN1c3RvbTogKFxuICAgIGNsZWFyZml4OiBmYWxzZSxcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB0cnVlLFxuICAgIGJhY2tncm91bmQtb3B0aW9uczogZmFsc2UsXG4gICAgYnJlYWtwb2ludDogdHJ1ZSxcbiAgICBib3gtc2l6aW5nOiB0cnVlLFxuICAgIHJlbTogdHJ1ZSxcbiAgKSxcbikpO1xuXG5cbi8vIFN1c3kgU3VwcG9ydCBbbWl4aW5dXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2VuZCBwcm9wZXJ0eS12YWx1ZSBwYWlycyB0byB0aGUgcHJvcGVyIHN1cHBvcnQgbW9kdWxlcy5cbi8vIC0gJHByb3AgIDogPGNzcyBwcm9wZXJ0eT5cbi8vIC0gJHZhbCAgIDogPGNzcyB2YWx1ZT5cbkBtaXhpbiBzdXN5LXN1cHBvcnQoXG4gICRwcm9wLFxuICAkdmFsXG4pIHtcbiAgLy8gQmFja2dyb3VuZCBTdXBwb3J0XG4gIEBpZiAkcHJvcCA9PSBiYWNrZ3JvdW5kLWltYWdlIHtcbiAgICBAaW5jbHVkZSBzdXN5LWJhY2tncm91bmQtaW1hZ2UoJHZhbCk7XG4gIH0gQGVsc2UgaWYgJHByb3AgPT0gYmFja2dyb3VuZC1zaXplIHtcbiAgICBAaW5jbHVkZSBzdXN5LWJhY2tncm91bmQtc2l6ZSgkdmFsKTtcbiAgfSBAZWxzZSBpZiAkcHJvcCA9PSBiYWNrZ3JvdW5kLW9yaWdpbiB7XG4gICAgQGluY2x1ZGUgc3VzeS1iYWNrZ3JvdW5kLW9yaWdpbigkdmFsKTtcbiAgfSBAZWxzZSBpZiAkcHJvcCA9PSBiYWNrZ3JvdW5kLWNsaXAge1xuICAgIEBpbmNsdWRlIHN1c3ktYmFja2dyb3VuZC1jbGlwKCR2YWwpO1xuICB9XG5cbiAgLy8gQm94LVNpemluZyBTdXBwb3J0XG4gIEBlbHNlIGlmICRwcm9wID09IGJveC1zaXppbmcge1xuICAgIEBpbmNsdWRlIHN1c3ktYm94LXNpemluZygkdmFsKTtcbiAgfVxuXG4gIC8vIFJlbSBTdXBwb3J0XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBzdXN5LXJlbSgkcHJvcCwgJHZhbCk7XG4gIH1cbn1cblxuXG4vLyBTdXN5IFN1cHBvcnQgW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENoZWNrIGZvciBzdXBwb3J0IG9mIGEgZmVhdHVyZS5cbi8vIC0gJGZlYXR1cmUgICAgICAgOiA8c3RyaW5nPlxuLy8gICAgICAgICAgICAgICAgICAgIC0gZS5nIFwicmVtXCIgb3IgXCJib3gtc2l6aW5nXCJcbi8vIC0gJHJlcXVpcmVtZW50cyAgOiA8bWFwPlxuLy8gICAgICAgICAgICAgICAgICAgIC0gZS5nICh2YXJpYWJsZTogcmVtLXdpdGgtcHgtZmFsbGJhY2ssIG1peGluOiByZW0pXG4vLyAtICR3YXJuICAgICAgICAgIDogPGJvb2w+XG5AZnVuY3Rpb24gc3VzeS1zdXBwb3J0KFxuICAkZmVhdHVyZSxcbiAgJHJlcXVpcmVtZW50czogKCksXG4gICR3YXJuOiB0cnVlXG4pIHtcbiAgJF9zdXBwb3J0OiBzdXN5LWdldCh1c2UtY3VzdG9tICRmZWF0dXJlKTtcblxuICBAaWYgJF9zdXBwb3J0IHtcbiAgICAkX2ZhaWw6IGZhbHNlO1xuXG4gICAgQGVhY2ggJF90eXBlLCAkX3JlcSBpbiAkcmVxdWlyZW1lbnRzIHtcbiAgICAgIEBlYWNoICRfaSBpbiAkX3JlcSB7XG4gICAgICAgICRfcGFzczogY2FsbCh1bnF1b3RlKFwiI3skX3R5cGV9LWV4aXN0c1wiKSwgJF9pKTtcblxuICAgICAgICBAaWYgbm90KCRfcGFzcykge1xuICAgICAgICAgICRfZmFpbDogdHJ1ZTtcbiAgICAgICAgICBAaWYgJHdhcm4ge1xuICAgICAgICAgICAgQHdhcm4gXCJZb3UgcmVxdWVzdGVkIGN1c3RvbSBzdXBwb3J0IG9mICN7JGZlYXR1cmV9LCBidXQgdGhlICN7JF9pfSAjeyRfdHlwZX0gaXMgbm90IGF2YWlsYWJsZS5cIjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkX3N1cHBvcnQ6IGlmKCRfZmFpbCwgZmFsc2UsICRfc3VwcG9ydCk7XG4gIH1cblxuICBAcmV0dXJuICRfc3VwcG9ydDtcbn1cbiIsIi8vIFN1c3kgUHJlZml4XG4vLyA9PT09PT09PT09PVxuXG4vLyBQcmVmaXhcbi8vIC0tLS0tLVxuLy8gT3V0cHV0IHNpbXBsZSBwcmVmaXhlZCBwcm9wZXJ0aWVzLlxuLy8gLSAkcHJvcCAgICAgIDogPGNzcyBwcm9wZXJ0eT5cbi8vIC0gJHZhbCAgICAgICA6IDxjc3MgdmFsdWU+XG4vLyAtIFskcHJlZml4XSAgOiA8YnJvd3NlciBwcmVmaXggbGlzdD5cbkBtaXhpbiBzdXN5LXByZWZpeChcbiAgJHByb3AsXG4gICR2YWwsXG4gICRwcmVmaXg6IG9mZmljaWFsXG4pIHtcbiAgQGVhY2ggJGZpeCBpbiAkcHJlZml4IHtcbiAgICAkZml4OiBpZigkZml4ID09IG9mZmljaWFsIG9yIG5vdCgkZml4KSwgJHByb3AsICctI3skZml4fS0jeyRwcm9wfScpO1xuICAgIEBpbmNsdWRlIHN1c3ktcmVtKCRmaXgsICR2YWwpO1xuICB9XG59XG4iLCIvLyBCYWNrZ3JvdW5kIFByb3BlcnRpZXNcbi8vID09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBTdXN5IEJhY2tncm91bmQgSW1hZ2Vcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2hlY2sgZm9yIGFuIGV4aXN0aW5nIHN1cHBvcnQgbWl4aW4sIG9yIHByb3ZpZGUgYSBzaW1wbGUgZmFsbGJhY2suXG4vLyAtICRpbWFnZTogPGJhY2tncm91bmQtaW1hZ2U+XG5AbWl4aW4gc3VzeS1iYWNrZ3JvdW5kLWltYWdlKFxuICAkaW1hZ2Vcbikge1xuICBAaWYgc3VzeS1zdXBwb3J0KGJhY2tncm91bmQtaW1hZ2UsIChtaXhpbjogYmFja2dyb3VuZC1pbWFnZSksICR3YXJuOiBmYWxzZSkge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UoJGltYWdlLi4uKTtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJGltYWdlO1xuICB9XG59XG5cbi8vIFN1c3kgQmFja2dyb3VuZCBTaXplXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENoZWNrIGZvciBhbiBleGlzdGluZyBzdXBwb3J0IG1peGluLCBvciBwcm92aWRlIGEgc2ltcGxlIGZhbGxiYWNrLlxuLy8gLSAkaW1hZ2U6IDxiYWNrZ3JvdW5kLXNpemU+XG5AbWl4aW4gc3VzeS1iYWNrZ3JvdW5kLXNpemUoXG4gICRzaXplXG4pIHtcbiAgQGlmIHN1c3ktc3VwcG9ydChiYWNrZ3JvdW5kLW9wdGlvbnMsIChtaXhpbjogYmFja2dyb3VuZC1zaXplKSkge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtc2l6ZSgkc2l6ZSk7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHNpemU7XG4gIH1cbn1cblxuLy8gU3VzeSBCYWNrZ3JvdW5kIE9yaWdpblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2hlY2sgZm9yIGFuIGV4aXN0aW5nIHN1cHBvcnQgbWl4aW4sIG9yIHByb3ZpZGUgYSBzaW1wbGUgZmFsbGJhY2suXG4vLyAtICRpbWFnZTogPGJhY2tncm91bmQtb3JpZ2luPlxuQG1peGluIHN1c3ktYmFja2dyb3VuZC1vcmlnaW4oXG4gICRvcmlnaW5cbikge1xuICBAaWYgc3VzeS1zdXBwb3J0KGJhY2tncm91bmQtb3B0aW9ucywgKG1peGluOiBiYWNrZ3JvdW5kLW9yaWdpbikpIHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLW9yaWdpbigkb3JpZ2luKTtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46ICRvcmlnaW47XG4gIH1cbn1cblxuLy8gU3VzeSBCYWNrZ3JvdW5kIENsaXBcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDaGVjayBmb3IgYW4gZXhpc3Rpbmcgc3VwcG9ydCBtaXhpbiwgb3IgcHJvdmlkZSBhIHNpbXBsZSBmYWxsYmFjay5cbi8vIC0gJGltYWdlOiA8YmFja2dyb3VuZC1jbGlwPlxuQG1peGluIHN1c3ktYmFja2dyb3VuZC1jbGlwKFxuICAkY2xpcFxuKSB7XG4gIEBpZiBzdXN5LXN1cHBvcnQoYmFja2dyb3VuZC1vcHRpb25zLCAobWl4aW46IGJhY2tncm91bmQtY2xpcCkpIHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNsaXAoJGNsaXApO1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6ICRjbGlwO1xuICB9XG59XG4iLCIvLyBCb3ggU2l6aW5nXG4vLyA9PT09PT09PT09XG5cbi8vIEJveCBTaXppbmdcbi8vIC0tLS0tLS0tLS1cbi8vIENoZWNrIGZvciBhbiBleGlzdGluZyBzdXBwb3J0IG1peGluLCBvciBwcm92aWRlIGEgc2ltcGxlIGZhbGxiYWNrLlxuLy8gLSAkbW9kZWw6IDxib3gtc2l6aW5nPlxuQG1peGluIHN1c3ktYm94LXNpemluZyhcbiAgJG1vZGVsOiBjb250ZW50LWJveFxuKSB7XG4gIEBpZiAkbW9kZWwge1xuICAgIEBpZiBzdXN5LXN1cHBvcnQoYm94LXNpemluZywgKG1peGluOiBib3gtc2l6aW5nKSwgJHdhcm46IGZhbHNlKSB7XG4gICAgICBAaW5jbHVkZSBib3gtc2l6aW5nKCRtb2RlbCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcHJlZml4OiAobW96LCB3ZWJraXQsIG9mZmljaWFsKTtcbiAgICAgIEBpbmNsdWRlIHN1c3ktcHJlZml4KGJveC1zaXppbmcsICRtb2RlbCwgJHByZWZpeCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyByZW0gU3VwcG9ydFxuLy8gPT09PT09PT09PT1cblxuLy8gcmVtXG4vLyAtLS1cbi8vIENoZWNrIGZvciBhbiBleGlzdGluZyBzdXBwb3J0IG1peGluLCBvciBvdXRwdXQgZGlyZWN0bHkuXG4vLyAtICRwcm9wICA6IDxjc3MgcHJvcGVydHk+XG4vLyAtICR2YWwgICA6IDxjc3MgdmFsdWU+XG5AbWl4aW4gc3VzeS1yZW0oXG4gICRwcm9wLFxuICAkdmFsXG4pIHtcbiAgJF9yZXFzOiAoXG4gICAgdmFyaWFibGU6IHJoeXRobS11bml0IHJlbS13aXRoLXB4LWZhbGxiYWNrLFxuICAgIG1peGluOiByZW0sXG4gICk7XG4gIEBpZiBzdXN5LXN1cHBvcnQocmVtLCAkX3JlcXMsICR3YXJuOiBmYWxzZSkgYW5kICRyaHl0aG0tdW5pdCA9PSByZW0ge1xuICAgIEBpbmNsdWRlIHJlbSgkcHJvcCwgJHZhbCk7XG4gIH0gQGVsc2Uge1xuICAgICN7JHByb3B9OiAkdmFsO1xuICB9XG59XG4iLCIvLyBTdXN5IEZhbGxiYWNrIENsZWFyZml4XG4vLyA9PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gQ2xlYXJmaXhcbi8vIC0tLS0tLS0tXG4vLyBDaGVjayBmb3IgYW4gZXhpc3Rpbmcgc3VwcG9ydCBtaXhpbiwgb3IgcHJvdmlkZSBhIHNpbXBsZSBmYWxsYmFjay5cbkBtaXhpbiBzdXN5LWNsZWFyZml4IHtcbiAgQGlmIHN1c3ktc3VwcG9ydChjbGVhcmZpeCwgKG1peGluOiBjbGVhcmZpeCkpIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfSBAZWxzZSB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICB9XG59XG4iLCIvLyBEZWJ1Z2dpbmdcbi8vID09PT09PT09PVxuXG4vLyBTdXN5IEluc3BlY3Rcbi8vIC0tLS0tLS0tLS0tLVxuLy8gT3V0cHV0IGFyZ3VtZW50cyBwYXNzZWQgdG8gYSBpbnNwZWN0LlxuLy8gLSAkbWl4aW4gIDogPHN1c3kgbWl4aW4+XG4vLyAtICRpbnNwZWMgICA6IDxtaXhpbiBhcmd1bWVudHM+XG5cbkBtaXhpbiBzdXN5LWluc3BlY3QoXG4gICRtaXhpbixcbiAgJGluc3BlY3Rcbikge1xuICAkc2hvdzogZmFsc2U7XG5cbiAgQGVhY2ggJGl0ZW0gaW4gJGluc3BlY3Qge1xuICAgIEBpZiBpbmRleCgkaXRlbSwgaW5zcGVjdCkge1xuICAgICAgJHNob3c6IHRydWU7XG4gICAgfVxuICB9XG5cbiAgQGlmICRzaG93IG9yIHN1c3ktZ2V0KGRlYnVnIGluc3BlY3QpIHtcbiAgICAtc3VzeS0jeyRtaXhpbn06IGluc3BlY3QoJGluc3BlY3QpO1xuICB9XG59XG4iLCIvLyBPdXRwdXRcbi8vID09PT09PVxuXG4vLyBPdXRwdXRcbi8vIC0tLS0tLVxuLy8gT3V0cHV0IENTUyB3aXRoIHByb3BlciBicm93c2VyIHN1cHBvcnQuXG4vLyAtICRzdHlsZXMgIDogPG1hcCBvZiBjc3MgcHJvcGVydHktdmFsdWUgcGFpcnM+XG5AbWl4aW4gb3V0cHV0KFxuICAkc3R5bGVzXG4pIHtcbiAgQGVhY2ggJHByb3AsICR2YWwgaW4gJHN0eWxlcyB7XG4gICAgQGluY2x1ZGUgc3VzeS1zdXBwb3J0KCRwcm9wLCAkdmFsKTtcbiAgfVxufVxuIiwiLy8gRGlyZWN0aW9uIEhlbHBlcnNcbi8vID09PT09PT09PT09PT09PT09XG5cbi8vIFN1c3kgRmxvdyBEZWZhdWx0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAtIFBSSVZBVEVcbkBpbmNsdWRlIHN1c3ktZGVmYXVsdHMoKFxuICBmbG93OiBsdHIsXG4pKTtcblxuLy8gR2V0IERpcmVjdGlvblxuLy8gLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHRoZSAnZnJvbScgb3IgJ3RvJyBkaXJlY3Rpb24gb2YgYSBsdHIgb3IgcnRsIGZsb3cuXG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG4vLyAtIFska2V5XSAgIDogZnJvbSB8IHRvXG5AZnVuY3Rpb24gZ2V0LWRpcmVjdGlvbihcbiAgJGZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpLFxuICAka2V5OiBmcm9tXG4pIHtcbiAgJHJldHVybjogaWYoJGZsb3cgPT0gcnRsLCAoZnJvbTogcmlnaHQsIHRvOiBsZWZ0KSwgKGZyb206IGxlZnQsIHRvOiByaWdodCkpO1xuICBAcmV0dXJuIG1hcC1nZXQoJHJldHVybiwgJGtleSk7XG59XG5cbi8vIFRvXG4vLyAtLVxuLy8gUmV0dXJuIHRoZSAndG8nIGRpcmVjdGlvbiBvZiBhIGZsb3dcbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBmdW5jdGlvbiB0byhcbiAgJGZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpXG4pIHtcbiAgQHJldHVybiBnZXQtZGlyZWN0aW9uKCRmbG93LCB0byk7XG59XG5cbi8vIEZyb21cbi8vIC0tLS1cbi8vIFJldHVybiB0aGUgJ2Zyb20nIGRpcmVjdGlvbiBvZiBhIGZsb3dcbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBmdW5jdGlvbiBmcm9tKFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdylcbikge1xuICBAcmV0dXJuIGdldC1kaXJlY3Rpb24oJGZsb3csIGZyb20pO1xufVxuIiwiLy8gR3JpZCBCYWNrZ3JvdW5kIEFQSVxuLy8gPT09PT09PT09PT09PT09PT09PVxuLy8gLSBTdWItcGl4ZWwgcm91bmRpbmcgY2FuIGxlYWQgdG8gc2V2ZXJhbCBwaXhlbHMgdmFyaWF0aW9uIGJldHdlZW4gYnJvd3NlcnMuXG5cbi8vIEdyaWQgQmFja2dyb3VuZCBPdXRwdXRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gJGltYWdlOiBiYWNrZ3JvdW5kLWltYWdlXG4vLyAtICRzaXplOiBiYWNrZ3JvdW5kLXNpemVcbi8vIC0gJGNsaXA6IGJhY2tncm91bmQtY2xpcFxuLy8gLSBbJGZsb3ddOiBsdHIgfCBydGxcbkBtaXhpbiBiYWNrZ3JvdW5kLWdyaWQtb3V0cHV0IChcbiAgJGltYWdlLFxuICAkc2l6ZTogbnVsbCxcbiAgJGNsaXA6IG51bGwsXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gICRvdXRwdXQ6IChcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkaW1hZ2UsXG4gICAgYmFja2dyb3VuZC1zaXplOiAkc2l6ZSxcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogJGNsaXAsXG4gICAgYmFja2dyb3VuZC1jbGlwOiAkY2xpcCxcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBmcm9tKCRmbG93KSB0b3AsXG4gICk7XG5cbiAgQGluY2x1ZGUgb3V0cHV0KCRvdXRwdXQpO1xufVxuIiwiLy8gU2hhcmVkIENvbnRhaW5lciBBUElcbi8vID09PT09PT09PT09PT09PT09PT09XG5cbi8vIENvbnRhaW5lciBPdXRwdXRcbi8vIC0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gWyR3aWR0aF0gICAgICAgICA6IDxsZW5ndGg+XG4vLyAtIFskanVzdGlmeV0gICAgICAgOiBsZWZ0IHwgY2VudGVyIHwgcmlnaHRcbi8vIC0gWyRtYXRoXSAgICAgICAgICA6IGZsdWlkIHwgc3RhdGljXG5AbWl4aW4gY29udGFpbmVyLW91dHB1dChcbiAgJHdpZHRoLFxuICAkanVzdGlmeTogYXV0byBhdXRvLFxuICAkcHJvcGVydHk6IG1heC13aWR0aFxuKSB7XG4gICRvdXRwdXQ6IChcbiAgICAjeyRwcm9wZXJ0eX06ICR3aWR0aCBvciAxMDAlLFxuICAgIG1hcmdpbi1sZWZ0OiBudGgoJGp1c3RpZnksIDEpLFxuICAgIG1hcmdpbi1yaWdodDogbnRoKCRqdXN0aWZ5LCAyKSxcbiAgKTtcblxuICBAaW5jbHVkZSBvdXRwdXQoJG91dHB1dCk7XG59XG4iLCIvLyBNYXJnaW5zIEFQSVxuLy8gPT09PT09PT09PT1cblxuLy8gTWFyZ2luIE91dHB1dFxuLy8gLS0tLS0tLS0tLS0tLVxuLy8gLSAkYmVmb3JlICA6IDxsZW5ndGg+XG4vLyAtICRhZnRlciAgIDogPGxlbmd0aD5cbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBtaXhpbiBtYXJnaW4tb3V0cHV0KFxuICAkYmVmb3JlLFxuICAkYWZ0ZXIsXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gICR0bzogdG8oJGZsb3cpO1xuICAkZnJvbTogZnJvbSgkZmxvdyk7XG5cbiAgJG91dHB1dDogKFxuICAgIG1hcmdpbi0jeyRmcm9tfTogJGJlZm9yZSxcbiAgICBtYXJnaW4tI3skdG99OiAkYWZ0ZXIsXG4gICk7XG5cbiAgQGluY2x1ZGUgb3V0cHV0KCRvdXRwdXQpO1xufVxuIiwiLy8gUGFkZGluZyBBUElcbi8vID09PT09PT09PT09XG5cbi8vIFBhZGRpbmcgT3V0cHV0XG4vLyAtLS0tLS0tLS0tLS0tLVxuLy8gLSAkYmVmb3JlICA6IDxsZW5ndGg+XG4vLyAtICRhZnRlciAgIDogPGxlbmd0aD5cbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBtaXhpbiBwYWRkaW5nLW91dHB1dChcbiAgJGJlZm9yZSxcbiAgJGFmdGVyLFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdylcbikge1xuICAkdG86IHRvKCRmbG93KTtcbiAgJGZyb206IGZyb20oJGZsb3cpO1xuXG4gICRvdXRwdXQ6IChcbiAgICBwYWRkaW5nLSN7JGZyb219OiAkYmVmb3JlLFxuICAgIHBhZGRpbmctI3skdG99OiAkYWZ0ZXIsXG4gICk7XG5cbiAgQGluY2x1ZGUgb3V0cHV0KCRvdXRwdXQpO1xufVxuIiwiLy8gRmxvYXQgQ29udGFpbmVyIEFQSVxuLy8gPT09PT09PT09PT09PT09PT09PVxuXG4vLyBGbG9hdCBDb250YWluZXJcbi8vIC0tLS0tLS0tLS0tLS0tLVxuLy8gLSBbJHdpZHRoXSAgICAgICAgIDogPGxlbmd0aD5cbi8vIC0gWyRqdXN0aWZ5XSAgICAgICA6IGxlZnQgfCBjZW50ZXIgfCByaWdodFxuLy8gLSBbJG1hdGhdICAgOiBmbHVpZCB8IHN0YXRpY1xuQG1peGluIGZsb2F0LWNvbnRhaW5lcihcbiAgJHdpZHRoLFxuICAkanVzdGlmeTogYXV0byBhdXRvLFxuICAkcHJvcGVydHk6IG1heC13aWR0aFxuKSB7XG4gIEBpbmNsdWRlIHN1c3ktY2xlYXJmaXg7XG4gIEBpbmNsdWRlIGNvbnRhaW5lci1vdXRwdXQoJHdpZHRoLCAkanVzdGlmeSwgJHByb3BlcnR5KTtcbn1cbiIsIi8vIEZsb2F0IFNwYW4gQVBJXG4vLyA9PT09PT09PT09PT09PVxuXG4vLyBGbG9hdCBTcGFuIE91dHB1dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gJHdpZHRoICAgICAgICAgICAgIDogPGxlbmd0aD5cbi8vIC0gWyRmbG9hdF0gICAgICAgICAgIDogZnJvbSB8IHRvXG4vLyAtIFskbWFyZ2luLWJlZm9yZV0gICA6IDxsZW5ndGg+XG4vLyAtIFskbWFyZ2luLWFmdGVyXSAgICA6IDxsZW5ndGg+XG4vLyAtIFskcGFkZGluZy1iZWZvcmVdICA6IDxsZW5ndGg+XG4vLyAtIFskcGFkZGluZy1hZnRlcl0gICA6IDxsZW5ndGg+XG4vLyAtIFskZmxvd10gICAgICAgICAgICA6IGx0ciB8IHJ0bFxuQG1peGluIGZsb2F0LXNwYW4tb3V0cHV0KFxuICAkd2lkdGgsXG4gICRmbG9hdCAgICAgICAgICAgIDogZnJvbSxcbiAgJG1hcmdpbi1iZWZvcmUgICAgOiBudWxsLFxuICAkbWFyZ2luLWFmdGVyICAgICA6IG51bGwsXG4gICRwYWRkaW5nLWJlZm9yZSAgIDogbnVsbCxcbiAgJHBhZGRpbmctYWZ0ZXIgICAgOiBudWxsLFxuICAkZmxvdyAgICAgICAgICAgICA6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpXG4pIHtcbiAgJHRvICAgICA6IHRvKCRmbG93KTtcbiAgJGZyb20gICA6IGZyb20oJGZsb3cpO1xuXG4gICRvdXRwdXQ6IChcbiAgICB3aWR0aDogJHdpZHRoLFxuICAgIGZsb2F0OiBpZigkZmxvYXQgPT0gdG8sICR0bywgbnVsbCkgb3IgaWYoJGZsb2F0ID09IGZyb20sICRmcm9tLCBudWxsKSxcbiAgICBtYXJnaW4tI3skZnJvbX06ICRtYXJnaW4tYmVmb3JlLFxuICAgIG1hcmdpbi0jeyR0b306ICRtYXJnaW4tYWZ0ZXIsXG4gICAgcGFkZGluZy0jeyRmcm9tfTogJHBhZGRpbmctYmVmb3JlLFxuICAgIHBhZGRpbmctI3skdG99OiAkcGFkZGluZy1hZnRlcixcbiAgKTtcblxuICBAaW5jbHVkZSBvdXRwdXQoJG91dHB1dCk7XG59XG4iLCIvLyBGbG9hdCBFbmRzIEFQSVxuLy8gPT09PT09PT09PT09PT1cblxuLy8gU3VzeSBFbmQgRGVmYXVsdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4vLyAtIFBSSVZBVEVcbkBpbmNsdWRlIHN1c3ktZGVmYXVsdHMoKFxuICBsYXN0LWZsb3c6IHRvLFxuKSk7XG5cbi8vIEZsb2F0IExhc3Rcbi8vIC0tLS0tLS0tLS1cbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBtaXhpbiBmbG9hdC1sYXN0KFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdyksXG4gICRsYXN0LWZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGxhc3QtZmxvdyksXG4gICRtYXJnaW46IDBcbikge1xuICAkdG86IHRvKCRmbG93KTtcblxuICAkb3V0cHV0OiAoXG4gICAgZmxvYXQ6IGlmKCRsYXN0LWZsb3cgPT0gdG8sICR0bywgbnVsbCksXG4gICAgbWFyZ2luLSN7JHRvfTogJG1hcmdpbixcbiAgKTtcblxuICBAaW5jbHVkZSBvdXRwdXQoJG91dHB1dCk7XG59XG5cbi8vIEZsb2F0IEZpcnN0XG4vLyAtLS0tLS0tLS0tLVxuLy8gLSBbJGZsb3ddICA6IGx0ciB8IHJ0bFxuQG1peGluIGZsb2F0LWZpcnN0KFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdylcbikge1xuICAkb3V0cHV0OiAoXG4gICAgbWFyZ2luLSN7ZnJvbSgkZmxvdyl9OiAwLFxuICApO1xuXG4gIEBpbmNsdWRlIG91dHB1dCgkb3V0cHV0KTtcbn1cbiIsIi8vIEZsb2F0IElzb2xhdGlvbiBBUElcbi8vID09PT09PT09PT09PT09PT09PT1cblxuLy8gSXNvbGF0ZSBPdXRwdXRcbi8vIC0tLS0tLS0tLS0tLS0tXG4vLyAtICRwdXNoICAgIDogPGxlbmd0aD5cbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBtaXhpbiBpc29sYXRlLW91dHB1dChcbiAgJHB1c2gsXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gICR0bzogdG8oJGZsb3cpO1xuICAkZnJvbTogZnJvbSgkZmxvdyk7XG5cbiAgJG91dHB1dDogKFxuICAgIGZsb2F0OiAkZnJvbSxcbiAgICBtYXJnaW4tI3skZnJvbX06ICRwdXNoLFxuICAgIG1hcmdpbi0jeyR0b306IC0xMDAlLFxuICApO1xuXG4gIEBpbmNsdWRlIG91dHB1dCgkb3V0cHV0KTtcbn1cbiIsIi8vIFN1c3kgU2V0dGluZ3Ncbi8vID09PT09PT09PT09PT1cblxuLy8gU3VzeSBMYW5ndWFnZSBEZWZhdWx0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gLSBQUklWQVRFXG5AaW5jbHVkZSBzdXN5LWRlZmF1bHRzKChcbiAgY29udGFpbmVyOiBhdXRvLFxuICBtYXRoOiBmbHVpZCxcbiAgb3V0cHV0OiBmbG9hdCxcbiAgY29udGFpbmVyLXBvc2l0aW9uOiBjZW50ZXIsXG4gIGd1dHRlci1wb3NpdGlvbjogYWZ0ZXIsXG4gIGdsb2JhbC1ib3gtc2l6aW5nOiBjb250ZW50LWJveCxcbiAgZGVidWc6IChcbiAgICBpbWFnZTogaGlkZSxcbiAgICBjb2xvcjogcmdiYSgjNjZmLCAuMjUpLFxuICAgIG91dHB1dDogYmFja2dyb3VuZCxcbiAgICB0b2dnbGU6IHRvcCByaWdodCxcbiAgKSxcbikpO1xuXG5cbi8vIFZhbGlkIEtleXdvcmQgVmFsdWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gLSBQUklWQVRFOiBET05UJ1QgVE9VQ0hcbiRzdXN5LWtleXdvcmRzOiAoXG4gIGNvbnRhaW5lcjogYXV0byxcbiAgbWF0aDogc3RhdGljIGZsdWlkLFxuICBvdXRwdXQ6IGlzb2xhdGUgZmxvYXQsXG4gIGNvbnRhaW5lci1wb3NpdGlvbjogbGVmdCBjZW50ZXIgcmlnaHQsXG4gIGZsb3c6IGx0ciBydGwsXG4gIGd1dHRlci1wb3NpdGlvbjogYmVmb3JlIGFmdGVyIHNwbGl0IGluc2lkZSBpbnNpZGUtc3RhdGljLFxuICBib3gtc2l6aW5nOiBib3JkZXItYm94IGNvbnRlbnQtYm94LFxuICBzcGFuOiBmdWxsLFxuICBlZGdlOiBmaXJzdCBhbHBoYSBsYXN0IG9tZWdhIGZ1bGwsXG4gIHNwcmVhZDogbmFycm93IHdpZGUgd2lkZXIsXG4gIGd1dHRlci1vdmVycmlkZTogbm8tZ3V0dGVycyBuby1ndXR0ZXIsXG4gIHJvbGU6IG5lc3QsXG4gIGNsZWFyOiBicmVhayBub2JyZWFrLFxuICBkZWJ1ZyBpbWFnZTogc2hvdyBoaWRlIHNob3ctY29sdW1ucyBzaG93LWJhc2VsaW5lLFxuICBkZWJ1ZyBvdXRwdXQ6IGJhY2tncm91bmQgb3ZlcmxheSxcbik7XG5cblxuLy8gUGFyc2UgU3VzeSBLZXl3b3JkcyBhbmQgTWFwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGZ1bmN0aW9uIHBhcnNlLXNldHRpbmdzKFxuICAkc2hvcnQ6ICRzdXN5XG4pIHtcbiAgJF9yZXR1cm46ICgpO1xuXG4gIEBpZiB0eXBlLW9mKCRzaG9ydCkgPT0gbWFwIHtcbiAgICAkX3JldHVybjogJHNob3J0O1xuICB9IEBlbHNlIHtcbiAgICBAZWFjaCAkaXRlbSBpbiAkc2hvcnQge1xuICAgICAgLy8gc3RyaW5nc1xuICAgICAgQGlmIHR5cGUtb2YoJGl0ZW0pID09IHN0cmluZyB7XG4gICAgICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkc3VzeS1rZXl3b3JkcyB7XG4gICAgICAgICAgQGlmIGluZGV4KCR2YWx1ZSwgJGl0ZW0pIHtcbiAgICAgICAgICAgICRfa2V5LXZhbHVlOiBhcHBlbmQoJGtleSwgJGl0ZW0pO1xuICAgICAgICAgICAgJF9yZXR1cm46IF9zdXN5LWRlZXAtc2V0KCRfcmV0dXJuLCAkX2tleS12YWx1ZS4uLik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAvLyBtYXBzXG4gICAgICB9IEBlbHNlIGlmIHR5cGUtb2YoJGl0ZW0pID09IG1hcCB7XG4gICAgICAgICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sICRpdGVtKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRfcmV0dXJuO1xufVxuXG5cbi8vIFBhcnNlIENvbHVtbnMgJiBHdXR0ZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGZ1bmN0aW9uIHBhcnNlLWxheW91dChcbiAgJHNob3J0XG4pIHtcbiAgJF9yZXR1cm46ICgpO1xuICAkX2NvbHVtbnM6ICgpO1xuICAkX2d1dHRlcnM6IG51bGw7XG5cbiAgQGlmIG5vdCh1bml0bGVzcyhudGgobnRoKCRzaG9ydCwgMSksIDEpKSkge1xuICAgICRfZ3V0dGVyczogbnRoKCRzaG9ydCwgMSk7XG4gIH0gQGVsc2Uge1xuICAgICRfY29sdW1uczogKGNvbHVtbnM6IG50aCgkc2hvcnQsIDEpKTtcbiAgICAkX2d1dHRlcnM6IGlmKGxlbmd0aCgkc2hvcnQpID4gMSwgbnRoKCRzaG9ydCwgMiksICRfZ3V0dGVycyk7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkX2d1dHRlcnMpID09IGxpc3QgYW5kIGxlbmd0aCgkX2d1dHRlcnMpID4gMCB7XG4gICAgJF9ndXR0ZXJzOiAoXG4gICAgICBndXR0ZXJzOiBudGgoJF9ndXR0ZXJzLCAyKSAvIG50aCgkX2d1dHRlcnMsIDEpLFxuICAgICAgY29sdW1uLXdpZHRoOiBudGgoJF9ndXR0ZXJzLCAxKSxcbiAgICApO1xuICB9IEBlbHNlIHtcbiAgICAkX2d1dHRlcnM6IGlmKCRfZ3V0dGVycywgKGd1dHRlcnM6ICRfZ3V0dGVycyksICgpKTtcbiAgfVxuXG4gICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sICRfY29sdW1ucyk7XG4gICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sICRfZ3V0dGVycyk7XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cblxuXG4vLyBQYXJzZSBHcmlkL0NvbnRleHRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuQGZ1bmN0aW9uIHBhcnNlLWdyaWQoXG4gICRzaG9ydDogJHN1c3lcbikge1xuICAkX3JldHVybjogcGFyc2Utc2V0dGluZ3MoJHNob3J0KTtcbiAgJF9sYXlvdXQ6ICgpO1xuXG4gIEBpZiB0eXBlLW9mKCRzaG9ydCkgPT0gbWFwIHtcbiAgICAkX3JldHVybjogJHNob3J0O1xuICB9IEBlbHNlIHtcbiAgICBAZWFjaCAkaXRlbSBpbiAkc2hvcnQge1xuICAgICAgLy8gbnVtYmVyIG9yIGxpc3RcbiAgICAgIEBpZiB0eXBlLW9mKCRpdGVtKSA9PSBudW1iZXIgb3IgdHlwZS1vZigkaXRlbSkgPT0gbGlzdCB7XG4gICAgICAgIEBpZiB0eXBlLW9mKCRpdGVtKSA9PSBsaXN0IG9yIHVuaXRsZXNzKCRpdGVtKSB7XG4gICAgICAgICAgJF9sYXlvdXQ6IGFwcGVuZCgkX2xheW91dCwgJGl0ZW0pO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAoY29udGFpbmVyOiAkaXRlbSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJF9sYXlvdXQ6IGlmKGxlbmd0aCgkX2xheW91dCkgPiAwLCBwYXJzZS1sYXlvdXQoJF9sYXlvdXQpLCAkX2xheW91dCk7XG4gIH1cblxuICBAcmV0dXJuIG1hcC1tZXJnZSgkX3JldHVybiwgJF9sYXlvdXQpO1xufVxuXG5cbi8vIFBhcnNlIFNwYW5cbi8vIC0tLS0tLS0tLS1cbkBmdW5jdGlvbiBwYXJzZS1zcGFuKFxuICAkc2hvcnQsXG4gICRrZXk6IHNwYW5cbikge1xuICAkX3JldHVybjogKCk7XG5cbiAgQGlmIHR5cGUtb2YoJHNob3J0KSA9PSBtYXAge1xuICAgICRfcmV0dXJuOiAkc2hvcnQ7XG4gIH0gQGVsc2Uge1xuICAgICRfYXQ6IGluZGV4KCRzaG9ydCwgYXQpO1xuXG4gICAgQGlmICRfYXQge1xuICAgICAgJF9sb2NpOiAkX2F0ICsgMTtcbiAgICAgICRfbG9jYXRpb246IG50aCgkc2hvcnQsICRfbG9jaSk7XG4gICAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAobG9jYXRpb246ICRfbG9jYXRpb24pKTtcbiAgICAgICRzaG9ydDogc2V0LW50aCgkc2hvcnQsICRfYXQsIG51bGwpO1xuICAgICAgJHNob3J0OiBzZXQtbnRoKCRzaG9ydCwgJF9sb2NpLCBudWxsKTtcbiAgICB9XG5cbiAgICAkX2k6IDE7XG4gICAgJF9zcGFuOiAoKTtcblxuICAgIEB3aGlsZSAkX2kgPD0gbGVuZ3RoKCRzaG9ydCkge1xuICAgICAgJF90aGlzOiBudGgoJHNob3J0LCAkX2kpO1xuXG4gICAgICBAaWYgdHlwZS1vZigkX3RoaXMpID09IG51bWJlciB7XG4gICAgICAgICRfc3BhbjogYXBwZW5kKCRfc3BhbiwgJF90aGlzKTtcbiAgICAgICAgJHNob3J0OiBzZXQtbnRoKCRzaG9ydCwgJF9pLCBudWxsKTtcbiAgICAgIH0gQGVsc2UgaWYgJF90aGlzID09IG9mIHtcbiAgICAgICAgJHNob3J0OiBzZXQtbnRoKCRzaG9ydCwgJF9pLCBudWxsKTtcbiAgICAgICAgJF9pOiBsZW5ndGgoJHNob3J0KSArIDE7XG4gICAgICB9XG5cbiAgICAgICRfaTogJF9pICsgMTtcbiAgICB9XG5cbiAgICBAaWYgbGVuZ3RoKCRfc3BhbikgPiAwIHtcbiAgICAgICRfc3BhbjogaWYobGVuZ3RoKCRfc3BhbikgPT0gMSwgbnRoKCRfc3BhbiwgMSksICRfc3Bhbik7XG4gICAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAoJGtleTogJF9zcGFuKSk7XG4gICAgfVxuXG4gICAgJF9yZXR1cm46IG1hcC1tZXJnZSgkX3JldHVybiwgcGFyc2UtZ3JpZCgkc2hvcnQpKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG5cblxuLy8gUGFyc2UgR3V0dGVyc1xuLy8gLS0tLS0tLS0tLS0tLVxuQGZ1bmN0aW9uIHBhcnNlLWd1dHRlcnMoXG4gICRzaG9ydDogJHN1c3lcbikge1xuICAkX2d1dHRlcnM6IHBhcnNlLXNwYW4oJHNob3J0LCBndXR0ZXItb3ZlcnJpZGUpO1xuICAkX3NwYW46IHN1c3ktZ2V0KGd1dHRlci1vdmVycmlkZSwgJF9ndXR0ZXJzKTtcblxuICBAaWYgJF9zcGFuIGFuZCBub3QobWFwLWdldCgkX2d1dHRlcnMsIGNvbHVtbnMpKSB7XG4gICAgJF9jb250ZXh0OiAoKTtcbiAgICAkX25ldzogKCk7XG5cbiAgICBAZWFjaCAkaXRlbSBpbiAkX3NwYW4ge1xuICAgICAgQGlmIHR5cGUtb2YoJGl0ZW0pID09IG51bWJlciBhbmQgdW5pdGxlc3MoJGl0ZW0pIHtcbiAgICAgICAgJF9jb250ZXh0OiBhcHBlbmQoJF9jb250ZXh0LCAkaXRlbSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJF9uZXc6IGFwcGVuZCgkX25ldywgJGl0ZW0pO1xuICAgICAgfVxuICAgIH1cblxuICAgICRfY29udGV4dDogcGFyc2UtZ3JpZCgkX2NvbnRleHQpO1xuICAgICRfbmV3OiBpZihsZW5ndGgoJF9uZXcpID09IDAsIG51bGwsICRfbmV3KTtcbiAgICAkX25ldzogaWYobGVuZ3RoKCRfbmV3KSA9PSAxLCBudGgoJF9uZXcsIDEpLCAkX25ldyk7XG4gICAgJF9uZXc6IChndXR0ZXItb3ZlcnJpZGU6IGlmKCRfbmV3ICE9ICRfc3BhbiwgJF9uZXcsICRfc3BhbikpO1xuXG4gICAgJF9ndXR0ZXJzOiBtYXAtbWVyZ2UoJF9ndXR0ZXJzLCAkX25ldyk7XG4gICAgJF9ndXR0ZXJzOiBtYXAtbWVyZ2UoJF9ndXR0ZXJzLCAkX2NvbnRleHQpO1xuICB9XG5cbiAgQHJldHVybiAkX2d1dHRlcnM7XG59XG4iLCIvLyBWYWxpZGF0aW9uXG4vLyA9PT09PT09PT09XG5cblxuLy8gVmFsaWRhdGUgQ29sdW1uIE1hdGhcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AZnVuY3Rpb24gdmFsaWQtY29sdW1uLW1hdGgoXG4gICRtYXRoLFxuICAkY29sdW1uLXdpZHRoXG4pIHtcbiAgQGlmICRtYXRoID09IHN0YXRpYyBhbmQgbm90KCRjb2x1bW4td2lkdGgpIHtcbiAgICBAZXJyb3IgJ1N0YXRpYyBtYXRoIHJlcXVpcmVzIGEgdmFsaWQgY29sdW1uLXdpZHRoIHNldHRpbmcuJztcbiAgfVxuXG4gIEByZXR1cm4gJGNvbHVtbi13aWR0aDtcbn1cbiIsIi8vIEdyaWQgU3ludGF4XG4vLyA9PT09PT09PT09PVxuXG5cbi8vIExheW91dFxuLy8gLS0tLS0tXG4vLyBTZXQgYSBuZXcgbGF5b3V0IHVzaW5nIGEgc2hvcnRoYW5kXG4vLyAtICRsYXlvdXQ6IDxzZXR0aW5ncz5cbi8vIC0gJGNsZWFuOiBib29sZWFuXG5AbWl4aW4gbGF5b3V0KFxuICAkbGF5b3V0LFxuICAkY2xlYW46IGZhbHNlXG4pIHtcbiAgJGluc3BlY3QgIDogJGxheW91dDtcbiAgJHN1c3kgICAgIDogX2dldC1sYXlvdXQoJGxheW91dCwgJGNsZWFuKSAhZ2xvYmFsO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChsYXlvdXQsICRpbnNwZWN0KTtcbn1cblxuXG4vLyBVc2UgR3JpZFxuLy8gLS0tLS0tLS1cbi8vIFVzZSBhbiBhcmJpdHJhcnkgbGF5b3V0IGZvciBhIHNlY3Rpb24gb2YgY29kZVxuLy8gLSAkbGF5b3V0OiA8c2V0dGluZ3M+XG4vLyAtICRjbGVhbjogYm9vbGVhblxuQG1peGluIHdpdGgtbGF5b3V0KFxuICAkbGF5b3V0LFxuICAkY2xlYW46IGZhbHNlXG4pIHtcbiAgJGluc3BlY3QgIDogJGxheW91dDtcbiAgJG9sZCAgICAgIDogJHN1c3k7XG4gICRzdXN5ICAgICA6IF9nZXQtbGF5b3V0KCRsYXlvdXQsICRjbGVhbikgIWdsb2JhbDtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3Qod2l0aC1sYXlvdXQsICRpbnNwZWN0KTtcblxuICBAY29udGVudDtcblxuICAkc3VzeTogJG9sZCAhZ2xvYmFsO1xufVxuXG5cbi8vIExheW91dFxuLy8gLS0tLS0tXG4vLyBSZXR1cm4gYSBwYXJzZWQgbGF5b3V0IG1hcCBiYXNlZCBvbiBzaG9ydGhhbmQgc3ludGF4XG4vLyAtICRsYXlvdXQ6IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBsYXlvdXQoXG4gICRsYXlvdXQ6ICRzdXN5XG4pIHtcbiAgQHJldHVybiBwYXJzZS1ncmlkKCRsYXlvdXQpO1xufVxuXG5cbi8vIEdldCBMYXlvdXRcbi8vIC0tLS0tLS0tLS1cbi8vIFJldHVybiBhIG5ldyBsYXlvdXQgYmFzZWQgb24gY3VycmVudCBhbmQgZ2l2ZW4gc2V0dGluZ3Ncbi8vIC0gJGxheW91dDogPHNldHRpbmdzPlxuLy8gLSAkY2xlYW46IGJvb2xlYW5cbkBmdW5jdGlvbiBfZ2V0LWxheW91dChcbiAgJGxheW91dCxcbiAgJGNsZWFuOiBmYWxzZVxuKSB7XG4gICRsYXlvdXQ6IGxheW91dCgkbGF5b3V0KTtcbiAgQHJldHVybiBpZigkY2xlYW4sICRsYXlvdXQsIF9zdXN5LWRlZXAtbWVyZ2UoJHN1c3ksICRsYXlvdXQpKTtcbn1cbiIsIi8vIFN1c3kgQm94IFNpemluZ1xuLy8gPT09PT09PT09PT09PT09PT1cblxuLy8gR2xvYmFsIEJveCBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTZXQgYSBib3ggbW9kZWwgZ2xvYmFsbHkgb24gYWxsIGVsZW1lbnRzLlxuLy8gLSBbJGJveF06IGJvcmRlci1ib3ggfCBjb250ZW50LWJveFxuLy8gLSBbJGluaGVyaXRdOiB0cnVlIHwgZmFsc2VcbkBtaXhpbiBnbG9iYWwtYm94LXNpemluZyhcbiAgJGJveDogc3VzeS1nZXQoZ2xvYmFsLWJveC1zaXppbmcpLFxuICAkaW5oZXJpdDogZmFsc2Vcbikge1xuICAkaW5zcGVjdDogJGJveDtcblxuICBAaWYgJGluaGVyaXQge1xuICAgIEBhdC1yb290IHtcbiAgICAgICBodG1sIHsgQGluY2x1ZGUgb3V0cHV0KChib3gtc2l6aW5nOiAkYm94KSk7IH1cbiAgICAgICAqLCAqOmJlZm9yZSwgKjphZnRlciB7IGJveC1zaXppbmc6IGluaGVyaXQ7IH1cbiAgICAgfVxuICB9IEBlbHNlIHtcbiAgICAqLCAqOmJlZm9yZSwgKjphZnRlciB7IEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogJGJveCkpOyB9XG4gIH1cblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QoZ2xvYmFsLWJveC1zaXppbmcsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgdXBkYXRlLWJveC1tb2RlbCgkYm94KTtcbn1cblxuLy8gQm9yZGVyIEJveCBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4vLyBBIGxlZ2FjeSBzaG9ydGN1dC4uLlxuLy8gLSBbJGluaGVyaXRdOiB0cnVlIHwgZmFsc2VcbkBtaXhpbiBib3JkZXItYm94LXNpemluZyhcbiAgJGluaGVyaXQ6IGZhbHNlXG4pIHtcbiAgQGluY2x1ZGUgZ2xvYmFsLWJveC1zaXppbmcoYm9yZGVyLWJveCwgJGluaGVyaXQpO1xufVxuXG4vLyBVcGRhdGUgQm94IE1vZGVsXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG4vLyBQUklWQVRFOiBVcGRhdGVzIGdsb2JhbCBib3ggbW9kZWwgc2V0dGluZ1xuQG1peGluIHVwZGF0ZS1ib3gtbW9kZWwoXG4gICRib3hcbikge1xuICBAaWYgJGJveCAhPSBzdXN5LWdldChnbG9iYWwtYm94LXNpemluZykge1xuICBAaW5jbHVkZSBzdXN5LXNldChnbG9iYWwtYm94LXNpemluZywgJGJveCk7XG4gIH1cbn1cbiIsIi8vIENvbnRleHQgU3ludGF4XG4vLyA9PT09PT09PT09PT09PVxuXG4vLyBOZXN0ZWQgW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiBhIHN1YnNldCBncmlkIGZvciBuZXN0ZWQgY29udGV4dC5cbi8vIC0gJGNvbnRleHQgICA6IDxzcGFuPlxuQGZ1bmN0aW9uIG5lc3RlZChcbiAgJGNvbnRleHRcbikge1xuICAkY29udGV4dCAgICA6IHBhcnNlLXNwYW4oJGNvbnRleHQpO1xuICAkc3BhbiAgICAgICA6IHN1c3ktZ2V0KHNwYW4sICRjb250ZXh0KTtcbiAgJGxvY2F0aW9uICAgOiBnZXQtbG9jYXRpb24oJGNvbnRleHQpO1xuICAkY29sdW1ucyAgICA6IHN1c3ktZ2V0KGNvbHVtbnMsICRjb250ZXh0KTtcblxuICBAcmV0dXJuIHN1c3ktc2xpY2UoJHNwYW4sICRsb2NhdGlvbiwgJGNvbHVtbnMpO1xufVxuXG4vLyBOZXN0ZWQgW21peGluXVxuLy8gLS0tLS0tLS0tLS0tLS1cbi8vIFVzZSBhIHN1YnNldCBncmlkIGZvciBhIG5lc3RlZCBjb250ZXh0XG4vLyAtICRjb250ZXh0ICAgOiA8c3Bhbj5cbi8vIC0gQGNvbnRlbnQgICA6IDxjb250ZW50PlxuQG1peGluIG5lc3RlZChcbiAgJGNvbnRleHRcbikge1xuICAkaW5zcGVjdCAgOiAkY29udGV4dDtcbiAgJGNvbnRleHQgIDogcGFyc2Utc3BhbigkY29udGV4dCk7XG4gICRvbGQgICAgICA6IHN1c3ktZ2V0KGNvbHVtbnMpO1xuICAkc3VzeSAgICAgOiBtYXAtbWVyZ2UoJHN1c3ksIChjb2x1bW5zOiBuZXN0ZWQoJGNvbnRleHQpKSkgIWdsb2JhbDtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QobmVzdGVkLCAkaW5zcGVjdCk7XG4gIEBjb250ZW50O1xuXG4gICRzdXN5ICAgICA6IG1hcC1tZXJnZSgkc3VzeSwgKGNvbHVtbnM6ICRvbGQpKSAhZ2xvYmFsO1xufVxuIiwiLy8gQmFja2dyb3VuZCBHcmlkIFN5bnRheFxuLy8gPT09PT09PT09PT09PT09PT09PT09PVxuXG4kc3VzeS1vdmVybGF5LWdyaWQtaGVhZC1leGlzdHM6IGZhbHNlO1xuXG5cbi8vIFNob3cgR3JpZC9zXG4vLyAtLS0tLS0tLS0tLVxuLy8gU2hvdyBncmlkIG9uIGFueSBlbGVtZW50IHVzaW5nIGVpdGhlciBiYWNrZ3JvdW5kIG9yIG92ZXJsYXkuXG4vLyAtIFskZ3JpZF0gIDogPHNldHRpbmdzPlxuQG1peGluIHNob3ctZ3JpZChcbiAgJGdyaWQ6ICRzdXN5XG4pIHtcbiAgJGluc3BlY3Q6ICRncmlkO1xuICAkX291dHB1dDogZGVidWctZ2V0KG91dHB1dCwgJGdyaWQpO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChzaG93LWdyaWQsICRpbnNwZWN0KTtcbiAgQGlmICRfb3V0cHV0ID09IG92ZXJsYXkgYW5kIHN1c3ktZ2V0KGRlYnVnIGltYWdlLCAkZ3JpZCkgIT0gaGlkZSB7XG4gICAgQGluY2x1ZGUgb3ZlcmxheS1ncmlkKCRncmlkKTtcbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC1ncmlkKCRncmlkKTtcbiAgfVxufVxuXG5AbWl4aW4gc2hvdy1ncmlkcyhcbiAgJGdyaWQ6ICRzdXN5XG4pIHtcbiAgQGluY2x1ZGUgc2hvdy1ncmlkKCRncmlkKTtcbn1cblxuLy8gQmFja2dyb3VuZCBHcmlkXG4vLyAtLS0tLS0tLS0tLS0tLS1cbi8vIFNob3cgYSBncmlkIGJhY2tncm91bmQgb24gYW55IGVsZW1lbnQuXG4vLyAtIFskZ3JpZF0gIDogPHNldHRpbmdzPlxuQG1peGluIGJhY2tncm91bmQtZ3JpZChcbiAgJGdyaWQ6ICRzdXN5XG4pIHtcbiAgJGluc3BlY3QgIDogJGdyaWQ7XG4gICRfb3V0cHV0ICA6IGdldC1iYWNrZ3JvdW5kKCRncmlkKTtcblxuICBAaWYgbGVuZ3RoKCRfb3V0cHV0KSA+IDAge1xuICAgICRfZmxvdzogc3VzeS1nZXQoZmxvdywgJGdyaWQpO1xuXG4gICAgJF9pbWFnZTogKCk7XG4gICAgQGVhY2ggJG5hbWUsICRsYXllciBpbiBtYXAtZ2V0KCRfb3V0cHV0LCBpbWFnZSkge1xuICAgICAgJF9kaXJlY3Rpb246IGlmKCRuYW1lID09IGJhc2VsaW5lLCB0byBib3R0b20sIHRvIHRvKCRfZmxvdykpO1xuICAgICAgJF9pbWFnZTogYXBwZW5kKCRfaW1hZ2UsIGxpbmVhci1ncmFkaWVudCgkX2RpcmVjdGlvbiwgJGxheWVyKSwgY29tbWEpO1xuICAgIH1cbiAgICAkX291dHB1dDogbWFwLW1lcmdlKCRfb3V0cHV0LCAoaW1hZ2U6ICRfaW1hZ2UpKTtcblxuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtZ3JpZC1vdXRwdXQoJF9vdXRwdXQuLi4pO1xuICAgIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChiYWNrZ3JvdW5kLWdyaWQsICRpbnNwZWN0KTtcbiAgfVxufVxuXG5cbi8vIE92ZXJsYXkgR3JpZFxuLy8gLS0tLS0tLS0tLS0tXG4vLyBHZW5lcmF0ZSBhbiBpY29uIHRvIHRyaWdnZXIgZ3JpZC1vdmVybGF5cyBvbiBhbnkgZ2l2ZW4gZWxlbWVudHMuXG4vLyAkZ3JpZHMuLi4gIDogPHNlbGVjdG9yPiBbPHNldHRpbmdzPl0gWywgPHNlbGVjdG9yPl0qXG5AbWl4aW4gb3ZlcmxheS1ncmlkIChcbiAgJGdyaWQ6ICRzdXN5XG4pIHtcbiAgQGlmIG5vdCgkc3VzeS1vdmVybGF5LWdyaWQtaGVhZC1leGlzdHMpIHtcbiAgICBAYXQtcm9vdCBoZWFkIHsgQGluY2x1ZGUgb3ZlcmxheS1oZWFkKCRncmlkKTsgfVxuICAgIEBhdC1yb290IGhlYWQ6YmVmb3JlIHsgQGluY2x1ZGUgb3ZlcmxheS10cmlnZ2VyOyB9XG4gICAgQGF0LXJvb3QgaGVhZDpob3ZlciB7IEBpbmNsdWRlIG92ZXJsYXktdHJpZ2dlci1ob3ZlcjsgfVxuICAgICRzdXN5LW92ZXJsYXktZ3JpZC1oZWFkLWV4aXN0czogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgaGVhZDpob3ZlciB+ICYsXG4gIGhlYWQ6aG92ZXIgfiBib2R5ICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmlkLW92ZXJsYXktYmFzZTtcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtZ3JpZCgkZ3JpZCk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gW1ByaXZhdGVdIE92ZXJsYXkgVHJpZ2dlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIG92ZXJsYXktdHJpZ2dlciB7XG4gIGNvbnRlbnQ6IFwifHx8XCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgZm9udDoge1xuICAgIGZhbWlseTogc2Fucy1zZXJpZjtcbiAgICBzaXplOiAxNnB4O1xuICAgIHdlaWdodDogYm9sZDtcbiAgfVxufVxuXG5cbi8vIFtQcml2YXRlXSBPdmVybGF5IFRyaWdnZXIgSG92ZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBvdmVybGF5LXRyaWdnZXItaG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKHdoaXRlLCAuNSk7XG4gIGNvbG9yOiByZWQ7XG59XG5cblxuLy8gW1ByaXZhdGVdIE92ZXJsYXkgSGVhZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gPGhlYWQ+IHN0eWxlcyB0byBjcmVhdGUgZ3JpZCBvdmVybGF5IHRvZ2dsZVxuQG1peGluIG92ZXJsYXktaGVhZCAoXG4gICRncmlkOiAkc3VzeVxuKSB7XG4gICRfdG9nZ2xlOiBkZWJ1Zy1nZXQodG9nZ2xlLCAkZ3JpZCk7XG4gICRfaG9yejogbnVsbDtcbiAgJF92ZXJ0OiBudWxsO1xuXG4gIEBlYWNoICRzaWRlIGluICRfdG9nZ2xlIHtcbiAgICAkX2hvcno6IGlmKCRzaWRlID09IGxlZnQgb3IgJHNpZGUgPT0gcmlnaHQsICRzaWRlLCAkX2hvcnopO1xuICAgICRfdmVydDogaWYoJHNpZGUgPT0gdG9wIG9yICRzaWRlID09IGJvdHRvbSwgJHNpZGUsICRfdmVydCk7XG4gIH1cblxuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGZpeGVkO1xuICAjeyRfaG9yen06IDEwcHg7XG4gICN7JF92ZXJ0fTogMTBweDtcbiAgei1pbmRleDogOTk5O1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZDogcmdiYSh3aGl0ZSwgLjI1KTtcbn1cblxuXG4vLyBbUHJpdmF0ZV0gR3JpZCBPdmVybGF5IEJhc2Vcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQmFzZSBzdHlsZXMgZm9yIGdlbmVyYXRpbmcgYSBncmlkIG92ZXJsYXlcbkBtaXhpbiBncmlkLW92ZXJsYXktYmFzZSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICB6LWluZGV4OiA5OTg7XG59XG5cblxuLy8gR2V0IFN5bW1ldHJpY2FsIEJhY2tncm91bmRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAtICRncmlkOiA8bWFwPlxuQGZ1bmN0aW9uIGdldC1iYWNrZ3JvdW5kLXN5bShcbiAgJGdyaWRcbikge1xuICAkZ3JpZCAgICAgICAgICAgOiBwYXJzZS1ncmlkKCRncmlkKTtcbiAgJF9ndXR0ZXJzICAgICAgIDogc3VzeS1nZXQoZ3V0dGVycywgJGdyaWQpO1xuICAkX2NvbHVtbi13aWR0aCAgOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRncmlkKTtcbiAgJF9tYXRoICAgICAgICAgIDogc3VzeS1nZXQobWF0aCwgJGdyaWQpO1xuXG4gICRfY29sb3IgICAgICAgICA6IGRlYnVnLWdldChjb2xvcik7XG4gICRfdHJhbnMgICAgICAgICA6IHRyYW5zcGFyZW50O1xuICAkX2xpZ2h0ICAgICAgICAgOiBsaWdodGVuKCRfY29sb3IsIDE1JSk7XG5cbiAgJF9lbmQgICAgICAgICAgIDogMSArICRfZ3V0dGVycztcbiAgJF9hZnRlciAgICAgICAgIDogcGVyY2VudGFnZSgxLyRfZW5kKTtcbiAgJF9zdG9wcyAgICAgICAgIDogKCk7XG4gICRfc2l6ZSAgICAgICAgICA6IHNwYW4oMSAkZ3JpZCB3aWRlKTtcblxuICBAaWYgaXMtaW5zaWRlKCRncmlkKSB7XG4gICAgJF9zdG9wczogJF9jb2xvciwgJF9saWdodDtcbiAgfSBAZWxzZSBpZiBpcy1zcGxpdCgkZ3JpZCkge1xuICAgICRfc3BsaXQ6ICRfZ3V0dGVycy8yO1xuICAgICRfYmVmb3JlOiBwZXJjZW50YWdlKCRfc3BsaXQvJF9lbmQpO1xuICAgICRfYWZ0ZXI6IHBlcmNlbnRhZ2UoKDEgKyAkX3NwbGl0KS8kX2VuZCk7XG4gICAgJF9zdG9wczogJF90cmFucyAkX2JlZm9yZSwgJF9jb2xvciAkX2JlZm9yZSwgJF9saWdodCAkX2FmdGVyLCAkX3RyYW5zICRfYWZ0ZXI7XG4gIH0gQGVsc2Uge1xuICAgICRfc3RvcHM6ICRfY29sb3IsICRfbGlnaHQgJF9hZnRlciwgJF90cmFucyAkX2FmdGVyO1xuICB9XG5cbiAgQGlmICRfbWF0aCA9PSBzdGF0aWMge1xuICAgICRfc2l6ZTogdmFsaWQtY29sdW1uLW1hdGgoJF9tYXRoLCAkX2NvbHVtbi13aWR0aCkgKiAkX2VuZDtcbiAgfVxuXG4gICRfb3V0cHV0OiAoXG4gICAgaW1hZ2U6IChjb2x1bW5zOiAkX3N0b3BzKSxcbiAgICBzaXplOiAkX3NpemUsXG4gICk7XG5cbiAgQHJldHVybiAkX291dHB1dDtcbn1cblxuXG4vLyBHZXQgQXN5bW1ldHJpY2FsIEluc2lkZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gJGdyaWQ6IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBnZXQtYXN5bS1pbnNpZGUoXG4gICRncmlkXG4pIHtcbiAgJGdyaWQgICAgIDogcGFyc2UtZ3JpZCgkZ3JpZCk7XG4gICRfY29sdW1ucyA6IHN1c3ktZ2V0KGNvbHVtbnMsICRncmlkKTtcblxuICAkX2NvbG9yICAgOiBkZWJ1Zy1nZXQoY29sb3IpO1xuICAkX2xpZ2h0ICAgOiBsaWdodGVuKCRfY29sb3IsIDE1JSk7XG4gICRfc3RvcHMgICA6ICgpO1xuXG4gIEBmb3IgJGxvY2F0aW9uIGZyb20gMSB0aHJvdWdoIHN1c3ktY291bnQoJF9jb2x1bW5zKSB7XG4gICAgJHRoaXMtc3RvcDogKCk7XG5cbiAgICBAaWYgJGxvY2F0aW9uID09IDEge1xuICAgICAgJHRoaXMtc3RvcDogYXBwZW5kKCR0aGlzLXN0b3AsICRfY29sb3IsIGNvbW1hKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRzdGFydDogcGFyc2Utc3BhbigxIGF0ICRsb2NhdGlvbiAkZ3JpZCk7XG4gICAgICAkc3RhcnQ6IGdldC1pc29sYXRpb24oJHN0YXJ0KTtcbiAgICAgICR0aGlzLXN0b3A6IGFwcGVuZCgkdGhpcy1zdG9wLCAkX2NvbG9yICRzdGFydCwgY29tbWEpO1xuICAgIH1cblxuICAgIEBpZiAkbG9jYXRpb24gPT0gc3VzeS1jb3VudCgkX2NvbHVtbnMpIHtcbiAgICAgICR0aGlzLXN0b3A6IGFwcGVuZCgkdGhpcy1zdG9wLCAkX2xpZ2h0LCBjb21tYSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkX2VuZDogcGFyc2Utc3BhbigxIGF0ICgkbG9jYXRpb24gKyAxKSAkZ3JpZCk7XG4gICAgICAkX2VuZDogZ2V0LWlzb2xhdGlvbigkX2VuZCk7XG4gICAgICAkdGhpcy1zdG9wOiBhcHBlbmQoJHRoaXMtc3RvcCwgJF9saWdodCAkX2VuZCwgY29tbWEpO1xuICAgIH1cblxuICAgICRfc3RvcHM6IGpvaW4oJF9zdG9wcywgJHRoaXMtc3RvcCwgY29tbWEpO1xuICB9XG5cbiAgQHJldHVybiAkX3N0b3BzO1xufVxuXG5cbi8vIEdldCBBc3ltbWV0cmljYWwgU3BsaXRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gJGdyaWQ6IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBnZXQtYXN5bS1zcGxpdChcbiAgJGdyaWRcbikge1xuICAkZ3JpZCAgICAgOiBwYXJzZS1ncmlkKCRncmlkKTtcbiAgJF9jb2x1bW5zIDogc3VzeS1nZXQoY29sdW1ucywgJGdyaWQpO1xuXG4gICRfY29sb3IgICA6IGRlYnVnLWdldChjb2xvcik7XG4gICRfbGlnaHQgICA6IGxpZ2h0ZW4oJF9jb2xvciwgMTUlKTtcbiAgJF9zdG9wcyAgIDogKCk7XG5cbiAgQGZvciAkbG9jYXRpb24gZnJvbSAxIHRocm91Z2ggc3VzeS1jb3VudCgkX2NvbHVtbnMpIHtcbiAgICAkdGhpcy1zdG9wOiAoKTtcblxuICAgICRzdGFydDogcGFyc2Utc3BhbigxIGF0ICRsb2NhdGlvbiAkZ3JpZCk7XG4gICAgJHN0YXJ0OiBnZXQtaXNvbGF0aW9uKCRzdGFydCk7XG4gICAgJHRoaXMtc3RvcDogYXBwZW5kKCR0aGlzLXN0b3AsIHRyYW5zcGFyZW50ICRzdGFydCwgY29tbWEpO1xuICAgICR0aGlzLXN0b3A6IGFwcGVuZCgkdGhpcy1zdG9wLCAkX2NvbG9yICRzdGFydCwgY29tbWEpO1xuXG4gICAgJF9lbmQ6ICRzdGFydCArIHNwYW4oMSBhdCAkbG9jYXRpb24gJGdyaWQpO1xuICAgICR0aGlzLXN0b3A6IGFwcGVuZCgkdGhpcy1zdG9wLCAkX2xpZ2h0ICRfZW5kLCBjb21tYSk7XG4gICAgJHRoaXMtc3RvcDogYXBwZW5kKCR0aGlzLXN0b3AsIHRyYW5zcGFyZW50ICRfZW5kLCBjb21tYSk7XG5cbiAgICAkX3N0b3BzOiBqb2luKCRfc3RvcHMsICR0aGlzLXN0b3AsIGNvbW1hKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9zdG9wcztcbn1cblxuXG4vLyBHZXQgQXN5bW1ldHJpY2FsIE91dHNpZGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gLSAkZ3JpZDogPHNldHRpbmdzPlxuQGZ1bmN0aW9uIGdldC1hc3ltLW91dHNpZGUoXG4gICRncmlkXG4pIHtcbiAgJGdyaWQgICAgIDogcGFyc2UtZ3JpZCgkZ3JpZCk7XG4gICRfY29sdW1ucyA6IHN1c3ktZ2V0KGNvbHVtbnMsICRncmlkKTtcblxuICAkX2NvbG9yICAgOiBkZWJ1Zy1nZXQoY29sb3IpO1xuICAkX2xpZ2h0ICAgOiBsaWdodGVuKCRfY29sb3IsIDE1JSk7XG4gICRfdHJhbnMgICA6IHRyYW5zcGFyZW50O1xuICAkX3N0b3BzICAgOiAoKTtcblxuICBAZm9yICRsb2NhdGlvbiBmcm9tIDEgdGhyb3VnaCBzdXN5LWNvdW50KCRfY29sdW1ucykge1xuICAgICR0aGlzLXN0b3A6ICgpO1xuXG4gICAgQGlmICRsb2NhdGlvbiA9PSAxIHtcbiAgICAgICR0aGlzLXN0b3A6IGFwcGVuZCgkdGhpcy1zdG9wLCAkX2NvbG9yLCBjb21tYSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkc3RhcnQ6IHBhcnNlLXNwYW4oMSBhdCAkbG9jYXRpb24gJGdyaWQpO1xuICAgICAgJHN0YXJ0OiBnZXQtaXNvbGF0aW9uKCRzdGFydCk7XG4gICAgICAkdGhpcy1zdG9wOiBhcHBlbmQoJHRoaXMtc3RvcCwgJF9jb2xvciAkc3RhcnQsIGNvbW1hKTtcbiAgICB9XG5cbiAgICBAaWYgJGxvY2F0aW9uID09IHN1c3ktY291bnQoJF9jb2x1bW5zKSB7XG4gICAgICAkdGhpcy1zdG9wOiBhcHBlbmQoJHRoaXMtc3RvcCwgJF9saWdodCwgY29tbWEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJGd1dHRlcjogZ2V0LXNwYW4td2lkdGgoZmlyc3QgJGxvY2F0aW9uICRncmlkKTtcblxuICAgICAgJF9lbmQ6IHBhcnNlLXNwYW4oMSBhdCAoJGxvY2F0aW9uICsgMSkgJGdyaWQpO1xuICAgICAgJF9lbmQ6IGdldC1pc29sYXRpb24oJF9lbmQpO1xuXG4gICAgICAkZ3V0dGVyOiAkX2xpZ2h0ICRndXR0ZXIsICRfdHJhbnMgJGd1dHRlciwgJF90cmFucyAkX2VuZDtcbiAgICAgICR0aGlzLXN0b3A6IGpvaW4oJHRoaXMtc3RvcCwgJGd1dHRlciwgY29tbWEpO1xuICAgIH1cblxuICAgICRfc3RvcHM6IGpvaW4oJF9zdG9wcywgJHRoaXMtc3RvcCwgY29tbWEpO1xuICB9XG5cbiAgQHJldHVybiAkX3N0b3BzO1xufVxuXG5cbi8vIEdldCBBc3ltbWV0cmljYWwgQmFja2dyb3VuZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAtICRncmlkOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gZ2V0LWJhY2tncm91bmQtYXN5bShcbiAgJGdyaWRcbikge1xuICAkX3N0b3BzOiAoKTtcblxuICBAaWYgaXMtaW5zaWRlKCRncmlkKSB7XG4gICAgJF9zdG9wczogZ2V0LWFzeW0taW5zaWRlKCRncmlkKTtcbiAgfSBAZWxzZSBpZiBpcy1zcGxpdCgkZ3JpZCkge1xuICAgICRfc3RvcHM6IGdldC1hc3ltLXNwbGl0KCRncmlkKTtcbiAgfSBAZWxzZSB7XG4gICAgJF9zdG9wczogZ2V0LWFzeW0tb3V0c2lkZSgkZ3JpZCk7XG4gIH1cblxuICBAcmV0dXJuIChpbWFnZTogKGNvbHVtbnM6ICRfc3RvcHMpKTtcbn1cblxuXG4vLyBHZXQgQmFja2dyb3VuZFxuLy8gLS0tLS0tLS0tLS0tLS1cbi8vIC0gJGdyaWQ6IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBnZXQtYmFja2dyb3VuZChcbiAgJGdyaWRcbikge1xuICAkZ3JpZCAgICAgOiBwYXJzZS1ncmlkKCRncmlkKTtcbiAgJF9zaG93ICAgIDogc3VzeS1nZXQoZGVidWcgaW1hZ2UsICRncmlkKTtcbiAgJF9yZXR1cm4gIDogKCk7XG5cbiAgQGlmICRfc2hvdyBhbmQgJF9zaG93ICE9ICdoaWRlJyB7XG4gICAgJF9jb2x1bW5zOiBzdXN5LWdldChjb2x1bW5zLCAkZ3JpZCk7XG5cbiAgICBAaWYgJF9zaG93ICE9ICdzaG93LWJhc2VsaW5lJyB7XG4gICAgICAkX3N5bTogaXMtc3ltbWV0cmljYWwoJF9jb2x1bW5zKTtcbiAgICAgICRfcmV0dXJuOiBpZigkX3N5bSwgZ2V0LWJhY2tncm91bmQtc3ltKCRncmlkKSwgZ2V0LWJhY2tncm91bmQtYXN5bSgkZ3JpZCkpO1xuICAgICAgJF9yZXR1cm46IG1hcC1tZXJnZSgkX3JldHVybiwgKGNsaXA6IGNvbnRlbnQtYm94KSk7XG4gICAgfVxuXG4gICAgQGlmICRfc2hvdyAhPSAnc2hvdy1jb2x1bW5zJ1xuICAgICAgYW5kIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoYmFzZS1saW5lLWhlaWdodClcbiAgICAgIGFuZCB0eXBlLW9mKCRiYXNlLWxpbmUtaGVpZ2h0KSA9PSAnbnVtYmVyJ1xuICAgICAgYW5kIG5vdCB1bml0bGVzcygkYmFzZS1saW5lLWhlaWdodCkge1xuICAgICAgJF9jb2xvcjogdmFyaWFibGUtZXhpc3RzKCdncmlkLWJhY2tncm91bmQtYmFzZWxpbmUtY29sb3InKTtcbiAgICAgICRfY29sb3I6IGlmKCRfY29sb3IsICRncmlkLWJhY2tncm91bmQtYmFzZWxpbmUtY29sb3IsICMwMDApO1xuXG4gICAgICAkX2ltYWdlOiBtYXAtZ2V0KCRfcmV0dXJuLCBpbWFnZSk7XG4gICAgICAkX3NpemU6IG1hcC1nZXQoJF9yZXR1cm4sIHNpemUpO1xuICAgICAgJF9iYXNlbGluZTogKGJhc2VsaW5lOiAoJF9jb2xvciAxcHgsIHRyYW5zcGFyZW50IDFweCkpO1xuICAgICAgJF9iYXNlbGluZS1zaXplOiAxMDAlICRiYXNlLWxpbmUtaGVpZ2h0O1xuXG4gICAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAoXG4gICAgICAgIGltYWdlOiBpZigkX2ltYWdlLCBtYXAtbWVyZ2UoJF9pbWFnZSwgJF9iYXNlbGluZSksICRfYmFzZWxpbmUpLFxuICAgICAgICBzaXplOiBpZigkX3NpemUsICgkX3NpemUsICRfYmFzZWxpbmUtc2l6ZSksICRfYmFzZWxpbmUtc2l6ZSksXG4gICAgICApKTtcblxuICAgICAgQGlmICRfc2hvdyA9PSAnc2hvdycge1xuICAgICAgICAkX2NsaXA6IG1hcC1nZXQoJF9yZXR1cm4sIGNsaXApO1xuICAgICAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAoY2xpcDogam9pbigkX2NsaXAsIGJvcmRlci1ib3gsIGNvbW1hKSkpO1xuICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJF9zaG93ID09ICdzaG93LWJhc2VsaW5lJyB7XG4gICAgICBAd2FybiAnUGxlYXNlIHByb3ZpZGUgYSAkYmFzZS1saW5lLWhlaWdodCB3aXRoIHRoZSBkZXNpcmVkIGhlaWdodCBhbmQgdW5pdHMnO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBtYXAtZ2V0KCRfcmV0dXJuLCBpbWFnZSkge1xuICAgICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sIChmbG93OiBzdXN5LWdldChmbG93LCAkZ3JpZCkpKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG5cblxuLy8gR2V0IERlYnVnXG4vLyAtLS0tLS0tLS1cbi8vIFJldHVybiB0aGUgdmFsdWUgb2YgYSBkZWJ1ZyBzZXR0aW5nXG4vLyAtICRrZXk6IDxzZXR0aW5nPlxuQGZ1bmN0aW9uIGRlYnVnLWdldChcbiAgJGtleSxcbiAgJGdyaWQ6ICRzdXN5XG4pIHtcbiAgJGtleTogam9pbihkZWJ1ZywgJGtleSwgc3BhY2UpO1xuICBAcmV0dXJuIHN1c3ktZ2V0KCRrZXksICRncmlkKTtcbn1cbiIsIi8vIENvbnRhaW5lciBTeW50YXhcbi8vID09PT09PT09PT09PT09PT1cblxuLy8gQ29udGFpbmVyIFttaXhpbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTZXQgYSBjb250YWluZXIgZWxlbWVudFxuLy8gLSBbJGxheW91dF0gIDogPHNldHRpbmdzPlxuQG1peGluIGNvbnRhaW5lcihcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkaW5zcGVjdCAgICA6ICRsYXlvdXQ7XG4gICRsYXlvdXQgICAgIDogcGFyc2UtZ3JpZCgkbGF5b3V0KTtcblxuICAkX3dpZHRoICAgICA6IGdldC1jb250YWluZXItd2lkdGgoJGxheW91dCk7XG4gICRfanVzdGlmeSAgIDogcGFyc2UtY29udGFpbmVyLXBvc2l0aW9uKHN1c3ktZ2V0KGNvbnRhaW5lci1wb3NpdGlvbiwgJGxheW91dCkpO1xuICAkX3Byb3BlcnR5ICA6IGlmKHN1c3ktZ2V0KG1hdGgsICRsYXlvdXQpID09IHN0YXRpYywgd2lkdGgsIG1heC13aWR0aCk7XG5cbiAgJF9ib3ggICAgICAgOiBzdXN5LWdldChib3gtc2l6aW5nLCAkbGF5b3V0KTtcblxuICBAaWYgJF9ib3gge1xuICAgIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogJF9ib3gpKTtcbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChjb250YWluZXIsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgZmxvYXQtY29udGFpbmVyKCRfd2lkdGgsICRfanVzdGlmeSwgJF9wcm9wZXJ0eSk7XG4gIEBpbmNsdWRlIHNob3ctZ3JpZCgkbGF5b3V0KTtcbn1cblxuLy8gQ29udGFpbmVyIFtmdW5jdGlvbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gY29udGFpbmVyIHdpZHRoXG4vLyAtIFskbGF5b3V0XSAgOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gY29udGFpbmVyKFxuICAkbGF5b3V0OiAkc3VzeVxuKSB7XG4gICRsYXlvdXQ6IHBhcnNlLWdyaWQoJGxheW91dCk7XG4gIEByZXR1cm4gZ2V0LWNvbnRhaW5lci13aWR0aCgkbGF5b3V0KTtcbn1cblxuLy8gR2V0IENvbnRhaW5lciBXaWR0aFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2FsY3VsYXRlIHRoZSBjb250YWluZXIgd2lkdGhcbi8vIC0gWyRsYXlvdXRdOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gZ2V0LWNvbnRhaW5lci13aWR0aChcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkbGF5b3V0ICAgICAgICAgOiBwYXJzZS1ncmlkKCRsYXlvdXQpO1xuICAkX3dpZHRoICAgICAgICAgOiBzdXN5LWdldChjb250YWluZXIsICRsYXlvdXQpO1xuICAkX2NvbHVtbi13aWR0aCAgOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRsYXlvdXQpO1xuICAkX21hdGggICAgICAgICAgOiBzdXN5LWdldChtYXRoLCAkbGF5b3V0KTtcblxuICBAaWYgbm90KCRfd2lkdGgpIG9yICRfd2lkdGggPT0gYXV0byB7XG4gICAgQGlmIHZhbGlkLWNvbHVtbi1tYXRoKCRfbWF0aCwgJF9jb2x1bW4td2lkdGgpIHtcbiAgICAgICRfY29sdW1ucyAgIDogc3VzeS1nZXQoY29sdW1ucywgJGxheW91dCk7XG4gICAgICAkX2d1dHRlcnMgICA6IHN1c3ktZ2V0KGd1dHRlcnMsICRsYXlvdXQpO1xuICAgICAgJF9zcHJlYWQgICAgOiBpZihpcy1zcGxpdCgkbGF5b3V0KSwgd2lkZSwgbmFycm93KTtcbiAgICAgICRfd2lkdGggICAgIDogc3VzeS1zdW0oJF9jb2x1bW5zLCAkX2d1dHRlcnMsICRfc3ByZWFkKSAqICRfY29sdW1uLXdpZHRoO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJF93aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRfd2lkdGg7XG59XG5cbi8vIFBhcnNlIENvbnRhaW5lciBQb3NpdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQYXJzZSB0aGUgJGNvbnRhaW5lci1wb3NpdGlvbiBpbnRvIG1hcmdpbiB2YWx1ZXMuXG4vLyAtIFskanVzdGlmeV0gICA6IGxlZnQgfCBjZW50ZXIgfCByaWdodCB8IDxsZW5ndGg+IFs8bGVuZ3RoPl1cbkBmdW5jdGlvbiBwYXJzZS1jb250YWluZXItcG9zaXRpb24oXG4gICRqdXN0aWZ5OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBjb250YWluZXItcG9zaXRpb24pXG4pIHtcbiAgJF9yZXR1cm46IGlmKCRqdXN0aWZ5ID09IGxlZnQsIDAsIGF1dG8pIGlmKCRqdXN0aWZ5ID09IHJpZ2h0LCAwLCBhdXRvKTtcblxuICBAaWYgbm90KGluZGV4KGxlZnQgcmlnaHQgY2VudGVyLCAkanVzdGlmeSkpIHtcbiAgICAkX3JldHVybjogbnRoKCRqdXN0aWZ5LCAxKTtcbiAgICAkX3JldHVybjogJF9yZXR1cm4gaWYobGVuZ3RoKCRqdXN0aWZ5KSA+IDEsIG50aCgkanVzdGlmeSwgMiksICRfcmV0dXJuKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG4iLCIvLyBTcGFuIFN5bnRheFxuLy8gPT09PT09PT09PT1cblxuLy8gU3BhbiBbbWl4aW5dXG4vLyAtLS0tLS0tLS0tLS1cbi8vIFNldCBhIHNwYW5uaW5nIGVsZW1lbnQgdXNpbmcgc2hvcnRoYW5kIHN5bnRheC5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AbWl4aW4gc3BhbihcbiAgJHNwYW5cbikge1xuICAkaW5zcGVjdDogJHNwYW47XG4gICRzcGFuOiBwYXJzZS1zcGFuKCRzcGFuKTtcbiAgJG91dHB1dDogc3Bhbi1tYXRoKCRzcGFuKTtcbiAgJG5lc3Rpbmc6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcbiAgJGNsZWFyOiBzdXN5LWdldChjbGVhciwgJHNwYW4pO1xuXG4gICRib3g6IHN1c3ktZ2V0KGJveC1zaXppbmcsICRzcGFuKTtcbiAgJGNvbnRlbnQtYm94OiBpZihzdXN5LWdldChnbG9iYWwtYm94LXNpemluZykgIT0gJ2JvcmRlci1ib3gnLCB0cnVlLCBmYWxzZSk7XG4gICRib3g6ICRib3ggb3IgaWYoaXMtaW5zaWRlKCRzcGFuKSBhbmQgJGNvbnRlbnQtYm94LCBib3JkZXItYm94LCBudWxsKTtcblxuICBAaWYgJGNsZWFyID09IGJyZWFrIHtcbiAgICBAaW5jbHVkZSBicmVhaztcbiAgfSBAZWxzZSBpZiAkY2xlYXIgPT0gbm9icmVhayB7XG4gICAgQGluY2x1ZGUgbm9icmVhaztcbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChzcGFuLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogJGJveCkpO1xuICBAaW5jbHVkZSBmbG9hdC1zcGFuLW91dHB1dCgkb3V0cHV0Li4uKTtcblxuICBAaWYgdmFsaWQtY29sdW1ucygkbmVzdGluZywgc2lsZW50KSB7XG4gICAgQGluY2x1ZGUgbmVzdGVkKCRzcGFuKSB7IEBjb250ZW50OyB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIFNwYW4gW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gdGhlIHdpZHRoIG9mIGEgc3Bhbi5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AZnVuY3Rpb24gc3BhbihcbiAgJHNwYW5cbikge1xuICBAcmV0dXJuIGdldC1zcGFuLXdpZHRoKCRzcGFuKTtcbn1cblxuLy8gU3BhbiBNYXRoXG4vLyAtLS0tLS0tLS1cbi8vIEdldCBhbGwgdGhlIHNwYW4gcmVzdWx0cy5cbi8vIC0gJHNwYW46IDxtYXA+XG5AZnVuY3Rpb24gc3Bhbi1tYXRoKFxuICAkc3BhblxuKSB7XG4gICRuZXN0ICAgICAgICAgICAgIDogaWYoc3VzeS1nZXQocm9sZSwgJHNwYW4pID09IG5lc3QsIHRydWUsIGZhbHNlKTtcbiAgJHNwbGl0LW5lc3QgICAgICAgOiBpZihpcy1zcGxpdCgkc3BhbikgYW5kICRuZXN0LCB0cnVlLCBmYWxzZSk7XG4gICRlZGdlICAgICAgICAgICAgIDogZ2V0LWVkZ2UoJHNwYW4pO1xuICAkbG9jYXRpb24gICAgICAgICA6IGdldC1sb2NhdGlvbigkc3Bhbik7XG5cbiAgJGZsb2F0ICAgICAgICAgICAgOiBmcm9tO1xuICAkcGFkZGluZy1iZWZvcmUgICA6IG51bGw7XG4gICRwYWRkaW5nLWFmdGVyICAgIDogbnVsbDtcbiAgJG1hcmdpbi1iZWZvcmUgICAgOiBudWxsO1xuICAkbWFyZ2luLWFmdGVyICAgICA6IG51bGw7XG5cbiAgLy8gY2FsY3VsYXRlIHdpZHRoc1xuICAkc3ByZWFkOiBpbmRleChtYXAtdmFsdWVzKCRzcGFuKSwgc3ByZWFkKTtcbiAgJHNwYW46IGlmKCRzcGxpdC1uZXN0IGFuZCBub3QoJHNwcmVhZCksIG1hcC1tZXJnZSgkc3BhbiwgKHNwcmVhZDogd2lkZSkpLCAkc3Bhbik7XG4gICR3aWR0aDogZ2V0LXNwYW4td2lkdGgoJHNwYW4pO1xuICAkZ3V0dGVyczogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuXG4gIC8vIGFwcGx5IGd1dHRlcnNcbiAgQGlmIGlzLWluc2lkZSgkc3Bhbikge1xuICAgIEBpZiBub3Qoc3VzeS1nZXQocm9sZSwgJHNwYW4pKSB7XG4gICAgICAkcGFkZGluZy1iZWZvcmU6IG1hcC1nZXQoJGd1dHRlcnMsIGJlZm9yZSk7XG4gICAgICAkcGFkZGluZy1hZnRlcjogbWFwLWdldCgkZ3V0dGVycywgYWZ0ZXIpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGlmIG5vdCgkc3BsaXQtbmVzdCkge1xuICAgICAgJG1hcmdpbi1iZWZvcmU6IG1hcC1nZXQoJGd1dHRlcnMsIGJlZm9yZSk7XG4gICAgICAkbWFyZ2luLWFmdGVyOiBtYXAtZ2V0KCRndXR0ZXJzLCBhZnRlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gc3BlY2lhbCBtYXJnaW4gaGFuZGxpbmdcbiAgQGlmIHN1c3ktZ2V0KG91dHB1dCwgJHNwYW4pID09IGlzb2xhdGUgYW5kICRsb2NhdGlvbiB7XG4gICAgJG1hcmdpbi1iZWZvcmU6IGdldC1pc29sYXRpb24oJHNwYW4pO1xuICAgICRtYXJnaW4tYWZ0ZXI6IC0xMDAlO1xuICB9IEBlbHNlIGlmICRlZGdlIHtcbiAgICAkaXMtc3BsaXQ6IGlzLXNwbGl0KCRzcGFuKTtcbiAgICAkcG9zOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKTtcblxuICAgIEBpZiAkZWRnZSA9PSBsYXN0IHtcbiAgICAgICRmbG9hdDogc3VzeS1nZXQobGFzdC1mbG93LCAkc3Bhbik7XG4gICAgfVxuXG4gICAgQGlmIG5vdCgkaXMtc3BsaXQpIHtcbiAgICAgIEBpZiAkZWRnZSA9PSBmdWxsIG9yICgkZWRnZSA9PSBmaXJzdCBhbmQgJHBvcyA9PSBiZWZvcmUpIHtcbiAgICAgICAgJG1hcmdpbi1iZWZvcmU6IDA7XG4gICAgICB9XG4gICAgICBAaWYgJGVkZ2UgPT0gZnVsbCBvciAoJGVkZ2UgPT0gbGFzdCBhbmQgJHBvcyA9PSBhZnRlcikge1xuICAgICAgICAkbWFyZ2luLWFmdGVyOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgQHJldHVybiAoXG4gICAgd2lkdGggICAgICAgICAgIDogJHdpZHRoLFxuICAgIGZsb2F0ICAgICAgICAgICA6ICRmbG9hdCxcbiAgICBtYXJnaW4tYmVmb3JlICAgOiAkbWFyZ2luLWJlZm9yZSxcbiAgICBtYXJnaW4tYWZ0ZXIgICAgOiAkbWFyZ2luLWFmdGVyLFxuICAgIHBhZGRpbmctYmVmb3JlICA6ICRwYWRkaW5nLWJlZm9yZSxcbiAgICBwYWRkaW5nLWFmdGVyICAgOiAkcGFkZGluZy1hZnRlcixcbiAgICBmbG93ICAgICAgICAgICAgOiBzdXN5LWdldChmbG93LCAkc3BhbiksXG4gICk7XG59XG5cbi8vIEdldCBTcGFuIFdpZHRoXG4vLyAtLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHNwYW4gd2lkdGguXG4vLyAtICRzcGFuOiA8bWFwPlxuQGZ1bmN0aW9uIGdldC1zcGFuLXdpZHRoKFxuICAkc3BhblxuKSB7XG4gICRzcGFuICAgICA6IHBhcnNlLXNwYW4oJHNwYW4pO1xuXG4gICRuICAgICAgICA6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcbiAgJGxvY2F0aW9uIDogZ2V0LWxvY2F0aW9uKCRzcGFuKTtcbiAgJGNvbHVtbnMgIDogc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pO1xuICAkZ3V0dGVycyAgOiBzdXN5LWdldChndXR0ZXJzLCAkc3Bhbik7XG4gICRzcHJlYWQgICA6IHN1c3ktZ2V0KHNwcmVhZCwgJHNwYW4pO1xuXG4gICRjb250ZXh0ICA6IG51bGw7XG4gICRzcGFuLXN1bSA6IG51bGw7XG4gICR3aWR0aCAgICA6IG51bGw7XG5cbiAgQGlmICRuID09ICdmdWxsJyB7XG4gICAgJHBvczogc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkc3Bhbik7XG4gICAgJHJvbGU6IHN1c3ktZ2V0KHJvbGUsICRzcGFuKTtcbiAgICAkbjogaWYoJHBvcyA9PSBzcGxpdCBhbmQgJHJvbGUgIT0gbmVzdCwgc3VzeS1jb3VudCgkY29sdW1ucyksIDEwMCUpO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJG4pICE9IG51bWJlciB7XG4gICAgQHdhcm4gXCIoI3t0eXBlLW9mKCRuKX0pICN7JG59IGlzIG5vdCBhIHZhbGlkIHNwYW4uXCI7XG4gIH0gQGVsc2UgaWYgdW5pdGxlc3MoJG4pIHtcbiAgICAkY29udGV4dDogc3VzeS1zdW0oJGNvbHVtbnMsICRndXR0ZXJzLCBpZihpcy1zcGxpdCgkc3BhbiksIHdpZGUsIG5hcnJvdykpO1xuICAgICRzcHJlYWQ6IGlmKGlzLWluc2lkZSgkc3BhbiksICRzcHJlYWQgb3Igd2lkZSwgJHNwcmVhZCk7XG4gICAgJHNwYW4tc3VtOiBzdXN5KCRuLCAkbG9jYXRpb24sICRjb2x1bW5zLCAkZ3V0dGVycywgJHNwcmVhZCk7XG5cbiAgICAkX21hdGg6IHN1c3ktZ2V0KG1hdGgsICRzcGFuKTtcbiAgICAkX2NvbHVtbi13aWR0aDogc3VzeS1nZXQoY29sdW1uLXdpZHRoLCAkc3Bhbik7XG4gICAgQGlmICRfbWF0aCA9PSBzdGF0aWMge1xuICAgICAgJHdpZHRoOiAkc3Bhbi1zdW0gKiB2YWxpZC1jb2x1bW4tbWF0aCgkX21hdGgsICRfY29sdW1uLXdpZHRoKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZSgkc3Bhbi1zdW0gLyAkY29udGV4dCk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAkd2lkdGg6ICRuO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG4iLCIvLyBHdXR0ZXIgU3ludGF4XG4vLyA9PT09PT09PT09PT09XG5cblxuLy8gR3V0dGVyc1xuLy8gLS0tLS0tLVxuLy8gU2V0IGd1dHRlcnMgb24gYW4gZWxlbWVudC5cbi8vIC0gWyRzcGFuXSAgIDogPHNldHRpbmdzPlxuQG1peGluIGd1dHRlcnMoXG4gICRzcGFuOiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0ICA6ICRzcGFuO1xuICAkc3BhbiAgICAgOiBwYXJzZS1ndXR0ZXJzKCRzcGFuKTtcbiAgJF9ndXR0ZXJzIDogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuXG4gICRfb3V0cHV0OiAoXG4gICAgYmVmb3JlOiBtYXAtZ2V0KCRfZ3V0dGVycywgYmVmb3JlKSxcbiAgICBhZnRlcjogbWFwLWdldCgkX2d1dHRlcnMsIGFmdGVyKSxcbiAgICBmbG93OiBzdXN5LWdldChmbG93LCAkc3BhbiksXG4gICk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGd1dHRlcnMsICRpbnNwZWN0KTtcblxuICBAaWYgaXMtaW5zaWRlKCRzcGFuKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZy1vdXRwdXQoJF9vdXRwdXQuLi4pO1xuICB9IEBlbHNlIHtcbiAgICBAaW5jbHVkZSBtYXJnaW4tb3V0cHV0KCRfb3V0cHV0Li4uKTtcbiAgfVxufVxuXG5AbWl4aW4gZ3V0dGVyKFxuICAkc3BhbjogJHN1c3lcbikge1xuICBAaW5jbHVkZSBndXR0ZXJzKCRzcGFuKTtcbn1cblxuXG4vLyBHdXR0ZXJcbi8vIC0tLS0tLVxuLy8gUmV0dXJuIHRoZSB3aWR0aCBvZiBhIGd1dHRlci5cbi8vIC0gWyRzcGFuXSAgIDogPHNldHRpbmdzPlxuQGZ1bmN0aW9uIGd1dHRlcihcbiAgJHNwYW46ICRzdXN5XG4pIHtcbiAgJHNwYW46IHBhcnNlLWd1dHRlcnMoJHNwYW4pO1xuXG4gICRfZ3V0dGVyczogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuICAkX2d1dHRlcnM6IG1hcC1nZXQoJF9ndXR0ZXJzLCBiZWZvcmUpIG9yIG1hcC1nZXQoJF9ndXR0ZXJzLCBhZnRlcik7XG5cbiAgQHJldHVybiAkX2d1dHRlcnM7XG59XG5cbkBmdW5jdGlvbiBndXR0ZXJzKFxuICAkc3BhbjogJHN1c3lcbikge1xuICBAcmV0dXJuIGd1dHRlcigkc3Bhbik7XG59XG5cblxuLy8gR2V0IEd1dHRlciBXaWR0aFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIGd1dHRlciB3aWR0aC5cbi8vIC0gWyRjb250ZXh0XTogPGNvbnRleHQ+XG5AZnVuY3Rpb24gZ2V0LWd1dHRlci13aWR0aChcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGNvbnRleHQgIDogcGFyc2UtZ3V0dGVycygkY29udGV4dCk7XG5cbiAgJF9ndXR0ZXJzIDogc3VzeS1nZXQoZ3V0dGVycywgJGNvbnRleHQpO1xuICAkX2d1dHRlciAgOiBzdXN5LWdldChndXR0ZXItb3ZlcnJpZGUsICRjb250ZXh0KTtcblxuICBAaWYgJF9ndXR0ZXJzIGFuZCAoJF9ndXR0ZXJzID4gMCkgYW5kIG5vdCgkX2d1dHRlcikge1xuICAgICRfY29sdW1uLXdpZHRoOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRjb250ZXh0KTtcbiAgICAkX21hdGg6IGd1dHRlci1tYXRoKCRjb250ZXh0KTtcbiAgICBAaWYgJF9tYXRoID09IHN0YXRpYyB7XG4gICAgICAkX2d1dHRlcjogJF9ndXR0ZXJzICogdmFsaWQtY29sdW1uLW1hdGgoJF9tYXRoLCAkX2NvbHVtbi13aWR0aCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkX2NvbHVtbnMgOiBzdXN5LWdldChjb2x1bW5zLCAkY29udGV4dCk7XG4gICAgICAkX3NwcmVhZCAgOiBpZihpcy1zcGxpdCgkY29udGV4dCksIHdpZGUsIHN1c3ktZ2V0KHNwcmVhZCwgJGNvbnRleHQpKTtcbiAgICAgICRfZ3V0dGVyICA6IHBlcmNlbnRhZ2UoJF9ndXR0ZXJzIC8gc3VzeS1zdW0oJF9jb2x1bW5zLCAkX2d1dHRlcnMsICRfc3ByZWFkKSk7XG4gICAgfVxuICB9XG5cbiAgJF9ndXR0ZXI6IGlmKCRfZ3V0dGVyID09ICduby1ndXR0ZXJzJyBvciAkX2d1dHRlciA9PSAnbm8tZ3V0dGVyJywgbnVsbCwgJF9ndXR0ZXIpO1xuXG4gIEByZXR1cm4gJF9ndXR0ZXI7XG59XG5cblxuLy8gR2V0IEd1dHRlcnNcbi8vIC0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gYmVmb3JlIGFuZCBhZnRlciBndXR0ZXIgdmFsdWVzLlxuLy8gLSBbJGNvbnRleHRdOiA8Y29udGV4dD5cbkBmdW5jdGlvbiBnZXQtZ3V0dGVycyhcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGNvbnRleHQgICAgICAgICAgICA6IHBhcnNlLWd1dHRlcnMoJGNvbnRleHQpO1xuXG4gICRfZ3V0dGVyLXBvc2l0aW9uICAgOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRjb250ZXh0KTtcbiAgJF9ndXR0ZXIgICAgICAgICAgICA6IGdldC1ndXR0ZXItd2lkdGgoJGNvbnRleHQpO1xuXG4gICRfcmV0dXJuICAgICAgICAgICAgOiAoYmVmb3JlOiBudWxsLCBhZnRlcjogbnVsbCk7XG5cbiAgQGlmIGlzLXNwbGl0KCRjb250ZXh0KSBhbmQgJF9ndXR0ZXIge1xuICAgICRfZ3V0dGVyOiAkX2d1dHRlciAvIDI7XG4gICAgJF9yZXR1cm46IG1hcC1tZXJnZSgkX3JldHVybiwgKGJlZm9yZTogJF9ndXR0ZXIsIGFmdGVyOiAkX2d1dHRlcikpO1xuICB9IEBlbHNlIHtcbiAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAoJF9ndXR0ZXItcG9zaXRpb246ICRfZ3V0dGVyKSk7XG4gIH1cblxuICBAcmV0dXJuICRfcmV0dXJuO1xufVxuXG5cbi8vIElzIEluc2lkZVxuLy8gLS0tLS0tLS0tXG4vLyBSZXR1cm5zIHRydWUgaWYgZ3V0dGVycyBhcmUgaW5zaWRlLlxuLy8gJGNvbnRleHQ6IDxjb250ZXh0PlxuQGZ1bmN0aW9uIGlzLWluc2lkZShcbiAgJGNvbnRleHRcbikge1xuICAkX2luc2lkZTogaW5zaWRlIGluc2lkZS1zdGF0aWM7XG4gICRfZ3V0dGVyLXBvc2l0aW9uOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRjb250ZXh0KTtcblxuICBAcmV0dXJuIGlmKGluZGV4KCRfaW5zaWRlLCAkX2d1dHRlci1wb3NpdGlvbiksIHRydWUsIGZhbHNlKTtcbn1cblxuXG4vLyBJcyBTcGxpdFxuLy8gLS0tLS0tLS1cbi8vIFJldHVybnMgdHJ1ZSBpZiBndXR0ZXJzIGFyZSBzcGxpdC5cbi8vICRjb250ZXh0OiA8Y29udGV4dD5cbkBmdW5jdGlvbiBpcy1zcGxpdChcbiAgJGNvbnRleHRcbikge1xuICAkX3NwbGl0OiBzcGxpdCBpbnNpZGUgaW5zaWRlLXN0YXRpYztcbiAgJF9ndXR0ZXItcG9zaXRpb246IHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJGNvbnRleHQpO1xuXG4gIEByZXR1cm4gaWYoaW5kZXgoJF9zcGxpdCwgJF9ndXR0ZXItcG9zaXRpb24pLCB0cnVlLCBmYWxzZSk7XG59XG5cblxuLy8gR3V0dGVyIE1hdGhcbi8vIC0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gdGhlIG1hdGggdG8gdXNlIGZvciBndXR0ZXIgY2FsY3VsYXRpb25zXG4vLyAkY29udGV4dDogPGNvbnRleHQ+XG5AZnVuY3Rpb24gZ3V0dGVyLW1hdGgoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRfcmV0dXJuICA6IHN1c3ktZ2V0KG1hdGgsICRjb250ZXh0KTtcbiAgJF9yZXR1cm4gIDogaWYoc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkY29udGV4dCkgPT0gaW5zaWRlLXN0YXRpYywgc3RhdGljLCAkX3JldHVybik7XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cbiIsIi8vIElzb2xhdGlvbiBTeW50YXhcbi8vID09PT09PT09PT09PT09PT1cblxuXG4vLyBJc29sYXRlIFtNaXhpbl1cbi8vIC0tLS0tLS0tLS0tLS0tLVxuLy8gU2V0IGlzb2xhdGlvbiBhcyBhbiBvdmVycmlkZS5cbi8vIC0gJGxvY2F0aW9uOiA8c3Bhbj5cbkBtaXhpbiBpc29sYXRlKFxuICAkaXNvbGF0ZTogMVxuKSB7XG4gICRpbnNwZWN0OiAkaXNvbGF0ZTtcblxuICAkb3V0cHV0OiAoXG4gICAgcHVzaDogaXNvbGF0ZSgkaXNvbGF0ZSksXG4gICAgZmxvdzogc3VzeS1nZXQoZmxvdywgJGlzb2xhdGUpLFxuICApO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChpc29sYXRlLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIGlzb2xhdGUtb3V0cHV0KCRvdXRwdXQuLi4pO1xufVxuXG5cbi8vIElzb2xhdGUgW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gYW4gaXNvbGF0aW9uIG9mZnNldCB3aWR0aC5cbi8vIC0gJGxvY2F0aW9uOiA8c3Bhbj5cbkBmdW5jdGlvbiBpc29sYXRlKFxuICAkaXNvbGF0ZTogMVxuKSB7XG4gICRpc29sYXRlOiBwYXJzZS1zcGFuKCRpc29sYXRlKTtcbiAgJGlzb2xhdGlvbjogc3VzeS1nZXQoc3BhbiwgJGlzb2xhdGUpO1xuXG4gIEBpZiAkaXNvbGF0aW9uIGFuZCBub3QoZ2V0LWxvY2F0aW9uKCRpc29sYXRlKSkge1xuICAgICRuZXc6IChcbiAgICAgIHNwYW46IG51bGwsXG4gICAgICBsb2NhdGlvbjogJGlzb2xhdGlvbixcbiAgICApO1xuICAgICRpc29sYXRlOiBtYXAtbWVyZ2UoJGlzb2xhdGUsICRuZXcpO1xuICB9XG5cbiAgQHJldHVybiBnZXQtaXNvbGF0aW9uKCRpc29sYXRlKTtcbn1cblxuXG4vLyBHZXQgSXNvbGF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gdGhlIGlzb2xhdGlvbiBvZmZzZXQgd2lkdGhcbi8vIC0gJGlucHV0OiA8bWFwPlxuQGZ1bmN0aW9uIGdldC1pc29sYXRpb24oXG4gICRpbnB1dFxuKSB7XG4gICRsb2NhdGlvbiAgIDogZ2V0LWxvY2F0aW9uKCRpbnB1dCk7XG4gICRjb2x1bW5zICAgIDogc3VzeS1nZXQoY29sdW1ucywgJGlucHV0KTtcbiAgJHdpZHRoICAgICAgOiBudWxsO1xuXG4gIEBpZiB0eXBlLW9mKCRsb2NhdGlvbikgPT0gbnVtYmVyIGFuZCBub3QodW5pdGxlc3MoJGxvY2F0aW9uKSkge1xuICAgICR3aWR0aDogJGxvY2F0aW9uO1xuICB9IEBlbHNlIGlmICRsb2NhdGlvbiB7XG4gICAgJHB1c2g6ICRsb2NhdGlvbiAtIDE7XG4gICAgQGlmICRwdXNoID4gMCB7XG4gICAgICAkcHVzaDogbWFwLW1lcmdlKCRpbnB1dCwgKFxuICAgICAgICBzcGFuOiAkcHVzaCxcbiAgICAgICAgbG9jYXRpb246IDEsXG4gICAgICAgIHNwcmVhZDogd2lkZSxcbiAgICAgICkpO1xuICAgICAgJHdpZHRoOiBnZXQtc3Bhbi13aWR0aCgkcHVzaCk7XG4gICAgfVxuICB9XG5cbiAgQGlmIHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJGlucHV0KSA9PSBzcGxpdFxuICAgICAgYW5kIHN1c3ktZ2V0KGd1dHRlcnMsICRpbnB1dCkgPiAwIHtcbiAgICAkd2lkdGg6IGlmKCR3aWR0aCA9PSBudWxsLCBndXR0ZXJzKCRpbnB1dCksICR3aWR0aCArIGd1dHRlcnMoJGlucHV0KSk7XG4gIH1cblxuICBAcmV0dXJuICR3aWR0aCBvciAwO1xufVxuIiwiLy8gR2FsbGVyeSBTeW50YXhcbi8vID09PT09PT09PT09PT09XG5cbi8vIEdhbGxlcnlcbi8vIC0tLS0tLS1cbi8vIENyZWF0ZSBhbiBpc29sYXRlZCBnYWxsZXJ5XG4vLyAtICRzcGFuICAgICAgICA6IDxzcGFuPlxuLy8gLSBbJHNlbGVjdG9yXSAgOiBjaGlsZCB8IG9mLXR5cGVcbkBtaXhpbiBnYWxsZXJ5KFxuICAkc3BhbixcbiAgJHNlbGVjdG9yOiBjaGlsZFxuKSB7XG4gICRpbnNwZWN0ICAgIDogJHNwYW47XG4gICRzcGFuICAgICAgIDogcGFyc2Utc3Bhbigkc3Bhbik7XG4gICRzcGFuICAgICAgIDogbWFwLW1lcmdlKCRzcGFuLCAobG9jYXRpb246IDEpKTtcblxuICAkbiAgICAgICAgICAgIDogc3VzeS1nZXQoc3BhbiwgJHNwYW4pO1xuICAkY29sdW1ucyAgICAgIDogc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pO1xuICAkY29udGV4dCAgICAgIDogc3VzeS1jb3VudCgkY29sdW1ucyk7XG4gICRmbG93ICAgICAgICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG5cbiAgJGluc2lkZSAgICAgICA6IGlzLWluc2lkZSgkc3Bhbik7XG4gICRmcm9tICAgICAgICAgOiBmcm9tKCRmbG93KTtcbiAgJGxpbmUgICAgICAgICA6IGZsb29yKCRjb250ZXh0IC8gJG4pO1xuICAkc3ltbWV0cmljYWwgIDogaXMtc3ltbWV0cmljYWwoJGNvbHVtbnMpO1xuXG4gICRvdXRwdXQ6IChcbiAgICB3aWR0aCAgICAgICAgICAgICA6IG51bGwsXG4gICAgZmxvYXQgICAgICAgICAgICAgOiBmcm9tLFxuICAgIG1hcmdpbi1iZWZvcmUgICAgIDogbnVsbCxcbiAgICBtYXJnaW4tYWZ0ZXIgICAgICA6IG51bGwsXG4gICAgcGFkZGluZy1iZWZvcmUgICAgOiBudWxsLFxuICAgIHBhZGRpbmctYWZ0ZXIgICAgIDogbnVsbCxcbiAgICBmbG93ICAgICAgICAgICAgICA6ICRmbG93LFxuICApO1xuXG4gIEBpZiAkaW5zaWRlIHtcbiAgICAkZ3V0dGVyczogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuICAgICRvdXRwdXQ6IG1hcC1tZXJnZSgkb3V0cHV0LCAoXG4gICAgICBwYWRkaW5nLWJlZm9yZTogbWFwLWdldCgkZ3V0dGVycywgYmVmb3JlKSxcbiAgICAgIHBhZGRpbmctYWZ0ZXI6IG1hcC1nZXQoJGd1dHRlcnMsIGFmdGVyKSxcbiAgICApKTtcbiAgfVxuXG4gIEBpZiAkc3ltbWV0cmljYWwge1xuICAgICRvdXRwdXQ6IG1hcC1tZXJnZSgkb3V0cHV0LCAod2lkdGg6IGdldC1zcGFuLXdpZHRoKCRzcGFuKSkpO1xuICB9XG5cbiAgJGJveCAgICAgICAgICA6IHN1c3ktZ2V0KGJveC1zaXppbmcsICRzcGFuKTtcbiAgJGdsb2JhbC1ib3ggICA6IGlmKHN1c3ktZ2V0KGdsb2JhbC1ib3gtc2l6aW5nKSA9PSAnYm9yZGVyLWJveCcsIHRydWUsIGZhbHNlKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QoZ2FsbGVyeSwgJGluc3BlY3QpO1xuXG4gIC8vIENvbGxlY3RpdmUgT3V0cHV0XG4gIEBpZiAkYm94ID09IGJvcmRlci1ib3ggb3IgKCRpbnNpZGUgYW5kIG5vdCgkYm94KSBhbmQgbm90KCRnbG9iYWwtYm94KSkge1xuICAgIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogYm9yZGVyLWJveCkpO1xuICB9IEBlbHNlIGlmICRib3ggPT0gY29udGVudC1ib3gge1xuICAgIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogY29udGVudC1ib3gpKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZsb2F0LXNwYW4tb3V0cHV0KCRvdXRwdXQuLi4pO1xuXG4gIC8vIEluZGl2aWR1YWwgTG9vcFxuICBAZm9yICRpdGVtIGZyb20gMSB0aHJvdWdoICRsaW5lIHtcbiAgICAkbnRoOiAnI3skbGluZX1uICsgI3skaXRlbX0nO1xuICAgICY6bnRoLSN7JHNlbGVjdG9yfSgjeyRudGh9KSB7XG4gICAgICAvLyBJbmRpdmlkdWFsIFByZXBcbiAgICAgICRvdXRwdXQ6IChcbiAgICAgICAgd2lkdGggICAgICAgICAgICAgOiBpZigkc3ltbWV0cmljYWwsIG51bGwsIGdldC1zcGFuLXdpZHRoKCRzcGFuKSksXG4gICAgICAgIGZsb2F0ICAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgbWFyZ2luLWJlZm9yZSAgICAgOiBnZXQtaXNvbGF0aW9uKCRzcGFuKSxcbiAgICAgICAgbWFyZ2luLWFmdGVyICAgICAgOiAtMTAwJSxcbiAgICAgICAgcGFkZGluZy1iZWZvcmUgICAgOiBudWxsLFxuICAgICAgICBwYWRkaW5nLWFmdGVyICAgICA6IG51bGwsXG4gICAgICAgIGZsb3cgICAgICAgICAgICAgIDogJGZsb3csXG4gICAgICApO1xuXG4gICAgICAvLyBJbmRpdmlkdWFsIE91dHB1dFxuICAgICAgQGluY2x1ZGUgZmxvYXQtc3Bhbi1vdXRwdXQoJG91dHB1dC4uLik7XG5cbiAgICAgIEBpZiBnZXQtZWRnZSgkc3BhbikgPT0gZmlyc3Qge1xuICAgICAgICBAaW5jbHVkZSBicmVhaztcbiAgICAgICAgQGluY2x1ZGUgZmlyc3QoJHNwYW4pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIC8vIEluZGl2aWR1YWwgTG9jYXRpb24gSW5jcmVtZW50XG4gICAgICAkbG9jYXRpb246IGdldC1sb2NhdGlvbigkc3BhbikgKyAkbjtcbiAgICAgICRsb2NhdGlvbjogaWYoJGxvY2F0aW9uID4gJGNvbnRleHQsIDEsICRsb2NhdGlvbik7XG4gICAgICAkc3BhbjogbWFwLW1lcmdlKCRzcGFuLCAobG9jYXRpb246ICRsb2NhdGlvbikpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUm93IFN0YXJ0ICYgRW5kXG4vLyA9PT09PT09PT09PT09PT1cblxuLy8gQnJlYWtcbi8vIC0tLS0tXG4vLyBBcHBseSB0byBhbnkgZWxlbWVudCB0aGF0IHNob3VsZCBmb3JjZSBhIGxpbmUgYnJlYWsuXG5AbWl4aW4gYnJlYWsge1xuICBAaW5jbHVkZSBvdXRwdXQoKGNsZWFyOiBib3RoKSk7XG59XG5cblxuLy8gTm9CcmVha1xuLy8gLS0tLS0tLVxuLy8gQ2FuY2VsIHRoZSBicmVhaygpIGVmZmVjdCwgZS5nLiB3aGVuIHVzaW5nIG1lZGlhIHF1ZXJpZXMuXG5AbWl4aW4gbm9icmVhayB7XG4gIEBpbmNsdWRlIG91dHB1dCgoY2xlYXI6IG5vbmUpKTtcbn1cblxuXG4vLyBGdWxsXG4vLyAtLS0tXG4vLyAtIFskY29udGV4dF06IDxsYXlvdXQgc2hvcnRoYW5kPlxuQG1peGluIGZ1bGwoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0IDogJGNvbnRleHQ7XG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChmdWxsLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIHNwYW4oZnVsbCBvZiBwYXJzZS1ncmlkKCRjb250ZXh0KSBicmVhayk7XG59XG5cblxuLy8gRmlyc3Rcbi8vIC0tLS0tXG4vLyAtIFskY29udGV4dF06IDxzZXR0aW5ncz5cbkBtaXhpbiBmaXJzdChcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGluc3BlY3QgIDogJGNvbnRleHQ7XG4gICRjb250ZXh0ICA6IHBhcnNlLWdyaWQoJGNvbnRleHQpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkY29udGV4dCk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGZpcnN0LCAkaW5zcGVjdCk7XG4gIEBpZiBub3QoaXMtc3BsaXQoJGNvbnRleHQpKSB7XG4gICAgQGluY2x1ZGUgZmxvYXQtZmlyc3QoJGZsb3cpO1xuICB9XG59XG5cbkBtaXhpbiBhbHBoYShcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgQGluY2x1ZGUgZmlyc3QoJGNvbnRleHQpO1xufVxuXG5cbi8vIExhc3Rcbi8vIC0tLS1cbi8vIC0gWyRjb250ZXh0XTogPHNldHRpbmdzPlxuQG1peGluIGxhc3QoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0ICA6ICRjb250ZXh0O1xuICAkY29udGV4dCAgOiBwYXJzZS1ncmlkKCRjb250ZXh0KTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QobGFzdCwgJGluc3BlY3QpO1xuXG4gICRvdXRwdXQ6IChcbiAgICBmbG93OiBzdXN5LWdldChmbG93LCAkY29udGV4dCksXG4gICAgbGFzdC1mbG93OiBzdXN5LWdldChsYXN0LWZsb3csICRjb250ZXh0KSxcbiAgICBtYXJnaW46IGlmKGlzLXNwbGl0KCRjb250ZXh0KSwgbnVsbCwgMCksXG4gICk7XG5cbiAgQGluY2x1ZGUgZmxvYXQtbGFzdCgkb3V0cHV0Li4uKTtcbn1cblxuQG1peGluIG9tZWdhKFxuICAkY29udGV4dDogJHN1c3lcbikge1xuICBAaW5jbHVkZSBsYXN0KCRjb250ZXh0KTtcbn1cblxuXG4vLyBHZXQgRWRnZVxuLy8gLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSBlZGdlIHZhbHVlIGJhc2VkIG9uIGxvY2F0aW9uLCBpZiBwb3NzaWJsZVxuQGZ1bmN0aW9uIGdldC1lZGdlKFxuICAkc3BhblxuKSB7XG4gICRzcGFuICAgICAgIDogcGFyc2Utc3Bhbigkc3Bhbik7XG4gICRlZGdlICAgICAgIDogc3VzeS1nZXQoZWRnZSwgJHNwYW4pO1xuXG4gIEBpZiBub3QoJGVkZ2UpIHtcbiAgICAkY291bnQ6IHN1c3ktY291bnQoc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pKTtcbiAgICAkbG9jYXRpb246IHN1c3ktZ2V0KGxvY2F0aW9uLCAkc3Bhbik7XG4gICAgJG46IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcblxuICAgICRudW1iZXI6IGlmKHR5cGUtb2YoJGxvY2F0aW9uKSA9PSBudW1iZXIsIHRydWUsIGZhbHNlKTtcbiAgICAkaW5kZXg6IGlmKCRudW1iZXIgYW5kIHVuaXRsZXNzKCRsb2NhdGlvbiksIHRydWUsIGZhbHNlKTtcblxuICAgIEBpZiAkbiA9PSAkY291bnQge1xuICAgICAgJGVkZ2U6IGZ1bGw7XG4gICAgfSBAZWxzZSBpZiAkbG9jYXRpb24gYW5kICRuIGFuZCAkaW5kZXgge1xuICAgICAgQGlmICRsb2NhdGlvbiA9PSAxIHtcbiAgICAgICAgJGVkZ2U6IGlmKCRuID09ICRjb3VudCwgZnVsbCwgZmlyc3QpO1xuICAgICAgfSBAZWxzZSBpZiAkbG9jYXRpb24gKyAkbiAtIDEgPT0gJGNvdW50IHtcbiAgICAgICAgJGVkZ2U6IGxhc3Q7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlZGdlID09IGFscGhhIG9yICRlZGdlID09IG9tZWdhIHtcbiAgICAkZWRnZTogaWYoJGVkZ2UgPT0gYWxwaGEsIGZpcnN0LCBsYXN0KTtcbiAgfVxuXG4gIEByZXR1cm4gJGVkZ2U7XG59XG5cblxuLy8gR2V0IExvY2F0aW9uXG4vLyAtLS0tLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSBsb2NhdGlvbiB2YWx1ZSBiYXNlZCBvbiBlZGdlLCBpZiBwb3NzaWJsZVxuQGZ1bmN0aW9uIGdldC1sb2NhdGlvbihcbiAgJHNwYW5cbikge1xuICAkc3BhbiAgICAgICA6IHBhcnNlLXNwYW4oJHNwYW4pO1xuICAkbG9jYXRpb24gICA6IHN1c3ktZ2V0KGxvY2F0aW9uLCAkc3Bhbik7XG4gICRlZGdlICAgICAgIDogZ2V0LWVkZ2UoJHNwYW4pO1xuICAkbiAgICAgICAgICA6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcblxuICBAaWYgJGVkZ2UgYW5kIG5vdCgkbG9jYXRpb24pIGFuZCB0eXBlLW9mKCRuKSA9PSBudW1iZXIgYW5kIHVuaXRsZXNzKCRuKSB7XG4gICAgQGlmICRlZGdlID09IGZpcnN0IHtcbiAgICAgICRsb2NhdGlvbjogMTtcbiAgICB9IEBlbHNlIGlmICRlZGdlID09IGxhc3Qge1xuICAgICAgJGxvY2F0aW9uOiBzdXN5LWNvdW50KHN1c3ktZ2V0KGNvbHVtbnMsICRzcGFuKSkgLSAkbiArIDE7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbG9jYXRpb25cbn1cbiIsIi8vIE1hcmdpbiBTeW50YXhcbi8vID09PT09PT09PT09PT1cblxuLy8gUHJlXG4vLyAtLS1cbi8vIEFkZCBzcGFubmluZy1tYXJnaW5zIGJlZm9yZSBhbiBlbGVtZW50LlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBtaXhpbiBwcmUoXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3Q6ICRzcGFuO1xuICAkc3BhbiAgIDogbWFwLW1lcmdlKChzcHJlYWQ6IHdpZGUpLCBwYXJzZS1zcGFuKCRzcGFuKSk7XG4gICRmbG93ICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG4gICRzcGxpdCAgOiBpZihzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKSA9PSBzcGxpdCwgdHJ1ZSwgZmFsc2UpO1xuICAkZ3V0dGVyIDogZ3V0dGVyKCRzcGFuKTtcbiAgJHNwYW4gICA6IHNwYW4oJHNwYW4pO1xuICAkd2lkdGggIDogaWYoJHNwbGl0IGFuZCAkZ3V0dGVyLCAkc3BhbiArICRndXR0ZXIsICRzcGFuKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QocHJlLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIG1hcmdpbi1vdXRwdXQoJHdpZHRoLCBudWxsLCAkZmxvdyk7XG59XG5cbi8vIFBvc3Rcbi8vIC0tLS1cbi8vIEFkZCBzcGFubmluZy1tYXJnaW5zIGFmdGVyIGFuIGVsZW1lbnQuXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHBvc3QoXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3QgIDogJHNwYW47XG4gICRzcGFuICAgICA6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3Bhbigkc3BhbikpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG4gICRzcGxpdCAgICA6IGlmKHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pID09IHNwbGl0LCB0cnVlLCBmYWxzZSk7XG4gICR3aWR0aCAgICA6IGlmKCRzcGxpdCwgc3Bhbigkc3BhbikgKyBndXR0ZXIoJHNwYW4pLCBzcGFuKCRzcGFuKSk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHBvc3QsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgbWFyZ2luLW91dHB1dChudWxsLCAkd2lkdGgsICRmbG93KTtcbn1cblxuLy8gUHVzaFxuLy8gLS0tLVxuLy8gU2ltcGxlIHN5bm9ueW1uIGZvciBwcmUuXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHB1c2goXG4gICRzcGFuXG4pIHtcbiAgQGluY2x1ZGUgcHJlKCRzcGFuKTtcbn1cblxuLy8gUHVsbFxuLy8gLS0tLVxuLy8gQWRkIG5lZ2F0aXZlIHNwYW5uaW5nLW1hcmdpbnMgYmVmb3JlIGFuIGVsZW1lbnQuXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHB1bGwoXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3QgIDogJHNwYW47XG4gICRzcGFuICAgICA6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3Bhbigkc3BhbikpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG4gICRzcGxpdCAgICA6IGlmKHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pID09IHNwbGl0LCB0cnVlLCBmYWxzZSk7XG4gICR3aWR0aCAgICA6IGlmKCRzcGxpdCwgMCAtIHNwYW4oJHNwYW4pICsgZ3V0dGVyKCRzcGFuKSwgMCAtIHNwYW4oJHNwYW4pKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QocHVsbCwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBtYXJnaW4tb3V0cHV0KCR3aWR0aCwgbnVsbCwgJGZsb3cpO1xufVxuXG4vLyBTcXVpc2hcbi8vIC0tLS0tLVxuLy8gQWRkIHNwYW5uaW5nLW1hcmdpbnMgYmVmb3JlIGFuZCBhZnRlciBhbiBlbGVtZW50LlxuLy8gLSAkcHJlICAgICA6IDxzcGFuPlxuLy8gLSBbJHBvc3RdICA6IDxzcGFuPlxuQG1peGluIHNxdWlzaChcbiAgJHByZSxcbiAgJHBvc3Q6IGZhbHNlXG4pIHtcbiAgJGluc3BlY3QgICAgICA6ICgkcHJlLCAkcG9zdCk7XG4gICRwcmUgICAgICAgICAgOiBtYXAtbWVyZ2UoKHNwcmVhZDogd2lkZSksIHBhcnNlLXNwYW4oJHByZSkpO1xuXG4gIEBpZiAkcG9zdCB7XG4gICAgJHBvc3Q6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3BhbigkcG9zdCkpO1xuICB9IEBlbHNlIHtcbiAgICAkc3Bhbjogc3VzeS1nZXQoc3BhbiwgJHByZSk7XG4gICAgQGlmIGxlbmd0aCgkc3BhbikgPiAxIHtcbiAgICAgICRwcmU6IG1hcC1tZXJnZSgkcHJlLCAoc3BhbjogbnRoKCRzcGFuLCAxKSkpO1xuICAgICAgJHBvc3Q6IG1hcC1tZXJnZSgkcHJlLCAoc3BhbjogbnRoKCRzcGFuLCAyKSkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHBvc3Q6ICRwcmU7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHNxdWlzaCwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBwcmUoJHByZSk7XG4gIEBpbmNsdWRlIHBvc3QoJHBvc3QpO1xufVxuIiwiLy8gUGFkZGluZyBTeW50YXhcbi8vID09PT09PT09PT09PT09XG5cbi8vIFByZWZpeFxuLy8gLS0tLS0tXG4vLyBBZGQgc3Bhbm5pbmctcGFkZGluZyBiZWZvcmUgYW4gZWxlbWVudC5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AbWl4aW4gcHJlZml4KFxuICAkc3BhblxuKSB7XG4gICRpbnNwZWN0ICA6ICRzcGFuO1xuICAkc3BhbiAgICAgOiBtYXAtbWVyZ2UoKHNwcmVhZDogd2lkZSksIHBhcnNlLXNwYW4oJHNwYW4pKTtcbiAgJGZsb3cgICAgIDogc3VzeS1nZXQoZmxvdywgJHNwYW4pO1xuICAkd2lkdGggICAgOiBzcGFuKCRzcGFuKTtcblxuICBAaWYgaXMtaW5zaWRlKCRzcGFuKSB7XG4gICAgJGd1dHRlcjogZ3V0dGVyKCRzcGFuKTtcbiAgICAkd2lkdGg6IGlmKCRndXR0ZXIgYW5kIGNvbXBhcmFibGUoJHdpZHRoLCAkZ3V0dGVyKSwgJHdpZHRoICsgJGd1dHRlciwgJHdpZHRoKTtcbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChwcmVmaXgsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgcGFkZGluZy1vdXRwdXQoJHdpZHRoLCBudWxsLCAkZmxvdyk7XG59XG5cbi8vIFN1ZmZpeFxuLy8gLS0tLS0tXG4vLyBBZGQgc3Bhbm5pbmctcGFkZGluZyBhZnRlciBhbiBlbGVtZW50LlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBtaXhpbiBzdWZmaXgoXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3QgIDogJHNwYW47XG4gICRzcGFuICAgICA6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3Bhbigkc3BhbikpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG4gICR3aWR0aCAgICA6IHNwYW4oJHNwYW4pO1xuXG4gIEBpZiBpcy1pbnNpZGUoJHNwYW4pIHtcbiAgICAkZ3V0dGVyOiBndXR0ZXIoJHNwYW4pO1xuICAgICR3aWR0aDogaWYoJGd1dHRlciBhbmQgY29tcGFyYWJsZSgkd2lkdGgsICRndXR0ZXIpLCAkd2lkdGggKyAkZ3V0dGVyLCAkd2lkdGgpO1xuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHN1ZmZpeCwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBwYWRkaW5nLW91dHB1dChudWxsLCAkd2lkdGgsICRmbG93KTtcbn1cblxuLy8gUGFkXG4vLyAtLS1cbi8vIEFkZCBzcGFubmluZy1wYWRkaW5nIGJlZm9yZSBhbmQgYWZ0ZXIgYW4gZWxlbWVudC5cbi8vIC0gJHByZSAgICAgOiA8c3Bhbj5cbi8vIC0gWyRwb3N0XSAgOiA8c3Bhbj5cbkBtaXhpbiBwYWQoXG4gICRwcmUsXG4gICRwb3N0OiBmYWxzZVxuKSB7XG4gICRpbnNwZWN0ICA6ICgkcHJlLCAkcG9zdCk7XG4gICRwcmUgICAgICA6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3BhbigkcHJlKSk7XG5cbiAgQGlmICRwb3N0IHtcbiAgICAkcG9zdDogbWFwLW1lcmdlKChzcHJlYWQ6IHdpZGUpLCBwYXJzZS1zcGFuKCRwb3N0KSk7XG4gIH0gQGVsc2Uge1xuICAgICRzcGFuOiBzdXN5LWdldChzcGFuLCAkcHJlKTtcbiAgICBAaWYgbGVuZ3RoKCRzcGFuKSA+IDEge1xuICAgICAgJHByZTogbWFwLW1lcmdlKCRwcmUsIChzcGFuOiBudGgoJHNwYW4sIDEpKSk7XG4gICAgICAkcG9zdDogbWFwLW1lcmdlKCRwcmUsIChzcGFuOiBudGgoJHNwYW4sIDIpKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcG9zdDogJHByZTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QocGFkLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIHByZWZpeCgkcHJlKTtcbiAgQGluY2x1ZGUgc3VmZml4KCRwb3N0KTtcblxufVxuIiwiLy8gQmxlZWQgU3ludGF4XG4vLyA9PT09PT09PT09PT1cblxuLy8gQmxlZWRcbi8vIC0tLS0tXG4vLyBBZGQgbmVnYXRpdmUgbWFyZ2lucywgYW5kIGVxdWFsIHBvc2l0aXZlIHBhZGRpbmcgdG8gY3JlYXRlIGJsZWVkLlxuLy8gLSAkYmxlZWQgIDogPHNwYW4+XG5AbWl4aW4gYmxlZWQoXG4gICRibGVlZDogMCBndXR0ZXIoKVxuKSB7XG4gICRpbnNwZWN0ICA6ICRibGVlZDtcbiAgJG91dHB1dCAgIDogZ2V0LWJsZWVkKCRibGVlZCk7XG5cbiAgQGlmIHN1c3ktZ2V0KGdsb2JhbC1ib3gtc2l6aW5nKSAhPSBjb250ZW50LWJveCB7XG4gICAgJG91dHB1dDogbWFwLW1lcmdlKChib3gtc2l6aW5nOiBjb250ZW50LWJveCksICRvdXRwdXQpO1xuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGJsZWVkLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIG91dHB1dCgkb3V0cHV0KTtcbn1cblxuXG4vLyBCbGVlZC14XG4vLyAtLS0tLS0tXG4vLyBTaG9ydGN1dCBmb3IgaG9yaXpvbnRhbCBibGVlZC5cbi8vIC0gJGJsZWVkICA6IDxzcGFuPlxuQG1peGluIGJsZWVkLXgoXG4gICRibGVlZDogZ3V0dGVyKClcbikge1xuICAkYmxlZWQgIDogcGFyc2Utc3BhbigkYmxlZWQpO1xuICAkdHJibCAgIDogc3VzeS1nZXQoc3BhbiwgJGJsZWVkKTtcblxuICBAaWYgbGVuZ3RoKCR0cmJsKSA9PSAxIHtcbiAgICAkYmxlZWQ6IG1hcC1tZXJnZSgkYmxlZWQsIChzcGFuOiAwIG50aCgkdHJibCwgMSkpKTtcbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHRyYmwpID09IDIge1xuICAgICRibGVlZDogbWFwLW1lcmdlKCRibGVlZCwgKHNwYW46IDAgbnRoKCR0cmJsLCAyKSAwIG50aCgkdHJibCwgMSkpKTtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gJ2JsZWVkLXggb25seSB0YWtlcyAyIGxlbmd0aHMsIGJ1dCAje2xlbmd0aCgkdHJibCl9IHdlcmUgcGFzc2VkLic7XG4gIH1cblxuICBAaW5jbHVkZSBibGVlZCgkYmxlZWQpO1xufVxuXG5cbi8vIEJsZWVkLXlcbi8vIC0tLS0tLS1cbi8vIFNob3J0Y3V0IGZvciB2ZXJ0aWNhbCBibGVlZC5cbi8vIC0gJGJsZWVkICA6IDxzcGFuPlxuQG1peGluIGJsZWVkLXkoXG4gICRibGVlZDogaWYoZnVuY3Rpb24tZXhpc3RzKHJoeXRobSksIHJoeXRobSgxKSwgMWVtKVxuKSB7XG4gICRibGVlZCAgOiBwYXJzZS1zcGFuKCRibGVlZCk7XG4gICR0cmJsICAgOiBzdXN5LWdldChzcGFuLCAkYmxlZWQpO1xuXG4gIEBpZiBsZW5ndGgoJHRyYmwpID09IDEge1xuICAgICRibGVlZDogbWFwLW1lcmdlKCRibGVlZCwgKHNwYW46IG50aCgkdHJibCwgMSkgMCkpO1xuICB9IEBlbHNlIGlmIGxlbmd0aCgkdHJibCkgPT0gMiB7XG4gICAgJGJsZWVkOiBtYXAtbWVyZ2UoJGJsZWVkLCAoc3BhbjogbnRoKCR0cmJsLCAxKSAwIG50aCgkdHJibCwgMikgMCkpO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiAnYmxlZWQteSBvbmx5IHRha2VzIDIgbGVuZ3RocywgYnV0ICN7bGVuZ3RoKCR0cmJsKX0gd2VyZSBwYXNzZWQuJztcbiAgfVxuXG4gIEBpbmNsdWRlIGJsZWVkKCRibGVlZCk7XG59XG5cblxuLy8gR2V0IEJsZWVkXG4vLyAtLS0tLS0tLS1cbi8vIFJldHVybiBibGVlZCBvdXRwdXQgdmFsdWVzXG4vLyAtICRibGVlZDogPHNwYW4+XG5AZnVuY3Rpb24gZ2V0LWJsZWVkKFxuICAkYmxlZWRcbikge1xuICAkYmxlZWQgICAgOiBtYXAtbWVyZ2UoKHNwcmVhZDogd2lkZSksIHBhcnNlLXNwYW4oJGJsZWVkKSk7XG4gICR0cmJsICAgICA6IHN1c3ktZ2V0KHNwYW4sICRibGVlZCk7XG4gICRzaG9ydCAgICA6IG51bGw7XG4gICRvdXRwdXQgICA6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCR0cmJsKSB7XG4gICAgJHRoaXM6IG50aCgkdHJibCwgJGkpO1xuICAgICRuZXc6ICgpO1xuICAgICRtYXJnaW46IG51bGw7XG4gICAgJHBhZGRpbmc6IG51bGw7XG4gICAgJHBhZGRpbmcteDogbnVsbDtcblxuICAgIEBpZiAkdGhpcyA+IDAge1xuICAgICAgJHRoaXM6IG1hcC1tZXJnZSgkYmxlZWQsIChzcGFuOiAkdGhpcykpO1xuICAgICAgJG1hcmdpbjogc3BhbigkdGhpcyk7XG4gICAgICAkcGFkZGluZzogJG1hcmdpbjtcbiAgICAgICRwYWRkaW5nLXg6ICRwYWRkaW5nO1xuICAgIH1cblxuICAgIEBpZiAkbWFyZ2luIGFuZCAkbWFyZ2luID4gMCB7XG4gICAgICAkbWFyZ2luOiAtICRtYXJnaW47XG5cbiAgICAgIEBpZiBpcy1pbnNpZGUoJHRoaXMpIHtcbiAgICAgICAgJGd1dHRlcjogZ3V0dGVyKCR0aGlzKTtcbiAgICAgICAgJGpvaW46IGlmKCRndXR0ZXIgYW5kIGNvbXBhcmFibGUoJHBhZGRpbmcsICRndXR0ZXIpLCB0cnVlLCBmYWxzZSk7XG4gICAgICAgICRwYWRkaW5nLXg6IGlmKCRqb2luIGFuZCAkcGFkZGluZyA+IDAsICRwYWRkaW5nICsgJGd1dHRlciwgJHBhZGRpbmcpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICRuZXc6IChcbiAgICAgICAgbWFyZ2luLXRvcDogJG1hcmdpbixcbiAgICAgICAgcGFkZGluZy10b3A6ICRwYWRkaW5nLFxuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW4sXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nLXgsXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW4sXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZyxcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW4sXG4gICAgICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmcteCxcbiAgICAgICk7XG4gICAgfSBAZWxzZSBpZiAkaSA9PSAyIHtcbiAgICAgICRuZXc6IChcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luLFxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZy14LFxuICAgICAgICBtYXJnaW4tbGVmdDogJG1hcmdpbixcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZy14LFxuICAgICAgKTtcbiAgICB9IEBlbHNlIGlmICRpID09IDMge1xuICAgICAgJG5ldzogKFxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLFxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmcsXG4gICAgICApO1xuICAgIH0gQGVsc2UgaWYgJGkgPT0gNCB7XG4gICAgICAkbmV3OiAoXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luLFxuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nLXgsXG4gICAgICApO1xuICAgIH1cblxuICAgICRvdXRwdXQ6IG1hcC1tZXJnZSgkb3V0cHV0LCAkbmV3KTtcbiAgfVxuXG4gIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJG91dHB1dCB7XG4gICAgJG91dHB1dDogaWYoJHZhbHVlID09IDAsIG1hcC1tZXJnZSgkb3V0cHV0LCAoJHByb3A6IG51bGwpKSwgJG91dHB1dCk7XG4gIH1cblxuICBAcmV0dXJuIGJsZWVkLXNob3J0aGFuZCgkb3V0cHV0KTtcbn1cblxuLy8gQmxlZWQgU2hvcnRoYW5kXG4vLyAtLS0tLS0tLS0tLS0tLS1cbi8vIENvbnZlcnQgYmxlZWQgb3V0cHV0IGludG8gc2hvcnRoYW5kIHdoZW4gcG9zc2libGUuXG4vLyAtICRibGVlZDogPG91dHB1dCBtYXA+XG5AZnVuY3Rpb24gYmxlZWQtc2hvcnRoYW5kKFxuICAkYmxlZWRcbikge1xuICAkbWFyZ2luOiAoKTtcbiAgJHBhZGRpbmc6ICgpO1xuICAkcmV0dXJuOiAoKTtcblxuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGJsZWVkIHtcbiAgICBAaWYgc3RyLWluZGV4KCRrZXksIG1hcmdpbikge1xuICAgICAgJG1hcmdpbjogbWFwLW1lcmdlKCRtYXJnaW4sICgka2V5OiAkdmFsdWUpKTtcbiAgICB9IEBlbHNlIGlmIHN0ci1pbmRleCgka2V5LCBwYWRkaW5nKSA+IDAge1xuICAgICAgJHBhZGRpbmc6IG1hcC1tZXJnZSgkcGFkZGluZywgKCRrZXk6ICR2YWx1ZSkpO1xuICAgIH1cbiAgfVxuXG4gICRwcm9wczogKFxuICAgIG1hcmdpbjogJG1hcmdpbixcbiAgICBwYWRkaW5nOiAkcGFkZGluZyxcbiAgKTtcblxuICBAZWFjaCAkbmFtZSwgJG1hcCBpbiAkcHJvcHMge1xuICAgICRmb3VyOiBpZihsZW5ndGgobWFwLWtleXMoJG1hcCkpID09IDQsIHRydWUsIGZhbHNlKTtcbiAgICAkbnVsbDogaWYoaW5kZXgobWFwLXZhbHVlcygkbWFwKSwgbnVsbCksIHRydWUsIGZhbHNlKTtcblxuICAgIEBpZiAkZm91ciBhbmQgbm90KCRudWxsKSB7XG4gICAgICAkdG9wOiBtYXAtZ2V0KCRtYXAsICcjeyRuYW1lfS10b3AnKTtcbiAgICAgICRyaWdodDogbWFwLWdldCgkbWFwLCAnI3skbmFtZX0tcmlnaHQnKTtcbiAgICAgICRib3R0b206IG1hcC1nZXQoJG1hcCwgJyN7JG5hbWV9LWJvdHRvbScpO1xuICAgICAgJGxlZnQ6IG1hcC1nZXQoJG1hcCwgJyN7JG5hbWV9LWxlZnQnKTtcblxuICAgICAgJHRiOiBpZigkdG9wID09ICRib3R0b20sICR0b3AsIG51bGwpO1xuICAgICAgJHJsOiBpZigkcmlnaHQgPT0gJGxlZnQsICRyaWdodCwgbnVsbCk7XG4gICAgICAkYWxsOiBpZigkdGIgPT0gJHJsLCAkdGIsIG51bGwpO1xuXG4gICAgICAkbmV3OiBpZigkYWxsLCAkYWxsLCBudWxsKTtcblxuICAgICAgQGlmIG5vdCgkbmV3KSB7XG4gICAgICAgIEBpZiAkdGIgYW5kICRybCB7XG4gICAgICAgICAgJG5ldzogJHRiICRybDtcbiAgICAgICAgfSBAZWxzZSBpZiAkcmwge1xuICAgICAgICAgICRuZXc6ICR0b3AgJHJsICRib3R0b207XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICRuZXc6ICR0b3AgJHJpZ2h0ICRib3R0b20gJGxlZnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJHJldHVybjogbWFwLW1lcmdlKCRyZXR1cm4sICgkbmFtZTogJG5ldykpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHJldHVybjogbWFwLW1lcmdlKCRyZXR1cm4sICRtYXApO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHJldHVybjtcbn1cbiIsIi8vIEJyZWFrcG9pbnQgSW50ZWdyYXRpb25cbi8vID09PT09PT09PT09PT09PT09PT09PT1cblxuJHN1c3ktbWVkaWE6ICgpICFkZWZhdWx0O1xuJHN1c3ktbWVkaWEtZmFsbGJhY2s6IGZhbHNlICFkZWZhdWx0O1xuXG4kX3N1c3ktbWVkaWEtY29udGV4dDogKCk7XG5cblxuLy8gU3VzeSBCcmVha3BvaW50XG4vLyAtLS0tLS0tLS0tLS0tLS1cbi8vIENoYW5nZSBncmlkcyBhdCBkaWZmZXJlbnQgbWVkaWEgcXVlcnkgYnJlYWtwb2ludHMuXG4vLyAtICRxdWVyeSAgICAgOiA8bWluLXdpZHRoPiBbPG1heC13aWR0aD5dIHwgPHByb3BlcnR5PiA8dmFsdWU+IHwgPG1hcD5cbi8vIC0gJGxheW91dCAgICA6IDxzZXR0aW5ncz5cbi8vIC0gJG5vLXF1ZXJ5ICA6IDxib29sZWFuPiB8IDxzZWxlY3Rvcj5cbkBtaXhpbiBzdXN5LWJyZWFrcG9pbnQoXG4gICRxdWVyeSxcbiAgJGxheW91dDogZmFsc2UsXG4gICRuby1xdWVyeTogJHN1c3ktbWVkaWEtZmFsbGJhY2tcbikge1xuICBAaW5jbHVkZSBzdXN5LW1lZGlhLXJvdXRlcigkcXVlcnksICRuby1xdWVyeSkge1xuICAgIEBpZiAkbGF5b3V0IHtcbiAgICAgIEBpbmNsdWRlIHdpdGgtbGF5b3V0KCRsYXlvdXQpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTdXN5IE1lZGlhXG4vLyAtLS0tLS0tLS0tXG4vLyAtICRxdWVyeTogPG1pbi13aWR0aD4gWzxtYXgtd2lkdGg+XSB8IDxwcm9wZXJ0eT4gPHZhbHVlPlxuLy8gLSAkbm8tcXVlcnk6IDxib29sZWFuPiB8IDxzZWxlY3Rvcj5cbkBtaXhpbiBzdXN5LW1lZGlhKFxuICAkcXVlcnksXG4gICRuby1xdWVyeTogJHN1c3ktbWVkaWEtZmFsbGJhY2tcbikge1xuICAkb2xkLWNvbnRleHQ6ICRfc3VzeS1tZWRpYS1jb250ZXh0O1xuICAkbmFtZTogaWYobWFwLWhhcy1rZXkoJHN1c3ktbWVkaWEsICRxdWVyeSksICRxdWVyeSwgbnVsbCk7XG4gICRxdWVyeTogc3VzeS1nZXQtbWVkaWEoJHF1ZXJ5KTtcbiAgJHF1ZXJ5OiBzdXN5LXBhcnNlLW1lZGlhKCRxdWVyeSk7XG5cbiAgQGluY2x1ZGUgc3VzeS1tZWRpYS1jb250ZXh0KCRxdWVyeSwgJG5hbWUpO1xuXG4gIEBpZiAkbm8tcXVlcnkgYW5kIHR5cGUtb2YoJG5vLXF1ZXJ5KSAhPSBzdHJpbmcge1xuICAgIEBjb250ZW50O1xuICB9IEBlbHNlIHtcbiAgICBAbWVkaWEgI3tzdXN5LXJlbmRlci1tZWRpYSgkcXVlcnkpfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaWYgdHlwZS1vZigkbm8tcXVlcnkpID09IHN0cmluZyB7XG4gICAgICAjeyRuby1xdWVyeX0gJiB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktbWVkaWEtY29udGV4dCgkb2xkLWNvbnRleHQsICRjbGVhbjogdHJ1ZSk7XG59XG5cblxuLy8gTWVkaWEgUm91dGVyXG4vLyAtLS0tLS0tLS0tLS1cbi8vIFJvdXQgbWVkaWEgYXJndW1lbnRzIHRvIHRoZSBjb3JyZWN0IG1peGluLlxuQG1peGluIHN1c3ktbWVkaWEtcm91dGVyKFxuICAkcXVlcnksXG4gICRuby1xdWVyeTogJHN1c3ktbWVkaWEtZmFsbGJhY2tcbikge1xuICBAaWYgc3VzeS1zdXBwb3J0KGJyZWFrcG9pbnQsIChtaXhpbjogYnJlYWtwb2ludCksICR3YXJuOiBmYWxzZSkge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnkpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgc3VzeS1tZWRpYSgkcXVlcnksICRuby1xdWVyeSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVXBkYXRlIENvbnRleHRcbi8vIC0tLS0tLS0tLS0tLS1cbi8vIFNldCB0aGUgbmV3IG1lZGlhIGNvbnRleHRcbkBtaXhpbiBzdXN5LW1lZGlhLWNvbnRleHQoXG4gICRxdWVyeSxcbiAgJG5hbWU6IG51bGwsXG4gICRjbGVhbjogZmFsc2Vcbikge1xuICAkcXVlcnk6IG1hcC1tZXJnZSgobmFtZTogJG5hbWUpLCAkcXVlcnkpO1xuXG4gIEBpZiAkY2xlYW4ge1xuICAgICRfc3VzeS1tZWRpYS1jb250ZXh0OiAkcXVlcnkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJF9zdXN5LW1lZGlhLWNvbnRleHQ6IG1hcC1tZXJnZSgkX3N1c3ktbWVkaWEtY29udGV4dCwgJHF1ZXJ5KSAhZ2xvYmFsO1xuICB9XG59XG5cblxuLy8gTWVkaWEgQ29udGV4dFxuLy8gLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHRoZSBmdWxsIG1lZGlhIGNvbnRleHQsIG9yIGEgc2luZ2xlIG1lZGlhIHByb3BlcnR5IChlLmcuIG1pbi13aWR0aClcbkBmdW5jdGlvbiBzdXN5LW1lZGlhLWNvbnRleHQoXG4gICRwcm9wZXJ0eTogZmFsc2Vcbikge1xuICBAaWYgJHByb3BlcnR5IHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJF9zdXN5LW1lZGlhLWNvbnRleHQsICRwcm9wZXJ0eSk7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJF9zdXN5LW1lZGlhLWNvbnRleHQ7XG4gIH1cbn1cblxuXG4vLyBHZXQgTWVkaWFcbi8vIC0tLS0tLS0tLVxuLy8gUmV0dXJuIGEgbmFtZWQgbWVkaWEtcXVlcnkgZnJvbSAkc3VzeS1tZWRpYS5cbi8vIC0gJG5hbWU6IDxrZXk+XG5AZnVuY3Rpb24gc3VzeS1nZXQtbWVkaWEoXG4gICRuYW1lXG4pIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRzdXN5LW1lZGlhLCAkbmFtZSkge1xuICAgICRtYXAtdmFsdWU6IG1hcC1nZXQoJHN1c3ktbWVkaWEsICRuYW1lKTtcbiAgICBAaWYgKCRuYW1lID09ICRtYXAtdmFsdWUpIHtcbiAgICAgICRuYW1lOiAkbWFwLXZhbHVlO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJG5hbWU6IHN1c3ktZ2V0LW1lZGlhKCRtYXAtdmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5hbWU7XG59XG5cblxuLy8gUmVuZGVyIE1lZGlhXG4vLyAtLS0tLS0tLS0tLS1cbi8vIEJ1aWxkIGEgbWVkaWEtcXVlcnkgc3RyaW5nIGZyb20gdmFyaW91cyBtZWRpYSBzZXR0aW5nc1xuQGZ1bmN0aW9uIHN1c3ktcmVuZGVyLW1lZGlhKFxuICAkcXVlcnlcbikge1xuICAkb3V0cHV0OiBudWxsO1xuICBAZWFjaCAkcHJvcGVydHksICR2YWx1ZSBpbiAkcXVlcnkge1xuICAgICRzdHJpbmc6IG51bGw7XG5cbiAgICBAaWYgJHByb3BlcnR5ID09IG1lZGlhIHtcbiAgICAgICRzdHJpbmc6ICR2YWx1ZTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRzdHJpbmc6ICcoI3skcHJvcGVydHl9OiAjeyR2YWx1ZX0pJztcbiAgICB9XG5cbiAgICAkb3V0cHV0OiBpZigkb3V0cHV0LCAnI3skb3V0cHV0fSBhbmQgI3skc3RyaW5nfScsICRzdHJpbmcpO1xuICB9XG5cbiAgQHJldHVybiAkb3V0cHV0O1xufVxuXG5cbi8vIFBhcnNlIE1lZGlhXG4vLyAtLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHBhcnNlZCBtZWRpYS1xdWVyeSBzZXR0aW5ncyBiYXNlZCBvbiBzaG9ydGhhbmRcbkBmdW5jdGlvbiBzdXN5LXBhcnNlLW1lZGlhKFxuICAkcXVlcnlcbikge1xuICAkbXE6IG51bGw7XG4gIEBpZiB0eXBlLW9mKCRxdWVyeSkgPT0gbWFwIHtcbiAgICAkbXE6ICRxdWVyeTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCRxdWVyeSkgPT0gbnVtYmVyIHtcbiAgICAkbXE6IChtaW4td2lkdGg6ICRxdWVyeSk7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkcXVlcnkpID09IGxpc3QgYW5kIGxlbmd0aCgkcXVlcnkpID09IDIge1xuICAgIEBpZiB0eXBlLW9mKG50aCgkcXVlcnksIDEpKSA9PSBudW1iZXIge1xuICAgICAgJG1xOiAoXG4gICAgICAgIG1pbi13aWR0aDogbWluKCRxdWVyeS4uLiksXG4gICAgICAgIG1heC13aWR0aDogbWF4KCRxdWVyeS4uLiksXG4gICAgICApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJG1xOiAobnRoKCRxdWVyeSwgMSk6IG50aCgkcXVlcnksIDIpKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICRtcTogKG1lZGlhOiAnI3skcXVlcnl9Jyk7XG4gIH1cblxuICBAcmV0dXJuICRtcTtcbn1cbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gRGVmYXVsdCBWYXJpYWJsZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuJEJyZWFrcG9pbnQtU2V0dGluZ3M6IChcbiAgJ2RlZmF1bHQgbWVkaWEnOiBhbGwsXG4gICdkZWZhdWx0IGZlYXR1cmUnOiBtaW4td2lkdGgsXG4gICdkZWZhdWx0IHBhaXInOiB3aWR0aCxcblxuICAnZm9yY2UgYWxsIG1lZGlhIHR5cGUnOiBmYWxzZSxcbiAgJ3RvIGVtcyc6IGZhbHNlLFxuICAndHJhbnNmb3JtIHJlc29sdXRpb25zJzogdHJ1ZSxcblxuICAnbm8gcXVlcmllcyc6IGZhbHNlLFxuICAnbm8gcXVlcnkgZmFsbGJhY2tzJzogZmFsc2UsXG5cbiAgJ2Jhc2UgZm9udCBzaXplJzogMTZweCxcblxuICAnbGVnYWN5IHN5bnRheCc6IGZhbHNlXG4pO1xuXG4kYnJlYWtwb2ludDogKCkgIWRlZmF1bHQ7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gSW1wb3J0c1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AaW1wb3J0IFwiYnJlYWtwb2ludC9zZXR0aW5nc1wiO1xuQGltcG9ydCAnYnJlYWtwb2ludC9jb250ZXh0JztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvaGVscGVycyc7XG5AaW1wb3J0ICdicmVha3BvaW50L3BhcnNlcnMnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9uby1xdWVyeSc7XG5cbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcmVzcG9uZC10byc7XG5cbkBpbXBvcnQgXCJicmVha3BvaW50L2xlZ2FjeS1zZXR0aW5nc1wiO1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEJyZWFrcG9pbnQgTWl4aW5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5AbWl4aW4gYnJlYWtwb2ludCgkcXVlcnksICRuby1xdWVyeTogZmFsc2UpIHtcbiAgQGluY2x1ZGUgbGVnYWN5LXNldHRpbmdzLXdhcm5pbmc7XG5cbiAgLy8gUmVzZXQgY29udGV4dHNcbiAgQGluY2x1ZGUgcHJpdmF0ZS1icmVha3BvaW50LXJlc2V0LWNvbnRleHRzKCk7XG5cbiAgJGJyZWFrcG9pbnQ6IGJyZWFrcG9pbnQoJHF1ZXJ5LCBmYWxzZSk7XG5cbiAgJHF1ZXJ5LXN0cmluZzogbWFwLWdldCgkYnJlYWtwb2ludCwgJ3F1ZXJ5Jyk7XG4gICRxdWVyeS1mYWxsYmFjazogbWFwLWdldCgkYnJlYWtwb2ludCwgJ2ZhbGxiYWNrJyk7XG5cbiAgJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcjogbWFwLWdldCgkYnJlYWtwb2ludCwgJ2NvbnRleHQgaG9sZGVyJykgIWdsb2JhbDtcbiAgJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDogbWFwLWdldCgkYnJlYWtwb2ludCwgJ3F1ZXJ5IGNvdW50JykgIWdsb2JhbDtcblxuICAvLyBBbGxvdyBmb3IgYW4gYXMtbmVlZGVkIG92ZXJyaWRlIG9yIHVzYWdlIG9mIG5vIHF1ZXJ5IGZhbGxiYWNrLlxuICBAaWYgJG5vLXF1ZXJ5ICE9IGZhbHNlIHtcbiAgICAkcXVlcnktZmFsbGJhY2s6ICRuby1xdWVyeTtcbiAgfVxuXG4gIEBpZiAkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2Uge1xuICAgICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KCduby1xdWVyeScsICRxdWVyeS1mYWxsYmFjayk7XG4gIH1cblxuICAvLyBQcmludCBPdXQgUXVlcnkgU3RyaW5nXG4gIEBpZiBub3QgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJpZXMnKSB7XG4gICAgQG1lZGlhICN7JHF1ZXJ5LXN0cmluZ30ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgQGlmIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSAhPSBmYWxzZSBvciBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpID09IHRydWUge1xuXG4gICAgJHR5cGU6IHR5cGUtb2YoYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpKTtcbiAgICAkcHJpbnQ6IGZhbHNlO1xuXG4gICAgQGlmICgkdHlwZSA9PSAnYm9vbCcpIHtcbiAgICAgICRwcmludDogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2UgaWYgKCR0eXBlID09ICdzdHJpbmcnKSB7XG4gICAgICBAaWYgJHF1ZXJ5LWZhbGxiYWNrID09IGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSB7XG4gICAgICAgICRwcmludDogdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2UgaWYgKCR0eXBlID09ICdsaXN0Jykge1xuICAgICAgQGVhY2ggJHdyYXBwZXIgaW4gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICAgICAgQGlmICRxdWVyeS1mYWxsYmFjayA9PSAkd3JhcHBlciB7XG4gICAgICAgICAgJHByaW50OiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gV3JpdGUgRmFsbGJhY2tcbiAgICBAaWYgKCRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSkgYW5kICgkcHJpbnQgPT0gdHJ1ZSkge1xuICAgICAgJHR5cGUtZmFsbGJhY2s6IHR5cGUtb2YoJHF1ZXJ5LWZhbGxiYWNrKTtcblxuICAgICAgQGlmICgkdHlwZS1mYWxsYmFjayAhPSAnYm9vbCcpIHtcbiAgICAgICAgI3skcXVlcnktZmFsbGJhY2t9ICYge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHByaXZhdGUtYnJlYWtwb2ludC1yZXNldC1jb250ZXh0cygpO1xufVxuXG5cbkBtaXhpbiBtcSgkcXVlcnksICRuby1xdWVyeTogZmFsc2UpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkcXVlcnksICRuby1xdWVyeSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEhhcyBTZXR0aW5nXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBicmVha3BvaW50LWhhcygkc2V0dGluZykge1xuICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnQsICRzZXR0aW5nKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gR2V0IFNldHRpbmdzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBicmVha3BvaW50LWdldCgkc2V0dGluZykge1xuICBAaWYgYnJlYWtwb2ludC1oYXMoJHNldHRpbmcpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGJyZWFrcG9pbnQsICRzZXR0aW5nKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRCcmVha3BvaW50LVNldHRpbmdzLCAkc2V0dGluZyk7XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBTZXQgU2V0dGluZ3Ncbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtc2V0KCRzZXR0aW5nLCAkdmFsdWUpIHtcbiAgQGlmIChzdHItaW5kZXgoJHNldHRpbmcsICctJykgb3Igc3RyLWluZGV4KCRzZXR0aW5nLCAnXycpKSBhbmQgc3RyLWluZGV4KCRzZXR0aW5nLCAnICcpID09IG51bGwge1xuICAgIEB3YXJuIFwiV29yZHMgaW4gQnJlYWtwb2ludCBzZXR0aW5ncyBzaG91bGQgYmUgc2VwYXJhdGVkIGJ5IHNwYWNlcywgbm90IGRhc2hlcyBvciB1bmRlcnNjb3Jlcy4gUGxlYXNlIHJlcGxhY2UgZGFzaGVzIGFuZCB1bmRlcnNjb3JlcyBiZXR3ZWVuIHdvcmRzIHdpdGggc3BhY2VzLiBTZXR0aW5ncyB3aWxsIG5vdCB3b3JrIGFzIGV4cGVjdGVkIHVudGlsIGNoYW5nZWQuXCI7XG4gIH1cbiAgJGJyZWFrcG9pbnQ6IG1hcC1tZXJnZSgkYnJlYWtwb2ludCwgKCRzZXR0aW5nOiAkdmFsdWUpKSAhZ2xvYmFsO1xuICBAcmV0dXJuIHRydWU7XG59XG5cbkBtaXhpbiBicmVha3BvaW50LWNoYW5nZSgkc2V0dGluZywgJHZhbHVlKSB7XG4gICRicmVha3BvaW50LWNoYW5nZTogYnJlYWtwb2ludC1zZXQoJHNldHRpbmcsICR2YWx1ZSk7XG59XG5cbkBtaXhpbiBicmVha3BvaW50LXNldCgkc2V0dGluZywgJHZhbHVlKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQtY2hhbmdlKCRzZXR0aW5nLCAkdmFsdWUpO1xufVxuXG5AbWl4aW4gYmtwdC1jaGFuZ2UoJHNldHRpbmcsICR2YWx1ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50LWNoYW5nZSgkc2V0dGluZywgJHZhbHVlKTtcbn1cbkBtaXhpbiBia3B0LXNldCgkc2V0dGluZywgJHZhbHVlKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQtY2hhbmdlKCRzZXR0aW5nLCAkdmFsdWUpO1xufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFJlbW92ZSBTZXR0aW5nXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBicmVha3BvaW50LXJlc2V0KCRzZXR0aW5ncy4uLikge1xuICBAaWYgbGVuZ3RoKCRzZXR0aW5ncykgPT0gMSB7XG4gICAgJHNldHRpbmdzOiBudGgoJHNldHRpbmdzLCAxKTtcbiAgfVxuXG4gIEBlYWNoICRzZXR0aW5nIGluICRzZXR0aW5ncyB7XG4gICAgJGJyZWFrcG9pbnQ6IG1hcC1yZW1vdmUoJGJyZWFrcG9pbnQsICRzZXR0aW5nKSAhZ2xvYmFsO1xuICB9XG4gIEByZXR1cm4gdHJ1ZTtcbn1cblxuQG1peGluIGJyZWFrcG9pbnQtcmVzZXQoJHNldHRpbmdzLi4uKSB7XG4gICRicmVha3BvaW50LXJlc2V0OiBicmVha3BvaW50LXJlc2V0KCRzZXR0aW5ncyk7XG59XG5cbkBtaXhpbiBia3B0LXJlc2V0KCRzZXR0aW5ncy4uLikge1xuICAkYnJlYWtwb2ludC1yZXNldDogYnJlYWtwb2ludC1yZXNldCgkc2V0dGluZ3MpO1xufSIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUHJpdmF0ZSBCcmVha3BvaW50IFZhcmlhYmxlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiAoKTtcbiRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQ6IDAgIWRlZmF1bHQ7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBIYXMgQ29udGV4dFxuLy8gUmV0dXJucyB3aGV0aGVyIG9yIG5vdCB5b3UgYXJlIGluc2lkZSBhIEJyZWFrcG9pbnQgcXVlcnlcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaGFzLWNvbnRleHQoKSB7XG4gIEBpZiBsZW5ndGgoJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudCkge1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEJyZWFrcG9pbnQgR2V0IENvbnRleHRcbi8vICRmZWF0dXJlOiBJbnB1dCBmZWF0dXJlIHRvIGdldCBpdCdzIGN1cnJlbnQgTVEgY29udGV4dC4gUmV0dXJucyBmYWxzZSBpZiBubyBjb250ZXh0XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBicmVha3BvaW50LWdldC1jb250ZXh0KCRmZWF0dXJlKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyLCAkZmVhdHVyZSkge1xuICAgICRnZXQ6IG1hcC1nZXQoJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlciwgJGZlYXR1cmUpO1xuICAgIC8vIFNwZWNpYWwgaGFuZGxpbmcgb2Ygbm8tcXVlcnkgZnJvbSBnZXQgc2lkZSBzbyAvZmFsc2UvIHByZXBlbmRzIGFyZW4ndCByZXR1cm5lZFxuICAgIEBpZiAkZmVhdHVyZSA9PSAnbm8tcXVlcnknIHtcbiAgICAgIEBpZiB0eXBlLW9mKCRnZXQpID09ICdsaXN0JyBhbmQgbGVuZ3RoKCRnZXQpID4gMSBhbmQgbnRoKCRnZXQsIDEpID09IGZhbHNlIHtcbiAgICAgICAgJGdldDogbnRoKCRnZXQsIGxlbmd0aCgkZ2V0KSk7XG4gICAgICB9XG4gICAgfVxuICAgIEByZXR1cm4gJGdldDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmIGJyZWFrcG9pbnQtaGFzLWNvbnRleHQoKSBhbmQgJGZlYXR1cmUgPT0gJ21lZGlhJyB7XG4gICAgICBAcmV0dXJuIGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUHJpdmF0ZSBmdW5jdGlvbiB0byBzZXQgY29udGV4dFxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KCRmZWF0dXJlLCAkdmFsdWUpIHtcbiAgQGlmICR2YWx1ZSA9PSAnbW9ub2Nocm9tZScge1xuICAgICRmZWF0dXJlOiAnbW9ub2Nocm9tZSc7XG4gIH1cblxuICAkY3VycmVudDogbWFwLWdldCgkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyLCAkZmVhdHVyZSk7XG4gIEBpZiAkY3VycmVudCBhbmQgbGVuZ3RoKCRjdXJyZW50KSA9PSAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50IHtcbiAgICBAd2FybiBcIllvdSBoYXZlIGFscmVhZHkgcXVlcmllZCBhZ2FpbnN0IGAjeyRmZWF0dXJlfWAuIFVuZXhwZWN0ZWQgdGhpbmdzIG1heSBoYXBwZW4gaWYgeW91IHF1ZXJ5IGFnYWluc3QgdGhlIHNhbWUgZmVhdHVyZSBtb3JlIHRoYW4gb25jZSBpbiB0aGUgc2FtZSBgYW5kYCBxdWVyeS4gQnJlYWtwb2ludCBpcyBvdmVyd3JpdGluZyB0aGUgY3VycmVudCBjb250ZXh0IHdpdGggYCN7JHZhbHVlfWBcIjtcbiAgfVxuXG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlciwgJGZlYXR1cmUpIHtcbiAgICAkdi1ob2xkZXI6ICgpO1xuICAgIEBmb3IgJGkgZnJvbSAxIHRvICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQge1xuICAgICAgQGlmICRmZWF0dXJlID09ICdtZWRpYScge1xuICAgICAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsIGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJykpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJHYtaG9sZGVyOiBhcHBlbmQoJHYtaG9sZGVyLCAkdmFsdWUpO1xuICAgICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6IG1hcC1tZXJnZSgkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyLCAoJGZlYXR1cmU6ICR2LWhvbGRlcikpICFnbG9iYWw7XG4gIH1cbiAgQGVsc2Uge1xuICAgICR2LWhvbGRlcjogbWFwLWdldCgkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyLCAkZmVhdHVyZSk7XG4gICAgJGxlbmd0aDogbGVuZ3RoKCR2LWhvbGRlcik7XG4gICAgQGZvciAkaSBmcm9tICRsZW5ndGggdG8gJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudCAtIDEge1xuICAgICAgQGlmICRmZWF0dXJlID09ICdtZWRpYScge1xuICAgICAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsIGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJykpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJHYtaG9sZGVyOiBhcHBlbmQoJHYtaG9sZGVyLCAkdmFsdWUpO1xuICAgICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6IG1hcC1tZXJnZSgkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyLCAoJGZlYXR1cmU6ICR2LWhvbGRlcikpICFnbG9iYWw7XG4gIH1cblxuICBAcmV0dXJuIHRydWU7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUHJpdmF0ZSBmdW5jdGlvbiB0byByZXNldCBjb250ZXh0XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBtaXhpbiBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMge1xuICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiAoKSAhZ2xvYmFsO1xuICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiAwICFnbG9iYWw7XG59IiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBDb252ZXJ0cyB0aGUgaW5wdXQgdmFsdWUgdG8gQmFzZSBFTXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtdG8tYmFzZS1lbSgkdmFsdWUpIHtcbiAgJHZhbHVlLXVuaXQ6IHVuaXQoJHZhbHVlKTtcblxuICAvLyBXaWxsIGNvbnZlcnQgcmVsYXRpdmUgRU1zIGludG8gcm9vdCBFTXMuXG4gIEBpZiBicmVha3BvaW50LWdldCgnYmFzZSBmb250IHNpemUnKSBhbmQgdHlwZS1vZihicmVha3BvaW50LWdldCgnYmFzZSBmb250IHNpemUnKSkgPT0gJ251bWJlcicgYW5kICR2YWx1ZS11bml0ID09ICdlbScge1xuICAgICRiYXNlLXVuaXQ6IHVuaXQoYnJlYWtwb2ludC1nZXQoJ2Jhc2UgZm9udCBzaXplJykpO1xuXG4gICAgQGlmICRiYXNlLXVuaXQgPT0gJ3B4JyBvciAkYmFzZS11bml0ID09ICclJyBvciAkYmFzZS11bml0ID09ICdlbScgb3IgJGJhc2UtdW5pdCA9PSAncHQnIHtcbiAgICAgIEByZXR1cm4gYmFzZS1jb252ZXJzaW9uKCR2YWx1ZSkgLyBiYXNlLWNvbnZlcnNpb24oYnJlYWtwb2ludC1nZXQoJ2Jhc2UgZm9udCBzaXplJykpICogMWVtO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnI3ticmVha3BvaW50LWdldChcXCdiYXNlIGZvbnQgc2l6ZVxcJyl9IGlzIG5vdCBzZXQgaW4gdmFsaWQgdW5pdHMgZm9yIGZvbnQgc2l6ZSEnO1xuICAgICAgQHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gYmFzZS1jb252ZXJzaW9uKCR2YWx1ZSk7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIGJhc2UtY29udmVyc2lvbigkdmFsdWUpIHtcbiAgJHVuaXQ6IHVuaXQoJHZhbHVlKTtcblxuICBAaWYgJHVuaXQgPT0gJ3B4JyB7XG4gICAgQHJldHVybiAkdmFsdWUgLyAxNnB4ICogMWVtO1xuICB9XG4gIEBlbHNlIGlmICR1bml0ID09ICclJyB7XG4gICAgQHJldHVybiAkdmFsdWUgLyAxMDAlICogMWVtO1xuICB9XG4gIEBlbHNlIGlmICR1bml0ID09ICdlbScge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG4gIEBlbHNlIGlmICR1bml0ID09ICdwdCcge1xuICAgIEByZXR1cm4gJHZhbHVlIC8gMTJwdCAqIDFlbTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAkdmFsdWU7XG4vLyAgICBAd2FybiAnRXZlcnl0aGluZyBpcyB0ZXJyaWJsZSEgV2hhdCBoYXZlIHlvdSBkb25lPyEnO1xuICB9XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUmV0dXJucyB3aGV0aGVyIHRoZSBmZWF0dXJlIGNhbiBoYXZlIGEgbWluL21heCBwYWlyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRicmVha3BvaW50LW1pbi1tYXgtZmVhdHVyZXM6ICdjb2xvcicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnY29sb3ItaW5kZXgnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FzcGVjdC1yYXRpbycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGV2aWNlLWFzcGVjdC1yYXRpbycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGV2aWNlLWhlaWdodCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGV2aWNlLXdpZHRoJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdoZWlnaHQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ21vbm9jaHJvbWUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Jlc29sdXRpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpZHRoJztcblxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluLW1heCgkZmVhdHVyZSkge1xuICBAZWFjaCAkaXRlbSBpbiAkYnJlYWtwb2ludC1taW4tbWF4LWZlYXR1cmVzIHtcbiAgICBAaWYgJGZlYXR1cmUgPT0gJGl0ZW0ge1xuICAgICAgQHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuIGZhbHNlO1xufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFJldHVybnMgd2hldGhlciB0aGUgZmVhdHVyZSBjYW4gaGF2ZSBhIHN0cmluZyB2YWx1ZVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kYnJlYWtwb2ludC1zdHJpbmctZmVhdHVyZXM6ICAnb3JpZW50YXRpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NjYW4nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NvbG9yJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhc3BlY3QtcmF0aW8nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2RldmljZS1hc3BlY3QtcmF0aW8nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3BvaW50ZXInLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2x1bWlub3NpdHknO1xuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1zdHJpbmctdmFsdWUoJGZlYXR1cmUpIHtcbiAgQGVhY2ggJGl0ZW0gaW4gJGJyZWFrcG9pbnQtc3RyaW5nLWZlYXR1cmVzIHtcbiAgICBAaWYgYnJlYWtwb2ludC1taW4tbWF4KCRpdGVtKSB7XG4gICAgICBAaWYgJGZlYXR1cmUgPT0gJ21pbi0jeyRpdGVtfScgb3IgJGZlYXR1cmUgPT0gJ21heC0jeyRpdGVtfScge1xuICAgICAgICBAcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRmZWF0dXJlID09ICRpdGVtIHtcbiAgICAgIEByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiBmYWxzZTtcbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBSZXR1cm5zIHdoZXRoZXIgdGhlIGZlYXR1cmUgaXMgYSBtZWRpYSB0eXBlXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRicmVha3BvaW50LW1lZGlhLXR5cGVzOiAgJ2FsbCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICdicmFpbGxlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2VtYm9zc2VkJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hhbmRoZWxkJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3ByaW50JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Byb2plY3Rpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAnc2NyZWVuJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NwZWVjaCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICd0dHknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAndHYnO1xuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pcy1tZWRpYSgkZmVhdHVyZSkge1xuICBAZWFjaCAkbWVkaWEgaW4gJGJyZWFrcG9pbnQtbWVkaWEtdHlwZXMge1xuICAgIEBpZiAoJGZlYXR1cmUgPT0gJG1lZGlhKSBvciAoJGZlYXR1cmUgPT0gJ25vdCAjeyRtZWRpYX0nKSBvciAoJGZlYXR1cmUgPT0gJ29ubHkgI3skbWVkaWF9Jykge1xuICAgICAgQHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gZmFsc2U7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUmV0dXJucyB3aGV0aGVyIHRoZSBmZWF0dXJlIGNhbiBzdGFuZCBhbG9uZVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nLWZlYXR1cmVzOiAnY29sb3InLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NvbG9yLWluZGV4JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdncmlkJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdtb25vY2hyb21lJztcblxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZygkZmVhdHVyZSkge1xuICBAZWFjaCAkaXRlbSBpbiAkYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nLWZlYXR1cmVzIHtcbiAgICBAaWYgJGZlYXR1cmUgPT0gJGl0ZW0ge1xuICAgICAgQHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuIGZhbHNlO1xufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFJldHVybnMgd2hldGhlciB0aGUgZmVhdHVyZVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pcy1yZXNvbHV0aW9uKCRmZWF0dXJlKSB7XG4gICRyZXNvbHV0aW9uczogJ2RldmljZS1waXhlbC1yYXRpbycsICdkcHInO1xuXG4gIEBpZiBicmVha3BvaW50LWdldCgndHJhbnNmb3JtIHJlc29sdXRpb25zJykge1xuICAgICRyZXNvbHV0aW9uczogYXBwZW5kKCRyZXNvbHV0aW9ucywgJ3Jlc29sdXRpb24nKTtcbiAgfVxuXG4gIEBlYWNoICRyZXNvIGluICRyZXNvbHV0aW9ucyB7XG4gICAgQGlmIGluZGV4KCRmZWF0dXJlLCAkcmVzbykgb3IgaW5kZXgoJGZlYXR1cmUsICdtaW4tI3skcmVzb30nKSBvciBpbmRleCgkZmVhdHVyZSwgJ21heC0jeyRyZXNvfScpIHtcbiAgICAgIEByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIGZhbHNlO1xufVxuIiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBJbXBvcnQgUGFyc2VyIFBpZWNlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AaW1wb3J0IFwicGFyc2Vycy9xdWVyeVwiO1xuQGltcG9ydCBcInBhcnNlcnMvc2luZ2xlXCI7XG5AaW1wb3J0IFwicGFyc2Vycy9kb3VibGVcIjtcbkBpbXBvcnQgXCJwYXJzZXJzL3RyaXBsZVwiO1xuQGltcG9ydCBcInBhcnNlcnMvcmVzb2x1dGlvblwiO1xuXG4kTWVtby1FeGlzdHM6IGZ1bmN0aW9uLWV4aXN0cyhtZW1vLWdldCkgYW5kIGZ1bmN0aW9uLWV4aXN0cyhtZW1vLXNldCk7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBGdW5jdGlvblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkcXVlcnksICRjb250ZXh0cy4uLikge1xuICAkcnVuOiB0cnVlO1xuICAkcmV0dXJuOiAoKTtcblxuICAvLyBHcmFiIHRoZSBNZW1vIE91dHB1dCBpZiBNZW1vaXphdGlvbiBjYW4gYmUgYSB0aGluZ1xuICBAaWYgJE1lbW8tRXhpc3RzIHtcbiAgICAkcmV0dXJuOiBtZW1vLWdldChicmVha3BvaW50LCBicmVha3BvaW50ICRxdWVyeSAkY29udGV4dHMpO1xuXG4gICAgQGlmICRyZXR1cm4gIT0gbnVsbCB7XG4gICAgICAkcnVuOiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBAaWYgbm90ICRNZW1vLUV4aXN0cyBvciAkcnVuIHtcbiAgICAvLyBJbnRlcm5hbCBWYXJpYWJsZXNcbiAgICAkcXVlcnktc3RyaW5nOiAnJztcbiAgICAkcXVlcnktZmFsbGJhY2s6IGZhbHNlO1xuICAgICRyZXR1cm46ICgpO1xuXG4gICAgLy8gUmVzZXJ2ZSBHbG9iYWwgUHJpdmF0ZSBCcmVha3BvaW50IENvbnRleHRcbiAgICAkaG9sZGVyLWNvbnRleHQ6ICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI7XG4gICAgJGhvbGRlci1xdWVyeS1jb3VudDogJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDtcblxuICAgIC8vIFJlc2V0IEdsb2JhbCBQcml2YXRlIEJyZWFrcG9pbnQgQ29udGV4dFxuICAgICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6ICgpICFnbG9iYWw7XG4gICAgJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDogMCAhZ2xvYmFsO1xuXG5cbiAgICAvLyBUZXN0IHRvIHNlZSBpZiBpdCdzIGEgY29tbWEtc2VwYXJhdGVkIGxpc3RcbiAgICAkb3ItbGlzdDogaWYobGlzdC1zZXBhcmF0b3IoJHF1ZXJ5KSA9PSAnY29tbWEnLCB0cnVlLCBmYWxzZSk7XG5cblxuICAgIEBpZiAoJG9yLWxpc3QgPT0gZmFsc2UgYW5kIGJyZWFrcG9pbnQtZ2V0KCdsZWdhY3kgc3ludGF4JykgPT0gZmFsc2UpIHtcbiAgICAgICRxdWVyeS1zdHJpbmc6IGJyZWFrcG9pbnQtcGFyc2UoJHF1ZXJ5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGxlbmd0aDogbGVuZ3RoKCRxdWVyeSk7XG5cbiAgICAgICRsYXN0OiBudGgoJHF1ZXJ5LCAkbGVuZ3RoKTtcbiAgICAgICRxdWVyeS1mYWxsYmFjazogYnJlYWtwb2ludC1uby1xdWVyeSgkbGFzdCk7XG5cbiAgICAgIEBpZiAoJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlKSB7XG4gICAgICAgICRsZW5ndGg6ICRsZW5ndGggLSAxO1xuICAgICAgfVxuXG4gICAgICBAaWYgKGJyZWFrcG9pbnQtZ2V0KCdsZWdhY3kgc3ludGF4JykgPT0gdHJ1ZSkge1xuICAgICAgICAkbXE6ICgpO1xuXG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGxlbmd0aCB7XG4gICAgICAgICAgJG1xOiBhcHBlbmQoJG1xLCBudGgoJHF1ZXJ5LCAkaSksIGNvbW1hKTtcbiAgICAgICAgfVxuXG4gICAgICAgICRxdWVyeS1zdHJpbmc6IGJyZWFrcG9pbnQtcGFyc2UoJG1xKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJHF1ZXJ5LXN0cmluZzogJyc7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGxlbmd0aCB7XG4gICAgICAgICAgJHF1ZXJ5LXN0cmluZzogJHF1ZXJ5LXN0cmluZyArIGlmKCRpID09IDEsICcnLCAnLCAnKSArIGJyZWFrcG9pbnQtcGFyc2UobnRoKCRxdWVyeSwgJGkpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICRyZXR1cm46ICgncXVlcnknOiAkcXVlcnktc3RyaW5nLFxuICAgICAgICAnZmFsbGJhY2snOiAkcXVlcnktZmFsbGJhY2ssXG4gICAgICAgICdjb250ZXh0IGhvbGRlcic6ICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXIsXG4gICAgICAgICdxdWVyeSBjb3VudCc6ICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnRcbiAgICApO1xuICAgIEBpZiBsZW5ndGgoJGNvbnRleHRzKSA+IDAgYW5kIG50aCgkY29udGV4dHMsIDEpICE9IGZhbHNlIHtcbiAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2Uge1xuICAgICAgICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dCgnbm8tcXVlcnknLCAkcXVlcnktZmFsbGJhY2spO1xuICAgICAgfVxuICAgICAgJGNvbnRleHQtbWFwOiAoKTtcbiAgICAgIEBlYWNoICRjb250ZXh0IGluICRjb250ZXh0cyB7XG4gICAgICAgICRjb250ZXh0LW1hcDogbWFwLW1lcmdlKCRjb250ZXh0LW1hcCwgKCRjb250ZXh0OiBicmVha3BvaW50LWdldC1jb250ZXh0KCRjb250ZXh0KSkpO1xuICAgICAgfVxuICAgICAgJHJldHVybjogbWFwLW1lcmdlKCRyZXR1cm4sIChjb250ZXh0OiAkY29udGV4dC1tYXApKTtcbiAgICB9XG5cbiAgICAvLyBSZXNldCBHbG9iYWwgUHJpdmF0ZSBCcmVha3BvaW50IENvbnRleHRcbiAgICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiAoKSAhZ2xvYmFsO1xuICAgICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQ6IDAgIWdsb2JhbDtcblxuICAgIEBpZiAkTWVtby1FeGlzdHMge1xuICAgICAgJGhvbGRlcjogbWVtby1zZXQoYnJlYWtwb2ludCwgYnJlYWtwb2ludCAkcXVlcnkgJGNvbnRleHRzLCAkcmV0dXJuKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gR2VuZXJhbCBCcmVha3BvaW50IFBhcnNlclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZSgkcXVlcnkpIHtcbiAgLy8gSW5jcmVhc2UgbnVtYmVyIG9mICdhbmQnIHF1ZXJpZXNcbiAgJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDogJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudCArIDEgIWdsb2JhbDtcblxuICAvLyBTZXQgdXAgTWVkaWEgVHlwZVxuICAkcXVlcnktcHJpbnQ6ICcnO1xuXG4gICRmb3JjZS1hbGw6ICgoYnJlYWtwb2ludC1nZXQoJ2ZvcmNlIGFsbCBtZWRpYSB0eXBlJykgPT0gdHJ1ZSkgYW5kIChicmVha3BvaW50LWdldCgnZGVmYXVsdCBtZWRpYScpID09ICdhbGwnKSk7XG4gICRlbXB0eS1tZWRpYTogdHJ1ZTtcbiAgQGlmICgkZm9yY2UtYWxsID09IHRydWUpIG9yIChicmVha3BvaW50LWdldCgnZGVmYXVsdCBtZWRpYScpICE9ICdhbGwnKSB7XG4gICAgLy8gRm9yY2UgdGhlIHByaW50IG9mIHRoZSBkZWZhdWx0IG1lZGlhIHR5cGUgaWYgKGZvcmNlIGFsbCBpcyB0cnVlIGFuZCBkZWZhdWx0IG1lZGlhIHR5cGUgaXMgYWxsKSBvciAoZGVmYXVsdCBtZWRpYSB0eXBlIGlzIG5vdCBhbGwpXG4gICAgJHF1ZXJ5LXByaW50OiBicmVha3BvaW50LWdldCgnZGVmYXVsdCBtZWRpYScpO1xuICAgICRlbXB0eS1tZWRpYTogZmFsc2U7XG4gIH1cblxuXG4gICRxdWVyeS1yZXNvbHV0aW9uOiBmYWxzZTtcblxuICAkcXVlcnktaG9sZGVyOiBicmVha3BvaW50LXBhcnNlLXF1ZXJ5KCRxdWVyeSk7XG5cblxuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHBhcnNlZCBvdXQgcXVlcnkgYW5kIHdyaXRlIGl0IHRvICRxdWVyeS1wcmludFxuICAkZmlyc3Q6IHRydWU7XG5cbiAgQGVhY2ggJGZlYXR1cmUgaW4gJHF1ZXJ5LWhvbGRlciB7XG4gICAgJGxlbmd0aDogbGVuZ3RoKCRmZWF0dXJlKTtcblxuICAgIC8vIFBhcnNlIGEgc2luZ2xlIGZlYXR1cmVcbiAgICBAaWYgKCRsZW5ndGggPT0gMSkge1xuICAgICAgLy8gRmVhdHVyZSBpcyBjdXJyZW50bHkgYSBsaXN0LCBncmFiIHRoZSBhY3R1YWwgdmFsdWVcbiAgICAgICRmZWF0dXJlOiBudGgoJGZlYXR1cmUsIDEpO1xuXG4gICAgICAvLyBNZWRpYSBUeXBlIG11c3QgYnkgY29udmVudGlvbiBiZSB0aGUgZmlyc3QgaXRlbSwgc28gaXQncyBzYWZlIHRvIGZsYXQgb3ZlcnJpZGUgJHF1ZXJ5LXByaW50LCB3aGljaCByaWdodCBub3cgc2hvdWxkIG9ubHkgYmUgdGhlIGRlZmF1bHQgbWVkaWEgdHlwZVxuICAgICAgQGlmIChicmVha3BvaW50LWlzLW1lZGlhKCRmZWF0dXJlKSkge1xuICAgICAgICBAaWYgKCRmb3JjZS1hbGwgPT0gdHJ1ZSkgb3IgKCRmZWF0dXJlICE9ICdhbGwnKSB7XG4gICAgICAgICAgLy8gRm9yY2UgdGhlIHByaW50IG9mIHRoZSBkZWZhdWx0IG1lZGlhIHR5cGUgaWYgKGZvcmNlIGFsbCBpcyB0cnVlIGFuZCBkZWZhdWx0IG1lZGlhIHR5cGUgaXMgYWxsKSBvciAoZGVmYXVsdCBtZWRpYSB0eXBlIGlzIG5vdCBhbGwpXG4gICAgICAgICAgJHF1ZXJ5LXByaW50OiAkZmVhdHVyZTtcbiAgICAgICAgICAkZW1wdHktbWVkaWE6IGZhbHNlO1xuXG4gICAgICAgICAgLy8gU2V0IENvbnRleHRcbiAgICAgICAgICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dChtZWRpYSwgJHF1ZXJ5LXByaW50KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLXNpbmdsZSgkZmVhdHVyZSwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpO1xuICAgICAgICAkcXVlcnktcHJpbnQ6ICcjeyRxdWVyeS1wcmludH0gI3skcGFyc2VkfSc7XG4gICAgICAgICRmaXJzdDogZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIC8vIFBhcnNlIGEgZG91YmxlIGZlYXR1cmVcbiAgICBAZWxzZSBpZiAoJGxlbmd0aCA9PSAyKSB7XG4gICAgICBAaWYgKGJyZWFrcG9pbnQtaXMtcmVzb2x1dGlvbigkZmVhdHVyZSkgIT0gZmFsc2UpIHtcbiAgICAgICAgJHF1ZXJ5LXJlc29sdXRpb246ICRmZWF0dXJlO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkcGFyc2VkOiBudWxsO1xuICAgICAgICAvLyBJZiBpdCdzIGEgc3RyaW5nL251bWJlciBwYWlyLFxuICAgICAgICAvLyB3ZSBjaGVjayB0byBzZWUgaWYgb25lIGlzIGEgc2luZ2xlLXN0cmluZyB2YWx1ZSxcbiAgICAgICAgLy8gdGhlbiB3ZSBwYXJzZSBpdCBhcyBhIG5vcm1hbCBkb3VibGVcbiAgICAgICAgJGFscGhhOiBudGgoJGZlYXR1cmUsIDEpO1xuICAgICAgICAkYmV0YTogbnRoKCRmZWF0dXJlLCAyKTtcbiAgICAgICAgQGlmIGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZygkYWxwaGEpIG9yIGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZygkYmV0YSkge1xuICAgICAgICAgICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2Utc2luZ2xlKCRhbHBoYSwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpO1xuICAgICAgICAgICRxdWVyeS1wcmludDogJyN7JHF1ZXJ5LXByaW50fSAjeyRwYXJzZWR9JztcbiAgICAgICAgICAkZmlyc3Q6IGZhbHNlO1xuICAgICAgICAgICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2Utc2luZ2xlKCRiZXRhLCAkZW1wdHktbWVkaWEsICRmaXJzdCk7XG4gICAgICAgICAgJHF1ZXJ5LXByaW50OiAnI3skcXVlcnktcHJpbnR9ICN7JHBhcnNlZH0nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLWRvdWJsZSgkZmVhdHVyZSwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpO1xuICAgICAgICAgICRxdWVyeS1wcmludDogJyN7JHF1ZXJ5LXByaW50fSAjeyRwYXJzZWR9JztcbiAgICAgICAgICAkZmlyc3Q6IGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8vIFBhcnNlIGEgdHJpcGxlIGZlYXR1cmVcbiAgICBAZWxzZSBpZiAoJGxlbmd0aCA9PSAzKSB7XG4gICAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLXRyaXBsZSgkZmVhdHVyZSwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpO1xuICAgICAgJHF1ZXJ5LXByaW50OiAnI3skcXVlcnktcHJpbnR9ICN7JHBhcnNlZH0nO1xuICAgICAgJGZpcnN0OiBmYWxzZTtcbiAgICB9XG5cbiAgfVxuXG4gIEBpZiAoJHF1ZXJ5LXJlc29sdXRpb24gIT0gZmFsc2UpIHtcbiAgICAkcXVlcnktcHJpbnQ6IGJyZWFrcG9pbnQtYnVpbGQtcmVzb2x1dGlvbigkcXVlcnktcHJpbnQsICRxdWVyeS1yZXNvbHV0aW9uLCAkZW1wdHktbWVkaWEsICRmaXJzdCk7XG4gIH1cblxuICAvLyBMb29wIHRocm91Z2ggZWFjaCBmZWF0dXJlIHRoYXQncyBiZWVuIGRldGVjdGVkIHNvIGZhciBhbmQgYXBwZW5kICdmYWxzZScgdG8gdGhlIHRoZSB2YWx1ZSBsaXN0IHRvIGluY3JlbWVudCB0aGVpciBjb3VudGVyc1xuICBAZWFjaCAkZiwgJHYgaW4gJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlciB7XG4gICAgJHYtaG9sZGVyOiAkdjtcbiAgICAkbGVuZ3RoOiBsZW5ndGgoJHYtaG9sZGVyKTtcbiAgICBAaWYgbGVuZ3RoKCR2LWhvbGRlcikgPCAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAkbGVuZ3RoIHRvICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQge1xuICAgICAgICBAaWYgJGYgPT0gJ21lZGlhJyB7XG4gICAgICAgICAgJHYtaG9sZGVyOiBhcHBlbmQoJHYtaG9sZGVyLCBicmVha3BvaW50LWdldCgnZGVmYXVsdCBtZWRpYScpKTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgJHYtaG9sZGVyOiBhcHBlbmQoJHYtaG9sZGVyLCBmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcjogbWFwLW1lcmdlKCRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXIsICgkZjogJHYtaG9sZGVyKSkgIWdsb2JhbDtcbiAgfVxuXG4gIEByZXR1cm4gJHF1ZXJ5LXByaW50O1xufVxuIiwiQGZ1bmN0aW9uIGJyZWFrcG9pbnQtcGFyc2UtcXVlcnkoJHF1ZXJ5KSB7XG4gIC8vIFBhcnNlIGZlYXR1cmVzIG91dCBvZiBhbiBpbmRpdmlkdWFsIHF1ZXJ5XG4gICRmZWF0dXJlLWhvbGRlcjogKCk7XG4gICRxdWVyeS1ob2xkZXI6ICgpO1xuICAkbGVuZ3RoOiBsZW5ndGgoJHF1ZXJ5KTtcblxuICBAaWYgJGxlbmd0aCA9PSAyIHtcbiAgICAvLyBJZiB3ZSd2ZSBnb3QgYSBzdHJpbmcvbnVtYmVyLCBudW1iZXIvc3RyaW5nLCBjaGVjayB0byBzZWUgaWYgaXQncyBhIHZhbGlkIHN0cmluZy9udW1iZXIgcGFpciBvciB0d28gc2luZ2xlc1xuICAgIEBpZiAodHlwZS1vZihudGgoJHF1ZXJ5LCAxKSkgPT0gJ3N0cmluZycgYW5kIHR5cGUtb2YobnRoKCRxdWVyeSwgMikpID09ICdudW1iZXInKSBvciAodHlwZS1vZihudGgoJHF1ZXJ5LCAxKSkgPT0gJ251bWJlcicgYW5kIHR5cGUtb2YobnRoKCRxdWVyeSwgMikpID09ICdzdHJpbmcnKSB7XG5cbiAgICAgICRudW1iZXI6ICcnO1xuICAgICAgJHZhbHVlOiAnJztcblxuICAgICAgQGlmIHR5cGUtb2YobnRoKCRxdWVyeSwgMSkpID09ICdzdHJpbmcnIHtcbiAgICAgICAgJG51bWJlcjogbnRoKCRxdWVyeSwgMik7XG4gICAgICAgICR2YWx1ZTogbnRoKCRxdWVyeSwgMSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICRudW1iZXI6IG50aCgkcXVlcnksIDEpO1xuICAgICAgICAkdmFsdWU6IG50aCgkcXVlcnksIDIpO1xuICAgICAgfVxuXG4gICAgICAvLyBJZiB0aGUgc3RyaW5nIHZhbHVlIGNhbiBiZSBhIHNpbmdsZSB2YWx1ZSwgY2hlY2sgdG8gc2VlIGlmIHRoZSBudW1iZXIgcGFzc2VkIGluIGlzIGEgdmFsaWQgaW5wdXQgZm9yIHNhaWQgc2luZ2xlIHZhbHVlLiBGb3J0dW5hdGVseSwgYWxsIGN1cnJlbnQgc2luZ2xlLXZhbHVlIG9wdGlvbnMgb25seSBhY2NlcHQgdW5pdGxlc3MgbnVtYmVycywgc28gdGhpcyBjaGVjayBpcyBlYXN5LlxuICAgICAgQGlmIGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZygkdmFsdWUpIHtcbiAgICAgICAgQGlmIHVuaXRsZXNzKCRudW1iZXIpIHtcbiAgICAgICAgICAkZmVhdHVyZS1ob2xkZXI6IGFwcGVuZCgkdmFsdWUsICRudW1iZXIsIHNwYWNlKTtcbiAgICAgICAgICAkcXVlcnktaG9sZGVyOiBhcHBlbmQoJHF1ZXJ5LWhvbGRlciwgJGZlYXR1cmUtaG9sZGVyLCBjb21tYSk7XG4gICAgICAgICAgQHJldHVybiAkcXVlcnktaG9sZGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvLyBJZiB0aGUgc3RyaW5nIGlzIGEgbWVkaWEgdHlwZSwgc3BsaXQgdGhlIHF1ZXJ5XG4gICAgICBAaWYgYnJlYWtwb2ludC1pcy1tZWRpYSgkdmFsdWUpIHtcbiAgICAgICAgJHF1ZXJ5LWhvbGRlcjogYXBwZW5kKCRxdWVyeS1ob2xkZXIsIG50aCgkcXVlcnksIDEpKTtcbiAgICAgICAgJHF1ZXJ5LWhvbGRlcjogYXBwZW5kKCRxdWVyeS1ob2xkZXIsIG50aCgkcXVlcnksIDIpKTtcbiAgICAgICAgQHJldHVybiAkcXVlcnktaG9sZGVyO1xuICAgICAgfVxuICAgICAgLy8gSWYgaXQncyBub3QgYSBzaW5nbGUgZmVhdHVyZSwgd2UncmUganVzdCBnb2luZyB0byBhc3N1bWUgaXQncyBhIHByb3BlciBzdHJpbmcvdmFsdWUgcGFpciwgYW5kIHJvbGwgd2l0aCBpdC5cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJGZlYXR1cmUtaG9sZGVyOiBhcHBlbmQoJHZhbHVlLCAkbnVtYmVyLCBzcGFjZSk7XG4gICAgICAgICRxdWVyeS1ob2xkZXI6IGFwcGVuZCgkcXVlcnktaG9sZGVyLCAkZmVhdHVyZS1ob2xkZXIsIGNvbW1hKTtcbiAgICAgICAgQHJldHVybiAkcXVlcnktaG9sZGVyO1xuICAgICAgfVxuXG4gICAgfVxuICAgIC8vIElmIHRoZXkncmUgYm90aCBudW1iZXJzLCB3ZSBhc3N1bWUgaXQncyBhIGRvdWJsZSBhbmQgcm9sbCB3aXRoIHRoYXRcbiAgICBAZWxzZSBpZiAodHlwZS1vZihudGgoJHF1ZXJ5LCAxKSkgPT0gJ251bWJlcicgYW5kIHR5cGUtb2YobnRoKCRxdWVyeSwgMikpID09ICdudW1iZXInKSB7XG4gICAgICAkZmVhdHVyZS1ob2xkZXI6IGFwcGVuZChudGgoJHF1ZXJ5LCAxKSwgbnRoKCRxdWVyeSwgMiksIHNwYWNlKTtcbiAgICAgICRxdWVyeS1ob2xkZXI6IGFwcGVuZCgkcXVlcnktaG9sZGVyLCAkZmVhdHVyZS1ob2xkZXIsIGNvbW1hKTtcbiAgICAgIEByZXR1cm4gJHF1ZXJ5LWhvbGRlcjtcbiAgICB9XG4gICAgLy8gSWYgdGhleSdyZSBib3RoIHN0cmluZ3MgYW5kIG5laXRoZXIgYXJlIHNpbmdsZXMsIHdlIHJvbGwgd2l0aCB0aGF0LlxuICAgIEBlbHNlIGlmICh0eXBlLW9mKG50aCgkcXVlcnksIDEpKSA9PSAnc3RyaW5nJyBhbmQgdHlwZS1vZihudGgoJHF1ZXJ5LCAyKSkgPT0gJ3N0cmluZycpIHtcbiAgICAgIEBpZiBub3QgYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKG50aCgkcXVlcnksIDEpKSBhbmQgbm90IGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZyhudGgoJHF1ZXJ5LCAyKSkge1xuICAgICAgICAkZmVhdHVyZS1ob2xkZXI6IGFwcGVuZChudGgoJHF1ZXJ5LCAxKSwgbnRoKCRxdWVyeSwgMiksIHNwYWNlKTtcbiAgICAgICAgJHF1ZXJ5LWhvbGRlcjogYXBwZW5kKCRxdWVyeS1ob2xkZXIsICRmZWF0dXJlLWhvbGRlciwgY29tbWEpO1xuICAgICAgICBAcmV0dXJuICRxdWVyeS1ob2xkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRsZW5ndGggPT0gMyB7XG4gICAgLy8gSWYgd2UndmUgZ290IHRocmVlIGl0ZW1zIGFuZCBub25lIGlzIGEgbGlzdCwgd2UgY2hlY2sgdG8gc2VlXG4gICAgQGlmIHR5cGUtb2YobnRoKCRxdWVyeSwgMSkpICE9ICdsaXN0JyBhbmQgdHlwZS1vZihudGgoJHF1ZXJ5LCAyKSkgIT0gJ2xpc3QnIGFuZCB0eXBlLW9mKG50aCgkcXVlcnksIDMpKSAhPSAnbGlzdCcge1xuICAgICAgLy8gSWYgbm9uZSBvZiB0aGUgaXRlbXMgYXJlIHNpbmdsZSBzdHJpbmcgdmFsdWVzIGFuZCBub25lIG9mIHRoZSB2YWx1ZXMgYXJlIG1lZGlhIHZhbHVlcywgd2UncmUgZ29vZC5cbiAgICAgIEBpZiAobm90IGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZyhudGgoJHF1ZXJ5LCAxKSkgYW5kIG5vdCBicmVha3BvaW50LXNpbmdsZS1zdHJpbmcobnRoKCRxdWVyeSwgMikpIGFuZCBub3QgYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKG50aCgkcXVlcnksIDMpKSkgYW5kICAoKG5vdCBicmVha3BvaW50LWlzLW1lZGlhKG50aCgkcXVlcnksIDEpKSBhbmQgbm90IGJyZWFrcG9pbnQtaXMtbWVkaWEobnRoKCRxdWVyeSwgMikpIGFuZCBub3QgYnJlYWtwb2ludC1pcy1tZWRpYShudGgoJHF1ZXJ5LCAzKSkpKSB7XG4gICAgICAgICRmZWF0dXJlLWhvbGRlcjogYXBwZW5kKG50aCgkcXVlcnksIDEpLCBudGgoJHF1ZXJ5LCAyKSwgc3BhY2UpO1xuICAgICAgICAkZmVhdHVyZS1ob2xkZXI6IGFwcGVuZCgkZmVhdHVyZS1ob2xkZXIsIG50aCgkcXVlcnksIDMpLCBzcGFjZSk7XG4gICAgICAgICRxdWVyeS1ob2xkZXI6IGFwcGVuZCgkcXVlcnktaG9sZGVyLCAkZmVhdHVyZS1ob2xkZXIsIGNvbW1hKTtcbiAgICAgICAgQHJldHVybiAkcXVlcnktaG9sZGVyO1xuICAgICAgfVxuICAgICAgLy8gbGV0J3MgY2hlY2sgdG8gc2VlIGlmIHRoZSBmaXJzdCBpdGVtIGlzIGEgbWVkaWEgdHlwZVxuICAgICAgQGVsc2UgaWYgYnJlYWtwb2ludC1pcy1tZWRpYShudGgoJHF1ZXJ5LCAxKSkge1xuICAgICAgICAkcXVlcnktaG9sZGVyOiBhcHBlbmQoJHF1ZXJ5LWhvbGRlciwgbnRoKCRxdWVyeSwgMSkpO1xuICAgICAgICAkZmVhdHVyZS1ob2xkZXI6IGFwcGVuZChudGgoJHF1ZXJ5LCAyKSwgbnRoKCRxdWVyeSwgMyksIHNwYWNlKTtcbiAgICAgICAgJHF1ZXJ5LWhvbGRlcjogYXBwZW5kKCRxdWVyeS1ob2xkZXIsICRmZWF0dXJlLWhvbGRlcik7XG4gICAgICAgIEByZXR1cm4gJHF1ZXJ5LWhvbGRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiBpdCdzIGEgc2luZ2xlIGl0ZW0sIG9yIGlmIGl0J3Mgbm90IGEgc3BlY2lhbCBjYXNlIGRvdWJsZSBvciB0cmlwbGUsIHdlIGNhbiBzaW1wbHkgcmV0dXJuIHRoZSBxdWVyeS5cbiAgQHJldHVybiAkcXVlcnk7XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcG9ydCBQaWVjZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCBcInNpbmdsZS9kZWZhdWx0XCI7XG5cbkBmdW5jdGlvbiBicmVha3BvaW50LXBhcnNlLXNpbmdsZSgkZmVhdHVyZSwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpIHtcbiAgJHBhcnNlZDogJyc7XG4gICRsZWFkZXI6ICcnO1xuICAvLyBJZiB3ZSdyZSBmb3JjaW5nXG4gIEBpZiBub3QgKCRlbXB0eS1tZWRpYSkgb3Igbm90ICgkZmlyc3QpIHtcbiAgICAkbGVhZGVyOiAnYW5kICc7XG4gIH1cblxuICAvLyBJZiBpdCdzIGEgc2luZ2xlIGZlYXR1cmUgdGhhdCBjYW4gc3RhbmQgYWxvbmUsIHdlIGxldCBpdFxuICBAaWYgKGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZygkZmVhdHVyZSkpIHtcbiAgICAkcGFyc2VkOiAkZmVhdHVyZTtcbiAgICAvLyBTZXQgQ29udGV4dFxuICAgICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KCRmZWF0dXJlLCAkZmVhdHVyZSk7XG4gIH1cbiAgLy8gSWYgaXQncyBub3QgYSBzdGFuZCBhbG9uZSBmZWF0dXJlLCB3ZSBwYXNzIGl0IG9mZiB0byB0aGUgZGVmYXVsdCBoYW5kbGVyLlxuICBAZWxzZSB7XG4gICAgJHBhcnNlZDogYnJlYWtwb2ludC1wYXJzZS1kZWZhdWx0KCRmZWF0dXJlKTtcbiAgfVxuXG4gIEByZXR1cm4gJGxlYWRlciArICcoJyArICRwYXJzZWQgKyAnKSc7XG59XG4iLCJAZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS1kZWZhdWx0KCRmZWF0dXJlKSB7XG4gICRkZWZhdWx0OiBicmVha3BvaW50LWdldCgnZGVmYXVsdCBmZWF0dXJlJyk7XG5cbiAgLy8gU2V0IENvbnRleHRcbiAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJGRlZmF1bHQsICRmZWF0dXJlKTtcblxuICBAaWYgKGJyZWFrcG9pbnQtZ2V0KCd0byBlbXMnKSA9PSB0cnVlKSBhbmQgKHR5cGUtb2YoJGZlYXR1cmUpID09ICdudW1iZXInKSB7XG4gICAgQHJldHVybiAnI3skZGVmYXVsdH06ICN7YnJlYWtwb2ludC10by1iYXNlLWVtKCRmZWF0dXJlKX0nO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuICcjeyRkZWZhdWx0fTogI3skZmVhdHVyZX0nO1xuICB9XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcG9ydCBQaWVjZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCBcImRvdWJsZS9kZWZhdWx0LXBhaXJcIjtcbkBpbXBvcnQgXCJkb3VibGUvZG91YmxlLXN0cmluZ1wiO1xuQGltcG9ydCBcImRvdWJsZS9kZWZhdWx0XCI7XG5cbkBmdW5jdGlvbiBicmVha3BvaW50LXBhcnNlLWRvdWJsZSgkZmVhdHVyZSwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpIHtcbiAgJHBhcnNlZDogJyc7XG4gICRsZWFkZXI6ICcnO1xuICAvLyBJZiB3ZSdyZSBmb3JjaW5nXG4gIEBpZiBub3QgKCRlbXB0eS1tZWRpYSkgb3Igbm90ICgkZmlyc3QpIHtcbiAgICAkbGVhZGVyOiAnYW5kICc7XG4gIH1cblxuICAkZmlyc3Q6IG50aCgkZmVhdHVyZSwgMSk7XG4gICRzZWNvbmQ6IG50aCgkZmVhdHVyZSwgMik7XG5cbiAgLy8gSWYgd2UndmUgZ290IHR3byBudW1iZXJzLCB3ZSBrbm93IHdlIG5lZWQgdG8gdXNlIHRoZSBkZWZhdWx0IHBhaXIgYmVjYXVzZSB0aGVyZSBhcmUgbm8gbWVkaWEgcXVlcmllcyB0aGF0IGhhcyBhIG1lZGlhIGZlYXR1cmUgdGhhdCBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkZmlyc3QpID09ICdudW1iZXInIGFuZCB0eXBlLW9mKCRzZWNvbmQpID09ICdudW1iZXInIHtcbiAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLWRlZmF1bHQtcGFpcigkZmlyc3QsICRzZWNvbmQpO1xuICB9XG4gIC8vIElmIHRoZXkgYXJlIGJvdGggc3RyaW5ncywgd2Ugc2VuZCBpdCB0aHJvdWdoIHRoZSBzdHJpbmcgcGFyc2VyXG4gIEBlbHNlIGlmIHR5cGUtb2YoJGZpcnN0KSA9PSAnc3RyaW5nJyBhbmQgdHlwZS1vZigkc2Vjb25kKSA9PSAnc3RyaW5nJyB7XG4gICAgJHBhcnNlZDogYnJlYWtwb2ludC1wYXJzZS1kb3VibGUtc3RyaW5nKCRmaXJzdCwgJHNlY29uZCk7XG4gIH1cbiAgLy8gSWYgaXQncyBhIHN0cmluZy9udW1iZXIgcGFpciwgd2UgcGFyc2UgaXQgYXMgYSBub3JtYWwgZG91YmxlXG4gIEBlbHNlIHtcbiAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLWRvdWJsZS1kZWZhdWx0KCRmaXJzdCwgJHNlY29uZCk7XG4gIH1cblxuICBAcmV0dXJuICRsZWFkZXIgKyAkcGFyc2VkO1xufVxuIiwiQGZ1bmN0aW9uIGJyZWFrcG9pbnQtcGFyc2UtZGVmYXVsdC1wYWlyKCRmaXJzdCwgJHNlY29uZCkge1xuICAkZGVmYXVsdDogYnJlYWtwb2ludC1nZXQoJ2RlZmF1bHQgcGFpcicpO1xuICAkbWluOiAnJztcbiAgJG1heDogJyc7XG5cbiAgLy8gU29ydCBpbnRvIG1pbiBhbmQgbWF4XG4gICRtaW46IG1pbigkZmlyc3QsICRzZWNvbmQpO1xuICAkbWF4OiBtYXgoJGZpcnN0LCAkc2Vjb25kKTtcblxuICAvLyBTZXQgQ29udGV4dFxuICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dChtaW4tI3skZGVmYXVsdH0sICRtaW4pO1xuICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dChtYXgtI3skZGVmYXVsdH0sICRtYXgpO1xuXG4gIC8vIE1ha2UgdGhlbSBFTXMgaWYgbmVlZCBiZVxuICBAaWYgKGJyZWFrcG9pbnQtZ2V0KCd0byBlbXMnKSA9PSB0cnVlKSB7XG4gICAgJG1pbjogYnJlYWtwb2ludC10by1iYXNlLWVtKCRtaW4pO1xuICAgICRtYXg6IGJyZWFrcG9pbnQtdG8tYmFzZS1lbSgkbWF4KTtcbiAgfVxuXG4gIEByZXR1cm4gJyhtaW4tI3skZGVmYXVsdH06ICN7JG1pbn0pIGFuZCAobWF4LSN7JGRlZmF1bHR9OiAjeyRtYXh9KSc7XG59XG4iLCJAZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS1kb3VibGUtc3RyaW5nKCRmaXJzdCwgJHNlY29uZCkge1xuICAkZmVhdHVyZTogJyc7XG4gICR2YWx1ZTogJyc7XG5cbiAgLy8gVGVzdCB0byBzZWUgd2hpY2ggaXMgdGhlIGZlYXR1cmUgYW5kIHdoaWNoIGlzIHRoZSB2YWx1ZVxuICBAaWYgKGJyZWFrcG9pbnQtc3RyaW5nLXZhbHVlKCRmaXJzdCkgPT0gdHJ1ZSkge1xuICAgICRmZWF0dXJlOiAkZmlyc3Q7XG4gICAgJHZhbHVlOiAkc2Vjb25kO1xuICB9XG4gIEBlbHNlIGlmIChicmVha3BvaW50LXN0cmluZy12YWx1ZSgkc2Vjb25kKSA9PSB0cnVlKSB7XG4gICAgJGZlYXR1cmU6ICRzZWNvbmQ7XG4gICAgJHZhbHVlOiAkZmlyc3Q7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuIFwiTmVpdGhlciAjeyRmaXJzdH0gbm9yICN7JHNlY29uZH0gaXMgYSB2YWxpZCBtZWRpYSBxdWVyeSBuYW1lLlwiO1xuICB9XG5cbiAgLy8gU2V0IENvbnRleHRcbiAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJGZlYXR1cmUsICR2YWx1ZSk7XG5cbiAgQHJldHVybiAnKCN7JGZlYXR1cmV9OiAjeyR2YWx1ZX0pJztcbn0iLCJAZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS1kb3VibGUtZGVmYXVsdCgkZmlyc3QsICRzZWNvbmQpIHtcbiAgJGZlYXR1cmU6ICcnO1xuICAkdmFsdWU6ICcnO1xuXG4gIEBpZiB0eXBlLW9mKCRmaXJzdCkgPT0gJ3N0cmluZycge1xuICAgICRmZWF0dXJlOiAkZmlyc3Q7XG4gICAgJHZhbHVlOiAkc2Vjb25kO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkZmVhdHVyZTogJHNlY29uZDtcbiAgICAkdmFsdWU6ICRmaXJzdDtcbiAgfVxuXG4gIC8vIFNldCBDb250ZXh0XG4gICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KCRmZWF0dXJlLCAkdmFsdWUpO1xuXG4gIEBpZiAoYnJlYWtwb2ludC1nZXQoJ3RvIGVtcycpID09IHRydWUpIHtcbiAgICAkdmFsdWU6IGJyZWFrcG9pbnQtdG8tYmFzZS1lbSgkdmFsdWUpO1xuICB9XG5cbiAgQHJldHVybiAnKCN7JGZlYXR1cmV9OiAjeyR2YWx1ZX0pJ1xufVxuIiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBJbXBvcnQgUGllY2VzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgXCJ0cmlwbGUvZGVmYXVsdFwiO1xuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS10cmlwbGUoJGZlYXR1cmUsICRlbXB0eS1tZWRpYSwgJGZpcnN0KSB7XG4gICRwYXJzZWQ6ICcnO1xuICAkbGVhZGVyOiAnJztcblxuICAvLyBJZiB3ZSdyZSBmb3JjaW5nXG4gIEBpZiBub3QgKCRlbXB0eS1tZWRpYSkgb3Igbm90ICgkZmlyc3QpIHtcbiAgICAkbGVhZGVyOiAnYW5kICc7XG4gIH1cblxuICAvLyBzZXBhcmF0ZSB0aGUgc3RyaW5nIGZlYXR1cmVzIGZyb20gdGhlIHZhbHVlIG51bWJlcnNcbiAgJHN0cmluZzogbnVsbDtcbiAgJG51bWJlcnM6IG51bGw7XG4gIEBlYWNoICR2YWwgaW4gJGZlYXR1cmUge1xuICAgIEBpZiB0eXBlLW9mKCR2YWwpID09IHN0cmluZyB7XG4gICAgICAkc3RyaW5nOiAkdmFsO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaWYgdHlwZS1vZigkbnVtYmVycykgPT0gJ251bGwnIHtcbiAgICAgICAgJG51bWJlcnM6ICR2YWw7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICRudW1iZXJzOiBhcHBlbmQoJG51bWJlcnMsICR2YWwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2UtdHJpcGxlLWRlZmF1bHQoJHN0cmluZywgbnRoKCRudW1iZXJzLCAxKSwgbnRoKCRudW1iZXJzLCAyKSk7XG5cbiAgQHJldHVybiAkbGVhZGVyICsgJHBhcnNlZDtcblxufVxuIiwiQGZ1bmN0aW9uIGJyZWFrcG9pbnQtcGFyc2UtdHJpcGxlLWRlZmF1bHQoJGZlYXR1cmUsICRmaXJzdCwgJHNlY29uZCkge1xuXG4gIC8vIFNvcnQgaW50byBtaW4gYW5kIG1heFxuICAkbWluOiBtaW4oJGZpcnN0LCAkc2Vjb25kKTtcbiAgJG1heDogbWF4KCRmaXJzdCwgJHNlY29uZCk7XG5cbiAgLy8gU2V0IENvbnRleHRcbiAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQobWluLSN7JGZlYXR1cmV9LCAkbWluKTtcbiAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQobWF4LSN7JGZlYXR1cmV9LCAkbWF4KTtcblxuICAvLyBNYWtlIHRoZW0gRU1zIGlmIG5lZWQgYmVcbiAgQGlmIChicmVha3BvaW50LWdldCgndG8gZW1zJykgPT0gdHJ1ZSkge1xuICAgICRtaW46IGJyZWFrcG9pbnQtdG8tYmFzZS1lbSgkbWluKTtcbiAgICAkbWF4OiBicmVha3BvaW50LXRvLWJhc2UtZW0oJG1heCk7XG4gIH1cblxuICBAcmV0dXJuICcobWluLSN7JGZlYXR1cmV9OiAjeyRtaW59KSBhbmQgKG1heC0jeyRmZWF0dXJlfTogI3skbWF4fSknO1xufVxuIiwiQGltcG9ydCBcInJlc29sdXRpb24vcmVzb2x1dGlvblwiO1xuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1idWlsZC1yZXNvbHV0aW9uKCRxdWVyeS1wcmludCwgJHF1ZXJ5LXJlc29sdXRpb24sICRlbXB0eS1tZWRpYSwgJGZpcnN0KSB7XG4gICRsZWFkZXI6ICcnO1xuICAvLyBJZiB3ZSdyZSBmb3JjaW5nXG4gIEBpZiBub3QgKCRlbXB0eS1tZWRpYSkgb3Igbm90ICgkZmlyc3QpIHtcbiAgICAkbGVhZGVyOiAnYW5kICc7XG4gIH1cblxuICBAaWYgYnJlYWtwb2ludC1nZXQoJ3RyYW5zZm9ybSByZXNvbHV0aW9ucycpIGFuZCAkcXVlcnktcmVzb2x1dGlvbiB7XG4gICAgJHJlc29sdXRpb25zOiBicmVha3BvaW50LW1ha2UtcmVzb2x1dGlvbnMoJHF1ZXJ5LXJlc29sdXRpb24pO1xuICAgICRsZW5ndGg6IGxlbmd0aCgkcmVzb2x1dGlvbnMpO1xuICAgICRxdWVyeS1ob2xkZXI6ICcnO1xuXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbGVuZ3RoIHtcbiAgICAgICRxdWVyeTogJyN7JHF1ZXJ5LXByaW50fSAjeyRsZWFkZXJ9I3tudGgoJHJlc29sdXRpb25zLCAkaSl9JztcbiAgICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICAgJHF1ZXJ5LWhvbGRlcjogJHF1ZXJ5O1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkcXVlcnktaG9sZGVyOiAnI3skcXVlcnktaG9sZGVyfSwgI3skcXVlcnl9JztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuICRxdWVyeS1ob2xkZXI7XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFJldHVybiB3aXRoIGF0dGFjaGVkIHJlc29sdXRpb25cbiAgICBAcmV0dXJuICRxdWVyeS1wcmludDtcbiAgfVxufVxuIiwiQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWFrZS1yZXNvbHV0aW9ucygkcmVzb2x1dGlvbikge1xuICAkbGVuZ3RoOiBsZW5ndGgoJHJlc29sdXRpb24pO1xuXG4gICRvdXRwdXQ6ICgpO1xuXG4gIEBpZiAkbGVuZ3RoID09IDIge1xuICAgICRmZWF0dXJlOiAnJztcbiAgICAkdmFsdWU6ICcnO1xuXG4gICAgLy8gRmluZCB3aGljaCBpcyBudW1iZXJcbiAgICBAaWYgdHlwZS1vZihudGgoJHJlc29sdXRpb24sIDEpKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IG50aCgkcmVzb2x1dGlvbiwgMSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR2YWx1ZTogbnRoKCRyZXNvbHV0aW9uLCAyKTtcbiAgICB9XG5cbiAgICAvLyBEZXRlcm1pbmUgbWluL21heC9zdGFuZGFyZFxuICAgIEBpZiBpbmRleCgkcmVzb2x1dGlvbiwgJ21pbi1yZXNvbHV0aW9uJykge1xuICAgICAgJGZlYXR1cmU6ICdtaW4tJztcbiAgICB9XG4gICAgQGVsc2UgaWYgaW5kZXgoJHJlc29sdXRpb24sICdtYXgtcmVzb2x1dGlvbicpIHtcbiAgICAgICRmZWF0dXJlOiAnbWF4LSc7XG4gICAgfVxuXG4gICAgJHN0YW5kYXJkOiAnKCN7JGZlYXR1cmV9cmVzb2x1dGlvbjogI3skdmFsdWV9KSc7XG5cbiAgICAvLyBJZiB3ZSdyZSBub3QgZGVhbGluZyB3aXRoIGRwcHgsXG4gICAgQGlmIHVuaXQoJHZhbHVlKSAhPSAnZHBweCcge1xuICAgICAgJGJhc2U6IDk2ZHBpO1xuICAgICAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZHBjbScge1xuICAgICAgICAkYmFzZTogMjQzLjg0ZHBjbTtcbiAgICAgIH1cbiAgICAgIC8vIFdyaXRlIG91dCBmZWF0dXJlIHRlc3RzXG4gICAgICAkd2Via2l0OiAnJztcbiAgICAgICRtb3o6ICcnO1xuICAgICAgJHdlYmtpdDogJygtd2Via2l0LSN7JGZlYXR1cmV9ZGV2aWNlLXBpeGVsLXJhdGlvOiAjeyR2YWx1ZSAvICRiYXNlfSknO1xuICAgICAgJG1vejogJygjeyRmZWF0dXJlfS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAjeyR2YWx1ZSAvICRiYXNlfSknO1xuICAgICAgLy8gQXBwZW5kIHRvIG91dHB1dFxuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICRzdGFuZGFyZCwgc3BhY2UpO1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICR3ZWJraXQsIHNwYWNlKTtcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAkbW96LCBzcGFjZSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3ZWJraXQ6ICcnO1xuICAgICAgJG1vejogJyc7XG4gICAgICAkd2Via2l0OiAnKC13ZWJraXQtI3skZmVhdHVyZX1kZXZpY2UtcGl4ZWwtcmF0aW86ICN7JHZhbHVlIC8gMWRwcHh9KSc7XG4gICAgICAkbW96OiAnKCN7JGZlYXR1cmV9LW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86ICN7JHZhbHVlIC8gMWRwcHh9KSc7XG4gICAgICAkZmFsbGJhY2s6ICcoI3skZmVhdHVyZX1yZXNvbHV0aW9uOiAjeyR2YWx1ZSAvIDFkcHB4ICogOTZkcGl9KSc7XG4gICAgICAvLyBBcHBlbmQgdG8gb3V0cHV0XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgJHN0YW5kYXJkLCBzcGFjZSk7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgJHdlYmtpdCwgc3BhY2UpO1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICRtb3osIHNwYWNlKTtcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAkZmFsbGJhY2ssIHNwYWNlKTtcbiAgICB9XG5cbiAgfVxuXG4gIEByZXR1cm4gJG91dHB1dDtcbn1cbiIsIkBmdW5jdGlvbiBicmVha3BvaW50LW5vLXF1ZXJ5KCRxdWVyeSkge1xuICBAaWYgdHlwZS1vZigkcXVlcnkpID09ICdsaXN0JyB7XG4gICAgJGtleXdvcmQ6IG50aCgkcXVlcnksIDEpO1xuXG4gICAgQGlmIHR5cGUtb2YoJGtleXdvcmQpID09ICdzdHJpbmcnIGFuZCAoJGtleXdvcmQgPT0gJ25vLXF1ZXJ5JyBvciAka2V5d29yZCA9PSAnbm8gcXVlcnknIG9yICRrZXl3b3JkID09ICdmYWxsYmFjaycpIHtcbiAgICAgIEByZXR1cm4gbnRoKCRxdWVyeSwgMik7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGZhbHNlO1xuICB9XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIERlZmF1bHQgdGhlIEJyZWFrcG9pbnRzIHZhcmlhYmxlXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRicmVha3BvaW50czogKCkgIWRlZmF1bHQ7XG4kQlJFQUtQT0lOVFM6ICgpICFkZWZhdWx0O1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFJlc3BvbmQtdG8gQVBJIE1peGluXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBtaXhpbiByZXNwb25kLXRvKCRjb250ZXh0LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpZiBsZW5ndGgoJGJyZWFrcG9pbnRzKSA+IDAgYW5kIGxlbmd0aCgkQlJFQUtQT0lOVFMpID09IDAge1xuICAgIEB3YXJuIFwiSW4gb3JkZXIgdG8gYXZvaWQgdmFyaWFibGUgbmFtZXNwYWNlIGNvbGxpc2lvbnMsIHdlIGhhdmUgdXBkYXRlZCB0aGUgd2F5IHRvIGFkZCBicmVha3BvaW50cyBmb3IgcmVzcG9uZC10by4gUGxlYXNlIGNoYW5nZSBhbGwgaW5zdGFuY2VzIG9mIGAkYnJlYWtwb2ludHM6IGFkZC1icmVha3BvaW50KClgIHRvIGBAaW5jbHVkZSBhZGQtYnJlYWtwb2ludCgpYC4gVGhlIGBhZGQtYnJlYWtwb2ludCgpYCBmdW5jdGlvbiB3aWxsIGJlIGRlcHJlY2F0ZWQgaW4gYSBmdXR1cmUgcmVsZWFzZS5cIjtcbiAgICAkQlJFQUtQT0lOVFM6ICRicmVha3BvaW50cyAhZ2xvYmFsO1xuICAgICRicmVha3BvaW50czogKCkgIWdsb2JhbDtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCRCUkVBS1BPSU5UUykgIT0gJ21hcCcge1xuICAgIC8vIEp1c3QgaW4gY2FzZSBzb21lb25lIHdyaXRlcyBnaWJiZXJpc2ggdG8gdGhlICRicmVha3BvaW50cyB2YXJpYWJsZS5cbiAgICBAd2FybiBcIllvdXIgYnJlYWtwb2ludHMgYXJlbid0IGEgbWFwISBgcmVzcG9uZC10b2AgZXhwZWN0cyBhIG1hcC4gUGxlYXNlIGNoZWNrIHRoZSB2YWx1ZSBvZiAkQlJFQUtQT0lOVFMgdmFyaWFibGUuXCI7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJEJSRUFLUE9JTlRTLCAkY29udGV4dCkge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWFwLWdldCgkQlJFQUtQT0lOVFMsICRjb250ZXh0KSwgJG5vLXF1ZXJ5KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgbm90IG1hcC1oYXMta2V5KCRCUkVBS1BPSU5UUywgJGNvbnRleHQpIHtcbiAgICBAd2FybiBcImAjeyRjb250ZXh0fWAgaXNuJ3QgYSBkZWZpbmVkIGJyZWFrcG9pbnQhIFBsZWFzZSBhZGQgaXQgdXNpbmcgYCRicmVha3BvaW50czogYWRkLWJyZWFrcG9pbnQoYCN7JGNvbnRleHR9YCwgJHZhbHVlKTtgXCI7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuIFwiWW91IGhhdmVuJ3QgY3JlYXRlZCBhbnkgYnJlYWtwb2ludHMgeWV0ISBNYWtlIHNvbWUgYWxyZWFkeSEgYEBpbmNsdWRlIGFkZC1icmVha3BvaW50KCRuYW1lLCAkYmtwdClgXCI7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBBZGQgQnJlYWtwb2ludCB0byBCcmVha3BvaW50c1xuLy8gVE9ETzogUmVtb3ZlIGZ1bmN0aW9uIGluIG5leHQgcmVsZWFzZVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYWRkLWJyZWFrcG9pbnQoJG5hbWUsICRia3B0LCAkb3ZlcndyaXRlOiBmYWxzZSkge1xuICAkb3V0cHV0OiAoJG5hbWU6ICRia3B0KTtcblxuICBAaWYgbGVuZ3RoKCRicmVha3BvaW50cykgPT0gMCB7XG4gICAgQHJldHVybiAkb3V0cHV0O1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbmFtZSkgYW5kICRvdmVyd3JpdGUgIT0gdHJ1ZSB7XG4gICAgICBAd2FybiBcIllvdSBhbHJlYWR5IGhhdmUgYSBicmVha3BvaW50IG5hbWVkIGAjeyRuYW1lfWAsIHBsZWFzZSBjaG9vc2UgYW5vdGhlciBicmVha3BvaW50IG5hbWUsIG9yIHBhc3MgaW4gYCRvdmVyd3JpdGU6IHRydWVgIHRvIG92ZXJ3cml0ZSB0aGUgcHJldmlvdXMgYnJlYWtwb2ludC5cIjtcbiAgICAgIEByZXR1cm4gJGJyZWFrcG9pbnRzO1xuICAgIH1cbiAgICBAZWxzZSBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbmFtZSkgb3IgJG92ZXJ3cml0ZSA9PSB0cnVlIHtcbiAgICAgIEByZXR1cm4gbWFwLW1lcmdlKCRicmVha3BvaW50cywgJG91dHB1dCk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhZGQtYnJlYWtwb2ludCgkbmFtZSwgJGJrcHQsICRvdmVyd3JpdGU6IGZhbHNlKSB7XG4gICRvdXRwdXQ6ICgkbmFtZTogJGJrcHQpO1xuXG4gIEBpZiBsZW5ndGgoJEJSRUFLUE9JTlRTKSA9PSAwIHtcbiAgICAkQlJFQUtQT0lOVFM6ICRvdXRwdXQgIWdsb2JhbDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRCUkVBS1BPSU5UUywgJG5hbWUpIGFuZCAkb3ZlcndyaXRlICE9IHRydWUge1xuICAgICAgQHdhcm4gXCJZb3UgYWxyZWFkeSBoYXZlIGEgYnJlYWtwb2ludCBuYW1lZCBgI3skbmFtZX1gLCBwbGVhc2UgY2hvb3NlIGFub3RoZXIgYnJlYWtwb2ludCBuYW1lLCBvciBwYXNzIGluIGAkb3ZlcndyaXRlOiB0cnVlYCB0byBvdmVyd3JpdGUgdGhlIHByZXZpb3VzIGJyZWFrcG9pbnQuXCI7XG4gICAgICAkQlJFQUtQT0lOVFM6ICRCUkVBS1BPSU5UUyAhZ2xvYmFsO1xuICAgIH1cbiAgICBAZWxzZSBpZiBub3QgbWFwLWhhcy1rZXkoJEJSRUFLUE9JTlRTLCAkbmFtZSkgb3IgJG92ZXJ3cml0ZSA9PSB0cnVlIHtcbiAgICAgICRCUkVBS1BPSU5UUzogbWFwLW1lcmdlKCRCUkVBS1BPSU5UUywgJG91dHB1dCkgIWdsb2JhbDtcbiAgICB9XG4gIH1cbn1cblxuQGZ1bmN0aW9uIGdldC1icmVha3BvaW50KCRuYW1lOiBmYWxzZSkge1xuICBAaWYgJG5hbWUgPT0gZmFsc2Uge1xuICAgIEByZXR1cm4gJEJSRUFLUE9JTlRTO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJEJSRUFLUE9JTlRTLCAkbmFtZSk7XG4gIH1cbn1cbiIsIkBtaXhpbiBsZWdhY3ktc2V0dGluZ3Mtd2FybmluZyB7XG4gICRsZWdhY3lWYXJzOiAoXG4gICAgJ2RlZmF1bHQtbWVkaWEnOiAnZGVmYXVsdCBtZWRpYScsXG4gICAgJ2RlZmF1bHQtZmVhdHVyZSc6ICdkZWZhdWx0IGZlYXR1cmUnLFxuICAgICdmb3JjZS1tZWRpYS1hbGwnOiAnZm9yY2UgYWxsIG1lZGlhIHR5cGUnLFxuICAgICd0by1lbXMnOiAndG8gZW1zJyxcbiAgICAncmVzb2x1dGlvbnMnOiAndHJhbnNmb3JtIHJlc29sdXRpb25zJyxcbiAgICAnbm8tcXVlcmllcyc6ICdubyBxdWVyaWVzJyxcbiAgICAnbm8tcXVlcnktZmFsbGJhY2tzJzogJ25vIHF1ZXJ5IGZhbGxiYWNrcycsXG4gICAgJ2Jhc2UtZm9udC1zaXplJzogJ2Jhc2UgZm9udCBzaXplJyxcbiAgICAnbGVnYWN5LXN5bnRheCc6ICdsZWdhY3kgc3ludGF4J1xuICApO1xuXG4gIEBlYWNoICRsZWdhY3ksICRuZXcgaW4gJGxlZ2FjeVZhcnMge1xuICAgIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdicmVha3BvaW50LScgKyAkbGVnYWN5KSB7XG4gICAgICBAd2FybiBcIkluIG9yZGVyIHRvIGF2b2lkIHZhcmlhYmxlIG5hbXNwYWNlIGNvbGxpc2lvbnMsIHdlIGhhdmUgdXBkYXRlZCB0aGUgd2F5IHRvIGNoYW5nZSBzZXR0aW5ncyBmb3IgQnJlYWtwb2ludC4gUGxlYXNlIGNoYW5nZSBhbGwgaW5zdGFuY2VzIG9mIGAkYnJlYWtwb2ludC0jeyRsZWdhY3l9OiB7e3NldHRpbmd9fWAgdG8gYEBpbmNsdWRlIGJyZWFrcG9pbnQtc2V0KCcjeyRuZXd9Jywge3tzZXR0aW5nfX0pYC4gVmFyaWFibGUgc2V0dGluZ3MsIGFzIHdlbGwgYXMgdGhpcyB3YXJuaW5nIHdpbGwgYmUgZGVwcmVjYXRlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLlwiXG4gICAgfVxuICB9O1xuXG4gIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICAvLyBIYW5kIGNvcnJlY3QgZWFjaCBzZXR0aW5nXG4gIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnYnJlYWtwb2ludC1kZWZhdWx0LW1lZGlhJykgYW5kICRicmVha3BvaW50LWRlZmF1bHQtbWVkaWEgIT0gYnJlYWtwb2ludC1nZXQoJ2RlZmF1bHQgbWVkaWEnKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJ2RlZmF1bHQgbWVkaWEnLCAkYnJlYWtwb2ludC1kZWZhdWx0LW1lZGlhKTtcbiAgfVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnYnJlYWtwb2ludC1kZWZhdWx0LWZlYXR1cmUnKSBhbmQgJGJyZWFrcG9pbnQtZGVmYXVsdC1mZWF0dXJlICE9IGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IGZlYXR1cmUnKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJ2RlZmF1bHQgZmVhdHVyZScsICRicmVha3BvaW50LWRlZmF1bHQtZmVhdHVyZSk7XG4gIH1cbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoJ2JyZWFrcG9pbnQtZm9yY2UtbWVkaWEtYWxsJykgYW5kICRicmVha3BvaW50LWZvcmNlLW1lZGlhLWFsbCAhPSBicmVha3BvaW50LWdldCgnZm9yY2UgYWxsIG1lZGlhIHR5cGUnKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJ2ZvcmNlIGFsbCBtZWRpYSB0eXBlJywgJGJyZWFrcG9pbnQtZm9yY2UtbWVkaWEtYWxsKTtcbiAgfVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnYnJlYWtwb2ludC10by1lbXMnKSBhbmQgJGJyZWFrcG9pbnQtdG8tZW1zICE9IGJyZWFrcG9pbnQtZ2V0KCd0byBlbXMnKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJ3RvIGVtcycsICRicmVha3BvaW50LXRvLWVtcyk7XG4gIH1cbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoJ2JyZWFrcG9pbnQtcmVzb2x1dGlvbnMnKSBhbmQgJGJyZWFrcG9pbnQtcmVzb2x1dGlvbnMgIT0gYnJlYWtwb2ludC1nZXQoJ3RyYW5zZm9ybSByZXNvbHV0aW9ucycpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LXNldCgndHJhbnNmb3JtIHJlc29sdXRpb25zJywgJGJyZWFrcG9pbnQtcmVzb2x1dGlvbnMpO1xuICB9XG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdicmVha3BvaW50LW5vLXF1ZXJpZXMnKSBhbmQgJGJyZWFrcG9pbnQtbm8tcXVlcmllcyAhPSBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LXNldCgnbm8gcXVlcmllcycsICRicmVha3BvaW50LW5vLXF1ZXJpZXMpO1xuICB9XG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdicmVha3BvaW50LW5vLXF1ZXJ5LWZhbGxiYWNrcycpIGFuZCAkYnJlYWtwb2ludC1uby1xdWVyeS1mYWxsYmFja3MgIT0gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LXNldCgnbm8gcXVlcnkgZmFsbGJhY2tzJywgJGJyZWFrcG9pbnQtbm8tcXVlcnktZmFsbGJhY2tzKTtcbiAgfVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnYnJlYWtwb2ludC1iYXNlLWZvbnQtc2l6ZScpIGFuZCAkYnJlYWtwb2ludC1iYXNlLWZvbnQtc2l6ZSAhPSBicmVha3BvaW50LWdldCgnYmFzZSBmb250IHNpemUnKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJ2Jhc2UgZm9udCBzaXplJywgJGJyZWFrcG9pbnQtYmFzZS1mb250LXNpemUpO1xuICB9XG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdicmVha3BvaW50LWxlZ2FjeS1zeW50YXgnKSBhbmQgJGJyZWFrcG9pbnQtbGVnYWN5LXN5bnRheCAhPSBicmVha3BvaW50LWdldCgnbGVnYWN5IHN5bnRheCcpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LXNldCgnbGVnYWN5IHN5bnRheCcsICRicmVha3BvaW50LWxlZ2FjeS1zeW50YXgpO1xuICB9XG59IiwiLyohXG4gKiAgRm9udCBBd2Vzb21lIDQuNy4wIGJ5IEBkYXZlZ2FuZHkgLSBodHRwOi8vZm9udGF3ZXNvbWUuaW8gLSBAZm9udGF3ZXNvbWVcbiAqICBMaWNlbnNlIC0gaHR0cDovL2ZvbnRhd2Vzb21lLmlvL2xpY2Vuc2UgKEZvbnQ6IFNJTCBPRkwgMS4xLCBDU1M6IE1JVCBMaWNlbnNlKVxuICovXG5cbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJwYXRoXCI7XG5AaW1wb3J0IFwiY29yZVwiO1xuQGltcG9ydCBcImxhcmdlclwiO1xuQGltcG9ydCBcImZpeGVkLXdpZHRoXCI7XG5AaW1wb3J0IFwibGlzdFwiO1xuQGltcG9ydCBcImJvcmRlcmVkLXB1bGxlZFwiO1xuQGltcG9ydCBcImFuaW1hdGVkXCI7XG5AaW1wb3J0IFwicm90YXRlZC1mbGlwcGVkXCI7XG5AaW1wb3J0IFwic3RhY2tlZFwiO1xuQGltcG9ydCBcImljb25zXCI7XG5AaW1wb3J0IFwic2NyZWVuLXJlYWRlclwiO1xuIiwiLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kZmEtZm9udC1wYXRoOiAgICAgICAgXCIuLi9mb250c1wiICFkZWZhdWx0O1xuJGZhLWZvbnQtc2l6ZS1iYXNlOiAgIDE0cHggIWRlZmF1bHQ7XG4kZmEtbGluZS1oZWlnaHQtYmFzZTogMSAhZGVmYXVsdDtcbi8vJGZhLWZvbnQtcGF0aDogICAgICAgIFwiLy9uZXRkbmEuYm9vdHN0cmFwY2RuLmNvbS9mb250LWF3ZXNvbWUvNC43LjAvZm9udHNcIiAhZGVmYXVsdDsgLy8gZm9yIHJlZmVyZW5jaW5nIEJvb3RzdHJhcCBDRE4gZm9udCBmaWxlcyBkaXJlY3RseVxuJGZhLWNzcy1wcmVmaXg6ICAgICAgIGZhICFkZWZhdWx0O1xuJGZhLXZlcnNpb246ICAgICAgICAgIFwiNC43LjBcIiAhZGVmYXVsdDtcbiRmYS1ib3JkZXItY29sb3I6ICAgICAjZWVlICFkZWZhdWx0O1xuJGZhLWludmVyc2U6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kZmEtbGktd2lkdGg6ICAgICAgICAgKDMwZW0gLyAxNCkgIWRlZmF1bHQ7XG5cbiRmYS12YXItNTAwcHg6IFwiXFxmMjZlXCI7XG4kZmEtdmFyLWFkZHJlc3MtYm9vazogXCJcXGYyYjlcIjtcbiRmYS12YXItYWRkcmVzcy1ib29rLW86IFwiXFxmMmJhXCI7XG4kZmEtdmFyLWFkZHJlc3MtY2FyZDogXCJcXGYyYmJcIjtcbiRmYS12YXItYWRkcmVzcy1jYXJkLW86IFwiXFxmMmJjXCI7XG4kZmEtdmFyLWFkanVzdDogXCJcXGYwNDJcIjtcbiRmYS12YXItYWRuOiBcIlxcZjE3MFwiO1xuJGZhLXZhci1hbGlnbi1jZW50ZXI6IFwiXFxmMDM3XCI7XG4kZmEtdmFyLWFsaWduLWp1c3RpZnk6IFwiXFxmMDM5XCI7XG4kZmEtdmFyLWFsaWduLWxlZnQ6IFwiXFxmMDM2XCI7XG4kZmEtdmFyLWFsaWduLXJpZ2h0OiBcIlxcZjAzOFwiO1xuJGZhLXZhci1hbWF6b246IFwiXFxmMjcwXCI7XG4kZmEtdmFyLWFtYnVsYW5jZTogXCJcXGYwZjlcIjtcbiRmYS12YXItYW1lcmljYW4tc2lnbi1sYW5ndWFnZS1pbnRlcnByZXRpbmc6IFwiXFxmMmEzXCI7XG4kZmEtdmFyLWFuY2hvcjogXCJcXGYxM2RcIjtcbiRmYS12YXItYW5kcm9pZDogXCJcXGYxN2JcIjtcbiRmYS12YXItYW5nZWxsaXN0OiBcIlxcZjIwOVwiO1xuJGZhLXZhci1hbmdsZS1kb3VibGUtZG93bjogXCJcXGYxMDNcIjtcbiRmYS12YXItYW5nbGUtZG91YmxlLWxlZnQ6IFwiXFxmMTAwXCI7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS1yaWdodDogXCJcXGYxMDFcIjtcbiRmYS12YXItYW5nbGUtZG91YmxlLXVwOiBcIlxcZjEwMlwiO1xuJGZhLXZhci1hbmdsZS1kb3duOiBcIlxcZjEwN1wiO1xuJGZhLXZhci1hbmdsZS1sZWZ0OiBcIlxcZjEwNFwiO1xuJGZhLXZhci1hbmdsZS1yaWdodDogXCJcXGYxMDVcIjtcbiRmYS12YXItYW5nbGUtdXA6IFwiXFxmMTA2XCI7XG4kZmEtdmFyLWFwcGxlOiBcIlxcZjE3OVwiO1xuJGZhLXZhci1hcmNoaXZlOiBcIlxcZjE4N1wiO1xuJGZhLXZhci1hcmVhLWNoYXJ0OiBcIlxcZjFmZVwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtZG93bjogXCJcXGYwYWJcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLWxlZnQ6IFwiXFxmMGE4XCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLWRvd246IFwiXFxmMDFhXCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLWxlZnQ6IFwiXFxmMTkwXCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLXJpZ2h0OiBcIlxcZjE4ZVwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtby11cDogXCJcXGYwMWJcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLXJpZ2h0OiBcIlxcZjBhOVwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtdXA6IFwiXFxmMGFhXCI7XG4kZmEtdmFyLWFycm93LWRvd246IFwiXFxmMDYzXCI7XG4kZmEtdmFyLWFycm93LWxlZnQ6IFwiXFxmMDYwXCI7XG4kZmEtdmFyLWFycm93LXJpZ2h0OiBcIlxcZjA2MVwiO1xuJGZhLXZhci1hcnJvdy11cDogXCJcXGYwNjJcIjtcbiRmYS12YXItYXJyb3dzOiBcIlxcZjA0N1wiO1xuJGZhLXZhci1hcnJvd3MtYWx0OiBcIlxcZjBiMlwiO1xuJGZhLXZhci1hcnJvd3MtaDogXCJcXGYwN2VcIjtcbiRmYS12YXItYXJyb3dzLXY6IFwiXFxmMDdkXCI7XG4kZmEtdmFyLWFzbC1pbnRlcnByZXRpbmc6IFwiXFxmMmEzXCI7XG4kZmEtdmFyLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczogXCJcXGYyYTJcIjtcbiRmYS12YXItYXN0ZXJpc2s6IFwiXFxmMDY5XCI7XG4kZmEtdmFyLWF0OiBcIlxcZjFmYVwiO1xuJGZhLXZhci1hdWRpby1kZXNjcmlwdGlvbjogXCJcXGYyOWVcIjtcbiRmYS12YXItYXV0b21vYmlsZTogXCJcXGYxYjlcIjtcbiRmYS12YXItYmFja3dhcmQ6IFwiXFxmMDRhXCI7XG4kZmEtdmFyLWJhbGFuY2Utc2NhbGU6IFwiXFxmMjRlXCI7XG4kZmEtdmFyLWJhbjogXCJcXGYwNWVcIjtcbiRmYS12YXItYmFuZGNhbXA6IFwiXFxmMmQ1XCI7XG4kZmEtdmFyLWJhbms6IFwiXFxmMTljXCI7XG4kZmEtdmFyLWJhci1jaGFydDogXCJcXGYwODBcIjtcbiRmYS12YXItYmFyLWNoYXJ0LW86IFwiXFxmMDgwXCI7XG4kZmEtdmFyLWJhcmNvZGU6IFwiXFxmMDJhXCI7XG4kZmEtdmFyLWJhcnM6IFwiXFxmMGM5XCI7XG4kZmEtdmFyLWJhdGg6IFwiXFxmMmNkXCI7XG4kZmEtdmFyLWJhdGh0dWI6IFwiXFxmMmNkXCI7XG4kZmEtdmFyLWJhdHRlcnk6IFwiXFxmMjQwXCI7XG4kZmEtdmFyLWJhdHRlcnktMDogXCJcXGYyNDRcIjtcbiRmYS12YXItYmF0dGVyeS0xOiBcIlxcZjI0M1wiO1xuJGZhLXZhci1iYXR0ZXJ5LTI6IFwiXFxmMjQyXCI7XG4kZmEtdmFyLWJhdHRlcnktMzogXCJcXGYyNDFcIjtcbiRmYS12YXItYmF0dGVyeS00OiBcIlxcZjI0MFwiO1xuJGZhLXZhci1iYXR0ZXJ5LWVtcHR5OiBcIlxcZjI0NFwiO1xuJGZhLXZhci1iYXR0ZXJ5LWZ1bGw6IFwiXFxmMjQwXCI7XG4kZmEtdmFyLWJhdHRlcnktaGFsZjogXCJcXGYyNDJcIjtcbiRmYS12YXItYmF0dGVyeS1xdWFydGVyOiBcIlxcZjI0M1wiO1xuJGZhLXZhci1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOiBcIlxcZjI0MVwiO1xuJGZhLXZhci1iZWQ6IFwiXFxmMjM2XCI7XG4kZmEtdmFyLWJlZXI6IFwiXFxmMGZjXCI7XG4kZmEtdmFyLWJlaGFuY2U6IFwiXFxmMWI0XCI7XG4kZmEtdmFyLWJlaGFuY2Utc3F1YXJlOiBcIlxcZjFiNVwiO1xuJGZhLXZhci1iZWxsOiBcIlxcZjBmM1wiO1xuJGZhLXZhci1iZWxsLW86IFwiXFxmMGEyXCI7XG4kZmEtdmFyLWJlbGwtc2xhc2g6IFwiXFxmMWY2XCI7XG4kZmEtdmFyLWJlbGwtc2xhc2gtbzogXCJcXGYxZjdcIjtcbiRmYS12YXItYmljeWNsZTogXCJcXGYyMDZcIjtcbiRmYS12YXItYmlub2N1bGFyczogXCJcXGYxZTVcIjtcbiRmYS12YXItYmlydGhkYXktY2FrZTogXCJcXGYxZmRcIjtcbiRmYS12YXItYml0YnVja2V0OiBcIlxcZjE3MVwiO1xuJGZhLXZhci1iaXRidWNrZXQtc3F1YXJlOiBcIlxcZjE3MlwiO1xuJGZhLXZhci1iaXRjb2luOiBcIlxcZjE1YVwiO1xuJGZhLXZhci1ibGFjay10aWU6IFwiXFxmMjdlXCI7XG4kZmEtdmFyLWJsaW5kOiBcIlxcZjI5ZFwiO1xuJGZhLXZhci1ibHVldG9vdGg6IFwiXFxmMjkzXCI7XG4kZmEtdmFyLWJsdWV0b290aC1iOiBcIlxcZjI5NFwiO1xuJGZhLXZhci1ib2xkOiBcIlxcZjAzMlwiO1xuJGZhLXZhci1ib2x0OiBcIlxcZjBlN1wiO1xuJGZhLXZhci1ib21iOiBcIlxcZjFlMlwiO1xuJGZhLXZhci1ib29rOiBcIlxcZjAyZFwiO1xuJGZhLXZhci1ib29rbWFyazogXCJcXGYwMmVcIjtcbiRmYS12YXItYm9va21hcmstbzogXCJcXGYwOTdcIjtcbiRmYS12YXItYnJhaWxsZTogXCJcXGYyYTFcIjtcbiRmYS12YXItYnJpZWZjYXNlOiBcIlxcZjBiMVwiO1xuJGZhLXZhci1idGM6IFwiXFxmMTVhXCI7XG4kZmEtdmFyLWJ1ZzogXCJcXGYxODhcIjtcbiRmYS12YXItYnVpbGRpbmc6IFwiXFxmMWFkXCI7XG4kZmEtdmFyLWJ1aWxkaW5nLW86IFwiXFxmMGY3XCI7XG4kZmEtdmFyLWJ1bGxob3JuOiBcIlxcZjBhMVwiO1xuJGZhLXZhci1idWxsc2V5ZTogXCJcXGYxNDBcIjtcbiRmYS12YXItYnVzOiBcIlxcZjIwN1wiO1xuJGZhLXZhci1idXlzZWxsYWRzOiBcIlxcZjIwZFwiO1xuJGZhLXZhci1jYWI6IFwiXFxmMWJhXCI7XG4kZmEtdmFyLWNhbGN1bGF0b3I6IFwiXFxmMWVjXCI7XG4kZmEtdmFyLWNhbGVuZGFyOiBcIlxcZjA3M1wiO1xuJGZhLXZhci1jYWxlbmRhci1jaGVjay1vOiBcIlxcZjI3NFwiO1xuJGZhLXZhci1jYWxlbmRhci1taW51cy1vOiBcIlxcZjI3MlwiO1xuJGZhLXZhci1jYWxlbmRhci1vOiBcIlxcZjEzM1wiO1xuJGZhLXZhci1jYWxlbmRhci1wbHVzLW86IFwiXFxmMjcxXCI7XG4kZmEtdmFyLWNhbGVuZGFyLXRpbWVzLW86IFwiXFxmMjczXCI7XG4kZmEtdmFyLWNhbWVyYTogXCJcXGYwMzBcIjtcbiRmYS12YXItY2FtZXJhLXJldHJvOiBcIlxcZjA4M1wiO1xuJGZhLXZhci1jYXI6IFwiXFxmMWI5XCI7XG4kZmEtdmFyLWNhcmV0LWRvd246IFwiXFxmMGQ3XCI7XG4kZmEtdmFyLWNhcmV0LWxlZnQ6IFwiXFxmMGQ5XCI7XG4kZmEtdmFyLWNhcmV0LXJpZ2h0OiBcIlxcZjBkYVwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby1kb3duOiBcIlxcZjE1MFwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby1sZWZ0OiBcIlxcZjE5MVwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby1yaWdodDogXCJcXGYxNTJcIjtcbiRmYS12YXItY2FyZXQtc3F1YXJlLW8tdXA6IFwiXFxmMTUxXCI7XG4kZmEtdmFyLWNhcmV0LXVwOiBcIlxcZjBkOFwiO1xuJGZhLXZhci1jYXJ0LWFycm93LWRvd246IFwiXFxmMjE4XCI7XG4kZmEtdmFyLWNhcnQtcGx1czogXCJcXGYyMTdcIjtcbiRmYS12YXItY2M6IFwiXFxmMjBhXCI7XG4kZmEtdmFyLWNjLWFtZXg6IFwiXFxmMWYzXCI7XG4kZmEtdmFyLWNjLWRpbmVycy1jbHViOiBcIlxcZjI0Y1wiO1xuJGZhLXZhci1jYy1kaXNjb3ZlcjogXCJcXGYxZjJcIjtcbiRmYS12YXItY2MtamNiOiBcIlxcZjI0YlwiO1xuJGZhLXZhci1jYy1tYXN0ZXJjYXJkOiBcIlxcZjFmMVwiO1xuJGZhLXZhci1jYy1wYXlwYWw6IFwiXFxmMWY0XCI7XG4kZmEtdmFyLWNjLXN0cmlwZTogXCJcXGYxZjVcIjtcbiRmYS12YXItY2MtdmlzYTogXCJcXGYxZjBcIjtcbiRmYS12YXItY2VydGlmaWNhdGU6IFwiXFxmMGEzXCI7XG4kZmEtdmFyLWNoYWluOiBcIlxcZjBjMVwiO1xuJGZhLXZhci1jaGFpbi1icm9rZW46IFwiXFxmMTI3XCI7XG4kZmEtdmFyLWNoZWNrOiBcIlxcZjAwY1wiO1xuJGZhLXZhci1jaGVjay1jaXJjbGU6IFwiXFxmMDU4XCI7XG4kZmEtdmFyLWNoZWNrLWNpcmNsZS1vOiBcIlxcZjA1ZFwiO1xuJGZhLXZhci1jaGVjay1zcXVhcmU6IFwiXFxmMTRhXCI7XG4kZmEtdmFyLWNoZWNrLXNxdWFyZS1vOiBcIlxcZjA0NlwiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1kb3duOiBcIlxcZjEzYVwiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1sZWZ0OiBcIlxcZjEzN1wiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1yaWdodDogXCJcXGYxMzhcIjtcbiRmYS12YXItY2hldnJvbi1jaXJjbGUtdXA6IFwiXFxmMTM5XCI7XG4kZmEtdmFyLWNoZXZyb24tZG93bjogXCJcXGYwNzhcIjtcbiRmYS12YXItY2hldnJvbi1sZWZ0OiBcIlxcZjA1M1wiO1xuJGZhLXZhci1jaGV2cm9uLXJpZ2h0OiBcIlxcZjA1NFwiO1xuJGZhLXZhci1jaGV2cm9uLXVwOiBcIlxcZjA3N1wiO1xuJGZhLXZhci1jaGlsZDogXCJcXGYxYWVcIjtcbiRmYS12YXItY2hyb21lOiBcIlxcZjI2OFwiO1xuJGZhLXZhci1jaXJjbGU6IFwiXFxmMTExXCI7XG4kZmEtdmFyLWNpcmNsZS1vOiBcIlxcZjEwY1wiO1xuJGZhLXZhci1jaXJjbGUtby1ub3RjaDogXCJcXGYxY2VcIjtcbiRmYS12YXItY2lyY2xlLXRoaW46IFwiXFxmMWRiXCI7XG4kZmEtdmFyLWNsaXBib2FyZDogXCJcXGYwZWFcIjtcbiRmYS12YXItY2xvY2stbzogXCJcXGYwMTdcIjtcbiRmYS12YXItY2xvbmU6IFwiXFxmMjRkXCI7XG4kZmEtdmFyLWNsb3NlOiBcIlxcZjAwZFwiO1xuJGZhLXZhci1jbG91ZDogXCJcXGYwYzJcIjtcbiRmYS12YXItY2xvdWQtZG93bmxvYWQ6IFwiXFxmMGVkXCI7XG4kZmEtdmFyLWNsb3VkLXVwbG9hZDogXCJcXGYwZWVcIjtcbiRmYS12YXItY255OiBcIlxcZjE1N1wiO1xuJGZhLXZhci1jb2RlOiBcIlxcZjEyMVwiO1xuJGZhLXZhci1jb2RlLWZvcms6IFwiXFxmMTI2XCI7XG4kZmEtdmFyLWNvZGVwZW46IFwiXFxmMWNiXCI7XG4kZmEtdmFyLWNvZGllcGllOiBcIlxcZjI4NFwiO1xuJGZhLXZhci1jb2ZmZWU6IFwiXFxmMGY0XCI7XG4kZmEtdmFyLWNvZzogXCJcXGYwMTNcIjtcbiRmYS12YXItY29nczogXCJcXGYwODVcIjtcbiRmYS12YXItY29sdW1uczogXCJcXGYwZGJcIjtcbiRmYS12YXItY29tbWVudDogXCJcXGYwNzVcIjtcbiRmYS12YXItY29tbWVudC1vOiBcIlxcZjBlNVwiO1xuJGZhLXZhci1jb21tZW50aW5nOiBcIlxcZjI3YVwiO1xuJGZhLXZhci1jb21tZW50aW5nLW86IFwiXFxmMjdiXCI7XG4kZmEtdmFyLWNvbW1lbnRzOiBcIlxcZjA4NlwiO1xuJGZhLXZhci1jb21tZW50cy1vOiBcIlxcZjBlNlwiO1xuJGZhLXZhci1jb21wYXNzOiBcIlxcZjE0ZVwiO1xuJGZhLXZhci1jb21wcmVzczogXCJcXGYwNjZcIjtcbiRmYS12YXItY29ubmVjdGRldmVsb3A6IFwiXFxmMjBlXCI7XG4kZmEtdmFyLWNvbnRhbzogXCJcXGYyNmRcIjtcbiRmYS12YXItY29weTogXCJcXGYwYzVcIjtcbiRmYS12YXItY29weXJpZ2h0OiBcIlxcZjFmOVwiO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zOiBcIlxcZjI1ZVwiO1xuJGZhLXZhci1jcmVkaXQtY2FyZDogXCJcXGYwOWRcIjtcbiRmYS12YXItY3JlZGl0LWNhcmQtYWx0OiBcIlxcZjI4M1wiO1xuJGZhLXZhci1jcm9wOiBcIlxcZjEyNVwiO1xuJGZhLXZhci1jcm9zc2hhaXJzOiBcIlxcZjA1YlwiO1xuJGZhLXZhci1jc3MzOiBcIlxcZjEzY1wiO1xuJGZhLXZhci1jdWJlOiBcIlxcZjFiMlwiO1xuJGZhLXZhci1jdWJlczogXCJcXGYxYjNcIjtcbiRmYS12YXItY3V0OiBcIlxcZjBjNFwiO1xuJGZhLXZhci1jdXRsZXJ5OiBcIlxcZjBmNVwiO1xuJGZhLXZhci1kYXNoYm9hcmQ6IFwiXFxmMGU0XCI7XG4kZmEtdmFyLWRhc2hjdWJlOiBcIlxcZjIxMFwiO1xuJGZhLXZhci1kYXRhYmFzZTogXCJcXGYxYzBcIjtcbiRmYS12YXItZGVhZjogXCJcXGYyYTRcIjtcbiRmYS12YXItZGVhZm5lc3M6IFwiXFxmMmE0XCI7XG4kZmEtdmFyLWRlZGVudDogXCJcXGYwM2JcIjtcbiRmYS12YXItZGVsaWNpb3VzOiBcIlxcZjFhNVwiO1xuJGZhLXZhci1kZXNrdG9wOiBcIlxcZjEwOFwiO1xuJGZhLXZhci1kZXZpYW50YXJ0OiBcIlxcZjFiZFwiO1xuJGZhLXZhci1kaWFtb25kOiBcIlxcZjIxOVwiO1xuJGZhLXZhci1kaWdnOiBcIlxcZjFhNlwiO1xuJGZhLXZhci1kb2xsYXI6IFwiXFxmMTU1XCI7XG4kZmEtdmFyLWRvdC1jaXJjbGUtbzogXCJcXGYxOTJcIjtcbiRmYS12YXItZG93bmxvYWQ6IFwiXFxmMDE5XCI7XG4kZmEtdmFyLWRyaWJiYmxlOiBcIlxcZjE3ZFwiO1xuJGZhLXZhci1kcml2ZXJzLWxpY2Vuc2U6IFwiXFxmMmMyXCI7XG4kZmEtdmFyLWRyaXZlcnMtbGljZW5zZS1vOiBcIlxcZjJjM1wiO1xuJGZhLXZhci1kcm9wYm94OiBcIlxcZjE2YlwiO1xuJGZhLXZhci1kcnVwYWw6IFwiXFxmMWE5XCI7XG4kZmEtdmFyLWVkZ2U6IFwiXFxmMjgyXCI7XG4kZmEtdmFyLWVkaXQ6IFwiXFxmMDQ0XCI7XG4kZmEtdmFyLWVlcmNhc3Q6IFwiXFxmMmRhXCI7XG4kZmEtdmFyLWVqZWN0OiBcIlxcZjA1MlwiO1xuJGZhLXZhci1lbGxpcHNpcy1oOiBcIlxcZjE0MVwiO1xuJGZhLXZhci1lbGxpcHNpcy12OiBcIlxcZjE0MlwiO1xuJGZhLXZhci1lbXBpcmU6IFwiXFxmMWQxXCI7XG4kZmEtdmFyLWVudmVsb3BlOiBcIlxcZjBlMFwiO1xuJGZhLXZhci1lbnZlbG9wZS1vOiBcIlxcZjAwM1wiO1xuJGZhLXZhci1lbnZlbG9wZS1vcGVuOiBcIlxcZjJiNlwiO1xuJGZhLXZhci1lbnZlbG9wZS1vcGVuLW86IFwiXFxmMmI3XCI7XG4kZmEtdmFyLWVudmVsb3BlLXNxdWFyZTogXCJcXGYxOTlcIjtcbiRmYS12YXItZW52aXJhOiBcIlxcZjI5OVwiO1xuJGZhLXZhci1lcmFzZXI6IFwiXFxmMTJkXCI7XG4kZmEtdmFyLWV0c3k6IFwiXFxmMmQ3XCI7XG4kZmEtdmFyLWV1cjogXCJcXGYxNTNcIjtcbiRmYS12YXItZXVybzogXCJcXGYxNTNcIjtcbiRmYS12YXItZXhjaGFuZ2U6IFwiXFxmMGVjXCI7XG4kZmEtdmFyLWV4Y2xhbWF0aW9uOiBcIlxcZjEyYVwiO1xuJGZhLXZhci1leGNsYW1hdGlvbi1jaXJjbGU6IFwiXFxmMDZhXCI7XG4kZmEtdmFyLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOiBcIlxcZjA3MVwiO1xuJGZhLXZhci1leHBhbmQ6IFwiXFxmMDY1XCI7XG4kZmEtdmFyLWV4cGVkaXRlZHNzbDogXCJcXGYyM2VcIjtcbiRmYS12YXItZXh0ZXJuYWwtbGluazogXCJcXGYwOGVcIjtcbiRmYS12YXItZXh0ZXJuYWwtbGluay1zcXVhcmU6IFwiXFxmMTRjXCI7XG4kZmEtdmFyLWV5ZTogXCJcXGYwNmVcIjtcbiRmYS12YXItZXllLXNsYXNoOiBcIlxcZjA3MFwiO1xuJGZhLXZhci1leWVkcm9wcGVyOiBcIlxcZjFmYlwiO1xuJGZhLXZhci1mYTogXCJcXGYyYjRcIjtcbiRmYS12YXItZmFjZWJvb2s6IFwiXFxmMDlhXCI7XG4kZmEtdmFyLWZhY2Vib29rLWY6IFwiXFxmMDlhXCI7XG4kZmEtdmFyLWZhY2Vib29rLW9mZmljaWFsOiBcIlxcZjIzMFwiO1xuJGZhLXZhci1mYWNlYm9vay1zcXVhcmU6IFwiXFxmMDgyXCI7XG4kZmEtdmFyLWZhc3QtYmFja3dhcmQ6IFwiXFxmMDQ5XCI7XG4kZmEtdmFyLWZhc3QtZm9yd2FyZDogXCJcXGYwNTBcIjtcbiRmYS12YXItZmF4OiBcIlxcZjFhY1wiO1xuJGZhLXZhci1mZWVkOiBcIlxcZjA5ZVwiO1xuJGZhLXZhci1mZW1hbGU6IFwiXFxmMTgyXCI7XG4kZmEtdmFyLWZpZ2h0ZXItamV0OiBcIlxcZjBmYlwiO1xuJGZhLXZhci1maWxlOiBcIlxcZjE1YlwiO1xuJGZhLXZhci1maWxlLWFyY2hpdmUtbzogXCJcXGYxYzZcIjtcbiRmYS12YXItZmlsZS1hdWRpby1vOiBcIlxcZjFjN1wiO1xuJGZhLXZhci1maWxlLWNvZGUtbzogXCJcXGYxYzlcIjtcbiRmYS12YXItZmlsZS1leGNlbC1vOiBcIlxcZjFjM1wiO1xuJGZhLXZhci1maWxlLWltYWdlLW86IFwiXFxmMWM1XCI7XG4kZmEtdmFyLWZpbGUtbW92aWUtbzogXCJcXGYxYzhcIjtcbiRmYS12YXItZmlsZS1vOiBcIlxcZjAxNlwiO1xuJGZhLXZhci1maWxlLXBkZi1vOiBcIlxcZjFjMVwiO1xuJGZhLXZhci1maWxlLXBob3RvLW86IFwiXFxmMWM1XCI7XG4kZmEtdmFyLWZpbGUtcGljdHVyZS1vOiBcIlxcZjFjNVwiO1xuJGZhLXZhci1maWxlLXBvd2VycG9pbnQtbzogXCJcXGYxYzRcIjtcbiRmYS12YXItZmlsZS1zb3VuZC1vOiBcIlxcZjFjN1wiO1xuJGZhLXZhci1maWxlLXRleHQ6IFwiXFxmMTVjXCI7XG4kZmEtdmFyLWZpbGUtdGV4dC1vOiBcIlxcZjBmNlwiO1xuJGZhLXZhci1maWxlLXZpZGVvLW86IFwiXFxmMWM4XCI7XG4kZmEtdmFyLWZpbGUtd29yZC1vOiBcIlxcZjFjMlwiO1xuJGZhLXZhci1maWxlLXppcC1vOiBcIlxcZjFjNlwiO1xuJGZhLXZhci1maWxlcy1vOiBcIlxcZjBjNVwiO1xuJGZhLXZhci1maWxtOiBcIlxcZjAwOFwiO1xuJGZhLXZhci1maWx0ZXI6IFwiXFxmMGIwXCI7XG4kZmEtdmFyLWZpcmU6IFwiXFxmMDZkXCI7XG4kZmEtdmFyLWZpcmUtZXh0aW5ndWlzaGVyOiBcIlxcZjEzNFwiO1xuJGZhLXZhci1maXJlZm94OiBcIlxcZjI2OVwiO1xuJGZhLXZhci1maXJzdC1vcmRlcjogXCJcXGYyYjBcIjtcbiRmYS12YXItZmxhZzogXCJcXGYwMjRcIjtcbiRmYS12YXItZmxhZy1jaGVja2VyZWQ6IFwiXFxmMTFlXCI7XG4kZmEtdmFyLWZsYWctbzogXCJcXGYxMWRcIjtcbiRmYS12YXItZmxhc2g6IFwiXFxmMGU3XCI7XG4kZmEtdmFyLWZsYXNrOiBcIlxcZjBjM1wiO1xuJGZhLXZhci1mbGlja3I6IFwiXFxmMTZlXCI7XG4kZmEtdmFyLWZsb3BweS1vOiBcIlxcZjBjN1wiO1xuJGZhLXZhci1mb2xkZXI6IFwiXFxmMDdiXCI7XG4kZmEtdmFyLWZvbGRlci1vOiBcIlxcZjExNFwiO1xuJGZhLXZhci1mb2xkZXItb3BlbjogXCJcXGYwN2NcIjtcbiRmYS12YXItZm9sZGVyLW9wZW4tbzogXCJcXGYxMTVcIjtcbiRmYS12YXItZm9udDogXCJcXGYwMzFcIjtcbiRmYS12YXItZm9udC1hd2Vzb21lOiBcIlxcZjJiNFwiO1xuJGZhLXZhci1mb250aWNvbnM6IFwiXFxmMjgwXCI7XG4kZmEtdmFyLWZvcnQtYXdlc29tZTogXCJcXGYyODZcIjtcbiRmYS12YXItZm9ydW1iZWU6IFwiXFxmMjExXCI7XG4kZmEtdmFyLWZvcndhcmQ6IFwiXFxmMDRlXCI7XG4kZmEtdmFyLWZvdXJzcXVhcmU6IFwiXFxmMTgwXCI7XG4kZmEtdmFyLWZyZWUtY29kZS1jYW1wOiBcIlxcZjJjNVwiO1xuJGZhLXZhci1mcm93bi1vOiBcIlxcZjExOVwiO1xuJGZhLXZhci1mdXRib2wtbzogXCJcXGYxZTNcIjtcbiRmYS12YXItZ2FtZXBhZDogXCJcXGYxMWJcIjtcbiRmYS12YXItZ2F2ZWw6IFwiXFxmMGUzXCI7XG4kZmEtdmFyLWdicDogXCJcXGYxNTRcIjtcbiRmYS12YXItZ2U6IFwiXFxmMWQxXCI7XG4kZmEtdmFyLWdlYXI6IFwiXFxmMDEzXCI7XG4kZmEtdmFyLWdlYXJzOiBcIlxcZjA4NVwiO1xuJGZhLXZhci1nZW5kZXJsZXNzOiBcIlxcZjIyZFwiO1xuJGZhLXZhci1nZXQtcG9ja2V0OiBcIlxcZjI2NVwiO1xuJGZhLXZhci1nZzogXCJcXGYyNjBcIjtcbiRmYS12YXItZ2ctY2lyY2xlOiBcIlxcZjI2MVwiO1xuJGZhLXZhci1naWZ0OiBcIlxcZjA2YlwiO1xuJGZhLXZhci1naXQ6IFwiXFxmMWQzXCI7XG4kZmEtdmFyLWdpdC1zcXVhcmU6IFwiXFxmMWQyXCI7XG4kZmEtdmFyLWdpdGh1YjogXCJcXGYwOWJcIjtcbiRmYS12YXItZ2l0aHViLWFsdDogXCJcXGYxMTNcIjtcbiRmYS12YXItZ2l0aHViLXNxdWFyZTogXCJcXGYwOTJcIjtcbiRmYS12YXItZ2l0bGFiOiBcIlxcZjI5NlwiO1xuJGZhLXZhci1naXR0aXA6IFwiXFxmMTg0XCI7XG4kZmEtdmFyLWdsYXNzOiBcIlxcZjAwMFwiO1xuJGZhLXZhci1nbGlkZTogXCJcXGYyYTVcIjtcbiRmYS12YXItZ2xpZGUtZzogXCJcXGYyYTZcIjtcbiRmYS12YXItZ2xvYmU6IFwiXFxmMGFjXCI7XG4kZmEtdmFyLWdvb2dsZTogXCJcXGYxYTBcIjtcbiRmYS12YXItZ29vZ2xlLXBsdXM6IFwiXFxmMGQ1XCI7XG4kZmEtdmFyLWdvb2dsZS1wbHVzLWNpcmNsZTogXCJcXGYyYjNcIjtcbiRmYS12YXItZ29vZ2xlLXBsdXMtb2ZmaWNpYWw6IFwiXFxmMmIzXCI7XG4kZmEtdmFyLWdvb2dsZS1wbHVzLXNxdWFyZTogXCJcXGYwZDRcIjtcbiRmYS12YXItZ29vZ2xlLXdhbGxldDogXCJcXGYxZWVcIjtcbiRmYS12YXItZ3JhZHVhdGlvbi1jYXA6IFwiXFxmMTlkXCI7XG4kZmEtdmFyLWdyYXRpcGF5OiBcIlxcZjE4NFwiO1xuJGZhLXZhci1ncmF2OiBcIlxcZjJkNlwiO1xuJGZhLXZhci1ncm91cDogXCJcXGYwYzBcIjtcbiRmYS12YXItaC1zcXVhcmU6IFwiXFxmMGZkXCI7XG4kZmEtdmFyLWhhY2tlci1uZXdzOiBcIlxcZjFkNFwiO1xuJGZhLXZhci1oYW5kLWdyYWItbzogXCJcXGYyNTVcIjtcbiRmYS12YXItaGFuZC1saXphcmQtbzogXCJcXGYyNThcIjtcbiRmYS12YXItaGFuZC1vLWRvd246IFwiXFxmMGE3XCI7XG4kZmEtdmFyLWhhbmQtby1sZWZ0OiBcIlxcZjBhNVwiO1xuJGZhLXZhci1oYW5kLW8tcmlnaHQ6IFwiXFxmMGE0XCI7XG4kZmEtdmFyLWhhbmQtby11cDogXCJcXGYwYTZcIjtcbiRmYS12YXItaGFuZC1wYXBlci1vOiBcIlxcZjI1NlwiO1xuJGZhLXZhci1oYW5kLXBlYWNlLW86IFwiXFxmMjViXCI7XG4kZmEtdmFyLWhhbmQtcG9pbnRlci1vOiBcIlxcZjI1YVwiO1xuJGZhLXZhci1oYW5kLXJvY2stbzogXCJcXGYyNTVcIjtcbiRmYS12YXItaGFuZC1zY2lzc29ycy1vOiBcIlxcZjI1N1wiO1xuJGZhLXZhci1oYW5kLXNwb2NrLW86IFwiXFxmMjU5XCI7XG4kZmEtdmFyLWhhbmQtc3RvcC1vOiBcIlxcZjI1NlwiO1xuJGZhLXZhci1oYW5kc2hha2UtbzogXCJcXGYyYjVcIjtcbiRmYS12YXItaGFyZC1vZi1oZWFyaW5nOiBcIlxcZjJhNFwiO1xuJGZhLXZhci1oYXNodGFnOiBcIlxcZjI5MlwiO1xuJGZhLXZhci1oZGQtbzogXCJcXGYwYTBcIjtcbiRmYS12YXItaGVhZGVyOiBcIlxcZjFkY1wiO1xuJGZhLXZhci1oZWFkcGhvbmVzOiBcIlxcZjAyNVwiO1xuJGZhLXZhci1oZWFydDogXCJcXGYwMDRcIjtcbiRmYS12YXItaGVhcnQtbzogXCJcXGYwOGFcIjtcbiRmYS12YXItaGVhcnRiZWF0OiBcIlxcZjIxZVwiO1xuJGZhLXZhci1oaXN0b3J5OiBcIlxcZjFkYVwiO1xuJGZhLXZhci1ob21lOiBcIlxcZjAxNVwiO1xuJGZhLXZhci1ob3NwaXRhbC1vOiBcIlxcZjBmOFwiO1xuJGZhLXZhci1ob3RlbDogXCJcXGYyMzZcIjtcbiRmYS12YXItaG91cmdsYXNzOiBcIlxcZjI1NFwiO1xuJGZhLXZhci1ob3VyZ2xhc3MtMTogXCJcXGYyNTFcIjtcbiRmYS12YXItaG91cmdsYXNzLTI6IFwiXFxmMjUyXCI7XG4kZmEtdmFyLWhvdXJnbGFzcy0zOiBcIlxcZjI1M1wiO1xuJGZhLXZhci1ob3VyZ2xhc3MtZW5kOiBcIlxcZjI1M1wiO1xuJGZhLXZhci1ob3VyZ2xhc3MtaGFsZjogXCJcXGYyNTJcIjtcbiRmYS12YXItaG91cmdsYXNzLW86IFwiXFxmMjUwXCI7XG4kZmEtdmFyLWhvdXJnbGFzcy1zdGFydDogXCJcXGYyNTFcIjtcbiRmYS12YXItaG91eno6IFwiXFxmMjdjXCI7XG4kZmEtdmFyLWh0bWw1OiBcIlxcZjEzYlwiO1xuJGZhLXZhci1pLWN1cnNvcjogXCJcXGYyNDZcIjtcbiRmYS12YXItaWQtYmFkZ2U6IFwiXFxmMmMxXCI7XG4kZmEtdmFyLWlkLWNhcmQ6IFwiXFxmMmMyXCI7XG4kZmEtdmFyLWlkLWNhcmQtbzogXCJcXGYyYzNcIjtcbiRmYS12YXItaWxzOiBcIlxcZjIwYlwiO1xuJGZhLXZhci1pbWFnZTogXCJcXGYwM2VcIjtcbiRmYS12YXItaW1kYjogXCJcXGYyZDhcIjtcbiRmYS12YXItaW5ib3g6IFwiXFxmMDFjXCI7XG4kZmEtdmFyLWluZGVudDogXCJcXGYwM2NcIjtcbiRmYS12YXItaW5kdXN0cnk6IFwiXFxmMjc1XCI7XG4kZmEtdmFyLWluZm86IFwiXFxmMTI5XCI7XG4kZmEtdmFyLWluZm8tY2lyY2xlOiBcIlxcZjA1YVwiO1xuJGZhLXZhci1pbnI6IFwiXFxmMTU2XCI7XG4kZmEtdmFyLWluc3RhZ3JhbTogXCJcXGYxNmRcIjtcbiRmYS12YXItaW5zdGl0dXRpb246IFwiXFxmMTljXCI7XG4kZmEtdmFyLWludGVybmV0LWV4cGxvcmVyOiBcIlxcZjI2YlwiO1xuJGZhLXZhci1pbnRlcnNleDogXCJcXGYyMjRcIjtcbiRmYS12YXItaW94aG9zdDogXCJcXGYyMDhcIjtcbiRmYS12YXItaXRhbGljOiBcIlxcZjAzM1wiO1xuJGZhLXZhci1qb29tbGE6IFwiXFxmMWFhXCI7XG4kZmEtdmFyLWpweTogXCJcXGYxNTdcIjtcbiRmYS12YXItanNmaWRkbGU6IFwiXFxmMWNjXCI7XG4kZmEtdmFyLWtleTogXCJcXGYwODRcIjtcbiRmYS12YXIta2V5Ym9hcmQtbzogXCJcXGYxMWNcIjtcbiRmYS12YXIta3J3OiBcIlxcZjE1OVwiO1xuJGZhLXZhci1sYW5ndWFnZTogXCJcXGYxYWJcIjtcbiRmYS12YXItbGFwdG9wOiBcIlxcZjEwOVwiO1xuJGZhLXZhci1sYXN0Zm06IFwiXFxmMjAyXCI7XG4kZmEtdmFyLWxhc3RmbS1zcXVhcmU6IFwiXFxmMjAzXCI7XG4kZmEtdmFyLWxlYWY6IFwiXFxmMDZjXCI7XG4kZmEtdmFyLWxlYW5wdWI6IFwiXFxmMjEyXCI7XG4kZmEtdmFyLWxlZ2FsOiBcIlxcZjBlM1wiO1xuJGZhLXZhci1sZW1vbi1vOiBcIlxcZjA5NFwiO1xuJGZhLXZhci1sZXZlbC1kb3duOiBcIlxcZjE0OVwiO1xuJGZhLXZhci1sZXZlbC11cDogXCJcXGYxNDhcIjtcbiRmYS12YXItbGlmZS1ib3V5OiBcIlxcZjFjZFwiO1xuJGZhLXZhci1saWZlLWJ1b3k6IFwiXFxmMWNkXCI7XG4kZmEtdmFyLWxpZmUtcmluZzogXCJcXGYxY2RcIjtcbiRmYS12YXItbGlmZS1zYXZlcjogXCJcXGYxY2RcIjtcbiRmYS12YXItbGlnaHRidWxiLW86IFwiXFxmMGViXCI7XG4kZmEtdmFyLWxpbmUtY2hhcnQ6IFwiXFxmMjAxXCI7XG4kZmEtdmFyLWxpbms6IFwiXFxmMGMxXCI7XG4kZmEtdmFyLWxpbmtlZGluOiBcIlxcZjBlMVwiO1xuJGZhLXZhci1saW5rZWRpbi1zcXVhcmU6IFwiXFxmMDhjXCI7XG4kZmEtdmFyLWxpbm9kZTogXCJcXGYyYjhcIjtcbiRmYS12YXItbGludXg6IFwiXFxmMTdjXCI7XG4kZmEtdmFyLWxpc3Q6IFwiXFxmMDNhXCI7XG4kZmEtdmFyLWxpc3QtYWx0OiBcIlxcZjAyMlwiO1xuJGZhLXZhci1saXN0LW9sOiBcIlxcZjBjYlwiO1xuJGZhLXZhci1saXN0LXVsOiBcIlxcZjBjYVwiO1xuJGZhLXZhci1sb2NhdGlvbi1hcnJvdzogXCJcXGYxMjRcIjtcbiRmYS12YXItbG9jazogXCJcXGYwMjNcIjtcbiRmYS12YXItbG9uZy1hcnJvdy1kb3duOiBcIlxcZjE3NVwiO1xuJGZhLXZhci1sb25nLWFycm93LWxlZnQ6IFwiXFxmMTc3XCI7XG4kZmEtdmFyLWxvbmctYXJyb3ctcmlnaHQ6IFwiXFxmMTc4XCI7XG4kZmEtdmFyLWxvbmctYXJyb3ctdXA6IFwiXFxmMTc2XCI7XG4kZmEtdmFyLWxvdy12aXNpb246IFwiXFxmMmE4XCI7XG4kZmEtdmFyLW1hZ2ljOiBcIlxcZjBkMFwiO1xuJGZhLXZhci1tYWduZXQ6IFwiXFxmMDc2XCI7XG4kZmEtdmFyLW1haWwtZm9yd2FyZDogXCJcXGYwNjRcIjtcbiRmYS12YXItbWFpbC1yZXBseTogXCJcXGYxMTJcIjtcbiRmYS12YXItbWFpbC1yZXBseS1hbGw6IFwiXFxmMTIyXCI7XG4kZmEtdmFyLW1hbGU6IFwiXFxmMTgzXCI7XG4kZmEtdmFyLW1hcDogXCJcXGYyNzlcIjtcbiRmYS12YXItbWFwLW1hcmtlcjogXCJcXGYwNDFcIjtcbiRmYS12YXItbWFwLW86IFwiXFxmMjc4XCI7XG4kZmEtdmFyLW1hcC1waW46IFwiXFxmMjc2XCI7XG4kZmEtdmFyLW1hcC1zaWduczogXCJcXGYyNzdcIjtcbiRmYS12YXItbWFyczogXCJcXGYyMjJcIjtcbiRmYS12YXItbWFycy1kb3VibGU6IFwiXFxmMjI3XCI7XG4kZmEtdmFyLW1hcnMtc3Ryb2tlOiBcIlxcZjIyOVwiO1xuJGZhLXZhci1tYXJzLXN0cm9rZS1oOiBcIlxcZjIyYlwiO1xuJGZhLXZhci1tYXJzLXN0cm9rZS12OiBcIlxcZjIyYVwiO1xuJGZhLXZhci1tYXhjZG46IFwiXFxmMTM2XCI7XG4kZmEtdmFyLW1lYW5wYXRoOiBcIlxcZjIwY1wiO1xuJGZhLXZhci1tZWRpdW06IFwiXFxmMjNhXCI7XG4kZmEtdmFyLW1lZGtpdDogXCJcXGYwZmFcIjtcbiRmYS12YXItbWVldHVwOiBcIlxcZjJlMFwiO1xuJGZhLXZhci1tZWgtbzogXCJcXGYxMWFcIjtcbiRmYS12YXItbWVyY3VyeTogXCJcXGYyMjNcIjtcbiRmYS12YXItbWljcm9jaGlwOiBcIlxcZjJkYlwiO1xuJGZhLXZhci1taWNyb3Bob25lOiBcIlxcZjEzMFwiO1xuJGZhLXZhci1taWNyb3Bob25lLXNsYXNoOiBcIlxcZjEzMVwiO1xuJGZhLXZhci1taW51czogXCJcXGYwNjhcIjtcbiRmYS12YXItbWludXMtY2lyY2xlOiBcIlxcZjA1NlwiO1xuJGZhLXZhci1taW51cy1zcXVhcmU6IFwiXFxmMTQ2XCI7XG4kZmEtdmFyLW1pbnVzLXNxdWFyZS1vOiBcIlxcZjE0N1wiO1xuJGZhLXZhci1taXhjbG91ZDogXCJcXGYyODlcIjtcbiRmYS12YXItbW9iaWxlOiBcIlxcZjEwYlwiO1xuJGZhLXZhci1tb2JpbGUtcGhvbmU6IFwiXFxmMTBiXCI7XG4kZmEtdmFyLW1vZHg6IFwiXFxmMjg1XCI7XG4kZmEtdmFyLW1vbmV5OiBcIlxcZjBkNlwiO1xuJGZhLXZhci1tb29uLW86IFwiXFxmMTg2XCI7XG4kZmEtdmFyLW1vcnRhci1ib2FyZDogXCJcXGYxOWRcIjtcbiRmYS12YXItbW90b3JjeWNsZTogXCJcXGYyMWNcIjtcbiRmYS12YXItbW91c2UtcG9pbnRlcjogXCJcXGYyNDVcIjtcbiRmYS12YXItbXVzaWM6IFwiXFxmMDAxXCI7XG4kZmEtdmFyLW5hdmljb246IFwiXFxmMGM5XCI7XG4kZmEtdmFyLW5ldXRlcjogXCJcXGYyMmNcIjtcbiRmYS12YXItbmV3c3BhcGVyLW86IFwiXFxmMWVhXCI7XG4kZmEtdmFyLW9iamVjdC1ncm91cDogXCJcXGYyNDdcIjtcbiRmYS12YXItb2JqZWN0LXVuZ3JvdXA6IFwiXFxmMjQ4XCI7XG4kZmEtdmFyLW9kbm9rbGFzc25pa2k6IFwiXFxmMjYzXCI7XG4kZmEtdmFyLW9kbm9rbGFzc25pa2ktc3F1YXJlOiBcIlxcZjI2NFwiO1xuJGZhLXZhci1vcGVuY2FydDogXCJcXGYyM2RcIjtcbiRmYS12YXItb3BlbmlkOiBcIlxcZjE5YlwiO1xuJGZhLXZhci1vcGVyYTogXCJcXGYyNmFcIjtcbiRmYS12YXItb3B0aW4tbW9uc3RlcjogXCJcXGYyM2NcIjtcbiRmYS12YXItb3V0ZGVudDogXCJcXGYwM2JcIjtcbiRmYS12YXItcGFnZWxpbmVzOiBcIlxcZjE4Y1wiO1xuJGZhLXZhci1wYWludC1icnVzaDogXCJcXGYxZmNcIjtcbiRmYS12YXItcGFwZXItcGxhbmU6IFwiXFxmMWQ4XCI7XG4kZmEtdmFyLXBhcGVyLXBsYW5lLW86IFwiXFxmMWQ5XCI7XG4kZmEtdmFyLXBhcGVyY2xpcDogXCJcXGYwYzZcIjtcbiRmYS12YXItcGFyYWdyYXBoOiBcIlxcZjFkZFwiO1xuJGZhLXZhci1wYXN0ZTogXCJcXGYwZWFcIjtcbiRmYS12YXItcGF1c2U6IFwiXFxmMDRjXCI7XG4kZmEtdmFyLXBhdXNlLWNpcmNsZTogXCJcXGYyOGJcIjtcbiRmYS12YXItcGF1c2UtY2lyY2xlLW86IFwiXFxmMjhjXCI7XG4kZmEtdmFyLXBhdzogXCJcXGYxYjBcIjtcbiRmYS12YXItcGF5cGFsOiBcIlxcZjFlZFwiO1xuJGZhLXZhci1wZW5jaWw6IFwiXFxmMDQwXCI7XG4kZmEtdmFyLXBlbmNpbC1zcXVhcmU6IFwiXFxmMTRiXCI7XG4kZmEtdmFyLXBlbmNpbC1zcXVhcmUtbzogXCJcXGYwNDRcIjtcbiRmYS12YXItcGVyY2VudDogXCJcXGYyOTVcIjtcbiRmYS12YXItcGhvbmU6IFwiXFxmMDk1XCI7XG4kZmEtdmFyLXBob25lLXNxdWFyZTogXCJcXGYwOThcIjtcbiRmYS12YXItcGhvdG86IFwiXFxmMDNlXCI7XG4kZmEtdmFyLXBpY3R1cmUtbzogXCJcXGYwM2VcIjtcbiRmYS12YXItcGllLWNoYXJ0OiBcIlxcZjIwMFwiO1xuJGZhLXZhci1waWVkLXBpcGVyOiBcIlxcZjJhZVwiO1xuJGZhLXZhci1waWVkLXBpcGVyLWFsdDogXCJcXGYxYThcIjtcbiRmYS12YXItcGllZC1waXBlci1wcDogXCJcXGYxYTdcIjtcbiRmYS12YXItcGludGVyZXN0OiBcIlxcZjBkMlwiO1xuJGZhLXZhci1waW50ZXJlc3QtcDogXCJcXGYyMzFcIjtcbiRmYS12YXItcGludGVyZXN0LXNxdWFyZTogXCJcXGYwZDNcIjtcbiRmYS12YXItcGxhbmU6IFwiXFxmMDcyXCI7XG4kZmEtdmFyLXBsYXk6IFwiXFxmMDRiXCI7XG4kZmEtdmFyLXBsYXktY2lyY2xlOiBcIlxcZjE0NFwiO1xuJGZhLXZhci1wbGF5LWNpcmNsZS1vOiBcIlxcZjAxZFwiO1xuJGZhLXZhci1wbHVnOiBcIlxcZjFlNlwiO1xuJGZhLXZhci1wbHVzOiBcIlxcZjA2N1wiO1xuJGZhLXZhci1wbHVzLWNpcmNsZTogXCJcXGYwNTVcIjtcbiRmYS12YXItcGx1cy1zcXVhcmU6IFwiXFxmMGZlXCI7XG4kZmEtdmFyLXBsdXMtc3F1YXJlLW86IFwiXFxmMTk2XCI7XG4kZmEtdmFyLXBvZGNhc3Q6IFwiXFxmMmNlXCI7XG4kZmEtdmFyLXBvd2VyLW9mZjogXCJcXGYwMTFcIjtcbiRmYS12YXItcHJpbnQ6IFwiXFxmMDJmXCI7XG4kZmEtdmFyLXByb2R1Y3QtaHVudDogXCJcXGYyODhcIjtcbiRmYS12YXItcHV6emxlLXBpZWNlOiBcIlxcZjEyZVwiO1xuJGZhLXZhci1xcTogXCJcXGYxZDZcIjtcbiRmYS12YXItcXJjb2RlOiBcIlxcZjAyOVwiO1xuJGZhLXZhci1xdWVzdGlvbjogXCJcXGYxMjhcIjtcbiRmYS12YXItcXVlc3Rpb24tY2lyY2xlOiBcIlxcZjA1OVwiO1xuJGZhLXZhci1xdWVzdGlvbi1jaXJjbGUtbzogXCJcXGYyOWNcIjtcbiRmYS12YXItcXVvcmE6IFwiXFxmMmM0XCI7XG4kZmEtdmFyLXF1b3RlLWxlZnQ6IFwiXFxmMTBkXCI7XG4kZmEtdmFyLXF1b3RlLXJpZ2h0OiBcIlxcZjEwZVwiO1xuJGZhLXZhci1yYTogXCJcXGYxZDBcIjtcbiRmYS12YXItcmFuZG9tOiBcIlxcZjA3NFwiO1xuJGZhLXZhci1yYXZlbHJ5OiBcIlxcZjJkOVwiO1xuJGZhLXZhci1yZWJlbDogXCJcXGYxZDBcIjtcbiRmYS12YXItcmVjeWNsZTogXCJcXGYxYjhcIjtcbiRmYS12YXItcmVkZGl0OiBcIlxcZjFhMVwiO1xuJGZhLXZhci1yZWRkaXQtYWxpZW46IFwiXFxmMjgxXCI7XG4kZmEtdmFyLXJlZGRpdC1zcXVhcmU6IFwiXFxmMWEyXCI7XG4kZmEtdmFyLXJlZnJlc2g6IFwiXFxmMDIxXCI7XG4kZmEtdmFyLXJlZ2lzdGVyZWQ6IFwiXFxmMjVkXCI7XG4kZmEtdmFyLXJlbW92ZTogXCJcXGYwMGRcIjtcbiRmYS12YXItcmVucmVuOiBcIlxcZjE4YlwiO1xuJGZhLXZhci1yZW9yZGVyOiBcIlxcZjBjOVwiO1xuJGZhLXZhci1yZXBlYXQ6IFwiXFxmMDFlXCI7XG4kZmEtdmFyLXJlcGx5OiBcIlxcZjExMlwiO1xuJGZhLXZhci1yZXBseS1hbGw6IFwiXFxmMTIyXCI7XG4kZmEtdmFyLXJlc2lzdGFuY2U6IFwiXFxmMWQwXCI7XG4kZmEtdmFyLXJldHdlZXQ6IFwiXFxmMDc5XCI7XG4kZmEtdmFyLXJtYjogXCJcXGYxNTdcIjtcbiRmYS12YXItcm9hZDogXCJcXGYwMThcIjtcbiRmYS12YXItcm9ja2V0OiBcIlxcZjEzNVwiO1xuJGZhLXZhci1yb3RhdGUtbGVmdDogXCJcXGYwZTJcIjtcbiRmYS12YXItcm90YXRlLXJpZ2h0OiBcIlxcZjAxZVwiO1xuJGZhLXZhci1yb3VibGU6IFwiXFxmMTU4XCI7XG4kZmEtdmFyLXJzczogXCJcXGYwOWVcIjtcbiRmYS12YXItcnNzLXNxdWFyZTogXCJcXGYxNDNcIjtcbiRmYS12YXItcnViOiBcIlxcZjE1OFwiO1xuJGZhLXZhci1ydWJsZTogXCJcXGYxNThcIjtcbiRmYS12YXItcnVwZWU6IFwiXFxmMTU2XCI7XG4kZmEtdmFyLXMxNTogXCJcXGYyY2RcIjtcbiRmYS12YXItc2FmYXJpOiBcIlxcZjI2N1wiO1xuJGZhLXZhci1zYXZlOiBcIlxcZjBjN1wiO1xuJGZhLXZhci1zY2lzc29yczogXCJcXGYwYzRcIjtcbiRmYS12YXItc2NyaWJkOiBcIlxcZjI4YVwiO1xuJGZhLXZhci1zZWFyY2g6IFwiXFxmMDAyXCI7XG4kZmEtdmFyLXNlYXJjaC1taW51czogXCJcXGYwMTBcIjtcbiRmYS12YXItc2VhcmNoLXBsdXM6IFwiXFxmMDBlXCI7XG4kZmEtdmFyLXNlbGxzeTogXCJcXGYyMTNcIjtcbiRmYS12YXItc2VuZDogXCJcXGYxZDhcIjtcbiRmYS12YXItc2VuZC1vOiBcIlxcZjFkOVwiO1xuJGZhLXZhci1zZXJ2ZXI6IFwiXFxmMjMzXCI7XG4kZmEtdmFyLXNoYXJlOiBcIlxcZjA2NFwiO1xuJGZhLXZhci1zaGFyZS1hbHQ6IFwiXFxmMWUwXCI7XG4kZmEtdmFyLXNoYXJlLWFsdC1zcXVhcmU6IFwiXFxmMWUxXCI7XG4kZmEtdmFyLXNoYXJlLXNxdWFyZTogXCJcXGYxNGRcIjtcbiRmYS12YXItc2hhcmUtc3F1YXJlLW86IFwiXFxmMDQ1XCI7XG4kZmEtdmFyLXNoZWtlbDogXCJcXGYyMGJcIjtcbiRmYS12YXItc2hlcWVsOiBcIlxcZjIwYlwiO1xuJGZhLXZhci1zaGllbGQ6IFwiXFxmMTMyXCI7XG4kZmEtdmFyLXNoaXA6IFwiXFxmMjFhXCI7XG4kZmEtdmFyLXNoaXJ0c2luYnVsazogXCJcXGYyMTRcIjtcbiRmYS12YXItc2hvcHBpbmctYmFnOiBcIlxcZjI5MFwiO1xuJGZhLXZhci1zaG9wcGluZy1iYXNrZXQ6IFwiXFxmMjkxXCI7XG4kZmEtdmFyLXNob3BwaW5nLWNhcnQ6IFwiXFxmMDdhXCI7XG4kZmEtdmFyLXNob3dlcjogXCJcXGYyY2NcIjtcbiRmYS12YXItc2lnbi1pbjogXCJcXGYwOTBcIjtcbiRmYS12YXItc2lnbi1sYW5ndWFnZTogXCJcXGYyYTdcIjtcbiRmYS12YXItc2lnbi1vdXQ6IFwiXFxmMDhiXCI7XG4kZmEtdmFyLXNpZ25hbDogXCJcXGYwMTJcIjtcbiRmYS12YXItc2lnbmluZzogXCJcXGYyYTdcIjtcbiRmYS12YXItc2ltcGx5YnVpbHQ6IFwiXFxmMjE1XCI7XG4kZmEtdmFyLXNpdGVtYXA6IFwiXFxmMGU4XCI7XG4kZmEtdmFyLXNreWF0bGFzOiBcIlxcZjIxNlwiO1xuJGZhLXZhci1za3lwZTogXCJcXGYxN2VcIjtcbiRmYS12YXItc2xhY2s6IFwiXFxmMTk4XCI7XG4kZmEtdmFyLXNsaWRlcnM6IFwiXFxmMWRlXCI7XG4kZmEtdmFyLXNsaWRlc2hhcmU6IFwiXFxmMWU3XCI7XG4kZmEtdmFyLXNtaWxlLW86IFwiXFxmMTE4XCI7XG4kZmEtdmFyLXNuYXBjaGF0OiBcIlxcZjJhYlwiO1xuJGZhLXZhci1zbmFwY2hhdC1naG9zdDogXCJcXGYyYWNcIjtcbiRmYS12YXItc25hcGNoYXQtc3F1YXJlOiBcIlxcZjJhZFwiO1xuJGZhLXZhci1zbm93Zmxha2UtbzogXCJcXGYyZGNcIjtcbiRmYS12YXItc29jY2VyLWJhbGwtbzogXCJcXGYxZTNcIjtcbiRmYS12YXItc29ydDogXCJcXGYwZGNcIjtcbiRmYS12YXItc29ydC1hbHBoYS1hc2M6IFwiXFxmMTVkXCI7XG4kZmEtdmFyLXNvcnQtYWxwaGEtZGVzYzogXCJcXGYxNWVcIjtcbiRmYS12YXItc29ydC1hbW91bnQtYXNjOiBcIlxcZjE2MFwiO1xuJGZhLXZhci1zb3J0LWFtb3VudC1kZXNjOiBcIlxcZjE2MVwiO1xuJGZhLXZhci1zb3J0LWFzYzogXCJcXGYwZGVcIjtcbiRmYS12YXItc29ydC1kZXNjOiBcIlxcZjBkZFwiO1xuJGZhLXZhci1zb3J0LWRvd246IFwiXFxmMGRkXCI7XG4kZmEtdmFyLXNvcnQtbnVtZXJpYy1hc2M6IFwiXFxmMTYyXCI7XG4kZmEtdmFyLXNvcnQtbnVtZXJpYy1kZXNjOiBcIlxcZjE2M1wiO1xuJGZhLXZhci1zb3J0LXVwOiBcIlxcZjBkZVwiO1xuJGZhLXZhci1zb3VuZGNsb3VkOiBcIlxcZjFiZVwiO1xuJGZhLXZhci1zcGFjZS1zaHV0dGxlOiBcIlxcZjE5N1wiO1xuJGZhLXZhci1zcGlubmVyOiBcIlxcZjExMFwiO1xuJGZhLXZhci1zcG9vbjogXCJcXGYxYjFcIjtcbiRmYS12YXItc3BvdGlmeTogXCJcXGYxYmNcIjtcbiRmYS12YXItc3F1YXJlOiBcIlxcZjBjOFwiO1xuJGZhLXZhci1zcXVhcmUtbzogXCJcXGYwOTZcIjtcbiRmYS12YXItc3RhY2stZXhjaGFuZ2U6IFwiXFxmMThkXCI7XG4kZmEtdmFyLXN0YWNrLW92ZXJmbG93OiBcIlxcZjE2Y1wiO1xuJGZhLXZhci1zdGFyOiBcIlxcZjAwNVwiO1xuJGZhLXZhci1zdGFyLWhhbGY6IFwiXFxmMDg5XCI7XG4kZmEtdmFyLXN0YXItaGFsZi1lbXB0eTogXCJcXGYxMjNcIjtcbiRmYS12YXItc3Rhci1oYWxmLWZ1bGw6IFwiXFxmMTIzXCI7XG4kZmEtdmFyLXN0YXItaGFsZi1vOiBcIlxcZjEyM1wiO1xuJGZhLXZhci1zdGFyLW86IFwiXFxmMDA2XCI7XG4kZmEtdmFyLXN0ZWFtOiBcIlxcZjFiNlwiO1xuJGZhLXZhci1zdGVhbS1zcXVhcmU6IFwiXFxmMWI3XCI7XG4kZmEtdmFyLXN0ZXAtYmFja3dhcmQ6IFwiXFxmMDQ4XCI7XG4kZmEtdmFyLXN0ZXAtZm9yd2FyZDogXCJcXGYwNTFcIjtcbiRmYS12YXItc3RldGhvc2NvcGU6IFwiXFxmMGYxXCI7XG4kZmEtdmFyLXN0aWNreS1ub3RlOiBcIlxcZjI0OVwiO1xuJGZhLXZhci1zdGlja3ktbm90ZS1vOiBcIlxcZjI0YVwiO1xuJGZhLXZhci1zdG9wOiBcIlxcZjA0ZFwiO1xuJGZhLXZhci1zdG9wLWNpcmNsZTogXCJcXGYyOGRcIjtcbiRmYS12YXItc3RvcC1jaXJjbGUtbzogXCJcXGYyOGVcIjtcbiRmYS12YXItc3RyZWV0LXZpZXc6IFwiXFxmMjFkXCI7XG4kZmEtdmFyLXN0cmlrZXRocm91Z2g6IFwiXFxmMGNjXCI7XG4kZmEtdmFyLXN0dW1ibGV1cG9uOiBcIlxcZjFhNFwiO1xuJGZhLXZhci1zdHVtYmxldXBvbi1jaXJjbGU6IFwiXFxmMWEzXCI7XG4kZmEtdmFyLXN1YnNjcmlwdDogXCJcXGYxMmNcIjtcbiRmYS12YXItc3Vid2F5OiBcIlxcZjIzOVwiO1xuJGZhLXZhci1zdWl0Y2FzZTogXCJcXGYwZjJcIjtcbiRmYS12YXItc3VuLW86IFwiXFxmMTg1XCI7XG4kZmEtdmFyLXN1cGVycG93ZXJzOiBcIlxcZjJkZFwiO1xuJGZhLXZhci1zdXBlcnNjcmlwdDogXCJcXGYxMmJcIjtcbiRmYS12YXItc3VwcG9ydDogXCJcXGYxY2RcIjtcbiRmYS12YXItdGFibGU6IFwiXFxmMGNlXCI7XG4kZmEtdmFyLXRhYmxldDogXCJcXGYxMGFcIjtcbiRmYS12YXItdGFjaG9tZXRlcjogXCJcXGYwZTRcIjtcbiRmYS12YXItdGFnOiBcIlxcZjAyYlwiO1xuJGZhLXZhci10YWdzOiBcIlxcZjAyY1wiO1xuJGZhLXZhci10YXNrczogXCJcXGYwYWVcIjtcbiRmYS12YXItdGF4aTogXCJcXGYxYmFcIjtcbiRmYS12YXItdGVsZWdyYW06IFwiXFxmMmM2XCI7XG4kZmEtdmFyLXRlbGV2aXNpb246IFwiXFxmMjZjXCI7XG4kZmEtdmFyLXRlbmNlbnQtd2VpYm86IFwiXFxmMWQ1XCI7XG4kZmEtdmFyLXRlcm1pbmFsOiBcIlxcZjEyMFwiO1xuJGZhLXZhci10ZXh0LWhlaWdodDogXCJcXGYwMzRcIjtcbiRmYS12YXItdGV4dC13aWR0aDogXCJcXGYwMzVcIjtcbiRmYS12YXItdGg6IFwiXFxmMDBhXCI7XG4kZmEtdmFyLXRoLWxhcmdlOiBcIlxcZjAwOVwiO1xuJGZhLXZhci10aC1saXN0OiBcIlxcZjAwYlwiO1xuJGZhLXZhci10aGVtZWlzbGU6IFwiXFxmMmIyXCI7XG4kZmEtdmFyLXRoZXJtb21ldGVyOiBcIlxcZjJjN1wiO1xuJGZhLXZhci10aGVybW9tZXRlci0wOiBcIlxcZjJjYlwiO1xuJGZhLXZhci10aGVybW9tZXRlci0xOiBcIlxcZjJjYVwiO1xuJGZhLXZhci10aGVybW9tZXRlci0yOiBcIlxcZjJjOVwiO1xuJGZhLXZhci10aGVybW9tZXRlci0zOiBcIlxcZjJjOFwiO1xuJGZhLXZhci10aGVybW9tZXRlci00OiBcIlxcZjJjN1wiO1xuJGZhLXZhci10aGVybW9tZXRlci1lbXB0eTogXCJcXGYyY2JcIjtcbiRmYS12YXItdGhlcm1vbWV0ZXItZnVsbDogXCJcXGYyYzdcIjtcbiRmYS12YXItdGhlcm1vbWV0ZXItaGFsZjogXCJcXGYyYzlcIjtcbiRmYS12YXItdGhlcm1vbWV0ZXItcXVhcnRlcjogXCJcXGYyY2FcIjtcbiRmYS12YXItdGhlcm1vbWV0ZXItdGhyZWUtcXVhcnRlcnM6IFwiXFxmMmM4XCI7XG4kZmEtdmFyLXRodW1iLXRhY2s6IFwiXFxmMDhkXCI7XG4kZmEtdmFyLXRodW1icy1kb3duOiBcIlxcZjE2NVwiO1xuJGZhLXZhci10aHVtYnMtby1kb3duOiBcIlxcZjA4OFwiO1xuJGZhLXZhci10aHVtYnMtby11cDogXCJcXGYwODdcIjtcbiRmYS12YXItdGh1bWJzLXVwOiBcIlxcZjE2NFwiO1xuJGZhLXZhci10aWNrZXQ6IFwiXFxmMTQ1XCI7XG4kZmEtdmFyLXRpbWVzOiBcIlxcZjAwZFwiO1xuJGZhLXZhci10aW1lcy1jaXJjbGU6IFwiXFxmMDU3XCI7XG4kZmEtdmFyLXRpbWVzLWNpcmNsZS1vOiBcIlxcZjA1Y1wiO1xuJGZhLXZhci10aW1lcy1yZWN0YW5nbGU6IFwiXFxmMmQzXCI7XG4kZmEtdmFyLXRpbWVzLXJlY3RhbmdsZS1vOiBcIlxcZjJkNFwiO1xuJGZhLXZhci10aW50OiBcIlxcZjA0M1wiO1xuJGZhLXZhci10b2dnbGUtZG93bjogXCJcXGYxNTBcIjtcbiRmYS12YXItdG9nZ2xlLWxlZnQ6IFwiXFxmMTkxXCI7XG4kZmEtdmFyLXRvZ2dsZS1vZmY6IFwiXFxmMjA0XCI7XG4kZmEtdmFyLXRvZ2dsZS1vbjogXCJcXGYyMDVcIjtcbiRmYS12YXItdG9nZ2xlLXJpZ2h0OiBcIlxcZjE1MlwiO1xuJGZhLXZhci10b2dnbGUtdXA6IFwiXFxmMTUxXCI7XG4kZmEtdmFyLXRyYWRlbWFyazogXCJcXGYyNWNcIjtcbiRmYS12YXItdHJhaW46IFwiXFxmMjM4XCI7XG4kZmEtdmFyLXRyYW5zZ2VuZGVyOiBcIlxcZjIyNFwiO1xuJGZhLXZhci10cmFuc2dlbmRlci1hbHQ6IFwiXFxmMjI1XCI7XG4kZmEtdmFyLXRyYXNoOiBcIlxcZjFmOFwiO1xuJGZhLXZhci10cmFzaC1vOiBcIlxcZjAxNFwiO1xuJGZhLXZhci10cmVlOiBcIlxcZjFiYlwiO1xuJGZhLXZhci10cmVsbG86IFwiXFxmMTgxXCI7XG4kZmEtdmFyLXRyaXBhZHZpc29yOiBcIlxcZjI2MlwiO1xuJGZhLXZhci10cm9waHk6IFwiXFxmMDkxXCI7XG4kZmEtdmFyLXRydWNrOiBcIlxcZjBkMVwiO1xuJGZhLXZhci10cnk6IFwiXFxmMTk1XCI7XG4kZmEtdmFyLXR0eTogXCJcXGYxZTRcIjtcbiRmYS12YXItdHVtYmxyOiBcIlxcZjE3M1wiO1xuJGZhLXZhci10dW1ibHItc3F1YXJlOiBcIlxcZjE3NFwiO1xuJGZhLXZhci10dXJraXNoLWxpcmE6IFwiXFxmMTk1XCI7XG4kZmEtdmFyLXR2OiBcIlxcZjI2Y1wiO1xuJGZhLXZhci10d2l0Y2g6IFwiXFxmMWU4XCI7XG4kZmEtdmFyLXR3aXR0ZXI6IFwiXFxmMDk5XCI7XG4kZmEtdmFyLXR3aXR0ZXItc3F1YXJlOiBcIlxcZjA4MVwiO1xuJGZhLXZhci11bWJyZWxsYTogXCJcXGYwZTlcIjtcbiRmYS12YXItdW5kZXJsaW5lOiBcIlxcZjBjZFwiO1xuJGZhLXZhci11bmRvOiBcIlxcZjBlMlwiO1xuJGZhLXZhci11bml2ZXJzYWwtYWNjZXNzOiBcIlxcZjI5YVwiO1xuJGZhLXZhci11bml2ZXJzaXR5OiBcIlxcZjE5Y1wiO1xuJGZhLXZhci11bmxpbms6IFwiXFxmMTI3XCI7XG4kZmEtdmFyLXVubG9jazogXCJcXGYwOWNcIjtcbiRmYS12YXItdW5sb2NrLWFsdDogXCJcXGYxM2VcIjtcbiRmYS12YXItdW5zb3J0ZWQ6IFwiXFxmMGRjXCI7XG4kZmEtdmFyLXVwbG9hZDogXCJcXGYwOTNcIjtcbiRmYS12YXItdXNiOiBcIlxcZjI4N1wiO1xuJGZhLXZhci11c2Q6IFwiXFxmMTU1XCI7XG4kZmEtdmFyLXVzZXI6IFwiXFxmMDA3XCI7XG4kZmEtdmFyLXVzZXItY2lyY2xlOiBcIlxcZjJiZFwiO1xuJGZhLXZhci11c2VyLWNpcmNsZS1vOiBcIlxcZjJiZVwiO1xuJGZhLXZhci11c2VyLW1kOiBcIlxcZjBmMFwiO1xuJGZhLXZhci11c2VyLW86IFwiXFxmMmMwXCI7XG4kZmEtdmFyLXVzZXItcGx1czogXCJcXGYyMzRcIjtcbiRmYS12YXItdXNlci1zZWNyZXQ6IFwiXFxmMjFiXCI7XG4kZmEtdmFyLXVzZXItdGltZXM6IFwiXFxmMjM1XCI7XG4kZmEtdmFyLXVzZXJzOiBcIlxcZjBjMFwiO1xuJGZhLXZhci12Y2FyZDogXCJcXGYyYmJcIjtcbiRmYS12YXItdmNhcmQtbzogXCJcXGYyYmNcIjtcbiRmYS12YXItdmVudXM6IFwiXFxmMjIxXCI7XG4kZmEtdmFyLXZlbnVzLWRvdWJsZTogXCJcXGYyMjZcIjtcbiRmYS12YXItdmVudXMtbWFyczogXCJcXGYyMjhcIjtcbiRmYS12YXItdmlhY29pbjogXCJcXGYyMzdcIjtcbiRmYS12YXItdmlhZGVvOiBcIlxcZjJhOVwiO1xuJGZhLXZhci12aWFkZW8tc3F1YXJlOiBcIlxcZjJhYVwiO1xuJGZhLXZhci12aWRlby1jYW1lcmE6IFwiXFxmMDNkXCI7XG4kZmEtdmFyLXZpbWVvOiBcIlxcZjI3ZFwiO1xuJGZhLXZhci12aW1lby1zcXVhcmU6IFwiXFxmMTk0XCI7XG4kZmEtdmFyLXZpbmU6IFwiXFxmMWNhXCI7XG4kZmEtdmFyLXZrOiBcIlxcZjE4OVwiO1xuJGZhLXZhci12b2x1bWUtY29udHJvbC1waG9uZTogXCJcXGYyYTBcIjtcbiRmYS12YXItdm9sdW1lLWRvd246IFwiXFxmMDI3XCI7XG4kZmEtdmFyLXZvbHVtZS1vZmY6IFwiXFxmMDI2XCI7XG4kZmEtdmFyLXZvbHVtZS11cDogXCJcXGYwMjhcIjtcbiRmYS12YXItd2FybmluZzogXCJcXGYwNzFcIjtcbiRmYS12YXItd2VjaGF0OiBcIlxcZjFkN1wiO1xuJGZhLXZhci13ZWlibzogXCJcXGYxOGFcIjtcbiRmYS12YXItd2VpeGluOiBcIlxcZjFkN1wiO1xuJGZhLXZhci13aGF0c2FwcDogXCJcXGYyMzJcIjtcbiRmYS12YXItd2hlZWxjaGFpcjogXCJcXGYxOTNcIjtcbiRmYS12YXItd2hlZWxjaGFpci1hbHQ6IFwiXFxmMjliXCI7XG4kZmEtdmFyLXdpZmk6IFwiXFxmMWViXCI7XG4kZmEtdmFyLXdpa2lwZWRpYS13OiBcIlxcZjI2NlwiO1xuJGZhLXZhci13aW5kb3ctY2xvc2U6IFwiXFxmMmQzXCI7XG4kZmEtdmFyLXdpbmRvdy1jbG9zZS1vOiBcIlxcZjJkNFwiO1xuJGZhLXZhci13aW5kb3ctbWF4aW1pemU6IFwiXFxmMmQwXCI7XG4kZmEtdmFyLXdpbmRvdy1taW5pbWl6ZTogXCJcXGYyZDFcIjtcbiRmYS12YXItd2luZG93LXJlc3RvcmU6IFwiXFxmMmQyXCI7XG4kZmEtdmFyLXdpbmRvd3M6IFwiXFxmMTdhXCI7XG4kZmEtdmFyLXdvbjogXCJcXGYxNTlcIjtcbiRmYS12YXItd29yZHByZXNzOiBcIlxcZjE5YVwiO1xuJGZhLXZhci13cGJlZ2lubmVyOiBcIlxcZjI5N1wiO1xuJGZhLXZhci13cGV4cGxvcmVyOiBcIlxcZjJkZVwiO1xuJGZhLXZhci13cGZvcm1zOiBcIlxcZjI5OFwiO1xuJGZhLXZhci13cmVuY2g6IFwiXFxmMGFkXCI7XG4kZmEtdmFyLXhpbmc6IFwiXFxmMTY4XCI7XG4kZmEtdmFyLXhpbmctc3F1YXJlOiBcIlxcZjE2OVwiO1xuJGZhLXZhci15LWNvbWJpbmF0b3I6IFwiXFxmMjNiXCI7XG4kZmEtdmFyLXktY29tYmluYXRvci1zcXVhcmU6IFwiXFxmMWQ0XCI7XG4kZmEtdmFyLXlhaG9vOiBcIlxcZjE5ZVwiO1xuJGZhLXZhci15YzogXCJcXGYyM2JcIjtcbiRmYS12YXIteWMtc3F1YXJlOiBcIlxcZjFkNFwiO1xuJGZhLXZhci15ZWxwOiBcIlxcZjFlOVwiO1xuJGZhLXZhci15ZW46IFwiXFxmMTU3XCI7XG4kZmEtdmFyLXlvYXN0OiBcIlxcZjJiMVwiO1xuJGZhLXZhci15b3V0dWJlOiBcIlxcZjE2N1wiO1xuJGZhLXZhci15b3V0dWJlLXBsYXk6IFwiXFxmMTZhXCI7XG4kZmEtdmFyLXlvdXR1YmUtc3F1YXJlOiBcIlxcZjE2NlwiO1xuXG4iLCIvLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtaXhpbiBmYS1pY29uKCkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsICN7JGZhLWZvbnQtc2l6ZS1iYXNlfS8jeyRmYS1saW5lLWhlaWdodC1iYXNlfSBGb250QXdlc29tZTsgLy8gc2hvcnRlbmluZyBmb250IGRlY2xhcmF0aW9uXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgLy8gY2FuJ3QgaGF2ZSBmb250LXNpemUgaW5oZXJpdCBvbiBsaW5lIGFib3ZlLCBzbyBuZWVkIHRvIG92ZXJyaWRlXG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvOyAvLyBvcHRpbWl6ZWxlZ2liaWxpdHkgdGhyb3dzIHRoaW5ncyBvZmYgIzEwOTRcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbn1cblxuQG1peGluIGZhLWljb24tcm90YXRlKCRkZWdyZWVzLCAkcm90YXRpb24pIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0jeyRyb3RhdGlvbn0pXCI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG59XG5cbkBtaXhpbiBmYS1pY29uLWZsaXAoJGhvcml6LCAkdmVydCwgJHJvdGF0aW9uKSB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249I3skcm90YXRpb259LCBtaXJyb3I9MSlcIjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoJGhvcml6LCAkdmVydCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkaG9yaXosICR2ZXJ0KTtcbn1cblxuXG4vLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVycy4gQSBsYSBCb290c3RyYXAgNC5cbi8vXG4vLyBTZWU6IGh0dHA6Ly9hMTF5cHJvamVjdC5jb20vcG9zdHMvaG93LXRvLWhpZGUtY29udGVudC9cblxuQG1peGluIHNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gIH1cbn1cbiIsIi8qIEZPTlQgUEFUSFxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LmVvdD92PSN7JGZhLXZlcnNpb259Jyk7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQuZW90PyNpZWZpeCZ2PSN7JGZhLXZlcnNpb259JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgIHVybCgnI3skZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LndvZmYyP3Y9I3skZmEtdmVyc2lvbn0nKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQud29mZj92PSN7JGZhLXZlcnNpb259JykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQudHRmP3Y9I3skZmEtdmVyc2lvbn0nKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQuc3ZnP3Y9I3skZmEtdmVyc2lvbn0jZm9udGF3ZXNvbWVyZWd1bGFyJykgZm9ybWF0KCdzdmcnKTtcbi8vICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9Gb250QXdlc29tZS5vdGYnKSBmb3JtYXQoJ29wZW50eXBlJyk7IC8vIHVzZWQgd2hlbiBkZXZlbG9waW5nIGZvbnRzXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbiIsIi8vIEJhc2UgQ2xhc3MgRGVmaW5pdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsICN7JGZhLWZvbnQtc2l6ZS1iYXNlfS8jeyRmYS1saW5lLWhlaWdodC1iYXNlfSBGb250QXdlc29tZTsgLy8gc2hvcnRlbmluZyBmb250IGRlY2xhcmF0aW9uXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgLy8gY2FuJ3QgaGF2ZSBmb250LXNpemUgaW5oZXJpdCBvbiBsaW5lIGFib3ZlLCBzbyBuZWVkIHRvIG92ZXJyaWRlXG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvOyAvLyBvcHRpbWl6ZWxlZ2liaWxpdHkgdGhyb3dzIHRoaW5ncyBvZmYgIzEwOTRcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbn1cbiIsIi8vIEljb24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLyogbWFrZXMgdGhlIGZvbnQgMzMlIGxhcmdlciByZWxhdGl2ZSB0byB0aGUgaWNvbiBjb250YWluZXIgKi9cbi4jeyRmYS1jc3MtcHJlZml4fS1sZyB7XG4gIGZvbnQtc2l6ZTogKDRlbSAvIDMpO1xuICBsaW5lLWhlaWdodDogKDNlbSAvIDQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTE1JTtcbn1cbi4jeyRmYS1jc3MtcHJlZml4fS0yeCB7IGZvbnQtc2l6ZTogMmVtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tM3ggeyBmb250LXNpemU6IDNlbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LTR4IHsgZm9udC1zaXplOiA0ZW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS01eCB7IGZvbnQtc2l6ZTogNWVtOyB9XG4iLCIvLyBGaXhlZCBXaWR0aCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZ3IHtcbiAgd2lkdGg6ICgxOGVtIC8gMTQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCIvLyBMaXN0IEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS11bCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWxlZnQ6ICRmYS1saS13aWR0aDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICA+IGxpIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG59XG4uI3skZmEtY3NzLXByZWZpeH0tbGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0kZmEtbGktd2lkdGg7XG4gIHdpZHRoOiAkZmEtbGktd2lkdGg7XG4gIHRvcDogKDJlbSAvIDE0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAmLiN7JGZhLWNzcy1wcmVmaXh9LWxnIHtcbiAgICBsZWZ0OiAtJGZhLWxpLXdpZHRoICsgKDRlbSAvIDE0KTtcbiAgfVxufVxuIiwiLy8gQm9yZGVyZWQgJiBQdWxsZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvcmRlciB7XG4gIHBhZGRpbmc6IC4yZW0gLjI1ZW0gLjE1ZW07XG4gIGJvcmRlcjogc29saWQgLjA4ZW0gJGZhLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogLjFlbTtcbn1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXB1bGwtbGVmdCB7IGZsb2F0OiBsZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHVsbC1yaWdodCB7IGZsb2F0OiByaWdodDsgfVxuXG4uI3skZmEtY3NzLXByZWZpeH0ge1xuICAmLiN7JGZhLWNzcy1wcmVmaXh9LXB1bGwtbGVmdCB7IG1hcmdpbi1yaWdodDogLjNlbTsgfVxuICAmLiN7JGZhLWNzcy1wcmVmaXh9LXB1bGwtcmlnaHQgeyBtYXJnaW4tbGVmdDogLjNlbTsgfVxufVxuXG4vKiBEZXByZWNhdGVkIGFzIG9mIDQuNC4wICovXG4ucHVsbC1yaWdodCB7IGZsb2F0OiByaWdodDsgfVxuLnB1bGwtbGVmdCB7IGZsb2F0OiBsZWZ0OyB9XG5cbi4jeyRmYS1jc3MtcHJlZml4fSB7XG4gICYucHVsbC1sZWZ0IHsgbWFyZ2luLXJpZ2h0OiAuM2VtOyB9XG4gICYucHVsbC1yaWdodCB7IG1hcmdpbi1sZWZ0OiAuM2VtOyB9XG59XG4iLCIvLyBTcGlubmluZyBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmEtc3BpbiAycyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgICAgICAgYW5pbWF0aW9uOiBmYS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjtcbn1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXB1bHNlIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7XG4gICAgICAgICAgYW5pbWF0aW9uOiBmYS1zcGluIDFzIGluZmluaXRlIHN0ZXBzKDgpO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmEtc3BpbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhLXNwaW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gIH1cbn1cbiIsIi8vIFJvdGF0ZWQgJiBGbGlwcGVkIEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtOTAgIHsgQGluY2x1ZGUgZmEtaWNvbi1yb3RhdGUoOTBkZWcsIDEpOyAgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS0xODAgeyBAaW5jbHVkZSBmYS1pY29uLXJvdGF0ZSgxODBkZWcsIDIpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTI3MCB7IEBpbmNsdWRlIGZhLWljb24tcm90YXRlKDI3MGRlZywgMyk7IH1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtaG9yaXpvbnRhbCB7IEBpbmNsdWRlIGZhLWljb24tZmxpcCgtMSwgMSwgMCk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLXZlcnRpY2FsICAgeyBAaW5jbHVkZSBmYS1pY29uLWZsaXAoMSwgLTEsIDIpOyB9XG5cbi8vIEhvb2sgZm9yIElFOC05XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbjpyb290IC4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtOTAsXG46cm9vdCAuI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTE4MCxcbjpyb290IC4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtMjcwLFxuOnJvb3QgLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtaG9yaXpvbnRhbCxcbjpyb290IC4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLXZlcnRpY2FsIHtcbiAgZmlsdGVyOiBub25lO1xufVxuIiwiLy8gU3RhY2tlZCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMXgsIC4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0yeCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0xeCB7IGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMnggeyBmb250LXNpemU6IDJlbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWludmVyc2UgeyBjb2xvcjogJGZhLWludmVyc2U7IH1cbiIsIi8qIEZvbnQgQXdlc29tZSB1c2VzIHRoZSBVbmljb2RlIFByaXZhdGUgVXNlIEFyZWEgKFBVQSkgdG8gZW5zdXJlIHNjcmVlblxuICAgcmVhZGVycyBkbyBub3QgcmVhZCBvZmYgcmFuZG9tIGNoYXJhY3RlcnMgdGhhdCByZXByZXNlbnQgaWNvbnMgKi9cblxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsYXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2xhc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tdXNpYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW11c2ljOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2VhcmNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmVsb3BlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhlYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0YXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGFyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbG06YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGgtbGFyZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aC1sYXJnZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aC1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGgtbGlzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hlY2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZW1vdmU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3NlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRpbWVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoLXBsdXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zZWFyY2gtcGx1czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlYXJjaC1taW51czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNlYXJjaC1taW51czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBvd2VyLW9mZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBvd2VyLW9mZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ25hbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNpZ25hbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlYXI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYXNoLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFzaC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9tZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhvbWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG9jay1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xvY2stbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yb2FkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG93bmxvYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kb3dubG9hZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1vLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtby1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLW8tdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtby11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluYm94OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5ib3g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGF5LWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGxheS1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS1yaWdodDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmVwZWF0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVwZWF0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVmcmVzaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlZnJlc2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0LWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpc3QtYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9jazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvY2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFnOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxhZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWRwaG9uZXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oZWFkcGhvbmVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLW9mZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZvbHVtZS1vZmY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2x1bWUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZvbHVtZS1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdm9sdW1lLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXJjb2RlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFyY29kZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhcmNvZGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YWc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWdzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGFnczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvb2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib29rOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9va21hcms6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib29rbWFyazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXByaW50OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcHJpbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYW1lcmE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYW1lcmE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb250OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9udDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvbGQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib2xkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taXRhbGljOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaXRhbGljOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGV4dC1oZWlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZXh0LWhlaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRleHQtd2lkdGg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZXh0LXdpZHRoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFsaWduLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlnbi1jZW50ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbGlnbi1jZW50ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlnbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFsaWduLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tanVzdGlmeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFsaWduLWp1c3RpZnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRlZGVudDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tb3V0ZGVudDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW91dGRlbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmRlbnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbmRlbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWRlby1jYW1lcmE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12aWRlby1jYW1lcmE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG90bzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taW1hZ2U6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpY3R1cmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpY3R1cmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbmNpbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBlbmNpbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1tYXJrZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXAtbWFya2VyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRqdXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYWRqdXN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGludDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRpbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lZGl0OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1wZW5jaWwtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wZW5jaWwtc3F1YXJlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGFyZS1zcXVhcmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoYXJlLXNxdWFyZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGVjay1zcXVhcmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXAtYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGVwLWJhY2t3YXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFzdC1iYWNrd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZhc3QtYmFja3dhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWNrd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhY2t3YXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxheTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsYXk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXVzZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhdXNlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RvcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0b3A7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9yd2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhc3QtZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZhc3QtZm9yd2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXAtZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0ZXAtZm9yd2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVqZWN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZWplY3Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGV2cm9uLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsdXMtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGx1cy1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taW51cy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1taW51cy1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lcy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aW1lcy1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjay1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGVjay1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdWVzdGlvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xdWVzdGlvbi1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmZvLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWluZm8tY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3Jvc3NoYWlyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNyb3NzaGFpcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lcy1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRpbWVzLWNpcmNsZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGVjay1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1haWwtZm9yd2FyZDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4cGFuZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV4cGFuZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXByZXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tcHJlc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGx1czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWludXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hc3RlcmlzazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFzdGVyaXNrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjbGFtYXRpb24tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXhjbGFtYXRpb24tY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2lmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdpZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZWFmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGVhZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXllOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXllOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXllLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXllLXNsYXNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2FybmluZzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leGNsYW1hdGlvbi10cmlhbmdsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYW5lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGxhbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGVuZGFyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmFuZG9tOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmFuZG9tOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbW1lbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWduZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYWduZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJldHdlZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZXR3ZWV0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hvcHBpbmctY2FydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNob3BwaW5nLWNhcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb2xkZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXItb3BlbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvbGRlci1vcGVuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3dzLXY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvd3MtdjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93cy1oOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3dzLWg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXItY2hhcnQtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYmFyLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmFyLWNoYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHdpdHRlci1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10d2l0dGVyLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZhY2Vib29rLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbWVyYS1yZXRybzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbWVyYS1yZXRybzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtleTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWtleTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlYXJzOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jb2dzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29nczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnRzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tbWVudHM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aHVtYnMtby11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRodW1icy1vLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWJzLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRodW1icy1vLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLWhhbGY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGFyLWhhbGY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFydC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGVhcnQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ24tb3V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2lnbi1vdXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5rZWRpbi1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saW5rZWRpbi1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aHVtYi10YWNrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGh1bWItdGFjazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4dGVybmFsLWxpbms6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leHRlcm5hbC1saW5rOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2lnbi1pbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNpZ24taW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cm9waHk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cm9waHk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXRodWItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2l0aHViLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVwbG9hZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxlbW9uLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sZW1vbi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waG9uZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3F1YXJlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib29rbWFyay1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYm9va21hcmstbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBob25lLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR3aXR0ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10d2l0dGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFjZWJvb2stZjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmFjZWJvb2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mYWNlYm9vazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdGh1YjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdpdGh1YjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVubG9jazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVubG9jazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWRpdC1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3JlZGl0LWNhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mZWVkOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1yc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZGQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhkZC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVsbGhvcm46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idWxsaG9ybjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlbGw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iZWxsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2VydGlmaWNhdGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jZXJ0aWZpY2F0ZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtby1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtby1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtby1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1vLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLW8tdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLW8tdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtby1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbG9iZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdsb2JlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td3JlbmNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd3JlbmNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFza3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YXNrczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbHRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbHRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJyaWVmY2FzZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJyaWVmY2FzZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93cy1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvd3MtYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ3JvdXA6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFpbjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tbGluazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpbms7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNsb3VkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhc2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbGFzazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1dDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc2Npc3NvcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zY2lzc29yczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvcHk6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGVzLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlcy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFwZXJjbGlwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGFwZXJjbGlwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2F2ZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmxvcHB5LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbG9wcHktbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5hdmljb246YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlb3JkZXI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdC11bDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpc3QtdWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0LW9sOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlzdC1vbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0cmlrZXRocm91Z2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdHJpa2V0aHJvdWdoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5kZXJsaW5lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdW5kZXJsaW5lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFibGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YWJsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hZ2ljOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFnaWM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cnVjazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRydWNrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGludGVyZXN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpbnRlcmVzdC1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGUtcGx1cy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nb29nbGUtcGx1cy1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGUtcGx1czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdvb2dsZS1wbHVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9uZXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tb25leTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbHVtbnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb2x1bW5zOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5zb3J0ZWQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1kb3duOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWRlc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LWRlc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LXVwOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFzYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvcnQtYXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbnZlbG9wZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbmtlZGluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlua2VkaW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtbGVmdDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdW5kbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVuZG87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZWdhbDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZ2F2ZWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nYXZlbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRhc2hib2FyZDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGFjaG9tZXRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRhY2hvbWV0ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb21tZW50LW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50cy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tbWVudHMtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYXNoOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1ib2x0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYm9sdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpdGVtYXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaXRlbWFwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW1icmVsbGE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11bWJyZWxsYTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhc3RlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jbGlwYm9hcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jbGlwYm9hcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saWdodGJ1bGItbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpZ2h0YnVsYi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjaGFuZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leGNoYW5nZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkLWRvd25sb2FkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xvdWQtZG93bmxvYWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC11cGxvYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jbG91ZC11cGxvYWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLW1kOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlci1tZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZXRob3Njb3BlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RldGhvc2NvcGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWl0Y2FzZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN1aXRjYXNlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVsbC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVsbC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29mZmVlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29mZmVlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3V0bGVyeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWN1dGxlcnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXRleHQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtdGV4dC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVpbGRpbmctbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ1aWxkaW5nLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3NwaXRhbC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG9zcGl0YWwtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFtYnVsYW5jZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFtYnVsYW5jZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZGtpdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1lZGtpdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpZ2h0ZXItamV0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlnaHRlci1qZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWgtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaC1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsdXMtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG91YmxlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS1kb3VibGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWRvdWJsZS1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWRvdWJsZS11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtZG91YmxlLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZXNrdG9wOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGVza3RvcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhcHRvcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxhcHRvcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhYmxldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRhYmxldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vYmlsZS1waG9uZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tbW9iaWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbW9iaWxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1b3RlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xdW90ZS1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVvdGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xdW90ZS1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwaW5uZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zcGlubmVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFpbC1yZXBseTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmVwbHk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZXBseTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdGh1Yi1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1naXRodWItYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb2xkZXItbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbGRlci1vcGVuLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb2xkZXItb3Blbi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc21pbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNtaWxlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mcm93bi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZnJvd24tbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1laC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWVoLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nYW1lcGFkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2FtZXBhZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWtleWJvYXJkLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1rZXlib2FyZC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhZy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxhZy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhZy1jaGVja2VyZWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbGFnLWNoZWNrZXJlZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlcm1pbmFsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGVybWluYWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2RlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29kZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1haWwtcmVwbHktYWxsOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1yZXBseS1hbGw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZXBseS1hbGw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLWhhbGYtZW1wdHk6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXItaGFsZi1mdWxsOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLWhhbGYtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0YXItaGFsZi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9jYXRpb24tYXJyb3c6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sb2NhdGlvbi1hcnJvdzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyb3A6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jcm9wOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29kZS1mb3JrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29kZS1mb3JrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5saW5rOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jaGFpbi1icm9rZW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGFpbi1icm9rZW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdWVzdGlvbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXF1ZXN0aW9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5mbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWluZm87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leGNsYW1hdGlvbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV4Y2xhbWF0aW9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3VwZXJzY3JpcHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdXBlcnNjcmlwdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1YnNjcmlwdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN1YnNjcmlwdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVyYXNlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVyYXNlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXB1enpsZS1waWVjZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXB1enpsZS1waWVjZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvcGhvbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1taWNyb3Bob25lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWljcm9waG9uZS1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1pY3JvcGhvbmUtc2xhc2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGllbGQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGllbGQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FsZW5kYXItbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmUtZXh0aW5ndWlzaGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlyZS1leHRpbmd1aXNoZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb2NrZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yb2NrZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXhjZG46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXhjZG47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi1jaXJjbGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tY2lyY2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi1jaXJjbGUtcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tY2lyY2xlLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1jaXJjbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tY2lyY2xlLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1odG1sNTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWh0bWw1OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3NzMzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNzczM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmNob3I6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmNob3I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmxvY2stYWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdW5sb2NrLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1bGxzZXllOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnVsbHNleWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbGxpcHNpcy1oOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZWxsaXBzaXMtaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVsbGlwc2lzLXY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbGxpcHNpcy12OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnNzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJzcy1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGF5LWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsYXktY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGlja2V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGlja2V0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWludXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWludXMtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWludXMtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1taW51cy1zcXVhcmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxldmVsLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGV2ZWwtdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXZlbC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGV2ZWwtZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZWNrLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbmNpbC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wZW5jaWwtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXh0ZXJuYWwtbGluay1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leHRlcm5hbC1saW5rLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoYXJlLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbXBhc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb21wYXNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLWRvd246YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXNxdWFyZS1vLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1zcXVhcmUtby1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLXVwOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtby11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LXNxdWFyZS1vLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLXJpZ2h0OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtby1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LXNxdWFyZS1vLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXVybzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZXVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2JwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2JwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG9sbGFyOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS11c2Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydXBlZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taW5yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5yOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY255OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1ybWI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXllbjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tanB5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItanB5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnVibGU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdWJsZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcnViOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcnViOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td29uOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1rcnc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1rcnc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXRjb2luOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1idGM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idGM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtdGV4dDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtdGV4dDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYWxwaGEtYXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1hbHBoYS1hc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFscGhhLWRlc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LWFscGhhLWRlc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFtb3VudC1hc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LWFtb3VudC1hc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFtb3VudC1kZXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1hbW91bnQtZGVzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtbnVtZXJpYy1hc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LW51bWVyaWMtYXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1udW1lcmljLWRlc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LW51bWVyaWMtZGVzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1icy11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRodW1icy11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1icy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGh1bWJzLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15b3V0dWJlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXlvdXR1YmUtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teW91dHViZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXlvdXR1YmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS14aW5nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteGluZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXhpbmctc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteGluZy1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15b3V0dWJlLXBsYXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15b3V0dWJlLXBsYXk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcm9wYm94OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZHJvcGJveDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLW92ZXJmbG93OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RhY2stb3ZlcmZsb3c7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnN0YWdyYW06YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbnN0YWdyYW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGlja3I6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbGlja3I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hZG46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hZG47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXRidWNrZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iaXRidWNrZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXRidWNrZXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYml0YnVja2V0LXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR1bWJscjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXR1bWJscjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR1bWJsci1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10dW1ibHItc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbG9uZy1hcnJvdy1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvbmctYXJyb3ctdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb25nLWFycm93LWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sb25nLWFycm93LWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb25nLWFycm93LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbG9uZy1hcnJvdy1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFwcGxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXBwbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3dzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2luZG93czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZHJvaWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmRyb2lkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGludXg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saW51eDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyaWJiYmxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZHJpYmJibGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za3lwZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNreXBlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm91cnNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvdXJzcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmVsbG86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmVsbG87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mZW1hbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mZW1hbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdHRpcDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZ3JhdGlwYXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ncmF0aXBheTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1bi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3VuLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb29uLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tb29uLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcmNoaXZlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJjaGl2ZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1ZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ1ZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdms7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13ZWlibzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdlaWJvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVucmVuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVucmVuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFnZWxpbmVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGFnZWxpbmVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stZXhjaGFuZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGFjay1leGNoYW5nZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1vLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLW8tcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtby1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLW8tbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1sZWZ0OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtby1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtc3F1YXJlLW8tbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvdC1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRvdC1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdoZWVsY2hhaXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aGVlbGNoYWlyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmltZW8tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmltZW8tc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHVya2lzaC1saXJhOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10cnk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVzLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGx1cy1zcXVhcmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwYWNlLXNodXR0bGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zcGFjZS1zaHV0dGxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xhY2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zbGFjazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmVsb3BlLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdvcmRwcmVzczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdvcmRwcmVzczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9wZW5pZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9wZW5pZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluc3RpdHV0aW9uOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYW5rOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS11bml2ZXJzaXR5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdW5pdmVyc2l0eTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vcnRhci1ib2FyZDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZ3JhZHVhdGlvbi1jYXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ncmFkdWF0aW9uLWNhcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlhaG9vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteWFob287IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nb29nbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nb29nbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWRkaXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZWRkaXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWRkaXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVkZGl0LXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0dW1ibGV1cG9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0dW1ibGV1cG9uLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0dW1ibGV1cG9uOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3R1bWJsZXVwb247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZWxpY2lvdXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kZWxpY2lvdXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kaWdnOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGlnZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpZWQtcGlwZXItcHA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waWVkLXBpcGVyLXBwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGllZC1waXBlci1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waWVkLXBpcGVyLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRydXBhbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRydXBhbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWpvb21sYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWpvb21sYTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhbmd1YWdlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGFuZ3VhZ2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYXg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mYXg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idWlsZGluZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ1aWxkaW5nOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hpbGQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGlsZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhdzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhdzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwb29uOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3Bvb247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jdWJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3ViZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1YmVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3ViZXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWhhbmNlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVoYW5jZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlaGFuY2Utc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVoYW5jZS1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGVhbTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0ZWFtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RlYW0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RlYW0tc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVjeWNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlY3ljbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hdXRvbW9iaWxlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jYXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRheGk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YXhpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJlZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyZWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcG90aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3BvdGlmeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRldmlhbnRhcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kZXZpYW50YXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc291bmRjbG91ZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvdW5kY2xvdWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kYXRhYmFzZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRhdGFiYXNlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1wZGYtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtcGRmLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXdvcmQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtd29yZC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1leGNlbC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS1leGNlbC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1wb3dlcnBvaW50LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLXBvd2VycG9pbnQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtcGhvdG8tbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1waWN0dXJlLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtaW1hZ2UtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtaW1hZ2UtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtemlwLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtYXJjaGl2ZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS1hcmNoaXZlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXNvdW5kLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtYXVkaW8tbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtYXVkaW8tbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtbW92aWUtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS12aWRlby1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS12aWRlby1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1jb2RlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLWNvZGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12aW5lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29kZXBlbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZGVwZW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1qc2ZpZGRsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWpzZmlkZGxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlmZS1ib3V5OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1saWZlLWJ1b3k6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpZmUtc2F2ZXI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1cHBvcnQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpZmUtcmluZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpZmUtcmluZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpcmNsZS1vLW5vdGNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2lyY2xlLW8tbm90Y2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmVzaXN0YW5jZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmViZWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZWJlbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1lbXBpcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbXBpcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2l0LXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdpdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXktY29tYmluYXRvci1zcXVhcmU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXljLXNxdWFyZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taGFja2VyLW5ld3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYWNrZXItbmV3czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbmNlbnQtd2VpYm86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZW5jZW50LXdlaWJvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xcTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdlY2hhdDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0td2VpeGluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2VpeGluOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VuZDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcGFwZXItcGxhbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXBlci1wbGFuZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlbmQtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcGFwZXItcGxhbmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhcGVyLXBsYW5lLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oaXN0b3J5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGlzdG9yeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpcmNsZS10aGluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2lyY2xlLXRoaW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFkZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oZWFkZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXJhZ3JhcGg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXJhZ3JhcGg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbGlkZXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2xpZGVyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoYXJlLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLWFsdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGFyZS1hbHQtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9tYjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJvbWI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb2NjZXItYmFsbC1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1mdXRib2wtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZ1dGJvbC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHR5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHR5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmlub2N1bGFyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJpbm9jdWxhcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVnOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGx1ZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNsaWRlc2hhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zbGlkZXNoYXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHdpdGNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHdpdGNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWVscDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXllbHA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1uZXdzcGFwZXItbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW5ld3NwYXBlci1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2lmaTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdpZmk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxjdWxhdG9yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FsY3VsYXRvcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBheXBhbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBheXBhbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS13YWxsZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nb29nbGUtd2FsbGV0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtdmlzYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjLXZpc2E7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1tYXN0ZXJjYXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtbWFzdGVyY2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLWRpc2NvdmVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtZGlzY292ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1hbWV4OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtYW1leDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLXBheXBhbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjLXBheXBhbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLXN0cmlwZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjLXN0cmlwZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlbGwtc2xhc2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iZWxsLXNsYXNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVsbC1zbGFzaC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVsbC1zbGFzaC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhc2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFzaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvcHlyaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvcHlyaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leWVkcm9wcGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXllZHJvcHBlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhaW50LWJydXNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGFpbnQtYnJ1c2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaXJ0aGRheS1jYWtlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmlydGhkYXktY2FrZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFyZWEtY2hhcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcmVhLWNoYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGllLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGllLWNoYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGluZS1jaGFydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpbmUtY2hhcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXN0Zm06YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sYXN0Zm07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXN0Zm0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGFzdGZtLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1vZmY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10b2dnbGUtb2ZmOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLW9uOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdG9nZ2xlLW9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmljeWNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJpY3ljbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pb3hob3N0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW94aG9zdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2VsbGlzdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2VsbGlzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGVrZWw6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoZXFlbDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taWxzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaWxzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVhbnBhdGg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tZWFucGF0aDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1eXNlbGxhZHM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idXlzZWxsYWRzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29ubmVjdGRldmVsb3A6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb25uZWN0ZGV2ZWxvcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRhc2hjdWJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGFzaGN1YmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J1bWJlZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvcnVtYmVlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGVhbnB1YjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxlYW5wdWI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWxsc3k6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zZWxsc3k7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGlydHNpbmJ1bGs6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGlydHNpbmJ1bGs7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaW1wbHlidWlsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNpbXBseWJ1aWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2t5YXRsYXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1za3lhdGxhczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcnQtcGx1czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcnQtcGx1czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcnQtYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcnQtYXJyb3ctZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpYW1vbmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kaWFtb25kOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hpcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoaXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXNlY3JldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXItc2VjcmV0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW90b3JjeWNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1vdG9yY3ljbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJlZXQtdmlldzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0cmVldC12aWV3OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhcnRiZWF0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGVhcnRiZWF0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmVudXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12ZW51czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVyY3VyeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1lcmN1cnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnRlcnNleDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdHJhbnNnZW5kZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFuc2dlbmRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYW5zZ2VuZGVyLWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyYW5zZ2VuZGVyLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlbnVzLWRvdWJsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZlbnVzLWRvdWJsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFycy1kb3VibGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12ZW51cy1tYXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmVudXMtbWFyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtc3Ryb2tlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFycy1zdHJva2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXJzLXN0cm9rZS12OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFycy1zdHJva2UtdjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtc3Ryb2tlLWg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXJzLXN0cm9rZS1oOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmV1dGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbmV1dGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2VuZGVybGVzczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdlbmRlcmxlc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYWNlYm9vay1vZmZpY2lhbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZhY2Vib29rLW9mZmljaWFsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGludGVyZXN0LXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waW50ZXJlc3QtcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdoYXRzYXBwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2hhdHNhcHA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZXJ2ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zZXJ2ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXBsdXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2VyLXBsdXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLXRpbWVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlci10aW1lczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdGVsOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iZWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iZWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFjb2luOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmlhY29pbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYWluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJhaW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWJ3YXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdWJ3YXk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWRpdW06YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tZWRpdW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15YzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0teS1jb21iaW5hdG9yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteS1jb21iaW5hdG9yOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3B0aW4tbW9uc3RlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9wdGluLW1vbnN0ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vcGVuY2FydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9wZW5jYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhwZWRpdGVkc3NsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXhwZWRpdGVkc3NsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS00OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LWZ1bGw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXR0ZXJ5LWZ1bGw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LTM6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktdGhyZWUtcXVhcnRlcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS0yOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LWhhbGY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXR0ZXJ5LWhhbGY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LTE6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktcXVhcnRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhdHRlcnktcXVhcnRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktMDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1lbXB0eTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhdHRlcnktZW1wdHk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb3VzZS1wb2ludGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbW91c2UtcG9pbnRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWktY3Vyc29yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaS1jdXJzb3I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vYmplY3QtZ3JvdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1vYmplY3QtZ3JvdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vYmplY3QtdW5ncm91cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9iamVjdC11bmdyb3VwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RpY2t5LW5vdGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGlja3ktbm90ZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0aWNreS1ub3RlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGlja3ktbm90ZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtamNiOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtamNiOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtZGluZXJzLWNsdWI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYy1kaW5lcnMtY2x1YjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb25lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xvbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYWxhbmNlLXNjYWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmFsYW5jZS1zY2FsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91cmdsYXNzLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3MtMTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLXN0YXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91cmdsYXNzLXN0YXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLTI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91cmdsYXNzLWhhbGY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3MtMzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLWVuZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhvdXJnbGFzcy1lbmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ob3VyZ2xhc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWdyYWItbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1yb2NrLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLXJvY2stbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtc3RvcC1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBhcGVyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLXBhcGVyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXNjaXNzb3JzLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLXNjaXNzb3JzLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLWxpemFyZC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1saXphcmQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtc3BvY2stbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtc3BvY2stbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcG9pbnRlci1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1wb2ludGVyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXBlYWNlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLXBlYWNlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFkZW1hcms6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFkZW1hcms7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWdpc3RlcmVkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVnaXN0ZXJlZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyZWF0aXZlLWNvbW1vbnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2c6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdnLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdnLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyaXBhZHZpc29yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJpcGFkdmlzb3I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vZG5va2xhc3NuaWtpOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb2Rub2tsYXNzbmlraTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9kbm9rbGFzc25pa2ktc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb2Rub2tsYXNzbmlraS1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZXQtcG9ja2V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2V0LXBvY2tldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpa2lwZWRpYS13OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2lraXBlZGlhLXc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYWZhcmk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zYWZhcmk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaHJvbWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaHJvbWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlZm94OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlyZWZveDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9wZXJhOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb3BlcmE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbnRlcm5ldC1leHBsb3JlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWludGVybmV0LWV4cGxvcmVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHY6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbGV2aXNpb246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZWxldmlzaW9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29udGFvOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29udGFvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tNTAwcHg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci01MDBweDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFtYXpvbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFtYXpvbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLXBsdXMtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGVuZGFyLXBsdXMtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLW1pbnVzLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYWxlbmRhci1taW51cy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItdGltZXMtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGVuZGFyLXRpbWVzLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci1jaGVjay1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FsZW5kYXItY2hlY2stbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluZHVzdHJ5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5kdXN0cnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXAtcGluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFwLXBpbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1zaWduczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hcC1zaWduczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFwLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50aW5nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tbWVudGluZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnRpbmctbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbW1lbnRpbmctbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXp6OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91eno7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aW1lbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZpbWVvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmxhY2stdGllOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmxhY2stdGllOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9udGljb25zOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9udGljb25zOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVkZGl0LWFsaWVuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVkZGl0LWFsaWVuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWRnZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVkZ2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVkaXQtY2FyZC1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jcmVkaXQtY2FyZC1hbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2RpZXBpZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZGllcGllOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9keDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1vZHg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3J0LWF3ZXNvbWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb3J0LWF3ZXNvbWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2I6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wcm9kdWN0LWh1bnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wcm9kdWN0LWh1bnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taXhjbG91ZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1peGNsb3VkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2NyaWJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2NyaWJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF1c2UtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGF1c2UtY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF1c2UtY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXVzZS1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0b3AtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RvcC1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9wLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RvcC1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWJhZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNob3BwaW5nLWJhZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWJhc2tldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNob3BwaW5nLWJhc2tldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhc2h0YWc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYXNodGFnOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmx1ZXRvb3RoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmx1ZXRvb3RoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmx1ZXRvb3RoLWI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ibHVldG9vdGgtYjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlcmNlbnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wZXJjZW50OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0bGFiOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2l0bGFiOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td3BiZWdpbm5lcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdwYmVnaW5uZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cGZvcm1zOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd3Bmb3JtczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmlyYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmlyYTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuaXZlcnNhbC1hY2Nlc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11bml2ZXJzYWwtYWNjZXNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2hlZWxjaGFpci1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aGVlbGNoYWlyLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1ZXN0aW9uLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXVlc3Rpb24tY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibGluZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJsaW5kOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXVkaW8tZGVzY3JpcHRpb246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hdWRpby1kZXNjcmlwdGlvbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZvbHVtZS1jb250cm9sLXBob25lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdm9sdW1lLWNvbnRyb2wtcGhvbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icmFpbGxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnJhaWxsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFzbC1pbnRlcnByZXRpbmc6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW1lcmljYW4tc2lnbi1sYW5ndWFnZS1pbnRlcnByZXRpbmc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kZWFmbmVzczpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taGFyZC1vZi1oZWFyaW5nOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1kZWFmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGVhZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsaWRlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2xpZGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nbGlkZS1nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2xpZGUtZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ25pbmc6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ24tbGFuZ3VhZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaWduLWxhbmd1YWdlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG93LXZpc2lvbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvdy12aXNpb247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFkZW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12aWFkZW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWFkZW8tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmlhZGVvLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNuYXBjaGF0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc25hcGNoYXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbmFwY2hhdC1naG9zdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNuYXBjaGF0LWdob3N0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc25hcGNoYXQtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGllZC1waXBlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpZWQtcGlwZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJzdC1vcmRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpcnN0LW9yZGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teW9hc3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15b2FzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZW1laXNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoZW1laXNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wbHVzLWNpcmNsZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsdXMtb2ZmaWNpYWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nb29nbGUtcGx1cy1vZmZpY2lhbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1mb250LWF3ZXNvbWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb250LWF3ZXNvbWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kc2hha2UtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmRzaGFrZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtb3BlbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmVsb3BlLW9wZW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbnZlbG9wZS1vcGVuLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbnZlbG9wZS1vcGVuLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5vZGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saW5vZGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hZGRyZXNzLWJvb2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hZGRyZXNzLWJvb2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hZGRyZXNzLWJvb2stbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFkZHJlc3MtYm9vay1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmNhcmQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkZHJlc3MtY2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFkZHJlc3MtY2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZjYXJkLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkZHJlc3MtY2FyZC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYWRkcmVzcy1jYXJkLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXItY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXItY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2VyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1iYWRnZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWlkLWJhZGdlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJpdmVycy1saWNlbnNlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1jYXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaWQtY2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyaXZlcnMtbGljZW5zZS1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1pZC1jYXJkLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pZC1jYXJkLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdW9yYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXF1b3JhOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnJlZS1jb2RlLWNhbXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mcmVlLWNvZGUtY2FtcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRlbGVncmFtOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGVsZWdyYW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci00OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlcjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItZnVsbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoZXJtb21ldGVyLWZ1bGw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci0zOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci10aHJlZS1xdWFydGVyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItMjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGhlcm1vbWV0ZXItaGFsZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoZXJtb21ldGVyLWhhbGY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci0xOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10aGVybW9tZXRlci1xdWFydGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGhlcm1vbWV0ZXItcXVhcnRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLTA6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoZXJtb21ldGVyLWVtcHR5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGhlcm1vbWV0ZXItZW1wdHk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG93ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaG93ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXRodHViOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zMTU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdGg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXRoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG9kY2FzdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBvZGNhc3Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctbWF4aW1pemU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aW5kb3ctbWF4aW1pemU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctbWluaW1pemU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aW5kb3ctbWluaW1pemU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctcmVzdG9yZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdpbmRvdy1yZXN0b3JlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGltZXMtcmVjdGFuZ2xlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS13aW5kb3ctY2xvc2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aW5kb3ctY2xvc2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lcy1yZWN0YW5nbGUtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93LWNsb3NlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aW5kb3ctY2xvc2UtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbmRjYW1wOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmFuZGNhbXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncmF2OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ3JhdjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV0c3k6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ldHN5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW1kYjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWltZGI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYXZlbHJ5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmF2ZWxyeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVlcmNhc3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lZXJjYXN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWljcm9jaGlwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWljcm9jaGlwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc25vd2ZsYWtlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zbm93Zmxha2UtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1cGVycG93ZXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3VwZXJwb3dlcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cGV4cGxvcmVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd3BleHBsb3JlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZXR1cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1lZXR1cDsgfVxuIiwiLy8gU2NyZWVuIFJlYWRlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnNyLW9ubHkgeyBAaW5jbHVkZSBzci1vbmx5KCk7IH1cbi5zci1vbmx5LWZvY3VzYWJsZSB7IEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7IH1cbiIsIi8qdmFyaWFibGVzICovXG4kaGVhZGVyLWJhY2tncm91bmQ6ICMwNzJjNDM7XG4kZm9vdGVyLWJhY2tncm91bmQ6ICMwNzJjNDM7XG4kZGl2aWRlci1iYWNrZ3JvdW5kOiAjNjNjMTUxO1xuJHNlY29uZGFyeS1kaXZpZGVyLWJhY2tncm91bmQ6ICMwYjM1NGU7XG5cbiRib2R5LWJhY2tncm91bmQ6ICNlYWVlZjE7XG4kY2FyZC1iYWNrZ3JvdW5kOiAjZmZmO1xuJG1lbnUtaG92ZXItYmFja2dyb3VuZDogIzgyY2I1MTtcbiRtZW51LWJhY2tncm91bmQ6ICRkaXZpZGVyLWJhY2tncm91bmQ7XG5cbiRmb250LXN0YWNrOiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcbiRtZW51LWNvbG9yOiAjZmZmO1xuJG1lbnUtZm9udC1zaXplOiAxNHB4O1xuJHRleHQtc29mdC1jb2xvcjogIzc3NztcbiR0ZXh0LWhhcmQtY29sb3I6ICMyMjI7XG4kdGV4dC10aXRsZS1jb2xvcjogIzU1NTtcbiRsaW5rLWNvbG9yOiAjMTg2MjlkO1xuJHBvbGwtYmFyLWNvbG9yOiAjNjNjMTUxO1xuXG4kbWVzc2FnZS1pbmZvLWJhY2tncm91bmQ6ICMxMTZkYjM7XG4kbWVzc2FnZS1lcnJvci1iYWNrZ3JvdW5kOiAjZjQ0MzM2O1xuJG1lc3NhZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kOiAjNGNhZjUwO1xuXG4kdGFicy1iYWNrZ3JvdW5kOiAjYzVjNGM0O1xuJHRhYnMtZm9udC1jb2xvcjogJHRleHQtaGFyZC1jb2xvcjtcbiR0YWJzLWNvbnRlbnQtYmFja2dyb3VuZDogI2M1YzRjNDtcblxuJHZvdGluZy1ib3gtYmFja2dyb3VuZDogI2Y3ZjdmNzsgXG4kdm90aW5nLWJveC1ib3JkZXI6ICNkZWRlZGU7IFxuJHZvdGluZy1ib3gtdm90ZS1jb2xvcjogJGhlYWRlci1iYWNrZ3JvdW5kOyBcbiR2b3RpbmctYm94LXZvdGVkLWNvbG9yOiAkZGl2aWRlci1iYWNrZ3JvdW5kOyBcblxuJGJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQ6ICNkZWRlZGU7XG4kYnV0dG9uLWRlZmF1bHQtZm9udC1jb2xvcjogJHRleHQtaGFyZC1jb2xvcjtcbiRidXR0b24taGlnaGxpZ2h0LWJhY2tncm91bmQ6ICMxMTZkYjM7XG4kYnV0dG9uLWhpZ2hsaWdodC1mb250LWNvbG9yOiAjZGVkZWRlO1xuXG4kZm9ybS13aWRnZXRzLWRlZmF1bHQtYmFja2dyb3VuZDogI2ZmZjtcbiRmb3JtLXdpZGdldHMtZGVmYXVsdC1ib3JkZXI6IDEuNXB4ICR0ZXh0LWhhcmQtY29sb3Igc29saWQ7XG4kZm9ybS13aWRnZXRzLWRlZmF1bHQtZm9udC1jb2xvcjogJHRleHQtaGFyZC1jb2xvcjtcblxuJG1vZHVsZS1ib3JkZXItY29sb3I6ICRzZWNvbmRhcnktZGl2aWRlci1iYWNrZ3JvdW5kO1xuXG4kYnJlYWs6IDEyO1xuJHRvdGFsLWNvbHVtbnM6IDEyO1xuXG4vKiBicmVha3BvaW50cyAqL1xuJGRlc2t0b3AtbGFyZ2U6IDEyMDBweDtcbiRkZXNrdG9wLW1lZGl1bTogOTcwcHggMTIwMHB4O1xuJG1vYmlsZS1sYXJnZTogNzY4cHggOTcwcHg7XG4kbW9iaWxlLXRhYmxldC13aWR0aDogNzY4cHg7XG4kbm9uLW1vYmlsZS10YWJsZXQ6IG1pbi13aWR0aCAkbW9iaWxlLXRhYmxldC13aWR0aCArIDE7XG4kbW9iaWxlLXNtYWxsOiBtYXgtd2lkdGggJG1vYmlsZS10YWJsZXQtd2lkdGg7IiwiQG1peGluIGNsZWFyX2xpc3Rfc3R5bGUge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwcHg7XG4gICAgcGFkZGluZzogMDtcbn0iLCIubWFpbi1zZWN0aW9uIC5jYWxlbmRhcl9tb250aCB0YWJsZSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB0aCB7XG4gICAgcGFkZGluZzogMjBweCAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBjb2xvcjogIzU1NTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICM1NTU7XG4gIH1cbiAgdGQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNkNWU4ZjE7XG4gICAgICAgIGNvbG9yOiAjMTI1YTk1O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgICYub3RoZXJfbW9udGggYTpob3ZlciwgJi50b2RheSBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNkNWU4ZjE7XG4gICAgICBjb2xvcjogIzEyNWE5NTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gICAgYTphY3RpdmUsICYub3RoZXJfbW9udGggYTphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2QxZTNlZTtcbiAgICAgIGNvbG9yOiAjM2Q3Y2IxO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgICAmLnRvZGF5IGEge1xuICAgICAgJjphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDFlM2VlO1xuICAgICAgICBjb2xvcjogIzNkN2NiMTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2QxZTNlZTtcbiAgICAgIGNvbG9yOiAjM2Q3Y2IxO1xuICAgIH1cbiAgICAmLm90aGVyX21vbnRoIGEge1xuICAgICAgYmFja2dyb3VuZDogI2VlZTtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgIH1cbiAgfVxufVxuXG4vKiBEQVRFIFBJQ0tFUiAqL1xuXG4udWktZGF0ZXBpY2tlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ0NDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAycHggMnB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIC1tb3otYm94LXNoYWRvdzogMnB4IDJweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogI2ZmZjtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIuXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBub25lO1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxM3B4O1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogMTNweDtcbiAgICBib3JkZXItcmFkaXVzOiAxM3B4O1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY4YTFjNjtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxufVxuXG4udWktZGF0ZXBpY2tlci1wcmV2IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi51aS1kYXRlcGlja2VyLW5leHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi51aS1kYXRlcGlja2VyLXRpdGxlIHtcbiAgcGFkZGluZzogNXB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHtcbiAgbWFyZ2luOiAwO1xuICB0aCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBjb2xvcjogIzk5OTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgdGQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0NDQ7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzU1NTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2OGExYzY7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzNkN2NiMTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi51aS1kYXRlcGlja2VyLWN1cnJlbnQtZGF5IGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY4YTFjNjtcbiAgICAgIGJvcmRlci1jb2xvcjogIzNkN2NiMTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgICAmLnVpLWRhdGVwaWNrZXItb3RoZXItbW9udGggYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjM2IzYjNiO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0NDQ7XG4gICAgICBjb2xvcjogIzc3NztcbiAgICB9XG4gIH1cbn1cblxuLyogSU5MSU5FIERBVEUgUElDS0VSICovXG5cbi51aS1kYXRlcGlja2VyLWlubGluZSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgLW1vei1ib3gtc2hhZG93OiBub25lO1xuICAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGQgYSB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDVweDtcbiAgICB9XG4gIH1cbn1cblxuLyogU0lERUJBUiBEQVRFIFBJQ0tFUiAqL1xuXG4uc2lkZWJhciB7XG4gIC51aS1kYXRlcGlja2VyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG4gIC51aS1kYXRlcGlja2VyLWhlYWRlciBhIHtcbiAgICBwYWRkaW5nOiA1cHggMTVweDtcbiAgfVxuICAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB7XG4gICAgdGgsIHRkIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICB9XG4gIH1cbn0iLCJmb3JtIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB6b29tOiAxO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIuXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDEzMHB4O1xuICAgICAgJi5yZXF1aXJlZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgIH1cbiAgICAgIHNtYWxsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBpbnB1dCB7XG4gICAgd2lkdGg6IDU1JTtcbiAgICAmW3R5cGU9Y2hlY2tib3hdLCAmW3R5cGU9cmFkaW9dIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICB0ZXh0YXJlYSB7XG4gICAgd2lkdGg6IDUyNHB4O1xuICAgIGhlaWdodDogMjAwcHg7XG4gIH1cbiAgdGFibGUge1xuICAgIG1hcmdpbjogMTBweCAwO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICB0aCB7XG4gICAgICBwYWRkaW5nOiAycHggNXB4IDJweCAwO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBjb2xvcjogIzc3NztcbiAgICB9XG4gICAgdGQge1xuICAgICAgcGFkZGluZzogMnB4IDVweCAycHggMDtcbiAgICB9XG4gIH1cbiAgLnN1Ym1pdCB7XG4gICAgYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICAuYWx0X2J1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICBidXR0b24uZGVsZXRlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLyogSEVMUCBURVhUICovXG5cbi5oZWxwX3RleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgY29sb3I6ICM5OTk7XG4gIGEge1xuICAgIGNvbG9yOiAjNjhhMWM2O1xuICB9XG59XG5cbmZvcm0gcCAuaGVscF90ZXh0IHtcbiAgbWFyZ2luOiA1cHggMCAwIDEzMHB4O1xufVxuXG4vKiBFUlJPUlMgKi9cblxuLmVycm9ycywgLmVycm9yIHtcbiAgY29sb3I6ICNhZjQ5NDk7XG59XG5cbi5lcnJvcmxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogI2FmNDk0OTtcbn1cblxuZm9ybSB7XG4gIHAgLmVycm9ycyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBjb2xvcjogI2FmNDk0OTtcbiAgfVxuICAuZXJyb3JsaXN0IHtcbiAgICBtYXJnaW4tbGVmdDogMTMwcHg7XG4gIH1cbn1cblxuLyogSU5QVVRTICovXG5cbmlucHV0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiA3cHg7XG4gIGNvbG9yOiAkZm9ybS13aWRnZXRzLWRlZmF1bHQtZm9udC1jb2xvcjtcbiAgYm9yZGVyOiAkZm9ybS13aWRnZXRzLWRlZmF1bHQtYm9yZGVyO1xuICBiYWNrZ3JvdW5kOiAkZm9ybS13aWRnZXRzLWRlZmF1bHQtYmFja2dyb3VuZDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTVweDtcbiAgY29sb3I6ICM1NTU7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogN3B4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmJiO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBmb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gIGNvbG9yOiAjNTU1O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAmOmZvY3VzIHtcbiAgICBwYWRkaW5nOiA2cHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzk5OTtcbiAgfVxufVxuXG5pbnB1dCB7XG4gICY6Zm9jdXMge1xuICAgIHBhZGRpbmc6IDZweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjOTk5O1xuICB9XG4gICZbdHlwZT1maWxlXSB7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgLW1vei1ib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbnRleHRhcmVhIHtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG59XG5cbi8qIEJVVFRPTlMgKi9cblxuYnV0dG9uIHtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IGluaXRpYWw7XG4gIGNvbG9yOiAkYnV0dG9uLWhpZ2hsaWdodC1mb250LWNvbG9yO1xuICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWhpZ2hsaWdodC1iYWNrZ3JvdW5kO1xufVxuXG4vKiBDVVNUT00gSU5QVVRTICovXG5cbiNpZF9wb2ludCB7XG4gIG1hcmdpbjogMTBweCAwIDAgMTMwcHg7XG59XG5cbiNpZF9wb2ludF9tYXBfd3JhcHBlciB7XG4gIG1hcmdpbjogMCAwIDAgMTMwcHg7XG59XG5cbiNpZF9wb2ludF9tYXBfY2VudGVyIHtcbiAgd2lkdGg6IDIzcHg7XG4gIGhlaWdodDogMzJweDtcbiAgYmFja2dyb3VuZDogdXJsKC4uLy4uL2ltYWdlcy9tYXBzL21hcmtlci5wbmcpIG5vLXJlcGVhdDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1pbmRlbnQ6IC0xMDAwcHg7XG59XG5cbi8qIEFVVE8gQ09NUExFVEUgKi9cblxuLnVpLWF1dG9jb21wbGV0ZSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogNXB4IDAgMCAwO1xuICBwYWRkaW5nOiA3cHg7XG4gIHdpZHRoOiAzNTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgY29sb3I6ICM1NTU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMnB4IDJweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAtbW96LWJveC1zaGFkb3c6IDJweCAycHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGxpIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDNweCA1cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICM3Nzc7XG4gIH1cbiAgLnVpLXN0YXRlLWhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGQ0NDO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgfVxufVxuXG4vKiBTSURFQkFSIElOUFVUICovXG5cbmRpdi5zaWRlYmFyIHtcbiAgdGV4dGFyZWEge1xuICAgIHdpZHRoOiA5NSU7XG4gICAgaGVpZ2h0OiAxMTBweDtcbiAgfVxuICBzZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8qIEZJTFRFUkVEIFNFTEVDVCAqL1xuXG5mb3JtIC5maWx0ZXJlZC1zZWxlY3Qge1xuICAuc2VsZWN0b3ItYXZhaWxhYmxlLCAuc2VsZWN0b3ItY2hvc2VuIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbiAgLnNlbGVjdG9yLWF2YWlsYWJsZSBoMiwgLnNlbGVjdG9yLWNob3NlbiBoMiB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgY29sb3I6ICM3Nzc7XG4gIH1cbiAgLnNlbGVjdG9yLWZpbHRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGlucHV0IHtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIHdpZHRoOiAyNThweDtcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBwYWRkaW5nOiA0cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAudWktYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgfVxuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAzcHggMTBweCAzcHggMjVweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYXJyb3dzL2dyZXlfcmlnaHQuZ2lmKSAxMHB4IDUwJSBuby1yZXBlYXQ7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICMxODYyOWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC51aS1zdGF0ZS1hY3RpdmUgYSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9hcnJvd3MvZ3JleV9kb3duLmdpZik7XG4gICAgY29sb3I6ICM3Nzc7XG4gIH1cbiAgLnVpLWFjY29yZGlvbi1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlO1xuICAgIHRhYmxlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRoIHtcbiAgICAgICAgcGFkZGluZzogMnB4IDA7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgfVxuICAgICAgdGQge1xuICAgICAgICBwYWRkaW5nOiAycHggMDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgY29sb3I6ICM1NTU7XG4gICAgICB9XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9XG4gICAgICBzbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnBhZ2luYXRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBhLCBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDAgMXB4IDAgMDtcbiAgICBwYWRkaW5nOiA4cHggMjVweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEzcHg7XG4gICAgY29sb3I6ICM3Nzc7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAjZWVlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGNlbnRlciB0b3AsIGNlbnRlciBib3R0b20sIGZyb20oI2VlZSksIHRvKCNjY2MpKTtcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AgY2VudGVyLCAjZWVlLCAjY2NjKTtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcbiAgICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcbiAgfVxuICBhOmhvdmVyLCBzcGFuOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgYTphY3RpdmUge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDAgMCA1cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB9XG4gIHNwYW4ge1xuICAgICY6YWN0aXZlIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMCA1cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgICAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICB9XG4gICAgY29sb3I6ICM5OTk7XG4gICAgYmFja2dyb3VuZDogI2VlZTtcbiAgICBib3JkZXItY29sb3I6ICNkZGQ7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgIC1tb3otYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICAubmV4dCB7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcbiAgICBib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcbiAgfVxuICAucHJldmlvdXMge1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogNHB4IDAgMCA0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDAgMCA0cHg7XG4gIH1cbn0iLCIubW9kdWxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJG1vZHVsZS1ib3JkZXItY29sb3I7XG4gIGgyIHtcbiAgICBtYXJnaW46IDA7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDFweDtcbiAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstY29sb3I7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgY29sb3I6ICM3Nzc7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgICYubGFzdCBhIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstY29sb3I7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbiAgaDMge1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICB9XG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIGxpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1vZHVsZS1ib3JkZXItY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgJi5sYXN0IHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaW5rLWNvbG9yO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgICAgaW1nLnRodW1ibmFpbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMTBweDtcbiAgICAgIH1cbiAgICAgIHNtYWxsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHNtYWxsIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgICBzdHJvbmcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBjb2xvcjogIzc3NztcbiAgICAgIH1cbiAgICB9XG4gICAgJi5sYXN0IGEge1xuICAgICAgJi5idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAzcHggMTVweDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmYgdXJsKC4uL2ltYWdlcy9idXR0b25fYmcuZ2lmKSBsZWZ0IGJvdHRvbSByZXBlYXQteDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgICAgICAgY29sb3I6ICM3Nzc7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuICAgICAgJjpob3Zlci5idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbGluay1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgY29sb3I6ICRtZW51LWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ib2R5IHtcbiAgICBwYWRkaW5nOiA5cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoMyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBtYXJnaW46IDEwcHggMDtcbiAgICB9XG4gICAgLnRodW1ibmFpbCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW46IDAgMCAxMHB4IDEwcHg7XG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAmLmNpdGUge1xuICAgICAgICAgIG1hcmdpbjogLTVweCAwIDAgMDtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtc29mdC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9vdGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtb2R1bGUtYm9yZGVyLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAkdGV4dC1zb2Z0LWNvbG9yO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubW9kdWxlX3Bob3RvcyB7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xuICBib3JkZXI6IG5vbmU7XG4gIGgyIGEge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6ICM1NTU7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICBjb2xvcjogIzU1NTtcbiAgICB9XG4gIH1cbiAgdWwge1xuICAgIG1hcmdpbjogMTFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHRleHQtc29mdC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb290ZXIge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkdGV4dC1zb2Z0LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4ubW9kdWxlIC5yYWRhciB7XG4gIGEge1xuICAgIGltZyB7XG4gICAgICBtYXJnaW46IDEwcHggMCAxMHB4IDJweDtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRtb2R1bGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgICAmOmhvdmVyIGltZyB7XG4gICAgICBwYWRkaW5nOiA2cHg7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiAkbGluay1jb2xvcjtcbiAgICB9XG4gIH1cbiAgdWwgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBzbWFsbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGNvbG9yOiAkdGV4dC1zb2Z0LWNvbG9yO1xuICAgIH1cbiAgfVxufSIsIi5pbmxpbmUge1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMGYxZjk7XG59XG5cbi5pbmxpbmUtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAxODBweDtcbiAgY2xlYXI6IGxlZnQ7XG59XG5cbi5pbmxpbmUtcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICB3aWR0aDogMTgwcHg7XG4gIGNsZWFyOiByaWdodDtcbn1cblxuLmlubGluZSB7XG4gIHAsIG9sLCB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIH1cbiAgLnR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGNvbG9yOiAjNjhhMWM2O1xuICB9XG4gIGgzLCAudGl0bGUsIC5uYW1lLCAudG9waWMge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gICAgY29sb3I6ICMzOWI0NGE7XG4gIH1cbiAgLm1vcmUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG4gIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cbiAgZm9ybSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAuc3VibWl0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZzogOHB4IDI1cHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgICAgLmFsdF9idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBjb2xvcjogIzY4YTFjNjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyogQVVESU8gQ0xJUCBTRVQgKi9cblxuLmlubGluZV9hdWRpb19jbGlwX3NldCAuYXVkaW9fY2xpcF9saXN0IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxufVxuXG4vKiBCVVNJTkVTUyBBRCAqL1xuXG4uYWRfaW5saW5lIHtcbiAgaDYge1xuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICB9XG4gIC50aHVtYm5haWwge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxufVxuXG4vKiBDQVRFR09SWSAqL1xuXG4uY2F0ZWdvcnlfaW5saW5lIC50aHVtYm5haWwge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8qIENIQVQgKi9cblxuLmlubGluZV9jaGF0IGZvcm0ge1xuICBtYXJnaW46IDEwcHggMCAwIDA7XG4gIHAge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8qIERPQ1VNRU5UICovXG5cbi5pbmxpbmVfZG9jdW1lbnQge1xuICAudGh1bWJuYWlsIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cbiAgLmRvd25sb2FkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBhIHtcbiAgICAgIHBhZGRpbmc6IDNweCAxMHB4O1xuICAgICAgYmFja2dyb3VuZDogIzk5OTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA5cHg7XG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDlweDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMzI2YTk5O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBFTUJFRERFRCAqL1xuXG4uaW5saW5lX2VtYmVkZGVkIHtcbiAgd2lkdGg6IDMwMHB4O1xuICAuY2FwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxufVxuXG4vKiBFVkVOVCBUSU1FICovXG5cbi5pbmxpbmVfZXZlbnRfdGltZSAuZXZlbnRfaW5mbyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgY29sb3I6ICM1NTU7XG4gIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cbn1cblxuLyogRkVBVFVSRSAqL1xuXG4uaW5saW5lX2ZlYXR1cmUgLnRodW1ibmFpbCB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLyogT04gVEhFIFNUUkVFVCAqL1xuXG4uaW5saW5lX29udGhlc3RyZWV0IHtcbiAgLnF1ZXN0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICBjb2xvcjogIzMzMztcbiAgfVxuICAudGh1bWJuYWlsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIH1cbiAgICBjaXRlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgIH1cbiAgfVxufVxuXG4vKiBNT1ZJRSAqL1xuXG4uaW5saW5lX21vdmllIC50aHVtYm5haWwge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi8qIFBIT1RPICovXG5cbi5pbmxpbmVfcGhvdG8ge1xuICAudGh1bWJuYWlsIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cbiAgLmJ5bGluZSwgLmNyZWRpdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAjNzc3O1xuICB9XG4gICYuaW5saW5lX3dlaWdodF9sZWFkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC5waG90b19tZXRhIHtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgfVxuICB9XG59XG5cbi8qIFBPRENBU1QgRVBJU09ERSAqL1xuXG4uaW5saW5lX3BvZGNhc3Qge1xuICAuc2hvdyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgYSB7XG4gICAgICBjb2xvcjogIzk5OTtcbiAgICB9XG4gIH1cbiAgLmVwaXNvZGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICB9XG4gIC5wbGF5ZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLyogUE9MTCAqL1xuXG4uaW5saW5lX3BvbGwge1xuICAucXVlc3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgY29sb3I6ICM1NTU7XG4gIH1cbiAgZm9ybSB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAjNTU1O1xuICAgIGxpIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxufVxuXG4vKiBQT0xMIFJFU1VMVFMgKi9cblxuLmlubGluZV9wb2xsX3Jlc3VsdHMge1xuICAucXVlc3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGNvbG9yOiAjNTU1O1xuICAgIGEge1xuICAgICAgY29sb3I6ICMzOWI0NGE7XG4gICAgfVxuICB9XG4gIC5yZXN1bHRzIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIC50b3RhbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgY29sb3I6ICM2OGExYzY7XG4gICAgICB9XG4gICAgICAuYmFyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY5YzY3YTtcbiAgICAgICAgLnBlcmNlbnQge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IC0ycHg7XG4gICAgICAgICAgcmlnaHQ6IC0zNXB4O1xuICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIGNvbG9yOiAjMzliNDRhO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRvdGFsX3ZvdGVzIHtcbiAgICBjb2xvcjogIzY4YTFjNjtcbiAgfVxufVxuXG4uaW5saW5lX3dlaWdodF9sZWFkLmlubGluZV9wb2xsX3Jlc3VsdHMgLnF1ZXN0aW9uLCAuaW5saW5lX3dlaWdodF9sYXJnZS5pbmxpbmVfcG9sbF9yZXN1bHRzIC5xdWVzdGlvbiB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG59XG5cbi5pbmxpbmVfd2VpZ2h0X2xlYWQuaW5saW5lX3BvbGxfcmVzdWx0cyAucmVzdWx0cywgLmlubGluZV93ZWlnaHRfbGFyZ2UuaW5saW5lX3BvbGxfcmVzdWx0cyAucmVzdWx0cyB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbn1cblxuLmlubGluZV93ZWlnaHRfbGVhZC5pbmxpbmVfcG9sbF9yZXN1bHRzIC5yZXN1bHRzIGxpLCAuaW5saW5lX3dlaWdodF9sYXJnZS5pbmxpbmVfcG9sbF9yZXN1bHRzIC5yZXN1bHRzIGxpIHtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG59XG5cbi5pbmxpbmVfd2VpZ2h0X2xlYWQuaW5saW5lX3BvbGxfcmVzdWx0cyAucmVzdWx0cyBsaSAuYmFyLCAuaW5saW5lX3dlaWdodF9sYXJnZS5pbmxpbmVfcG9sbF9yZXN1bHRzIC5yZXN1bHRzIGxpIC5iYXIge1xuICBoZWlnaHQ6IDI1cHg7XG59XG5cbi5pbmxpbmVfd2VpZ2h0X2xlYWQuaW5saW5lX3BvbGxfcmVzdWx0cyAucmVzdWx0cyBsaSAuYmFyIC5wZXJjZW50LCAuaW5saW5lX3dlaWdodF9sYXJnZS5pbmxpbmVfcG9sbF9yZXN1bHRzIC5yZXN1bHRzIGxpIC5iYXIgLnBlcmNlbnQge1xuICB0b3A6IDJweDtcbn1cblxuLyogUkVDVVJSSU5HIElOTElORSAqL1xuXG4ucmVjdXJyaW5nX2lubGluZSB7XG4gIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICBjb2xvcjogIzU1NTtcbiAgfVxuICB1bCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICB9XG4gIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi8qIFRFWFQgSU5JTkUgKi9cblxuLnRleHRfaW5saW5lIHVsIHtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxufVxuXG4vKiBWSURFTyAqL1xuXG4uaW5saW5lX3ZpZGVvIHtcbiAgLnRodW1ibmFpbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG4gICYuaW5saW5lX3dlaWdodF9sZWFkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC5jYXB0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgfVxuICB9XG4gICYuaW5saW5lX3dlaWdodF9sYXJnZSAudGl0bGUsICYuaW5saW5lX3dlaWdodF9tZWRpdW0gLnRpdGxlIHtcbiAgICBtYXJnaW46IDE1cHggMCA1cHggMDtcbiAgfVxufVxuXG4vKiBWSURFTyBTRVQgKi9cblxuLmlubGluZV92aWRlb19zZXQgLnRodW1ibmFpbCB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLyogV0VJR0hUOiBMRUFEICovXG5cbi5pbmxpbmVfd2VpZ2h0X2xlYWQge1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIH1cbiAgLnR5cGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgdGV4dGFyZWEge1xuICAgIHdpZHRoOiA2MjhweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gIH1cbn1cblxuLyogV0VJR0hUOiBMQVJHRSAqL1xuXG4uaW5saW5lX3dlaWdodF9sYXJnZSB7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAudGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgfVxuICB0ZXh0YXJlYSB7XG4gICAgd2lkdGg6IDYyOHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgfVxufVxuXG4vKiBXRUlHSFQ6IE1FRElVTSAqL1xuXG4uaW5saW5lX3dlaWdodF9tZWRpdW0ge1xuICB3aWR0aDogNDEwcHg7XG4gIHRleHRhcmVhIHtcbiAgICB3aWR0aDogNDAwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICB9XG59IiwiLndtZC1wYW5lbCB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIG1hcmdpbi1yaWdodDogMjUlO1xuICB3aWR0aDogNTAlO1xuICBtaW4td2lkdGg6IDUwMHB4O1xufVxuXG4ud21kLWJ1dHRvbi1iYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgem9vbTogMTtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIuXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG4ud21kLXByZXZpZXcge1xuICBtYXJnaW46IDEwcHggMDtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiAxcHggZGFzaGVkICNkZGQ7XG4gIHpvb206IDE7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiLlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICBjbGVhcjogYm90aDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbn1cblxuLndtZC1idXR0b24tcm93IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDA7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGNvbG9yOiAjNzc3O1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCA1cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICM1NTU7XG4gICAgfVxuICAgIGEge1xuICAgICAgY29sb3I6ICM3Nzc7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICAgICYud21kLXNwYWNlciB7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICB9XG4gIH1cbn1cblxuLndtZC1ib2xkLWJ1dHRvbiB7XG4gIGxlZnQ6IDBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IDA7XG59XG5cbi53bWQtaXRhbGljLWJ1dHRvbiB7XG4gIGxlZnQ6IDI1cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0yMHB4IDA7XG59XG5cbi53bWQtc3BhY2VyMSB7XG4gIGxlZnQ6IDUwcHg7XG59XG5cbi53bWQtbGluay1idXR0b24ge1xuICBsZWZ0OiA3NXB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAwO1xufVxuXG4ud21kLXF1b3RlLWJ1dHRvbiB7XG4gIGxlZnQ6IDEwMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjBweCAwO1xufVxuXG4ud21kLWNvZGUtYnV0dG9uIHtcbiAgbGVmdDogMTI1cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IDA7XG59XG5cbi53bWQtaW1hZ2UtYnV0dG9uIHtcbiAgbGVmdDogMTUwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAwO1xufVxuXG4ud21kLXNwYWNlcjIge1xuICBsZWZ0OiAxNzVweDtcbn1cblxuLndtZC1vbGlzdC1idXR0b24ge1xuICBsZWZ0OiAyMDBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IDA7XG59XG5cbi53bWQtdWxpc3QtYnV0dG9uIHtcbiAgbGVmdDogMjI1cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xNDBweCAwO1xufVxuXG4ud21kLWhlYWRpbmctYnV0dG9uIHtcbiAgbGVmdDogMjUwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAwO1xufVxuXG4ud21kLWhyLWJ1dHRvbiB7XG4gIGxlZnQ6IDI3NXB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTgwcHggMDtcbn1cblxuLndtZC1zcGFjZXIzIHtcbiAgbGVmdDogMzAwcHg7XG59XG5cbi53bWQtdW5kby1idXR0b24ge1xuICBsZWZ0OiAzMjVweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwMHB4IDA7XG59XG5cbi53bWQtcmVkby1idXR0b24ge1xuICBsZWZ0OiAzNTBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyMHB4IDA7XG59XG5cbi53bWQtaGVscC1idXR0b24ge1xuICByaWdodDogMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQwcHggMDtcbn1cblxuLndtZC1wcm9tcHQtYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG59XG5cbi53bWQtcHJvbXB0LWRpYWxvZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4O1xuICA+IGRpdiB7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICBmb250LWZhbWlseTogYXJpYWwsIGhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgfVxufVxuXG4ud21kLWVtYmVkLWhlbHAge1xuICBwYWRkaW5nOiAxMHB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1cHg7XG4gIHdpZHRoOiAxODBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDYxLCAxMjQsIDE3Nyk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAwMTtcbiAgdG9wOiAzMHB4O1xuICByaWdodDogMHB4O1xuICBwIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAuMmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cblxuLndtZC1lbWJlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzg4ODtcbiAgcGFkZGluZzogMHB4O1xufVxuXG4udHJ5X2VtYmVkIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gIGJhY2tncm91bmQ6IHVybCguLi8uLi9pbWFnZXMvYXJyb3dzL3doaXRlX3JpZ2h0LmdpZikgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG59XG5cbi5vZW1iZWQge1xuICBtYXJnaW46IDBweCBhdXRvIDFlbSBhdXRvO1xuICBwYWRkaW5nOiAwcHg7XG4gIC5jcmVkaXQge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbn1cblxuLm9lbWJlZC12aWRlbyAuY3JlZGl0LCAub2VtYmVkLXBob3RvIC5jcmVkaXQge1xuICBtYXJnaW46IDBweDtcbiAgcGFkZGluZzogMHB4O1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbi5vZW1iZWQtdmlkZW8gcCBzbWFsbCB7XG4gIGNvbG9yOiAjNzc3O1xufVxuXG4ub2VtYmVkLWxpbmsge1xuICBmbG9hdDogbm9uZTtcbiAgLmNyZWRpdCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICB9XG59XG5cbi53bWQtcHJldmlldyAub2VtYmVkLXZpZGVvIHtcbiAgbWFyZ2luOiAwIGF1dG8gMTBweCBhdXRvO1xuICBwYWRkaW5nOiA3MHB4IDEwcHg7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICBwLCBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuXG5ib2R5LmVudHJ5X2RldGFpbCAud21kLXByZXZpZXcgcCB7XG4gIGJvcmRlci1ib3R0b206IDBweDtcbn1cblxuLmxpc3QgLmNvbW1lbnQgLm9lbWJlZCwgI2NvbW1lbnRfZm9ybSAub2VtYmVkLCAjYW5zd2VycyAub2VtYmVkLCAuY29tbWVudF90ZXh0IC5vZW1iZWQge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMCAwIDEwcHggMTBweDtcbiAgY2xlYXI6IHJpZ2h0O1xufVxuXG4ubGlzdCAuY29tbWVudCAub2VtYmVkLWxpbmssICNjb21tZW50X2Zvcm0gLm9lbWJlZC1saW5rLCAjYW5zd2VycyAub2VtYmVkLWxpbmssIC5jb21tZW50X3RleHQgLm9lbWJlZC1saW5rIHtcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbi5saXN0IC5jb21tZW50IHtcbiAgLm9lbWJlZC12aWRlbyBwLCAub2VtYmVkLXBob3RvIHAge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxufVxuXG4jYW5zd2VycyAubGlzdCB7XG4gIC5vZW1iZWQtdmlkZW8gcCwgLm9lbWJlZC1waG90byBwIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbn1cblxuLmNvbW1lbnRfdGV4dCB7XG4gIHpvb206IDE7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiLlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICBjbGVhcjogYm90aDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbn1cblxuLmdhbGxlcmllcyB7XG4gIC53bWQtcHJldmlldywgLndtZC1idXR0b24tYmFyIHtcbiAgICB3aWR0aDogNjAwcHg7XG4gIH1cbn1cblxuI2NvbW1lbnRfZm9ybSAud21kLWltYWdlLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIC5saXN0IC5jb21tZW50IHVsLCAud21kLXByZXZpZXcgdWwsICNhbnN3ZXJzIHVsIHsgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyBtYXJnaW4tbGVmdDogMTVweDsgfSAqLyIsIi8qIFJFU0VUICovXG4jdG9vbGJhciwgI2hlYWRlciwgI25hdiwgI3N1Ym5hdiwgI2NvbW1lbnRzLCAuc2lkZWJhciwgI2Zvb3RlciB7IGRpc3BsYXk6IG5vbmU7IH1cbiNwYWdlLCAjYm9keSwgI2JvZHkgLndyYXBwZXIsIC5jb250ZW50LCAuY29udGVudF90aXRsZSB7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgbWluLXdpZHRoOiAwOyB9XG4jc3FsX2RlYnVnIHsgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBQT1BVUCBTVFlMRVMgKi9cbmJvZHkgeyBwYWRkaW5nOiAyMHB4ICFpbXBvcnRhbnQ7IGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDsgfVxuXG5mb3JtIHRleHRhcmVhIHsgd2lkdGg6IDQzNXB4OyB9XG5cbi5jb250ZW50X3RpdGxlIHsgcGFkZGluZzogMCAwIDEwcHggMCAhaW1wb3J0YW50OyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDsgfVxuLmNvbnRlbnRfdGl0bGUgaDIgeyBtYXJnaW4tdG9wOiAwOyBmb250LXNpemU6IDIwcHg7IGxpbmUtaGVpZ2h0OiAyNXB4OyB9XG4uY29udGVudF90aXRsZSAuZmVlZCB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLmNvbnRlbnQgeyBwYWRkaW5nOiAyMHB4IDAgIWltcG9ydGFudDsgfSIsIi8qIFBIT1RPUyBBTkQgR0FMTEVSSUVTICovXG5cbmJvZHkuZ2FsbGVyeV9kZXRhaWwge1xuICAjcGFnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzExMTtcbiAgfVxuICAjc3VibmF2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIH1cbiAgI2JvZHkge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICB9XG4gIC5jb250ZW50X3RpdGxlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgaDIge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICAgIHAge1xuICAgICAgY29sb3I6ICM5OTk7XG4gICAgfVxuICAgIGEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICAgIC5iYWNrIGEge1xuICAgICAgY29sb3I6ICM3Nzc7XG4gICAgfVxuICAgIC52b3RlX2JveCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLm9iamVjdF90b29scyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuY29udGVudCB7XG4gICAgd2lkdGg6IDk5MHB4O1xuICB9XG4gIC5saXN0IC5pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIC50aHVtYm5haWwge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuY2FwdGlvbiB7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgY29sb3I6ICNiYmI7XG4gICAgfVxuICB9XG4gICNjb21tZW50cyB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgfVxufVxuXG4uZ2FsbGVyeV9waG90b19kZXRhaWwgLnByZXZpb3VzX25leHQge1xuICBwYWRkaW5nOiAxMHB4O1xuICB3aWR0aDogMzAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpdiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEyMHB4O1xuICB9XG4gIC5wcmV2aW91cyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vaW1hZ2VzL2Fycm93cy9sZXNzX3RoYW4uZ2lmKSAwIDUwJSBuby1yZXBlYXQ7XG4gIH1cbiAgLm5leHQge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uLy4uL2ltYWdlcy9hcnJvd3MvZ3JlYXRlcl90aGFuLmdpZikgMTAwJSA1MCUgbm8tcmVwZWF0O1xuICB9XG4gIC5ub19waG90byB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDMwcHggMTBweCAwIDEwcHg7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIGJhY2tncm91bmQ6ICNlZWU7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogIzc3NztcbiAgfVxuICBhIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLnBob3RvX2dyaWQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAuaXRlbSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwIDEwcHggMTBweCAwO1xuICAgIC50aHVtYm5haWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICAucGhvdG9faW5mbyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG50YWJsZS5waG90b3MgdGQge1xuICBwYWRkaW5nOiAwIDIwcHggMjBweCAwO1xuICB3aWR0aDogMjEwcHg7XG4gIC50aHVtYm5haWwge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gICYubGFzdCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICAuY2FwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgY29sb3I6ICM3Nzc7XG4gIH1cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGNvbG9yOiAjOTk5O1xuICB9XG59XG5cbi8qIEFVRElPICovXG5cbi5hdWRpb19saXN0IC5yZWxhdGVkIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGNvbG9yOiAjOTk5O1xuICBzdHJvbmcge1xuICAgIGNvbG9yOiAjNzc3O1xuICB9XG59XG5cbi5hdWRpb19wbGF5ZXIge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nOiA1cHg7XG4gIHdpZHRoOiA1ODBweDtcbiAgaGVpZ2h0OiAzNXB4O1xuICBiYWNrZ3JvdW5kOiAjZGRkO1xufVxuXG51bC5wbGF5bGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogM3B4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICBsaSB7XG4gICAgbWFyZ2luOiA1cHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYSB7XG4gICAgICBjb2xvcjogIzRlOWJkYTtcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICMxMjVhOTU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBWSURFTyAqL1xuXG52aWRlbyB7XG4gIGJhY2tncm91bmQ6ICMxMTE7XG59XG5cbmJvZHkge1xuICAmLnZpZGVvX2RldGFpbCAudmlkZW8ge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbiAgJi52aWRlb19saXN0ICN2aWRlb19kZXRhaWxzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHBhZGRpbmc6IDEwcHggNXB4IDVweCA1cHg7XG4gICAgcCB7XG4gICAgICAmLmNhcHRpb24ge1xuICAgICAgICBtYXJnaW46IDhweCAwO1xuICAgICAgICBjb2xvcjogIzY2NjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIH1cbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG4gICAgdWwuYnlsaW5lIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDVweCAwIDAgMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGxpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxudWwudmlkZW9fbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMjVweCAwIDAgMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgY29sb3I6ICM2NjY7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmgzICsgdWwudmlkZW9fbGlzdCB7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxudWwudmlkZW9fbGlzdCBsaSB7XG4gIHdpZHRoOiAyMDVweDtcbiAgaGVpZ2h0OiAyNTBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMCAyMXB4IDAgMDtcbiAgJi5sYXN0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgYSB7XG4gICAgJi50aHVtYm5haWwge1xuICAgICAgaW1nIHtcbiAgICAgICAgcGFkZGluZzogNHB4O1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIGltZyB7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMTg2MjlkO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxuICBzcGFuLmRhdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuICAuaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbmRpdi52aWRlb19saXN0IC5pdGVtIC50aHVtYm5haWwge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDEwcHggMCAwO1xufVxuXG4ubW9kdWxlX3ZpZGVvIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTExO1xuICBoMiBhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMTE7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTExO1xuICAgIH1cbiAgfVxuICAuYm9keSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICM2OGExYzY7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiQGltcG9ydCBcIl9taXhpbmdzLnNjc3NcIjtcblxuLmVsbGluZ3Rvbl9tZW51Lm5vLWhvdmVye1xuICAgIHVse1xuICAgICAgICBsaTpob3ZlcntcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5lbGxpbmd0b25fbWVudSB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICB1bCB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyX2xpc3Rfc3R5bGU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRtZW51LWJhY2tncm91bmQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogJG1lbnUtY29sb3I7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJG1lbnUtZm9udC1zaXplO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6MzJweDtcbiAgICAgICAgICAgIHBhZGRpbmc6MCAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIGxpe1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJG1lbnUtYmFja2dyb3VuZDtcbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBsaXtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxpOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtZW51LWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRub24tbW9iaWxlLXRhYmxldCl7XG4gICAgICAgIC5wdWxsLXJpZ2h0e1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICAgIGhlaWdodDogMmVtO1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgICAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICAgICAgLmN1cnJlbnQtbWVudS1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG1lbnUtYmFja2dyb3VuZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6MTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6JG1lbnUtYmFja2dyb3VuZDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjEyMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjEwcHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDpub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MjAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS1iYWNrZ3JvdW5kO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDowO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDoxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGk6aG92ZXIgPiB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnNvY2lhbC1uZXR3b3Jrc3tcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGNvbG9yOiAkbWVudS1jb2xvcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgYXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBpe1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5vbi1tb2JpbGUtdGFibGV0KXtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRvcC1tZW51LWJhY2tncm91bmR7XG4gICAgLmVsbGluZ3Rvbl9tZW51X3RvZ2dsZXtcbiAgICAgICAgYmFja2dyb3VuZDogJG1lbnUtYmFja2dyb3VuZDtcbiAgICB9XG59XG5cbi5tYWluLW1lbnUtYmFja2dyb3VuZHtcbiAgICAuZWxsaW5ndG9uX21lbnVfdG9nZ2xle1xuICAgICAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWRpdmlkZXItYmFja2dyb3VuZDtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgfVxufVxuXG4uZWxsaW5ndG9uX21lbnVfdG9nZ2xle1xuICAgIG91dGxpbmU6IDA7XG4gICAgY29sb3I6ICRtZW51LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBib3JkZXItcmFkaXVzOiAwLjJlbTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCBibGFjaztcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtb2JpbGUtc21hbGwpe1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QStEQUE7OztHQUdHO0FHSEg7Z0NBQ2dDO0FsRUdoQyxPQUFPLENBQUMscURBQUk7QWtFRFosVUFBVTtFQUNSLFdBQVcsRUFBRSxhQUFhO0VBQzFCLEdBQUcsRUFBRSx1RUFBZ0U7RUFDckUsR0FBRyxFQUFFLDhFQUF1RSxDQUFDLDJCQUEyQixFQUN0Ryx5RUFBa0UsQ0FBQyxlQUFlLEVBQ2xGLHdFQUFpRSxDQUFDLGNBQWMsRUFDaEYsdUVBQWdFLENBQUMsa0JBQWtCLEVBQ25GLDBGQUFtRixDQUFDLGFBQWE7RUFFbkcsV0FBVyxFQUFFLE1BQU07RUFDbkIsVUFBVSxFQUFFLE1BQU07O0FDVnBCLEFBQUEsR0FBRyxDQUFnQjtFQUNqQixPQUFPLEVBQUUsWUFBWTtFQUNyQixJQUFJLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBNkMsQ0FBQyxXQUFXO0VBQ3BGLFNBQVMsRUFBRSxPQUFPO0VBQ2xCLGNBQWMsRUFBRSxJQUFJO0VBQ3BCLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUyxHQUVuQzs7QUNSRCw4REFBOEQ7QUFDOUQsQUFBQSxNQUFNLENBQWdCO0VBQ3BCLFNBQVMsRUFBRSxTQUFTO0VBQ3BCLFdBQVcsRUFBRSxNQUFTO0VBQ3RCLGNBQWMsRUFBRSxJQUFJLEdBQ3JCOztBQUNELEFBQUEsTUFBTSxDQUFnQjtFQUFFLFNBQVMsRUFBRSxHQUFHLEdBQUk7O0FBQzFDLEFBQUEsTUFBTSxDQUFnQjtFQUFFLFNBQVMsRUFBRSxHQUFHLEdBQUk7O0FBQzFDLEFBQUEsTUFBTSxDQUFnQjtFQUFFLFNBQVMsRUFBRSxHQUFHLEdBQUk7O0FBQzFDLEFBQUEsTUFBTSxDQUFnQjtFQUFFLFNBQVMsRUFBRSxHQUFHLEdBQUk7O0FDVjFDLEFBQUEsTUFBTSxDQUFnQjtFQUNwQixLQUFLLEVBQUUsU0FBVztFQUNsQixVQUFVLEVBQUUsTUFBTSxHQUNuQjs7QUNGRCxBQUFBLE1BQU0sQ0FBZ0I7RUFDcEIsWUFBWSxFQUFFLENBQUM7RUFDZixXQUFXLEVOTVMsU0FBVztFTUwvQixlQUFlLEVBQUUsSUFBSSxHQUV0QjtFQUxELEFBSUUsTUFKSSxHQUlGLEVBQUUsQ0FBQztJQUFFLFFBQVEsRUFBRSxRQUFRLEdBQUk7O0FBRS9CLEFBQUEsTUFBTSxDQUFnQjtFQUNwQixRQUFRLEVBQUUsUUFBUTtFQUNsQixJQUFJLEVOQWdCLFVBQVc7RU1DL0IsS0FBSyxFTkRlLFNBQVc7RU1FL0IsR0FBRyxFQUFFLFNBQVU7RUFDZixVQUFVLEVBQUUsTUFBTSxHQUluQjtFQVRELEFBTUUsTUFOSSxBQU1ILE1BQU0sQ0FBZ0I7SUFDckIsSUFBSSxFQUFFLFVBQTBCLEdBQ2pDOztBQ2RILEFBQUEsVUFBVSxDQUFnQjtFQUN4QixPQUFPLEVBQUUsZ0JBQWdCO0VBQ3pCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBSyxDUElDLElBQUk7RU9IeEIsYUFBYSxFQUFFLElBQUksR0FDcEI7O0FBRUQsQUFBQSxhQUFhLENBQWdCO0VBQUUsS0FBSyxFQUFFLElBQUksR0FBSTs7QUFDOUMsQUFBQSxjQUFjLENBQWdCO0VBQUUsS0FBSyxFQUFFLEtBQUssR0FBSTs7QUFFaEQsQUFDRSxHQURDLEFBQ0EsYUFBYSxDQUFnQjtFQUFFLFlBQVksRUFBRSxJQUFJLEdBQUk7O0FBRHhELEFBRUUsR0FGQyxBQUVBLGNBQWMsQ0FBZ0I7RUFBRSxXQUFXLEVBQUUsSUFBSSxHQUFJOztBQUd4RCw0QkFBNEI7QUFDNUIsQUFBQSxXQUFXLENBQUM7RUFBRSxLQUFLLEVBQUUsS0FBSyxHQUFJOztBQUM5QixBQUFBLFVBQVUsQ0FBQztFQUFFLEtBQUssRUFBRSxJQUFJLEdBQUk7O0FBRTVCLEFBQ0UsR0FEQyxBQUNBLFVBQVUsQ0FBQztFQUFFLFlBQVksRUFBRSxJQUFJLEdBQUk7O0FBRHRDLEFBRUUsR0FGQyxBQUVBLFdBQVcsQ0FBQztFQUFFLFdBQVcsRUFBRSxJQUFJLEdBQUk7O0FDcEJ0QyxBQUFBLFFBQVEsQ0FBZ0I7RUFDdEIsaUJBQWlCLEVBQUUsMEJBQTBCO0VBQ3JDLFNBQVMsRUFBRSwwQkFBMEIsR0FDOUM7O0FBRUQsQUFBQSxTQUFTLENBQWdCO0VBQ3ZCLGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVE7RUFDdkMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsR0FDaEQ7O0FBRUQsa0JBQWtCLENBQWxCLE9BQWtCO0VBQ2hCLEVBQUU7SUFDQSxpQkFBaUIsRUFBRSxZQUFZO0lBQ3ZCLFNBQVMsRUFBRSxZQUFZO0VBRWpDLElBQUk7SUFDRixpQkFBaUIsRUFBRSxjQUFjO0lBQ3pCLFNBQVMsRUFBRSxjQUFjOztBQUlyQyxVQUFVLENBQVYsT0FBVTtFQUNSLEVBQUU7SUFDQSxpQkFBaUIsRUFBRSxZQUFZO0lBQ3ZCLFNBQVMsRUFBRSxZQUFZO0VBRWpDLElBQUk7SUFDRixpQkFBaUIsRUFBRSxjQUFjO0lBQ3pCLFNBQVMsRUFBRSxjQUFjOztBQzVCckMsQUFBQSxhQUFhLENBQWlCO0VSVzVCLFVBQVUsRUFBRSwwREFBcUU7RUFDakYsaUJBQWlCLEVBQUUsYUFBZ0I7RUFDL0IsYUFBYSxFQUFFLGFBQWdCO0VBQzNCLFNBQVMsRUFBRSxhQUFnQixHUWRpQzs7QUFDdEUsQUFBQSxjQUFjLENBQWdCO0VSVTVCLFVBQVUsRUFBRSwwREFBcUU7RUFDakYsaUJBQWlCLEVBQUUsY0FBZ0I7RUFDL0IsYUFBYSxFQUFFLGNBQWdCO0VBQzNCLFNBQVMsRUFBRSxjQUFnQixHUWJpQzs7QUFDdEUsQUFBQSxjQUFjLENBQWdCO0VSUzVCLFVBQVUsRUFBRSwwREFBcUU7RUFDakYsaUJBQWlCLEVBQUUsY0FBZ0I7RUFDL0IsYUFBYSxFQUFFLGNBQWdCO0VBQzNCLFNBQVMsRUFBRSxjQUFnQixHUVppQzs7QUFFdEUsQUFBQSxtQkFBbUIsQ0FBZ0I7RVJjakMsVUFBVSxFQUFFLG9FQUErRTtFQUMzRixpQkFBaUIsRUFBRSxZQUFvQjtFQUNuQyxhQUFhLEVBQUUsWUFBb0I7RUFDL0IsU0FBUyxFQUFFLFlBQW9CLEdRakIrQjs7QUFDeEUsQUFBQSxpQkFBaUIsQ0FBa0I7RVJhakMsVUFBVSxFQUFFLG9FQUErRTtFQUMzRixpQkFBaUIsRUFBRSxZQUFvQjtFQUNuQyxhQUFhLEVBQUUsWUFBb0I7RUFDL0IsU0FBUyxFQUFFLFlBQW9CLEdRaEIrQjs7QUFLeEUsQUFBQSxLQUFLLENBQUMsYUFBYTtBQUNuQixLQUFLLENBQUMsY0FBYztBQUNwQixLQUFLLENBQUMsY0FBYztBQUNwQixLQUFLLENBQUMsbUJBQW1CO0FBQ3pCLEtBQUssQ0FBQyxpQkFBaUIsQ0FBZ0I7RUFDckMsTUFBTSxFQUFFLElBQUksR0FDYjs7QUNoQkQsQUFBQSxTQUFTLENBQWdCO0VBQ3ZCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLEtBQUssRUFBRSxHQUFHO0VBQ1YsTUFBTSxFQUFFLEdBQUc7RUFDWCxXQUFXLEVBQUUsR0FBRztFQUNoQixjQUFjLEVBQUUsTUFBTSxHQUN2Qjs7QUFDRCxBQUFBLFlBQVksRUFBRSxZQUFZLENBQStCO0VBQ3ZELFFBQVEsRUFBRSxRQUFRO0VBQ2xCLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLElBQUk7RUFDWCxVQUFVLEVBQUUsTUFBTSxHQUNuQjs7QUFDRCxBQUFBLFlBQVksQ0FBZ0I7RUFBRSxXQUFXLEVBQUUsT0FBTyxHQUFJOztBQUN0RCxBQUFBLFlBQVksQ0FBZ0I7RUFBRSxTQUFTLEVBQUUsR0FBRyxHQUFJOztBQUNoRCxBQUFBLFdBQVcsQ0FBZ0I7RUFBRSxLQUFLLEVWVFosSUFBSSxHVVN5Qjs7QUNuQm5EO29FQUNvRTtBQUVwRSxBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHdVMUIsSUFBTyxHV3hVc0M7O0FBQzVELEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMmQxQixJQUFPLEdXM2RzQzs7QUFDNUQsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgwakIxQixJQUFPLEdXMWpCdUM7O0FBQzlELEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYc08xQixJQUFPLEdXdE8yQzs7QUFDdEUsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh1VzFCLElBQU8sR1d2V3NDOztBQUM1RCxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGtuQjFCLElBQU8sR1dsbkJxQzs7QUFDMUQsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhzbkIxQixJQUFPLEdXdG5CdUM7O0FBQzlELEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeXRCMUIsSUFBTyxHV3p0QnFDOztBQUMxRCxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG1SMUIsSUFBTyxHV25ScUM7O0FBQzFELEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdXBCMUIsSUFBTyxHV3ZwQnlDOztBQUNsRSxBQUFBLE1BQU0sQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHFwQjFCLElBQU8sR1dycEJtQzs7QUFDdEQsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhzcEIxQixJQUFPLEdXdHBCd0M7O0FBQ2hFLEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeUkxQixJQUFPLEdXeklzQzs7QUFDNUQsQUFBQSxVQUFVLEFBQUEsT0FBTztBQUNqQixTQUFTLEFBQUEsT0FBTztBQUNoQixTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhxcUIxQixJQUFPLEdXcnFCc0M7O0FBQzVELEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYOGlCMUIsSUFBTyxHVzlpQjRDOztBQUN4RSxBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNGlCMUIsSUFBTyxHVzVpQjZDOztBQUMxRSxBQUFBLGFBQWEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDRmMUIsSUFBTyxHVzVmMEM7O0FBQ3BFLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYaWtCMUIsSUFBTyxHV2prQnVDOztBQUM5RCxBQUFBLFFBQVEsQUFBQSxPQUFPO0FBQ2YsT0FBTyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYZ0sxQixJQUFPLEdXaEtvQzs7QUFDeEQsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrcUIxQixJQUFPLEdXL3FCd0M7O0FBQ2hFLEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYd1YxQixJQUFPLEdXeFZxQzs7QUFDMUQsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh1UDFCLElBQU8sR1d2UHVDOztBQUM5RCxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGdKMUIsSUFBTyxHV2hKd0M7O0FBQ2hFLEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbWhCMUIsSUFBTyxHV25oQnFDOztBQUMxRCxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGdNMUIsSUFBTyxHV2hNeUM7O0FBQ2xFLEFBQUEsdUJBQXVCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhZMUIsSUFBTyxHV1pvRDs7QUFDeEYsQUFBQSxxQkFBcUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGMxQixJQUFPLEdXZGtEOztBQUNwRixBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHFXMUIsSUFBTyxHV3JXc0M7O0FBQzVELEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh3ZTFCLElBQU8sR1d4ZThDOztBQUM1RSxBQUFBLGdCQUFnQixBQUFBLE9BQU87QUFDdkIsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYc2dCMUIsSUFBTyxHV3RnQnVDOztBQUM5RCxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGdnQjFCLElBQU8sR1doZ0J3Qzs7QUFDaEUsQUFBQSxZQUFZLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh3WTFCLElBQU8sR1d4WXlDOztBQUNsRSxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDJZMUIsSUFBTyxHVzNZcUM7O0FBQzFELEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNFAxQixJQUFPLEdXNVBxQzs7QUFDMUQsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhvVTFCLElBQU8sR1dwVTJDOztBQUN0RSxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGl0QjFCLElBQU8sR1dqdEIyQzs7QUFDdEUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrc0IxQixJQUFPLEdXL3NCNEM7O0FBQ3hFLEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYZ3RCMUIsSUFBTyxHV2h0QjBDOztBQUNwRSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHllMUIsSUFBTyxHV3pldUM7O0FBQzlELEFBQUEsV0FBVyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYd0IxQixJQUFPLEdXeEJ3Qzs7QUFDaEUsQUFBQSxPQUFPLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh5bUIxQixJQUFPLEdXem1Cb0M7O0FBQ3hELEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeW1CMUIsSUFBTyxHV3ptQnFDOztBQUMxRCxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHlEMUIsSUFBTyxHV3pEcUM7O0FBQzFELEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeUQxQixJQUFPLEdXekR5Qzs7QUFDbEUsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrZDFCLElBQU8sR1cvZHNDOztBQUM1RCxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDJFMUIsSUFBTyxHVzNFdUM7O0FBQzlELEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMFAxQixJQUFPLEdXMVBxQzs7QUFDMUQsQUFBQSxRQUFRLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhpRDFCLElBQU8sR1dqRHFDOztBQUMxRCxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDBWMUIsSUFBTyxHVzFWdUM7O0FBQzlELEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYd21CMUIsSUFBTyxHV3htQjRDOztBQUN4RSxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHdtQjFCLElBQU8sR1d4bUIyQzs7QUFDdEUsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhwQzFCLElBQU8sR1dvQzJDOztBQUN0RSxBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdkMxQixJQUFPLEdXdUM2Qzs7QUFDMUUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhyQzFCLElBQU8sR1dxQzRDOztBQUN4RSxBQUFBLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeEMxQixJQUFPLEdXd0M4Qzs7QUFDNUUsQUFBQSxRQUFRLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrVzFCLElBQU8sR1cvV3FDOztBQUMxRCxBQUFBLFVBQVUsQUFBQSxPQUFPO0FBQ2pCLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDJhMUIsSUFBTyxHVzNhd0M7O0FBQ2hFLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYc1UxQixJQUFPLEdXdFV1Qzs7QUFDOUQsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGtyQjFCLElBQU8sR1dsckI2Qzs7QUFDMUUsQUFBQSxTQUFTLEFBQUEsT0FBTztBQUNoQixTQUFTLEFBQUEsT0FBTztBQUNoQixhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgwYjFCLElBQU8sR1cxYjBDOztBQUNwRSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGtiMUIsSUFBTyxHV2xidUM7O0FBQzlELEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYd1gxQixJQUFPLEdXeFgyQzs7QUFDdEUsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh0RDFCLElBQU8sR1dzRHVDOztBQUM5RCxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG1uQjFCLElBQU8sR1dubkJxQzs7QUFDMUQsQUFBQSxRQUFRLEFBQUEsT0FBTztBQUNmLG1CQUFtQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYK2ExQixJQUFPLEdXL2FnRDs7QUFDaEYsQUFBQSxrQkFBa0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDhmMUIsSUFBTyxHVzlmK0M7O0FBQzlFLEFBQUEsa0JBQWtCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrRTFCLElBQU8sR1cvRStDOztBQUM5RSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHpCMUIsSUFBTyxHV3lCdUM7O0FBQzlELEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhtakIxQixJQUFPLEdXbmpCOEM7O0FBQzVFLEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhxTDFCLElBQU8sR1dyTDhDOztBQUM1RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGxCMUIsSUFBTyxHV2tCeUM7O0FBQ2xFLEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYc2IxQixJQUFPLEdXdGJxQzs7QUFDMUQsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhnYTFCLElBQU8sR1doYXNDOztBQUM1RCxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG1qQjFCLElBQU8sR1duakJxQzs7QUFDMUQsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrTjFCLElBQU8sR1cvTndDOztBQUNoRSxBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYZ0wxQixJQUFPLEdXaEw2Qzs7QUFDMUUsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDRpQjFCLElBQU8sR1c1aUI2Qzs7QUFDMUUsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrSTFCLElBQU8sR1cvSXNDOztBQUM1RCxBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeUUxQixJQUFPLEdXekU2Qzs7QUFDMUUsQUFBQSxpQkFBaUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHlFMUIsSUFBTyxHV3pFOEM7O0FBQzVFLEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYa2IxQixJQUFPLEdXbGI0Qzs7QUFDeEUsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHVYMUIsSUFBTyxHV3ZYNkM7O0FBQzFFLEFBQUEsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgybEIxQixJQUFPLEdXM2xCNkM7O0FBQzFFLEFBQUEsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgyRDFCLElBQU8sR1czRDZDOztBQUMxRSxBQUFBLG1CQUFtQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeWIxQixJQUFPLEdXemJnRDs7QUFDaEYsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgwUzFCLElBQU8sR1cxUzRDOztBQUN4RSxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDBHMUIsSUFBTyxHVzFHMkM7O0FBQ3RFLEFBQUEsa0JBQWtCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh1bEIxQixJQUFPLEdXdmxCK0M7O0FBQzlFLEFBQUEsa0JBQWtCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh1RDFCLElBQU8sR1d2RCtDOztBQUM5RSxBQUFBLE9BQU8sQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG5DMUIsSUFBTyxHV21Db0M7O0FBQ3hELEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbkQxQixJQUFPLEdXbUQyQzs7QUFDdEUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhuRDFCLElBQU8sR1dtRDRDOztBQUN4RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG5EMUIsSUFBTyxHV21EeUM7O0FBQ2xFLEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdkQxQixJQUFPLEdXdUQyQzs7QUFDdEUsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPO0FBQ3ZCLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDRkMUIsSUFBTyxHVzVkc0M7O0FBQzVELEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYOEkxQixJQUFPLEdXOUl1Qzs7QUFDOUQsQUFBQSxZQUFZLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhzRjFCLElBQU8sR1d0RnlDOztBQUNsRSxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWCtaMUIsSUFBTyxHVy9acUM7O0FBQzFELEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYb1cxQixJQUFPLEdXcFdzQzs7QUFDNUQsQUFBQSxZQUFZLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhwRDFCLElBQU8sR1dvRHlDOztBQUNsRSxBQUFBLHNCQUFzQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdUkxQixJQUFPLEdXdkltRDs7QUFDdEYsQUFBQSxRQUFRLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhrTjFCLElBQU8sR1dsTnFDOztBQUMxRCxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDBTMUIsSUFBTyxHVzFTcUM7O0FBQzFELEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNksxQixJQUFPLEdXN0txQzs7QUFDMUQsQUFBQSxPQUFPLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh5STFCLElBQU8sR1d6SW9DOztBQUN4RCxBQUFBLGFBQWEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHlJMUIsSUFBTyxHV3pJMEM7O0FBQ3BFLEFBQUEsV0FBVyxBQUFBLE9BQU87QUFDbEIsd0JBQXdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhpSTFCLElBQU8sR1dqSXFEOztBQUMxRixBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWCtZMUIsSUFBTyxHVy9Zc0M7O0FBQzVELEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYQTFCLElBQU8sR1dBeUM7O0FBQ2xFLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYb2ExQixJQUFPLEdXcGF1Qzs7QUFDOUQsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhnRTFCLElBQU8sR1doRXdDOztBQUNoRSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDZUMUIsSUFBTyxHVzdUdUM7O0FBQzlELEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdUMxQixJQUFPLEdXdkMyQzs7QUFDdEUsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG1DMUIsSUFBTyxHV25DNkM7O0FBQzFFLEFBQUEsV0FBVyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYK2ExQixJQUFPLEdXL2F3Qzs7QUFDaEUsQUFBQSxpQkFBaUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGtkMUIsSUFBTyxHV2xkOEM7O0FBQzVFLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMEsxQixJQUFPLEdXMUt1Qzs7QUFDOUQsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgySzFCLElBQU8sR1czSzRDOztBQUN4RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDNFMUIsSUFBTyxHVzJFeUM7O0FBQ2xFLEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYN0UxQixJQUFPLEdXNkV5Qzs7QUFDbEUsQUFBQSxlQUFlLEFBQUEsT0FBTztBQUN0QixhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhsRTFCLElBQU8sR1drRTBDOztBQUNwRSxBQUFBLGtCQUFrQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYK2tCMUIsSUFBTyxHVy9rQitDOztBQUM5RSxBQUFBLG1CQUFtQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNEgxQixJQUFPLEdXNUhnRDs7QUFDaEYsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWFQxQixJQUFPLEdXUzZDOztBQUMxRSxBQUFBLE9BQU8sQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDJRMUIsSUFBTyxHVzNRb0M7O0FBQ3hELEFBQUEsU0FBUyxBQUFBLE9BQU87QUFDaEIsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNkMxQixJQUFPLEdXN0NxQzs7QUFDMUQsQUFBQSxZQUFZLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhrRDFCLElBQU8sR1dsRHlDOztBQUNsRSxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHNpQjFCLElBQU8sR1d0aUI0Qzs7QUFDeEUsQUFBQSxpQkFBaUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG9pQjFCLElBQU8sR1dwaUI4Qzs7QUFDNUUsQUFBQSxhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgyZTFCLElBQU8sR1czZTBDOztBQUNwRSxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDhOMUIsSUFBTyxHVzlOd0M7O0FBQ2hFLEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYb2MxQixJQUFPLEdXcGN5Qzs7QUFDbEUsQUFBQSxtQkFBbUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHVSMUIsSUFBTyxHV3ZSZ0Q7O0FBQ2hGLEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNmhCMUIsSUFBTyxHVzdoQjJDOztBQUN0RSxBQUFBLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYc0cxQixJQUFPLEdXdEc4Qzs7QUFDNUUsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg4YjFCLElBQU8sR1c5YndDOztBQUNoRSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHFqQjFCLElBQU8sR1dyakJ1Qzs7QUFDOUQsQUFBQSxpQkFBaUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGdMMUIsSUFBTyxHV2hMOEM7O0FBQzVFLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdWtCMUIsSUFBTyxHV3ZrQnVDOztBQUM5RCxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHFRMUIsSUFBTyxHV3JRd0M7O0FBQ2hFLEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYaVcxQixJQUFPLEdXaldzQzs7QUFDNUQsQUFBQSxZQUFZLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgyZDFCLElBQU8sR1czZHlDOztBQUNsRSxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGpEMUIsSUFBTyxHV2lEMkM7O0FBQ3RFLEFBQUEsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrVjFCLElBQU8sR1cvVjZDOztBQUMxRSxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHNqQjFCLElBQU8sR1d0akJ3Qzs7QUFDaEUsQUFBQSxjQUFjLEFBQUEsT0FBTztBQUNyQixZQUFZLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhnRzFCLElBQU8sR1doR3lDOztBQUNsRSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG9LMUIsSUFBTyxHV3BLdUM7O0FBQzlELEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMGpCMUIsSUFBTyxHVzFqQnVDOztBQUM5RCxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG9DMUIsSUFBTyxHV3BDNEM7O0FBQ3hFLEFBQUEsUUFBUSxBQUFBLE9BQU87QUFDZixPQUFPLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrWTFCLElBQU8sR1cvWW9DOztBQUN4RCxBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG9NMUIsSUFBTyxHV3BNc0M7O0FBQzVELEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYckQxQixJQUFPLEdXcUR5Qzs7QUFDbEUsQUFBQSxRQUFRLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhoRjFCLElBQU8sR1dnRnFDOztBQUMxRCxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHJCMUIsSUFBTyxHV3FCNEM7O0FBQ3hFLEFBQUEsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhvTDFCLElBQU8sR1dwTDZDOztBQUMxRSxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGtMMUIsSUFBTyxHV2xMNEM7O0FBQ3hFLEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbUwxQixJQUFPLEdXbkwwQzs7QUFDcEUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrSzFCLElBQU8sR1cvSzRDOztBQUN4RSxBQUFBLHFCQUFxQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYckkxQixJQUFPLEdXcUlrRDs7QUFDcEYsQUFBQSxzQkFBc0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGpJMUIsSUFBTyxHV2lJbUQ7O0FBQ3RGLEFBQUEsbUJBQW1CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhqSTFCLElBQU8sR1dpSWdEOztBQUNoRixBQUFBLHFCQUFxQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYekkxQixJQUFPLEdXeUlrRDs7QUFDcEYsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgySjFCLElBQU8sR1czSnNDOztBQUM1RCxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDZsQjFCLElBQU8sR1c3bEJ1Qzs7QUFDOUQsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhxZTFCLElBQU8sR1dyZXNDOztBQUM1RCxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHlHMUIsSUFBTyxHV3pHdUM7O0FBQzlELEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYekUxQixJQUFPLEdXeUUwQzs7QUFDcEUsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhsSTFCLElBQU8sR1drSTJDOztBQUN0RSxBQUFBLFNBQVMsQUFBQSxPQUFPO0FBQ2hCLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGlqQjFCLElBQU8sR1dqakJzQzs7QUFDNUQsQUFBQSxTQUFTLEFBQUEsT0FBTztBQUNoQixRQUFRLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg0TzFCLElBQU8sR1c1T3FDOztBQUMxRCxBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGQxQixJQUFPLEdXY3NDOztBQUM1RCxBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDBHMUIsSUFBTyxHVzFHc0M7O0FBQzVELEFBQUEsT0FBTyxBQUFBLE9BQU87QUFDZCxZQUFZLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg2WDFCLElBQU8sR1c3WHlDOztBQUNsRSxBQUFBLFFBQVEsQUFBQSxPQUFPO0FBQ2YsV0FBVyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMkYxQixJQUFPLEdXM0Z3Qzs7QUFDaEUsQUFBQSxhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg2UzFCLElBQU8sR1c3UzBDOztBQUNwRSxBQUFBLFFBQVEsQUFBQSxPQUFPO0FBQ2YsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYcUcxQixJQUFPLEdXckd5Qzs7QUFDbEUsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhnYjFCLElBQU8sR1doYnVDOztBQUM5RCxBQUFBLFdBQVcsQUFBQSxPQUFPO0FBQ2xCLFdBQVcsQUFBQSxPQUFPO0FBQ2xCLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGxJMUIsSUFBTyxHV2tJcUM7O0FBQzFELEFBQUEsV0FBVyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYc08xQixJQUFPLEdXdE93Qzs7QUFDaEUsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhvTzFCLElBQU8sR1dwT3dDOztBQUNoRSxBQUFBLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYK2IxQixJQUFPLEdXL2I4Qzs7QUFDNUUsQUFBQSxhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgyZ0IxQixJQUFPLEdXM2dCMEM7O0FBQ3BFLEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdWMxQixJQUFPLEdXdmNzQzs7QUFDNUQsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh5TzFCLElBQU8sR1d6T3NDOztBQUM1RCxBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDZmMUIsSUFBTyxHVzdmc0M7O0FBQzVELEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbVQxQixJQUFPLEdXblQwQzs7QUFDcEUsQUFBQSxvQkFBb0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG9UMUIsSUFBTyxHV3BUaUQ7O0FBQ2xGLEFBQUEsc0JBQXNCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhnSTFCLElBQU8sR1doSW1EOztBQUN0RixBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDRIMUIsSUFBTyxHVzVINEM7O0FBQ3hFLEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYcVExQixJQUFPLEdXclFzQzs7QUFDNUQsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhwRjFCLElBQU8sR1dvRjJDOztBQUN0RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDlFMUIsSUFBTyxHVzhFeUM7O0FBQ2xFLEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYckYxQixJQUFPLEdXcUYyQzs7QUFDdEUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhyRjFCLElBQU8sR1dxRjRDOztBQUN4RSxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGhDMUIsSUFBTyxHV2dDd0M7O0FBQ2hFLEFBQUEsWUFBWSxBQUFBLE9BQU87QUFDbkIsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMFkxQixJQUFPLEdXMVlxQzs7QUFDMUQsQUFBQSxhQUFhLEFBQUEsT0FBTztBQUNwQixhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg4WTFCLElBQU8sR1c5WTBDOztBQUNwRSxBQUFBLFdBQVcsQUFBQSxPQUFPO0FBQ2xCLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDJZMUIsSUFBTyxHVzNZeUM7O0FBQ2xFLEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYVTFCLElBQU8sR1dWeUM7O0FBQ2xFLEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdU0xQixJQUFPLEdXdk15Qzs7QUFDbEUsQUFBQSxlQUFlLEFBQUEsT0FBTztBQUN0QixRQUFRLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhxZjFCLElBQU8sR1dyZnFDOztBQUMxRCxBQUFBLFNBQVMsQUFBQSxPQUFPO0FBQ2hCLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG9GMUIsSUFBTyxHV3BGc0M7O0FBQzVELEFBQUEsYUFBYSxBQUFBLE9BQU87QUFDcEIsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYK2ExQixJQUFPLEdXL2EyQzs7QUFDdEUsQUFBQSxhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg3QzFCLElBQU8sR1c2QzBDOztBQUNwRSxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDFDMUIsSUFBTyxHVzBDMkM7O0FBQ3RFLEFBQUEsU0FBUyxBQUFBLE9BQU87QUFDaEIsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYcEkxQixJQUFPLEdXb0lxQzs7QUFDMUQsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg2VzFCLElBQU8sR1c3V3dDOztBQUNoRSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHllMUIsSUFBTyxHV3pleUM7O0FBQ2xFLEFBQUEsU0FBUyxBQUFBLE9BQU87QUFDaEIsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYckUxQixJQUFPLEdXcUUwQzs7QUFDcEUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhxTDFCLElBQU8sR1dyTDRDOztBQUN4RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWEcxQixJQUFPLEdXSHlDOztBQUNsRSxBQUFBLGtCQUFrQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbkUxQixJQUFPLEdXbUUrQzs7QUFDOUUsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG5FMUIsSUFBTyxHV21FNkM7O0FBQzFFLEFBQUEsV0FBVyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYaWYxQixJQUFPLEdXamZ3Qzs7QUFDaEUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg4WTFCLElBQU8sR1c5WTRDOztBQUN4RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHlaMUIsSUFBTyxHV3paeUM7O0FBQ2xFLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYOUoxQixJQUFPLEdXOEp1Qzs7QUFDOUQsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhsRTFCLElBQU8sR1drRXVDOztBQUM5RCxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDFDMUIsSUFBTyxHVzBDd0M7O0FBQ2hFLEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYOEIxQixJQUFPLEdXOUI0Qzs7QUFDeEUsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgxSTFCLElBQU8sR1cwSTJDOztBQUN0RSxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHNIMUIsSUFBTyxHV3RIMkM7O0FBQ3RFLEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYck8xQixJQUFPLEdXcU8wQzs7QUFDcEUsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg0TTFCLElBQU8sR1c1TXVDOztBQUM5RCxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWFUxQixJQUFPLEdXVjRDOztBQUN4RSxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDNLMUIsSUFBTyxHVzJLcUM7O0FBQzFELEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdUYxQixJQUFPLEdXdkZ5Qzs7QUFDbEUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgyUTFCLElBQU8sR1czUTRDOztBQUN4RSxBQUFBLHFCQUFxQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYck8xQixJQUFPLEdXcU9rRDs7QUFDcEYsQUFBQSxzQkFBc0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHJPMUIsSUFBTyxHV3FPbUQ7O0FBQ3RGLEFBQUEsbUJBQW1CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhyTzFCLElBQU8sR1dxT2dEOztBQUNoRixBQUFBLHFCQUFxQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYek8xQixJQUFPLEdXeU9rRDs7QUFDcEYsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhyTzFCLElBQU8sR1dxTzJDOztBQUN0RSxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHJPMUIsSUFBTyxHV3FPNEM7O0FBQ3hFLEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYck8xQixJQUFPLEdXcU95Qzs7QUFDbEUsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh6TzFCLElBQU8sR1d5TzJDOztBQUN0RSxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHBEMUIsSUFBTyxHV29Ed0M7O0FBQ2hFLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNEkxQixJQUFPLEdXNUl1Qzs7QUFDOUQsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh3WTFCLElBQU8sR1d4WXVDOztBQUM5RCxBQUFBLGdCQUFnQixBQUFBLE9BQU87QUFDdkIsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdU0xQixJQUFPLEdXdk11Qzs7QUFDOUQsQUFBQSxZQUFZLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh6RzFCLElBQU8sR1d5R3lDOztBQUNsRSxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHlRMUIsSUFBTyxHV3pRMkM7O0FBQ3RFLEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeVExQixJQUFPLEdXelE0Qzs7QUFDeEUsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrVjFCLElBQU8sR1cvVndDOztBQUNoRSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDlHMUIsSUFBTyxHVzhHdUM7O0FBQzlELEFBQUEsY0FBYyxBQUFBLE9BQU87QUFDckIsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYb1IxQixJQUFPLEdXcFJzQzs7QUFDNUQsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrQzFCLElBQU8sR1cvQzJDOztBQUN0RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG1CMUIsSUFBTyxHV25CeUM7O0FBQ2xFLEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhvQjFCLElBQU8sR1dwQjhDOztBQUM1RSxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHFVMUIsSUFBTyxHV3JVd0M7O0FBQ2hFLEFBQUEsV0FBVyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMkIxQixJQUFPLEdXM0J3Qzs7QUFDaEUsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhnTDFCLElBQU8sR1doTHNDOztBQUM1RCxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDJCMUIsSUFBTyxHVzNCd0M7O0FBQ2hFLEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdUgxQixJQUFPLEdXdkgyQzs7QUFDdEUsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhNMUIsSUFBTyxHV051Qzs7QUFDOUQsQUFBQSxrQkFBa0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWEkxQixJQUFPLEdXSitDOztBQUM5RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDZYMUIsSUFBTyxHVzdYeUM7O0FBQ2xFLEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYaEgxQixJQUFPLEdXZ0hxQzs7QUFDMUQsQUFBQSxrQkFBa0IsQUFBQSxPQUFPO0FBQ3pCLGFBQWEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHVRMUIsSUFBTyxHV3ZRMEM7O0FBQ3BFLEFBQUEsbUJBQW1CLEFBQUEsT0FBTztBQUMxQixrQkFBa0IsQUFBQSxPQUFPO0FBQ3pCLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHNWMUIsSUFBTyxHV3RWNEM7O0FBQ3hFLEFBQUEsa0JBQWtCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh3STFCLElBQU8sR1d4SStDOztBQUM5RSxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGhHMUIsSUFBTyxHV2dHcUM7O0FBQzFELEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdkgxQixJQUFPLEdXdUgwQzs7QUFDcEUsQUFBQSxVQUFVLEFBQUEsT0FBTztBQUNqQixnQkFBZ0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHRKMUIsSUFBTyxHV3NKNkM7O0FBQzFFLEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeU8xQixJQUFPLEdXek95Qzs7QUFDbEUsQUFBQSxRQUFRLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgwRjFCLElBQU8sR1cxRnFDOztBQUMxRCxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDFEMUIsSUFBTyxHVzBENEM7O0FBQ3hFLEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYa1cxQixJQUFPLEdXbFc0Qzs7QUFDeEUsQUFBQSxhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg0VjFCLElBQU8sR1c1VjBDOztBQUNwRSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGxFMUIsSUFBTyxHV2tFdUM7O0FBQzlELEFBQUEsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhnTzFCLElBQU8sR1doTzZDOztBQUMxRSxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDJKMUIsSUFBTyxHVzNKMkM7O0FBQ3RFLEFBQUEsb0JBQW9CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgySjFCLElBQU8sR1czSmlEOztBQUNsRixBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHNSMUIsSUFBTyxHV3RSdUM7O0FBQzlELEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNUwxQixJQUFPLEdXNEwyQzs7QUFDdEUsQUFBQSxxQkFBcUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHhCMUIsSUFBTyxHV3dCa0Q7O0FBQ3BGLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdVAxQixJQUFPLEdXdlB1Qzs7QUFDOUQsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg2STFCLElBQU8sR1c3SXVDOztBQUM5RCxBQUFBLHVCQUF1QixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYOUoxQixJQUFPLEdXOEpvRDs7QUFDeEYsQUFBQSx3QkFBd0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDlKMUIsSUFBTyxHVzhKcUQ7O0FBQzFGLEFBQUEscUJBQXFCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg5SjFCLElBQU8sR1c4SmtEOztBQUNwRixBQUFBLHVCQUF1QixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbEsxQixJQUFPLEdXa0tvRDs7QUFDeEYsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg4RDFCLElBQU8sR1c5RHNDOztBQUM1RCxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHJIMUIsSUFBTyxHV3FIcUM7O0FBQzFELEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdlMxQixJQUFPLEdXdVN1Qzs7QUFDOUQsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgyWjFCLElBQU8sR1czWjJDOztBQUN0RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGhOMUIsSUFBTyxHV2dOeUM7O0FBQ2xFLEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYN0YxQixJQUFPLEdXNkYyQzs7QUFDdEUsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg3RjFCLElBQU8sR1c2RjJDOztBQUN0RSxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWCtPMUIsSUFBTyxHVy9PMkM7O0FBQ3RFLEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYaU0xQixJQUFPLEdXak00Qzs7QUFDeEUsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg2VzFCLElBQU8sR1c3V3VDOztBQUM5RCxBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMEkxQixJQUFPLEdXMUk2Qzs7QUFDMUUsQUFBQSxrQkFBa0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDBJMUIsSUFBTyxHVzFJK0M7O0FBQzlFLEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYcUYxQixJQUFPLEdXckZ5Qzs7QUFDbEUsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhtRjFCLElBQU8sR1duRjJDOztBQUN0RSxBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbkwxQixJQUFPLEdXbUw2Qzs7QUFDMUUsQUFBQSxpQkFBaUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDBLMUIsSUFBTyxHVzFLOEM7O0FBQzVFLEFBQUEsd0JBQXdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhwRjFCLElBQU8sR1dvRnFEOztBQUMxRixBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYd1AxQixJQUFPLEdXeFA2Qzs7QUFDMUUsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhqSjFCLElBQU8sR1dpSndDOztBQUNoRSxBQUFBLGVBQWUsQUFBQSxPQUFPO0FBQ3RCLHVCQUF1QixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYL00xQixJQUFPLEdXK01vRDs7QUFDeEYsQUFBQSxhQUFhLEFBQUEsT0FBTztBQUNwQixxQkFBcUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDlNMUIsSUFBTyxHVzhNa0Q7O0FBQ3BGLEFBQUEsZ0JBQWdCLEFBQUEsT0FBTztBQUN2Qix3QkFBd0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGpOMUIsSUFBTyxHV2lOcUQ7O0FBQzFGLEFBQUEsUUFBUSxBQUFBLE9BQU87QUFDZixPQUFPLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh2RzFCLElBQU8sR1d1R29DOztBQUN4RCxBQUFBLE9BQU8sQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGhDMUIsSUFBTyxHV2dDb0M7O0FBQ3hELEFBQUEsVUFBVSxBQUFBLE9BQU87QUFDakIsT0FBTyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYcVkxQixJQUFPLEdXcllvQzs7QUFDeEQsQUFBQSxTQUFTLEFBQUEsT0FBTztBQUNoQixPQUFPLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg0QzFCLElBQU8sR1c1Q29DOztBQUN4RCxBQUFBLE9BQU8sQUFBQSxPQUFPO0FBQ2QsT0FBTyxBQUFBLE9BQU87QUFDZCxPQUFPLEFBQUEsT0FBTztBQUNkLE9BQU8sQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGdEMUIsSUFBTyxHV2hEb0M7O0FBQ3hELEFBQUEsU0FBUyxBQUFBLE9BQU87QUFDaEIsVUFBVSxBQUFBLE9BQU87QUFDakIsT0FBTyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYaU4xQixJQUFPLEdXak5vQzs7QUFDeEQsQUFBQSxPQUFPLEFBQUEsT0FBTztBQUNkLE9BQU8sQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWCtDMUIsSUFBTyxHVy9Db0M7O0FBQ3hELEFBQUEsV0FBVyxBQUFBLE9BQU87QUFDbEIsT0FBTyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYM1AxQixJQUFPLEdXMlBvQzs7QUFDeEQsQUFBQSxRQUFRLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhoRzFCLElBQU8sR1dnR3FDOztBQUMxRCxBQUFBLGFBQWEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHBGMUIsSUFBTyxHV29GMEM7O0FBQ3BFLEFBQUEsa0JBQWtCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgwUDFCLElBQU8sR1cxUCtDOztBQUM5RSxBQUFBLG1CQUFtQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMFAxQixJQUFPLEdXMVBnRDs7QUFDaEYsQUFBQSxtQkFBbUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDBQMUIsSUFBTyxHVzFQZ0Q7O0FBQ2hGLEFBQUEsb0JBQW9CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgwUDFCLElBQU8sR1cxUGlEOztBQUNsRixBQUFBLG9CQUFvQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNlAxQixJQUFPLEdXN1BpRDs7QUFDbEYsQUFBQSxxQkFBcUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDZQMUIsSUFBTyxHVzdQa0Q7O0FBQ3BGLEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYa1UxQixJQUFPLEdXbFUwQzs7QUFDcEUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg4VDFCLElBQU8sR1c5VDRDOztBQUN4RSxBQUFBLGtCQUFrQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeWExQixJQUFPLEdXemErQzs7QUFDOUUsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhzYTFCLElBQU8sR1d0YXdDOztBQUNoRSxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDJaMUIsSUFBTyxHVzNacUM7O0FBQzFELEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMloxQixJQUFPLEdXM1o0Qzs7QUFDeEUsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG9hMUIsSUFBTyxHV3BhNkM7O0FBQzFFLEFBQUEsV0FBVyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeEoxQixJQUFPLEdXd0p3Qzs7QUFDaEUsQUFBQSxrQkFBa0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDhQMUIsSUFBTyxHVzlQK0M7O0FBQzlFLEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYZ0IxQixJQUFPLEdXaEIwQzs7QUFDcEUsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhwRjFCLElBQU8sR1dvRnVDOztBQUM5RCxBQUFBLE9BQU8sQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDNXMUIsSUFBTyxHVzJXb0M7O0FBQ3hELEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYL1IxQixJQUFPLEdXK1IwQzs7QUFDcEUsQUFBQSxvQkFBb0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWC9SMUIsSUFBTyxHVytSaUQ7O0FBQ2xGLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYK1UxQixJQUFPLEdXL1V1Qzs7QUFDOUQsQUFBQSxpQkFBaUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWCtVMUIsSUFBTyxHVy9VOEM7O0FBQzVFLEFBQUEsbUJBQW1CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhnRDFCLElBQU8sR1doRGdEOztBQUNoRixBQUFBLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYa0QxQixJQUFPLEdXbEQ4Qzs7QUFDNUUsQUFBQSxtQkFBbUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWCtDMUIsSUFBTyxHVy9DZ0Q7O0FBQ2hGLEFBQUEsb0JBQW9CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrQzFCLElBQU8sR1cvQ2lEOztBQUNsRixBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGpXMUIsSUFBTyxHV2lXc0M7O0FBQzVELEFBQUEsV0FBVyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbVkxQixJQUFPLEdXbll3Qzs7QUFDaEUsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg3VzFCLElBQU8sR1c2V3dDOztBQUNoRSxBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGtDMUIsSUFBTyxHV2xDc0M7O0FBQzVELEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNUsxQixJQUFPLEdXNEt5Qzs7QUFDbEUsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhnTjFCLElBQU8sR1doTnNDOztBQUM1RCxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHhGMUIsSUFBTyxHV3dGMkM7O0FBQ3RFLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNFQxQixJQUFPLEdXNVR1Qzs7QUFDOUQsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh0STFCLElBQU8sR1dzSXVDOztBQUM5RCxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDZDMUIsSUFBTyxHVzdDcUM7O0FBQzFELEFBQUEsVUFBVSxBQUFBLE9BQU87QUFDakIsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNUQxQixJQUFPLEdXNER5Qzs7QUFDbEUsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg4UDFCLElBQU8sR1c5UHNDOztBQUM1RCxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHVFMUIsSUFBTyxHV3ZFdUM7O0FBQzlELEFBQUEsV0FBVyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYOVcxQixJQUFPLEdXOFd3Qzs7QUFDaEUsQUFBQSxPQUFPLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh0UzFCLElBQU8sR1dzU29DOztBQUN4RCxBQUFBLE1BQU0sQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGlXMUIsSUFBTyxHV2pXbUM7O0FBQ3RELEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdVcxQixJQUFPLEdXdldzQzs7QUFDNUQsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrSTFCLElBQU8sR1cvSXVDOztBQUM5RCxBQUFBLGFBQWEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGtGMUIsSUFBTyxHV2xGMEM7O0FBQ3BFLEFBQUEsa0JBQWtCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg2TjFCLElBQU8sR1c3TitDOztBQUM5RSxBQUFBLHdCQUF3QixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYL1cxQixJQUFPLEdXK1dxRDs7QUFDMUYsQUFBQSx1QkFBdUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGpYMUIsSUFBTyxHV2lYb0Q7O0FBQ3hGLEFBQUEsZUFBZSxBQUFBLE9BQU87QUFDdEIsdUJBQXVCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh6UjFCLElBQU8sR1d5Um9EOztBQUN4RixBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbk0xQixJQUFPLEdXbU02Qzs7QUFDMUUsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhpVzFCLElBQU8sR1dqVzJDOztBQUN0RSxBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYb1YxQixJQUFPLEdXcFY2Qzs7QUFDMUUsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPO0FBQ3ZCLE9BQU8sQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDBTMUIsSUFBTyxHVzFTb0M7O0FBQ3hELEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgwRzFCLElBQU8sR1cxRzhDOztBQUM1RSxBQUFBLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNE0xQixJQUFPLEdXNU04Qzs7QUFDNUUsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhzTDFCLElBQU8sR1d0THNDOztBQUM1RCxBQUFBLG1CQUFtQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYekwxQixJQUFPLEdXeUxnRDs7QUFDaEYsQUFBQSxhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhvVzFCLElBQU8sR1dwVzBDOztBQUNwRSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDhEMUIsSUFBTyxHVzlEdUM7O0FBQzlELEFBQUEsZUFBZSxBQUFBLE9BQU87QUFDdEIsUUFBUSxBQUFBLE9BQU87QUFDZixjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg4UzFCLElBQU8sR1c5UzJDOztBQUN0RSxBQUFBLGdCQUFnQixBQUFBLE9BQU87QUFDdkIsa0JBQWtCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgxRjFCLElBQU8sR1cwRitDOztBQUM5RSxBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHNXMUIsSUFBTyxHV3RXc0M7O0FBQzVELEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbEcxQixJQUFPLEdXa0d1Qzs7QUFDOUQsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhnSDFCLElBQU8sR1doSHVDOztBQUM5RCxBQUFBLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYaUgxQixJQUFPLEdXakg4Qzs7QUFDNUUsQUFBQSxzQkFBc0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHlOMUIsSUFBTyxHV3pObUQ7O0FBQ3RGLEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdU4xQixJQUFPLEdXdk40Qzs7QUFDeEUsQUFBQSxhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgvTjFCLElBQU8sR1crTjBDOztBQUNwRSxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDVOMUIsSUFBTyxHVzROcUM7O0FBQzFELEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgyRTFCLElBQU8sR1czRThDOztBQUM1RSxBQUFBLGtCQUFrQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeUUxQixJQUFPLEdXekUrQzs7QUFDOUUsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh2TjFCLElBQU8sR1d1TnVDOztBQUM5RCxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHpDMUIsSUFBTyxHV3lDdUM7O0FBQzlELEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYcEMxQixJQUFPLEdXb0N5Qzs7QUFDbEUsQUFBQSxPQUFPLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh0TDFCLElBQU8sR1dzTG9DOztBQUN4RCxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDdVMUIsSUFBTyxHVzZVeUM7O0FBQ2xFLEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMVIxQixJQUFPLEdXMFJzQzs7QUFDNUQsQUFBQSxPQUFPLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhzRDFCLElBQU8sR1d0RG9DOztBQUN4RCxBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG1MMUIsSUFBTyxHV25Mc0M7O0FBQzVELEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYclAxQixJQUFPLEdXcVBxQzs7QUFDMUQsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhyUDFCLElBQU8sR1dxUHNDOztBQUM1RCxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDdXMUIsSUFBTyxHVzZXd0M7O0FBQ2hFLEFBQUEsa0JBQWtCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg3VzFCLElBQU8sR1c2VytDOztBQUM5RSxBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDBMMUIsSUFBTyxHVzFMc0M7O0FBQzVELEFBQUEsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgwTDFCLElBQU8sR1cxTDZDOztBQUMxRSxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHlGMUIsSUFBTyxHV3pGd0M7O0FBQ2hFLEFBQUEsY0FBYyxBQUFBLE9BQU87QUFDckIsT0FBTyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYelUxQixJQUFPLEdXeVVvQzs7QUFDeEQsQUFBQSxPQUFPLEFBQUEsT0FBTztBQUNkLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWCtNMUIsSUFBTyxHVy9NcUM7O0FBQzFELEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNFAxQixJQUFPLEdXNVBxQzs7QUFDMUQsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh1SzFCLElBQU8sR1d2S3dDOztBQUNoRSxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHRQMUIsSUFBTyxHV3NQMkM7O0FBQ3RFLEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYaUsxQixJQUFPLEdXaksyQzs7QUFDdEUsQUFBQSxZQUFZLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg5UDFCLElBQU8sR1c4UHlDOztBQUNsRSxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWC9MMUIsSUFBTyxHVytMMkM7O0FBQ3RFLEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeEwxQixJQUFPLEdXd0w0Qzs7QUFDeEUsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHJNMUIsSUFBTyxHV3FNNkM7O0FBQzFFLEFBQUEscUJBQXFCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgvTDFCLElBQU8sR1crTGtEOztBQUNwRixBQUFBLGdCQUFnQixBQUFBLE9BQU87QUFDdkIsa0JBQWtCLEFBQUEsT0FBTztBQUN6QixnQkFBZ0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHhNMUIsSUFBTyxHV3dNNkM7O0FBQzFFLEFBQUEsY0FBYyxBQUFBLE9BQU87QUFDckIsa0JBQWtCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg5TTFCLElBQU8sR1c4TStDOztBQUM5RSxBQUFBLGdCQUFnQixBQUFBLE9BQU87QUFDdkIsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgvTTFCLElBQU8sR1crTTZDOztBQUMxRSxBQUFBLGdCQUFnQixBQUFBLE9BQU87QUFDdkIsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhwTTFCLElBQU8sR1dvTTZDOztBQUMxRSxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGpOMUIsSUFBTyxHV2lONEM7O0FBQ3hFLEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdVIxQixJQUFPLEdXdlJxQzs7QUFDMUQsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg1UzFCLElBQU8sR1c0U3dDOztBQUNoRSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDlFMUIsSUFBTyxHVzhFeUM7O0FBQ2xFLEFBQUEsYUFBYSxBQUFBLE9BQU87QUFDcEIsYUFBYSxBQUFBLE9BQU87QUFDcEIsY0FBYyxBQUFBLE9BQU87QUFDckIsV0FBVyxBQUFBLE9BQU87QUFDbEIsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbkUxQixJQUFPLEdXbUUwQzs7QUFDcEUsQUFBQSxrQkFBa0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWC9UMUIsSUFBTyxHVytUK0M7O0FBQzlFLEFBQUEsTUFBTSxBQUFBLE9BQU87QUFDYixjQUFjLEFBQUEsT0FBTztBQUNyQixTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhxRDFCLElBQU8sR1dyRHNDOztBQUM1RCxBQUFBLE1BQU0sQUFBQSxPQUFPO0FBQ2IsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYblExQixJQUFPLEdXbVF1Qzs7QUFDOUQsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh6SzFCLElBQU8sR1d5SzJDOztBQUN0RSxBQUFBLE9BQU8sQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDNLMUIsSUFBTyxHVzJLb0M7O0FBQ3hELEFBQUEsdUJBQXVCLEFBQUEsT0FBTztBQUM5QixhQUFhLEFBQUEsT0FBTztBQUNwQixlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh4SjFCLElBQU8sR1d3SjRDOztBQUN4RSxBQUFBLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMksxQixJQUFPLEdXM0s4Qzs7QUFDNUUsQUFBQSxNQUFNLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhpQzFCLElBQU8sR1dqQ21DOztBQUN0RCxBQUFBLFVBQVUsQUFBQSxPQUFPO0FBQ2pCLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDBRMUIsSUFBTyxHVzFRdUM7O0FBQzlELEFBQUEsUUFBUSxBQUFBLE9BQU87QUFDZixlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhWMUIsSUFBTyxHV1U0Qzs7QUFDeEUsQUFBQSxVQUFVLEFBQUEsT0FBTztBQUNqQixpQkFBaUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWFgxQixJQUFPLEdXVzhDOztBQUM1RSxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDFJMUIsSUFBTyxHVzBJd0M7O0FBQ2hFLEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbFYxQixJQUFPLEdXa1Y0Qzs7QUFDeEUsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhqSjFCLElBQU8sR1dpSnVDOztBQUM5RCxBQUFBLGFBQWEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGIxQixJQUFPLEdXYTBDOztBQUNwRSxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWCtGMUIsSUFBTyxHVy9Gd0M7O0FBQ2hFLEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdUUxQixJQUFPLEdXdkUwQzs7QUFDcEUsQUFBQSxvQkFBb0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHVFMUIsSUFBTyxHV3ZFaUQ7O0FBQ2xGLEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeloxQixJQUFPLEdXeVpxQzs7QUFDMUQsQUFBQSxpQkFBaUIsQUFBQSxPQUFPO0FBQ3hCLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDVNMUIsSUFBTyxHVzRNeUM7O0FBQ2xFLEFBQUEsT0FBTyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYME0xQixJQUFPLEdXMU1vQzs7QUFDeEQsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh4YTFCLElBQU8sR1d3YTJDOztBQUN0RSxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWEkxQixJQUFPLEdXSnFDOztBQUMxRCxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHVGMUIsSUFBTyxHV3ZGMkM7O0FBQ3RFLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMk0xQixJQUFPLEdXM011Qzs7QUFDOUQsQUFBQSxRQUFRLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgrUTFCLElBQU8sR1cvUXFDOztBQUMxRCxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHpDMUIsSUFBTyxHV3lDNEM7O0FBQ3hFLEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYd1AxQixJQUFPLEdXeFBxQzs7QUFDMUQsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhyWjFCLElBQU8sR1dxWjJDOztBQUN0RSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHZCMUIsSUFBTyxHV3VCdUM7O0FBQzlELEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgzTDFCLElBQU8sR1cyTDhDOztBQUM1RSxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDVYMUIsSUFBTyxHVzRYd0M7O0FBQ2hFLEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhoWTFCLElBQU8sR1dnWThDOztBQUM1RSxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG5ZMUIsSUFBTyxHV21ZNEM7O0FBQ3hFLEFBQUEsV0FBVyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdFkxQixJQUFPLEdXc1l3Qzs7QUFDaEUsQUFBQSxhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhsWTFCLElBQU8sR1drWTBDOztBQUNwRSxBQUFBLGFBQWEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGxZMUIsSUFBTyxHV2tZMEM7O0FBQ3BFLEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYM2IxQixJQUFPLEdXMmIyQzs7QUFDdEUsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDNiMUIsSUFBTyxHVzJiNkM7O0FBQzFFLEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYK0sxQixJQUFPLEdXL0tzQzs7QUFDNUQsQUFBQSxhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhuVjFCLElBQU8sR1dtVjBDOztBQUNwRSxBQUFBLE1BQU0sQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDlkMUIsSUFBTyxHVzhkbUM7O0FBQ3RELEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNVIxQixJQUFPLEdXNFIyQzs7QUFDdEUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgvQzFCLElBQU8sR1crQzRDOztBQUN4RSxBQUFBLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYOWIxQixJQUFPLEdXOGI4Qzs7QUFDNUUsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh0ZjFCLElBQU8sR1dzZjJDOztBQUN0RSxBQUFBLGFBQWEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWC9CMUIsSUFBTyxHVytCMEM7O0FBQ3BFLEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYekgxQixJQUFPLEdXeUgyQzs7QUFDdEUsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh2STFCLElBQU8sR1d1SXVDOztBQUM5RCxBQUFBLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdkkxQixJQUFPLEdXdUk4Qzs7QUFDNUUsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg0SjFCLElBQU8sR1c1SjJDOztBQUN0RSxBQUFBLGFBQWEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDRKMUIsSUFBTyxHVzVKMEM7O0FBQ3BFLEFBQUEsV0FBVyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeGMxQixJQUFPLEdXd2N3Qzs7QUFDaEUsQUFBQSxPQUFPLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhqYjFCLElBQU8sR1dpYm9DOztBQUN4RCxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHZKMUIsSUFBTyxHV3VKd0M7O0FBQ2hFLEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYM2dCMUIsSUFBTyxHVzJnQjBDOztBQUNwRSxBQUFBLE1BQU0sQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDdaMUIsSUFBTyxHVzZabUM7O0FBQ3RELEFBQUEsVUFBVSxBQUFBLE9BQU87QUFDakIsVUFBVSxBQUFBLE9BQU87QUFDakIsT0FBTyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeksxQixJQUFPLEdXeUtvQzs7QUFDeEQsQUFBQSxZQUFZLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhwRzFCLElBQU8sR1dvR3lDOztBQUNsRSxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHhiMUIsSUFBTyxHV3diMkM7O0FBQ3RFLEFBQUEsa0JBQWtCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg1VzFCLElBQU8sR1c0VytDOztBQUM5RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDlWMUIsSUFBTyxHVzhWeUM7O0FBQ2xFLEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYOVAxQixJQUFPLEdXOFB5Qzs7QUFDbEUsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhySjFCLElBQU8sR1dxSndDOztBQUNoRSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGUxQixJQUFPLEdXZnVDOztBQUM5RCxBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMkIxQixJQUFPLEdXM0I2Qzs7QUFDMUUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhvQzFCLElBQU8sR1dwQzRDOztBQUN4RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHFDMUIsSUFBTyxHV3JDeUM7O0FBQ2xFLEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNWExQixJQUFPLEdXNGEwQzs7QUFDcEUsQUFBQSxtQkFBbUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDlhMUIsSUFBTyxHVzhhZ0Q7O0FBQ2hGLEFBQUEsV0FBVyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYL1YxQixJQUFPLEdXK1Z3Qzs7QUFDaEUsQUFBQSxRQUFRLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhvQjFCLElBQU8sR1dwQnFDOztBQUMxRCxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDhLMUIsSUFBTyxHVzlLNEM7O0FBQ3hFLEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYL0YxQixJQUFPLEdXK0YyQzs7QUFDdEUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg2RTFCLElBQU8sR1c3RTRDOztBQUN4RSxBQUFBLGFBQWEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDlNMUIsSUFBTyxHVzhNMEM7O0FBQ3BFLEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYK0sxQixJQUFPLEdXL0tzQzs7QUFDNUQsQUFBQSxRQUFRLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg3SDFCLElBQU8sR1c2SHFDOztBQUMxRCxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG5IMUIsSUFBTyxHV21Id0M7O0FBQ2hFLEFBQUEsWUFBWSxBQUFBLE9BQU87QUFDbkIsZUFBZSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYa0kxQixJQUFPLEdXbEk0Qzs7QUFDeEUsQUFBQSxtQkFBbUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGtJMUIsSUFBTyxHV2xJZ0Q7O0FBQ2hGLEFBQUEsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgwSzFCLElBQU8sR1cxSzZDOztBQUMxRSxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGxJMUIsSUFBTyxHV2tJNEM7O0FBQ3hFLEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeUsxQixJQUFPLEdXeksyQzs7QUFDdEUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhuSTFCLElBQU8sR1dtSTRDOztBQUN4RSxBQUFBLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbEkxQixJQUFPLEdXa0k4Qzs7QUFDNUUsQUFBQSxpQkFBaUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHBJMUIsSUFBTyxHV29JOEM7O0FBQzVFLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMUcxQixJQUFPLEdXMEd1Qzs7QUFDOUQsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg3UTFCLElBQU8sR1c2UTJDOztBQUN0RSxBQUFBLHFCQUFxQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMVUxQixJQUFPLEdXMFVrRDs7QUFDcEYsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh6RTFCLElBQU8sR1d5RTRDOztBQUN4RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGtMMUIsSUFBTyxHV2xMeUM7O0FBQ2xFLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYWDFCLElBQU8sR1dXdUM7O0FBQzlELEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdUoxQixJQUFPLEdXdkowQzs7QUFDcEUsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh3SjFCLElBQU8sR1d4SjJDOztBQUN0RSxBQUFBLFNBQVMsQUFBQSxPQUFPO0FBQ2hCLE9BQU8sQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWC9mMUIsSUFBTyxHVytmb0M7O0FBQ3hELEFBQUEsV0FBVyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYNEoxQixJQUFPLEdXNUp3Qzs7QUFDaEUsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg4RzFCLElBQU8sR1c5R3NDOztBQUM1RCxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHdEMUIsSUFBTyxHV3hEdUM7O0FBQzlELEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYOUkxQixJQUFPLEdXOEl1Qzs7QUFDOUQsQUFBQSxNQUFNLEFBQUEsT0FBTztBQUNiLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMEwxQixJQUFPLEdXMUw2Qzs7QUFDMUUsQUFBQSxpQkFBaUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGpIMUIsSUFBTyxHV2lIOEM7O0FBQzVFLEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYckgxQixJQUFPLEdXcUh5Qzs7QUFDbEUsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG5XMUIsSUFBTyxHV21XNkM7O0FBQzFFLEFBQUEsYUFBYSxBQUFBLE9BQU87QUFDcEIsV0FBVyxBQUFBLE9BQU87QUFDbEIsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgvZ0IxQixJQUFPLEdXK2dCNkM7O0FBQzFFLEFBQUEsYUFBYSxBQUFBLE9BQU87QUFDcEIsMEJBQTBCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg5Z0IxQixJQUFPLEdXOGdCdUQ7O0FBQzlGLEFBQUEsYUFBYSxBQUFBLE9BQU87QUFDcEIsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhsaEIxQixJQUFPLEdXa2hCNkM7O0FBQzFFLEFBQUEsYUFBYSxBQUFBLE9BQU87QUFDcEIsbUJBQW1CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhuaEIxQixJQUFPLEdXbWhCZ0Q7O0FBQ2hGLEFBQUEsYUFBYSxBQUFBLE9BQU87QUFDcEIsaUJBQWlCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh4aEIxQixJQUFPLEdXd2hCOEM7O0FBQzVFLEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgzSTFCLElBQU8sR1cySThDOztBQUM1RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDNPMUIsSUFBTyxHVzJPeUM7O0FBQ2xFLEFBQUEsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh4STFCLElBQU8sR1d3STZDOztBQUMxRSxBQUFBLGtCQUFrQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeEkxQixJQUFPLEdXd0krQzs7QUFDOUUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh3QjFCLElBQU8sR1d4QjRDOztBQUN4RSxBQUFBLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYd0IxQixJQUFPLEdXeEI4Qzs7QUFDNUUsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgvZDFCLElBQU8sR1crZHVDOztBQUM5RCxBQUFBLGtCQUFrQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbGUxQixJQUFPLEdXa2UrQzs7QUFDOUUsQUFBQSxTQUFTLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhwYzFCLElBQU8sR1dvY3NDOztBQUM1RCxBQUFBLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbGpCMUIsSUFBTyxHV2tqQjhDOztBQUM1RSxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHhQMUIsSUFBTyxHV3dQNEM7O0FBQ3hFLEFBQUEsZUFBZSxBQUFBLE9BQU87QUFDdEIsbUJBQW1CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh6UDFCLElBQU8sR1d5UGdEOztBQUNoRixBQUFBLGVBQWUsQUFBQSxPQUFPO0FBQ3RCLGtCQUFrQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYN1AxQixJQUFPLEdXNlArQzs7QUFDOUUsQUFBQSxlQUFlLEFBQUEsT0FBTztBQUN0QixpQkFBaUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGhRMUIsSUFBTyxHV2dROEM7O0FBQzVFLEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYclExQixJQUFPLEdXcVEwQzs7QUFDcEUsQUFBQSxlQUFlLEFBQUEsT0FBTztBQUN0QixlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh4UjFCLElBQU8sR1d3UjRDOztBQUN4RSxBQUFBLGVBQWUsQUFBQSxPQUFPO0FBQ3RCLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYN1IxQixJQUFPLEdXNlI2Qzs7QUFDMUUsQUFBQSxtQkFBbUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDFSMUIsSUFBTyxHVzBSZ0Q7O0FBQ2hGLEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhwUzFCLElBQU8sR1dvUzhDOztBQUM1RSxBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYM1IxQixJQUFPLEdXMlI2Qzs7QUFDMUUsQUFBQSxrQkFBa0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWC9SMUIsSUFBTyxHVytSK0M7O0FBQzlFLEFBQUEsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhqUzFCLElBQU8sR1dpUzZDOztBQUMxRSxBQUFBLGFBQWEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWCtEMUIsSUFBTyxHVy9EMEM7O0FBQ3BFLEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYL0YxQixJQUFPLEdXK0YyQzs7QUFDdEUsQUFBQSxvQkFBb0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWC9iMUIsSUFBTyxHVytiaUQ7O0FBQ2xGLEFBQUEsTUFBTSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdFUxQixJQUFPLEdXc1VtQzs7QUFDdEQsQUFBQSxhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh0VTFCLElBQU8sR1dzVTBDOztBQUNwRSxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGtFMUIsSUFBTyxHV2xFNEM7O0FBQ3hFLEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhySzFCLElBQU8sR1dxSzhDOztBQUM1RSxBQUFBLHdCQUF3QixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYcksxQixJQUFPLEdXcUtxRDs7QUFDMUYsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg1VTFCLElBQU8sR1c0VTJDOztBQUN0RSxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHdIMUIsSUFBTyxHV3hINEM7O0FBQ3hFLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbkYxQixJQUFPLEdXbUZ1Qzs7QUFDOUQsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh6ZTFCLElBQU8sR1d5ZXVDOztBQUM5RCxBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDlXMUIsSUFBTyxHVzhXd0M7O0FBQ2hFLEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeEsxQixJQUFPLEdXd0tzQzs7QUFDNUQsQUFBQSxxQkFBcUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHBRMUIsSUFBTyxHV29Ra0Q7O0FBQ3BGLEFBQUEsTUFBTSxBQUFBLE9BQU87QUFDYixjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhTMUIsSUFBTyxHV1QyQzs7QUFDdEUsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhqZDFCLElBQU8sR1dpZHVDOztBQUM5RCxBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHpvQjFCLElBQU8sR1d5b0JzQzs7QUFDNUQsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgvbkIxQixJQUFPLEdXK25CdUM7O0FBQzlELEFBQUEsbUJBQW1CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgzaEIxQixJQUFPLEdXMmhCZ0Q7O0FBQ2hGLEFBQUEsb0JBQW9CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg5aEIxQixJQUFPLEdXOGhCaUQ7O0FBQ2xGLEFBQUEsb0JBQW9CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg1aEIxQixJQUFPLEdXNGhCaUQ7O0FBQ2xGLEFBQUEsb0JBQW9CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhqaUIxQixJQUFPLEdXaWlCaUQ7O0FBQ2xGLEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYcFIxQixJQUFPLEdXb1J5Qzs7QUFDbEUsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg1TjFCLElBQU8sR1c0TndDOztBQUNoRSxBQUFBLGFBQWEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDVOMUIsSUFBTyxHVzROMEM7O0FBQ3BFLEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYL04xQixJQUFPLEdXK05zQzs7QUFDNUQsQUFBQSxPQUFPLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhsTzFCLElBQU8sR1drT29DOztBQUN4RCxBQUFBLGNBQWMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHBlMUIsSUFBTyxHV29lMkM7O0FBQ3RFLEFBQUEsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhwZTFCLElBQU8sR1dvZTZDOztBQUMxRSxBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHRTMUIsSUFBTyxHV3NTc0M7O0FBQzVELEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYaUYxQixJQUFPLEdXakZzQzs7QUFDNUQsQUFBQSxhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhsa0IxQixJQUFPLEdXa2tCMEM7O0FBQ3BFLEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYclgxQixJQUFPLEdXcVgwQzs7QUFDcEUsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHBJMUIsSUFBTyxHV29JNkM7O0FBQzFFLEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYcGMxQixJQUFPLEdXb2NxQzs7QUFDMUQsQUFBQSxtQkFBbUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGhlMUIsSUFBTyxHV2dlZ0Q7O0FBQ2hGLEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYcGYxQixJQUFPLEdXb2Z5Qzs7QUFDbEUsQUFBQSxRQUFRLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhsTjFCLElBQU8sR1drTnFDOztBQUMxRCxBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMVgxQixJQUFPLEdXMFg2Qzs7QUFDMUUsQUFBQSxPQUFPLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhvRDFCLElBQU8sR1dwRG9DOztBQUN4RCxBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYM0oxQixJQUFPLEdXMko2Qzs7QUFDMUUsQUFBQSxZQUFZLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh6TjFCLElBQU8sR1d5TnlDOztBQUNsRSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGxIMUIsSUFBTyxHV2tIdUM7O0FBQzlELEFBQUEsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg3TDFCLElBQU8sR1c2TDZDOztBQUMxRSxBQUFBLGtCQUFrQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYN0wxQixJQUFPLEdXNkwrQzs7QUFDOUUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgzQzFCLElBQU8sR1cyQzRDOztBQUN4RSxBQUFBLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYM0MxQixJQUFPLEdXMkM4Qzs7QUFDNUUsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHJHMUIsSUFBTyxHV3FHNkM7O0FBQzFFLEFBQUEsbUJBQW1CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhyRzFCLElBQU8sR1dxR2dEOztBQUNoRixBQUFBLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDdVMUIsSUFBTyxHVzZVd0M7O0FBQ2hFLEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbmxCMUIsSUFBTyxHV21sQjBDOztBQUNwRSxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWG5sQjFCLElBQU8sR1dtbEI0Qzs7QUFDeEUsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgvTDFCLElBQU8sR1crTHdDOztBQUNoRSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGxYMUIsSUFBTyxHV2tYdUM7O0FBQzlELEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYa0YxQixJQUFPLEdXbEYyQzs7QUFDdEUsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhtRjFCLElBQU8sR1duRndDOztBQUNoRSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDljMUIsSUFBTyxHVzhjdUM7O0FBQzlELEFBQUEsb0JBQW9CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgyQjFCLElBQU8sR1czQmlEOztBQUNsRixBQUFBLGtCQUFrQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbUUxQixJQUFPLEdXbkUrQzs7QUFDOUUsQUFBQSxxQkFBcUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHhLMUIsSUFBTyxHV3dLa0Q7O0FBQ3BGLEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYOWxCMUIsSUFBTyxHVzhsQnNDOztBQUM1RCxBQUFBLHFCQUFxQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdG9CMUIsSUFBTyxHV3NvQmtEOztBQUNwRixBQUFBLHdCQUF3QixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYcUQxQixJQUFPLEdXckRxRDs7QUFDMUYsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh4bEIxQixJQUFPLEdXd2xCd0M7O0FBQ2hFLEFBQUEsK0JBQStCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg1b0IxQixJQUFPLEdXNG9CNEQ7O0FBQ3hHLEFBQUEsb0JBQW9CLEFBQUEsT0FBTztBQUMzQix1Q0FBdUMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDlxQjFCLElBQU8sR1c4cUJvRTs7QUFDeEgsQUFBQSxZQUFZLEFBQUEsT0FBTztBQUNuQixtQkFBbUIsQUFBQSxPQUFPO0FBQzFCLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHZmMUIsSUFBTyxHV3VmcUM7O0FBQzFELEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYaFkxQixJQUFPLEdXZ1lzQzs7QUFDNUQsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhoWTFCLElBQU8sR1dnWXdDOztBQUNoRSxBQUFBLFdBQVcsQUFBQSxPQUFPO0FBQ2xCLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMUgxQixJQUFPLEdXMEg4Qzs7QUFDNUUsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh6UjFCLElBQU8sR1d5UjJDOztBQUN0RSxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGlDMUIsSUFBTyxHV2pDdUM7O0FBQzlELEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhpQzFCLElBQU8sR1dqQzhDOztBQUM1RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGxIMUIsSUFBTyxHV2tIeUM7O0FBQ2xFLEFBQUEsa0JBQWtCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhsSDFCLElBQU8sR1drSCtDOztBQUM5RSxBQUFBLG1CQUFtQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbEgxQixJQUFPLEdXa0hnRDs7QUFDaEYsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhyTjFCLElBQU8sR1dxTjJDOztBQUN0RSxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHBiMUIsSUFBTyxHV29iNEM7O0FBQ3hFLEFBQUEsU0FBUyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbUUxQixJQUFPLEdXbkVzQzs7QUFDNUQsQUFBQSxhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhwRDFCLElBQU8sR1dvRDBDOztBQUNwRSxBQUFBLHNCQUFzQixBQUFBLE9BQU87QUFDN0Isd0JBQXdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh6WTFCLElBQU8sR1d5WXFEOztBQUMxRixBQUFBLE1BQU0sQUFBQSxPQUFPO0FBQ2IsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg3YTFCLElBQU8sR1c2YTZDOztBQUMxRSxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHRYMUIsSUFBTyxHV3NYNEM7O0FBQ3hFLEFBQUEsaUJBQWlCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhsZjFCLElBQU8sR1drZjhDOztBQUM1RSxBQUFBLG1CQUFtQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYbGYxQixJQUFPLEdXa2ZnRDs7QUFDaEYsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh0VDFCLElBQU8sR1dzVHVDOztBQUM5RCxBQUFBLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYcHRCMUIsSUFBTyxHV290QjZDOztBQUMxRSxBQUFBLGtCQUFrQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYcHRCMUIsSUFBTyxHV290QitDOztBQUM5RSxBQUFBLFNBQVMsQUFBQSxPQUFPO0FBQ2hCLGdCQUFnQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYcnRCMUIsSUFBTyxHV3F0QjZDOztBQUMxRSxBQUFBLFdBQVcsQUFBQSxPQUFPO0FBQ2xCLGtCQUFrQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYdHRCMUIsSUFBTyxHV3N0QitDOztBQUM5RSxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWEoxQixJQUFPLEdXSTRDOztBQUN4RSxBQUFBLGlCQUFpQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYSjFCLElBQU8sR1dJOEM7O0FBQzVFLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYSDFCLElBQU8sR1dHdUM7O0FBQzlELEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYM1cxQixJQUFPLEdXMld5Qzs7QUFDbEUsQUFBQSxtQkFBbUIsQUFBQSxPQUFPO0FBQzFCLFdBQVcsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDVXMUIsSUFBTyxHVzRXd0M7O0FBQ2hFLEFBQUEscUJBQXFCLEFBQUEsT0FBTztBQUM1QixhQUFhLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg3VzFCLElBQU8sR1c2VzBDOztBQUNwRSxBQUFBLFNBQVMsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHROMUIsSUFBTyxHV3NOc0M7O0FBQzVELEFBQUEsa0JBQWtCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVgzYjFCLElBQU8sR1cyYitDOztBQUM5RSxBQUFBLFlBQVksQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHRGMUIsSUFBTyxHV3NGeUM7O0FBQ2xFLEFBQUEsaUJBQWlCLEFBQUEsT0FBTztBQUN4QixlQUFlLEFBQUEsT0FBTztBQUN0QixvQkFBb0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHhFMUIsSUFBTyxHV3dFaUQ7O0FBQ2xGLEFBQUEsaUJBQWlCLEFBQUEsT0FBTztBQUN4Qiw4QkFBOEIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHZFMUIsSUFBTyxHV3VFMkQ7O0FBQ3RHLEFBQUEsaUJBQWlCLEFBQUEsT0FBTztBQUN4QixvQkFBb0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDNFMUIsSUFBTyxHVzJFaUQ7O0FBQ2xGLEFBQUEsaUJBQWlCLEFBQUEsT0FBTztBQUN4Qix1QkFBdUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWDVFMUIsSUFBTyxHVzRFb0Q7O0FBQ3hGLEFBQUEsaUJBQWlCLEFBQUEsT0FBTztBQUN4QixxQkFBcUIsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGpGMUIsSUFBTyxHV2lGa0Q7O0FBQ3BGLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYM0sxQixJQUFPLEdXMkt1Qzs7QUFDOUQsQUFBQSxXQUFXLEFBQUEsT0FBTztBQUNsQixPQUFPLEFBQUEsT0FBTztBQUNkLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHpyQjFCLElBQU8sR1d5ckJxQzs7QUFDMUQsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhsUDFCLElBQU8sR1drUHdDOztBQUNoRSxBQUFBLG1CQUFtQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYSzFCLElBQU8sR1dMZ0Q7O0FBQ2hGLEFBQUEsbUJBQW1CLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhLMUIsSUFBTyxHV0xnRDs7QUFDaEYsQUFBQSxrQkFBa0IsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWEsxQixJQUFPLEdXTCtDOztBQUM5RSxBQUFBLG1CQUFtQixBQUFBLE9BQU87QUFDMUIsZ0JBQWdCLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVhEMUIsSUFBTyxHV0M2Qzs7QUFDMUUsQUFBQSxxQkFBcUIsQUFBQSxPQUFPO0FBQzVCLGtCQUFrQixBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYRjFCLElBQU8sR1dFK0M7O0FBQzlFLEFBQUEsWUFBWSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeHNCMUIsSUFBTyxHV3dzQnlDOztBQUNsRSxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHBiMUIsSUFBTyxHV29icUM7O0FBQzFELEFBQUEsUUFBUSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYMWhCMUIsSUFBTyxHVzBoQnFDOztBQUMxRCxBQUFBLFFBQVEsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWHhZMUIsSUFBTyxHV3dZcUM7O0FBQzFELEFBQUEsV0FBVyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYL08xQixJQUFPLEdXK093Qzs7QUFDaEUsQUFBQSxXQUFXLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVh6aUIxQixJQUFPLEdXeWlCd0M7O0FBQ2hFLEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYalUxQixJQUFPLEdXaVUwQzs7QUFDcEUsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFnQjtFQUFFLE9BQU8sRVg3SzFCLElBQU8sR1c2SzRDOztBQUN4RSxBQUFBLGVBQWUsQUFBQSxPQUFPLENBQWdCO0VBQUUsT0FBTyxFWGhJMUIsSUFBTyxHV2dJNEM7O0FBQ3hFLEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYSjFCLElBQU8sR1dJMkM7O0FBQ3RFLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBZ0I7RUFBRSxPQUFPLEVYeFUxQixJQUFPLEdXd1V1Qzs7QUNqeEI5RCxBQUFBLFFBQVEsQ0FBQztFWDhCUCxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsR0FBRztFQUNWLE1BQU0sRUFBRSxHQUFHO0VBQ1gsT0FBTyxFQUFFLENBQUM7RUFDVixNQUFNLEVBQUUsSUFBSTtFQUNaLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLElBQUksRUFBRSxnQkFBYTtFQUNuQixNQUFNLEVBQUUsQ0FBQyxHV3JDc0I7O0FBQ2pDLEFYOENFLGtCVzlDZ0IsQVg4Q2YsT0FBTyxFVzlDVixrQkFBa0IsQVgrQ2YsTUFBTSxDQUFDO0VBQ04sUUFBUSxFQUFFLE1BQU07RUFDaEIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLE1BQU0sRUFBRSxDQUFDO0VBQ1QsUUFBUSxFQUFFLE9BQU87RUFDakIsSUFBSSxFQUFFLElBQUksR0FDWDs7QVkxREgsY0FBYztBQStDZCxpQkFBaUI7QUUvQ2pCLEFBQUEsYUFBYSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUM7RUFDbEMsYUFBYSxFQUFFLElBQUk7RUFDbkIsS0FBSyxFQUFFLElBQUksR0FvRFo7RUF0REQsQUFHRSxhQUhXLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FHakMsRUFBRSxDQUFDO0lBQ0QsT0FBTyxFQUFFLE1BQU07SUFDZixhQUFhLEVBQUUsY0FBYztJQUM3QixTQUFTLEVBQUUsSUFBSTtJQUNmLFdBQVcsRUFBRSxJQUFJO0lBQ2pCLEtBQUssRUFBRSxJQUFJO0lBQ1gsVUFBVSxFQUFFLE1BQU07SUFDbEIsS0FBSyxFQUFFLElBQUksR0FDWjtFQVhILEFBWUUsYUFaVyxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBWWpDLEVBQUUsQ0FBQztJQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1YsVUFBVSxFQUFFLElBQUk7SUFDaEIsTUFBTSxFQUFFLGNBQWM7SUFDdEIsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsSUFBSSxHQW9DbEI7SUFyREgsQUFrQkksYUFsQlMsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQVlqQyxFQUFFLENBTUEsQ0FBQyxDQUFDO01BQ0EsT0FBTyxFQUFFLEtBQUs7TUFDZCxPQUFPLEVBQUUsTUFBTTtNQUNmLFVBQVUsRUFBRSxJQUFJO01BQ2hCLFVBQVUsRUFBRSxNQUFNO01BQ2xCLEtBQUssRUFBRSxJQUFJLEdBTVo7TUE3QkwsQUF3Qk0sYUF4Qk8sQ0FBQyxlQUFlLENBQUMsS0FBSyxDQVlqQyxFQUFFLENBTUEsQ0FBQyxBQU1FLE1BQU0sQ0FBQztRQUNOLFVBQVUsRUFBRSxPQUFPO1FBQ25CLEtBQUssRUFBRSxPQUFPO1FBQ2QsZUFBZSxFQUFFLElBQUksR0FDdEI7SUE1QlAsQUE4QkksYUE5QlMsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQVlqQyxFQUFFLEFBa0JDLFlBQVksQ0FBQyxDQUFDLEFBQUEsTUFBTSxFQTlCekIsYUFBYSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBWWpDLEVBQUUsQUFrQndCLE1BQU0sQ0FBQyxDQUFDLEFBQUEsTUFBTSxDQUFDO01BQ3JDLFVBQVUsRUFBRSxPQUFPO01BQ25CLEtBQUssRUFBRSxPQUFPO01BQ2QsZUFBZSxFQUFFLElBQUksR0FDdEI7SUFsQ0wsQUFtQ0ksYUFuQ1MsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQVlqQyxFQUFFLENBdUJBLENBQUMsQUFBQSxPQUFPLEVBbkNaLGFBQWEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQVlqQyxFQUFFLEFBdUJXLFlBQVksQ0FBQyxDQUFDLEFBQUEsT0FBTyxDQUFDO01BQy9CLGdCQUFnQixFQUFFLE9BQU87TUFDekIsS0FBSyxFQUFFLE9BQU87TUFDZCxlQUFlLEVBQUUsSUFBSSxHQUN0QjtJQXZDTCxBQXdDSSxhQXhDUyxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBWWpDLEVBQUUsQUE0QkMsTUFBTSxDQUFDLENBQUMsQ0FBQztNQU1SLGdCQUFnQixFQUFFLE9BQU87TUFDekIsS0FBSyxFQUFFLE9BQU8sR0FDZjtNQWhETCxBQXlDTSxhQXpDTyxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBWWpDLEVBQUUsQUE0QkMsTUFBTSxDQUFDLENBQUMsQUFDTixPQUFPLENBQUM7UUFDUCxnQkFBZ0IsRUFBRSxPQUFPO1FBQ3pCLEtBQUssRUFBRSxPQUFPO1FBQ2QsZUFBZSxFQUFFLElBQUksR0FDdEI7SUE3Q1AsQUFpREksYUFqRFMsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQVlqQyxFQUFFLEFBcUNDLFlBQVksQ0FBQyxDQUFDLENBQUM7TUFDZCxVQUFVLEVBQUUsSUFBSTtNQUNoQixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUlMLGlCQUFpQjtBQUVqQixBQUFBLGNBQWMsQ0FBQztFQUNiLE9BQU8sRUFBRSxJQUFJO0VBQ2IsVUFBVSxFQUFFLEdBQUc7RUFDZixPQUFPLEVBQUUsSUFBSTtFQUNiLGdCQUFnQixFQUFFLElBQUk7RUFDdEIsa0JBQWtCLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsa0JBQWtCO0VBQ2xELGVBQWUsRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0I7RUFDL0MscUJBQXFCLEVBQUUsR0FBRztFQUMxQixrQkFBa0IsRUFBRSxHQUFHO0VBQ3ZCLGFBQWEsRUFBRSxHQUFHLEdBQ25COztBQUVELEFBQUEscUJBQXFCLENBQUM7RUFDcEIsY0FBYyxFQUFFLEdBQUc7RUFDbkIsU0FBUyxFQUFFLElBQUk7RUFDZixLQUFLLEVBQUUsSUFBSSxHQXVCWjtFQTFCRCxBQUlFLHFCQUptQixBQUlsQixNQUFNLENBQUM7SUFDTixPQUFPLEVBQUUsR0FBRztJQUNaLE9BQU8sRUFBRSxLQUFLO0lBQ2QsTUFBTSxFQUFFLENBQUM7SUFDVCxLQUFLLEVBQUUsSUFBSTtJQUNYLFVBQVUsRUFBRSxNQUFNLEdBQ25CO0VBVkgsQUFXRSxxQkFYbUIsQ0FXbkIsQ0FBQyxDQUFDO0lBQ0EsT0FBTyxFQUFFLEtBQUs7SUFDZCxPQUFPLEVBQUUsUUFBUTtJQUNqQixnQkFBZ0IsRUFBRSxJQUFJO0lBQ3RCLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLE9BQU87SUFDZixlQUFlLEVBQUUsSUFBSTtJQUNyQixxQkFBcUIsRUFBRSxJQUFJO0lBQzNCLGtCQUFrQixFQUFFLElBQUk7SUFDeEIsYUFBYSxFQUFFLElBQUksR0FLcEI7SUF6QkgsQUFxQkkscUJBckJpQixDQVduQixDQUFDLEFBVUUsTUFBTSxDQUFDO01BQ04sZ0JBQWdCLEVBQUUsT0FBTztNQUN6QixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUlMLEFBQUEsbUJBQW1CLENBQUM7RUFDbEIsS0FBSyxFQUFFLElBQUksR0FDWjs7QUFFRCxBQUFBLG1CQUFtQixDQUFDO0VBQ2xCLEtBQUssRUFBRSxLQUFLLEdBQ2I7O0FBRUQsQUFBQSxvQkFBb0IsQ0FBQztFQUNuQixPQUFPLEVBQUUsS0FBSztFQUNkLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBRUQsQUFBQSx1QkFBdUIsQ0FBQztFQUN0QixNQUFNLEVBQUUsQ0FBQyxHQXNDVjtFQXZDRCxBQUVFLHVCQUZxQixDQUVyQixFQUFFLENBQUM7SUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNWLFNBQVMsRUFBRSxJQUFJO0lBQ2YsV0FBVyxFQUFFLE1BQU07SUFDbkIsS0FBSyxFQUFFLElBQUk7SUFDWCxVQUFVLEVBQUUsTUFBTSxHQUNuQjtFQVJILEFBU0UsdUJBVHFCLENBU3JCLEVBQUUsQ0FBQztJQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1YsTUFBTSxFQUFFLGNBQWM7SUFDdEIsU0FBUyxFQUFFLElBQUk7SUFDZixVQUFVLEVBQUUsTUFBTSxHQXlCbkI7SUF0Q0gsQUFjSSx1QkFkbUIsQ0FTckIsRUFBRSxDQUtBLENBQUMsQ0FBQztNQUNBLE9BQU8sRUFBRSxLQUFLO01BQ2QsT0FBTyxFQUFFLFFBQVE7TUFDakIsZ0JBQWdCLEVBQUUsSUFBSTtNQUN0QixVQUFVLEVBQUUsY0FBYztNQUMxQixLQUFLLEVBQUUsSUFBSSxHQU9aO01BMUJMLEFBb0JNLHVCQXBCaUIsQ0FTckIsRUFBRSxDQUtBLENBQUMsQUFNRSxNQUFNLENBQUM7UUFDTixnQkFBZ0IsRUFBRSxPQUFPO1FBQ3pCLFlBQVksRUFBRSxPQUFPO1FBQ3JCLEtBQUssRUFBRSxJQUFJO1FBQ1gsZUFBZSxFQUFFLElBQUksR0FDdEI7SUF6QlAsQUEyQkksdUJBM0JtQixDQVNyQixFQUFFLEFBa0JDLDBCQUEwQixDQUFDLENBQUMsQ0FBQztNQUM1QixnQkFBZ0IsRUFBRSxPQUFPO01BQ3pCLFlBQVksRUFBRSxPQUFPO01BQ3JCLEtBQUssRUFBRSxJQUFJO01BQ1gsZUFBZSxFQUFFLElBQUksR0FDdEI7SUFoQ0wsQUFpQ0ksdUJBakNtQixDQVNyQixFQUFFLEFBd0JDLDBCQUEwQixDQUFDLENBQUMsQ0FBQztNQUM1QixVQUFVLEVBQUUsT0FBTztNQUNuQixVQUFVLEVBQUUsY0FBYztNQUMxQixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUlMLHdCQUF3QjtBQUV4QixBQUFBLHFCQUFxQixDQUFDO0VBQ3BCLGtCQUFrQixFQUFFLElBQUk7RUFDeEIsZUFBZSxFQUFFLElBQUksR0FPdEI7RUFURCxBQUdFLHFCQUhtQixDQUduQix1QkFBdUIsQ0FBQztJQUN0QixLQUFLLEVBQUUsSUFBSSxHQUlaO0lBUkgsQUFLSSxxQkFMaUIsQ0FHbkIsdUJBQXVCLENBRXJCLEVBQUUsQ0FBQyxDQUFDLENBQUM7TUFDSCxPQUFPLEVBQUUsUUFBUSxHQUNsQjs7QUFJTCx5QkFBeUI7QUFFekIsQUFDRSxRQURNLENBQ04sY0FBYyxDQUFDO0VBQ2IsT0FBTyxFQUFFLEtBQUs7RUFDZCxhQUFhLEVBQUUsSUFBSSxHQUNwQjs7QUFKSCxBQUtFLFFBTE0sQ0FLTixxQkFBcUIsQ0FBQyxDQUFDLENBQUM7RUFDdEIsT0FBTyxFQUFFLFFBQVEsR0FDbEI7O0FBUEgsQUFTSSxRQVRJLENBUU4sdUJBQXVCLENBQ3JCLEVBQUUsRUFUTixRQUFRLENBUU4sdUJBQXVCLENBQ2pCLEVBQUUsQ0FBQztFQUNMLFNBQVMsRUFBRSxJQUFJLEdBQ2hCOztBQ25MTCxBQUFBLElBQUksQ0FBQztFQUNILGFBQWEsRUFBRSxJQUFJLEdBb0VwQjtFQXJFRCxBQUVFLElBRkUsQ0FFRixFQUFFLENBQUM7SUFDRCxhQUFhLEVBQUUsQ0FBQyxHQUNqQjtFQUpILEFBS0UsSUFMRSxDQUtGLENBQUMsQ0FBQztJQUNBLGFBQWEsRUFBRSxJQUFJO0lBQ25CLElBQUksRUFBRSxDQUFDLEdBcUJSO0lBNUJILEFBUUksSUFSQSxDQUtGLENBQUMsQUFHRSxNQUFNLENBQUM7TUFDTixPQUFPLEVBQUUsR0FBRztNQUNaLE9BQU8sRUFBRSxLQUFLO01BQ2QsTUFBTSxFQUFFLENBQUM7TUFDVCxLQUFLLEVBQUUsSUFBSTtNQUNYLFVBQVUsRUFBRSxNQUFNLEdBQ25CO0lBZEwsQUFlSSxJQWZBLENBS0YsQ0FBQyxDQVVDLEtBQUssQ0FBQztNQUNKLE9BQU8sRUFBRSxLQUFLO01BQ2QsS0FBSyxFQUFFLElBQUk7TUFDWCxLQUFLLEVBQUUsS0FBSyxHQVNiO01BM0JMLEFBbUJNLElBbkJGLENBS0YsQ0FBQyxDQVVDLEtBQUssQUFJRixTQUFTLENBQUM7UUFDVCxXQUFXLEVBQUUsSUFBSTtRQUNqQixLQUFLLEVBQUUsSUFBSSxHQUNaO01BdEJQLEFBdUJNLElBdkJGLENBS0YsQ0FBQyxDQVVDLEtBQUssQ0FRSCxLQUFLLENBQUM7UUFDSixXQUFXLEVBQUUsTUFBTTtRQUNuQixTQUFTLEVBQUUsSUFBSSxHQUNoQjtFQTFCUCxBQTZCRSxJQTdCRSxDQTZCRixLQUFLLENBQUM7SUFDSixLQUFLLEVBQUUsR0FBRyxHQUlYO0lBbENILEFBK0JJLElBL0JBLENBNkJGLEtBQUssQ0FFRixBQUFBLElBQUMsQ0FBRCxRQUFDLEFBQUEsR0EvQk4sSUFBSSxDQTZCRixLQUFLLENBRWdCLEFBQUEsSUFBQyxDQUFELEtBQUMsQUFBQSxFQUFZO01BQzlCLEtBQUssRUFBRSxJQUFJLEdBQ1o7RUFqQ0wsQUFtQ0UsSUFuQ0UsQ0FtQ0YsRUFBRSxDQUFDO0lBQ0QsVUFBVSxFQUFFLElBQUk7SUFDaEIsTUFBTSxFQUFFLFVBQVU7SUFDbEIsT0FBTyxFQUFFLENBQUMsR0FDWDtFQXZDSCxBQXdDRSxJQXhDRSxDQXdDRixRQUFRLENBQUM7SUFDUCxLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxLQUFLLEdBQ2Q7RUEzQ0gsQUE0Q0UsSUE1Q0UsQ0E0Q0YsS0FBSyxDQUFDO0lBQ0osTUFBTSxFQUFFLE1BQU07SUFDZCxTQUFTLEVBQUUsSUFBSSxHQVNoQjtJQXZESCxBQStDSSxJQS9DQSxDQTRDRixLQUFLLENBR0gsRUFBRSxDQUFDO01BQ0QsT0FBTyxFQUFFLGFBQWE7TUFDdEIsV0FBVyxFQUFFLElBQUk7TUFDakIsS0FBSyxFQUFFLElBQUksR0FDWjtJQW5ETCxBQW9ESSxJQXBEQSxDQTRDRixLQUFLLENBUUgsRUFBRSxDQUFDO01BQ0QsT0FBTyxFQUFFLGFBQWEsR0FDdkI7RUF0REwsQUF5REksSUF6REEsQ0F3REYsT0FBTyxDQUNMLE1BQU0sQ0FBQztJQUNMLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLEtBQUssR0FDYjtFQTVETCxBQTZESSxJQTdEQSxDQXdERixPQUFPLENBS0wsV0FBVyxDQUFDO0lBQ1YsT0FBTyxFQUFFLEtBQUs7SUFDZCxLQUFLLEVBQUUsSUFBSSxHQUNaO0VBaEVMLEFBaUVJLElBakVBLENBd0RGLE9BQU8sQ0FTTCxNQUFNLEFBQUEsT0FBTyxDQUFDO0lBQ1osWUFBWSxFQUFFLElBQUksR0FDbkI7O0FBSUwsZUFBZTtBQUVmLEFBQUEsVUFBVSxDQUFDO0VBQ1QsT0FBTyxFQUFFLEtBQUs7RUFDZCxTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLEtBQUssRUFBRSxJQUFJLEdBSVo7RUFSRCxBQUtFLFVBTFEsQ0FLUixDQUFDLENBQUM7SUFDQSxLQUFLLEVBQUUsT0FBTyxHQUNmOztBQUdILEFBQUEsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7RUFDaEIsTUFBTSxFQUFFLGFBQWEsR0FDdEI7O0FBRUQsWUFBWTtBQUVaLEFBQUEsT0FBTyxFQUFFLE1BQU0sQ0FBQztFQUNkLEtBQUssRUFBRSxPQUFPLEdBQ2Y7O0FBRUQsQUFBQSxVQUFVLENBQUM7RUFDVCxVQUFVLEVBQUUsSUFBSTtFQUNoQixhQUFhLEVBQUUsQ0FBQztFQUNoQixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLEtBQUssRUFBRSxPQUFPLEdBQ2Y7O0FBRUQsQUFDRSxJQURFLENBQ0YsQ0FBQyxDQUFDLE9BQU8sQ0FBQztFQUNSLE9BQU8sRUFBRSxLQUFLO0VBQ2QsT0FBTyxFQUFFLE1BQU07RUFDZixNQUFNLEVBQUUsSUFBSTtFQUNaLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7RUFDakIsS0FBSyxFQUFFLE9BQU8sR0FDZjs7QUFUSCxBQVVFLElBVkUsQ0FVRixVQUFVLENBQUM7RUFDVCxXQUFXLEVBQUUsS0FBSyxHQUNuQjs7QUFHSCxZQUFZO0FBRVosQUFBQSxLQUFLLENBQUM7RUFDSixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxHQUFHO0VBQ1osS0FBSyxFSDFHVyxJQUFJO0VHMkdwQixNQUFNLEVIbkZzQixLQUFLLENBeEJqQixJQUFJLENBd0IrQixLQUFLO0VHb0Z4RCxVQUFVLEVIckZzQixJQUFJO0VHc0ZwQyxTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLEtBQUssRUFBRSxJQUFJO0VBQ1gsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxtQkFBbUI7RUFDN0MsYUFBYSxFQUFFLEdBQUcsR0FDbkI7O0FBRUQsQUFBQSxRQUFRLENBQUM7RUFDUCxNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxHQUFHO0VBQ1osTUFBTSxFQUFFLGNBQWM7RUFDdEIsVUFBVSxFQUFFLElBQUk7RUFDaEIsV0FBVyxFQUFFLG1DQUFtQztFQUNoRCxTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLEtBQUssRUFBRSxJQUFJO0VBQ1gsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLG1CQUFtQjtFQUNyRCxlQUFlLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLG1CQUFtQjtFQUNsRCxxQkFBcUIsRUFBRSxHQUFHO0VBQzFCLGtCQUFrQixFQUFFLEdBQUc7RUFDdkIsYUFBYSxFQUFFLEdBQUcsR0FLbkI7RUFsQkQsQUFjRSxRQWRNLEFBY0wsTUFBTSxDQUFDO0lBQ04sT0FBTyxFQUFFLEdBQUc7SUFDWixNQUFNLEVBQUUsY0FBYyxHQUN2Qjs7QUFHSCxBQUNFLEtBREcsQUFDRixNQUFNLENBQUM7RUFDTixPQUFPLEVBQUUsR0FBRztFQUNaLE1BQU0sRUFBRSxjQUFjLEdBQ3ZCOztBQUpILEFBS0UsS0FMRyxDQUtGLEFBQUEsSUFBQyxDQUFELElBQUMsQUFBQSxFQUFXO0VBQ1gsT0FBTyxFQUFFLENBQUM7RUFDVixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osVUFBVSxFQUFFLElBQUk7RUFDaEIsa0JBQWtCLEVBQUUsSUFBSTtFQUN4QixlQUFlLEVBQUUsSUFBSSxHQUN0Qjs7QUFoQ0gsQUFBQSxRQUFRLENBbUNDO0VBQ1AsV0FBVyxFQUFFLElBQUksR0FDbEI7O0FBRUQsYUFBYTtBQUViLEFBQUEsTUFBTSxDQUFDO0VBQ0wsTUFBTSxFQUFFLElBQUk7RUFDWixTQUFTLEVBQUUsT0FBTztFQUNsQixLQUFLLEVIM0l1QixPQUFPO0VHNEluQyxVQUFVLEVIN0lrQixPQUFPLEdHOElwQzs7QUFFRCxtQkFBbUI7QUFFbkIsQUFBQSxTQUFTLENBQUM7RUFDUixNQUFNLEVBQUUsY0FBYyxHQUN2Qjs7QUFFRCxBQUFBLHFCQUFxQixDQUFDO0VBQ3BCLE1BQU0sRUFBRSxXQUFXLEdBQ3BCOztBQUVELEFBQUEsb0JBQW9CLENBQUM7RUFDbkIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFVBQVUsRUFBRSxpQ0FBaUMsQ0FBQyxTQUFTO0VBQ3ZELFFBQVEsRUFBRSxNQUFNO0VBQ2hCLFdBQVcsRUFBRSxPQUFPLEdBQ3JCOztBQUVELG1CQUFtQjtBQUVuQixBQUFBLGdCQUFnQixDQUFDO0VBQ2YsVUFBVSxFQUFFLElBQUk7RUFDaEIsTUFBTSxFQUFFLFNBQVM7RUFDakIsT0FBTyxFQUFFLEdBQUc7RUFDWixLQUFLLEVBQUUsS0FBSztFQUNaLGdCQUFnQixFQUFFLElBQUk7RUFDdEIsTUFBTSxFQUFFLGNBQWM7RUFDdEIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSTtFQUNqQixLQUFLLEVBQUUsSUFBSTtFQUNYLGtCQUFrQixFQUFFLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLGtCQUFrQjtFQUNsRCxlQUFlLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsa0JBQWtCO0VBQy9DLHFCQUFxQixFQUFFLEdBQUc7RUFDMUIsa0JBQWtCLEVBQUUsR0FBRztFQUN2QixhQUFhLEVBQUUsR0FBRyxHQWFuQjtFQTNCRCxBQWVFLGdCQWZjLENBZWQsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNILE9BQU8sRUFBRSxLQUFLO0lBQ2QsT0FBTyxFQUFFLE9BQU87SUFDaEIsV0FBVyxFQUFFLElBQUk7SUFDakIsS0FBSyxFQUFFLElBQUksR0FDWjtFQXBCSCxBQXFCRSxnQkFyQmMsQ0FxQmQsZUFBZSxDQUFDO0lBQ2QsZ0JBQWdCLEVBQUUsT0FBTztJQUN6QixxQkFBcUIsRUFBRSxHQUFHO0lBQzFCLGtCQUFrQixFQUFFLEdBQUc7SUFDdkIsYUFBYSxFQUFFLEdBQUcsR0FDbkI7O0FBR0gsbUJBQW1CO0FBRW5CLEFBQ0UsR0FEQyxBQUFBLFFBQVEsQ0FDVCxRQUFRLENBQUM7RUFDUCxLQUFLLEVBQUUsR0FBRztFQUNWLE1BQU0sRUFBRSxLQUFLLEdBQ2Q7O0FBSkgsQUFLRSxHQUxDLEFBQUEsUUFBUSxDQUtULE1BQU0sQ0FBQztFQUNMLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBR0gscUJBQXFCO0FBRXJCLEFBQ0UsSUFERSxDQUFDLGdCQUFnQixDQUNuQixtQkFBbUIsRUFEckIsSUFBSSxDQUFDLGdCQUFnQixDQUNFLGdCQUFnQixDQUFDO0VBQ3BDLFNBQVMsRUFBRSxJQUFJLEdBQ2hCOztBQUhILEFBSUUsSUFKRSxDQUFDLGdCQUFnQixDQUluQixtQkFBbUIsQ0FBQyxFQUFFLEVBSnhCLElBQUksQ0FBQyxnQkFBZ0IsQ0FJSyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7RUFDMUMsTUFBTSxFQUFFLElBQUk7RUFDWixnQkFBZ0IsRUFBRSxJQUFJO0VBQ3RCLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBUkgsQUFTRSxJQVRFLENBQUMsZ0JBQWdCLENBU25CLGdCQUFnQixDQUFDO0VBQ2YsYUFBYSxFQUFFLEdBQUc7RUFDbEIsT0FBTyxFQUFFLENBQUM7RUFDVixNQUFNLEVBQUUsSUFBSSxHQVFiO0VBcEJILEFBYUksSUFiQSxDQUFDLGdCQUFnQixDQVNuQixnQkFBZ0IsQ0FJZCxLQUFLLENBQUM7SUFDSixPQUFPLEVBQUUsR0FBRztJQUNaLEtBQUssRUFBRSxLQUFLLEdBSWI7SUFuQkwsQUFnQk0sSUFoQkYsQ0FBQyxnQkFBZ0IsQ0FTbkIsZ0JBQWdCLENBSWQsS0FBSyxBQUdGLE1BQU0sQ0FBQztNQUNOLE9BQU8sRUFBRSxHQUFHLEdBQ2I7O0FDcFFQLEFBQUEsVUFBVSxDQUFDO0VBQ1QsYUFBYSxFQUFFLElBQUk7RUFDbkIsZ0JBQWdCLEVBQUUsSUFBSTtFQUN0QixNQUFNLEVBQUUsY0FBYztFQUN0QixxQkFBcUIsRUFBRSxHQUFHO0VBQzFCLGtCQUFrQixFQUFFLEdBQUc7RUFDdkIsYUFBYSxFQUFFLEdBQUcsR0FpRW5CO0VBdkVELEFBT0UsVUFQUSxDQU9SLG9CQUFvQixDQUFDO0lBQ25CLE1BQU0sRUFBRSxDQUFDO0lBQ1QsVUFBVSxFQUFFLGNBQWM7SUFDMUIsU0FBUyxFQUFFLElBQUksR0FlaEI7SUF6QkgsQUFXSSxVQVhNLENBT1Isb0JBQW9CLEFBSWpCLFlBQVksQ0FBQztNQUNaLFVBQVUsRUFBRSxJQUFJLEdBQ2pCO0lBYkwsQUFjSSxVQWRNLENBT1Isb0JBQW9CLENBT2xCLENBQUMsQ0FBQztNQUNBLE9BQU8sRUFBRSxLQUFLO01BQ2QsT0FBTyxFQUFFLGlCQUFpQjtNQUMxQixVQUFVLEVBQUUsb0NBQW9DLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTO01BQ25FLFdBQVcsRUFBRSxJQUFJO01BQ2pCLEtBQUssRUFBRSxJQUFJLEdBS1o7TUF4QkwsQUFvQk0sVUFwQkksQ0FPUixvQkFBb0IsQ0FPbEIsQ0FBQyxBQU1FLE1BQU0sQ0FBQztRQUNOLGVBQWUsRUFBRSxJQUFJO1FBQ3JCLEtBQUssRUFBRSxPQUFPLEdBQ2Y7RUF2QlAsQUEwQkUsVUExQlEsQ0EwQlIsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO0lBQ2pCLGdCQUFnQixFQUFFLG1DQUFtQztJQUNyRCxLQUFLLEVBQUUsSUFBSSxHQUNaO0VBN0JILEFBOEJFLFVBOUJRLENBOEJSLHFCQUFxQixDQUFDO0lBQ3BCLE9BQU8sRUFBRSxJQUFJO0lBQ2IsVUFBVSxFQUFFLGNBQWMsR0FzQzNCO0lBdEVILEFBaUNJLFVBakNNLENBOEJSLHFCQUFxQixDQUduQixLQUFLLENBQUM7TUFDSixNQUFNLEVBQUUsQ0FBQztNQUNULE9BQU8sRUFBRSxDQUFDO01BQ1YsS0FBSyxFQUFFLElBQUksR0FlWjtNQW5ETCxBQXFDTSxVQXJDSSxDQThCUixxQkFBcUIsQ0FHbkIsS0FBSyxDQUlILEVBQUUsQ0FBQztRQUNELE9BQU8sRUFBRSxLQUFLO1FBQ2QsS0FBSyxFQUFFLEtBQUs7UUFDWixTQUFTLEVBQUUsSUFBSTtRQUNmLFdBQVcsRUFBRSxJQUFJO1FBQ2pCLFdBQVcsRUFBRSxJQUFJO1FBQ2pCLEtBQUssRUFBRSxJQUFJLEdBQ1o7TUE1Q1AsQUE2Q00sVUE3Q0ksQ0E4QlIscUJBQXFCLENBR25CLEtBQUssQ0FZSCxFQUFFLENBQUM7UUFDRCxPQUFPLEVBQUUsS0FBSztRQUNkLFNBQVMsRUFBRSxJQUFJO1FBQ2YsV0FBVyxFQUFFLElBQUk7UUFDakIsS0FBSyxFQUFFLElBQUksR0FDWjtJQWxEUCxBQW9ESSxVQXBETSxDQThCUixxQkFBcUIsQ0FzQm5CLEVBQUUsQ0FBQztNQUNELFVBQVUsRUFBRSxJQUFJO01BQ2hCLE1BQU0sRUFBRSxDQUFDO01BQ1QsT0FBTyxFQUFFLENBQUM7TUFDVixTQUFTLEVBQUUsSUFBSTtNQUNmLFdBQVcsRUFBRSxJQUFJLEdBQ2xCO0lBMURMLEFBMkRJLFVBM0RNLENBOEJSLHFCQUFxQixDQTZCbkIsRUFBRSxDQUFDO01BQ0QsYUFBYSxFQUFFLElBQUksR0FTcEI7TUFyRUwsQUE2RE0sVUE3REksQ0E4QlIscUJBQXFCLENBNkJuQixFQUFFLENBRUEsQ0FBQyxDQUFDO1FBQ0EsV0FBVyxFQUFFLElBQUksR0FDbEI7TUEvRFAsQUFnRU0sVUFoRUksQ0E4QlIscUJBQXFCLENBNkJuQixFQUFFLENBS0EsS0FBSyxDQUFDO1FBQ0osU0FBUyxFQUFFLElBQUk7UUFDZixXQUFXLEVBQUUsTUFBTTtRQUNuQixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQ3BFUCxBQUFBLFdBQVcsQ0FBQztFQUNWLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFFBQVEsRUFBRSxNQUFNLEdBZ0RqQjtFQWxERCxBQUdFLFdBSFMsQ0FHVCxDQUFDLEVBSEgsV0FBVyxDQUdOLElBQUksQ0FBQztJQUNOLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsU0FBUztJQUNqQixPQUFPLEVBQUUsUUFBUTtJQUNqQixNQUFNLEVBQUUsSUFBSTtJQUNaLFdBQVcsRUFBRSxNQUFNO0lBQ25CLFNBQVMsRUFBRSxJQUFJO0lBQ2YsV0FBVyxFQUFFLElBQUk7SUFDakIsS0FBSyxFQUFFLElBQUk7SUFDWCxVQUFVLEVBQUUsTUFBTTtJQUNsQixNQUFNLEVBQUUsT0FBTztJQUNmLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLE1BQU0sRUFBRSxjQUFjO0lBQ3RCLFVBQVUsRUFBRSxnRUFBeUU7SUFDckYsVUFBVSxFQUFFLDRDQUE0QztJQUN4RCxrQkFBa0IsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBc0I7SUFDeEQsZUFBZSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFzQixHQUN0RDtFQXJCSCxBQXNCRSxXQXRCUyxDQXNCVCxDQUFDLEFBQUEsTUFBTSxFQXRCVCxXQUFXLENBc0JBLElBQUksQUFBQSxNQUFNLENBQUM7SUFDbEIsZUFBZSxFQUFFLElBQUksR0FDdEI7RUF4QkgsQUF5QkUsV0F6QlMsQ0F5QlQsQ0FBQyxBQUFBLE9BQU8sQ0FBQztJQUNQLE9BQU8sRUFBRSxJQUFJO0lBQ2Isa0JBQWtCLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGtCQUFrQjtJQUNwRCxlQUFlLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGtCQUFrQixHQUNsRDtFQTdCSCxBQThCRSxXQTlCUyxDQThCVCxJQUFJLENBQUM7SUFNSCxLQUFLLEVBQUUsSUFBSTtJQUNYLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLFlBQVksRUFBRSxJQUFJO0lBQ2xCLGtCQUFrQixFQUFFLElBQUk7SUFDeEIsZUFBZSxFQUFFLElBQUksR0FDdEI7SUF6Q0gsQUErQkksV0EvQk8sQ0E4QlQsSUFBSSxBQUNELE9BQU8sQ0FBQztNQUNQLE9BQU8sRUFBRSxJQUFJO01BQ2Isa0JBQWtCLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGtCQUFrQjtNQUNwRCxlQUFlLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGtCQUFrQixHQUNsRDtFQW5DTCxBQTBDRSxXQTFDUyxDQTBDVCxLQUFLLENBQUM7SUFDSixrQkFBa0IsRUFBRSxXQUFXO0lBQy9CLGFBQWEsRUFBRSxXQUFXLEdBQzNCO0VBN0NILEFBOENFLFdBOUNTLENBOENULFNBQVMsQ0FBQztJQUNSLGtCQUFrQixFQUFFLFdBQVc7SUFDL0IsYUFBYSxFQUFFLFdBQVcsR0FDM0I7O0FDakRILEFBQUEsT0FBTyxDQUFDO0VBQ04sYUFBYSxFQUFFLElBQUk7RUFDbkIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENORVksT0FBTyxHTWdJckM7RUFwSUQsQUFHRSxPQUhLLENBR0wsRUFBRSxDQUFDO0lBQ0QsTUFBTSxFQUFFLENBQUMsR0FvQlY7SUF4QkgsQUFLSSxPQUxHLENBR0wsRUFBRSxDQUVBLENBQUMsQ0FBQztNQUNBLE9BQU8sRUFBRSxLQUFLO01BQ2QsYUFBYSxFQUFFLEdBQUc7TUFDbEIsT0FBTyxFQUFFLEtBQUs7TUFDZCxnQkFBZ0IsRU5RVCxPQUFPO01NUGQsU0FBUyxFQUFFLElBQUk7TUFDZixXQUFXLEVBQUUsSUFBSTtNQUNqQixXQUFXLEVBQUUsSUFBSTtNQUNqQixLQUFLLEVBQUUsSUFBSTtNQUNYLFVBQVUsRUFBRSxNQUFNLEdBQ25CO0lBZkwsQUFnQkksT0FoQkcsQ0FHTCxFQUFFLEFBYUMsS0FBSyxDQUFDLENBQUMsQ0FBQztNQUNQLGFBQWEsRUFBRSxDQUFDLEdBQ2pCO0lBbEJMLEFBbUJJLE9BbkJHLENBR0wsRUFBRSxDQWdCQSxDQUFDLEFBQUEsTUFBTSxDQUFDO01BQ04sZ0JBQWdCLEVOSFQsT0FBTztNTUlkLEtBQUssRUFBRSxJQUFJO01BQ1gsZUFBZSxFQUFFLElBQUksR0FDdEI7RUF2QkwsQUF5QkUsT0F6QkssQ0F5QkwsRUFBRSxDQUFDO0lBQ0QsTUFBTSxFQUFFLE1BQU0sR0FDZjtFQTNCSCxBQTRCRSxPQTVCSyxDQTRCTCxFQUFFLENBQUM7SUFDRCxVQUFVLEVBQUUsSUFBSTtJQUNoQixNQUFNLEVBQUUsQ0FBQztJQUNULE9BQU8sRUFBRSxDQUFDLEdBQ1g7RUFoQ0gsQUFpQ0UsT0FqQ0ssQ0FpQ0wsRUFBRSxDQUFDO0lBQ0QsYUFBYSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENOOUJHLE9BQU87SU0rQmxDLFdBQVcsRUFBRSxJQUFJLEdBaURsQjtJQXBGSCxBQW9DSSxPQXBDRyxDQWlDTCxFQUFFLEFBR0MsS0FBSyxDQUFDO01BQ0wsTUFBTSxFQUFFLElBQUksR0FDYjtJQXRDTCxBQXVDSSxPQXZDRyxDQWlDTCxFQUFFLENBTUEsQ0FBQyxDQUFDO01BQ0EsT0FBTyxFQUFFLEtBQUs7TUFDZCxPQUFPLEVBQUUsSUFBSTtNQUNiLFFBQVEsRUFBRSxNQUFNLEdBd0JqQjtNQWxFTCxBQTJDTSxPQTNDQyxDQWlDTCxFQUFFLENBTUEsQ0FBQyxBQUlFLE1BQU0sQ0FBQztRQUNOLFVBQVUsRU4zQkwsT0FBTztRTTRCWixLQUFLLEVBQUUsSUFBSTtRQUNYLGVBQWUsRUFBRSxJQUFJLEdBQ3RCO01BL0NQLEFBZ0RNLE9BaERDLENBaUNMLEVBQUUsQ0FNQSxDQUFDLENBU0MsR0FBRyxBQUFBLFVBQVUsQ0FBQztRQUNaLE9BQU8sRUFBRSxLQUFLO1FBQ2QsS0FBSyxFQUFFLEtBQUs7UUFDWixNQUFNLEVBQUUsVUFBVSxHQUNuQjtNQXBEUCxBQXFETSxPQXJEQyxDQWlDTCxFQUFFLENBTUEsQ0FBQyxDQWNDLEtBQUssQ0FBQztRQUNKLE9BQU8sRUFBRSxLQUFLO1FBQ2QsU0FBUyxFQUFFLElBQUk7UUFDZixLQUFLLEVBQUUsSUFBSSxHQUNaO01BekRQLEFBMERNLE9BMURDLENBaUNMLEVBQUUsQ0FNQSxDQUFDLEFBbUJFLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDWixLQUFLLEVBQUUsSUFBSSxHQUNaO01BNURQLEFBNkRNLE9BN0RDLENBaUNMLEVBQUUsQ0FNQSxDQUFDLENBc0JDLE1BQU0sQ0FBQztRQUNMLE9BQU8sRUFBRSxLQUFLO1FBQ2QsU0FBUyxFQUFFLElBQUk7UUFDZixLQUFLLEVBQUUsSUFBSSxHQUNaO0lBakVQLEFBb0VNLE9BcEVDLENBaUNMLEVBQUUsQUFrQ0MsS0FBSyxDQUFDLENBQUMsQUFDTCxPQUFPLENBQUM7TUFDUCxPQUFPLEVBQUUsUUFBUTtNQUNqQixLQUFLLEVBQUUsSUFBSTtNQUNYLFVBQVUsRUFBRSxJQUFJLENBQUMsNEJBQTRCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRO01BQ2xFLE1BQU0sRUFBRSxjQUFjO01BQ3RCLEtBQUssRUFBRSxJQUFJO01BQ1gsVUFBVSxFQUFFLE1BQU07TUFDbEIsTUFBTSxFQUFFLE9BQU8sR0FDaEI7SUE1RVAsQUE2RU0sT0E3RUMsQ0FpQ0wsRUFBRSxBQWtDQyxLQUFLLENBQUMsQ0FBQyxBQVVMLE1BQU0sQUFBQSxPQUFPLENBQUM7TUFDYixVQUFVLEVON0RMLE9BQU87TU04RFosWUFBWSxFTjlEUCxPQUFPO01NK0RaLEtBQUssRU5wRUEsSUFBSTtNTXFFVCxlQUFlLEVBQUUsSUFBSSxHQUN0QjtFQWxGUCxBQXFGRSxPQXJGSyxDQXFGTCxLQUFLLENBQUM7SUFDSixPQUFPLEVBQUUsR0FBRztJQUNaLFFBQVEsRUFBRSxNQUFNLEdBNEJqQjtJQW5ISCxBQXdGSSxPQXhGRyxDQXFGTCxLQUFLLENBR0gsRUFBRSxDQUFDO01BQ0QsTUFBTSxFQUFFLENBQUMsR0FDVjtJQTFGTCxBQTJGSSxPQTNGRyxDQXFGTCxLQUFLLENBTUgsR0FBRyxDQUFDO01BQ0YsTUFBTSxFQUFFLE1BQU0sR0FDZjtJQTdGTCxBQThGSSxPQTlGRyxDQXFGTCxLQUFLLENBU0gsVUFBVSxDQUFDO01BQ1QsS0FBSyxFQUFFLEtBQUs7TUFDWixNQUFNLEVBQUUsYUFBYSxHQUl0QjtNQXBHTCxBQWlHTSxPQWpHQyxDQXFGTCxLQUFLLENBU0gsVUFBVSxDQUdSLEdBQUcsQ0FBQztRQUNGLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7SUFuR1AsQUFxR0ksT0FyR0csQ0FxRkwsS0FBSyxDQWdCSCxVQUFVLENBQUM7TUFDVCxNQUFNLEVBQUUsQ0FBQztNQUNULE9BQU8sRUFBRSxDQUFDLEdBV1g7TUFsSEwsQUF3R00sT0F4R0MsQ0FxRkwsS0FBSyxDQWdCSCxVQUFVLENBR1IsQ0FBQyxDQUFDO1FBQ0EsU0FBUyxFQUFFLElBQUk7UUFDZixXQUFXLEVBQUUsSUFBSSxHQU9sQjtRQWpIUCxBQTJHUSxPQTNHRCxDQXFGTCxLQUFLLENBZ0JILFVBQVUsQ0FHUixDQUFDLEFBR0UsS0FBSyxDQUFDO1VBQ0wsTUFBTSxFQUFFLFVBQVU7VUFDbEIsU0FBUyxFQUFFLElBQUk7VUFDZixXQUFXLEVBQUUsTUFBTTtVQUNuQixLQUFLLEVOakdHLElBQUksR01rR2I7RUFoSFQsQUFvSEUsT0FwSEssQ0FvSEwsT0FBTyxDQUFDO0lBQ04sYUFBYSxFQUFFLEdBQUc7SUFDbEIsT0FBTyxFQUFFLEtBQUs7SUFDZCxVQUFVLEVBQUUsR0FBRyxDQUFDLEtBQUssQ05uSE0sT0FBTztJTW9IbEMsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsSUFBSTtJQUNqQixVQUFVLEVBQUUsTUFBTSxHQVNuQjtJQW5JSCxBQTJISSxPQTNIRyxDQW9ITCxPQUFPLENBT0wsQ0FBQyxDQUFDO01BQ0EsV0FBVyxFQUFFLElBQUk7TUFDakIsS0FBSyxFTi9HTyxJQUFJLEdNb0hqQjtNQWxJTCxBQThITSxPQTlIQyxDQW9ITCxPQUFPLENBT0wsQ0FBQyxBQUdFLE1BQU0sQ0FBQztRQUNOLEtBQUssRU45R0EsT0FBTztRTStHWixlQUFlLEVBQUUsSUFBSSxHQUN0Qjs7QUFLUCxBQUFBLGNBQWMsQ0FBQztFQUNiLE9BQU8sRUFBRSxLQUFLO0VBQ2QsVUFBVSxFQUFFLElBQUk7RUFDaEIsTUFBTSxFQUFFLElBQUksR0F1Q2I7RUExQ0QsQUFJRSxjQUpZLENBSVosRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNILFVBQVUsRUFBRSxJQUFJO0lBQ2hCLEtBQUssRUFBRSxJQUFJLEdBTVo7SUFaSCxBQU9JLGNBUFUsQ0FJWixFQUFFLENBQUMsQ0FBQyxBQUdELE1BQU0sQ0FBQztNQUNOLFVBQVUsRUFBRSxJQUFJO01BQ2hCLGVBQWUsRUFBRSxTQUFTO01BQzFCLEtBQUssRUFBRSxJQUFJLEdBQ1o7RUFYTCxBQWFFLGNBYlksQ0FhWixFQUFFLENBQUM7SUFDRCxNQUFNLEVBQUUsSUFBSTtJQUNaLE9BQU8sRUFBRSxDQUFDO0lBQ1YsUUFBUSxFQUFFLE1BQU0sR0FtQmpCO0lBbkNILEFBaUJJLGNBakJVLENBYVosRUFBRSxDQUlBLEVBQUUsQ0FBQztNQUNELEtBQUssRUFBRSxJQUFJO01BQ1gsTUFBTSxFQUFFLENBQUM7TUFDVCxPQUFPLEVBQUUsQ0FBQztNQUNWLE1BQU0sRUFBRSxJQUFJLEdBYWI7TUFsQ0wsQUFzQk0sY0F0QlEsQ0FhWixFQUFFLENBSUEsRUFBRSxDQUtBLENBQUMsQ0FBQztRQUNBLE9BQU8sRUFBRSxLQUFLO1FBQ2QsS0FBSyxFQUFFLElBQUk7UUFDWCxPQUFPLEVBQUUsQ0FBQyxHQVFYO1FBakNQLEFBMEJRLGNBMUJNLENBYVosRUFBRSxDQUlBLEVBQUUsQ0FLQSxDQUFDLEFBSUUsTUFBTSxDQUFDO1VBQ04sVUFBVSxFTm5KRixJQUFJLEdNb0piO1FBNUJULEFBNkJRLGNBN0JNLENBYVosRUFBRSxDQUlBLEVBQUUsQ0FLQSxDQUFDLENBT0MsR0FBRyxDQUFDO1VBQ0YsT0FBTyxFQUFFLEtBQUs7VUFDZCxNQUFNLEVBQUUsR0FBRyxHQUNaO0VBaENULEFBb0NFLGNBcENZLENBb0NaLE9BQU8sQ0FBQztJQUNOLE1BQU0sRUFBRSxJQUFJLEdBSWI7SUF6Q0gsQUFzQ0ksY0F0Q1UsQ0FvQ1osT0FBTyxDQUVMLENBQUMsQ0FBQztNQUNBLEtBQUssRU4vSk8sSUFBSSxHTWdLakI7O0FBSUwsQUFFSSxPQUZHLENBQUMsTUFBTSxDQUNaLENBQUMsQ0FDQyxHQUFHLENBQUM7RUFDRixNQUFNLEVBQUUsZUFBZTtFQUN2QixPQUFPLEVBQUUsR0FBRztFQUNaLE1BQU0sRUFBRSxJQUFJO0VBQ1osTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENOcExRLE9BQU8sR01xTGpDOztBQVBMLEFBUUksT0FSRyxDQUFDLE1BQU0sQ0FDWixDQUFDLEFBT0UsTUFBTSxDQUFDLEdBQUcsQ0FBQztFQUNWLE9BQU8sRUFBRSxHQUFHO0VBQ1osTUFBTSxFQUFFLElBQUk7RUFDWixVQUFVLEVONUtILE9BQU8sR002S2Y7O0FBWkwsQUFjRSxPQWRLLENBQUMsTUFBTSxDQWNaLEVBQUUsQ0FBQyxFQUFFLENBQUM7RUFDSixPQUFPLEVBQUUsS0FBSztFQUNkLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUksR0FNbEI7RUF2QkgsQUFrQkksT0FsQkcsQ0FBQyxNQUFNLENBY1osRUFBRSxDQUFDLEVBQUUsQ0FJSCxLQUFLLENBQUM7SUFDSixPQUFPLEVBQUUsS0FBSztJQUNkLFNBQVMsRUFBRSxJQUFJO0lBQ2YsS0FBSyxFTnpMTyxJQUFJLEdNMExqQjs7QUN4TUwsQUFBQSxPQUFPLENBQUM7RUFDTixVQUFVLEVBQUUsR0FBRztFQUNmLGFBQWEsRUFBRSxJQUFJO0VBQ25CLE9BQU8sRUFBRSxJQUFJO0VBQ2IsZ0JBQWdCLEVBQUUsT0FBTyxHQUMxQjs7QUFFRCxBQUFBLFlBQVksQ0FBQztFQUNYLEtBQUssRUFBRSxJQUFJO0VBQ1gsWUFBWSxFQUFFLElBQUk7RUFDbEIsS0FBSyxFQUFFLEtBQUs7RUFDWixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUVELEFBQUEsYUFBYSxDQUFDO0VBQ1osS0FBSyxFQUFFLEtBQUs7RUFDWixXQUFXLEVBQUUsSUFBSTtFQUNqQixLQUFLLEVBQUUsS0FBSztFQUNaLEtBQUssRUFBRSxLQUFLLEdBQ2I7O0FBRUQsQUFDRSxPQURLLENBQ0wsQ0FBQyxFQURILE9BQU8sQ0FDRixFQUFFLEVBRFAsT0FBTyxDQUNFLEVBQUUsQ0FBQztFQUNSLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUksR0FDbEI7O0FBTEgsQUFNRSxPQU5LLENBTUwsS0FBSyxDQUFDO0VBQ0osYUFBYSxFQUFFLENBQUM7RUFDaEIsU0FBUyxFQUFFLElBQUk7RUFDZixLQUFLLEVBQUUsT0FBTyxHQUNmOztBQVZILEFBV0UsT0FYSyxDQVdMLEVBQUUsRUFYSixPQUFPLENBV0QsTUFBTSxFQVhaLE9BQU8sQ0FXTyxLQUFLLEVBWG5CLE9BQU8sQ0FXYyxNQUFNLENBQUM7RUFDeEIsYUFBYSxFQUFFLEdBQUc7RUFDbEIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSTtFQUNqQixXQUFXLEVBQUUsSUFBSTtFQUNqQixLQUFLLEVBQUUsT0FBTyxHQUNmOztBQWpCSCxBQWtCRSxPQWxCSyxDQWtCTCxLQUFLLENBQUM7RUFDSixhQUFhLEVBQUUsQ0FBQyxHQUNqQjs7QUFwQkgsQUFxQkUsT0FyQkssQ0FxQkwsT0FBTyxFQXJCVCxPQUFPLENwRnliUCxhQUFhLENBS1gsTUFBTSxFQUxSLGFBQWEsQ29GemJiLE9BQU8sQ3BGOGJMLE1BQU0sQ29GemFFO0VBQ04sU0FBUyxFQUFFLElBQUksR0FDaEI7O0FBdkJILEFBd0JFLE9BeEJLLENBd0JMLEtBQUssQ0FBQztFQUNKLE9BQU8sRUFBRSxNQUFNLEdBQ2hCOztBQTFCSCxBQTJCRSxPQTNCSyxDQTJCTCxJQUFJLENBQUM7RUFDSCxhQUFhLEVBQUUsQ0FBQyxHQWdCakI7RUE1Q0gsQUE2QkksT0E3QkcsQ0EyQkwsSUFBSSxDQUVGLE9BQU8sQ0FBQztJQUNOLGFBQWEsRUFBRSxDQUFDLEdBYWpCO0lBM0NMLEFBK0JNLE9BL0JDLENBMkJMLElBQUksQ0FFRixPQUFPLENBRUwsT0FBTyxFQS9CYixPQUFPLENBMkJMLElBQUksQ0FFRixPQUFPLENwRjRaWCxhQUFhLENBS1gsTUFBTSxFQUxSLGFBQWEsQ29GemJiLE9BQU8sQ0EyQkwsSUFBSSxDQUVGLE9BQU8sQ3BGaWFULE1BQU0sQ29GL1pNO01BQ04sT0FBTyxFQUFFLFFBQVE7TUFDakIsS0FBSyxFQUFFLElBQUksR0FDWjtJQWxDUCxBQW1DTSxPQW5DQyxDQTJCTCxJQUFJLENBRUYsT0FBTyxDQU1MLFdBQVcsQ0FBQztNQUNWLE9BQU8sRUFBRSxNQUFNO01BQ2YsS0FBSyxFQUFFLElBQUk7TUFDWCxPQUFPLEVBQUUsUUFBUTtNQUNqQixVQUFVLEVBQUUsSUFBSTtNQUNoQixTQUFTLEVBQUUsSUFBSTtNQUNmLEtBQUssRUFBRSxPQUFPLEdBQ2Y7O0FBS1Asb0JBQW9CO0FBRXBCLEFBQUEsc0JBQXNCLENBQUMsZ0JBQWdCLENBQUM7RUFDdEMsWUFBWSxFQUFFLENBQUM7RUFDZixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJLEdBSWxCO0VBUEQsQUFJRSxzQkFKb0IsQ0FBQyxnQkFBZ0IsQ0FJckMsRUFBRSxDQUFDO0lBQ0QsYUFBYSxFQUFFLElBQUksR0FDcEI7O0FBR0gsaUJBQWlCO0FBRWpCLEFBQ0UsVUFEUSxDQUNSLEVBQUUsQ0FBQztFQUNELFdBQVcsRUFBRSxJQUFJLEdBQ2xCOztBQUhILEFBSUUsVUFKUSxDQUlSLFVBQVUsQ0FBQztFQUNULGFBQWEsRUFBRSxHQUFHLEdBQ25COztBQUdILGNBQWM7QUFFZCxBQUFBLGdCQUFnQixDQUFDLFVBQVUsQ0FBQztFQUMxQixhQUFhLEVBQUUsSUFBSTtFQUNuQixPQUFPLEVBQUUsS0FBSyxHQUlmO0VBTkQsQUFHRSxnQkFIYyxDQUFDLFVBQVUsQUFHeEIsV0FBVyxDQUFDO0lBQ1gsYUFBYSxFQUFFLENBQUMsR0FDakI7O0FBR0gsVUFBVTtBQUVWLEFBQUEsWUFBWSxDQUFDLElBQUksQ0FBQztFQUNoQixNQUFNLEVBQUUsVUFBVSxHQUtuQjtFQU5ELEFBRUUsWUFGVSxDQUFDLElBQUksQ0FFZixDQUFDLENBQUM7SUFDQSxNQUFNLEVBQUUsQ0FBQztJQUNULE9BQU8sRUFBRSxDQUFDLEdBQ1g7O0FBR0gsY0FBYztBQUVkLEFBQ0UsZ0JBRGMsQ0FDZCxVQUFVLENBQUM7RUFDVCxhQUFhLEVBQUUsR0FBRyxHQUNuQjs7QUFISCxBQUlFLGdCQUpjLENBSWQsU0FBUyxDQUFDO0VBQ1IsYUFBYSxFQUFFLENBQUM7RUFDaEIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSSxHQVdsQjtFQWxCSCxBQVFJLGdCQVJZLENBSWQsU0FBUyxDQUlQLENBQUMsQ0FBQztJQUNBLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLEtBQUssRUFBRSxJQUFJO0lBQ1gscUJBQXFCLEVBQUUsR0FBRztJQUMxQixrQkFBa0IsRUFBRSxHQUFHLEdBSXhCO0lBakJMLEFBY00sZ0JBZFUsQ0FJZCxTQUFTLENBSVAsQ0FBQyxBQU1FLE1BQU0sQ0FBQztNQUNOLFVBQVUsRUFBRSxPQUFPLEdBQ3BCOztBQUtQLGNBQWM7QUFFZCxBQUFBLGdCQUFnQixDQUFDO0VBQ2YsS0FBSyxFQUFFLEtBQUssR0FJYjtFQUxELEFBRUUsZ0JBRmMsQ0FFZCxRQUFRLENBQUM7SUFDUCxVQUFVLEVBQUUsSUFBSSxHQUNqQjs7QUFHSCxnQkFBZ0I7QUFFaEIsQUFBQSxrQkFBa0IsQ0FBQyxXQUFXLENBQUM7RUFDN0IsVUFBVSxFQUFFLElBQUk7RUFDaEIsWUFBWSxFQUFFLENBQUM7RUFDZixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLEtBQUssRUFBRSxJQUFJLEdBSVo7RUFURCxBQU1FLGtCQU5nQixDQUFDLFdBQVcsQ0FNNUIsRUFBRSxDQUFDO0lBQ0QsYUFBYSxFQUFFLEdBQUcsR0FDbkI7O0FBR0gsYUFBYTtBQUViLEFBQUEsZUFBZSxDQUFDLFVBQVUsQ0FBQztFQUN6QixhQUFhLEVBQUUsR0FBRyxHQUNuQjs7QUFFRCxtQkFBbUI7QUFFbkIsQUFDRSxtQkFEaUIsQ0FDakIsU0FBUyxDQUFDO0VBQ1IsYUFBYSxFQUFFLElBQUk7RUFDbkIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSTtFQUNqQixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQU5ILEFBT0UsbUJBUGlCLENBT2pCLFVBQVUsQ0FBQztFQUNULGFBQWEsRUFBRSxJQUFJLEdBQ3BCOztBQVRILEFBVUUsbUJBVmlCLENBVWpCLFVBQVUsQ0FBQztFQUNULGFBQWEsRUFBRSxJQUFJO0VBQ25CLE9BQU8sRUFBRSxDQUFDLEdBVVg7RUF0QkgsQUFhSSxtQkFiZSxDQVVqQixVQUFVLENBR1IsQ0FBQyxDQUFDO0lBQ0EsYUFBYSxFQUFFLEdBQUc7SUFDbEIsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsSUFBSSxHQUNsQjtFQWpCTCxBQWtCSSxtQkFsQmUsQ0FVakIsVUFBVSxDQVFSLElBQUksQ0FBQztJQUNILFNBQVMsRUFBRSxJQUFJO0lBQ2YsS0FBSyxFQUFFLElBQUksR0FDWjs7QUFJTCxXQUFXO0FBRVgsQUFBQSxhQUFhLENBQUMsVUFBVSxDQUFDO0VBQ3ZCLGFBQWEsRUFBRSxHQUFHLEdBQ25COztBQUVELFdBQVc7QUFFWCxBQUNFLGFBRFcsQ0FDWCxVQUFVLENBQUM7RUFDVCxhQUFhLEVBQUUsR0FBRyxHQUNuQjs7QUFISCxBQUlFLGFBSlcsQ0FJWCxPQUFPLEVBSlQsYUFBYSxDQUlGLE9BQU8sQ0FBQztFQUNmLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBUkgsQUFTRSxhQVRXLEFBU1YsbUJBQW1CLENBQUM7RUFDbkIsT0FBTyxFQUFFLENBQUMsR0FJWDtFQWRILEFBV0ksYUFYUyxBQVNWLG1CQUFtQixDQUVsQixXQUFXLENBQUM7SUFDVixPQUFPLEVBQUUsSUFBSSxHQUNkOztBQUlMLHFCQUFxQjtBQUVyQixBQUNFLGVBRGEsQ0FDYixLQUFLLENBQUM7RUFDSixhQUFhLEVBQUUsQ0FBQztFQUNoQixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJLEdBSWxCO0VBUkgsQUFLSSxlQUxXLENBQ2IsS0FBSyxDQUlILENBQUMsQ0FBQztJQUNBLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBUEwsQUFTRSxlQVRhLENBU2IsUUFBUSxDQUFDO0VBQ1AsYUFBYSxFQUFFLElBQUk7RUFDbkIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSSxHQUNsQjs7QUFiSCxBQWNFLGVBZGEsQ0FjYixPQUFPLENBQUM7RUFDTixhQUFhLEVBQUUsSUFBSSxHQUNwQjs7QUFHSCxVQUFVO0FBRVYsQUFDRSxZQURVLENBQ1YsU0FBUyxDQUFDO0VBQ1IsYUFBYSxFQUFFLEdBQUc7RUFDbEIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSTtFQUNqQixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQU5ILEFBT0UsWUFQVSxDQU9WLElBQUksQ0FBQyxFQUFFLENBQUM7RUFDTixVQUFVLEVBQUUsSUFBSTtFQUNoQixPQUFPLEVBQUUsQ0FBQztFQUNWLEtBQUssRUFBRSxJQUFJLEdBSVo7RUFkSCxBQVdJLFlBWFEsQ0FPVixJQUFJLENBQUMsRUFBRSxDQUlMLEVBQUUsQ0FBQztJQUNELFdBQVcsRUFBRSxJQUFJLEdBQ2xCOztBQUlMLGtCQUFrQjtBQUVsQixBQUNFLG9CQURrQixDQUNsQixTQUFTLENBQUM7RUFDUixhQUFhLEVBQUUsSUFBSTtFQUNuQixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLEtBQUssRUFBRSxJQUFJLEdBSVo7RUFUSCxBQU1JLG9CQU5nQixDQUNsQixTQUFTLENBS1AsQ0FBQyxDQUFDO0lBQ0EsS0FBSyxFQUFFLE9BQU8sR0FDZjs7QUFSTCxBQVVFLG9CQVZrQixDQVVsQixRQUFRLENBQUM7RUFDUCxVQUFVLEVBQUUsSUFBSTtFQUNoQixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxDQUFDO0VBQ1YsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSSxHQTRCbEI7RUEzQ0gsQUFnQkksb0JBaEJnQixDQVVsQixRQUFRLENBTU4sRUFBRSxDQUFDO0lBQ0QsUUFBUSxFQUFFLFFBQVE7SUFDbEIsYUFBYSxFQUFFLEdBQUc7SUFDbEIsY0FBYyxFQUFFLElBQUk7SUFDcEIsTUFBTSxFQUFFLElBQUksR0FzQmI7SUExQ0wsQUFxQk0sb0JBckJjLENBVWxCLFFBQVEsQ0FNTixFQUFFLENBS0EsTUFBTSxDQUFDO01BQ0wsU0FBUyxFQUFFLElBQUk7TUFDZixXQUFXLEVBQUUsTUFBTTtNQUNuQixLQUFLLEVBQUUsT0FBTyxHQUNmO0lBekJQLEFBMEJNLG9CQTFCYyxDQVVsQixRQUFRLENBTU4sRUFBRSxDQVVBLElBQUksQ0FBQztNQUNILFFBQVEsRUFBRSxRQUFRO01BQ2xCLE1BQU0sRUFBRSxDQUFDO01BQ1QsSUFBSSxFQUFFLENBQUM7TUFDUCxNQUFNLEVBQUUsSUFBSTtNQUNaLGdCQUFnQixFQUFFLE9BQU8sR0FVMUI7TUF6Q1AsQUFnQ1Esb0JBaENZLENBVWxCLFFBQVEsQ0FNTixFQUFFLENBVUEsSUFBSSxDQU1GLFFBQVEsQ0FBQztRQUNQLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFBRSxJQUFJO1FBQ1QsS0FBSyxFQUFFLEtBQUs7UUFDWixLQUFLLEVBQUUsSUFBSTtRQUNYLFdBQVcsRUFBRSxJQUFJO1FBQ2pCLEtBQUssRUFBRSxPQUFPO1FBQ2QsVUFBVSxFQUFFLElBQUksR0FDakI7O0FBeENULEFBNENFLG9CQTVDa0IsQ0E0Q2xCLFlBQVksQ0FBQztFQUNYLEtBQUssRUFBRSxPQUFPLEdBQ2Y7O0FBR0gsQUFBQSxtQkFBbUIsQUFBQSxvQkFBb0IsQ0FBQyxTQUFTLEVBQUUsb0JBQW9CLEFBQUEsb0JBQW9CLENBQUMsU0FBUyxDQUFDO0VBQ3BHLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUksR0FDbEI7O0FBRUQsQUFBQSxtQkFBbUIsQUFBQSxvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsb0JBQW9CLEFBQUEsb0JBQW9CLENBQUMsUUFBUSxDQUFDO0VBQ2xHLFNBQVMsRUFBRSxJQUFJLEdBQ2hCOztBQUVELEFBQUEsbUJBQW1CLEFBQUEsb0JBQW9CLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxvQkFBb0IsQUFBQSxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO0VBQ3hHLGNBQWMsRUFBRSxJQUFJLEdBQ3JCOztBQUVELEFBQUEsbUJBQW1CLEFBQUEsb0JBQW9CLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsb0JBQW9CLEFBQUEsb0JBQW9CLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7RUFDbEgsTUFBTSxFQUFFLElBQUksR0FDYjs7QUFFRCxBQUFBLG1CQUFtQixBQUFBLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxvQkFBb0IsQUFBQSxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7RUFDcEksR0FBRyxFQUFFLEdBQUcsR0FDVDs7QUFFRCxzQkFBc0I7QUFFdEIsQUFDRSxpQkFEZSxDQUNmLEVBQUUsQ0FBQztFQUNELGFBQWEsRUFBRSxJQUFJO0VBQ25CLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7RUFDakIsS0FBSyxFQUFFLElBQUksR0FDWjs7QUFOSCxBQU9FLGlCQVBlLENBT2YsRUFBRSxDQUFDO0VBQ0QsWUFBWSxFQUFFLENBQUM7RUFDZixVQUFVLEVBQUUsSUFBSTtFQUNoQixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJLEdBQ2xCOztBQVpILEFBYUUsaUJBYmUsQ0FhZixFQUFFLENBQUM7RUFDRCxhQUFhLEVBQUUsSUFBSSxHQUNwQjs7QUFHSCxnQkFBZ0I7QUFFaEIsQUFBQSxZQUFZLENBQUMsRUFBRSxDQUFDO0VBQ2QsWUFBWSxFQUFFLElBQUksR0FJbkI7RUFMRCxBQUVFLFlBRlUsQ0FBQyxFQUFFLENBRWIsRUFBRSxDQUFDO0lBQ0QsYUFBYSxFQUFFLElBQUksR0FDcEI7O0FBR0gsV0FBVztBQUVYLEFBQ0UsYUFEVyxDQUNYLFVBQVUsQ0FBQztFQUNULGFBQWEsRUFBRSxHQUFHLEdBQ25COztBQUhILEFBSUUsYUFKVyxBQUlWLG1CQUFtQixDQUFDO0VBQ25CLE9BQU8sRUFBRSxDQUFDLEdBSVg7RUFUSCxBQU1JLGFBTlMsQUFJVixtQkFBbUIsQ0FFbEIsUUFBUSxDQUFDO0lBQ1AsT0FBTyxFQUFFLElBQUksR0FDZDs7QUFSTCxBQVVFLGFBVlcsQUFVVixvQkFBb0IsQ0FBQyxNQUFNLEVBVjlCLGFBQWEsQUFVb0IscUJBQXFCLENBQUMsTUFBTSxDQUFDO0VBQzFELE1BQU0sRUFBRSxZQUFZLEdBQ3JCOztBQUdILGVBQWU7QUFFZixBQUFBLGlCQUFpQixDQUFDLFVBQVUsQ0FBQztFQUMzQixhQUFhLEVBQUUsR0FBRyxHQUNuQjs7QUFFRCxrQkFBa0I7QUFFbEIsQUFBQSxtQkFBbUIsQ0FBQztFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLFVBQVUsR0FZbkI7RUFmRCxBQUlFLG1CQUppQixDQUlqQixNQUFNLENBQUM7SUFDTCxTQUFTLEVBQUUsSUFBSTtJQUNmLFdBQVcsRUFBRSxJQUFJLEdBQ2xCO0VBUEgsQUFRRSxtQkFSaUIsQ0FRakIsS0FBSyxDQUFDO0lBQ0osT0FBTyxFQUFFLElBQUksR0FDZDtFQVZILEFBV0UsbUJBWGlCLENBV2pCLFFBQVEsQ0FBQztJQUNQLEtBQUssRUFBRSxLQUFLO0lBQ1osTUFBTSxFQUFFLElBQUksR0FDYjs7QUFHSCxtQkFBbUI7QUFFbkIsQUFBQSxvQkFBb0IsQ0FBQztFQUNuQixLQUFLLEVBQUUsSUFBSTtFQUNYLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLFVBQVUsR0FTbkI7RUFaRCxBQUlFLG9CQUprQixDQUlsQixNQUFNLENBQUM7SUFDTCxTQUFTLEVBQUUsSUFBSTtJQUNmLFdBQVcsRUFBRSxJQUFJLEdBQ2xCO0VBUEgsQUFRRSxvQkFSa0IsQ0FRbEIsUUFBUSxDQUFDO0lBQ1AsS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsSUFBSSxHQUNiOztBQUdILG9CQUFvQjtBQUVwQixBQUFBLHFCQUFxQixDQUFDO0VBQ3BCLEtBQUssRUFBRSxLQUFLLEdBS2I7RUFORCxBQUVFLHFCQUZtQixDQUVuQixRQUFRLENBQUM7SUFDUCxLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxJQUFJLEdBQ2I7O0FDbmFILEFBQUEsVUFBVSxDQUFDO0VBQ1QsV0FBVyxFQUFFLEdBQUc7RUFDaEIsWUFBWSxFQUFFLEdBQUc7RUFDakIsS0FBSyxFQUFFLEdBQUc7RUFDVixTQUFTLEVBQUUsS0FBSyxHQUNqQjs7QUFFRCxBQUFBLGVBQWUsQ0FBQztFQUNkLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxHQUFHO0VBQ1osZ0JBQWdCLEVBQUUsT0FBTztFQUN6QixJQUFJLEVBQUUsQ0FBQyxHQVFSO0VBWkQsQUFLRSxlQUxhLEFBS1osTUFBTSxDQUFDO0lBQ04sT0FBTyxFQUFFLEdBQUc7SUFDWixPQUFPLEVBQUUsS0FBSztJQUNkLE1BQU0sRUFBRSxDQUFDO0lBQ1QsS0FBSyxFQUFFLElBQUk7SUFDWCxVQUFVLEVBQUUsTUFBTSxHQUNuQjs7QUFHSCxBQUFBLFlBQVksQ0FBQztFQUNYLE1BQU0sRUFBRSxNQUFNO0VBQ2QsT0FBTyxFQUFFLElBQUk7RUFDYixNQUFNLEVBQUUsZUFBZTtFQUN2QixJQUFJLEVBQUUsQ0FBQyxHQVFSO0VBWkQsQUFLRSxZQUxVLEFBS1QsTUFBTSxDQUFDO0lBQ04sT0FBTyxFQUFFLEdBQUc7SUFDWixPQUFPLEVBQUUsS0FBSztJQUNkLE1BQU0sRUFBRSxDQUFDO0lBQ1QsS0FBSyxFQUFFLElBQUk7SUFDWCxVQUFVLEVBQUUsTUFBTSxHQUNuQjs7QUFHSCxBQUFBLGVBQWUsQ0FBQztFQUNkLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxFQUFFLEdBQUc7RUFDWixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLEtBQUssRUFBRSxJQUFJO0VBQ1gsUUFBUSxFQUFFLE9BQU8sR0FtQmxCO0VBMUJELEFBUUUsZUFSYSxDQVFiLEVBQUUsQ0FBQztJQUNELEtBQUssRUFBRSxJQUFJO0lBQ1gsT0FBTyxFQUFFLEtBQUs7SUFDZCxNQUFNLEVBQUUsS0FBSztJQUNiLFdBQVcsRUFBRSxJQUFJO0lBQ2pCLE1BQU0sRUFBRSxPQUFPLEdBWWhCO0lBekJILEFBY0ksZUFkVyxDQVFiLEVBQUUsQUFNQyxNQUFNLENBQUM7TUFDTixLQUFLLEVBQUUsSUFBSSxHQUNaO0lBaEJMLEFBaUJJLGVBakJXLENBUWIsRUFBRSxDQVNBLENBQUMsQ0FBQztNQUNBLEtBQUssRUFBRSxJQUFJO01BQ1gsZUFBZSxFQUFFLElBQUksR0FDdEI7SUFwQkwsQUFxQkksZUFyQlcsQ0FRYixFQUFFLEFBYUMsV0FBVyxDQUFDO01BQ1gsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsSUFBSSxHQUNiOztBQUlMLEFBQUEsZ0JBQWdCLENBQUM7RUFDZixJQUFJLEVBQUUsR0FBRztFQUNULG1CQUFtQixFQUFFLEtBQUssR0FDM0I7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixJQUFJLEVBQUUsSUFBSTtFQUNWLG1CQUFtQixFQUFFLE9BQU8sR0FDN0I7O0FBRUQsQUFBQSxZQUFZLENBQUM7RUFDWCxJQUFJLEVBQUUsSUFBSSxHQUNYOztBQUVELEFBQUEsZ0JBQWdCLENBQUM7RUFDZixJQUFJLEVBQUUsSUFBSTtFQUNWLG1CQUFtQixFQUFFLE9BQU8sR0FDN0I7O0FBRUQsQUFBQSxpQkFBaUIsQ0FBQztFQUNoQixJQUFJLEVBQUUsS0FBSztFQUNYLG1CQUFtQixFQUFFLE9BQU8sR0FDN0I7O0FBRUQsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLElBQUksRUFBRSxLQUFLO0VBQ1gsbUJBQW1CLEVBQUUsT0FBTyxHQUM3Qjs7QUFFRCxBQUFBLGlCQUFpQixDQUFDO0VBQ2hCLElBQUksRUFBRSxLQUFLO0VBQ1gsbUJBQW1CLEVBQUUsUUFBUSxHQUM5Qjs7QUFFRCxBQUFBLFlBQVksQ0FBQztFQUNYLElBQUksRUFBRSxLQUFLLEdBQ1o7O0FBRUQsQUFBQSxpQkFBaUIsQ0FBQztFQUNoQixJQUFJLEVBQUUsS0FBSztFQUNYLG1CQUFtQixFQUFFLFFBQVEsR0FDOUI7O0FBRUQsQUFBQSxpQkFBaUIsQ0FBQztFQUNoQixJQUFJLEVBQUUsS0FBSztFQUNYLG1CQUFtQixFQUFFLFFBQVEsR0FDOUI7O0FBRUQsQUFBQSxtQkFBbUIsQ0FBQztFQUNsQixJQUFJLEVBQUUsS0FBSztFQUNYLG1CQUFtQixFQUFFLFFBQVEsR0FDOUI7O0FBRUQsQUFBQSxjQUFjLENBQUM7RUFDYixJQUFJLEVBQUUsS0FBSztFQUNYLG1CQUFtQixFQUFFLFFBQVEsR0FDOUI7O0FBRUQsQUFBQSxZQUFZLENBQUM7RUFDWCxJQUFJLEVBQUUsS0FBSyxHQUNaOztBQUVELEFBQUEsZ0JBQWdCLENBQUM7RUFDZixJQUFJLEVBQUUsS0FBSztFQUNYLG1CQUFtQixFQUFFLFFBQVEsR0FDOUI7O0FBRUQsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLElBQUksRUFBRSxLQUFLO0VBQ1gsbUJBQW1CLEVBQUUsUUFBUSxHQUM5Qjs7QUFFRCxBQUFBLGdCQUFnQixDQUFDO0VBQ2YsS0FBSyxFQUFFLEdBQUc7RUFDVixtQkFBbUIsRUFBRSxRQUFRLEdBQzlCOztBQUVELEFBQUEsc0JBQXNCLENBQUM7RUFDckIsZ0JBQWdCLEVBQUUsSUFBSSxHQUN2Qjs7QUFFRCxBQUFBLGtCQUFrQixDQUFDO0VBQ2pCLGdCQUFnQixFQUFFLElBQUk7RUFDdEIscUJBQXFCLEVBQUUsSUFBSTtFQUMzQixrQkFBa0IsRUFBRSxJQUFJLEdBS3pCO0VBUkQsQUFJRSxrQkFKZ0IsR0FJZCxHQUFHLENBQUM7SUFDSixTQUFTLEVBQUUsS0FBSztJQUNoQixXQUFXLEVBQUUsNEJBQTRCLEdBQzFDOztBQUdILEFBQUEsZUFBZSxDQUFDO0VBQ2QsT0FBTyxFQUFFLElBQUk7RUFDYixxQkFBcUIsRUFBRSxHQUFHO0VBQzFCLGtCQUFrQixFQUFFLEdBQUc7RUFDdkIsS0FBSyxFQUFFLEtBQUs7RUFDWixnQkFBZ0IsRUFBRSxPQUFpQjtFQUNuQyxRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUUsSUFBSTtFQUNiLEdBQUcsRUFBRSxJQUFJO0VBQ1QsS0FBSyxFQUFFLEdBQUcsR0FRWDtFQWpCRCxBQVVFLGVBVmEsQ0FVYixDQUFDLENBQUM7SUFDQSxTQUFTLEVBQUUsSUFBSTtJQUNmLGFBQWEsRUFBRSxJQUFJO0lBQ25CLGFBQWEsRUFBRSxJQUFJO0lBQ25CLGNBQWMsRUFBRSxHQUFHO0lBQ25CLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBR0gsQUFBQSxVQUFVLENBQUM7RUFDVCxnQkFBZ0IsRUFBRSxXQUFXO0VBQzdCLEtBQUssRUFBRSxJQUFJO0VBQ1gsT0FBTyxFQUFFLEdBQUcsR0FDYjs7QUFFRCxBQUFBLFVBQVUsQ0FBQztFQUNULFNBQVMsRUFBRSxJQUFJO0VBQ2YsYUFBYSxFQUFFLElBQUk7RUFDbkIsS0FBSyxFQUFFLElBQUk7RUFDWCxXQUFXLEVBQUUsSUFBSTtFQUNqQixhQUFhLEVBQUUsSUFBSTtFQUNuQixVQUFVLEVBQUUsd0NBQXdDLENBQUMsU0FBUztFQUM5RCxtQkFBbUIsRUFBRSxZQUFZLEdBQ2xDOztBQUVELEFBQUEsT0FBTyxDQUFDO0VBQ04sTUFBTSxFQUFFLGlCQUFpQjtFQUN6QixPQUFPLEVBQUUsR0FBRyxHQUliO0VBTkQsQUFHRSxPQUhLLENBR0wsT0FBTyxDQUFDO0lBQ04sV0FBVyxFQUFFLE1BQU0sR0FDcEI7O0FBR0gsQUFBQSxhQUFhLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUM7RUFDM0MsTUFBTSxFQUFFLEdBQUc7RUFDWCxPQUFPLEVBQUUsR0FBRztFQUNaLFNBQVMsRUFBRSxJQUFJLEdBQ2hCOztBQUVELEFBQUEsYUFBYSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7RUFDcEIsS0FBSyxFQUFFLElBQUksR0FDWjs7QUFFRCxBQUFBLFlBQVksQ0FBQztFQUNYLEtBQUssRUFBRSxJQUFJLEdBS1o7RUFORCxBQUVFLFlBRlUsQ0FFVixPQUFPLENBQUM7SUFDTixTQUFTLEVBQUUsSUFBSTtJQUNmLFdBQVcsRUFBRSxJQUFJLEdBQ2xCOztBQUdILEFBQUEsWUFBWSxDQUFDLGFBQWEsQ0FBQztFQUN6QixNQUFNLEVBQUUsZ0JBQWdCO0VBQ3hCLE9BQU8sRUFBRSxTQUFTO0VBQ2xCLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFVBQVUsRUFBRSxNQUFNLEdBUW5CO0VBWkQsQUFLRSxZQUxVLENBQUMsYUFBYSxDQUt4QixFQUFFLENBQUM7SUFDRCxTQUFTLEVBQUUsSUFBSTtJQUNmLEtBQUssRUFBRSxJQUFJLEdBQ1o7RUFSSCxBQVNFLFlBVFUsQ0FBQyxhQUFhLENBU3hCLENBQUMsRUFUSCxZQUFZLENBQUMsYUFBYSxDQVNyQixDQUFDLENBQUM7SUFDSCxLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUdILEFBQUEsSUFBSSxBQUFBLGFBQWEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0VBQy9CLGFBQWEsRUFBRSxHQUFHLEdBQ25COztBQUVELEFBQUEsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsYUFBYSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUM7RUFDckYsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsYUFBYTtFQUNyQixLQUFLLEVBQUUsS0FBSyxHQUNiOztBQUVELEFBQUEsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxZQUFZLENBQUM7RUFDekcsS0FBSyxFQUFFLElBQUksR0FDWjs7QUFFRCxBQUNFLEtBREcsQ0FBQyxRQUFRLENBQ1osYUFBYSxDQUFDLENBQUMsRUFEakIsS0FBSyxDQUFDLFFBQVEsQ0FDSyxhQUFhLENBQUMsQ0FBQyxDQUFDO0VBQy9CLFNBQVMsRUFBRSxJQUFJLEdBQ2hCOztBQUdILEFBQ0UsUUFETSxDQUFDLEtBQUssQ0FDWixhQUFhLENBQUMsQ0FBQyxFQURqQixRQUFRLENBQUMsS0FBSyxDQUNLLGFBQWEsQ0FBQyxDQUFDLENBQUM7RUFDL0IsU0FBUyxFQUFFLElBQUksR0FDaEI7O0FBR0gsQUFBQSxhQUFhLENBQUM7RUFDWixJQUFJLEVBQUUsQ0FBQyxHQVFSO0VBVEQsQUFFRSxhQUZXLEFBRVYsTUFBTSxDQUFDO0lBQ04sT0FBTyxFQUFFLEdBQUc7SUFDWixPQUFPLEVBQUUsS0FBSztJQUNkLE1BQU0sRUFBRSxDQUFDO0lBQ1QsS0FBSyxFQUFFLElBQUk7SUFDWCxVQUFVLEVBQUUsTUFBTSxHQUNuQjs7QUFHSCxBQUNFLFVBRFEsQ0FDUixZQUFZLEVBRGQsVUFBVSxDQUNNLGVBQWUsQ0FBQztFQUM1QixLQUFLLEVBQUUsS0FBSyxHQUNiOztBQUdILEFBQUEsYUFBYSxDQUFDLGlCQUFpQixDQUFDO0VBQzlCLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7O0FBRUQsbUdBQW1HO0FDcFJuRyxXQUFXO0FBQ1gsQUFBQSxRQUFRLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUM7RUFBRSxPQUFPLEVBQUUsSUFBSSxHQUFJOztBQUNsRixBQUFBLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsY0FBYyxDQUFDO0VBQUUsTUFBTSxFQUFFLENBQUM7RUFBRSxPQUFPLEVBQUUsQ0FBQztFQUFFLEtBQUssRUFBRSxlQUFlO0VBQUUsU0FBUyxFQUFFLENBQUMsR0FBSTs7QUFDeEgsQUFBQSxVQUFVLENBQUM7RUFBRSxPQUFPLEVBQUUsSUFBSSxHQUFJOztBQUU5QixrQkFBa0I7QUFDbEIsQUFBQSxJQUFJLENBQUM7RUFBRSxPQUFPLEVBQUUsZUFBZTtFQUFFLFVBQVUsRUFBRSxlQUFlLEdBQUk7O0FOTmhFLEFBd0NFLElBeENFLENBd0NGLFFBQVEsQ01oQ0k7RUFBRSxLQUFLLEVBQUUsS0FBSyxHQUFJOztBQUVoQyxBQUFBLGNBQWMsQ0FBQztFQUFFLE9BQU8sRUFBRSxxQkFBcUI7RUFBRSxhQUFhLEVBQUUsY0FBYyxHQUFJOztBQUNsRixBQUFBLGNBQWMsQ0FBQyxFQUFFLENBQUM7RUFBRSxVQUFVLEVBQUUsQ0FBQztFQUFFLFNBQVMsRUFBRSxJQUFJO0VBQUUsV0FBVyxFQUFFLElBQUksR0FBSTs7QUFDekUsQUFBQSxjQUFjLENBQUMsS0FBSyxDQUFDO0VBQUUsT0FBTyxFQUFFLElBQUksR0FBSTs7QUFFeEMsQUFBQSxRQUFRLENBQUM7RUFBRSxPQUFPLEVBQUUsaUJBQWlCLEdBQUk7O0FGZHpDLEFBQUEsT0FBTyxDQUFDO0VBQ04sVUFBVSxFQUFFLEdBQUc7RUFDZixhQUFhLEVBQUUsSUFBSTtFQUNuQixPQUFPLEVBQUUsSUFBSTtFQUNiLGdCQUFnQixFQUFFLE9BQU8sR0FDMUI7O0FBRUQsQUFBQSxZQUFZLENBQUM7RUFDWCxLQUFLLEVBQUUsSUFBSTtFQUNYLFlBQVksRUFBRSxJQUFJO0VBQ2xCLEtBQUssRUFBRSxLQUFLO0VBQ1osS0FBSyxFQUFFLElBQUksR0FDWjs7QUFFRCxBQUFBLGFBQWEsQ0FBQztFQUNaLEtBQUssRUFBRSxLQUFLO0VBQ1osV0FBVyxFQUFFLElBQUk7RUFDakIsS0FBSyxFQUFFLEtBQUs7RUFDWixLQUFLLEVBQUUsS0FBSyxHQUNiOztBQUVELEFBQ0UsT0FESyxDQUNMLENBQUMsRUFESCxPQUFPLENBQ0YsRUFBRSxFQURQLE9BQU8sQ0FDRSxFQUFFLENBQUM7RUFDUixhQUFhLEVBQUUsSUFBSTtFQUNuQixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJLEdBQ2xCOztBQUxILEFBTUUsT0FOSyxDQU1MLEtBQUssQ0FBQztFQUNKLGFBQWEsRUFBRSxDQUFDO0VBQ2hCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsS0FBSyxFQUFFLE9BQU8sR0FDZjs7QUFWSCxBQVdFLE9BWEssQ0FXTCxFQUFFLEVBWEosT0FBTyxDQVdELE1BQU0sRUFYWixPQUFPLENBV08sS0FBSyxFQVhuQixPQUFPLENBV2MsTUFBTSxDQUFDO0VBQ3hCLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7RUFDakIsV0FBVyxFQUFFLElBQUk7RUFDakIsS0FBSyxFQUFFLE9BQU8sR0FDZjs7QUFqQkgsQUFrQkUsT0FsQkssQ0FrQkwsS0FBSyxDQUFDO0VBQ0osYUFBYSxFQUFFLENBQUMsR0FDakI7O0FBcEJILEFBcUJFLE9BckJLLENBcUJMLE9BQU8sRUFyQlQsT0FBTyxDcEZ5YlAsYUFBYSxDQUtYLE1BQU0sRUFMUixhQUFhLENvRnpiYixPQUFPLENwRjhiTCxNQUFNLENvRnphRTtFQUNOLFNBQVMsRUFBRSxJQUFJLEdBQ2hCOztBQXZCSCxBQXdCRSxPQXhCSyxDQXdCTCxLQUFLLENBQUM7RUFDSixPQUFPLEVBQUUsTUFBTSxHQUNoQjs7QUExQkgsQUEyQkUsT0EzQkssQ0EyQkwsSUFBSSxDQUFDO0VBQ0gsYUFBYSxFQUFFLENBQUMsR0FnQmpCO0VBNUNILEFBNkJJLE9BN0JHLENBMkJMLElBQUksQ0FFRixPQUFPLENBQUM7SUFDTixhQUFhLEVBQUUsQ0FBQyxHQWFqQjtJQTNDTCxBQStCTSxPQS9CQyxDQTJCTCxJQUFJLENBRUYsT0FBTyxDQUVMLE9BQU8sRUEvQmIsT0FBTyxDQTJCTCxJQUFJLENBRUYsT0FBTyxDcEY0WlgsYUFBYSxDQUtYLE1BQU0sRUFMUixhQUFhLENvRnpiYixPQUFPLENBMkJMLElBQUksQ0FFRixPQUFPLENwRmlhVCxNQUFNLENvRi9aTTtNQUNOLE9BQU8sRUFBRSxRQUFRO01BQ2pCLEtBQUssRUFBRSxJQUFJLEdBQ1o7SUFsQ1AsQUFtQ00sT0FuQ0MsQ0EyQkwsSUFBSSxDQUVGLE9BQU8sQ0FNTCxXQUFXLENBQUM7TUFDVixPQUFPLEVBQUUsTUFBTTtNQUNmLEtBQUssRUFBRSxJQUFJO01BQ1gsT0FBTyxFQUFFLFFBQVE7TUFDakIsVUFBVSxFQUFFLElBQUk7TUFDaEIsU0FBUyxFQUFFLElBQUk7TUFDZixLQUFLLEVBQUUsT0FBTyxHQUNmOztBQUtQLG9CQUFvQjtBQUVwQixBQUFBLHNCQUFzQixDQUFDLGdCQUFnQixDQUFDO0VBQ3RDLFlBQVksRUFBRSxDQUFDO0VBQ2YsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSSxHQUlsQjtFQVBELEFBSUUsc0JBSm9CLENBQUMsZ0JBQWdCLENBSXJDLEVBQUUsQ0FBQztJQUNELGFBQWEsRUFBRSxJQUFJLEdBQ3BCOztBQUdILGlCQUFpQjtBQUVqQixBQUNFLFVBRFEsQ0FDUixFQUFFLENBQUM7RUFDRCxXQUFXLEVBQUUsSUFBSSxHQUNsQjs7QUFISCxBQUlFLFVBSlEsQ0FJUixVQUFVLENBQUM7RUFDVCxhQUFhLEVBQUUsR0FBRyxHQUNuQjs7QUFHSCxjQUFjO0FBRWQsQUFBQSxnQkFBZ0IsQ0FBQyxVQUFVLENBQUM7RUFDMUIsYUFBYSxFQUFFLElBQUk7RUFDbkIsT0FBTyxFQUFFLEtBQUssR0FJZjtFQU5ELEFBR0UsZ0JBSGMsQ0FBQyxVQUFVLEFBR3hCLFdBQVcsQ0FBQztJQUNYLGFBQWEsRUFBRSxDQUFDLEdBQ2pCOztBQUdILFVBQVU7QUFFVixBQUFBLFlBQVksQ0FBQyxJQUFJLENBQUM7RUFDaEIsTUFBTSxFQUFFLFVBQVUsR0FLbkI7RUFORCxBQUVFLFlBRlUsQ0FBQyxJQUFJLENBRWYsQ0FBQyxDQUFDO0lBQ0EsTUFBTSxFQUFFLENBQUM7SUFDVCxPQUFPLEVBQUUsQ0FBQyxHQUNYOztBQUdILGNBQWM7QUFFZCxBQUNFLGdCQURjLENBQ2QsVUFBVSxDQUFDO0VBQ1QsYUFBYSxFQUFFLEdBQUcsR0FDbkI7O0FBSEgsQUFJRSxnQkFKYyxDQUlkLFNBQVMsQ0FBQztFQUNSLGFBQWEsRUFBRSxDQUFDO0VBQ2hCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUksR0FXbEI7RUFsQkgsQUFRSSxnQkFSWSxDQUlkLFNBQVMsQ0FJUCxDQUFDLENBQUM7SUFDQSxPQUFPLEVBQUUsUUFBUTtJQUNqQixVQUFVLEVBQUUsSUFBSTtJQUNoQixLQUFLLEVBQUUsSUFBSTtJQUNYLHFCQUFxQixFQUFFLEdBQUc7SUFDMUIsa0JBQWtCLEVBQUUsR0FBRyxHQUl4QjtJQWpCTCxBQWNNLGdCQWRVLENBSWQsU0FBUyxDQUlQLENBQUMsQUFNRSxNQUFNLENBQUM7TUFDTixVQUFVLEVBQUUsT0FBTyxHQUNwQjs7QUFLUCxjQUFjO0FBRWQsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLEtBQUssRUFBRSxLQUFLLEdBSWI7RUFMRCxBQUVFLGdCQUZjLENBRWQsUUFBUSxDQUFDO0lBQ1AsVUFBVSxFQUFFLElBQUksR0FDakI7O0FBR0gsZ0JBQWdCO0FBRWhCLEFBQUEsa0JBQWtCLENBQUMsV0FBVyxDQUFDO0VBQzdCLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFlBQVksRUFBRSxDQUFDO0VBQ2YsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSTtFQUNqQixLQUFLLEVBQUUsSUFBSSxHQUlaO0VBVEQsQUFNRSxrQkFOZ0IsQ0FBQyxXQUFXLENBTTVCLEVBQUUsQ0FBQztJQUNELGFBQWEsRUFBRSxHQUFHLEdBQ25COztBQUdILGFBQWE7QUFFYixBQUFBLGVBQWUsQ0FBQyxVQUFVLENBQUM7RUFDekIsYUFBYSxFQUFFLEdBQUcsR0FDbkI7O0FBRUQsbUJBQW1CO0FBRW5CLEFBQ0UsbUJBRGlCLENBQ2pCLFNBQVMsQ0FBQztFQUNSLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7RUFDakIsS0FBSyxFQUFFLElBQUksR0FDWjs7QUFOSCxBQU9FLG1CQVBpQixDQU9qQixVQUFVLENBQUM7RUFDVCxhQUFhLEVBQUUsSUFBSSxHQUNwQjs7QUFUSCxBQVVFLG1CQVZpQixDQVVqQixVQUFVLENBQUM7RUFDVCxhQUFhLEVBQUUsSUFBSTtFQUNuQixPQUFPLEVBQUUsQ0FBQyxHQVVYO0VBdEJILEFBYUksbUJBYmUsQ0FVakIsVUFBVSxDQUdSLENBQUMsQ0FBQztJQUNBLGFBQWEsRUFBRSxHQUFHO0lBQ2xCLFNBQVMsRUFBRSxJQUFJO0lBQ2YsV0FBVyxFQUFFLElBQUksR0FDbEI7RUFqQkwsQUFrQkksbUJBbEJlLENBVWpCLFVBQVUsQ0FRUixJQUFJLENBQUM7SUFDSCxTQUFTLEVBQUUsSUFBSTtJQUNmLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBSUwsV0FBVztBQUVYLEFBQUEsYUFBYSxDQUFDLFVBQVUsQ0FBQztFQUN2QixhQUFhLEVBQUUsR0FBRyxHQUNuQjs7QUFFRCxXQUFXO0FBRVgsQUFDRSxhQURXLENBQ1gsVUFBVSxDQUFDO0VBQ1QsYUFBYSxFQUFFLEdBQUcsR0FDbkI7O0FBSEgsQUFJRSxhQUpXLENBSVgsT0FBTyxFQUpULGFBQWEsQ0FJRixPQUFPLENBQUM7RUFDZixhQUFhLEVBQUUsR0FBRztFQUNsQixXQUFXLEVBQUUsSUFBSTtFQUNqQixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQVJILEFBU0UsYUFUVyxBQVNWLG1CQUFtQixDQUFDO0VBQ25CLE9BQU8sRUFBRSxDQUFDLEdBSVg7RUFkSCxBQVdJLGFBWFMsQUFTVixtQkFBbUIsQ0FFbEIsV0FBVyxDQUFDO0lBQ1YsT0FBTyxFQUFFLElBQUksR0FDZDs7QUFJTCxxQkFBcUI7QUFFckIsQUFDRSxlQURhLENBQ2IsS0FBSyxDQUFDO0VBQ0osYUFBYSxFQUFFLENBQUM7RUFDaEIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSSxHQUlsQjtFQVJILEFBS0ksZUFMVyxDQUNiLEtBQUssQ0FJSCxDQUFDLENBQUM7SUFDQSxLQUFLLEVBQUUsSUFBSSxHQUNaOztBQVBMLEFBU0UsZUFUYSxDQVNiLFFBQVEsQ0FBQztFQUNQLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUksR0FDbEI7O0FBYkgsQUFjRSxlQWRhLENBY2IsT0FBTyxDQUFDO0VBQ04sYUFBYSxFQUFFLElBQUksR0FDcEI7O0FBR0gsVUFBVTtBQUVWLEFBQ0UsWUFEVSxDQUNWLFNBQVMsQ0FBQztFQUNSLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7RUFDakIsS0FBSyxFQUFFLElBQUksR0FDWjs7QUFOSCxBQU9FLFlBUFUsQ0FPVixJQUFJLENBQUMsRUFBRSxDQUFDO0VBQ04sVUFBVSxFQUFFLElBQUk7RUFDaEIsT0FBTyxFQUFFLENBQUM7RUFDVixLQUFLLEVBQUUsSUFBSSxHQUlaO0VBZEgsQUFXSSxZQVhRLENBT1YsSUFBSSxDQUFDLEVBQUUsQ0FJTCxFQUFFLENBQUM7SUFDRCxXQUFXLEVBQUUsSUFBSSxHQUNsQjs7QUFJTCxrQkFBa0I7QUFFbEIsQUFDRSxvQkFEa0IsQ0FDbEIsU0FBUyxDQUFDO0VBQ1IsYUFBYSxFQUFFLElBQUk7RUFDbkIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSTtFQUNqQixLQUFLLEVBQUUsSUFBSSxHQUlaO0VBVEgsQUFNSSxvQkFOZ0IsQ0FDbEIsU0FBUyxDQUtQLENBQUMsQ0FBQztJQUNBLEtBQUssRUFBRSxPQUFPLEdBQ2Y7O0FBUkwsQUFVRSxvQkFWa0IsQ0FVbEIsUUFBUSxDQUFDO0VBQ1AsVUFBVSxFQUFFLElBQUk7RUFDaEIsTUFBTSxFQUFFLENBQUM7RUFDVCxPQUFPLEVBQUUsQ0FBQztFQUNWLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUksR0E0QmxCO0VBM0NILEFBZ0JJLG9CQWhCZ0IsQ0FVbEIsUUFBUSxDQU1OLEVBQUUsQ0FBQztJQUNELFFBQVEsRUFBRSxRQUFRO0lBQ2xCLGFBQWEsRUFBRSxHQUFHO0lBQ2xCLGNBQWMsRUFBRSxJQUFJO0lBQ3BCLE1BQU0sRUFBRSxJQUFJLEdBc0JiO0lBMUNMLEFBcUJNLG9CQXJCYyxDQVVsQixRQUFRLENBTU4sRUFBRSxDQUtBLE1BQU0sQ0FBQztNQUNMLFNBQVMsRUFBRSxJQUFJO01BQ2YsV0FBVyxFQUFFLE1BQU07TUFDbkIsS0FBSyxFQUFFLE9BQU8sR0FDZjtJQXpCUCxBQTBCTSxvQkExQmMsQ0FVbEIsUUFBUSxDQU1OLEVBQUUsQ0FVQSxJQUFJLENBQUM7TUFDSCxRQUFRLEVBQUUsUUFBUTtNQUNsQixNQUFNLEVBQUUsQ0FBQztNQUNULElBQUksRUFBRSxDQUFDO01BQ1AsTUFBTSxFQUFFLElBQUk7TUFDWixnQkFBZ0IsRUFBRSxPQUFPLEdBVTFCO01BekNQLEFBZ0NRLG9CQWhDWSxDQVVsQixRQUFRLENBTU4sRUFBRSxDQVVBLElBQUksQ0FNRixRQUFRLENBQUM7UUFDUCxRQUFRLEVBQUUsUUFBUTtRQUNsQixHQUFHLEVBQUUsSUFBSTtRQUNULEtBQUssRUFBRSxLQUFLO1FBQ1osS0FBSyxFQUFFLElBQUk7UUFDWCxXQUFXLEVBQUUsSUFBSTtRQUNqQixLQUFLLEVBQUUsT0FBTztRQUNkLFVBQVUsRUFBRSxJQUFJLEdBQ2pCOztBQXhDVCxBQTRDRSxvQkE1Q2tCLENBNENsQixZQUFZLENBQUM7RUFDWCxLQUFLLEVBQUUsT0FBTyxHQUNmOztBQUdILEFBQUEsbUJBQW1CLEFBQUEsb0JBQW9CLENBQUMsU0FBUyxFQUFFLG9CQUFvQixBQUFBLG9CQUFvQixDQUFDLFNBQVMsQ0FBQztFQUNwRyxTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJLEdBQ2xCOztBQUVELEFBQUEsbUJBQW1CLEFBQUEsb0JBQW9CLENBQUMsUUFBUSxFQUFFLG9CQUFvQixBQUFBLG9CQUFvQixDQUFDLFFBQVEsQ0FBQztFQUNsRyxTQUFTLEVBQUUsSUFBSSxHQUNoQjs7QUFFRCxBQUFBLG1CQUFtQixBQUFBLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsb0JBQW9CLEFBQUEsb0JBQW9CLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztFQUN4RyxjQUFjLEVBQUUsSUFBSSxHQUNyQjs7QUFFRCxBQUFBLG1CQUFtQixBQUFBLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLG9CQUFvQixBQUFBLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDO0VBQ2xILE1BQU0sRUFBRSxJQUFJLEdBQ2I7O0FBRUQsQUFBQSxtQkFBbUIsQUFBQSxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsb0JBQW9CLEFBQUEsb0JBQW9CLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO0VBQ3BJLEdBQUcsRUFBRSxHQUFHLEdBQ1Q7O0FBRUQsc0JBQXNCO0FBRXRCLEFBQ0UsaUJBRGUsQ0FDZixFQUFFLENBQUM7RUFDRCxhQUFhLEVBQUUsSUFBSTtFQUNuQixTQUFTLEVBQUUsSUFBSTtFQUNmLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLEtBQUssRUFBRSxJQUFJLEdBQ1o7O0FBTkgsQUFPRSxpQkFQZSxDQU9mLEVBQUUsQ0FBQztFQUNELFlBQVksRUFBRSxDQUFDO0VBQ2YsVUFBVSxFQUFFLElBQUk7RUFDaEIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSSxHQUNsQjs7QUFaSCxBQWFFLGlCQWJlLENBYWYsRUFBRSxDQUFDO0VBQ0QsYUFBYSxFQUFFLElBQUksR0FDcEI7O0FBR0gsZ0JBQWdCO0FBRWhCLEFBQUEsWUFBWSxDQUFDLEVBQUUsQ0FBQztFQUNkLFlBQVksRUFBRSxJQUFJLEdBSW5CO0VBTEQsQUFFRSxZQUZVLENBQUMsRUFBRSxDQUViLEVBQUUsQ0FBQztJQUNELGFBQWEsRUFBRSxJQUFJLEdBQ3BCOztBQUdILFdBQVc7QUFFWCxBQUNFLGFBRFcsQ0FDWCxVQUFVLENBQUM7RUFDVCxhQUFhLEVBQUUsR0FBRyxHQUNuQjs7QUFISCxBQUlFLGFBSlcsQUFJVixtQkFBbUIsQ0FBQztFQUNuQixPQUFPLEVBQUUsQ0FBQyxHQUlYO0VBVEgsQUFNSSxhQU5TLEFBSVYsbUJBQW1CLENBRWxCLFFBQVEsQ0FBQztJQUNQLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7O0FBUkwsQUFVRSxhQVZXLEFBVVYsb0JBQW9CLENBQUMsTUFBTSxFQVY5QixhQUFhLEFBVW9CLHFCQUFxQixDQUFDLE1BQU0sQ0FBQztFQUMxRCxNQUFNLEVBQUUsWUFBWSxHQUNyQjs7QUFHSCxlQUFlO0FBRWYsQUFBQSxpQkFBaUIsQ0FBQyxVQUFVLENBQUM7RUFDM0IsYUFBYSxFQUFFLEdBQUcsR0FDbkI7O0FBRUQsa0JBQWtCO0FBRWxCLEFBQUEsbUJBQW1CLENBQUM7RUFDbEIsS0FBSyxFQUFFLElBQUk7RUFDWCxLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxVQUFVLEdBWW5CO0VBZkQsQUFJRSxtQkFKaUIsQ0FJakIsTUFBTSxDQUFDO0lBQ0wsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsSUFBSSxHQUNsQjtFQVBILEFBUUUsbUJBUmlCLENBUWpCLEtBQUssQ0FBQztJQUNKLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7RUFWSCxBQVdFLG1CQVhpQixDQVdqQixRQUFRLENBQUM7SUFDUCxLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxJQUFJLEdBQ2I7O0FBR0gsbUJBQW1CO0FBRW5CLEFBQUEsb0JBQW9CLENBQUM7RUFDbkIsS0FBSyxFQUFFLElBQUk7RUFDWCxLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxVQUFVLEdBU25CO0VBWkQsQUFJRSxvQkFKa0IsQ0FJbEIsTUFBTSxDQUFDO0lBQ0wsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsSUFBSSxHQUNsQjtFQVBILEFBUUUsb0JBUmtCLENBUWxCLFFBQVEsQ0FBQztJQUNQLEtBQUssRUFBRSxLQUFLO0lBQ1osTUFBTSxFQUFFLElBQUksR0FDYjs7QUFHSCxvQkFBb0I7QUFFcEIsQUFBQSxxQkFBcUIsQ0FBQztFQUNwQixLQUFLLEVBQUUsS0FBSyxHQUtiO0VBTkQsQUFFRSxxQkFGbUIsQ0FFbkIsUUFBUSxDQUFDO0lBQ1AsS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsSUFBSSxHQUNiOztBR25hSCwwQkFBMEI7QUFFMUIsQUFDRSxJQURFLEFBQUEsZUFBZSxDQUNqQixLQUFLLENBQUM7RUFDSixnQkFBZ0IsRUFBRSxJQUFJLEdBQ3ZCOztBQUhILEFBSUUsSUFKRSxBQUFBLGVBQWUsQ0FJakIsT0FBTyxDQUFDO0VBQ04sYUFBYSxFQUFFLENBQUM7RUFDaEIsZ0JBQWdCLEVBQUUsSUFBSSxHQUN2Qjs7QUFQSCxBQVFFLElBUkUsQUFBQSxlQUFlLENBUWpCLEtBQUssQ0FBQztFQUNKLFdBQVcsRUFBRSxJQUFJLEdBQ2xCOztBQVZILEFBV0UsSUFYRSxBQUFBLGVBQWUsQ0FXakIsY0FBYyxDQUFDO0VBQ2IsTUFBTSxFQUFFLElBQUksR0FpQmI7RUE3QkgsQUFhSSxJQWJBLEFBQUEsZUFBZSxDQVdqQixjQUFjLENBRVosRUFBRSxDQUFDO0lBQ0QsS0FBSyxFQUFFLElBQUksR0FDWjtFQWZMLEFBZ0JJLElBaEJBLEFBQUEsZUFBZSxDQVdqQixjQUFjLENBS1osQ0FBQyxDQUFDO0lBQ0EsS0FBSyxFQUFFLElBQUksR0FDWjtFQWxCTCxBQW1CSSxJQW5CQSxBQUFBLGVBQWUsQ0FXakIsY0FBYyxDQVFaLENBQUMsQ0FBQztJQUNBLEtBQUssRUFBRSxJQUFJLEdBQ1o7RUFyQkwsQUFzQkksSUF0QkEsQUFBQSxlQUFlLENBV2pCLGNBQWMsQ0FXWixLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ04sS0FBSyxFQUFFLElBQUksR0FDWjtFQXhCTCxBQXlCSSxJQXpCQSxBQUFBLGVBQWUsQ0FXakIsY0FBYyxDQWNaLFNBQVMsQ0FBQztJQUNSLFVBQVUsRUFBRSxDQUFDO0lBQ2IsT0FBTyxFQUFFLElBQUksR0FDZDs7QUE1QkwsQUE4QkUsSUE5QkUsQUFBQSxlQUFlLENBOEJqQixhQUFhLENBQUM7RUFDWixPQUFPLEVBQUUsSUFBSSxHQUNkOztBQWhDSCxBQWlDRSxJQWpDRSxBQUFBLGVBQWUsQ0FpQ2pCLFFBQVEsQ0FBQztFQUNQLEtBQUssRUFBRSxLQUFLLEdBQ2I7O0FBbkNILEFBb0NFLElBcENFLEFBQUEsZUFBZSxDQW9DakIsS0FBSyxDQUFDLEtBQUssQ0FBQztFQUNWLGFBQWEsRUFBRSxJQUFJLEdBZ0JwQjtFQXJESCxBQXNDSSxJQXRDQSxBQUFBLGVBQWUsQ0FvQ2pCLEtBQUssQ0FBQyxLQUFLLENBRVQsVUFBVSxDQUFDO0lBQ1QsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsQ0FBQyxHQUtWO0lBN0NMLEFBeUNNLElBekNGLEFBQUEsZUFBZSxDQW9DakIsS0FBSyxDQUFDLEtBQUssQ0FFVCxVQUFVLENBR1IsR0FBRyxDQUFDO01BQ0YsT0FBTyxFQUFFLEtBQUs7TUFDZCxNQUFNLEVBQUUsQ0FBQyxHQUNWO0VBNUNQLEFBOENJLElBOUNBLEFBQUEsZUFBZSxDQW9DakIsS0FBSyxDQUFDLEtBQUssQ0FVVCxRQUFRLENBQUM7SUFDUCxPQUFPLEVBQUUsSUFBSTtJQUNiLGdCQUFnQixFQUFFLElBQUk7SUFDdEIsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsSUFBSTtJQUNqQixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQXBETCxBQXNERSxJQXRERSxBQUFBLGVBQWUsQ0FzRGpCLFNBQVMsQ0FBQztFQUNSLE9BQU8sRUFBRSxJQUFJO0VBQ2IsZ0JBQWdCLEVBQUUsSUFBSTtFQUN0QixxQkFBcUIsRUFBRSxHQUFHO0VBQzFCLGtCQUFrQixFQUFFLEdBQUc7RUFDdkIsYUFBYSxFQUFFLEdBQUcsR0FDbkI7O0FBR0gsQUFBQSxxQkFBcUIsQ0FBQyxjQUFjLENBQUM7RUFDbkMsT0FBTyxFQUFFLElBQUk7RUFDYixLQUFLLEVBQUUsS0FBSztFQUNaLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFFBQVEsRUFBRSxNQUFNLEdBNkJqQjtFQWxDRCxBQU1FLHFCQU5tQixDQUFDLGNBQWMsQ0FNbEMsR0FBRyxDQUFDO0lBQ0YsS0FBSyxFQUFFLElBQUk7SUFDWCxLQUFLLEVBQUUsS0FBSyxHQUNiO0VBVEgsQUFVRSxxQkFWbUIsQ0FBQyxjQUFjLENBVWxDLFNBQVMsQ0FBQztJQUNSLFlBQVksRUFBRSxJQUFJO0lBQ2xCLFlBQVksRUFBRSxJQUFJO0lBQ2xCLFVBQVUsRUFBRSxzQ0FBc0MsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFNBQVMsR0FDbkU7RUFkSCxBQWVFLHFCQWZtQixDQUFDLGNBQWMsQ0FlbEMsS0FBSyxDQUFDO0lBQ0osV0FBVyxFQUFFLElBQUk7SUFDakIsYUFBYSxFQUFFLElBQUk7SUFDbkIsVUFBVSxFQUFFLHlDQUF5QyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxHQUN6RTtFQW5CSCxBQW9CRSxxQkFwQm1CLENBQUMsY0FBYyxDQW9CbEMsU0FBUyxDQUFDO0lBQ1IsTUFBTSxFQUFFLENBQUM7SUFDVCxPQUFPLEVBQUUsZ0JBQWdCO0lBQ3pCLE1BQU0sRUFBRSxJQUFJO0lBQ1osVUFBVSxFQUFFLElBQUk7SUFDaEIsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsSUFBSTtJQUNqQixXQUFXLEVBQUUsSUFBSTtJQUNqQixVQUFVLEVBQUUsTUFBTTtJQUNsQixLQUFLLEVBQUUsSUFBSSxHQUNaO0VBOUJILEFBK0JFLHFCQS9CbUIsQ0FBQyxjQUFjLENBK0JsQyxDQUFDLENBQUMsR0FBRyxDQUFDO0lBQ0osT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFHSCxBQUFBLFdBQVcsQ0FBQztFQUNWLFFBQVEsRUFBRSxNQUFNLEdBV2pCO0VBWkQsQUFFRSxXQUZTLENBRVQsS0FBSyxDQUFDO0lBQ0osS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsYUFBYSxHQU90QjtJQVhILEFBS0ksV0FMTyxDQUVULEtBQUssQ0FHSCxVQUFVLENBQUM7TUFDVCxNQUFNLEVBQUUsQ0FBQyxHQUNWO0lBUEwsQUFRSSxXQVJPLENBRVQsS0FBSyxDQU1ILFdBQVcsQ0FBQztNQUNWLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7O0FBSUwsQUFBQSxLQUFLLEFBQUEsT0FBTyxDQUFDLEVBQUUsQ0FBQztFQUNkLE9BQU8sRUFBRSxhQUFhO0VBQ3RCLEtBQUssRUFBRSxLQUFLLEdBcUJiO0VBdkJELEFBR0UsS0FIRyxBQUFBLE9BQU8sQ0FBQyxFQUFFLENBR2IsVUFBVSxDQUFDO0lBQ1QsV0FBVyxFQUFFLENBQUMsR0FDZjtFQUxILEFBTUUsS0FORyxBQUFBLE9BQU8sQ0FBQyxFQUFFLEFBTVosS0FBSyxDQUFDO0lBQ0wsYUFBYSxFQUFFLENBQUMsR0FDakI7RUFSSCxBQVNFLEtBVEcsQUFBQSxPQUFPLENBQUMsRUFBRSxDQVNiLFFBQVEsQ0FBQztJQUNQLGFBQWEsRUFBRSxDQUFDO0lBQ2hCLFNBQVMsRUFBRSxJQUFJO0lBQ2YsV0FBVyxFQUFFLElBQUk7SUFDakIsS0FBSyxFQUFFLElBQUksR0FDWjtFQWRILEFBZUUsS0FmRyxBQUFBLE9BQU8sQ0FBQyxFQUFFLENBZWIsRUFBRSxDQUFDO0lBQ0QsVUFBVSxFQUFFLElBQUk7SUFDaEIsTUFBTSxFQUFFLENBQUM7SUFDVCxPQUFPLEVBQUUsQ0FBQztJQUNWLFNBQVMsRUFBRSxJQUFJO0lBQ2YsV0FBVyxFQUFFLElBQUk7SUFDakIsS0FBSyxFQUFFLElBQUksR0FDWjs7QUFHSCxXQUFXO0FBRVgsQUFBQSxXQUFXLENBQUMsUUFBUSxDQUFDO0VBQ25CLE1BQU0sRUFBRSxDQUFDO0VBQ1QsU0FBUyxFQUFFLElBQUk7RUFDZixLQUFLLEVBQUUsSUFBSSxHQUlaO0VBUEQsQUFJRSxXQUpTLENBQUMsUUFBUSxDQUlsQixNQUFNLENBQUM7SUFDTCxLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUdILEFBQUEsYUFBYSxDQUFDO0VBQ1osYUFBYSxFQUFFLElBQUk7RUFDbkIsT0FBTyxFQUFFLEdBQUc7RUFDWixLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxJQUFJO0VBQ1osVUFBVSxFQUFFLElBQUksR0FDakI7O0FBRUQsQUFBQSxFQUFFLEFBQUEsU0FBUyxDQUFDO0VBQ1YsVUFBVSxFQUFFLElBQUk7RUFDaEIsWUFBWSxFQUFFLEdBQUc7RUFDakIsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSSxHQWFsQjtFQWpCRCxBQUtFLEVBTEEsQUFBQSxTQUFTLENBS1QsRUFBRSxDQUFDO0lBQ0QsTUFBTSxFQUFFLEtBQUs7SUFDYixPQUFPLEVBQUUsQ0FBQztJQUNWLFVBQVUsRUFBRSxJQUFJLEdBUWpCO0lBaEJILEFBU0ksRUFURixBQUFBLFNBQVMsQ0FLVCxFQUFFLENBSUEsQ0FBQyxDQUFDO01BQ0EsS0FBSyxFQUFFLE9BQU8sR0FLZjtNQWZMLEFBV00sRUFYSixBQUFBLFNBQVMsQ0FLVCxFQUFFLENBSUEsQ0FBQyxBQUVFLE9BQU8sQ0FBQztRQUNQLEtBQUssRUFBRSxPQUFPO1FBQ2QsV0FBVyxFQUFFLElBQUksR0FDbEI7O0FBS1AsV0FBVztBQUVYLEFBQUEsS0FBSyxDQUFDO0VBQ0osVUFBVSxFQUFFLElBQUksR0FDakI7O0FBRUQsQUFDRSxJQURFLEFBQ0QsYUFBYSxDQUFDLE1BQU0sQ0FBQztFQUNwQixhQUFhLEVBQUUsSUFBSSxHQUNwQjs7QUFISCxBQUlFLElBSkUsQUFJRCxXQUFXLENBQUMsY0FBYyxDQUFDO0VBQzFCLGFBQWEsRUFBRSxJQUFJO0VBQ25CLE9BQU8sRUFBRSxnQkFBZ0IsR0F1QjFCO0VBN0JILEFBT0ksSUFQQSxBQUlELFdBQVcsQ0FBQyxjQUFjLENBR3pCLENBQUMsQ0FBQztJQU1BLGFBQWEsRUFBRSxHQUFHLEdBQ25CO0lBZEwsQUFRTSxJQVJGLEFBSUQsV0FBVyxDQUFDLGNBQWMsQ0FHekIsQ0FBQyxBQUNFLFFBQVEsQ0FBQztNQUNSLE1BQU0sRUFBRSxLQUFLO01BQ2IsS0FBSyxFQUFFLElBQUk7TUFDWCxXQUFXLEVBQUUsTUFBTSxHQUNwQjtFQVpQLEFBZUksSUFmQSxBQUlELFdBQVcsQ0FBQyxjQUFjLENBV3pCLEVBQUUsQUFBQSxPQUFPLENBQUM7SUFDUixVQUFVLEVBQUUsSUFBSTtJQUNoQixNQUFNLEVBQUUsU0FBUztJQUNqQixPQUFPLEVBQUUsQ0FBQztJQUNWLFNBQVMsRUFBRSxJQUFJO0lBQ2YsV0FBVyxFQUFFLElBQUk7SUFDakIsS0FBSyxFQUFFLElBQUk7SUFDWCxRQUFRLEVBQUUsTUFBTSxHQU1qQjtJQTVCTCxBQXVCTSxJQXZCRixBQUlELFdBQVcsQ0FBQyxjQUFjLENBV3pCLEVBQUUsQUFBQSxPQUFPLENBUVAsRUFBRSxDQUFDO01BQ0QsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsVUFBVTtNQUNsQixRQUFRLEVBQUUsTUFBTSxHQUNqQjs7QUFLUCxBQUFBLEVBQUUsQUFBQSxXQUFXLENBQUM7RUFDWixVQUFVLEVBQUUsSUFBSTtFQUNoQixNQUFNLEVBQUUsVUFBVTtFQUNsQixPQUFPLEVBQUUsQ0FBQztFQUNWLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7RUFDakIsS0FBSyxFQUFFLElBQUk7RUFDWCxRQUFRLEVBQUUsTUFBTSxHQUNqQjs7QUFFRCxBQUFBLEVBQUUsR0FBRyxFQUFFLEFBQUEsV0FBVyxDQUFDO0VBQ2pCLFVBQVUsRUFBRSxHQUFHLEdBQ2hCOztBQUVELEFBQUEsRUFBRSxBQUFBLFdBQVcsQ0FBQyxFQUFFLENBQUM7RUFDZixLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxLQUFLO0VBQ2IsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsVUFBVSxHQStCbkI7RUFuQ0QsQUFLRSxFQUxBLEFBQUEsV0FBVyxDQUFDLEVBQUUsQUFLYixLQUFLLENBQUM7SUFDTCxZQUFZLEVBQUUsQ0FBQyxHQUNoQjtFQVBILEFBVU0sRUFWSixBQUFBLFdBQVcsQ0FBQyxFQUFFLENBUWQsQ0FBQyxBQUNFLFVBQVUsQ0FDVCxHQUFHLENBQUM7SUFDRixPQUFPLEVBQUUsR0FBRztJQUNaLE1BQU0sRUFBRSxJQUFJO0lBQ1osTUFBTSxFQUFFLGNBQWMsR0FDdkI7RUFkUCxBQWVNLEVBZkosQUFBQSxXQUFXLENBQUMsRUFBRSxDQVFkLENBQUMsQUFDRSxVQUFVLEFBTVIsTUFBTSxDQUFDLEdBQUcsQ0FBQztJQUNWLE9BQU8sRUFBRSxHQUFHO0lBQ1osTUFBTSxFQUFFLElBQUk7SUFDWixVQUFVLEVBQUUsT0FBTyxHQUNwQjtFQW5CUCxBQXFCSSxFQXJCRixBQUFBLFdBQVcsQ0FBQyxFQUFFLENBUWQsQ0FBQyxBQWFFLE1BQU0sQ0FBQztJQUNOLE9BQU8sRUFBRSxLQUFLO0lBQ2QsY0FBYyxFQUFFLEdBQUc7SUFDbkIsYUFBYSxFQUFFLEdBQUc7SUFDbEIsV0FBVyxFQUFFLElBQUksR0FDbEI7RUExQkwsQUE0QkUsRUE1QkEsQUFBQSxXQUFXLENBQUMsRUFBRSxDQTRCZCxJQUFJLEFBQUEsS0FBSyxDQUFDO0lBQ1IsT0FBTyxFQUFFLEtBQUs7SUFDZCxTQUFTLEVBQUUsSUFBSSxHQUNoQjtFQS9CSCxBQWdDRSxFQWhDQSxBQUFBLFdBQVcsQ0FBQyxFQUFFLENBZ0NkLE9BQU8sQ0FBQztJQUNOLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7O0FBR0gsQUFBQSxHQUFHLEFBQUEsV0FBVyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUM7RUFDOUIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsVUFBVSxHQUNuQjs7QUFFRCxBQUFBLGFBQWEsQ0FBQztFQUNaLE9BQU8sRUFBRSxDQUFDO0VBQ1YsTUFBTSxFQUFFLElBQUk7RUFDWixnQkFBZ0IsRUFBRSxJQUFJLEdBcUJ2QjtFQXhCRCxBQUlFLGFBSlcsQ0FJWCxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ0gsYUFBYSxFQUFFLENBQUM7SUFDaEIsZ0JBQWdCLEVBQUUsSUFBSTtJQUN0QixLQUFLLEVBQUUsSUFBSSxHQUlaO0lBWEgsQUFRSSxhQVJTLENBSVgsRUFBRSxDQUFDLENBQUMsQUFJRCxNQUFNLENBQUM7TUFDTixnQkFBZ0IsRUFBRSxJQUFJLEdBQ3ZCO0VBVkwsQUFZRSxhQVpXLENBWVgsS0FBSyxDQUFDO0lBQ0osT0FBTyxFQUFFLENBQUMsR0FVWDtJQXZCSCxBQWNJLGFBZFMsQ0FZWCxLQUFLLENBRUgsQ0FBQyxDQUFDO01BQ0EsTUFBTSxFQUFFLElBQUk7TUFDWixLQUFLLEVBQUUsSUFBSTtNQUNYLFNBQVMsRUFBRSxJQUFJO01BQ2YsV0FBVyxFQUFFLElBQUksR0FJbEI7TUF0QkwsQUFtQk0sYUFuQk8sQ0FZWCxLQUFLLENBRUgsQ0FBQyxDQUtDLENBQUMsQ0FBQztRQUNBLEtBQUssRUFBRSxPQUFPLEdBQ2Y7O0FEL1JQLEFBQUEsSUFBSSxDdEZ3QkE7RUFDRixXQUFXLEU2RXBCQSxRQUFRLEVBQUUsVUFBVTtFN0VxQi9CLFVBQVUsRTZFMUJNLE9BQU87RTdFMkJ2QixNQUFNLEVBQUUsTUFBTSxHQUNmOztBQUVELEFBQUEsSUFBSSxDQUFBO0VBQ0YsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFFRCxBQUFBLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFBO0VBQ3BCLEtBQUssRTZFekJZLElBQUksRzdFMEJ0Qjs7QUFFQSxBQUFBLFVBQVUsQ0FBQTtFZXpCUCxTQUFRLEVmSUMsTUFBTTtFZUpmLFdBQVEsRW1CcUR3QixJQUFJO0VuQnJEcEMsWUFBUSxFbUJxRHVELElBQUksR2xDMUJyRTtFQUZELEFnQmpDRyxVaEJpQ08sQWdCakNOLE1BQU0sQ0FBQztJQUNOLE9BQU8sRUFBRSxHQUFHO0lBQ1osT0FBTyxFQUFFLEtBQUs7SUFDZCxLQUFLLEVBQUUsSUFBSSxHQUNaOztBaEJpQ0osQUFBQSxJQUFJLEFBQUEsVUFBVSxDQUFBO0VBQ1gsT0FBTyxFQUFFLEdBQUcsR0FJZDtFNENXRSxNQUFNLEVBQUcsU0FBUyxFQUFFLEtBQUs7STVDaEI1QixBQUFBLElBQUksQUFBQSxVQUFVLENBQUE7TUFHVixPQUFPLEVBQUUsQ0FBQyxHQUViOztBdUVuQ0YsQUFBQSxXQUFXLEN2RXFDQztFQUNULEtBQUssRUFBRSxLQUFLLEdBQ2I7O0FBRUQsQUFBQSxDQUFDLENBQUE7RUFDQyxLQUFLLEU2RTNDSyxPQUFPO0U3RTRDakIsZUFBZSxFQUFFLElBQUksR0FDdEI7O0FBQ0QsQUFBQSxDQUFDLEFBQUEsTUFBTSxDQUFBO0VBQ0wsV0FBVyxFQUFFLElBQUk7RUFDakIsZUFBZSxFQUFFLFNBQVMsR0FDM0I7O0FBRUQsQUFBQSxtQkFBbUIsQ0FBQTtFQUNoQixVQUFVLEU2RWxFTyxPQUFPLEc3RW1FMUI7O0FBQ0QsQUFBQSw2QkFBNkIsQ0FBQTtFQUMxQixVQUFVLEU2RXBFaUIsT0FBTyxHN0VxRXBDOztBQUVELEFBQUEsb0JBQW9CLENBQUE7RUFDakIsVUFBVSxFNkV6RU8sT0FBTyxHN0UwRTFCOztBQUVELEFBQUEscUJBQXFCLENBQUE7RUFDbEIsVUFBVSxFNkU1RWlCLE9BQU8sRzdFNkVwQzs7QTRDakJFLE1BQU0sRUFBRyxTQUFTLEVBQUUsS0FBSztFNUNtQjdCLEFBQUEsaUJBQWlCLENBQUE7SUFFYixPQUFPLEVBQUUsSUFBSSxHQUVoQjs7QUFFRCxBQUFBLE9BQU8sRUFxWFAsYUFBYSxDQUtYLE1BQU0sRUExWEMsV0FBVyxDQUFBO0VBQ2xCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsVUFBVSxFNkUxRGdCLE9BQU87RTdFMkRqQyxLQUFLLEU2RTdFVyxJQUFJO0U3RThFcEIsYUFBYSxFQUFFLEdBQUc7RUFDbEIsS0FBSyxFNkUvRVcsSUFBSSxHN0VnRnJCOztBQUNELEFBQUEsQ0FBQyxBQUFBLFdBQVcsQUFBQSxNQUFNLENBQUE7RUFDaEIsZUFBZSxFQUFFLElBQUksR0FDdEI7O0FBRUQsWUFBWTtBd0ZsR1osQUFFUSxlQUZPLEFBQUEsU0FBUyxDQUNwQixFQUFFLENBQ0UsRUFBRSxBQUFBLE1BQU0sQ0FBQTtFQUNKLFVBQVUsRUFBRSxrQkFBa0IsR0FDakM7O0FBR1QsQUFBQSxlQUFlLENBQUM7RUFDWixLQUFLLEVBQUUsSUFBSSxHQWtHZDtFQW5HRCxBQUdJLGVBSFcsQ0FHWCxFQUFFLENBQUM7SVZYSCxVQUFVLEVBQUUsSUFBSTtJQUNoQixNQUFNLEVBQUUsR0FBRztJQUNYLE9BQU8sRUFBRSxDQUFDO0lVV04sTUFBTSxFQUFFLElBQUk7SUFDWixLQUFLLEVBQUMsSUFBSTtJQUNWLFFBQVEsRUFBQyxRQUFRO0lBQ2pCLFVBQVUsRVhkRyxPQUFPO0lXZXBCLEtBQUssRUFBRSxJQUFJO0lBQ1gsT0FBTyxFQUFFLElBQUk7SUFDYixPQUFPLEVBQUUsR0FBRyxHQXVCZjtJQWxDTCxBQVlRLGVBWk8sQ0FHWCxFQUFFLENBU0UsQ0FBQyxDQUFDO01BQ0UsT0FBTyxFQUFFLEtBQUs7TUFDZCxLQUFLLEVYWEosSUFBSTtNV1lMLGVBQWUsRUFBQyxJQUFJO01BQ3BCLFdBQVcsRUFBQyxHQUFHO01BQ2YsU0FBUyxFWGJKLElBQUk7TVdjVCxXQUFXLEVBQUMsSUFBSTtNQUNoQixPQUFPLEVBQUMsTUFBTSxHQUNqQjtJQXBCVCxBQXFCUSxlQXJCTyxDQUdYLEVBQUUsQ0FrQkUsRUFBRSxDQUFBO01BQ0UsVUFBVSxFWDVCRCxPQUFPLEdXbUNuQjtNQTdCVCxBQXVCWSxlQXZCRyxDQUdYLEVBQUUsQ0FrQkUsRUFBRSxDQUVFLEVBQUUsQ0FBQztRQUNDLE9BQU8sRUFBRSxLQUFLLEdBSWpCO1FBNUJiLEFBeUJnQixlQXpCRCxDQUdYLEVBQUUsQ0FrQkUsRUFBRSxDQUVFLEVBQUUsQ0FFRSxFQUFFLENBQUE7VUFDRSxZQUFZLEVBQUUsR0FBRyxHQUNwQjtJQTNCakIsQUE4QlEsZUE5Qk8sQ0FHWCxFQUFFLENBMkJFLEVBQUUsQUFBQSxNQUFNLENBQUM7TUFDTCxVQUFVLEVYaENFLE9BQU8sR1dpQ3RCO0U1Q3VCTCxNQUFNLEVBQUcsU0FBUyxFQUFFLEtBQUs7STRDdkQ3QixBQUFBLGVBQWUsQ0FBQztNQXVDUixNQUFNLEVBQUUsR0FBRyxHQTREbEI7TUFuR0QsQUFvQ1EsZUFwQ08sQ0FvQ1AsV0FBVyxDQUFBO1FBQ1AsS0FBSyxFQUFFLEtBQUssR0FDZjtNQXRDVCxBQUdJLGVBSFcsQ0FHWCxFQUFFLENBcUNLO1FBQ0MsT0FBTyxFQUFFLEtBQUs7UUFDZCxVQUFVLEVBQUUsV0FBVztRQUN2QixLQUFLLEVBQUUsSUFBSSxHQXFDZDtRQWhGVCxBQXFCUSxlQXJCTyxDQUdYLEVBQUUsQ0FrQkUsRUFBRSxDQXVCSztVQUNDLFVBQVUsRUFBRSxXQUFXO1VBQ3ZCLFFBQVEsRUFBQyxRQUFRO1VBQ2pCLEtBQUssRUFBQyxJQUFJO1VBQ1YsTUFBTSxFQUFDLENBQUM7VUFDUixPQUFPLEVBQUMsQ0FBQyxHQTJCWjtVQTVFYixBQWtEZ0IsZUFsREQsQ0F3Q1AsRUFBRSxDQUlFLEVBQUUsQ0FNRSxrQkFBa0IsQ0FBQztZQUNmLFVBQVUsRVh6RFQsT0FBTyxHVzBEWDtVQXBEakIsQUF1QlksZUF2QkcsQ0FHWCxFQUFFLENBa0JFLEVBQUUsQ0FFRSxFQUFFLENBOEJLO1lBQ0MsT0FBTyxFQUFDLElBQUk7WUFDWixRQUFRLEVBQUMsUUFBUTtZQUNqQixHQUFHLEVBQUMsSUFBSTtZQUNSLElBQUksRUFBQyxDQUFDO1lBQ04sT0FBTyxFQUFFLEdBQUc7WUFDWixVQUFVLEVYakVULE9BQU87WVdrRVIsT0FBTyxFQUFDLENBQUMsR0FlWjtZQTNFakIsQUE2RG9CLGVBN0RMLENBd0NQLEVBQUUsQ0FJRSxFQUFFLENBU0UsRUFBRSxDQVFFLENBQUMsQ0FBQztjQUNFLFdBQVcsRUFBQyxJQUFJO2NBQ2hCLE9BQU8sRUFBQyxTQUFTLEdBQ3BCO1lBaEVyQixBQXlCZ0IsZUF6QkQsQ0FHWCxFQUFFLENBa0JFLEVBQUUsQ0FFRSxFQUFFLENBRUUsRUFBRSxDQXdDSztjQUNDLEtBQUssRUFBQyxJQUFJO2NBQ1YsS0FBSyxFQUFDLEtBQUs7Y0FDWCxVQUFVLEVYMUViLE9BQU8sR1cyRVA7WUFyRXJCLEFBc0VvQixlQXRFTCxDQXdDUCxFQUFFLENBSUUsRUFBRSxDQVNFLEVBQUUsQ0FpQkUsRUFBRSxDQUFDO2NBQ0MsR0FBRyxFQUFDLENBQUM7Y0FDTCxJQUFJLEVBQUMsSUFBSTtjQUNULE9BQU8sRUFBRSxHQUFHLEdBQ2Y7UUExRXJCLEFBNkVZLGVBN0VHLENBd0NQLEVBQUUsQ0FxQ0UsRUFBRSxBQUFBLE1BQU0sR0FBRyxFQUFFLENBQUM7VUFDTixPQUFPLEVBQUMsS0FBSyxHQUNwQjtFQS9FYixBQWtGSSxlQWxGVyxDQWtGWCxnQkFBZ0IsQ0FBQTtJQUNaLEtBQUssRUFBRSxJQUFJO0lBQ1gsS0FBSyxFWGpGQSxJQUFJO0lXa0ZULE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLEtBQUssR0FZZjtJQWxHTCxBQXVGUSxlQXZGTyxDQWtGWCxnQkFBZ0IsQ0FLWixDQUFDLENBQUE7TUFDRyxPQUFPLEVBQUUsWUFBWTtNQUNyQixPQUFPLEVBQUUsQ0FBQyxHQVFiO01BakdULEFBMEZZLGVBMUZHLENBa0ZYLGdCQUFnQixDQUtaLENBQUMsQ0FHRyxDQUFDLENBQUE7UUFDRyxjQUFjLEVBQUUsTUFBTTtRQUN0QixZQUFZLEVBQUUsSUFBSSxHQUlyQjtRNUN6Q1QsTUFBTSxFQUFHLFNBQVMsRUFBRSxLQUFLO1U0Q3ZEN0IsQUEwRlksZUExRkcsQ0FrRlgsZ0JBQWdCLENBS1osQ0FBQyxDQUdHLENBQUMsQ0FBQTtZQUlPLFNBQVMsRUFBRSxJQUFJLEdBRXRCOztBQUtiLEFBQ0ksb0JBRGdCLENBQ2hCLHNCQUFzQixDQUFBO0VBQ2xCLFVBQVUsRVg3R0csT0FBTyxHVzhHdkI7O0FBR0wsQUFDSSxxQkFEaUIsQ0FDakIsc0JBQXNCLENBQUE7RUFDbEIsVUFBVSxFWGxIYSxPQUFPO0VXbUg5QixVQUFVLEVBQUUsR0FBRztFQUNmLFlBQVksRUFBRSxJQUFJLEdBQ3JCOztBQUdMLEFBQUEsc0JBQXNCLENBQUE7RUFDbEIsT0FBTyxFQUFFLENBQUM7RUFDVixLQUFLLEVYbEhJLElBQUk7RVdtSGIsU0FBUyxFQUFFLElBQUk7RUFDZixhQUFhLEVBQUUsS0FBSztFQUNwQixNQUFNLEVBQUUsZUFBZTtFQUN2QixLQUFLLEVBQUUsS0FBSztFQUNaLE9BQU8sRUFBRSxJQUFJLEdBSWhCO0U1Q3ZFRyxNQUFNLEVBQUcsU0FBUyxFQUFFLEtBQUs7STRDNEQ3QixBQUFBLHNCQUFzQixDQUFBO01BU2QsT0FBTyxFQUFFLEtBQUssR0FFckI7O0F4Ri9CRCxBQUFBLE9BQU8sQ0FBQTtFQUNMLFVBQVUsRTZFeEdRLE9BQU87RTdFeUd6QixhQUFhLEVBQUUsS0FBSyxHQUNyQjs7QUFFRCxBQUFBLE9BQU8sQ0FBQTtFQUNMLE9BQU8sRUFBRSxJQUFJO0VlM0ZYLEtBQVEsRW9Cd0lFLElBQWdDO0VwQnhJMUMsS0FBUSxFSUFnRCxJQUFJO0VKQTVELFdBQVEsRW9CK0VZLENBQUM7RXBCL0VyQixZQUFRLEVvQmtGVyxDQUFDO0VuQ2N0QixLQUFLLEVBQUUsSUFBSTtFQUNYLFVBQVUsRUFBRSxHQUFHO0VBQ2YsYUFBYSxFQUFFLEdBQUcsR0FPbkI7RTRDNURHLE1BQU0sRUFBRyxTQUFTLEVBQUUsS0FBSztJNUM2QzdCLEFBQUEsT0FBTyxDQUFBO01BSUgsT0FBTyxFQUFFLEtBQUssR0FXakI7RUFmRCxBQVNFLE9BVEssQ0FTTCxLQUFLLENBQUE7SWVuR0gsS0FBUSxFb0J3SUUsU0FBZ0M7SXBCeEkxQyxLQUFRLEVJQWdELElBQUk7SUpBNUQsWUFBUSxFcUI0RE0sUUFBZ0UsR3BDeUMvRTtFQVhILEFBWUUsT0FaSyxDQVlMLGVBQWUsQ0FBQTtJZXRHYixLQUFRLEVvQndJRSxTQUFnQztJcEJ4STFDLEtBQVEsRUlBMEQsS0FBSztJSkF2RSxZQUFRLEVvQmtGVyxDQUFDLEduQ3NCckI7O0FBR0gsQUFBQSxLQUFLLENBQUE7RUFDSCxPQUFPLEVBQUUsSUFBSSxHQUlkO0U0Q25FRyxNQUFNLEVBQUcsU0FBUyxFQUFFLEtBQUs7STVDOEQ3QixBQUFBLEtBQUssQ0FBQTtNQUdELE9BQU8sRUFBRSxLQUFLLEdBRWpCOztBQUVELEFBQUEsWUFBWSxDQUFBO0VBQ1YsT0FBTyxFQUFFLFlBQVk7RUFDckIsV0FBVyxFQUFFLEdBQUcsR0FJakI7RTRDM0VHLE1BQU0sRUFBRyxTQUFTLEVBQUUsS0FBSztJNUNxRTdCLEFBQUEsWUFBWSxDQUFBO01BSVIsT0FBTyxFQUFFLElBQUksR0FFaEI7O0FBRUQsVUFBVTtBQUVWLEFBQUEsS0FBSyxDQUFBO0VlNUhELEtBQVEsRW9Cd0lFLElBQWdDO0VwQnhJMUMsS0FBUSxFSUFnRCxJQUFJO0VKQTVELFdBQVEsRW9CK0VZLENBQUM7RXBCL0VyQixZQUFRLEVvQmtGVyxDQUFDLEduQzRDdkI7O0FBRUQsQUFBQSxLQUFLLEVBdUJMLGlCQUFpQixDQXZCWjtFQUNILFVBQVUsRTZFN0lNLElBQUksRzdFaUtyQjtFQXJCRCxBQUVFLEtBRkcsQ0FFSCxHQUFHLEVBcUJMLGlCQUFpQixDQXJCZixHQUFHLENBQUE7SUFDRCxRQUFRLEVBQUUsUUFBUTtJQUNsQixLQUFLLEVBQUUsSUFBSTtJQUNYLGNBQWMsRUFBRSxNQUFNLEdBQ3ZCO0VBTkgsQUFPRSxLQVBHLENBT0gsUUFBUSxFQWdCVixpQkFBaUIsQ0FoQmYsUUFBUSxDQUFBO0lBQ04sUUFBUSxFQUFDLFFBQVE7SUFDakIsR0FBRyxFQUFFLENBQUM7SUFDTixLQUFLLEVBQUUsQ0FBQztJQUNSLE1BQU0sRUFBRSxDQUFDO0lBQ1QsSUFBSSxFQUFFLENBQUM7SUFDUCxPQUFPLEVBQUUsQ0FBQyxHQU9YO0lBcEJILEFBY0ksS0FkQyxDQU9ILFFBQVEsQ0FPTixFQUFFLEVBU04saUJBQWlCLENBaEJmLFFBQVEsQ0FPTixFQUFFLEVBZE4sS0FBSyxDQU9ILFFBQVEsQ0FPRixFQUFFLEVBU1YsaUJBQWlCLENBaEJmLFFBQVEsQ0FPRixFQUFFLEVBZFYsS0FBSyxDQU9ILFFBQVEsQ0FPRSxFQUFFLEVBU2QsaUJBQWlCLENBaEJmLFFBQVEsQ0FPRSxFQUFFLEVBZGQsS0FBSyxDQU9ILFFBQVEsQ0FPTSxFQUFFLEVBU2xCLGlCQUFpQixDQWhCZixRQUFRLENBT00sRUFBRSxFQWRsQixLQUFLLENBT0gsUUFBUSxDQU9VLEVBQUUsRUFTdEIsaUJBQWlCLENBaEJmLFFBQVEsQ0FPVSxFQUFFLEVBZHRCLEtBQUssQ0FPSCxRQUFRLENBT2MsRUFBRSxFQVMxQixpQkFBaUIsQ0FoQmYsUUFBUSxDQU9jLEVBQUUsRUFkMUIsS0FBSyxDQU9ILFFBQVEsQ0FPa0IsSUFBSSxFQVNoQyxpQkFBaUIsQ0FoQmYsUUFBUSxDQU9rQixJQUFJLEVBZGhDLEtBQUssQ0FPSCxRQUFRLENBT3dCLENBQUMsRUFTbkMsaUJBQWlCLENBaEJmLFFBQVEsQ0FPd0IsQ0FBQyxDQUFBO01BQzdCLFFBQVEsRUFBRSxRQUFRO01BQ2xCLE1BQU0sRUFBRSxDQUFDO01BQ1QsSUFBSSxFQUFFLENBQUM7TUFDUCxNQUFNLEVBQUUsSUFBSSxHQUNiOztBQUlMLEFBQUEsaUJBQWlCLENBQUE7RUFFZixVQUFVLEVBQUUsV0FBVyxHQUN4Qjs7QUFFRCxBQUFBLFdBQVcsQ0FBQTtFZTVKUCxLQUFRLEVvQndJRSxTQUFnQztFcEJ4STFDLEtBQVEsRUlBZ0QsSUFBSTtFSkE1RCxZQUFRLEVxQjRETSxRQUFnRTtFcEN5Ry9FLFlBQVksRUFBRSxDQUFDLEdBQ2pCO0U0Q3pIRyxNQUFNLEVBQUcsU0FBUyxFQUFFLEtBQUs7STVDK0c3QixBQUFBLFdBQVcsQ0FBQTtNZTVKUCxLQUFRLEVvQnlIc0QsSUFBSTtNcEJ6SGxFLEtBQVEsRUlBZ0QsSUFBSTtNSkE1RCxXQUFRLEVvQitFWSxDQUFDO01wQi9FckIsWUFBUSxFb0JrRlcsQ0FBQyxHbkNvRnZCO0VBVkQsQUFLRSxXQUxTLENBS1QsY0FBYyxDQUFBO0lBQ1YsV0FBVyxFQUFFLEdBQUc7SUFDaEIsWUFBWSxFQUFFLEdBQUcsR0FDbkI7O0FBSUosQUFBQSxnQkFBZ0IsQ0FBQTtFZXhLWixLQUFRLEVvQndJRSxTQUFnQztFcEJ4STFDLEtBQVEsRUlBMEQsS0FBSztFSkF2RSxZQUFRLEVvQmtGVyxDQUFDO0VuQ3dGdEIsWUFBWSxFQUFFLENBQUMsR0FXaEI7RTRDeElHLE1BQU0sRUFBRyxTQUFTLEVBQUUsS0FBSztJNUMySDdCLEFBQUEsZ0JBQWdCLENBQUE7TWV4S1osS0FBUSxFb0J3SUUsU0FBZ0M7TXBCeEkxQyxLQUFRLEVJQWdELElBQUk7TUpBNUQsWUFBUSxFcUI0RE0sUUFBZ0U7TXBDaUg3RSxXQUFXLEVBQVMsR0FBRztNQUN2QixVQUFVLEVBQVMsR0FBRyxHQU8xQjtFQWJELEFBUUUsZ0JBUmMsQ0FRZCxLQUFLLEVBUlAsZ0JBQWdCLENBakJoQixpQkFBaUIsQ0F5QlY7SWVoTEgsS0FBUSxFb0J3SUUsU0FBZ0M7SXBCeEkxQyxLQUFRLEVJQWdELElBQUk7SW5Ca0w1RCxRQUFRLEVBQUUsUUFBUTtJQUNsQixhQUFhLEVtQzNDSCxRQUFnQyxHbkM0QzNDO0lBWkgsQXNDMUhJLGdCdEMwSFksQ0FRZCxLQUFLLEFzQ2xJRixVQUFXLENBQUEsTUFBTSxHdEMwSHRCLGdCQUFnQixDQWpCaEIsaUJBQWlCLEFzQ3pHWixVQUFXLENBQUEsTUFBTSxFQUFVO012QjlDNUIsV0FBUSxFc0J3RFEsQ0FBQztNdEJ4RGpCLFlBQVEsRXVCb0RpQixLQUFJO012QnBEN0IsS0FBUSxFd0JaYyxJQUFJO014QlkxQixXQUFRLEVXZ0JzQixDQUFDLEdZd0Q5QjtJdENnR0wsQXNDMUhJLGdCdEMwSFksQ0FRZCxLQUFLLEFzQ2xJRixVQUFXLENBQUEsTUFBTSxHdEMwSHRCLGdCQUFnQixDQWpCaEIsaUJBQWlCLEFzQ3pHWixVQUFXLENBQUEsTUFBTSxFQUFVO012QjlDNUIsV0FBUSxFb0J3SUUsU0FBZ0M7TXBCeEkxQyxZQUFRLEV1Qm9EaUIsS0FBSTtNdkJwRDdCLEtBQVEsRXdCSmMsSUFBSSxHRDRFekI7O0F0QytHTCxBQUFBLGFBQWEsQ0FBQTtFZXZMVCxLQUFRLEVvQndJRSxTQUFnQztFcEJ4STFDLEtBQVEsRUlBZ0QsSUFBSTtFSkE1RCxZQUFRLEVxQjRETSxRQUFnRSxHcENnS2hGO0U0Qy9LRSxNQUFNLEVBQUcsU0FBUyxFQUFFLEtBQUs7STVDMEk3QixBQUFBLGFBQWEsQ0FBQTtNZXZMVCxLQUFRLEVvQndJRSxJQUFnQztNcEJ4STFDLEtBQVEsRUlBZ0QsSUFBSTtNSkE1RCxXQUFRLEVvQitFWSxDQUFDO01wQi9FckIsWUFBUSxFb0JrRlcsQ0FBQyxHbkMwSXRCO0VBckNGLEFBTUksYUFOUyxDQU1ULEtBQUssRUFOVCxhQUFhLENBaENiLGlCQUFpQixDQXNDUjtJZTdMTCxLQUFRLEVvQndJRSxJQUFnQztJcEJ4STFDLEtBQVEsRUlBMEQsS0FBSztJSkF2RSxZQUFRLEVvQmtGVyxDQUFDO0luQzZHbEIsYUFBYSxFQUFFLEdBQUcsR0E0Qm5CO0lBcENMLEFBU00sYUFUTyxDQU1ULEtBQUssQ0FHSCxXQUFXLEVBVGpCLGFBQWEsQ0FoQ2IsaUJBQWlCLENBeUNYLFdBQVcsQ0FBQTtNQUNULE9BQU8sRUFBRSxHQUFHO01BS1osWUFBWSxFQUFFLEdBQUcsR0FDbEI7TTRDMUpILE1BQU0sRUFBRyxTQUFTLEVBQUUsS0FBSztRNUMwSTdCLEFBU00sYUFUTyxDQU1ULEtBQUssQ0FHSCxXQUFXLEVBVGpCLGFBQWEsQ0FoQ2IsaUJBQWlCLENBeUNYLFdBQVcsQ0FBQTtVZWhNYixLQUFRLEVvQndJRSxTQUFnQztVcEJ4STFDLEtBQVEsRUlBZ0QsSUFBSTtVSkE1RCxZQUFRLEVxQjRETSxRQUFnRTtVcEN3SXhFLE9BQU8sRUFBRSxDQUFDLEdBR2I7SUFoQlAsQUFpQk0sYUFqQk8sQ0FNVCxLQUFLLENBV0gsYUFBYSxFQWpCbkIsYUFBYSxDQWhDYixpQkFBaUIsQ0FpRFgsYUFBYSxDQUFBO01BQ1gsWUFBWSxFQUFFLEdBQUc7TUFDakIsYUFBYSxFQUFFLEdBQUc7TUFDbEIsY0FBYyxFQUFFLEdBQUcsR0FlcEI7TUFuQ1AsQUFxQlEsYUFyQkssQ0FNVCxLQUFLLENBV0gsYUFBYSxDQUlYLEtBQUssRUFyQmIsYUFBYSxDQWhDYixpQkFBaUIsQ0FpRFgsYUFBYSxDQUlYLEtBQUssQ0FBQTtRQUNILEtBQUssRUFBRSxLQUFLO1FBQ1osU0FBUyxFQUFFLElBQUk7UUFDZixZQUFZLEVvQ25KSixRQUFnRSxHcENvSnpFO000Q25LTCxNQUFNLEVBQUcsU0FBUyxFQUFFLEtBQUs7UTVDMEk3QixBQTJCVSxhQTNCRyxDQU1ULEtBQUssQ0FXSCxhQUFhLENBVVQsRUFBRSxFQTNCWixhQUFhLENBaENiLGlCQUFpQixDQWlEWCxhQUFhLENBVVQsRUFBRSxDQUFBO1VBQ0EsVUFBVSxFQUFFLEdBQUcsR0FDaEI7TTRDdktQLE1BQU0sRUFBRyxTQUFTLEVBQUUsS0FBSztRNUMwSTdCLEFBaUJNLGFBakJPLENBTVQsS0FBSyxDQVdILGFBQWEsRUFqQm5CLGFBQWEsQ0FoQ2IsaUJBQWlCLENBaURYLGFBQWEsQ0FBQTtVZXhNZixLQUFRLEVvQndJRSxTQUFnQztVcEJ4STFDLEtBQVEsRUlBMEQsS0FBSztVSkF2RSxZQUFRLEVvQmtGVyxDQUFDO1VuQ3NJZCxPQUFPLEVBQUUsQ0FBQyxHQUViOztBQUtOLEFBQUEsYUFBYSxDQUFDLE1BQU0sQ0FBQTtFQUNoQixNQUFNLEVBQUUsS0FBSyxHQUNoQjs7QUFFRCxBQUFBLGFBQWEsQ0FBQyxNQUFNLENBQUE7RUFDaEIsTUFBTSxFQUFFLEtBQUssR0FDaEI7O0FBRUQsQUFDRSxhQURXLENBQ1gsTUFBTSxFQURPLGFBQWEsQ0FDMUIsTUFBTSxDQUFBO0VBQ0osS0FBSyxFQUFFLElBQUksR0FRWjtFNENwTUEsTUFBTSxFQUFHLFNBQVMsRUFBRSxLQUFLO0k1QzBMNUIsQUFDRSxhQURXLENBQ1gsTUFBTSxFQURPLGFBQWEsQ0FDMUIsTUFBTSxDQUFBO01BR0osTUFBTSxFQUFFLEtBQUssR0FNZDtFNENwTUEsTUFBTSxFQUFHLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7STVDMExuRCxBQUNFLGFBRFcsQ0FDWCxNQUFNLEVBRE8sYUFBYSxDQUMxQixNQUFNLENBQUE7TUFNSixNQUFNLEVBQUUsS0FBSyxHQUdkOztBQUdILEFBQUEsV0FBVyxDQUFBO0VBQ1QsT0FBTyxFQUFFLE1BQU0sR0FZaEI7RUFiRCxBQUVFLFdBRlMsQ0FFVCxZQUFZLENBQUE7SUFDVixTQUFTLEVBQUUsSUFBSTtJQUNmLFdBQVcsRUFBRSxJQUFJLEdBQ2xCO0VBTEgsQUFNRSxXQU5TLENBTVQsa0JBQWtCLENBQUE7SUFDaEIsU0FBUyxFQUFFLElBQUksR0FDaEI7RUFSSCxBQVNFLFdBVFMsQ0FTVCxXQUFXLENBQUE7SUFDVCxLQUFLLEVBQUUsS0FBSztJQUNaLFNBQVMsRUFBRSxJQUFJLEdBQ2hCOztBQUVKLEFBQUEsUUFBUSxDQUFBO0VBQ04sS0FBSyxFQUFFLElBQUk7RUFDWCxLQUFLLEVBQUUsSUFBSSxHQTJDWjtFNENsUUcsTUFBTSxFQUFHLFNBQVMsRUFBRSxLQUFLO0k1Q3FON0IsQUFBQSxRQUFRLENBQUE7TWVsUUosS0FBUSxFb0J3SUUsU0FBZ0M7TXBCeEkxQyxLQUFRLEVJQTBELEtBQUs7TUpBdkUsWUFBUSxFb0JrRlcsQ0FBQyxHbkM2TnZCO0VBN0NELEFBTUUsUUFOTSxDQU1OLEVBQUUsQ0FBQTtJQUNBLGFBQWEsRUFBRSxLQUFLLEdBQ3JCO0VBUkgsQUFTRSxRQVRNLENBU04sWUFBWSxFQVRkLFFBQVEsQ0FTUSxLQUFLLENBQUE7SUFDakIsT0FBTyxFQUFFLEdBQUcsR0FDYjtFQVhILEFBYUksUUFiSSxDQVlOLFlBQVksQ0FDVixFQUFFLENBQUE7SThFalNGLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLE1BQU0sRUFBRSxHQUFHO0lBQ1gsT0FBTyxFQUFFLENBQUMsRzlFb1NUO0lBbEJMLEFBZU0sUUFmRSxDQVlOLFlBQVksQ0FDVixFQUFFLENBRUEsRUFBRSxDQUFBO01BQ0EsVUFBVSxFQUFFLEdBQUcsR0FDaEI7RUFqQlAsQUFtQkksUUFuQkksQ0FZTixZQUFZLENBT1YsQ0FBQyxDQUFBO0lBQ0MsTUFBTSxFQUFFLENBQUM7SUFDVCxLQUFLLEU2RTVSTyxJQUFJO0k3RTZSaEIsU0FBUyxFQUFFLElBQUksR0FDaEI7RUF2QkwsQUEwQkksUUExQkksQ0F5Qk4sS0FBSyxDQUNILEVBQUUsRUExQk4sUUFBUSxDQTNHUixpQkFBaUIsQ0FxSWIsRUFBRSxFQTFCTixRQUFRLENBeUJOLEtBQUssQ0FDQyxFQUFFLEVBMUJWLFFBQVEsQ0EzR1IsaUJBQWlCLENBcUlULEVBQUUsRUExQlYsUUFBUSxDQXlCTixLQUFLLENBQ0ssRUFBRSxFQTFCZCxRQUFRLENBM0dSLGlCQUFpQixDQXFJTCxFQUFFLEVBMUJkLFFBQVEsQ0F5Qk4sS0FBSyxDQUNTLEVBQUUsRUExQmxCLFFBQVEsQ0EzR1IsaUJBQWlCLENBcUlELEVBQUUsRUExQmxCLFFBQVEsQ0F5Qk4sS0FBSyxDQUNhLEVBQUUsRUExQnRCLFFBQVEsQ0EzR1IsaUJBQWlCLENBcUlHLEVBQUUsRUExQnRCLFFBQVEsQ0F5Qk4sS0FBSyxDQUNpQixFQUFFLEVBMUIxQixRQUFRLENBM0dSLGlCQUFpQixDQXFJTyxFQUFFLENBQUE7SUFDcEIsTUFBTSxFQUFFLENBQUMsR0FDVjtFQTVCTCxBQStCSSxRQS9CSSxDQThCTixLQUFLLENBQ0gsRUFBRSxDQUFBO0k4RW5URixVQUFVLEVBQUUsSUFBSTtJQUNoQixNQUFNLEVBQUUsR0FBRztJQUNYLE9BQU8sRUFBRSxDQUFDLEc5RXVUVDtJQXJDTCxBQWlDTSxRQWpDRSxDQThCTixLQUFLLENBQ0gsRUFBRSxDQUVBLEVBQUUsQ0FBQTtNQUNBLFVBQVUsRUFBRSxLQUFLO01BQ2pCLFNBQVMsRUFBRSxJQUNiLEdBQUM7RUFwQ1AsQUFzQ0ksUUF0Q0ksQ0E4Qk4sS0FBSyxDQVFILElBQUksQ0FBQTtJQUNGLFVBQVUsRTZFMVNDLE9BQU87STdFMlNsQixPQUFPLEVBQUUsS0FBSztJQUNkLFNBQVMsRUFBRSxHQUFHO0lBQ2QsTUFBTSxFQUFFLElBQUksR0FDYjs7QUFJTCxZQUFZO0FBQ1osQUFBQSxNQUFNLENBQUE7RUFFSixVQUFVLEVBQUUsR0FBRyxDNkVwVUksT0FBTyxDN0VvVVUsS0FBSztFQUN6QyxVQUFVLEU2RXRVUSxPQUFPLEc3RTBXMUI7RUF2Q0QsQUFJRSxNQUpJLENBSUosVUFBVSxDQUFBO0lBQ1IsT0FBTyxFQUFFLEdBQUcsR0FDYjtFQU5ILEFBT0UsTUFQSSxDQU9KLFVBQVUsQ0FBQTtJQUNSLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLFNBQVMsRUFBRSxJQUFJO0lBQ2YsS0FBSyxFNkVqVVMsSUFBSTtJN0VrVWxCLFVBQVUsRUFBRSxHQUFHLEdBQ2hCO0VBWkgsQUFhRSxNQWJJLENBYUosT0FBTyxDQUFBO0llL1RMLEtBQVEsRW9Cd0lFLFNBQWdDO0lwQnhJMUMsS0FBUSxFSUFnRCxJQUFJLEduQmlVN0Q7SUFmSCxBc0NwUUksTXRDb1FFLENBYUosT0FBTyxBc0NqUkosVUFBVyxDQUFBLE1BQU0sRUFBVTtNdkI5QzVCLFdBQVEsRXNCd0RRLENBQUM7TXRCeERqQixZQUFRLEV1Qm9EaUIsS0FBSTtNdkJwRDdCLEtBQVEsRXdCWmMsSUFBSTtNeEJZMUIsV0FBUSxFV2dCc0IsQ0FBQyxHWXdEOUI7SXRDME9MLEFzQ3BRSSxNdENvUUUsQ0FhSixPQUFPLEFzQ2pSSixVQUFXLENBQUEsTUFBTSxFQUFVO012QjlDNUIsV0FBUSxFb0J3SUUsU0FBZ0M7TXBCeEkxQyxZQUFRLEV1Qm9EaUIsS0FBSTtNdkJwRDdCLEtBQVEsRXdCSmMsSUFBSSxHRDRFekI7SXRDME9MLEFzQ3BRSSxNdENvUUUsQ0FhSixPQUFPLEFzQ2pSSixVQUFXLENBQUEsTUFBTSxFQUFVO012QjlDNUIsV0FBUSxFb0J3SUUsU0FBZ0M7TXBCeEkxQyxZQUFRLEV1Qm9EaUIsS0FBSTtNdkJwRDdCLEtBQVEsRXdCSmMsSUFBSSxHRDRFekI7RXRDME9MLEFBaUJFLE1BakJJLENBaUJKLEVBQUUsQ0FBQTtJQUNBLFNBQVMsRUFBRSxJQUFJO0lBQ2YsS0FBSyxFNkU1VUksSUFBSSxHN0U2VWQ7RUFwQkgsQUFxQkUsTUFyQkksQ0FxQkosRUFBRSxDQUFBO0k4RXpWQSxVQUFVLEVBQUUsSUFBSTtJQUNoQixNQUFNLEVBQUUsR0FBRztJQUNYLE9BQU8sRUFBRSxDQUFDLEc5RTZWWDtJQTNCSCxBQXVCSSxNQXZCRSxDQXFCSixFQUFFLENBRUEsQ0FBQyxDQUFDO01BQ0EsU0FBUyxFQUFFLElBQUk7TUFDZixLQUFLLEU2RWxWRSxJQUFJLEc3RW1WWjtFNEMvUkQsTUFBTSxFQUFHLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7STVDcVFwRCxBQWFFLE1BYkksQ0FhSixPQUFPLENBZ0JFO01lL1VQLEtBQVEsRW9Cd0lFLFNBQWdDO01wQnhJMUMsS0FBUSxFSUFnRCxJQUFJLEduQmlWM0Q7TUEvQkwsQXNDcFFJLE10Q29RRSxDQTZCRixPQUFPLEFzQ2pTTixVQUFXLENBQUEsTUFBTSxFQUFVO1F2QjlDNUIsV0FBUSxFc0J3RFEsQ0FBQztRdEJ4RGpCLFlBQVEsRXVCb0RpQixLQUFJO1F2QnBEN0IsS0FBUSxFd0JaYyxJQUFJO1F4QlkxQixXQUFRLEVXZ0JzQixDQUFDLEdZd0Q5QjtNdEMwT0wsQXNDcFFJLE10Q29RRSxDQTZCRixPQUFPLEFzQ2pTTixVQUFXLENBQUEsTUFBTSxFQUFVO1F2QjlDNUIsV0FBUSxFb0J3SUUsU0FBZ0M7UXBCeEkxQyxZQUFRLEV1Qm9EaUIsS0FBSTtRdkJwRDdCLEtBQVEsRXdCSmMsSUFBSSxHRDRFekI7TXRDME9MLEFzQ3BRSSxNdENvUUUsQ0E2QkYsT0FBTyxBc0NqU04sVUFBVyxDQUFBLE1BQU0sRUFBVTtRdkI5QzVCLFdBQVEsRW9Cd0lFLFNBQWdDO1FwQnhJMUMsWUFBUSxFdUJvRGlCLEtBQUk7UXZCcEQ3QixLQUFRLEV3QkpjLElBQUksR0Q0RXpCO010QzBPTCxBc0NwUUksTXRDb1FFLENBNkJGLE9BQU8sQXNDalNOLFVBQVcsQ0FBQSxNQUFNLEVBQVU7UXZCOUM1QixXQUFRLEVvQndJRSxTQUFnQztRcEJ4STFDLFlBQVEsRXVCb0RpQixLQUFJO1F2QnBEN0IsS0FBUSxFd0JKYyxJQUFJLEdENEV6QjtFTTNCRCxNQUFNLEVBQUcsU0FBUyxFQUFFLEtBQUs7STVDcVE3QixBQWFFLE1BYkksQ0FhSixPQUFPLENBcUJFO01lcFZQLEtBQVEsRW9Cd0lFLFFBQWdDO01wQnhJMUMsS0FBUSxFSUFnRCxJQUFJLEduQnNWM0Q7TUFwQ0wsQXNDcFFJLE10Q29RRSxDQWtDRixPQUFPLEFzQ3RTTixVQUFXLENBQUEsT0FBTyxFQUFTO1F2QjlDNUIsV0FBUSxFc0J3RFEsQ0FBQztRdEJ4RGpCLFlBQVEsRXVCb0RpQixLQUFJO1F2QnBEN0IsS0FBUSxFd0JaYyxJQUFJO1F4QlkxQixXQUFRLEVXZ0JzQixDQUFDLEdZd0Q5QjtNdEMwT0wsQXNDcFFJLE10Q29RRSxDQWtDRixPQUFPLEFzQ3RTTixVQUFXLENBQUEsT0FBTyxFQUFTO1F2QjlDNUIsV0FBUSxFb0J3SUUsUUFBZ0M7UXBCeEkxQyxZQUFRLEV1Qm9EaUIsS0FBSTtRdkJwRDdCLEtBQVEsRXdCSmMsSUFBSSxHRDRFekI7TXRDME9MLEFzQ3BRSSxNdENvUUUsQ0FrQ0YsT0FBTyxBc0N0U04sVUFBVyxDQUFBLE9BQU8sRUFBUztRdkI5QzVCLFdBQVEsRW9Cd0lFLFNBQWdDO1FwQnhJMUMsWUFBUSxFdUJvRGlCLEtBQUk7UXZCcEQ3QixLQUFRLEV3QkpjLElBQUksR0Q0RXpCO010QzBPTCxBc0NwUUksTXRDb1FFLENBa0NGLE9BQU8sQXNDdFNOLFVBQVcsQ0FBQSxPQUFPLEVBQVM7UXZCOUM1QixXQUFRLEVvQndJRSxTQUFnQztRcEJ4STFDLFlBQVEsRXVCb0RpQixLQUFJO1F2QnBEN0IsS0FBUSxFd0JKYyxJQUFJLEdENEV6QjtNdEMwT0wsQXNDcFFJLE10Q29RRSxDQWtDRixPQUFPLEFzQ3RTTixVQUFXLENBQUEsT0FBTyxFQUFTO1F2QjlDNUIsV0FBUSxFb0J3SUUsU0FBZ0M7UXBCeEkxQyxZQUFRLEV1Qm9EaUIsS0FBSTtRdkJwRDdCLEtBQVEsRXdCSmMsSUFBSSxHRDRFekI7TXRDME9MLEFzQ3BRSSxNdENvUUUsQ0FrQ0YsT0FBTyxBc0N0U04sVUFBVyxDQUFBLE9BQU8sRUFBUztRdkI5QzVCLFdBQVEsRW9Cd0lFLFNBQWdDO1FwQnhJMUMsWUFBUSxFdUJvRGlCLEtBQUk7UXZCcEQ3QixLQUFRLEV3QkpjLElBQUksR0Q0RXpCO010QzBPTCxBc0NwUUksTXRDb1FFLENBa0NGLE9BQU8sQXNDdFNOLFVBQVcsQ0FBQSxPQUFPLEVBQVM7UXZCOUM1QixXQUFRLEVvQndJRSxTQUFnQztRcEJ4STFDLFlBQVEsRXVCb0RpQixLQUFJO1F2QnBEN0IsS0FBUSxFd0JKYyxJQUFJLEdENEV6QjtNdEMwT0wsQXNDcFFJLE10Q29RRSxDQWtDRixPQUFPLEFzQ3RTTixVQUFXLENBQUEsT0FBTyxFQUFTO1F2QjlDNUIsV0FBUSxFb0J3SUUsU0FBZ0M7UXBCeEkxQyxZQUFRLEV1Qm9EaUIsS0FBSTtRdkJwRDdCLEtBQVEsRXdCSmMsSUFBSSxHRDRFekI7TXRDME9MLEFzQ3BRSSxNdENvUUUsQ0FrQ0YsT0FBTyxBc0N0U04sVUFBVyxDQUFBLE9BQU8sRUFBUztRdkI5QzVCLFdBQVEsRW9Cd0lFLFNBQWdDO1FwQnhJMUMsWUFBUSxFdUJvRGlCLEtBQUk7UXZCcEQ3QixLQUFRLEV3QkpjLElBQUksR0Q0RXpCO010QzBPTCxBc0NwUUksTXRDb1FFLENBa0NGLE9BQU8sQXNDdFNOLFVBQVcsQ0FBQSxRQUFRLEVBQVE7UXZCOUM1QixXQUFRLEVvQndJRSxTQUFnQztRcEJ4STFDLFlBQVEsRXVCb0RpQixLQUFJO1F2QnBEN0IsS0FBUSxFd0JKYyxJQUFJLEdENEV6QjtNdEMwT0wsQXNDcFFJLE10Q29RRSxDQWtDRixPQUFPLEFzQ3RTTixVQUFXLENBQUEsUUFBUSxFQUFRO1F2QjlDNUIsV0FBUSxFb0J3SUUsU0FBZ0M7UXBCeEkxQyxZQUFRLEV1Qm9EaUIsS0FBSTtRdkJwRDdCLEtBQVEsRXdCSmMsSUFBSSxHRDRFekI7TXRDME9MLEFzQ3BRSSxNdENvUUUsQ0FrQ0YsT0FBTyxBc0N0U04sVUFBVyxDQUFBLFFBQVEsRUFBUTtRdkI5QzVCLFdBQVEsRW9Cd0lFLFNBQWdDO1FwQnhJMUMsWUFBUSxFdUJvRGlCLEtBQUk7UXZCcEQ3QixLQUFRLEV3QkpjLElBQUksR0Q0RXpCOztBdENvUkwsQUFBQSxhQUFhLENBQUMsT0FBTyxFQUFFLFdBQVcsQ0FBQTtFQUNoQyxVQUFVLEVBQUUsSUFBSTtFQUNoQixNQUFNLEVBQUUsQ0FBQyxHQUNWOztBQUVELEFBQUEsYUFBYSxFQUFFLGNBQWMsQ0FBQTtFQUMzQixjQUFjLEVBQUUsS0FBSztFQUNyQixhQUFhLEVBQUUsR0FBRyxDNkV4V0YsSUFBSSxDN0V3V2dCLEtBQUs7RUFDekMsVUFBVSxFQUFFLEtBQUssR0FZbEI7RUFmRCxBQUlFLGFBSlcsQ0FJWCxTQUFTLEVBSkksY0FBYyxDQUkzQixTQUFTLENBQUE7SUFDUCxLQUFLLEVBQUUsS0FBSztJQUNaLE9BQU8sRUFBRSxlQUFlO0lBQ3hCLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDNkU5VkQsT0FBTztJN0UrVnZCLGdCQUFnQixFNkVoV0ksT0FBTztJN0VpVzNCLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLGFBQWEsRUFBRSxHQUFHLEdBSW5CO0lBZEgsQUFXSSxhQVhTLENBSVgsU0FBUyxDQU9QLElBQUksRUFYTyxjQUFjLENBSTNCLFNBQVMsQ0FPUCxJQUFJLENBQUE7TUFDRixhQUFhLEVBQUUsR0FBRyxHQUNuQjs7QUFJTCxBQUFBLFVBQVUsQUFBQSxPQUFPLENBQUMsT0FBTztBQUN6QixVQUFVLEFBQUEsT0FBTyxDQUFDLFNBQVMsQ0FBQztFQUN4QixPQUFPLEVBQUUsS0FBSztFQUNkLEtBQUssRUFBRSxJQUFJO0VBQ1gsT0FBTyxFQUFFLENBQUM7RUFDVixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osTUFBTSxFQUFFLElBQUk7RUFDWixRQUFRLEVBQUUsTUFBTTtFQUNoQixNQUFNLEVBQUUsT0FBTztFQUNmLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLGFBQWEsRUFBRSxDQUFDO0VBQ2hCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsVUFBVSxFQUFFLFdBQVc7RUFDdkIsS0FBSyxFNkVsWlcsT0FBTyxHN0VtWjFCOztBQUVELEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBQyxNQUFNLENBQUE7RUFDdEIsS0FBSyxFNkVwWmMsT0FBTyxHN0VxWjNCOztBQUVELEFBQUEsU0FBUyxFQUFFLE9BQU8sQ0FBQTtFQUNoQixTQUFTLEVBQUUsR0FBRztFQUNkLE9BQU8sRUFBRSxNQUFNO0VBQ2YsTUFBTSxFQUFFLENBQUM7RUFDVCxLQUFLLEU2RWhaVyxJQUFJLEc3RWlackI7O0FBRUQsQUFBQSxTQUFTLENBQUE7RUFDUCxPQUFPLEVBQUUsS0FBSztFQUNkLFVBQVUsRUFBRSxHQUFHLEdBTWhCO0U0Q3pXRyxNQUFNLEVBQUcsU0FBUyxFQUFFLEtBQUs7STVDaVc3QixBQUFBLFNBQVMsQ0FBQTtNQUlMLEtBQUssRUFBRSxLQUFLO01BQ1osT0FBTyxFQUFFLE1BQU07TUFDZixVQUFVLEVBQUUsR0FBRyxHQUVsQjs7QUFFRCxBQUFBLEVBQUUsQUFBQSxhQUFhLENBQUE7RThFMWFYLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLE1BQU0sRUFBRSxHQUFHO0VBQ1gsT0FBTyxFQUFFLENBQUM7RTlFMGFaLEtBQUssRUFBRSxJQUFJO0VBQ1gsT0FBTyxFQUFFLFlBQVk7RUFDckIsVUFBVSxFQUFFLEdBQUcsR0FlaEI7RUFuQkQsQUFLRSxFQUxBLEFBQUEsYUFBYSxDQUtiLEVBQUUsQ0FBQTtJQUNBLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFlBQVksRW9DbldFLFFBQWdFO0lwQ29XOUUsVUFBVSxFQUFFLElBQUk7SUFDaEIsS0FBSyxFNkVuYUksT0FBTztJN0VvYWhCLEtBQUssRUFBRSxJQUFJLEdBS1o7SUFmSCxBQVdJLEVBWEYsQUFBQSxhQUFhLENBS2IsRUFBRSxDQU1BLEtBQUssQ0FBQTtNQUNILE9BQU8sRUFBRSxLQUFLO01BQ2QsVUFBVSxFQUFFLEdBQUcsR0FDaEI7RUFkTCxBQWdCRSxFQWhCQSxBQUFBLGFBQWEsQ0FnQmIsQ0FBQyxBQUFBLEdBQUcsQ0FBQTtJQUNGLFlBQVksRUFBRSxHQUFHLEdBQ2xCOztBQUdILEFBQUEsU0FBUyxDQUFBO0VBQ0wsVUFBVSxFQUFFLElBQUk7RUFDaEIsV0FBVyxFQUFFLElBQUk7RUFDakIsVUFBVSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEM2RS9iTSxPQUFPO0U3RWdjbEMsS0FBSyxFQUFFLElBQUk7RUFDWCxRQUFRLEVBQUUsUUFBUSxHQUNyQjs7QUFFRCxBQUFBLG9CQUFvQixDQUFBO0VBQ2xCLEtBQUssRUFBRSxLQUFLLEdBQ2I7O0FBSUQsQUFDRSxhQURXLENBQ1gsQ0FBQyxBQUFBLE9BQU8sQ0FBQTtFQUNOLEtBQUssRUFBRSxJQUFJO0VBQ1gsWUFBWSxFQUFFLElBQUksR0FDbkI7O0FBSkgsQUFLRSxhQUxXLENBS1gsTUFBTSxDQUFBO0VBRUosTUFBTSxFQUFFLElBQUk7RUFDWixTQUFTLEVBQUUsT0FBTztFQUNsQixLQUFLLEU2RW5icUIsT0FBTztFN0VvYmpDLFVBQVUsRTZFcmJnQixPQUFPLEc3RXNibEM7O0FBR0gsQUFBQSxRQUFRLENBQUM7RUFDUCxNQUFNLEVBQUUsR0FBRyxDNkV6ZGtCLE9BQU8sQzdFeWRNLEtBQUs7RUFDL0MsS0FBSyxFNkVsZE0sSUFBSTtFN0VtZGYsT0FBTyxFQUFFLElBQUk7RUFDYixVQUFVLEVBQUUsSUFBSTtFQUNoQixVQUFVLEU2RTdjYyxPQUFPO0U3RThjL0IsYUFBYSxFQUFFLElBQUksR0FLcEI7RUFYRCxBQU9FLFFBUE0sQ0FPTixFQUFFLEVBUEosUUFBUSxDQU9GLEVBQUUsRUFQUixRQUFRLENBT0UsRUFBRSxFQVBaLFFBQVEsQ0FPTSxFQUFFLEVBUGhCLFFBQVEsQ0FPVSxFQUFFLEVBUHBCLFFBQVEsQ0FPYyxFQUFFLEVBUHhCLFFBQVEsQ0FPa0IsQ0FBQyxDQUFBO0lBQ3ZCLEtBQUssRTZFeGRJLElBQUk7STdFeWRiLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FBR0gsQUFBQSxhQUFhLENBQUE7RUFDWCxVQUFVLEU2RXRkYyxPQUFPLEc3RXVkaEM7O0FBQ0QsQUFBQSxjQUFjLENBQUE7RUFDWixVQUFVLEU2RXhkZSxPQUFPLEc3RXlkakM7O0FBRUQsQUFBQSxnQkFBZ0IsQ0FBQTtFQUNkLFVBQVUsRTZFM2RpQixPQUFPLEc3RTRkbkM7O0FBQ0QsQUFBQSxFQUFFLEFBQUEsS0FBSyxDQUFDO0U4RWxmSixVQUFVLEVBQUUsSUFBSTtFQUNoQixNQUFNLEVBQUUsR0FBRztFQUNYLE9BQU8sRUFBRSxDQUFDLEc5RTRmYjtFQVpELEFBRUUsRUFGQSxBQUFBLEtBQUssQ0FFTCxFQUFFLENBQUE7SUFDQSxPQUFPLEVBQUUsWUFBWTtJQUNyQixPQUFPLEVBQUUsSUFBSTtJQUNiLFVBQVUsRTZFaGVJLE9BQU87STdFaWVyQixhQUFhLEVBQUUsZUFBZTtJQUM5QixTQUFTLEVBQUUsSUFBSSxHQUloQjtJQVhILEFBUUksRUFSRixBQUFBLEtBQUssQ0FFTCxFQUFFLENBTUEsQ0FBQyxDQUFBO01BQ0MsS0FBSyxFNkU3ZU8sSUFBSSxHN0U4ZWpCOztBQUlMLEFBQUEsWUFBWSxDQUFBO0VBQ1YsT0FBTyxFQUFFLElBQUk7RUFDYixVQUFVLEU2RXplYyxPQUFPO0U3RTBlL0IsT0FBTyxFQUFFLGlCQUFpQixHQUMzQjs7QUFDRCxBQUFBLGVBQWUsQ0FBQTtFQUNiLE9BQU8sRUFBRSxLQUFLLEdBQ2Y7O0FBRUQsQUFBQSxvQkFBb0IsQ0FBQTtFQUNsQixPQUFPLEVBQUUsSUFBSSxHQUNkOztBQUVELEFBQUEsaUJBQWlCLENBQUE7RUFDZixPQUFPLEVBQUUsWUFBWTtFQUNyQixLQUFLLEVBQUUsR0FBRyxHQU9YO0VBVEQsQUFHRSxpQkFIZSxDQUdmLFFBQVEsQ0FBQTtJQUNOLEtBQUssRUFBRSxJQUFJLEdBQ1o7RUFMSCxBQU1FLGlCQU5lLENBTWYsaUJBQWlCLENBQUE7SUFDZixLQUFLLEVBQUUsS0FBSyxHQUNiOztBQUVILEFBQUEsTUFBTSxDQUFBO0VlcmdCRixLQUFRLEVvQndJRSxTQUFnQztFcEJ4STFDLEtBQVEsRUlBZ0QsSUFBSTtFSkE1RCxZQUFRLEVxQjRETSxRQUFnRSxHcEMyY2pGOztBQUNELEFBQUEsb0JBQW9CLENBQUE7RWV4Z0JoQixLQUFRLEVvQndJRSxTQUFnQztFcEJ4STFDLEtBQVEsRUlBMEQsS0FBSztFSkF2RSxZQUFRLEVvQmtGVyxDQUFDLEduQzhidkI7RUFSRCxBQUVFLG9CQUZrQixDQUVsQixNQUFNLENBQUE7SUFDSixVQUFVLEVBQUUsR0FBRyxHQUNoQjtFQUpILEFBS0Usb0JBTGtCLENBS2xCLEVBQUUsQ0FBQTtJQUNBLE1BQU0sRUFBRSxlQUFlLEdBQ3hCOztBQUVILEFBQ0UsWUFEVSxDQUNWLEVBQUUsQ0FBQTtFOEVwaUJBLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLE1BQU0sRUFBRSxHQUFHO0VBQ1gsT0FBTyxFQUFFLENBQUMsRzlFb2lCWDs7QWdGdmlCSCxBQWVJLElBZkEsQ0FLRixDQUFDLENBVUMsS0FBSyxDaEY2aEJBO0VBQ0gsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFKTCxBQU1FLElBTkUsQ0FNRixDQUFDLEFBQUEsT0FBTyxDQUFBO0VBQ04sVUFBVSxFQUFFLEtBQUssR0FDbEI7O0FBR0gsQUFBQSxhQUFhLENBQUE7RUFDWCxPQUFPLEVBQUUsSUFBSTtFQUNiLFVBQVUsRUFBRSxLQUFLO0VBQ2pCLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLE9BQU8sRUFBRSxHQUFHO0VBQ1osTUFBTSxFQUFFLGNBQWM7RUFDdEIsT0FBTyxFQUFFLENBQUMsR0FDWDs7QUFFRCxBQUNFLGFBRFcsQ0FDWCxDQUFDLENBQUE7RUFDQyxVQUFVLEU2RXhpQkksT0FBTztFN0V5aUJyQixhQUFhLEVBQUUsR0FBRztFQUNsQixPQUFPLEVBQUUsbUJBQW1CLEdBQzdCOztBQUdILEFBQ0UsS0FERyxDQUNILEtBQUssQ0FBQTtFQUNILFVBQVUsRTZFamtCSSxJQUFJO0U3RWtrQmxCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsYUFBYSxFQUFFLEdBQUcsR0FXbkI7RUFmSCxBQUtJLEtBTEMsQ0FDSCxLQUFLLENBSUgsRUFBRSxDQUFBO0k4RTFrQkYsVUFBVSxFQUFFLElBQUk7SUFDaEIsTUFBTSxFQUFFLEdBQUc7SUFDWCxPQUFPLEVBQUUsQ0FBQztJOUUwa0JSLFVBQVUsRUFBRSxLQUFLLEdBT2xCO0lBZEwsQUFRTSxLQVJELENBQ0gsS0FBSyxDQUlILEVBQUUsQ0FHQSxFQUFFLENBQUE7TUFDQSxZQUFZLEVvQ2hnQkYsUUFBZ0U7TXBDaWdCMUUsT0FBTyxFQUFFLFlBQVk7TUFDckIsS0FBSyxFNkVoa0JBLE9BQU87TTdFaWtCWixTQUFTLEVBQUUsSUFBSSxHQUNoQjs7QUFLUCxBQUFBLEtBQUssQUFBQSxjQUFjLENBQUE7RUFDakIsVUFBVSxFNkVsbEJNLElBQUk7RTdFbWxCcEIsS0FBSyxFQUFFLElBQUksR0FZWjtFQWRELEFBR0UsS0FIRyxBQUFBLGNBQWMsQ0FHakIsRUFBRSxDQUFBO0lBQ0EsT0FBTyxFQUFFLGNBQWM7SUFDdkIsYUFBYSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEM2RW5rQkYsT0FBTztJN0Vva0I3QixXQUFXLEVBQUUsSUFBSTtJQUNqQixLQUFLLEU2RWpsQlMsSUFBSSxHN0VrbEJuQjtFQVJILEFBU0UsS0FURyxBQUFBLGNBQWMsQ0FTakIsRUFBRSxDQUFBO0lBQ0EsVUFBVSxFQUFFLE1BQU07SUFDbEIsT0FBTyxFQUFFLGNBQWM7SUFDdkIsYUFBYSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEM2RTFrQkYsT0FBTyxHN0Uya0I5Qjs7QUFLSCxBQUFBLEVBQUUsQUFBQSxXQUFXLENBQUE7RThFem1CVCxVQUFVLEVBQUUsSUFBSTtFQUNoQixNQUFNLEVBQUUsR0FBRztFQUNYLE9BQU8sRUFBRSxDQUFDLEc5RXltQmI7O0FBRUQsQUFBQSxPQUFPLENBQUMsYUFBYSxDQUFBO0VBQ25CLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFVBQVUsRUFBRSxHQUFHLENBQUMsS0FBSyxDNkU1bUJRLE9BQU87RTdFNm1CcEMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEM2RTdtQkssT0FBTztFN0U4bUJwQyxPQUFPLEVBQUUsaUJBQWlCLEdBQzNCIn0= */
