@import url(https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700,800,900&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Caveat:wght@400..700&family=Fira+Mono:wght@400;500;700&family=Fraunces:ital,opsz,wght@0,9..144,100..900;1,9..144,100..900&family=IBM+Plex+Mono:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&family=Lexend:wght@100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700&family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Caveat:wght@400..700&family=Fira+Mono:wght@400;500;700&family=Fraunces:ital,opsz,wght@0,9..144,100..900;1,9..144,100..900&family=Gorditas:wght@400;700&family=IBM+Plex+Mono:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&family=Lexend:wght@100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700&family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Caveat:wght@400..700&family=Fira+Mono:wght@400;500;700&family=Fraunces:ital,opsz,wght@0,9..144,100..900;1,9..144,100..900&family=Gorditas:wght@400;700&family=IBM+Plex+Mono:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Lexend:wght@100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700&family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Caveat:wght@400..700&family=Exo:ital,wght@0,100..900;1,100..900&family=Fira+Mono:wght@400;500;700&family=Fraunces:ital,opsz,wght@0,9..144,100..900;1,9..144,100..900&family=Gorditas:wght@400;700&family=IBM+Plex+Mono:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Lexend:wght@100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700&family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,100..900;1,9..144,100..900);
.tns-outer{padding:0 !important}.tns-outer [hidden]{display:none !important}.tns-outer [aria-controls],.tns-outer [data-action]{cursor:pointer}.tns-slider{transition:all 0s}.tns-slider>.tns-item{box-sizing:border-box}.tns-horizontal.tns-subpixel{white-space:nowrap}.tns-horizontal.tns-subpixel>.tns-item{display:inline-block;vertical-align:top;white-space:normal}.tns-horizontal.tns-no-subpixel:after{content:'';display:table;clear:both}.tns-horizontal.tns-no-subpixel>.tns-item{float:left}.tns-horizontal.tns-carousel.tns-no-subpixel>.tns-item{margin-right:-100%}.tns-no-calc{position:relative;left:0}.tns-gallery{position:relative;left:0;min-height:1px}.tns-gallery>.tns-item{position:absolute;left:-100%;transition:transform 0s, opacity 0s}.tns-gallery>.tns-slide-active{position:relative;left:auto !important}.tns-gallery>.tns-moving{transition:all 0.25s}.tns-autowidth{display:inline-block}.tns-lazy-img{transition:opacity 0.6s;opacity:0.6}.tns-lazy-img.tns-complete{opacity:1}.tns-ah{transition:height 0s}.tns-ovh{overflow:hidden}.tns-visually-hidden{position:absolute;left:-10000em}.tns-transparent{opacity:0;visibility:hidden}.tns-fadeIn{opacity:1;filter:alpha(opacity=100);z-index:0}.tns-normal,.tns-fadeOut{opacity:0;filter:alpha(opacity=0);z-index:-1}.tns-vpfix{white-space:nowrap}.tns-vpfix>div,.tns-vpfix>li{display:inline-block}.tns-t-subp2{margin:0 auto;width:310px;position:relative;height:10px;overflow:hidden}.tns-t-ct{width:2333.3333333%;width:calc(100% * 70 / 3);position:absolute;right:0}.tns-t-ct:after{content:'';display:table;clear:both}.tns-t-ct>div{width:1.4285714%;width:calc(100% / 70);height:10px;float:left}

/*# sourceMappingURL=sourcemaps/tiny-slider.css.map */

/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }
  .owl-carousel .owl-stage {
    position: relative;
    touch-action: manipulation;
    -moz-backface-visibility: hidden;
    /* fix firefox animation glitch */ }
  .owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  .owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px); }
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0); }
  .owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none; }
  .owl-carousel .owl-item img {
    display: block;
    width: 100%; }
  .owl-carousel .owl-nav.disabled,
  .owl-carousel .owl-dots.disabled {
    display: none; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none; }
  .owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next,
  .owl-carousel button.owl-dot {
    background: none;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit; }
  .owl-carousel.owl-loaded {
    display: block; }
  .owl-carousel.owl-loading {
    opacity: 0;
    display: block; }
  .owl-carousel.owl-hidden {
    opacity: 0; }
  .owl-carousel.owl-refresh .owl-item {
    visibility: hidden; }
  .owl-carousel.owl-drag .owl-item {
    touch-action: pan-y;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none; }
  .owl-carousel.owl-grab {
    cursor: move;
    cursor: grab; }
  .owl-carousel.owl-rtl {
    direction: rtl; }
  .owl-carousel.owl-rtl .owl-item {
    float: right; }

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

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

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

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

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

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

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

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item {
  /**
			This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
			calculation of the height of the owl-item that breaks page layouts
		 */ }
  .owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    transition: opacity 400ms ease; }
  .owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
    max-height: 0; }
  .owl-carousel .owl-item img.owl-lazy {
    transform-style: preserve-3d; }

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

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

.owl-carousel .owl-video-play-icon:hover {
  transform: scale(1.3, 1.3); }

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

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

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

.toast-title{font-weight:700}.toast-message{-ms-word-wrap:break-word;word-wrap:break-word}.toast-message a,.toast-message label{color:#FFF}.toast-message a:hover{color:#CCC;text-decoration:none}.toast-close-button{position:relative;right:-.3em;top:-.3em;float:right;font-size:20px;font-weight:700;color:#FFF;-webkit-text-shadow:0 1px 0 #fff;text-shadow:0 1px 0 #fff;opacity:.8;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=80);filter:alpha(opacity=80);line-height:1}.toast-close-button:focus,.toast-close-button:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.4;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=40);filter:alpha(opacity=40)}.rtl .toast-close-button{left:-.3em;float:left;right:.3em}button.toast-close-button{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.toast-top-center{top:0;right:0;width:100%}.toast-bottom-center{bottom:0;right:0;width:100%}.toast-top-full-width{top:0;right:0;width:100%}.toast-bottom-full-width{bottom:0;right:0;width:100%}.toast-top-left{top:12px;left:12px}.toast-top-right{top:12px;right:12px}.toast-bottom-right{right:12px;bottom:12px}.toast-bottom-left{bottom:12px;left:12px}#toast-container{position:fixed;z-index:999999;pointer-events:none}#toast-container *{box-sizing:border-box}#toast-container>div{position:relative;pointer-events:auto;overflow:hidden;margin:0 0 6px;padding:15px 15px 15px 50px;width:300px;border-radius:3px;background-position:15px center;background-repeat:no-repeat;box-shadow:0 0 12px #999;color:#FFF;opacity:.8;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=80);filter:alpha(opacity=80)}#toast-container>div.rtl{direction:rtl;padding:15px 50px 15px 15px;background-position:right 15px center}#toast-container>div:hover{box-shadow:0 0 12px #000;opacity:1;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);filter:alpha(opacity=100);cursor:pointer}#toast-container>.toast-info{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII=)!important}#toast-container>.toast-error{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII=)!important}#toast-container>.toast-success{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg==)!important}#toast-container>.toast-warning{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVEhL5ZSvTsNQFMbXZGICMYGYmJhAQIJAICYQPAACiSDB8AiICQQJT4CqQEwgJvYASAQCiZiYmJhAIBATCARJy+9rTsldd8sKu1M0+dLb057v6/lbq/2rK0mS/TRNj9cWNAKPYIJII7gIxCcQ51cvqID+GIEX8ASG4B1bK5gIZFeQfoJdEXOfgX4QAQg7kH2A65yQ87lyxb27sggkAzAuFhbbg1K2kgCkB1bVwyIR9m2L7PRPIhDUIXgGtyKw575yz3lTNs6X4JXnjV+LKM/m3MydnTbtOKIjtz6VhCBq4vSm3ncdrD2lk0VgUXSVKjVDJXJzijW1RQdsU7F77He8u68koNZTz8Oz5yGa6J3H3lZ0xYgXBK2QymlWWA+RWnYhskLBv2vmE+hBMCtbA7KX5drWyRT/2JsqZ2IvfB9Y4bWDNMFbJRFmC9E74SoS0CqulwjkC0+5bpcV1CZ8NMej4pjy0U+doDQsGyo1hzVJttIjhQ7GnBtRFN1UarUlH8F3xict+HY07rEzoUGPlWcjRFRr4/gChZgc3ZL2d8oAAAAASUVORK5CYII=)!important}#toast-container.toast-bottom-center>div,#toast-container.toast-top-center>div{width:300px;margin-left:auto;margin-right:auto}#toast-container.toast-bottom-full-width>div,#toast-container.toast-top-full-width>div{width:96%;margin-left:auto;margin-right:auto}.toast{background-color:#030303}.toast-success{background-color:#51A351}.toast-error{background-color:#BD362F}.toast-info{background-color:#2F96B4}.toast-warning{background-color:#F89406}.toast-progress{position:absolute;left:0;bottom:0;height:4px;background-color:#000;opacity:.4;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=40);filter:alpha(opacity=40)}@media all and (max-width:240px){#toast-container>div{padding:8px 8px 8px 50px;width:11em}#toast-container>div.rtl{padding:8px 50px 8px 8px}#toast-container .toast-close-button{right:-.2em;top:-.2em}#toast-container .rtl .toast-close-button{left:-.2em;right:.2em}}@media all and (min-width:241px) and (max-width:480px){#toast-container>div{padding:8px 8px 8px 50px;width:18em}#toast-container>div.rtl{padding:8px 50px 8px 8px}#toast-container .toast-close-button{right:-.2em;top:-.2em}#toast-container .rtl .toast-close-button{left:-.2em;right:.2em}}@media all and (min-width:481px) and (max-width:768px){#toast-container>div{padding:15px 15px 15px 50px;width:25em}#toast-container>div.rtl{padding:15px 50px 15px 15px}}
@charset "UTF-8";
/*!
 * Bootstrap  v5.3.8 (https://getbootstrap.com/)
 * Copyright 2011-2025 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root,
[data-bs-theme=light] {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-black: #000;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #0d6efd;
  --bs-secondary: #6c757d;
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-primary-rgb: 13, 110, 253;
  --bs-secondary-rgb: 108, 117, 125;
  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 255, 193, 7;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 33, 37, 41;
  --bs-primary-text-emphasis: rgb(5.2, 44, 101.2);
  --bs-secondary-text-emphasis: rgb(43.2, 46.8, 50);
  --bs-success-text-emphasis: rgb(10, 54, 33.6);
  --bs-info-text-emphasis: rgb(5.2, 80.8, 96);
  --bs-warning-text-emphasis: rgb(102, 77.2, 2.8);
  --bs-danger-text-emphasis: rgb(88, 21.2, 27.6);
  --bs-light-text-emphasis: #495057;
  --bs-dark-text-emphasis: #495057;
  --bs-primary-bg-subtle: rgb(206.6, 226, 254.6);
  --bs-secondary-bg-subtle: rgb(225.6, 227.4, 229);
  --bs-success-bg-subtle: rgb(209, 231, 220.8);
  --bs-info-bg-subtle: rgb(206.6, 244.4, 252);
  --bs-warning-bg-subtle: rgb(255, 242.6, 205.4);
  --bs-danger-bg-subtle: rgb(248, 214.6, 217.8);
  --bs-light-bg-subtle: rgb(251.5, 252, 252.5);
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: rgb(158.2, 197, 254.2);
  --bs-secondary-border-subtle: rgb(196.2, 199.8, 203);
  --bs-success-border-subtle: rgb(163, 207, 186.6);
  --bs-info-border-subtle: rgb(158.2, 233.8, 249);
  --bs-warning-border-subtle: rgb(255, 230.2, 155.8);
  --bs-danger-border-subtle: rgb(241, 174.2, 180.6);
  --bs-light-border-subtle: #e9ecef;
  --bs-dark-border-subtle: #adb5bd;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #212529;
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-bg: #fff;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-emphasis-color: #000;
  --bs-emphasis-color-rgb: 0, 0, 0;
  --bs-secondary-color: rgba(33, 37, 41, 0.75);
  --bs-secondary-color-rgb: 33, 37, 41;
  --bs-secondary-bg: #e9ecef;
  --bs-secondary-bg-rgb: 233, 236, 239;
  --bs-tertiary-color: rgba(33, 37, 41, 0.5);
  --bs-tertiary-color-rgb: 33, 37, 41;
  --bs-tertiary-bg: #f8f9fa;
  --bs-tertiary-bg-rgb: 248, 249, 250;
  --bs-heading-color: inherit;
  --bs-link-color: #0d6efd;
  --bs-link-color-rgb: 13, 110, 253;
  --bs-link-decoration: underline;
  --bs-link-hover-color: rgb(10.4, 88, 202.4);
  --bs-link-hover-color-rgb: 10, 88, 202;
  --bs-code-color: #d63384;
  --bs-highlight-color: #212529;
  --bs-highlight-bg: rgb(255, 242.6, 205.4);
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #dee2e6;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 0.375rem;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 0.5rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-xxl: 2rem;
  --bs-border-radius-2xl: var(--bs-border-radius-xxl);
  --bs-border-radius-pill: 50rem;
  --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
  --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
  --bs-focus-ring-width: 0.25rem;
  --bs-focus-ring-opacity: 0.25;
  --bs-focus-ring-color: rgba(13, 110, 253, 0.25);
  --bs-form-valid-color: #198754;
  --bs-form-valid-border-color: #198754;
  --bs-form-invalid-color: #dc3545;
  --bs-form-invalid-border-color: #dc3545;
}

[data-bs-theme=dark] {
  color-scheme: dark;
  --bs-body-color: #dee2e6;
  --bs-body-color-rgb: 222, 226, 230;
  --bs-body-bg: #212529;
  --bs-body-bg-rgb: 33, 37, 41;
  --bs-emphasis-color: #fff;
  --bs-emphasis-color-rgb: 255, 255, 255;
  --bs-secondary-color: rgba(222, 226, 230, 0.75);
  --bs-secondary-color-rgb: 222, 226, 230;
  --bs-secondary-bg: #343a40;
  --bs-secondary-bg-rgb: 52, 58, 64;
  --bs-tertiary-color: rgba(222, 226, 230, 0.5);
  --bs-tertiary-color-rgb: 222, 226, 230;
  --bs-tertiary-bg: rgb(42.5, 47.5, 52.5);
  --bs-tertiary-bg-rgb: 43, 48, 53;
  --bs-primary-text-emphasis: rgb(109.8, 168, 253.8);
  --bs-secondary-text-emphasis: rgb(166.8, 172.2, 177);
  --bs-success-text-emphasis: rgb(117, 183, 152.4);
  --bs-info-text-emphasis: rgb(109.8, 223.2, 246);
  --bs-warning-text-emphasis: rgb(255, 217.8, 106.2);
  --bs-danger-text-emphasis: rgb(234, 133.8, 143.4);
  --bs-light-text-emphasis: #f8f9fa;
  --bs-dark-text-emphasis: #dee2e6;
  --bs-primary-bg-subtle: rgb(2.6, 22, 50.6);
  --bs-secondary-bg-subtle: rgb(21.6, 23.4, 25);
  --bs-success-bg-subtle: rgb(5, 27, 16.8);
  --bs-info-bg-subtle: rgb(2.6, 40.4, 48);
  --bs-warning-bg-subtle: rgb(51, 38.6, 1.4);
  --bs-danger-bg-subtle: rgb(44, 10.6, 13.8);
  --bs-light-bg-subtle: #343a40;
  --bs-dark-bg-subtle: #1a1d20;
  --bs-primary-border-subtle: rgb(7.8, 66, 151.8);
  --bs-secondary-border-subtle: rgb(64.8, 70.2, 75);
  --bs-success-border-subtle: rgb(15, 81, 50.4);
  --bs-info-border-subtle: rgb(7.8, 121.2, 144);
  --bs-warning-border-subtle: rgb(153, 115.8, 4.2);
  --bs-danger-border-subtle: rgb(132, 31.8, 41.4);
  --bs-light-border-subtle: #495057;
  --bs-dark-border-subtle: #343a40;
  --bs-heading-color: inherit;
  --bs-link-color: rgb(109.8, 168, 253.8);
  --bs-link-hover-color: rgb(138.84, 185.4, 254.04);
  --bs-link-color-rgb: 110, 168, 254;
  --bs-link-hover-color-rgb: 139, 185, 254;
  --bs-code-color: rgb(230.4, 132.6, 181.2);
  --bs-highlight-color: #dee2e6;
  --bs-highlight-bg: rgb(102, 77.2, 2.8);
  --bs-border-color: #495057;
  --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
  --bs-form-valid-color: rgb(117, 183, 152.4);
  --bs-form-valid-border-color: rgb(117, 183, 152.4);
  --bs-form-invalid-color: rgb(234, 133.8, 143.4);
  --bs-form-invalid-border-color: rgb(234, 133.8, 143.4);
}

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

@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: smooth;
  }
}

body {
  margin: 0;
  font-family: var(--bs-body-font-family);
  font-size: var(--bs-body-font-size);
  font-weight: var(--bs-body-font-weight);
  line-height: var(--bs-body-line-height);
  color: var(--bs-body-color);
  text-align: var(--bs-body-text-align);
  background-color: var(--bs-body-bg);
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

hr {
  margin: 1rem 0;
  color: inherit;
  border: 0;
  border-top: var(--bs-border-width) solid;
  opacity: 0.25;
}

h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--bs-heading-color);
}

h1, .h1 {
  font-size: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  h1, .h1 {
    font-size: 2.5rem;
  }
}

h2, .h2 {
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  h2, .h2 {
    font-size: 2rem;
  }
}

h3, .h3 {
  font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  h3, .h3 {
    font-size: 1.75rem;
  }
}

h4, .h4 {
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  h4, .h4 {
    font-size: 1.5rem;
  }
}

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

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

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

abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: help;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}

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

ol,
ul {
  padding-left: 2rem;
}

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

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

dt {
  font-weight: 700;
}

dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small, .small {
  font-size: 0.875em;
}

mark, .mark {
  padding: 0.1875em;
  color: var(--bs-highlight-color);
  background-color: var(--bs-highlight-bg);
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));
  text-decoration: underline;
}
a:hover {
  --bs-link-color-rgb: var(--bs-link-hover-color-rgb);
}

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

pre,
code,
kbd,
samp {
  font-family: var(--bs-font-monospace);
  font-size: 1em;
}

pre {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  font-size: 0.875em;
}
pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

code {
  font-size: 0.875em;
  color: var(--bs-code-color);
  word-wrap: break-word;
}
a > code {
  color: inherit;
}

kbd {
  padding: 0.1875rem 0.375rem;
  font-size: 0.875em;
  color: var(--bs-body-bg);
  background-color: var(--bs-body-color);
  border-radius: 0.25rem;
}
kbd kbd {
  padding: 0;
  font-size: 1em;
}

figure {
  margin: 0 0 1rem;
}

img,
svg {
  vertical-align: middle;
}

table {
  caption-side: bottom;
  border-collapse: collapse;
}

caption {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: var(--bs-secondary-color);
  text-align: left;
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}

thead,
tbody,
tfoot,
tr,
td,
th {
  border-color: inherit;
  border-style: solid;
  border-width: 0;
}

label {
  display: inline-block;
}

button {
  border-radius: 0;
}

button:focus:not(:focus-visible) {
  outline: 0;
}

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

button,
select {
  text-transform: none;
}

[role=button] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}
select:disabled {
  opacity: 1;
}

[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {
  display: none !important;
}

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

::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

textarea {
  resize: vertical;
}

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

legend {
  float: left;
  width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  line-height: inherit;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  legend {
    font-size: 1.5rem;
  }
}
legend + * {
  clear: left;
}

::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-year-field {
  padding: 0;
}

::-webkit-inner-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type=search]::-webkit-search-cancel-button {
  cursor: pointer;
  filter: grayscale(1);
}

/* rtl:raw:
[type="tel"],
[type="url"],
[type="email"],
[type="number"] {
  direction: ltr;
}
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-color-swatch-wrapper {
  padding: 0;
}

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

output {
  display: inline-block;
}

iframe {
  border: 0;
}

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

progress {
  vertical-align: baseline;
}

[hidden] {
  display: none !important;
}

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

.display-1 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.625rem + 4.5vw);
}
@media (min-width: 1200px) {
  .display-1 {
    font-size: 5rem;
  }
}

.display-2 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.575rem + 3.9vw);
}
@media (min-width: 1200px) {
  .display-2 {
    font-size: 4.5rem;
  }
}

.display-3 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.525rem + 3.3vw);
}
@media (min-width: 1200px) {
  .display-3 {
    font-size: 4rem;
  }
}

.display-4 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.475rem + 2.7vw);
}
@media (min-width: 1200px) {
  .display-4 {
    font-size: 3.5rem;
  }
}

.display-5 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.425rem + 2.1vw);
}
@media (min-width: 1200px) {
  .display-5 {
    font-size: 3rem;
  }
}

.display-6 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .display-6 {
    font-size: 2.5rem;
  }
}

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

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

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

.initialism {
  font-size: 0.875em;
  text-transform: uppercase;
}

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}
.blockquote > :last-child {
  margin-bottom: 0;
}

.blockquote-footer {
  margin-top: -1rem;
  margin-bottom: 1rem;
  font-size: 0.875em;
  color: #6c757d;
}
.blockquote-footer::before {
  content: "— ";
}

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

.img-thumbnail {
  padding: 0.25rem;
  background-color: var(--bs-body-bg);
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

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

.figure-caption {
  font-size: 0.875em;
  color: var(--bs-secondary-color);
}

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1320px;
  }
}
:root {
  --bs-breakpoint-xs: 0;
  --bs-breakpoint-sm: 576px;
  --bs-breakpoint-md: 768px;
  --bs-breakpoint-lg: 992px;
  --bs-breakpoint-xl: 1200px;
  --bs-breakpoint-xxl: 1400px;
}

.row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-0.5 * var(--bs-gutter-x));
  margin-left: calc(-0.5 * var(--bs-gutter-x));
}
.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-top: var(--bs-gutter-y);
}

.col {
  flex: 1 0 0;
}

.row-cols-auto > * {
  flex: 0 0 auto;
  width: auto;
}

.row-cols-1 > * {
  flex: 0 0 auto;
  width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 auto;
  width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 auto;
  width: 33.33333333%;
}

.row-cols-4 > * {
  flex: 0 0 auto;
  width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 auto;
  width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 auto;
  width: 16.66666667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
}

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

.col-2 {
  flex: 0 0 auto;
  width: 16.66666667%;
}

.col-3 {
  flex: 0 0 auto;
  width: 25%;
}

.col-4 {
  flex: 0 0 auto;
  width: 33.33333333%;
}

.col-5 {
  flex: 0 0 auto;
  width: 41.66666667%;
}

.col-6 {
  flex: 0 0 auto;
  width: 50%;
}

.col-7 {
  flex: 0 0 auto;
  width: 58.33333333%;
}

.col-8 {
  flex: 0 0 auto;
  width: 66.66666667%;
}

.col-9 {
  flex: 0 0 auto;
  width: 75%;
}

.col-10 {
  flex: 0 0 auto;
  width: 83.33333333%;
}

.col-11 {
  flex: 0 0 auto;
  width: 91.66666667%;
}

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

.offset-1 {
  margin-left: 8.33333333%;
}

.offset-2 {
  margin-left: 16.66666667%;
}

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

.offset-4 {
  margin-left: 33.33333333%;
}

.offset-5 {
  margin-left: 41.66666667%;
}

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

.offset-7 {
  margin-left: 58.33333333%;
}

.offset-8 {
  margin-left: 66.66666667%;
}

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

.offset-10 {
  margin-left: 83.33333333%;
}

.offset-11 {
  margin-left: 91.66666667%;
}

.g-0,
.gx-0 {
  --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
  --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
  --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
  --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
  --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
  --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
  --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
  --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
  --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
  --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
  --bs-gutter-x: 3rem;
}

.g-5,
.gy-5 {
  --bs-gutter-y: 3rem;
}

@media (min-width: 576px) {
  .col-sm {
    flex: 1 0 0;
  }
  .row-cols-sm-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-sm-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-sm-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-sm-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-sm-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-sm-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-sm-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-sm-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-sm-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-sm-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.33333333%;
  }
  .offset-sm-2 {
    margin-left: 16.66666667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333333%;
  }
  .offset-sm-5 {
    margin-left: 41.66666667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333333%;
  }
  .offset-sm-8 {
    margin-left: 66.66666667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333333%;
  }
  .offset-sm-11 {
    margin-left: 91.66666667%;
  }
  .g-sm-0,
  .gx-sm-0 {
    --bs-gutter-x: 0;
  }
  .g-sm-0,
  .gy-sm-0 {
    --bs-gutter-y: 0;
  }
  .g-sm-1,
  .gx-sm-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-sm-1,
  .gy-sm-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-sm-2,
  .gx-sm-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-sm-2,
  .gy-sm-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-sm-3,
  .gx-sm-3 {
    --bs-gutter-x: 1rem;
  }
  .g-sm-3,
  .gy-sm-3 {
    --bs-gutter-y: 1rem;
  }
  .g-sm-4,
  .gx-sm-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-sm-4,
  .gy-sm-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-sm-5,
  .gx-sm-5 {
    --bs-gutter-x: 3rem;
  }
  .g-sm-5,
  .gy-sm-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex: 1 0 0;
  }
  .row-cols-md-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-md-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-md-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-md-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-md-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-md-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-md-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-md-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-md-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-md-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-md-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-md-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.33333333%;
  }
  .offset-md-2 {
    margin-left: 16.66666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333333%;
  }
  .offset-md-5 {
    margin-left: 41.66666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333333%;
  }
  .offset-md-8 {
    margin-left: 66.66666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333333%;
  }
  .offset-md-11 {
    margin-left: 91.66666667%;
  }
  .g-md-0,
  .gx-md-0 {
    --bs-gutter-x: 0;
  }
  .g-md-0,
  .gy-md-0 {
    --bs-gutter-y: 0;
  }
  .g-md-1,
  .gx-md-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-md-1,
  .gy-md-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-md-2,
  .gx-md-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-md-2,
  .gy-md-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-md-3,
  .gx-md-3 {
    --bs-gutter-x: 1rem;
  }
  .g-md-3,
  .gy-md-3 {
    --bs-gutter-y: 1rem;
  }
  .g-md-4,
  .gx-md-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-md-4,
  .gy-md-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-md-5,
  .gx-md-5 {
    --bs-gutter-x: 3rem;
  }
  .g-md-5,
  .gy-md-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex: 1 0 0;
  }
  .row-cols-lg-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-lg-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-lg-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-lg-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-lg-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-lg-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-lg-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.33333333%;
  }
  .offset-lg-2 {
    margin-left: 16.66666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333333%;
  }
  .offset-lg-5 {
    margin-left: 41.66666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333333%;
  }
  .offset-lg-8 {
    margin-left: 66.66666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333333%;
  }
  .offset-lg-11 {
    margin-left: 91.66666667%;
  }
  .g-lg-0,
  .gx-lg-0 {
    --bs-gutter-x: 0;
  }
  .g-lg-0,
  .gy-lg-0 {
    --bs-gutter-y: 0;
  }
  .g-lg-1,
  .gx-lg-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-lg-1,
  .gy-lg-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-lg-2,
  .gx-lg-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-lg-2,
  .gy-lg-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-lg-3,
  .gx-lg-3 {
    --bs-gutter-x: 1rem;
  }
  .g-lg-3,
  .gy-lg-3 {
    --bs-gutter-y: 1rem;
  }
  .g-lg-4,
  .gx-lg-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-lg-4,
  .gy-lg-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-lg-5,
  .gx-lg-5 {
    --bs-gutter-x: 3rem;
  }
  .g-lg-5,
  .gy-lg-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex: 1 0 0;
  }
  .row-cols-xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-xl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-xl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-xl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-xl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-xl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-xl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-xl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.33333333%;
  }
  .offset-xl-2 {
    margin-left: 16.66666667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333333%;
  }
  .offset-xl-5 {
    margin-left: 41.66666667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333333%;
  }
  .offset-xl-8 {
    margin-left: 66.66666667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333333%;
  }
  .offset-xl-11 {
    margin-left: 91.66666667%;
  }
  .g-xl-0,
  .gx-xl-0 {
    --bs-gutter-x: 0;
  }
  .g-xl-0,
  .gy-xl-0 {
    --bs-gutter-y: 0;
  }
  .g-xl-1,
  .gx-xl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-xl-1,
  .gy-xl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-xl-2,
  .gx-xl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-xl-2,
  .gy-xl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-xl-3,
  .gx-xl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-xl-3,
  .gy-xl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-xl-4,
  .gx-xl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-xl-4,
  .gy-xl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-xl-5,
  .gx-xl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-xl-5,
  .gy-xl-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1400px) {
  .col-xxl {
    flex: 1 0 0;
  }
  .row-cols-xxl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xxl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xxl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xxl-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-xxl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xxl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xxl-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xxl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-xxl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xxl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xxl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-xxl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-xxl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xxl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-xxl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-xxl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xxl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-xxl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-xxl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xxl-0 {
    margin-left: 0;
  }
  .offset-xxl-1 {
    margin-left: 8.33333333%;
  }
  .offset-xxl-2 {
    margin-left: 16.66666667%;
  }
  .offset-xxl-3 {
    margin-left: 25%;
  }
  .offset-xxl-4 {
    margin-left: 33.33333333%;
  }
  .offset-xxl-5 {
    margin-left: 41.66666667%;
  }
  .offset-xxl-6 {
    margin-left: 50%;
  }
  .offset-xxl-7 {
    margin-left: 58.33333333%;
  }
  .offset-xxl-8 {
    margin-left: 66.66666667%;
  }
  .offset-xxl-9 {
    margin-left: 75%;
  }
  .offset-xxl-10 {
    margin-left: 83.33333333%;
  }
  .offset-xxl-11 {
    margin-left: 91.66666667%;
  }
  .g-xxl-0,
  .gx-xxl-0 {
    --bs-gutter-x: 0;
  }
  .g-xxl-0,
  .gy-xxl-0 {
    --bs-gutter-y: 0;
  }
  .g-xxl-1,
  .gx-xxl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-xxl-1,
  .gy-xxl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-xxl-2,
  .gx-xxl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-xxl-2,
  .gy-xxl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-xxl-3,
  .gx-xxl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-xxl-3,
  .gy-xxl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-xxl-4,
  .gx-xxl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-xxl-4,
  .gy-xxl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-xxl-5,
  .gx-xxl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-xxl-5,
  .gy-xxl-5 {
    --bs-gutter-y: 3rem;
  }
}
.table {
  --bs-table-color-type: initial;
  --bs-table-bg-type: initial;
  --bs-table-color-state: initial;
  --bs-table-bg-state: initial;
  --bs-table-color: var(--bs-emphasis-color);
  --bs-table-bg: var(--bs-body-bg);
  --bs-table-border-color: var(--bs-border-color);
  --bs-table-accent-bg: transparent;
  --bs-table-striped-color: var(--bs-emphasis-color);
  --bs-table-striped-bg: rgba(var(--bs-emphasis-color-rgb), 0.05);
  --bs-table-active-color: var(--bs-emphasis-color);
  --bs-table-active-bg: rgba(var(--bs-emphasis-color-rgb), 0.1);
  --bs-table-hover-color: var(--bs-emphasis-color);
  --bs-table-hover-bg: rgba(var(--bs-emphasis-color-rgb), 0.075);
  width: 100%;
  margin-bottom: 1rem;
  vertical-align: top;
  border-color: var(--bs-table-border-color);
}
.table > :not(caption) > * > * {
  padding: 0.5rem 0.5rem;
  color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));
  background-color: var(--bs-table-bg);
  border-bottom-width: var(--bs-border-width);
  box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));
}
.table > tbody {
  vertical-align: inherit;
}
.table > thead {
  vertical-align: bottom;
}

.table-group-divider {
  border-top: calc(var(--bs-border-width) * 2) solid currentcolor;
}

.caption-top {
  caption-side: top;
}

.table-sm > :not(caption) > * > * {
  padding: 0.25rem 0.25rem;
}

.table-bordered > :not(caption) > * {
  border-width: var(--bs-border-width) 0;
}
.table-bordered > :not(caption) > * > * {
  border-width: 0 var(--bs-border-width);
}

.table-borderless > :not(caption) > * > * {
  border-bottom-width: 0;
}
.table-borderless > :not(:first-child) {
  border-top-width: 0;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-color-type: var(--bs-table-striped-color);
  --bs-table-bg-type: var(--bs-table-striped-bg);
}

.table-striped-columns > :not(caption) > tr > :nth-child(even) {
  --bs-table-color-type: var(--bs-table-striped-color);
  --bs-table-bg-type: var(--bs-table-striped-bg);
}

.table-active {
  --bs-table-color-state: var(--bs-table-active-color);
  --bs-table-bg-state: var(--bs-table-active-bg);
}

.table-hover > tbody > tr:hover > * {
  --bs-table-color-state: var(--bs-table-hover-color);
  --bs-table-bg-state: var(--bs-table-hover-bg);
}

.table-primary {
  --bs-table-color: #000;
  --bs-table-bg: rgb(206.6, 226, 254.6);
  --bs-table-border-color: rgb(165.28, 180.8, 203.68);
  --bs-table-striped-bg: rgb(196.27, 214.7, 241.87);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(185.94, 203.4, 229.14);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(191.105, 209.05, 235.505);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-secondary {
  --bs-table-color: #000;
  --bs-table-bg: rgb(225.6, 227.4, 229);
  --bs-table-border-color: rgb(180.48, 181.92, 183.2);
  --bs-table-striped-bg: rgb(214.32, 216.03, 217.55);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(203.04, 204.66, 206.1);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(208.68, 210.345, 211.825);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-success {
  --bs-table-color: #000;
  --bs-table-bg: rgb(209, 231, 220.8);
  --bs-table-border-color: rgb(167.2, 184.8, 176.64);
  --bs-table-striped-bg: rgb(198.55, 219.45, 209.76);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(188.1, 207.9, 198.72);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(193.325, 213.675, 204.24);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-info {
  --bs-table-color: #000;
  --bs-table-bg: rgb(206.6, 244.4, 252);
  --bs-table-border-color: rgb(165.28, 195.52, 201.6);
  --bs-table-striped-bg: rgb(196.27, 232.18, 239.4);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(185.94, 219.96, 226.8);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(191.105, 226.07, 233.1);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-warning {
  --bs-table-color: #000;
  --bs-table-bg: rgb(255, 242.6, 205.4);
  --bs-table-border-color: rgb(204, 194.08, 164.32);
  --bs-table-striped-bg: rgb(242.25, 230.47, 195.13);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(229.5, 218.34, 184.86);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(235.875, 224.405, 189.995);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-danger {
  --bs-table-color: #000;
  --bs-table-bg: rgb(248, 214.6, 217.8);
  --bs-table-border-color: rgb(198.4, 171.68, 174.24);
  --bs-table-striped-bg: rgb(235.6, 203.87, 206.91);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(223.2, 193.14, 196.02);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(229.4, 198.505, 201.465);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-light {
  --bs-table-color: #000;
  --bs-table-bg: #f8f9fa;
  --bs-table-border-color: rgb(198.4, 199.2, 200);
  --bs-table-striped-bg: rgb(235.6, 236.55, 237.5);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(223.2, 224.1, 225);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(229.4, 230.325, 231.25);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-dark {
  --bs-table-color: #fff;
  --bs-table-bg: #212529;
  --bs-table-border-color: rgb(77.4, 80.6, 83.8);
  --bs-table-striped-bg: rgb(44.1, 47.9, 51.7);
  --bs-table-striped-color: #fff;
  --bs-table-active-bg: rgb(55.2, 58.8, 62.4);
  --bs-table-active-color: #fff;
  --bs-table-hover-bg: rgb(49.65, 53.35, 57.05);
  --bs-table-hover-color: #fff;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-responsive {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 767.98px) {
  .table-responsive-md {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 991.98px) {
  .table-responsive-lg {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 1199.98px) {
  .table-responsive-xl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 1399.98px) {
  .table-responsive-xxl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
.form-label {
  margin-bottom: 0.5rem;
}

.col-form-label {
  padding-top: calc(0.375rem + var(--bs-border-width));
  padding-bottom: calc(0.375rem + var(--bs-border-width));
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}

.col-form-label-lg {
  padding-top: calc(0.5rem + var(--bs-border-width));
  padding-bottom: calc(0.5rem + var(--bs-border-width));
  font-size: 1.25rem;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + var(--bs-border-width));
  padding-bottom: calc(0.25rem + var(--bs-border-width));
  font-size: 0.875rem;
}

.form-text {
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--bs-secondary-color);
}

.form-control {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: var(--bs-body-bg);
  background-clip: padding-box;
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}
.form-control[type=file] {
  overflow: hidden;
}
.form-control[type=file]:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control:focus {
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  border-color: rgb(134, 182.5, 254);
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-control::-webkit-date-and-time-value {
  min-width: 85px;
  height: 1.5em;
  margin: 0;
}
.form-control::-webkit-datetime-edit {
  display: block;
  padding: 0;
}
.form-control::-moz-placeholder {
  color: var(--bs-secondary-color);
  opacity: 1;
}
.form-control::placeholder {
  color: var(--bs-secondary-color);
  opacity: 1;
}
.form-control:disabled {
  background-color: var(--bs-secondary-bg);
  opacity: 1;
}
.form-control::file-selector-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  margin-inline-end: 0.75rem;
  color: var(--bs-body-color);
  background-color: var(--bs-tertiary-bg);
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: var(--bs-border-width);
  border-radius: 0;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control::file-selector-button {
    transition: none;
  }
}
.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
  background-color: var(--bs-secondary-bg);
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  line-height: 1.5;
  color: var(--bs-body-color);
  background-color: transparent;
  border: solid transparent;
  border-width: var(--bs-border-width) 0;
}
.form-control-plaintext:focus {
  outline: 0;
}
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: var(--bs-border-radius-sm);
}
.form-control-sm::file-selector-button {
  padding: 0.25rem 0.5rem;
  margin: -0.25rem -0.5rem;
  margin-inline-end: 0.5rem;
}

.form-control-lg {
  min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  border-radius: var(--bs-border-radius-lg);
}
.form-control-lg::file-selector-button {
  padding: 0.5rem 1rem;
  margin: -0.5rem -1rem;
  margin-inline-end: 1rem;
}

textarea.form-control {
  min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));
}
textarea.form-control-sm {
  min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
}
textarea.form-control-lg {
  min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
}

.form-control-color {
  width: 3rem;
  height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));
  padding: 0.375rem;
}
.form-control-color:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control-color::-moz-color-swatch {
  border: 0 !important;
  border-radius: var(--bs-border-radius);
}
.form-control-color::-webkit-color-swatch {
  border: 0 !important;
  border-radius: var(--bs-border-radius);
}
.form-control-color.form-control-sm {
  height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
}
.form-control-color.form-control-lg {
  height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
}

.form-select {
  --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  display: block;
  width: 100%;
  padding: 0.375rem 2.25rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: var(--bs-body-bg);
  background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-select {
    transition: none;
  }
}
.form-select:focus {
  border-color: rgb(134, 182.5, 254);
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-select[multiple], .form-select[size]:not([size="1"]) {
  padding-right: 0.75rem;
  background-image: none;
}
.form-select:disabled {
  background-color: var(--bs-secondary-bg);
}
.form-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 var(--bs-body-color);
}

.form-select-sm {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem;
  border-radius: var(--bs-border-radius-sm);
}

.form-select-lg {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem;
  border-radius: var(--bs-border-radius-lg);
}

[data-bs-theme=dark] .form-select {
  --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}

.form-check {
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5em;
  margin-bottom: 0.125rem;
}
.form-check .form-check-input {
  float: left;
  margin-left: -1.5em;
}

.form-check-reverse {
  padding-right: 1.5em;
  padding-left: 0;
  text-align: right;
}
.form-check-reverse .form-check-input {
  float: right;
  margin-right: -1.5em;
  margin-left: 0;
}

.form-check-input {
  --bs-form-check-bg: var(--bs-body-bg);
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  margin-top: 0.25em;
  vertical-align: top;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: var(--bs-form-check-bg);
  background-image: var(--bs-form-check-bg-image);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: var(--bs-border-width) solid var(--bs-border-color);
  print-color-adjust: exact;
}
.form-check-input[type=checkbox] {
  border-radius: 0.25em;
}
.form-check-input[type=radio] {
  border-radius: 50%;
}
.form-check-input:active {
  filter: brightness(90%);
}
.form-check-input:focus {
  border-color: rgb(134, 182.5, 254);
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-check-input:checked {
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.form-check-input:checked[type=checkbox] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
}
.form-check-input:checked[type=radio] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
}
.form-check-input[type=checkbox]:indeterminate {
  background-color: #0d6efd;
  border-color: #0d6efd;
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}
.form-check-input:disabled {
  pointer-events: none;
  filter: none;
  opacity: 0.5;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  cursor: default;
  opacity: 0.5;
}

.form-switch {
  padding-left: 2.5em;
}
.form-switch .form-check-input {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
  width: 2em;
  margin-left: -2.5em;
  background-image: var(--bs-form-switch-bg);
  background-position: left center;
  border-radius: 2em;
  transition: background-position 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-switch .form-check-input {
    transition: none;
  }
}
.form-switch .form-check-input:focus {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgb%28134, 182.5, 254%29'/%3e%3c/svg%3e");
}
.form-switch .form-check-input:checked {
  background-position: right center;
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
.form-switch.form-check-reverse {
  padding-right: 2.5em;
  padding-left: 0;
}
.form-switch.form-check-reverse .form-check-input {
  margin-right: -2.5em;
  margin-left: 0;
}

.form-check-inline {
  display: inline-block;
  margin-right: 1rem;
}

.btn-check {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}
.btn-check[disabled] + .btn, .btn-check:disabled + .btn {
  pointer-events: none;
  filter: none;
  opacity: 0.65;
}

[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e");
}

.form-range {
  width: 100%;
  height: 1.5rem;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
}
.form-range:focus {
  outline: 0;
}
.form-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-range::-moz-focus-outer {
  border: 0;
}
.form-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  -webkit-appearance: none;
          appearance: none;
  background-color: #0d6efd;
  border: 0;
  border-radius: 1rem;
  -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-webkit-slider-thumb {
    -webkit-transition: none;
    transition: none;
  }
}
.form-range::-webkit-slider-thumb:active {
  background-color: rgb(182.4, 211.5, 254.4);
}
.form-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: var(--bs-secondary-bg);
  border-color: transparent;
  border-radius: 1rem;
}
.form-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  -moz-appearance: none;
       appearance: none;
  background-color: #0d6efd;
  border: 0;
  border-radius: 1rem;
  -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-moz-range-thumb {
    -moz-transition: none;
    transition: none;
  }
}
.form-range::-moz-range-thumb:active {
  background-color: rgb(182.4, 211.5, 254.4);
}
.form-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: var(--bs-secondary-bg);
  border-color: transparent;
  border-radius: 1rem;
}
.form-range:disabled {
  pointer-events: none;
}
.form-range:disabled::-webkit-slider-thumb {
  background-color: var(--bs-secondary-color);
}
.form-range:disabled::-moz-range-thumb {
  background-color: var(--bs-secondary-color);
}

.form-floating {
  position: relative;
}
.form-floating > .form-control,
.form-floating > .form-control-plaintext,
.form-floating > .form-select {
  height: calc(3.5rem + calc(var(--bs-border-width) * 2));
  min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));
  line-height: 1.25;
}
.form-floating > label {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  max-width: 100%;
  height: 100%;
  padding: 1rem 0.75rem;
  overflow: hidden;
  color: rgba(var(--bs-body-color-rgb), 0.65);
  text-align: start;
  text-overflow: ellipsis;
  white-space: nowrap;
  pointer-events: none;
  border: var(--bs-border-width) solid transparent;
  transform-origin: 0 0;
  transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-floating > label {
    transition: none;
  }
}
.form-floating > .form-control,
.form-floating > .form-control-plaintext {
  padding: 1rem 0.75rem;
}
.form-floating > .form-control::-moz-placeholder, .form-floating > .form-control-plaintext::-moz-placeholder {
  color: transparent;
}
.form-floating > .form-control::placeholder,
.form-floating > .form-control-plaintext::placeholder {
  color: transparent;
}
.form-floating > .form-control:not(:-moz-placeholder-shown), .form-floating > .form-control-plaintext:not(:-moz-placeholder-shown) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),
.form-floating > .form-control-plaintext:focus,
.form-floating > .form-control-plaintext:not(:placeholder-shown) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:-webkit-autofill,
.form-floating > .form-control-plaintext:-webkit-autofill {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-select {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
  padding-left: 0.75rem;
}
.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label {
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-control-plaintext ~ label,
.form-floating > .form-select ~ label {
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.form-floating > .form-control:-webkit-autofill ~ label {
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.form-floating > textarea:not(:-moz-placeholder-shown) ~ label::after {
  position: absolute;
  inset: 1rem 0.375rem;
  z-index: -1;
  height: 1.5em;
  content: "";
  background-color: var(--bs-body-bg);
  border-radius: var(--bs-border-radius);
}
.form-floating > textarea:focus ~ label::after,
.form-floating > textarea:not(:placeholder-shown) ~ label::after {
  position: absolute;
  inset: 1rem 0.375rem;
  z-index: -1;
  height: 1.5em;
  content: "";
  background-color: var(--bs-body-bg);
  border-radius: var(--bs-border-radius);
}
.form-floating > textarea:disabled ~ label::after {
  background-color: var(--bs-secondary-bg);
}
.form-floating > .form-control-plaintext ~ label {
  border-width: var(--bs-border-width) 0;
}
.form-floating > :disabled ~ label,
.form-floating > .form-control:disabled ~ label {
  color: #6c757d;
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.input-group > .form-control,
.input-group > .form-select,
.input-group > .form-floating {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
}
.input-group > .form-control:focus,
.input-group > .form-select:focus,
.input-group > .form-floating:focus-within {
  z-index: 5;
}
.input-group .btn {
  position: relative;
  z-index: 2;
}
.input-group .btn:focus {
  z-index: 5;
}

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--bs-tertiary-bg);
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
}

.input-group-lg > .form-control,
.input-group-lg > .form-select,
.input-group-lg > .input-group-text,
.input-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  border-radius: var(--bs-border-radius-lg);
}

.input-group-sm > .form-control,
.input-group-sm > .form-select,
.input-group-sm > .input-group-text,
.input-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: var(--bs-border-radius-sm);
}

.input-group-lg > .form-select,
.input-group-sm > .form-select {
  padding-right: 3rem;
}

.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),
.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,
.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),
.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,
.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  margin-left: calc(-1 * var(--bs-border-width));
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group > .form-floating:not(:first-child) > .form-control,
.input-group > .form-floating:not(:first-child) > .form-select {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--bs-form-valid-color);
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  color: #fff;
  background-color: var(--bs-success);
  border-radius: var(--bs-border-radius);
}

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: var(--bs-form-valid-border-color);
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: var(--bs-form-valid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .form-select:valid, .form-select.is-valid {
  border-color: var(--bs-form-valid-border-color);
}
.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] {
  --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e");
  padding-right: 4.125rem;
  background-position: right 0.75rem center, center right 2.25rem;
  background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-select:valid:focus, .form-select.is-valid:focus {
  border-color: var(--bs-form-valid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}

.was-validated .form-control-color:valid, .form-control-color.is-valid {
  width: calc(3rem + calc(1.5em + 0.75rem));
}

.was-validated .form-check-input:valid, .form-check-input.is-valid {
  border-color: var(--bs-form-valid-border-color);
}
.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {
  background-color: var(--bs-form-valid-color);
}
.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}
.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: var(--bs-form-valid-color);
}

.form-check-inline .form-check-input ~ .valid-feedback {
  margin-left: 0.5em;
}

.was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,
.was-validated .input-group > .form-select:not(:focus):valid,
.input-group > .form-select:not(:focus).is-valid,
.was-validated .input-group > .form-floating:not(:focus-within):valid,
.input-group > .form-floating:not(:focus-within).is-valid {
  z-index: 3;
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--bs-form-invalid-color);
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  color: #fff;
  background-color: var(--bs-danger);
  border-radius: var(--bs-border-radius);
}

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: var(--bs-form-invalid-border-color);
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: var(--bs-form-invalid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .form-select:invalid, .form-select.is-invalid {
  border-color: var(--bs-form-invalid-border-color);
}
.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] {
  --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  padding-right: 4.125rem;
  background-position: right 0.75rem center, center right 2.25rem;
  background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {
  border-color: var(--bs-form-invalid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}

.was-validated .form-control-color:invalid, .form-control-color.is-invalid {
  width: calc(3rem + calc(1.5em + 0.75rem));
}

.was-validated .form-check-input:invalid, .form-check-input.is-invalid {
  border-color: var(--bs-form-invalid-border-color);
}
.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {
  background-color: var(--bs-form-invalid-color);
}
.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}
.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: var(--bs-form-invalid-color);
}

.form-check-inline .form-check-input ~ .invalid-feedback {
  margin-left: 0.5em;
}

.was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,
.was-validated .input-group > .form-select:not(:focus):invalid,
.input-group > .form-select:not(:focus).is-invalid,
.was-validated .input-group > .form-floating:not(:focus-within):invalid,
.input-group > .form-floating:not(:focus-within).is-invalid {
  z-index: 4;
}

.btn {
  --bs-btn-padding-x: 0.75rem;
  --bs-btn-padding-y: 0.375rem;
  --bs-btn-font-family: ;
  --bs-btn-font-size: 1rem;
  --bs-btn-font-weight: 400;
  --bs-btn-line-height: 1.5;
  --bs-btn-color: var(--bs-body-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-width: var(--bs-border-width);
  --bs-btn-border-color: transparent;
  --bs-btn-border-radius: var(--bs-border-radius);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-opacity: 0.65;
  --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
  display: inline-block;
  padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
  font-family: var(--bs-btn-font-family);
  font-size: var(--bs-btn-font-size);
  font-weight: var(--bs-btn-font-weight);
  line-height: var(--bs-btn-line-height);
  color: var(--bs-btn-color);
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
  border-radius: var(--bs-btn-border-radius);
  background-color: var(--bs-btn-bg);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}
.btn:hover {
  color: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
}
.btn-check + .btn:hover {
  color: var(--bs-btn-color);
  background-color: var(--bs-btn-bg);
  border-color: var(--bs-btn-border-color);
}
.btn:focus-visible {
  color: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
  outline: 0;
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn-check:focus-visible + .btn {
  border-color: var(--bs-btn-hover-border-color);
  outline: 0;
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {
  color: var(--bs-btn-active-color);
  background-color: var(--bs-btn-active-bg);
  border-color: var(--bs-btn-active-border-color);
}
.btn-check:checked + .btn:focus-visible, :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn-check:checked:focus-visible + .btn {
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn:disabled, .btn.disabled, fieldset:disabled .btn {
  color: var(--bs-btn-disabled-color);
  pointer-events: none;
  background-color: var(--bs-btn-disabled-bg);
  border-color: var(--bs-btn-disabled-border-color);
  opacity: var(--bs-btn-disabled-opacity);
}

.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #0d6efd;
  --bs-btn-border-color: #0d6efd;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(11.05, 93.5, 215.05);
  --bs-btn-hover-border-color: rgb(10.4, 88, 202.4);
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(10.4, 88, 202.4);
  --bs-btn-active-border-color: rgb(9.75, 82.5, 189.75);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #0d6efd;
  --bs-btn-disabled-border-color: #0d6efd;
}

.btn-secondary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #6c757d;
  --bs-btn-border-color: #6c757d;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(91.8, 99.45, 106.25);
  --bs-btn-hover-border-color: rgb(86.4, 93.6, 100);
  --bs-btn-focus-shadow-rgb: 130, 138, 145;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(86.4, 93.6, 100);
  --bs-btn-active-border-color: rgb(81, 87.75, 93.75);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #6c757d;
  --bs-btn-disabled-border-color: #6c757d;
}

.btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(21.25, 114.75, 71.4);
  --bs-btn-hover-border-color: rgb(20, 108, 67.2);
  --bs-btn-focus-shadow-rgb: 60, 153, 110;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(20, 108, 67.2);
  --bs-btn-active-border-color: rgb(18.75, 101.25, 63);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #198754;
  --bs-btn-disabled-border-color: #198754;
}

.btn-info {
  --bs-btn-color: #000;
  --bs-btn-bg: #0dcaf0;
  --bs-btn-border-color: #0dcaf0;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: rgb(49.3, 209.95, 242.25);
  --bs-btn-hover-border-color: rgb(37.2, 207.3, 241.5);
  --bs-btn-focus-shadow-rgb: 11, 172, 204;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: rgb(61.4, 212.6, 243);
  --bs-btn-active-border-color: rgb(37.2, 207.3, 241.5);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #0dcaf0;
  --bs-btn-disabled-border-color: #0dcaf0;
}

.btn-warning {
  --bs-btn-color: #000;
  --bs-btn-bg: #ffc107;
  --bs-btn-border-color: #ffc107;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: rgb(255, 202.3, 44.2);
  --bs-btn-hover-border-color: rgb(255, 199.2, 31.8);
  --bs-btn-focus-shadow-rgb: 217, 164, 6;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: rgb(255, 205.4, 56.6);
  --bs-btn-active-border-color: rgb(255, 199.2, 31.8);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #ffc107;
  --bs-btn-disabled-border-color: #ffc107;
}

.btn-danger {
  --bs-btn-color: #fff;
  --bs-btn-bg: #dc3545;
  --bs-btn-border-color: #dc3545;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(187, 45.05, 58.65);
  --bs-btn-hover-border-color: rgb(176, 42.4, 55.2);
  --bs-btn-focus-shadow-rgb: 225, 83, 97;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(176, 42.4, 55.2);
  --bs-btn-active-border-color: rgb(165, 39.75, 51.75);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #dc3545;
  --bs-btn-disabled-border-color: #dc3545;
}

.btn-light {
  --bs-btn-color: #000;
  --bs-btn-bg: #f8f9fa;
  --bs-btn-border-color: #f8f9fa;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: rgb(210.8, 211.65, 212.5);
  --bs-btn-hover-border-color: rgb(198.4, 199.2, 200);
  --bs-btn-focus-shadow-rgb: 211, 212, 213;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: rgb(198.4, 199.2, 200);
  --bs-btn-active-border-color: rgb(186, 186.75, 187.5);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #f8f9fa;
  --bs-btn-disabled-border-color: #f8f9fa;
}

.btn-dark {
  --bs-btn-color: #fff;
  --bs-btn-bg: #212529;
  --bs-btn-border-color: #212529;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(66.3, 69.7, 73.1);
  --bs-btn-hover-border-color: rgb(55.2, 58.8, 62.4);
  --bs-btn-focus-shadow-rgb: 66, 70, 73;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(77.4, 80.6, 83.8);
  --bs-btn-active-border-color: rgb(55.2, 58.8, 62.4);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #212529;
  --bs-btn-disabled-border-color: #212529;
}

.btn-outline-primary {
  --bs-btn-color: #0d6efd;
  --bs-btn-border-color: #0d6efd;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #0d6efd;
  --bs-btn-hover-border-color: #0d6efd;
  --bs-btn-focus-shadow-rgb: 13, 110, 253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #0d6efd;
  --bs-btn-active-border-color: #0d6efd;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #0d6efd;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #0d6efd;
  --bs-gradient: none;
}

.btn-outline-secondary {
  --bs-btn-color: #6c757d;
  --bs-btn-border-color: #6c757d;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #6c757d;
  --bs-btn-hover-border-color: #6c757d;
  --bs-btn-focus-shadow-rgb: 108, 117, 125;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #6c757d;
  --bs-btn-active-border-color: #6c757d;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #6c757d;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #6c757d;
  --bs-gradient: none;
}

.btn-outline-success {
  --bs-btn-color: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #198754;
  --bs-btn-hover-border-color: #198754;
  --bs-btn-focus-shadow-rgb: 25, 135, 84;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #198754;
  --bs-btn-active-border-color: #198754;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #198754;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #198754;
  --bs-gradient: none;
}

.btn-outline-info {
  --bs-btn-color: #0dcaf0;
  --bs-btn-border-color: #0dcaf0;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #0dcaf0;
  --bs-btn-hover-border-color: #0dcaf0;
  --bs-btn-focus-shadow-rgb: 13, 202, 240;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #0dcaf0;
  --bs-btn-active-border-color: #0dcaf0;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #0dcaf0;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #0dcaf0;
  --bs-gradient: none;
}

.btn-outline-warning {
  --bs-btn-color: #ffc107;
  --bs-btn-border-color: #ffc107;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #ffc107;
  --bs-btn-hover-border-color: #ffc107;
  --bs-btn-focus-shadow-rgb: 255, 193, 7;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #ffc107;
  --bs-btn-active-border-color: #ffc107;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #ffc107;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #ffc107;
  --bs-gradient: none;
}

.btn-outline-danger {
  --bs-btn-color: #dc3545;
  --bs-btn-border-color: #dc3545;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #dc3545;
  --bs-btn-hover-border-color: #dc3545;
  --bs-btn-focus-shadow-rgb: 220, 53, 69;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #dc3545;
  --bs-btn-active-border-color: #dc3545;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #dc3545;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #dc3545;
  --bs-gradient: none;
}

.btn-outline-light {
  --bs-btn-color: #f8f9fa;
  --bs-btn-border-color: #f8f9fa;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #f8f9fa;
  --bs-btn-hover-border-color: #f8f9fa;
  --bs-btn-focus-shadow-rgb: 248, 249, 250;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #f8f9fa;
  --bs-btn-active-border-color: #f8f9fa;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #f8f9fa;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #f8f9fa;
  --bs-gradient: none;
}

.btn-outline-dark {
  --bs-btn-color: #212529;
  --bs-btn-border-color: #212529;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #212529;
  --bs-btn-hover-border-color: #212529;
  --bs-btn-focus-shadow-rgb: 33, 37, 41;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #212529;
  --bs-btn-active-border-color: #212529;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #212529;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #212529;
  --bs-gradient: none;
}

.btn-link {
  --bs-btn-font-weight: 400;
  --bs-btn-color: var(--bs-link-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-color: transparent;
  --bs-btn-hover-color: var(--bs-link-hover-color);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-active-color: var(--bs-link-hover-color);
  --bs-btn-active-border-color: transparent;
  --bs-btn-disabled-color: #6c757d;
  --bs-btn-disabled-border-color: transparent;
  --bs-btn-box-shadow: 0 0 0 #000;
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  text-decoration: underline;
}
.btn-link:focus-visible {
  color: var(--bs-btn-color);
}
.btn-link:hover {
  color: var(--bs-btn-hover-color);
}

.btn-lg, .btn-group-lg > .btn {
  --bs-btn-padding-y: 0.5rem;
  --bs-btn-padding-x: 1rem;
  --bs-btn-font-size: 1.25rem;
  --bs-btn-border-radius: var(--bs-border-radius-lg);
}

.btn-sm, .btn-group-sm > .btn {
  --bs-btn-padding-y: 0.25rem;
  --bs-btn-padding-x: 0.5rem;
  --bs-btn-font-size: 0.875rem;
  --bs-btn-border-radius: var(--bs-border-radius-sm);
}

.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}
.collapsing.collapse-horizontal {
  width: 0;
  height: auto;
  transition: width 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing.collapse-horizontal {
    transition: none;
  }
}

.dropup,
.dropend,
.dropdown,
.dropstart,
.dropup-center,
.dropdown-center {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}
.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}
.dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropdown-menu {
  --bs-dropdown-zindex: 1000;
  --bs-dropdown-min-width: 10rem;
  --bs-dropdown-padding-x: 0;
  --bs-dropdown-padding-y: 0.5rem;
  --bs-dropdown-spacer: 0.125rem;
  --bs-dropdown-font-size: 1rem;
  --bs-dropdown-color: var(--bs-body-color);
  --bs-dropdown-bg: var(--bs-body-bg);
  --bs-dropdown-border-color: var(--bs-border-color-translucent);
  --bs-dropdown-border-radius: var(--bs-border-radius);
  --bs-dropdown-border-width: var(--bs-border-width);
  --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
  --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
  --bs-dropdown-divider-margin-y: 0.5rem;
  --bs-dropdown-box-shadow: var(--bs-box-shadow);
  --bs-dropdown-link-color: var(--bs-body-color);
  --bs-dropdown-link-hover-color: var(--bs-body-color);
  --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: #0d6efd;
  --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);
  --bs-dropdown-item-padding-x: 1rem;
  --bs-dropdown-item-padding-y: 0.25rem;
  --bs-dropdown-header-color: #6c757d;
  --bs-dropdown-header-padding-x: 1rem;
  --bs-dropdown-header-padding-y: 0.5rem;
  position: absolute;
  z-index: var(--bs-dropdown-zindex);
  display: none;
  min-width: var(--bs-dropdown-min-width);
  padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
  margin: 0;
  font-size: var(--bs-dropdown-font-size);
  color: var(--bs-dropdown-color);
  text-align: left;
  list-style: none;
  background-color: var(--bs-dropdown-bg);
  background-clip: padding-box;
  border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
  border-radius: var(--bs-dropdown-border-radius);
}
.dropdown-menu[data-bs-popper] {
  top: 100%;
  left: 0;
  margin-top: var(--bs-dropdown-spacer);
}

.dropdown-menu-start {
  --bs-position: start;
}
.dropdown-menu-start[data-bs-popper] {
  right: auto;
  left: 0;
}

.dropdown-menu-end {
  --bs-position: end;
}
.dropdown-menu-end[data-bs-popper] {
  right: 0;
  left: auto;
}

@media (min-width: 576px) {
  .dropdown-menu-sm-start {
    --bs-position: start;
  }
  .dropdown-menu-sm-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-sm-end {
    --bs-position: end;
  }
  .dropdown-menu-sm-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 768px) {
  .dropdown-menu-md-start {
    --bs-position: start;
  }
  .dropdown-menu-md-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-md-end {
    --bs-position: end;
  }
  .dropdown-menu-md-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 992px) {
  .dropdown-menu-lg-start {
    --bs-position: start;
  }
  .dropdown-menu-lg-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-lg-end {
    --bs-position: end;
  }
  .dropdown-menu-lg-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1200px) {
  .dropdown-menu-xl-start {
    --bs-position: start;
  }
  .dropdown-menu-xl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xl-end {
    --bs-position: end;
  }
  .dropdown-menu-xl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1400px) {
  .dropdown-menu-xxl-start {
    --bs-position: start;
  }
  .dropdown-menu-xxl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xxl-end {
    --bs-position: end;
  }
  .dropdown-menu-xxl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
.dropup .dropdown-menu[data-bs-popper] {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: var(--bs-dropdown-spacer);
}
.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}
.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropend .dropdown-menu[data-bs-popper] {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: var(--bs-dropdown-spacer);
}
.dropend .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}
.dropend .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropend .dropdown-toggle::after {
  vertical-align: 0;
}

.dropstart .dropdown-menu[data-bs-popper] {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: var(--bs-dropdown-spacer);
}
.dropstart .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}
.dropstart .dropdown-toggle::after {
  display: none;
}
.dropstart .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}
.dropstart .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropstart .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-divider {
  height: 0;
  margin: var(--bs-dropdown-divider-margin-y) 0;
  overflow: hidden;
  border-top: 1px solid var(--bs-dropdown-divider-bg);
  opacity: 1;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
  clear: both;
  font-weight: 400;
  color: var(--bs-dropdown-link-color);
  text-align: inherit;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
  border-radius: var(--bs-dropdown-item-border-radius, 0);
}
.dropdown-item:hover, .dropdown-item:focus {
  color: var(--bs-dropdown-link-hover-color);
  background-color: var(--bs-dropdown-link-hover-bg);
}
.dropdown-item.active, .dropdown-item:active {
  color: var(--bs-dropdown-link-active-color);
  text-decoration: none;
  background-color: var(--bs-dropdown-link-active-bg);
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: var(--bs-dropdown-link-disabled-color);
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);
  margin-bottom: 0;
  font-size: 0.875rem;
  color: var(--bs-dropdown-header-color);
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
  color: var(--bs-dropdown-link-color);
}

.dropdown-menu-dark {
  --bs-dropdown-color: #dee2e6;
  --bs-dropdown-bg: #343a40;
  --bs-dropdown-border-color: var(--bs-border-color-translucent);
  --bs-dropdown-box-shadow: ;
  --bs-dropdown-link-color: #dee2e6;
  --bs-dropdown-link-hover-color: #fff;
  --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
  --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: #0d6efd;
  --bs-dropdown-link-disabled-color: #adb5bd;
  --bs-dropdown-header-color: #adb5bd;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}
.btn-group > .btn-check:checked + .btn,
.btn-group > .btn-check:focus + .btn,
.btn-group > .btn:hover,
.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn-check:checked + .btn,
.btn-group-vertical > .btn-check:focus + .btn,
.btn-group-vertical > .btn:hover,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.btn-toolbar .input-group {
  width: auto;
}

.btn-group {
  border-radius: var(--bs-border-radius);
}
.btn-group > :not(.btn-check:first-child) + .btn,
.btn-group > .btn-group:not(:first-child) {
  margin-left: calc(-1 * var(--bs-border-width));
}
.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn.dropdown-toggle-split:first-child,
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group > .btn:nth-child(n+3),
.btn-group > :not(.btn-check) + .btn,
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}
.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after {
  margin-left: 0;
}
.dropstart .dropdown-toggle-split::before {
  margin-right: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: calc(-1 * var(--bs-border-width));
}
.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:nth-child(n+3),
.btn-group-vertical > :not(.btn-check) + .btn,
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav {
  --bs-nav-link-padding-x: 1rem;
  --bs-nav-link-padding-y: 0.5rem;
  --bs-nav-link-font-weight: ;
  --bs-nav-link-color: var(--bs-link-color);
  --bs-nav-link-hover-color: var(--bs-link-hover-color);
  --bs-nav-link-disabled-color: var(--bs-secondary-color);
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
  font-size: var(--bs-nav-link-font-size);
  font-weight: var(--bs-nav-link-font-weight);
  color: var(--bs-nav-link-color);
  text-decoration: none;
  background: none;
  border: 0;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .nav-link {
    transition: none;
  }
}
.nav-link:hover, .nav-link:focus {
  color: var(--bs-nav-link-hover-color);
}
.nav-link:focus-visible {
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.nav-link.disabled, .nav-link:disabled {
  color: var(--bs-nav-link-disabled-color);
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  --bs-nav-tabs-border-width: var(--bs-border-width);
  --bs-nav-tabs-border-color: var(--bs-border-color);
  --bs-nav-tabs-border-radius: var(--bs-border-radius);
  --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);
  --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);
  --bs-nav-tabs-link-active-bg: var(--bs-body-bg);
  --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);
  border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);
}
.nav-tabs .nav-link {
  margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));
  border: var(--bs-nav-tabs-border-width) solid transparent;
  border-top-left-radius: var(--bs-nav-tabs-border-radius);
  border-top-right-radius: var(--bs-nav-tabs-border-radius);
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  isolation: isolate;
  border-color: var(--bs-nav-tabs-link-hover-border-color);
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: var(--bs-nav-tabs-link-active-color);
  background-color: var(--bs-nav-tabs-link-active-bg);
  border-color: var(--bs-nav-tabs-link-active-border-color);
}
.nav-tabs .dropdown-menu {
  margin-top: calc(-1 * var(--bs-nav-tabs-border-width));
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills {
  --bs-nav-pills-border-radius: var(--bs-border-radius);
  --bs-nav-pills-link-active-color: #fff;
  --bs-nav-pills-link-active-bg: #0d6efd;
}
.nav-pills .nav-link {
  border-radius: var(--bs-nav-pills-border-radius);
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: var(--bs-nav-pills-link-active-color);
  background-color: var(--bs-nav-pills-link-active-bg);
}

.nav-underline {
  --bs-nav-underline-gap: 1rem;
  --bs-nav-underline-border-width: 0.125rem;
  --bs-nav-underline-link-active-color: var(--bs-emphasis-color);
  gap: var(--bs-nav-underline-gap);
}
.nav-underline .nav-link {
  padding-right: 0;
  padding-left: 0;
  border-bottom: var(--bs-nav-underline-border-width) solid transparent;
}
.nav-underline .nav-link:hover, .nav-underline .nav-link:focus {
  border-bottom-color: currentcolor;
}
.nav-underline .nav-link.active,
.nav-underline .show > .nav-link {
  font-weight: 700;
  color: var(--bs-nav-underline-link-active-color);
  border-bottom-color: currentcolor;
}

.nav-fill > .nav-link,
.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
  flex-grow: 1;
  flex-basis: 0;
  text-align: center;
}

.nav-fill .nav-item .nav-link,
.nav-justified .nav-item .nav-link {
  width: 100%;
}

.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}

.navbar {
  --bs-navbar-padding-x: 0;
  --bs-navbar-padding-y: 0.5rem;
  --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);
  --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);
  --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);
  --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-brand-padding-y: 0.3125rem;
  --bs-navbar-brand-margin-end: 1rem;
  --bs-navbar-brand-font-size: 1.25rem;
  --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-nav-link-padding-x: 0.5rem;
  --bs-navbar-toggler-padding-y: 0.25rem;
  --bs-navbar-toggler-padding-x: 0.75rem;
  --bs-navbar-toggler-font-size: 1.25rem;
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);
  --bs-navbar-toggler-border-radius: var(--bs-border-radius);
  --bs-navbar-toggler-focus-width: 0.25rem;
  --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);
}
.navbar > .container,
.navbar > .container-fluid,
.navbar > .container-sm,
.navbar > .container-md,
.navbar > .container-lg,
.navbar > .container-xl,
.navbar > .container-xxl {
  display: flex;
  flex-wrap: inherit;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  padding-top: var(--bs-navbar-brand-padding-y);
  padding-bottom: var(--bs-navbar-brand-padding-y);
  margin-right: var(--bs-navbar-brand-margin-end);
  font-size: var(--bs-navbar-brand-font-size);
  color: var(--bs-navbar-brand-color);
  text-decoration: none;
  white-space: nowrap;
}
.navbar-brand:hover, .navbar-brand:focus {
  color: var(--bs-navbar-brand-hover-color);
}

.navbar-nav {
  --bs-nav-link-padding-x: 0;
  --bs-nav-link-padding-y: 0.5rem;
  --bs-nav-link-font-weight: ;
  --bs-nav-link-color: var(--bs-navbar-color);
  --bs-nav-link-hover-color: var(--bs-navbar-hover-color);
  --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {
  color: var(--bs-navbar-active-color);
}
.navbar-nav .dropdown-menu {
  position: static;
}

.navbar-text {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: var(--bs-navbar-color);
}
.navbar-text a,
.navbar-text a:hover,
.navbar-text a:focus {
  color: var(--bs-navbar-active-color);
}

.navbar-collapse {
  flex-grow: 1;
  flex-basis: 100%;
  align-items: center;
}

.navbar-toggler {
  padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);
  font-size: var(--bs-navbar-toggler-font-size);
  line-height: 1;
  color: var(--bs-navbar-color);
  background-color: transparent;
  border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);
  border-radius: var(--bs-navbar-toggler-border-radius);
  transition: var(--bs-navbar-toggler-transition);
}
@media (prefers-reduced-motion: reduce) {
  .navbar-toggler {
    transition: none;
  }
}
.navbar-toggler:hover {
  text-decoration: none;
}
.navbar-toggler:focus {
  text-decoration: none;
  outline: 0;
  box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  background-image: var(--bs-navbar-toggler-icon-bg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}

.navbar-nav-scroll {
  max-height: var(--bs-scroll-height, 75vh);
  overflow-y: auto;
}

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
  .navbar-expand-sm .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-sm .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-sm .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 768px) {
  .navbar-expand-md {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
  .navbar-expand-md .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-md .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-md .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
  .navbar-expand-lg .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-lg .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-lg .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
  .navbar-expand-xl .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-xl .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-xl .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1400px) {
  .navbar-expand-xxl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xxl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xxl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xxl .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-xxl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xxl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xxl .navbar-toggler {
    display: none;
  }
  .navbar-expand-xxl .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-xxl .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-xxl .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
.navbar-expand {
  flex-wrap: nowrap;
  justify-content: flex-start;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-right: var(--bs-navbar-nav-link-padding-x);
  padding-left: var(--bs-navbar-nav-link-padding-x);
}
.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}
.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}
.navbar-expand .navbar-toggler {
  display: none;
}
.navbar-expand .offcanvas {
  position: static;
  z-index: auto;
  flex-grow: 1;
  width: auto !important;
  height: auto !important;
  visibility: visible !important;
  background-color: transparent !important;
  border: 0 !important;
  transform: none !important;
  transition: none;
}
.navbar-expand .offcanvas .offcanvas-header {
  display: none;
}
.navbar-expand .offcanvas .offcanvas-body {
  display: flex;
  flex-grow: 0;
  padding: 0;
  overflow-y: visible;
}

.navbar-dark,
.navbar[data-bs-theme=dark] {
  --bs-navbar-color: rgba(255, 255, 255, 0.55);
  --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);
  --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);
  --bs-navbar-active-color: #fff;
  --bs-navbar-brand-color: #fff;
  --bs-navbar-brand-hover-color: #fff;
  --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

[data-bs-theme=dark] .navbar-toggler-icon {
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.card {
  --bs-card-spacer-y: 1rem;
  --bs-card-spacer-x: 1rem;
  --bs-card-title-spacer-y: 0.5rem;
  --bs-card-title-color: ;
  --bs-card-subtitle-color: ;
  --bs-card-border-width: var(--bs-border-width);
  --bs-card-border-color: var(--bs-border-color-translucent);
  --bs-card-border-radius: var(--bs-border-radius);
  --bs-card-box-shadow: ;
  --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
  --bs-card-cap-padding-y: 0.5rem;
  --bs-card-cap-padding-x: 1rem;
  --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);
  --bs-card-cap-color: ;
  --bs-card-height: ;
  --bs-card-color: ;
  --bs-card-bg: var(--bs-body-bg);
  --bs-card-img-overlay-padding: 1rem;
  --bs-card-group-margin: 0.75rem;
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: var(--bs-card-height);
  color: var(--bs-body-color);
  word-wrap: break-word;
  background-color: var(--bs-card-bg);
  background-clip: border-box;
  border: var(--bs-card-border-width) solid var(--bs-card-border-color);
  border-radius: var(--bs-card-border-radius);
}
.card > hr {
  margin-right: 0;
  margin-left: 0;
}
.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}
.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: var(--bs-card-inner-border-radius);
  border-top-right-radius: var(--bs-card-inner-border-radius);
}
.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: var(--bs-card-inner-border-radius);
  border-bottom-left-radius: var(--bs-card-inner-border-radius);
}
.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
  color: var(--bs-card-color);
}

.card-title {
  margin-bottom: var(--bs-card-title-spacer-y);
  color: var(--bs-card-title-color);
}

.card-subtitle {
  margin-top: calc(-0.5 * var(--bs-card-title-spacer-y));
  margin-bottom: 0;
  color: var(--bs-card-subtitle-color);
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link + .card-link {
  margin-left: var(--bs-card-spacer-x);
}

.card-header {
  padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
  margin-bottom: 0;
  color: var(--bs-card-cap-color);
  background-color: var(--bs-card-cap-bg);
  border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
}
.card-header:first-child {
  border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;
}

.card-footer {
  padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
  color: var(--bs-card-cap-color);
  background-color: var(--bs-card-cap-bg);
  border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);
}
.card-footer:last-child {
  border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);
}

.card-header-tabs {
  margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
  margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));
  margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
  border-bottom: 0;
}
.card-header-tabs .nav-link.active {
  background-color: var(--bs-card-bg);
  border-bottom-color: var(--bs-card-bg);
}

.card-header-pills {
  margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
  margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: var(--bs-card-img-overlay-padding);
  border-radius: var(--bs-card-inner-border-radius);
}

.card-img,
.card-img-top,
.card-img-bottom {
  width: 100%;
}

.card-img,
.card-img-top {
  border-top-left-radius: var(--bs-card-inner-border-radius);
  border-top-right-radius: var(--bs-card-inner-border-radius);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: var(--bs-card-inner-border-radius);
  border-bottom-left-radius: var(--bs-card-inner-border-radius);
}

.card-group > .card {
  margin-bottom: var(--bs-card-group-margin);
}
@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }
  .card-group > .card {
    flex: 1 0 0;
    margin-bottom: 0;
  }
  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:last-child) > .card-img-top,
  .card-group > .card:not(:last-child) > .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:not(:last-child) > .card-img-bottom,
  .card-group > .card:not(:last-child) > .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:first-child) > .card-img-top,
  .card-group > .card:not(:first-child) > .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:not(:first-child) > .card-img-bottom,
  .card-group > .card:not(:first-child) > .card-footer {
    border-bottom-left-radius: 0;
  }
}

.accordion {
  --bs-accordion-color: var(--bs-body-color);
  --bs-accordion-bg: var(--bs-body-bg);
  --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
  --bs-accordion-border-color: var(--bs-border-color);
  --bs-accordion-border-width: var(--bs-border-width);
  --bs-accordion-border-radius: var(--bs-border-radius);
  --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
  --bs-accordion-btn-padding-x: 1.25rem;
  --bs-accordion-btn-padding-y: 1rem;
  --bs-accordion-btn-color: var(--bs-body-color);
  --bs-accordion-btn-bg: var(--bs-accordion-bg);
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23212529' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  --bs-accordion-btn-icon-width: 1.25rem;
  --bs-accordion-btn-icon-transform: rotate(-180deg);
  --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='rgb%285.2, 44, 101.2%29' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  --bs-accordion-body-padding-x: 1.25rem;
  --bs-accordion-body-padding-y: 1rem;
  --bs-accordion-active-color: var(--bs-primary-text-emphasis);
  --bs-accordion-active-bg: var(--bs-primary-bg-subtle);
}

.accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
  font-size: 1rem;
  color: var(--bs-accordion-btn-color);
  text-align: left;
  background-color: var(--bs-accordion-btn-bg);
  border: 0;
  border-radius: 0;
  overflow-anchor: none;
  transition: var(--bs-accordion-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button {
    transition: none;
  }
}
.accordion-button:not(.collapsed) {
  color: var(--bs-accordion-active-color);
  background-color: var(--bs-accordion-active-bg);
  box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}
.accordion-button:not(.collapsed)::after {
  background-image: var(--bs-accordion-btn-active-icon);
  transform: var(--bs-accordion-btn-icon-transform);
}
.accordion-button::after {
  flex-shrink: 0;
  width: var(--bs-accordion-btn-icon-width);
  height: var(--bs-accordion-btn-icon-width);
  margin-left: auto;
  content: "";
  background-image: var(--bs-accordion-btn-icon);
  background-repeat: no-repeat;
  background-size: var(--bs-accordion-btn-icon-width);
  transition: var(--bs-accordion-btn-icon-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button::after {
    transition: none;
  }
}
.accordion-button:hover {
  z-index: 2;
}
.accordion-button:focus {
  z-index: 3;
  outline: 0;
  box-shadow: var(--bs-accordion-btn-focus-box-shadow);
}

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

.accordion-item {
  color: var(--bs-accordion-color);
  background-color: var(--bs-accordion-bg);
  border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}
.accordion-item:first-of-type {
  border-top-left-radius: var(--bs-accordion-border-radius);
  border-top-right-radius: var(--bs-accordion-border-radius);
}
.accordion-item:first-of-type > .accordion-header .accordion-button {
  border-top-left-radius: var(--bs-accordion-inner-border-radius);
  border-top-right-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:not(:first-of-type) {
  border-top: 0;
}
.accordion-item:last-of-type {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}
.accordion-item:last-of-type > .accordion-header .accordion-button.collapsed {
  border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
  border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:last-of-type > .accordion-collapse {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}

.accordion-body {
  padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);
}

.accordion-flush > .accordion-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0;
}
.accordion-flush > .accordion-item:first-child {
  border-top: 0;
}
.accordion-flush > .accordion-item:last-child {
  border-bottom: 0;
}
.accordion-flush > .accordion-item > .accordion-collapse,
.accordion-flush > .accordion-item > .accordion-header .accordion-button,
.accordion-flush > .accordion-item > .accordion-header .accordion-button.collapsed {
  border-radius: 0;
}

[data-bs-theme=dark] .accordion-button::after {
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='rgb%28109.8, 168, 253.8%29'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e");
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='rgb%28109.8, 168, 253.8%29'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e");
}

.breadcrumb {
  --bs-breadcrumb-padding-x: 0;
  --bs-breadcrumb-padding-y: 0;
  --bs-breadcrumb-margin-bottom: 1rem;
  --bs-breadcrumb-bg: ;
  --bs-breadcrumb-border-radius: ;
  --bs-breadcrumb-divider-color: var(--bs-secondary-color);
  --bs-breadcrumb-item-padding-x: 0.5rem;
  --bs-breadcrumb-item-active-color: var(--bs-secondary-color);
  display: flex;
  flex-wrap: wrap;
  padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);
  margin-bottom: var(--bs-breadcrumb-margin-bottom);
  font-size: var(--bs-breadcrumb-font-size);
  list-style: none;
  background-color: var(--bs-breadcrumb-bg);
  border-radius: var(--bs-breadcrumb-border-radius);
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: var(--bs-breadcrumb-item-padding-x);
}
.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: var(--bs-breadcrumb-item-padding-x);
  color: var(--bs-breadcrumb-divider-color);
  content: var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */;
}
.breadcrumb-item.active {
  color: var(--bs-breadcrumb-item-active-color);
}

.pagination {
  --bs-pagination-padding-x: 0.75rem;
  --bs-pagination-padding-y: 0.375rem;
  --bs-pagination-font-size: 1rem;
  --bs-pagination-color: var(--bs-link-color);
  --bs-pagination-bg: var(--bs-body-bg);
  --bs-pagination-border-width: var(--bs-border-width);
  --bs-pagination-border-color: var(--bs-border-color);
  --bs-pagination-border-radius: var(--bs-border-radius);
  --bs-pagination-hover-color: var(--bs-link-hover-color);
  --bs-pagination-hover-bg: var(--bs-tertiary-bg);
  --bs-pagination-hover-border-color: var(--bs-border-color);
  --bs-pagination-focus-color: var(--bs-link-hover-color);
  --bs-pagination-focus-bg: var(--bs-secondary-bg);
  --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  --bs-pagination-active-color: #fff;
  --bs-pagination-active-bg: #0d6efd;
  --bs-pagination-active-border-color: #0d6efd;
  --bs-pagination-disabled-color: var(--bs-secondary-color);
  --bs-pagination-disabled-bg: var(--bs-secondary-bg);
  --bs-pagination-disabled-border-color: var(--bs-border-color);
  display: flex;
  padding-left: 0;
  list-style: none;
}

.page-link {
  position: relative;
  display: block;
  padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);
  font-size: var(--bs-pagination-font-size);
  color: var(--bs-pagination-color);
  text-decoration: none;
  background-color: var(--bs-pagination-bg);
  border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .page-link {
    transition: none;
  }
}
.page-link:hover {
  z-index: 2;
  color: var(--bs-pagination-hover-color);
  background-color: var(--bs-pagination-hover-bg);
  border-color: var(--bs-pagination-hover-border-color);
}
.page-link:focus {
  z-index: 3;
  color: var(--bs-pagination-focus-color);
  background-color: var(--bs-pagination-focus-bg);
  outline: 0;
  box-shadow: var(--bs-pagination-focus-box-shadow);
}
.page-link.active, .active > .page-link {
  z-index: 3;
  color: var(--bs-pagination-active-color);
  background-color: var(--bs-pagination-active-bg);
  border-color: var(--bs-pagination-active-border-color);
}
.page-link.disabled, .disabled > .page-link {
  color: var(--bs-pagination-disabled-color);
  pointer-events: none;
  background-color: var(--bs-pagination-disabled-bg);
  border-color: var(--bs-pagination-disabled-border-color);
}

.page-item:not(:first-child) .page-link {
  margin-left: calc(-1 * var(--bs-border-width));
}
.page-item:first-child .page-link {
  border-top-left-radius: var(--bs-pagination-border-radius);
  border-bottom-left-radius: var(--bs-pagination-border-radius);
}
.page-item:last-child .page-link {
  border-top-right-radius: var(--bs-pagination-border-radius);
  border-bottom-right-radius: var(--bs-pagination-border-radius);
}

.pagination-lg {
  --bs-pagination-padding-x: 1.5rem;
  --bs-pagination-padding-y: 0.75rem;
  --bs-pagination-font-size: 1.25rem;
  --bs-pagination-border-radius: var(--bs-border-radius-lg);
}

.pagination-sm {
  --bs-pagination-padding-x: 0.5rem;
  --bs-pagination-padding-y: 0.25rem;
  --bs-pagination-font-size: 0.875rem;
  --bs-pagination-border-radius: var(--bs-border-radius-sm);
}

.badge {
  --bs-badge-padding-x: 0.65em;
  --bs-badge-padding-y: 0.35em;
  --bs-badge-font-size: 0.75em;
  --bs-badge-font-weight: 700;
  --bs-badge-color: #fff;
  --bs-badge-border-radius: var(--bs-border-radius);
  display: inline-block;
  padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
  font-size: var(--bs-badge-font-size);
  font-weight: var(--bs-badge-font-weight);
  line-height: 1;
  color: var(--bs-badge-color);
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: var(--bs-badge-border-radius);
}
.badge:empty {
  display: none;
}

.btn .badge {
  position: relative;
  top: -1px;
}

.alert {
  --bs-alert-bg: transparent;
  --bs-alert-padding-x: 1rem;
  --bs-alert-padding-y: 1rem;
  --bs-alert-margin-bottom: 1rem;
  --bs-alert-color: inherit;
  --bs-alert-border-color: transparent;
  --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
  --bs-alert-border-radius: var(--bs-border-radius);
  --bs-alert-link-color: inherit;
  position: relative;
  padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
  margin-bottom: var(--bs-alert-margin-bottom);
  color: var(--bs-alert-color);
  background-color: var(--bs-alert-bg);
  border: var(--bs-alert-border);
  border-radius: var(--bs-alert-border-radius);
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
  color: var(--bs-alert-link-color);
}

.alert-dismissible {
  padding-right: 3rem;
}
.alert-dismissible .btn-close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 1.25rem 1rem;
}

.alert-primary {
  --bs-alert-color: var(--bs-primary-text-emphasis);
  --bs-alert-bg: var(--bs-primary-bg-subtle);
  --bs-alert-border-color: var(--bs-primary-border-subtle);
  --bs-alert-link-color: var(--bs-primary-text-emphasis);
}

.alert-secondary {
  --bs-alert-color: var(--bs-secondary-text-emphasis);
  --bs-alert-bg: var(--bs-secondary-bg-subtle);
  --bs-alert-border-color: var(--bs-secondary-border-subtle);
  --bs-alert-link-color: var(--bs-secondary-text-emphasis);
}

.alert-success {
  --bs-alert-color: var(--bs-success-text-emphasis);
  --bs-alert-bg: var(--bs-success-bg-subtle);
  --bs-alert-border-color: var(--bs-success-border-subtle);
  --bs-alert-link-color: var(--bs-success-text-emphasis);
}

.alert-info {
  --bs-alert-color: var(--bs-info-text-emphasis);
  --bs-alert-bg: var(--bs-info-bg-subtle);
  --bs-alert-border-color: var(--bs-info-border-subtle);
  --bs-alert-link-color: var(--bs-info-text-emphasis);
}

.alert-warning {
  --bs-alert-color: var(--bs-warning-text-emphasis);
  --bs-alert-bg: var(--bs-warning-bg-subtle);
  --bs-alert-border-color: var(--bs-warning-border-subtle);
  --bs-alert-link-color: var(--bs-warning-text-emphasis);
}

.alert-danger {
  --bs-alert-color: var(--bs-danger-text-emphasis);
  --bs-alert-bg: var(--bs-danger-bg-subtle);
  --bs-alert-border-color: var(--bs-danger-border-subtle);
  --bs-alert-link-color: var(--bs-danger-text-emphasis);
}

.alert-light {
  --bs-alert-color: var(--bs-light-text-emphasis);
  --bs-alert-bg: var(--bs-light-bg-subtle);
  --bs-alert-border-color: var(--bs-light-border-subtle);
  --bs-alert-link-color: var(--bs-light-text-emphasis);
}

.alert-dark {
  --bs-alert-color: var(--bs-dark-text-emphasis);
  --bs-alert-bg: var(--bs-dark-bg-subtle);
  --bs-alert-border-color: var(--bs-dark-border-subtle);
  --bs-alert-link-color: var(--bs-dark-text-emphasis);
}

@keyframes progress-bar-stripes {
  0% {
    background-position-x: var(--bs-progress-height);
  }
}
.progress,
.progress-stacked {
  --bs-progress-height: 1rem;
  --bs-progress-font-size: 0.75rem;
  --bs-progress-bg: var(--bs-secondary-bg);
  --bs-progress-border-radius: var(--bs-border-radius);
  --bs-progress-box-shadow: var(--bs-box-shadow-inset);
  --bs-progress-bar-color: #fff;
  --bs-progress-bar-bg: #0d6efd;
  --bs-progress-bar-transition: width 0.6s ease;
  display: flex;
  height: var(--bs-progress-height);
  overflow: hidden;
  font-size: var(--bs-progress-font-size);
  background-color: var(--bs-progress-bg);
  border-radius: var(--bs-progress-border-radius);
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: var(--bs-progress-bar-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--bs-progress-bar-bg);
  transition: var(--bs-progress-bar-transition);
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: var(--bs-progress-height) var(--bs-progress-height);
}

.progress-stacked > .progress {
  overflow: visible;
}

.progress-stacked > .progress > .progress-bar {
  width: 100%;
}

.progress-bar-animated {
  animation: 1s linear infinite progress-bar-stripes;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    animation: none;
  }
}

.list-group {
  --bs-list-group-color: var(--bs-body-color);
  --bs-list-group-bg: var(--bs-body-bg);
  --bs-list-group-border-color: var(--bs-border-color);
  --bs-list-group-border-width: var(--bs-border-width);
  --bs-list-group-border-radius: var(--bs-border-radius);
  --bs-list-group-item-padding-x: 1rem;
  --bs-list-group-item-padding-y: 0.5rem;
  --bs-list-group-action-color: var(--bs-secondary-color);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);
  --bs-list-group-action-active-color: var(--bs-body-color);
  --bs-list-group-action-active-bg: var(--bs-secondary-bg);
  --bs-list-group-disabled-color: var(--bs-secondary-color);
  --bs-list-group-disabled-bg: var(--bs-body-bg);
  --bs-list-group-active-color: #fff;
  --bs-list-group-active-bg: #0d6efd;
  --bs-list-group-active-border-color: #0d6efd;
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: var(--bs-list-group-border-radius);
}

.list-group-numbered {
  list-style-type: none;
  counter-reset: section;
}
.list-group-numbered > .list-group-item::before {
  content: counters(section, ".") ". ";
  counter-increment: section;
}

.list-group-item {
  position: relative;
  display: block;
  padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);
  color: var(--bs-list-group-color);
  text-decoration: none;
  background-color: var(--bs-list-group-bg);
  border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);
}
.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}
.list-group-item.disabled, .list-group-item:disabled {
  color: var(--bs-list-group-disabled-color);
  pointer-events: none;
  background-color: var(--bs-list-group-disabled-bg);
}
.list-group-item.active {
  z-index: 2;
  color: var(--bs-list-group-active-color);
  background-color: var(--bs-list-group-active-bg);
  border-color: var(--bs-list-group-active-border-color);
}
.list-group-item + .list-group-item {
  border-top-width: 0;
}
.list-group-item + .list-group-item.active {
  margin-top: calc(-1 * var(--bs-list-group-border-width));
  border-top-width: var(--bs-list-group-border-width);
}

.list-group-item-action {
  width: 100%;
  color: var(--bs-list-group-action-color);
  text-align: inherit;
}
.list-group-item-action:not(.active):hover, .list-group-item-action:not(.active):focus {
  z-index: 1;
  color: var(--bs-list-group-action-hover-color);
  text-decoration: none;
  background-color: var(--bs-list-group-action-hover-bg);
}
.list-group-item-action:not(.active):active {
  color: var(--bs-list-group-action-active-color);
  background-color: var(--bs-list-group-action-active-bg);
}

.list-group-horizontal {
  flex-direction: row;
}
.list-group-horizontal > .list-group-item:first-child:not(:last-child) {
  border-bottom-left-radius: var(--bs-list-group-border-radius);
  border-top-right-radius: 0;
}
.list-group-horizontal > .list-group-item:last-child:not(:first-child) {
  border-top-right-radius: var(--bs-list-group-border-radius);
  border-bottom-left-radius: 0;
}
.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: var(--bs-list-group-border-width);
  border-left-width: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: calc(-1 * var(--bs-list-group-border-width));
  border-left-width: var(--bs-list-group-border-width);
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 1400px) {
  .list-group-horizontal-xxl {
    flex-direction: row;
  }
  .list-group-horizontal-xxl > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xxl > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xxl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xxl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
.list-group-flush {
  border-radius: 0;
}
.list-group-flush > .list-group-item {
  border-width: 0 0 var(--bs-list-group-border-width);
}
.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  --bs-list-group-color: var(--bs-primary-text-emphasis);
  --bs-list-group-bg: var(--bs-primary-bg-subtle);
  --bs-list-group-border-color: var(--bs-primary-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);
  --bs-list-group-active-color: var(--bs-primary-bg-subtle);
  --bs-list-group-active-bg: var(--bs-primary-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-primary-text-emphasis);
}

.list-group-item-secondary {
  --bs-list-group-color: var(--bs-secondary-text-emphasis);
  --bs-list-group-bg: var(--bs-secondary-bg-subtle);
  --bs-list-group-border-color: var(--bs-secondary-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);
  --bs-list-group-active-color: var(--bs-secondary-bg-subtle);
  --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis);
}

.list-group-item-success {
  --bs-list-group-color: var(--bs-success-text-emphasis);
  --bs-list-group-bg: var(--bs-success-bg-subtle);
  --bs-list-group-border-color: var(--bs-success-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-success-border-subtle);
  --bs-list-group-active-color: var(--bs-success-bg-subtle);
  --bs-list-group-active-bg: var(--bs-success-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-success-text-emphasis);
}

.list-group-item-info {
  --bs-list-group-color: var(--bs-info-text-emphasis);
  --bs-list-group-bg: var(--bs-info-bg-subtle);
  --bs-list-group-border-color: var(--bs-info-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-info-border-subtle);
  --bs-list-group-active-color: var(--bs-info-bg-subtle);
  --bs-list-group-active-bg: var(--bs-info-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-info-text-emphasis);
}

.list-group-item-warning {
  --bs-list-group-color: var(--bs-warning-text-emphasis);
  --bs-list-group-bg: var(--bs-warning-bg-subtle);
  --bs-list-group-border-color: var(--bs-warning-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);
  --bs-list-group-active-color: var(--bs-warning-bg-subtle);
  --bs-list-group-active-bg: var(--bs-warning-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-warning-text-emphasis);
}

.list-group-item-danger {
  --bs-list-group-color: var(--bs-danger-text-emphasis);
  --bs-list-group-bg: var(--bs-danger-bg-subtle);
  --bs-list-group-border-color: var(--bs-danger-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);
  --bs-list-group-active-color: var(--bs-danger-bg-subtle);
  --bs-list-group-active-bg: var(--bs-danger-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-danger-text-emphasis);
}

.list-group-item-light {
  --bs-list-group-color: var(--bs-light-text-emphasis);
  --bs-list-group-bg: var(--bs-light-bg-subtle);
  --bs-list-group-border-color: var(--bs-light-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-light-border-subtle);
  --bs-list-group-active-color: var(--bs-light-bg-subtle);
  --bs-list-group-active-bg: var(--bs-light-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-light-text-emphasis);
}

.list-group-item-dark {
  --bs-list-group-color: var(--bs-dark-text-emphasis);
  --bs-list-group-bg: var(--bs-dark-bg-subtle);
  --bs-list-group-border-color: var(--bs-dark-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);
  --bs-list-group-active-color: var(--bs-dark-bg-subtle);
  --bs-list-group-active-bg: var(--bs-dark-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-dark-text-emphasis);
}

.btn-close {
  --bs-btn-close-color: #000;
  --bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414'/%3e%3c/svg%3e");
  --bs-btn-close-opacity: 0.5;
  --bs-btn-close-hover-opacity: 0.75;
  --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  --bs-btn-close-focus-opacity: 1;
  --bs-btn-close-disabled-opacity: 0.25;
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: 0.25em 0.25em;
  color: var(--bs-btn-close-color);
  background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;
  filter: var(--bs-btn-close-filter);
  border: 0;
  border-radius: 0.375rem;
  opacity: var(--bs-btn-close-opacity);
}
.btn-close:hover {
  color: var(--bs-btn-close-color);
  text-decoration: none;
  opacity: var(--bs-btn-close-hover-opacity);
}
.btn-close:focus {
  outline: 0;
  box-shadow: var(--bs-btn-close-focus-shadow);
  opacity: var(--bs-btn-close-focus-opacity);
}
.btn-close:disabled, .btn-close.disabled {
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  opacity: var(--bs-btn-close-disabled-opacity);
}

.btn-close-white {
  --bs-btn-close-filter: invert(1) grayscale(100%) brightness(200%);
}

:root,
[data-bs-theme=light] {
  --bs-btn-close-filter: ;
}

[data-bs-theme=dark] {
  --bs-btn-close-filter: invert(1) grayscale(100%) brightness(200%);
}

.toast {
  --bs-toast-zindex: 1090;
  --bs-toast-padding-x: 0.75rem;
  --bs-toast-padding-y: 0.5rem;
  --bs-toast-spacing: 1.5rem;
  --bs-toast-max-width: 350px;
  --bs-toast-font-size: 0.875rem;
  --bs-toast-color: ;
  --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);
  --bs-toast-border-width: var(--bs-border-width);
  --bs-toast-border-color: var(--bs-border-color-translucent);
  --bs-toast-border-radius: var(--bs-border-radius);
  --bs-toast-box-shadow: var(--bs-box-shadow);
  --bs-toast-header-color: var(--bs-secondary-color);
  --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);
  --bs-toast-header-border-color: var(--bs-border-color-translucent);
  width: var(--bs-toast-max-width);
  max-width: 100%;
  font-size: var(--bs-toast-font-size);
  color: var(--bs-toast-color);
  pointer-events: auto;
  background-color: var(--bs-toast-bg);
  background-clip: padding-box;
  border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);
  box-shadow: var(--bs-toast-box-shadow);
  border-radius: var(--bs-toast-border-radius);
}
.toast.showing {
  opacity: 0;
}
.toast:not(.show) {
  display: none;
}

.toast-container {
  --bs-toast-zindex: 1090;
  position: absolute;
  z-index: var(--bs-toast-zindex);
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  pointer-events: none;
}
.toast-container > :not(:last-child) {
  margin-bottom: var(--bs-toast-spacing);
}

.toast-header {
  display: flex;
  align-items: center;
  padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);
  color: var(--bs-toast-header-color);
  background-color: var(--bs-toast-header-bg);
  background-clip: padding-box;
  border-bottom: var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);
  border-top-left-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
  border-top-right-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
}
.toast-header .btn-close {
  margin-right: calc(-0.5 * var(--bs-toast-padding-x));
  margin-left: var(--bs-toast-padding-x);
}

.toast-body {
  padding: var(--bs-toast-padding-x);
  word-wrap: break-word;
}

.modal {
  --bs-modal-zindex: 1055;
  --bs-modal-width: 500px;
  --bs-modal-padding: 1rem;
  --bs-modal-margin: 0.5rem;
  --bs-modal-color: var(--bs-body-color);
  --bs-modal-bg: var(--bs-body-bg);
  --bs-modal-border-color: var(--bs-border-color-translucent);
  --bs-modal-border-width: var(--bs-border-width);
  --bs-modal-border-radius: var(--bs-border-radius-lg);
  --bs-modal-box-shadow: var(--bs-box-shadow-sm);
  --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));
  --bs-modal-header-padding-x: 1rem;
  --bs-modal-header-padding-y: 1rem;
  --bs-modal-header-padding: 1rem 1rem;
  --bs-modal-header-border-color: var(--bs-border-color);
  --bs-modal-header-border-width: var(--bs-border-width);
  --bs-modal-title-line-height: 1.5;
  --bs-modal-footer-gap: 0.5rem;
  --bs-modal-footer-bg: ;
  --bs-modal-footer-border-color: var(--bs-border-color);
  --bs-modal-footer-border-width: var(--bs-border-width);
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--bs-modal-zindex);
  display: none;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: var(--bs-modal-margin);
  pointer-events: none;
}
.modal.fade .modal-dialog {
  transform: translate(0, -50px);
  transition: transform 0.3s ease-out;
}
@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}
.modal.show .modal-dialog {
  transform: none;
}
.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}

.modal-dialog-scrollable {
  height: calc(100% - var(--bs-modal-margin) * 2);
}
.modal-dialog-scrollable .modal-content {
  max-height: 100%;
  overflow: hidden;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - var(--bs-modal-margin) * 2);
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  color: var(--bs-modal-color);
  pointer-events: auto;
  background-color: var(--bs-modal-bg);
  background-clip: padding-box;
  border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);
  border-radius: var(--bs-modal-border-radius);
  outline: 0;
}

.modal-backdrop {
  --bs-backdrop-zindex: 1050;
  --bs-backdrop-bg: #000;
  --bs-backdrop-opacity: 0.5;
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--bs-backdrop-zindex);
  width: 100vw;
  height: 100vh;
  background-color: var(--bs-backdrop-bg);
}
.modal-backdrop.fade {
  opacity: 0;
}
.modal-backdrop.show {
  opacity: var(--bs-backdrop-opacity);
}

.modal-header {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  padding: var(--bs-modal-header-padding);
  border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
  border-top-left-radius: var(--bs-modal-inner-border-radius);
  border-top-right-radius: var(--bs-modal-inner-border-radius);
}
.modal-header .btn-close {
  padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);
  margin-top: calc(-0.5 * var(--bs-modal-header-padding-y));
  margin-right: calc(-0.5 * var(--bs-modal-header-padding-x));
  margin-bottom: calc(-0.5 * var(--bs-modal-header-padding-y));
  margin-left: auto;
}

.modal-title {
  margin-bottom: 0;
  line-height: var(--bs-modal-title-line-height);
}

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: var(--bs-modal-padding);
}

.modal-footer {
  display: flex;
  flex-shrink: 0;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);
  background-color: var(--bs-modal-footer-bg);
  border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);
  border-bottom-right-radius: var(--bs-modal-inner-border-radius);
  border-bottom-left-radius: var(--bs-modal-inner-border-radius);
}
.modal-footer > * {
  margin: calc(var(--bs-modal-footer-gap) * 0.5);
}

@media (min-width: 576px) {
  .modal {
    --bs-modal-margin: 1.75rem;
    --bs-modal-box-shadow: var(--bs-box-shadow);
  }
  .modal-dialog {
    max-width: var(--bs-modal-width);
    margin-right: auto;
    margin-left: auto;
  }
  .modal-sm {
    --bs-modal-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    --bs-modal-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    --bs-modal-width: 1140px;
  }
}
.modal-fullscreen {
  width: 100vw;
  max-width: none;
  height: 100%;
  margin: 0;
}
.modal-fullscreen .modal-content {
  height: 100%;
  border: 0;
  border-radius: 0;
}
.modal-fullscreen .modal-header,
.modal-fullscreen .modal-footer {
  border-radius: 0;
}
.modal-fullscreen .modal-body {
  overflow-y: auto;
}

@media (max-width: 575.98px) {
  .modal-fullscreen-sm-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-sm-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-header,
  .modal-fullscreen-sm-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 767.98px) {
  .modal-fullscreen-md-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-md-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-header,
  .modal-fullscreen-md-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 991.98px) {
  .modal-fullscreen-lg-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-lg-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-header,
  .modal-fullscreen-lg-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 1199.98px) {
  .modal-fullscreen-xl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-header,
  .modal-fullscreen-xl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 1399.98px) {
  .modal-fullscreen-xxl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xxl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-header,
  .modal-fullscreen-xxl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-body {
    overflow-y: auto;
  }
}
.tooltip {
  --bs-tooltip-zindex: 1080;
  --bs-tooltip-max-width: 200px;
  --bs-tooltip-padding-x: 0.5rem;
  --bs-tooltip-padding-y: 0.25rem;
  --bs-tooltip-margin: ;
  --bs-tooltip-font-size: 0.875rem;
  --bs-tooltip-color: var(--bs-body-bg);
  --bs-tooltip-bg: var(--bs-emphasis-color);
  --bs-tooltip-border-radius: var(--bs-border-radius);
  --bs-tooltip-opacity: 0.9;
  --bs-tooltip-arrow-width: 0.8rem;
  --bs-tooltip-arrow-height: 0.4rem;
  z-index: var(--bs-tooltip-zindex);
  display: block;
  margin: var(--bs-tooltip-margin);
  font-family: var(--bs-font-sans-serif);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-tooltip-font-size);
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: var(--bs-tooltip-opacity);
}
.tooltip .tooltip-arrow {
  display: block;
  width: var(--bs-tooltip-arrow-width);
  height: var(--bs-tooltip-arrow-height);
}
.tooltip .tooltip-arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
  bottom: calc(-1 * var(--bs-tooltip-arrow-height));
}
.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
  top: -1px;
  border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
  border-top-color: var(--bs-tooltip-bg);
}

/* rtl:begin:ignore */
.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
  left: calc(-1 * var(--bs-tooltip-arrow-height));
  width: var(--bs-tooltip-arrow-height);
  height: var(--bs-tooltip-arrow-width);
}
.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {
  right: -1px;
  border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
  border-right-color: var(--bs-tooltip-bg);
}

/* rtl:end:ignore */
.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
  top: calc(-1 * var(--bs-tooltip-arrow-height));
}
.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
  bottom: -1px;
  border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
  border-bottom-color: var(--bs-tooltip-bg);
}

/* rtl:begin:ignore */
.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
  right: calc(-1 * var(--bs-tooltip-arrow-height));
  width: var(--bs-tooltip-arrow-height);
  height: var(--bs-tooltip-arrow-width);
}
.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {
  left: -1px;
  border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
  border-left-color: var(--bs-tooltip-bg);
}

/* rtl:end:ignore */
.tooltip-inner {
  max-width: var(--bs-tooltip-max-width);
  padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);
  color: var(--bs-tooltip-color);
  text-align: center;
  background-color: var(--bs-tooltip-bg);
  border-radius: var(--bs-tooltip-border-radius);
}

.popover {
  --bs-popover-zindex: 1070;
  --bs-popover-max-width: 276px;
  --bs-popover-font-size: 0.875rem;
  --bs-popover-bg: var(--bs-body-bg);
  --bs-popover-border-width: var(--bs-border-width);
  --bs-popover-border-color: var(--bs-border-color-translucent);
  --bs-popover-border-radius: var(--bs-border-radius-lg);
  --bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));
  --bs-popover-box-shadow: var(--bs-box-shadow);
  --bs-popover-header-padding-x: 1rem;
  --bs-popover-header-padding-y: 0.5rem;
  --bs-popover-header-font-size: 1rem;
  --bs-popover-header-color: inherit;
  --bs-popover-header-bg: var(--bs-secondary-bg);
  --bs-popover-body-padding-x: 1rem;
  --bs-popover-body-padding-y: 1rem;
  --bs-popover-body-color: var(--bs-body-color);
  --bs-popover-arrow-width: 1rem;
  --bs-popover-arrow-height: 0.5rem;
  --bs-popover-arrow-border: var(--bs-popover-border-color);
  z-index: var(--bs-popover-zindex);
  display: block;
  max-width: var(--bs-popover-max-width);
  font-family: var(--bs-font-sans-serif);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-popover-font-size);
  word-wrap: break-word;
  background-color: var(--bs-popover-bg);
  background-clip: padding-box;
  border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
  border-radius: var(--bs-popover-border-radius);
}
.popover .popover-arrow {
  display: block;
  width: var(--bs-popover-arrow-width);
  height: var(--bs-popover-arrow-height);
}
.popover .popover-arrow::before, .popover .popover-arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
  border-width: 0;
}

.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {
  bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}
.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
  border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
}
.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {
  bottom: 0;
  border-top-color: var(--bs-popover-arrow-border);
}
.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
  bottom: var(--bs-popover-border-width);
  border-top-color: var(--bs-popover-bg);
}

/* rtl:begin:ignore */
.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {
  left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
  width: var(--bs-popover-arrow-height);
  height: var(--bs-popover-arrow-width);
}
.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
  border-width: calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
}
.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {
  left: 0;
  border-right-color: var(--bs-popover-arrow-border);
}
.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
  left: var(--bs-popover-border-width);
  border-right-color: var(--bs-popover-bg);
}

/* rtl:end:ignore */
.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {
  top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}
.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
  border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
}
.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {
  top: 0;
  border-bottom-color: var(--bs-popover-arrow-border);
}
.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
  top: var(--bs-popover-border-width);
  border-bottom-color: var(--bs-popover-bg);
}
.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: var(--bs-popover-arrow-width);
  margin-left: calc(-0.5 * var(--bs-popover-arrow-width));
  content: "";
  border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg);
}

/* rtl:begin:ignore */
.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {
  right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
  width: var(--bs-popover-arrow-height);
  height: var(--bs-popover-arrow-width);
}
.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
  border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
}
.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {
  right: 0;
  border-left-color: var(--bs-popover-arrow-border);
}
.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
  right: var(--bs-popover-border-width);
  border-left-color: var(--bs-popover-bg);
}

/* rtl:end:ignore */
.popover-header {
  padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);
  margin-bottom: 0;
  font-size: var(--bs-popover-header-font-size);
  color: var(--bs-popover-header-color);
  background-color: var(--bs-popover-header-bg);
  border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
  border-top-left-radius: var(--bs-popover-inner-border-radius);
  border-top-right-radius: var(--bs-popover-inner-border-radius);
}
.popover-header:empty {
  display: none;
}

.popover-body {
  padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);
  color: var(--bs-popover-body-color);
}

.carousel {
  position: relative;
}

.carousel.pointer-event {
  touch-action: pan-y;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next:not(.carousel-item-start),
.active.carousel-item-end {
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-end),
.active.carousel-item-start {
  transform: translateX(-100%);
}

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}
.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-start,
.carousel-fade .carousel-item-prev.carousel-item-end {
  z-index: 1;
  opacity: 1;
}
.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-start,
  .carousel-fade .active.carousel-item-end {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  padding: 0;
  color: #fff;
  text-align: center;
  background: none;
  filter: var(--bs-carousel-control-icon-filter);
  border: 0;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
  .carousel-control-next {
    transition: none;
  }
}
.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

.carousel-control-prev {
  left: 0;
}

.carousel-control-next {
  right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: 100% 100%;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0'/%3e%3c/svg%3e") /*rtl:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e")*/;
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e") /*rtl:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0'/%3e%3c/svg%3e")*/;
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: flex;
  justify-content: center;
  padding: 0;
  margin-right: 15%;
  margin-bottom: 1rem;
  margin-left: 15%;
}
.carousel-indicators [data-bs-target] {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  padding: 0;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: var(--bs-carousel-indicator-active-bg);
  background-clip: padding-box;
  border: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: 0.5;
  transition: opacity 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-indicators [data-bs-target] {
    transition: none;
  }
}
.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 1.25rem;
  left: 15%;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  color: var(--bs-carousel-caption-color);
  text-align: center;
}

.carousel-dark {
  --bs-carousel-indicator-active-bg: #000;
  --bs-carousel-caption-color: #000;
  --bs-carousel-control-icon-filter: invert(1) grayscale(100);
}

:root,
[data-bs-theme=light] {
  --bs-carousel-indicator-active-bg: #fff;
  --bs-carousel-caption-color: #fff;
  --bs-carousel-control-icon-filter: ;
}

[data-bs-theme=dark] {
  --bs-carousel-indicator-active-bg: #000;
  --bs-carousel-caption-color: #000;
  --bs-carousel-control-icon-filter: invert(1) grayscale(100);
}

.spinner-grow,
.spinner-border {
  display: inline-block;
  flex-shrink: 0;
  width: var(--bs-spinner-width);
  height: var(--bs-spinner-height);
  vertical-align: var(--bs-spinner-vertical-align);
  border-radius: 50%;
  animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg) /* rtl:ignore */;
  }
}
.spinner-border {
  --bs-spinner-width: 2rem;
  --bs-spinner-height: 2rem;
  --bs-spinner-vertical-align: -0.125em;
  --bs-spinner-border-width: 0.25em;
  --bs-spinner-animation-speed: 0.75s;
  --bs-spinner-animation-name: spinner-border;
  border: var(--bs-spinner-border-width) solid currentcolor;
  border-right-color: transparent;
}

.spinner-border-sm {
  --bs-spinner-width: 1rem;
  --bs-spinner-height: 1rem;
  --bs-spinner-border-width: 0.2em;
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  --bs-spinner-width: 2rem;
  --bs-spinner-height: 2rem;
  --bs-spinner-vertical-align: -0.125em;
  --bs-spinner-animation-speed: 0.75s;
  --bs-spinner-animation-name: spinner-grow;
  background-color: currentcolor;
  opacity: 0;
}

.spinner-grow-sm {
  --bs-spinner-width: 1rem;
  --bs-spinner-height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
  .spinner-grow {
    --bs-spinner-animation-speed: 1.5s;
  }
}
.offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {
  --bs-offcanvas-zindex: 1045;
  --bs-offcanvas-width: 400px;
  --bs-offcanvas-height: 30vh;
  --bs-offcanvas-padding-x: 1rem;
  --bs-offcanvas-padding-y: 1rem;
  --bs-offcanvas-color: var(--bs-body-color);
  --bs-offcanvas-bg: var(--bs-body-bg);
  --bs-offcanvas-border-width: var(--bs-border-width);
  --bs-offcanvas-border-color: var(--bs-border-color-translucent);
  --bs-offcanvas-box-shadow: var(--bs-box-shadow-sm);
  --bs-offcanvas-transition: transform 0.3s ease-in-out;
  --bs-offcanvas-title-line-height: 1.5;
}

@media (max-width: 575.98px) {
  .offcanvas-sm {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-sm {
    transition: none;
  }
}
@media (max-width: 575.98px) {
  .offcanvas-sm.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-sm.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-sm.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-sm.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {
    visibility: visible;
  }
}
@media (min-width: 576px) {
  .offcanvas-sm {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-sm .offcanvas-header {
    display: none;
  }
  .offcanvas-sm .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 767.98px) {
  .offcanvas-md {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-md {
    transition: none;
  }
}
@media (max-width: 767.98px) {
  .offcanvas-md.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-md.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-md.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-md.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {
    visibility: visible;
  }
}
@media (min-width: 768px) {
  .offcanvas-md {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-md .offcanvas-header {
    display: none;
  }
  .offcanvas-md .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 991.98px) {
  .offcanvas-lg {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-lg {
    transition: none;
  }
}
@media (max-width: 991.98px) {
  .offcanvas-lg.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-lg.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-lg.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-lg.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {
    visibility: visible;
  }
}
@media (min-width: 992px) {
  .offcanvas-lg {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-lg .offcanvas-header {
    display: none;
  }
  .offcanvas-lg .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 1199.98px) {
  .offcanvas-xl {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-xl {
    transition: none;
  }
}
@media (max-width: 1199.98px) {
  .offcanvas-xl.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-xl.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-xl.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-xl.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {
    visibility: visible;
  }
}
@media (min-width: 1200px) {
  .offcanvas-xl {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-xl .offcanvas-header {
    display: none;
  }
  .offcanvas-xl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 1399.98px) {
  .offcanvas-xxl {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-xxl {
    transition: none;
  }
}
@media (max-width: 1399.98px) {
  .offcanvas-xxl.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-xxl.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-xxl.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-xxl.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {
    visibility: visible;
  }
}
@media (min-width: 1400px) {
  .offcanvas-xxl {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-xxl .offcanvas-header {
    display: none;
  }
  .offcanvas-xxl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

.offcanvas {
  position: fixed;
  bottom: 0;
  z-index: var(--bs-offcanvas-zindex);
  display: flex;
  flex-direction: column;
  max-width: 100%;
  color: var(--bs-offcanvas-color);
  visibility: hidden;
  background-color: var(--bs-offcanvas-bg);
  background-clip: padding-box;
  outline: 0;
  transition: var(--bs-offcanvas-transition);
}
@media (prefers-reduced-motion: reduce) {
  .offcanvas {
    transition: none;
  }
}
.offcanvas.offcanvas-start {
  top: 0;
  left: 0;
  width: var(--bs-offcanvas-width);
  border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateX(-100%);
}
.offcanvas.offcanvas-end {
  top: 0;
  right: 0;
  width: var(--bs-offcanvas-width);
  border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateX(100%);
}
.offcanvas.offcanvas-top {
  top: 0;
  right: 0;
  left: 0;
  height: var(--bs-offcanvas-height);
  max-height: 100%;
  border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateY(-100%);
}
.offcanvas.offcanvas-bottom {
  right: 0;
  left: 0;
  height: var(--bs-offcanvas-height);
  max-height: 100%;
  border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateY(100%);
}
.offcanvas.showing, .offcanvas.show:not(.hiding) {
  transform: none;
}
.offcanvas.showing, .offcanvas.hiding, .offcanvas.show {
  visibility: visible;
}

.offcanvas-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}
.offcanvas-backdrop.fade {
  opacity: 0;
}
.offcanvas-backdrop.show {
  opacity: 0.5;
}

.offcanvas-header {
  display: flex;
  align-items: center;
  padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
}
.offcanvas-header .btn-close {
  padding: calc(var(--bs-offcanvas-padding-y) * 0.5) calc(var(--bs-offcanvas-padding-x) * 0.5);
  margin-top: calc(-0.5 * var(--bs-offcanvas-padding-y));
  margin-right: calc(-0.5 * var(--bs-offcanvas-padding-x));
  margin-bottom: calc(-0.5 * var(--bs-offcanvas-padding-y));
  margin-left: auto;
}

.offcanvas-title {
  margin-bottom: 0;
  line-height: var(--bs-offcanvas-title-line-height);
}

.offcanvas-body {
  flex-grow: 1;
  padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
  overflow-y: auto;
}

.placeholder {
  display: inline-block;
  min-height: 1em;
  vertical-align: middle;
  cursor: wait;
  background-color: currentcolor;
  opacity: 0.5;
}
.placeholder.btn::before {
  display: inline-block;
  content: "";
}

.placeholder-xs {
  min-height: 0.6em;
}

.placeholder-sm {
  min-height: 0.8em;
}

.placeholder-lg {
  min-height: 1.2em;
}

.placeholder-glow .placeholder {
  animation: placeholder-glow 2s ease-in-out infinite;
}

@keyframes placeholder-glow {
  50% {
    opacity: 0.2;
  }
}
.placeholder-wave {
  -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
          mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
  -webkit-mask-size: 200% 100%;
          mask-size: 200% 100%;
  animation: placeholder-wave 2s linear infinite;
}

@keyframes placeholder-wave {
  100% {
    -webkit-mask-position: -200% 0%;
            mask-position: -200% 0%;
  }
}
.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.text-bg-primary {
  color: #fff !important;
  background-color: RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-secondary {
  color: #fff !important;
  background-color: RGBA(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-success {
  color: #fff !important;
  background-color: RGBA(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-info {
  color: #000 !important;
  background-color: RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-warning {
  color: #000 !important;
  background-color: RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-danger {
  color: #fff !important;
  background-color: RGBA(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-light {
  color: #000 !important;
  background-color: RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-dark {
  color: #fff !important;
  background-color: RGBA(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

.link-primary {
  color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-primary:hover, .link-primary:focus {
  color: RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;
}

.link-secondary {
  color: RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-secondary:hover, .link-secondary:focus {
  color: RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;
}

.link-success {
  color: RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-success:hover, .link-success:focus {
  color: RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;
}

.link-info {
  color: RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-info:hover, .link-info:focus {
  color: RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;
}

.link-warning {
  color: RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-warning:hover, .link-warning:focus {
  color: RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;
}

.link-danger {
  color: RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-danger:hover, .link-danger:focus {
  color: RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;
}

.link-light {
  color: RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-light:hover, .link-light:focus {
  color: RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;
}

.link-dark {
  color: RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-dark:hover, .link-dark:focus {
  color: RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;
}

.link-body-emphasis {
  color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-body-emphasis:hover, .link-body-emphasis:focus {
  color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;
          text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;
}

.focus-ring:focus {
  outline: 0;
  box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);
}

.icon-link {
  display: inline-flex;
  gap: 0.375rem;
  align-items: center;
  -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
          text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
  text-underline-offset: 0.25em;
  backface-visibility: hidden;
}
.icon-link > .bi {
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  fill: currentcolor;
  transition: 0.2s ease-in-out transform;
}
@media (prefers-reduced-motion: reduce) {
  .icon-link > .bi {
    transition: none;
  }
}

.icon-link-hover:hover > .bi, .icon-link-hover:focus-visible > .bi {
  transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));
}

.ratio {
  position: relative;
  width: 100%;
}
.ratio::before {
  display: block;
  padding-top: var(--bs-aspect-ratio);
  content: "";
}
.ratio > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.ratio-1x1 {
  --bs-aspect-ratio: 100%;
}

.ratio-4x3 {
  --bs-aspect-ratio: 75%;
}

.ratio-16x9 {
  --bs-aspect-ratio: 56.25%;
}

.ratio-21x9 {
  --bs-aspect-ratio: 42.8571428571%;
}

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

.sticky-top {
  position: sticky;
  top: 0;
  z-index: 1020;
}

.sticky-bottom {
  position: sticky;
  bottom: 0;
  z-index: 1020;
}

@media (min-width: 576px) {
  .sticky-sm-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-sm-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
@media (min-width: 768px) {
  .sticky-md-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-md-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
@media (min-width: 992px) {
  .sticky-lg-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-lg-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
@media (min-width: 1200px) {
  .sticky-xl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-xl-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
@media (min-width: 1400px) {
  .sticky-xxl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-xxl-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
.hstack {
  display: flex;
  flex-direction: row;
  align-items: center;
  align-self: stretch;
}

.vstack {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-self: stretch;
}

.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.visually-hidden:not(caption),
.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {
  position: absolute !important;
}
.visually-hidden *,
.visually-hidden-focusable:not(:focus):not(:focus-within) * {
  overflow: hidden !important;
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  content: "";
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.vr {
  display: inline-block;
  align-self: stretch;
  width: var(--bs-border-width);
  min-height: 1em;
  background-color: currentcolor;
  opacity: 0.25;
}

.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.float-start {
  float: left !important;
}

.float-end {
  float: right !important;
}

.float-none {
  float: none !important;
}

.object-fit-contain {
  -o-object-fit: contain !important;
     object-fit: contain !important;
}

.object-fit-cover {
  -o-object-fit: cover !important;
     object-fit: cover !important;
}

.object-fit-fill {
  -o-object-fit: fill !important;
     object-fit: fill !important;
}

.object-fit-scale {
  -o-object-fit: scale-down !important;
     object-fit: scale-down !important;
}

.object-fit-none {
  -o-object-fit: none !important;
     object-fit: none !important;
}

.opacity-0 {
  opacity: 0 !important;
}

.opacity-25 {
  opacity: 0.25 !important;
}

.opacity-50 {
  opacity: 0.5 !important;
}

.opacity-75 {
  opacity: 0.75 !important;
}

.opacity-100 {
  opacity: 1 !important;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.overflow-visible {
  overflow: visible !important;
}

.overflow-scroll {
  overflow: scroll !important;
}

.overflow-x-auto {
  overflow-x: auto !important;
}

.overflow-x-hidden {
  overflow-x: hidden !important;
}

.overflow-x-visible {
  overflow-x: visible !important;
}

.overflow-x-scroll {
  overflow-x: scroll !important;
}

.overflow-y-auto {
  overflow-y: auto !important;
}

.overflow-y-hidden {
  overflow-y: hidden !important;
}

.overflow-y-visible {
  overflow-y: visible !important;
}

.overflow-y-scroll {
  overflow-y: scroll !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-grid {
  display: grid !important;
}

.d-inline-grid {
  display: inline-grid !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: flex !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

.d-none {
  display: none !important;
}

.shadow {
  box-shadow: var(--bs-box-shadow) !important;
}

.shadow-sm {
  box-shadow: var(--bs-box-shadow-sm) !important;
}

.shadow-lg {
  box-shadow: var(--bs-box-shadow-lg) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.focus-ring-primary {
  --bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-secondary {
  --bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-success {
  --bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-info {
  --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-warning {
  --bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-danger {
  --bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-light {
  --bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-dark {
  --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity));
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: sticky !important;
}

.top-0 {
  top: 0 !important;
}

.top-50 {
  top: 50% !important;
}

.top-100 {
  top: 100% !important;
}

.bottom-0 {
  bottom: 0 !important;
}

.bottom-50 {
  bottom: 50% !important;
}

.bottom-100 {
  bottom: 100% !important;
}

.start-0 {
  left: 0 !important;
}

.start-50 {
  left: 50% !important;
}

.start-100 {
  left: 100% !important;
}

.end-0 {
  right: 0 !important;
}

.end-50 {
  right: 50% !important;
}

.end-100 {
  right: 100% !important;
}

.translate-middle {
  transform: translate(-50%, -50%) !important;
}

.translate-middle-x {
  transform: translateX(-50%) !important;
}

.translate-middle-y {
  transform: translateY(-50%) !important;
}

.border {
  border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-0 {
  border: 0 !important;
}

.border-top {
  border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-end {
  border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-end-0 {
  border-right: 0 !important;
}

.border-bottom {
  border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-start {
  border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-start-0 {
  border-left: 0 !important;
}

.border-primary {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;
}

.border-secondary {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;
}

.border-success {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;
}

.border-info {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;
}

.border-warning {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important;
}

.border-danger {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;
}

.border-light {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;
}

.border-dark {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;
}

.border-black {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important;
}

.border-white {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important;
}

.border-primary-subtle {
  border-color: var(--bs-primary-border-subtle) !important;
}

.border-secondary-subtle {
  border-color: var(--bs-secondary-border-subtle) !important;
}

.border-success-subtle {
  border-color: var(--bs-success-border-subtle) !important;
}

.border-info-subtle {
  border-color: var(--bs-info-border-subtle) !important;
}

.border-warning-subtle {
  border-color: var(--bs-warning-border-subtle) !important;
}

.border-danger-subtle {
  border-color: var(--bs-danger-border-subtle) !important;
}

.border-light-subtle {
  border-color: var(--bs-light-border-subtle) !important;
}

.border-dark-subtle {
  border-color: var(--bs-dark-border-subtle) !important;
}

.border-1 {
  border-width: 1px !important;
}

.border-2 {
  border-width: 2px !important;
}

.border-3 {
  border-width: 3px !important;
}

.border-4 {
  border-width: 4px !important;
}

.border-5 {
  border-width: 5px !important;
}

.border-opacity-10 {
  --bs-border-opacity: 0.1;
}

.border-opacity-25 {
  --bs-border-opacity: 0.25;
}

.border-opacity-50 {
  --bs-border-opacity: 0.5;
}

.border-opacity-75 {
  --bs-border-opacity: 0.75;
}

.border-opacity-100 {
  --bs-border-opacity: 1;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.vw-100 {
  width: 100vw !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

.mh-100 {
  max-height: 100% !important;
}

.vh-100 {
  height: 100vh !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.justify-content-start {
  justify-content: flex-start !important;
}

.justify-content-end {
  justify-content: flex-end !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

.justify-content-evenly {
  justify-content: space-evenly !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.align-items-end {
  align-items: flex-end !important;
}

.align-items-center {
  align-items: center !important;
}

.align-items-baseline {
  align-items: baseline !important;
}

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

.order-first {
  order: -1 !important;
}

.order-0 {
  order: 0 !important;
}

.order-1 {
  order: 1 !important;
}

.order-2 {
  order: 2 !important;
}

.order-3 {
  order: 3 !important;
}

.order-4 {
  order: 4 !important;
}

.order-5 {
  order: 5 !important;
}

.order-last {
  order: 6 !important;
}

.m-0 {
  margin: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mx-0 {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.mx-1 {
  margin-right: 0.25rem !important;
  margin-left: 0.25rem !important;
}

.mx-2 {
  margin-right: 0.5rem !important;
  margin-left: 0.5rem !important;
}

.mx-3 {
  margin-right: 1rem !important;
  margin-left: 1rem !important;
}

.mx-4 {
  margin-right: 1.5rem !important;
  margin-left: 1.5rem !important;
}

.mx-5 {
  margin-right: 3rem !important;
  margin-left: 3rem !important;
}

.mx-auto {
  margin-right: auto !important;
  margin-left: auto !important;
}

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.my-1 {
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}

.my-2 {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.my-3 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.my-4 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.my-5 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mt-1 {
  margin-top: 0.25rem !important;
}

.mt-2 {
  margin-top: 0.5rem !important;
}

.mt-3 {
  margin-top: 1rem !important;
}

.mt-4 {
  margin-top: 1.5rem !important;
}

.mt-5 {
  margin-top: 3rem !important;
}

.mt-auto {
  margin-top: auto !important;
}

.me-0 {
  margin-right: 0 !important;
}

.me-1 {
  margin-right: 0.25rem !important;
}

.me-2 {
  margin-right: 0.5rem !important;
}

.me-3 {
  margin-right: 1rem !important;
}

.me-4 {
  margin-right: 1.5rem !important;
}

.me-5 {
  margin-right: 3rem !important;
}

.me-auto {
  margin-right: auto !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.mb-1 {
  margin-bottom: 0.25rem !important;
}

.mb-2 {
  margin-bottom: 0.5rem !important;
}

.mb-3 {
  margin-bottom: 1rem !important;
}

.mb-4 {
  margin-bottom: 1.5rem !important;
}

.mb-5 {
  margin-bottom: 3rem !important;
}

.mb-auto {
  margin-bottom: auto !important;
}

.ms-0 {
  margin-left: 0 !important;
}

.ms-1 {
  margin-left: 0.25rem !important;
}

.ms-2 {
  margin-left: 0.5rem !important;
}

.ms-3 {
  margin-left: 1rem !important;
}

.ms-4 {
  margin-left: 1.5rem !important;
}

.ms-5 {
  margin-left: 3rem !important;
}

.ms-auto {
  margin-left: auto !important;
}

.p-0 {
  padding: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.px-0 {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.px-1 {
  padding-right: 0.25rem !important;
  padding-left: 0.25rem !important;
}

.px-2 {
  padding-right: 0.5rem !important;
  padding-left: 0.5rem !important;
}

.px-3 {
  padding-right: 1rem !important;
  padding-left: 1rem !important;
}

.px-4 {
  padding-right: 1.5rem !important;
  padding-left: 1.5rem !important;
}

.px-5 {
  padding-right: 3rem !important;
  padding-left: 3rem !important;
}

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.py-1 {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.py-2 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.py-3 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.py-4 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.py-5 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pt-1 {
  padding-top: 0.25rem !important;
}

.pt-2 {
  padding-top: 0.5rem !important;
}

.pt-3 {
  padding-top: 1rem !important;
}

.pt-4 {
  padding-top: 1.5rem !important;
}

.pt-5 {
  padding-top: 3rem !important;
}

.pe-0 {
  padding-right: 0 !important;
}

.pe-1 {
  padding-right: 0.25rem !important;
}

.pe-2 {
  padding-right: 0.5rem !important;
}

.pe-3 {
  padding-right: 1rem !important;
}

.pe-4 {
  padding-right: 1.5rem !important;
}

.pe-5 {
  padding-right: 3rem !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pb-1 {
  padding-bottom: 0.25rem !important;
}

.pb-2 {
  padding-bottom: 0.5rem !important;
}

.pb-3 {
  padding-bottom: 1rem !important;
}

.pb-4 {
  padding-bottom: 1.5rem !important;
}

.pb-5 {
  padding-bottom: 3rem !important;
}

.ps-0 {
  padding-left: 0 !important;
}

.ps-1 {
  padding-left: 0.25rem !important;
}

.ps-2 {
  padding-left: 0.5rem !important;
}

.ps-3 {
  padding-left: 1rem !important;
}

.ps-4 {
  padding-left: 1.5rem !important;
}

.ps-5 {
  padding-left: 3rem !important;
}

.gap-0 {
  gap: 0 !important;
}

.gap-1 {
  gap: 0.25rem !important;
}

.gap-2 {
  gap: 0.5rem !important;
}

.gap-3 {
  gap: 1rem !important;
}

.gap-4 {
  gap: 1.5rem !important;
}

.gap-5 {
  gap: 3rem !important;
}

.row-gap-0 {
  row-gap: 0 !important;
}

.row-gap-1 {
  row-gap: 0.25rem !important;
}

.row-gap-2 {
  row-gap: 0.5rem !important;
}

.row-gap-3 {
  row-gap: 1rem !important;
}

.row-gap-4 {
  row-gap: 1.5rem !important;
}

.row-gap-5 {
  row-gap: 3rem !important;
}

.column-gap-0 {
  -moz-column-gap: 0 !important;
       column-gap: 0 !important;
}

.column-gap-1 {
  -moz-column-gap: 0.25rem !important;
       column-gap: 0.25rem !important;
}

.column-gap-2 {
  -moz-column-gap: 0.5rem !important;
       column-gap: 0.5rem !important;
}

.column-gap-3 {
  -moz-column-gap: 1rem !important;
       column-gap: 1rem !important;
}

.column-gap-4 {
  -moz-column-gap: 1.5rem !important;
       column-gap: 1.5rem !important;
}

.column-gap-5 {
  -moz-column-gap: 3rem !important;
       column-gap: 3rem !important;
}

.font-monospace {
  font-family: var(--bs-font-monospace) !important;
}

.fs-1 {
  font-size: calc(1.375rem + 1.5vw) !important;
}

.fs-2 {
  font-size: calc(1.325rem + 0.9vw) !important;
}

.fs-3 {
  font-size: calc(1.3rem + 0.6vw) !important;
}

.fs-4 {
  font-size: calc(1.275rem + 0.3vw) !important;
}

.fs-5 {
  font-size: 1.25rem !important;
}

.fs-6 {
  font-size: 1rem !important;
}

.fst-italic {
  font-style: italic !important;
}

.fst-normal {
  font-style: normal !important;
}

.fw-lighter {
  font-weight: lighter !important;
}

.fw-light {
  font-weight: 300 !important;
}

.fw-normal {
  font-weight: 400 !important;
}

.fw-medium {
  font-weight: 500 !important;
}

.fw-semibold {
  font-weight: 600 !important;
}

.fw-bold {
  font-weight: 700 !important;
}

.fw-bolder {
  font-weight: bolder !important;
}

.lh-1 {
  line-height: 1 !important;
}

.lh-sm {
  line-height: 1.25 !important;
}

.lh-base {
  line-height: 1.5 !important;
}

.lh-lg {
  line-height: 2 !important;
}

.text-start {
  text-align: left !important;
}

.text-end {
  text-align: right !important;
}

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

.text-decoration-none {
  text-decoration: none !important;
}

.text-decoration-underline {
  text-decoration: underline !important;
}

.text-decoration-line-through {
  text-decoration: line-through !important;
}

.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

/* rtl:begin:remove */
.text-break {
  word-wrap: break-word !important;
  word-break: break-word !important;
}

/* rtl:end:remove */
.text-primary {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
}

.text-secondary {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;
}

.text-success {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;
}

.text-info {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;
}

.text-warning {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;
}

.text-danger {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;
}

.text-light {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;
}

.text-dark {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
}

.text-black {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;
}

.text-white {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
}

.text-body {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;
}

.text-muted {
  --bs-text-opacity: 1;
  color: var(--bs-secondary-color) !important;
}

.text-black-50 {
  --bs-text-opacity: 1;
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  --bs-text-opacity: 1;
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-body-secondary {
  --bs-text-opacity: 1;
  color: var(--bs-secondary-color) !important;
}

.text-body-tertiary {
  --bs-text-opacity: 1;
  color: var(--bs-tertiary-color) !important;
}

.text-body-emphasis {
  --bs-text-opacity: 1;
  color: var(--bs-emphasis-color) !important;
}

.text-reset {
  --bs-text-opacity: 1;
  color: inherit !important;
}

.text-opacity-25 {
  --bs-text-opacity: 0.25;
}

.text-opacity-50 {
  --bs-text-opacity: 0.5;
}

.text-opacity-75 {
  --bs-text-opacity: 0.75;
}

.text-opacity-100 {
  --bs-text-opacity: 1;
}

.text-primary-emphasis {
  color: var(--bs-primary-text-emphasis) !important;
}

.text-secondary-emphasis {
  color: var(--bs-secondary-text-emphasis) !important;
}

.text-success-emphasis {
  color: var(--bs-success-text-emphasis) !important;
}

.text-info-emphasis {
  color: var(--bs-info-text-emphasis) !important;
}

.text-warning-emphasis {
  color: var(--bs-warning-text-emphasis) !important;
}

.text-danger-emphasis {
  color: var(--bs-danger-text-emphasis) !important;
}

.text-light-emphasis {
  color: var(--bs-light-text-emphasis) !important;
}

.text-dark-emphasis {
  color: var(--bs-dark-text-emphasis) !important;
}

.link-opacity-10 {
  --bs-link-opacity: 0.1;
}

.link-opacity-10-hover:hover {
  --bs-link-opacity: 0.1;
}

.link-opacity-25 {
  --bs-link-opacity: 0.25;
}

.link-opacity-25-hover:hover {
  --bs-link-opacity: 0.25;
}

.link-opacity-50 {
  --bs-link-opacity: 0.5;
}

.link-opacity-50-hover:hover {
  --bs-link-opacity: 0.5;
}

.link-opacity-75 {
  --bs-link-opacity: 0.75;
}

.link-opacity-75-hover:hover {
  --bs-link-opacity: 0.75;
}

.link-opacity-100 {
  --bs-link-opacity: 1;
}

.link-opacity-100-hover:hover {
  --bs-link-opacity: 1;
}

.link-offset-1 {
  text-underline-offset: 0.125em !important;
}

.link-offset-1-hover:hover {
  text-underline-offset: 0.125em !important;
}

.link-offset-2 {
  text-underline-offset: 0.25em !important;
}

.link-offset-2-hover:hover {
  text-underline-offset: 0.25em !important;
}

.link-offset-3 {
  text-underline-offset: 0.375em !important;
}

.link-offset-3-hover:hover {
  text-underline-offset: 0.375em !important;
}

.link-underline-primary {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-secondary {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-success {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-info {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-warning {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-danger {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-light {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-dark {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.link-underline-opacity-0 {
  --bs-link-underline-opacity: 0;
}

.link-underline-opacity-0-hover:hover {
  --bs-link-underline-opacity: 0;
}

.link-underline-opacity-10 {
  --bs-link-underline-opacity: 0.1;
}

.link-underline-opacity-10-hover:hover {
  --bs-link-underline-opacity: 0.1;
}

.link-underline-opacity-25 {
  --bs-link-underline-opacity: 0.25;
}

.link-underline-opacity-25-hover:hover {
  --bs-link-underline-opacity: 0.25;
}

.link-underline-opacity-50 {
  --bs-link-underline-opacity: 0.5;
}

.link-underline-opacity-50-hover:hover {
  --bs-link-underline-opacity: 0.5;
}

.link-underline-opacity-75 {
  --bs-link-underline-opacity: 0.75;
}

.link-underline-opacity-75-hover:hover {
  --bs-link-underline-opacity: 0.75;
}

.link-underline-opacity-100 {
  --bs-link-underline-opacity: 1;
}

.link-underline-opacity-100-hover:hover {
  --bs-link-underline-opacity: 1;
}

.bg-primary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-secondary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-success {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;
}

.bg-info {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;
}

.bg-warning {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;
}

.bg-danger {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;
}

.bg-light {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;
}

.bg-dark {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;
}

.bg-black {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;
}

.bg-white {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;
}

.bg-body {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important;
}

.bg-transparent {
  --bs-bg-opacity: 1;
  background-color: transparent !important;
}

.bg-body-secondary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important;
}

.bg-body-tertiary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important;
}

.bg-opacity-10 {
  --bs-bg-opacity: 0.1;
}

.bg-opacity-25 {
  --bs-bg-opacity: 0.25;
}

.bg-opacity-50 {
  --bs-bg-opacity: 0.5;
}

.bg-opacity-75 {
  --bs-bg-opacity: 0.75;
}

.bg-opacity-100 {
  --bs-bg-opacity: 1;
}

.bg-primary-subtle {
  background-color: var(--bs-primary-bg-subtle) !important;
}

.bg-secondary-subtle {
  background-color: var(--bs-secondary-bg-subtle) !important;
}

.bg-success-subtle {
  background-color: var(--bs-success-bg-subtle) !important;
}

.bg-info-subtle {
  background-color: var(--bs-info-bg-subtle) !important;
}

.bg-warning-subtle {
  background-color: var(--bs-warning-bg-subtle) !important;
}

.bg-danger-subtle {
  background-color: var(--bs-danger-bg-subtle) !important;
}

.bg-light-subtle {
  background-color: var(--bs-light-bg-subtle) !important;
}

.bg-dark-subtle {
  background-color: var(--bs-dark-bg-subtle) !important;
}

.bg-gradient {
  background-image: var(--bs-gradient) !important;
}

.user-select-all {
  -webkit-user-select: all !important;
     -moz-user-select: all !important;
          user-select: all !important;
}

.user-select-auto {
  -webkit-user-select: auto !important;
     -moz-user-select: auto !important;
          user-select: auto !important;
}

.user-select-none {
  -webkit-user-select: none !important;
     -moz-user-select: none !important;
          user-select: none !important;
}

.pe-none {
  pointer-events: none !important;
}

.pe-auto {
  pointer-events: auto !important;
}

.rounded {
  border-radius: var(--bs-border-radius) !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.rounded-1 {
  border-radius: var(--bs-border-radius-sm) !important;
}

.rounded-2 {
  border-radius: var(--bs-border-radius) !important;
}

.rounded-3 {
  border-radius: var(--bs-border-radius-lg) !important;
}

.rounded-4 {
  border-radius: var(--bs-border-radius-xl) !important;
}

.rounded-5 {
  border-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: var(--bs-border-radius-pill) !important;
}

.rounded-top {
  border-top-left-radius: var(--bs-border-radius) !important;
  border-top-right-radius: var(--bs-border-radius) !important;
}

.rounded-top-0 {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}

.rounded-top-1 {
  border-top-left-radius: var(--bs-border-radius-sm) !important;
  border-top-right-radius: var(--bs-border-radius-sm) !important;
}

.rounded-top-2 {
  border-top-left-radius: var(--bs-border-radius) !important;
  border-top-right-radius: var(--bs-border-radius) !important;
}

.rounded-top-3 {
  border-top-left-radius: var(--bs-border-radius-lg) !important;
  border-top-right-radius: var(--bs-border-radius-lg) !important;
}

.rounded-top-4 {
  border-top-left-radius: var(--bs-border-radius-xl) !important;
  border-top-right-radius: var(--bs-border-radius-xl) !important;
}

.rounded-top-5 {
  border-top-left-radius: var(--bs-border-radius-xxl) !important;
  border-top-right-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-top-circle {
  border-top-left-radius: 50% !important;
  border-top-right-radius: 50% !important;
}

.rounded-top-pill {
  border-top-left-radius: var(--bs-border-radius-pill) !important;
  border-top-right-radius: var(--bs-border-radius-pill) !important;
}

.rounded-end {
  border-top-right-radius: var(--bs-border-radius) !important;
  border-bottom-right-radius: var(--bs-border-radius) !important;
}

.rounded-end-0 {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.rounded-end-1 {
  border-top-right-radius: var(--bs-border-radius-sm) !important;
  border-bottom-right-radius: var(--bs-border-radius-sm) !important;
}

.rounded-end-2 {
  border-top-right-radius: var(--bs-border-radius) !important;
  border-bottom-right-radius: var(--bs-border-radius) !important;
}

.rounded-end-3 {
  border-top-right-radius: var(--bs-border-radius-lg) !important;
  border-bottom-right-radius: var(--bs-border-radius-lg) !important;
}

.rounded-end-4 {
  border-top-right-radius: var(--bs-border-radius-xl) !important;
  border-bottom-right-radius: var(--bs-border-radius-xl) !important;
}

.rounded-end-5 {
  border-top-right-radius: var(--bs-border-radius-xxl) !important;
  border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-end-circle {
  border-top-right-radius: 50% !important;
  border-bottom-right-radius: 50% !important;
}

.rounded-end-pill {
  border-top-right-radius: var(--bs-border-radius-pill) !important;
  border-bottom-right-radius: var(--bs-border-radius-pill) !important;
}

.rounded-bottom {
  border-bottom-right-radius: var(--bs-border-radius) !important;
  border-bottom-left-radius: var(--bs-border-radius) !important;
}

.rounded-bottom-0 {
  border-bottom-right-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.rounded-bottom-1 {
  border-bottom-right-radius: var(--bs-border-radius-sm) !important;
  border-bottom-left-radius: var(--bs-border-radius-sm) !important;
}

.rounded-bottom-2 {
  border-bottom-right-radius: var(--bs-border-radius) !important;
  border-bottom-left-radius: var(--bs-border-radius) !important;
}

.rounded-bottom-3 {
  border-bottom-right-radius: var(--bs-border-radius-lg) !important;
  border-bottom-left-radius: var(--bs-border-radius-lg) !important;
}

.rounded-bottom-4 {
  border-bottom-right-radius: var(--bs-border-radius-xl) !important;
  border-bottom-left-radius: var(--bs-border-radius-xl) !important;
}

.rounded-bottom-5 {
  border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
  border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-bottom-circle {
  border-bottom-right-radius: 50% !important;
  border-bottom-left-radius: 50% !important;
}

.rounded-bottom-pill {
  border-bottom-right-radius: var(--bs-border-radius-pill) !important;
  border-bottom-left-radius: var(--bs-border-radius-pill) !important;
}

.rounded-start {
  border-bottom-left-radius: var(--bs-border-radius) !important;
  border-top-left-radius: var(--bs-border-radius) !important;
}

.rounded-start-0 {
  border-bottom-left-radius: 0 !important;
  border-top-left-radius: 0 !important;
}

.rounded-start-1 {
  border-bottom-left-radius: var(--bs-border-radius-sm) !important;
  border-top-left-radius: var(--bs-border-radius-sm) !important;
}

.rounded-start-2 {
  border-bottom-left-radius: var(--bs-border-radius) !important;
  border-top-left-radius: var(--bs-border-radius) !important;
}

.rounded-start-3 {
  border-bottom-left-radius: var(--bs-border-radius-lg) !important;
  border-top-left-radius: var(--bs-border-radius-lg) !important;
}

.rounded-start-4 {
  border-bottom-left-radius: var(--bs-border-radius-xl) !important;
  border-top-left-radius: var(--bs-border-radius-xl) !important;
}

.rounded-start-5 {
  border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
  border-top-left-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-start-circle {
  border-bottom-left-radius: 50% !important;
  border-top-left-radius: 50% !important;
}

.rounded-start-pill {
  border-bottom-left-radius: var(--bs-border-radius-pill) !important;
  border-top-left-radius: var(--bs-border-radius-pill) !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

.z-n1 {
  z-index: -1 !important;
}

.z-0 {
  z-index: 0 !important;
}

.z-1 {
  z-index: 1 !important;
}

.z-2 {
  z-index: 2 !important;
}

.z-3 {
  z-index: 3 !important;
}

@media (min-width: 576px) {
  .float-sm-start {
    float: left !important;
  }
  .float-sm-end {
    float: right !important;
  }
  .float-sm-none {
    float: none !important;
  }
  .object-fit-sm-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-sm-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-sm-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-sm-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-sm-none {
    -o-object-fit: none !important;
       object-fit: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-grid {
    display: grid !important;
  }
  .d-sm-inline-grid {
    display: inline-grid !important;
  }
  .d-sm-table {
    display: table !important;
  }
  .d-sm-table-row {
    display: table-row !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
  .d-sm-flex {
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: inline-flex !important;
  }
  .d-sm-none {
    display: none !important;
  }
  .flex-sm-fill {
    flex: 1 1 auto !important;
  }
  .flex-sm-row {
    flex-direction: row !important;
  }
  .flex-sm-column {
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-sm-start {
    justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    justify-content: center !important;
  }
  .justify-content-sm-between {
    justify-content: space-between !important;
  }
  .justify-content-sm-around {
    justify-content: space-around !important;
  }
  .justify-content-sm-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-sm-start {
    align-items: flex-start !important;
  }
  .align-items-sm-end {
    align-items: flex-end !important;
  }
  .align-items-sm-center {
    align-items: center !important;
  }
  .align-items-sm-baseline {
    align-items: baseline !important;
  }
  .align-items-sm-stretch {
    align-items: stretch !important;
  }
  .align-content-sm-start {
    align-content: flex-start !important;
  }
  .align-content-sm-end {
    align-content: flex-end !important;
  }
  .align-content-sm-center {
    align-content: center !important;
  }
  .align-content-sm-between {
    align-content: space-between !important;
  }
  .align-content-sm-around {
    align-content: space-around !important;
  }
  .align-content-sm-stretch {
    align-content: stretch !important;
  }
  .align-self-sm-auto {
    align-self: auto !important;
  }
  .align-self-sm-start {
    align-self: flex-start !important;
  }
  .align-self-sm-end {
    align-self: flex-end !important;
  }
  .align-self-sm-center {
    align-self: center !important;
  }
  .align-self-sm-baseline {
    align-self: baseline !important;
  }
  .align-self-sm-stretch {
    align-self: stretch !important;
  }
  .order-sm-first {
    order: -1 !important;
  }
  .order-sm-0 {
    order: 0 !important;
  }
  .order-sm-1 {
    order: 1 !important;
  }
  .order-sm-2 {
    order: 2 !important;
  }
  .order-sm-3 {
    order: 3 !important;
  }
  .order-sm-4 {
    order: 4 !important;
  }
  .order-sm-5 {
    order: 5 !important;
  }
  .order-sm-last {
    order: 6 !important;
  }
  .m-sm-0 {
    margin: 0 !important;
  }
  .m-sm-1 {
    margin: 0.25rem !important;
  }
  .m-sm-2 {
    margin: 0.5rem !important;
  }
  .m-sm-3 {
    margin: 1rem !important;
  }
  .m-sm-4 {
    margin: 1.5rem !important;
  }
  .m-sm-5 {
    margin: 3rem !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mx-sm-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-sm-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-sm-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-sm-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-sm-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-sm-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-sm-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-sm-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-sm-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-sm-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-sm-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-sm-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-sm-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-sm-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-sm-0 {
    margin-top: 0 !important;
  }
  .mt-sm-1 {
    margin-top: 0.25rem !important;
  }
  .mt-sm-2 {
    margin-top: 0.5rem !important;
  }
  .mt-sm-3 {
    margin-top: 1rem !important;
  }
  .mt-sm-4 {
    margin-top: 1.5rem !important;
  }
  .mt-sm-5 {
    margin-top: 3rem !important;
  }
  .mt-sm-auto {
    margin-top: auto !important;
  }
  .me-sm-0 {
    margin-right: 0 !important;
  }
  .me-sm-1 {
    margin-right: 0.25rem !important;
  }
  .me-sm-2 {
    margin-right: 0.5rem !important;
  }
  .me-sm-3 {
    margin-right: 1rem !important;
  }
  .me-sm-4 {
    margin-right: 1.5rem !important;
  }
  .me-sm-5 {
    margin-right: 3rem !important;
  }
  .me-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-0 {
    margin-bottom: 0 !important;
  }
  .mb-sm-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-sm-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-sm-3 {
    margin-bottom: 1rem !important;
  }
  .mb-sm-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-sm-5 {
    margin-bottom: 3rem !important;
  }
  .mb-sm-auto {
    margin-bottom: auto !important;
  }
  .ms-sm-0 {
    margin-left: 0 !important;
  }
  .ms-sm-1 {
    margin-left: 0.25rem !important;
  }
  .ms-sm-2 {
    margin-left: 0.5rem !important;
  }
  .ms-sm-3 {
    margin-left: 1rem !important;
  }
  .ms-sm-4 {
    margin-left: 1.5rem !important;
  }
  .ms-sm-5 {
    margin-left: 3rem !important;
  }
  .ms-sm-auto {
    margin-left: auto !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .p-sm-1 {
    padding: 0.25rem !important;
  }
  .p-sm-2 {
    padding: 0.5rem !important;
  }
  .p-sm-3 {
    padding: 1rem !important;
  }
  .p-sm-4 {
    padding: 1.5rem !important;
  }
  .p-sm-5 {
    padding: 3rem !important;
  }
  .px-sm-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-sm-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-sm-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-sm-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-sm-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-sm-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-sm-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-sm-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-sm-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-sm-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-sm-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-sm-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-sm-0 {
    padding-top: 0 !important;
  }
  .pt-sm-1 {
    padding-top: 0.25rem !important;
  }
  .pt-sm-2 {
    padding-top: 0.5rem !important;
  }
  .pt-sm-3 {
    padding-top: 1rem !important;
  }
  .pt-sm-4 {
    padding-top: 1.5rem !important;
  }
  .pt-sm-5 {
    padding-top: 3rem !important;
  }
  .pe-sm-0 {
    padding-right: 0 !important;
  }
  .pe-sm-1 {
    padding-right: 0.25rem !important;
  }
  .pe-sm-2 {
    padding-right: 0.5rem !important;
  }
  .pe-sm-3 {
    padding-right: 1rem !important;
  }
  .pe-sm-4 {
    padding-right: 1.5rem !important;
  }
  .pe-sm-5 {
    padding-right: 3rem !important;
  }
  .pb-sm-0 {
    padding-bottom: 0 !important;
  }
  .pb-sm-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-sm-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-sm-3 {
    padding-bottom: 1rem !important;
  }
  .pb-sm-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-sm-5 {
    padding-bottom: 3rem !important;
  }
  .ps-sm-0 {
    padding-left: 0 !important;
  }
  .ps-sm-1 {
    padding-left: 0.25rem !important;
  }
  .ps-sm-2 {
    padding-left: 0.5rem !important;
  }
  .ps-sm-3 {
    padding-left: 1rem !important;
  }
  .ps-sm-4 {
    padding-left: 1.5rem !important;
  }
  .ps-sm-5 {
    padding-left: 3rem !important;
  }
  .gap-sm-0 {
    gap: 0 !important;
  }
  .gap-sm-1 {
    gap: 0.25rem !important;
  }
  .gap-sm-2 {
    gap: 0.5rem !important;
  }
  .gap-sm-3 {
    gap: 1rem !important;
  }
  .gap-sm-4 {
    gap: 1.5rem !important;
  }
  .gap-sm-5 {
    gap: 3rem !important;
  }
  .row-gap-sm-0 {
    row-gap: 0 !important;
  }
  .row-gap-sm-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-sm-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-sm-3 {
    row-gap: 1rem !important;
  }
  .row-gap-sm-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-sm-5 {
    row-gap: 3rem !important;
  }
  .column-gap-sm-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-sm-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-sm-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-sm-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-sm-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-sm-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 3rem !important;
  }
  .text-sm-start {
    text-align: left !important;
  }
  .text-sm-end {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .float-md-start {
    float: left !important;
  }
  .float-md-end {
    float: right !important;
  }
  .float-md-none {
    float: none !important;
  }
  .object-fit-md-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-md-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-md-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-md-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-md-none {
    -o-object-fit: none !important;
       object-fit: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-grid {
    display: grid !important;
  }
  .d-md-inline-grid {
    display: inline-grid !important;
  }
  .d-md-table {
    display: table !important;
  }
  .d-md-table-row {
    display: table-row !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
  .d-md-flex {
    display: flex !important;
  }
  .d-md-inline-flex {
    display: inline-flex !important;
  }
  .d-md-none {
    display: none !important;
  }
  .flex-md-fill {
    flex: 1 1 auto !important;
  }
  .flex-md-row {
    flex-direction: row !important;
  }
  .flex-md-column {
    flex-direction: column !important;
  }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-md-wrap {
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-md-start {
    justify-content: flex-start !important;
  }
  .justify-content-md-end {
    justify-content: flex-end !important;
  }
  .justify-content-md-center {
    justify-content: center !important;
  }
  .justify-content-md-between {
    justify-content: space-between !important;
  }
  .justify-content-md-around {
    justify-content: space-around !important;
  }
  .justify-content-md-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-md-start {
    align-items: flex-start !important;
  }
  .align-items-md-end {
    align-items: flex-end !important;
  }
  .align-items-md-center {
    align-items: center !important;
  }
  .align-items-md-baseline {
    align-items: baseline !important;
  }
  .align-items-md-stretch {
    align-items: stretch !important;
  }
  .align-content-md-start {
    align-content: flex-start !important;
  }
  .align-content-md-end {
    align-content: flex-end !important;
  }
  .align-content-md-center {
    align-content: center !important;
  }
  .align-content-md-between {
    align-content: space-between !important;
  }
  .align-content-md-around {
    align-content: space-around !important;
  }
  .align-content-md-stretch {
    align-content: stretch !important;
  }
  .align-self-md-auto {
    align-self: auto !important;
  }
  .align-self-md-start {
    align-self: flex-start !important;
  }
  .align-self-md-end {
    align-self: flex-end !important;
  }
  .align-self-md-center {
    align-self: center !important;
  }
  .align-self-md-baseline {
    align-self: baseline !important;
  }
  .align-self-md-stretch {
    align-self: stretch !important;
  }
  .order-md-first {
    order: -1 !important;
  }
  .order-md-0 {
    order: 0 !important;
  }
  .order-md-1 {
    order: 1 !important;
  }
  .order-md-2 {
    order: 2 !important;
  }
  .order-md-3 {
    order: 3 !important;
  }
  .order-md-4 {
    order: 4 !important;
  }
  .order-md-5 {
    order: 5 !important;
  }
  .order-md-last {
    order: 6 !important;
  }
  .m-md-0 {
    margin: 0 !important;
  }
  .m-md-1 {
    margin: 0.25rem !important;
  }
  .m-md-2 {
    margin: 0.5rem !important;
  }
  .m-md-3 {
    margin: 1rem !important;
  }
  .m-md-4 {
    margin: 1.5rem !important;
  }
  .m-md-5 {
    margin: 3rem !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mx-md-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-md-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-md-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-md-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-md-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-md-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-md-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-md-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-md-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-md-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-md-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-md-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-md-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-md-0 {
    margin-top: 0 !important;
  }
  .mt-md-1 {
    margin-top: 0.25rem !important;
  }
  .mt-md-2 {
    margin-top: 0.5rem !important;
  }
  .mt-md-3 {
    margin-top: 1rem !important;
  }
  .mt-md-4 {
    margin-top: 1.5rem !important;
  }
  .mt-md-5 {
    margin-top: 3rem !important;
  }
  .mt-md-auto {
    margin-top: auto !important;
  }
  .me-md-0 {
    margin-right: 0 !important;
  }
  .me-md-1 {
    margin-right: 0.25rem !important;
  }
  .me-md-2 {
    margin-right: 0.5rem !important;
  }
  .me-md-3 {
    margin-right: 1rem !important;
  }
  .me-md-4 {
    margin-right: 1.5rem !important;
  }
  .me-md-5 {
    margin-right: 3rem !important;
  }
  .me-md-auto {
    margin-right: auto !important;
  }
  .mb-md-0 {
    margin-bottom: 0 !important;
  }
  .mb-md-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-md-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-md-3 {
    margin-bottom: 1rem !important;
  }
  .mb-md-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-md-5 {
    margin-bottom: 3rem !important;
  }
  .mb-md-auto {
    margin-bottom: auto !important;
  }
  .ms-md-0 {
    margin-left: 0 !important;
  }
  .ms-md-1 {
    margin-left: 0.25rem !important;
  }
  .ms-md-2 {
    margin-left: 0.5rem !important;
  }
  .ms-md-3 {
    margin-left: 1rem !important;
  }
  .ms-md-4 {
    margin-left: 1.5rem !important;
  }
  .ms-md-5 {
    margin-left: 3rem !important;
  }
  .ms-md-auto {
    margin-left: auto !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .p-md-1 {
    padding: 0.25rem !important;
  }
  .p-md-2 {
    padding: 0.5rem !important;
  }
  .p-md-3 {
    padding: 1rem !important;
  }
  .p-md-4 {
    padding: 1.5rem !important;
  }
  .p-md-5 {
    padding: 3rem !important;
  }
  .px-md-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-md-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-md-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-md-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-md-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-md-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-md-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-md-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-md-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-md-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-md-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-md-0 {
    padding-top: 0 !important;
  }
  .pt-md-1 {
    padding-top: 0.25rem !important;
  }
  .pt-md-2 {
    padding-top: 0.5rem !important;
  }
  .pt-md-3 {
    padding-top: 1rem !important;
  }
  .pt-md-4 {
    padding-top: 1.5rem !important;
  }
  .pt-md-5 {
    padding-top: 3rem !important;
  }
  .pe-md-0 {
    padding-right: 0 !important;
  }
  .pe-md-1 {
    padding-right: 0.25rem !important;
  }
  .pe-md-2 {
    padding-right: 0.5rem !important;
  }
  .pe-md-3 {
    padding-right: 1rem !important;
  }
  .pe-md-4 {
    padding-right: 1.5rem !important;
  }
  .pe-md-5 {
    padding-right: 3rem !important;
  }
  .pb-md-0 {
    padding-bottom: 0 !important;
  }
  .pb-md-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-md-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-md-3 {
    padding-bottom: 1rem !important;
  }
  .pb-md-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-md-5 {
    padding-bottom: 3rem !important;
  }
  .ps-md-0 {
    padding-left: 0 !important;
  }
  .ps-md-1 {
    padding-left: 0.25rem !important;
  }
  .ps-md-2 {
    padding-left: 0.5rem !important;
  }
  .ps-md-3 {
    padding-left: 1rem !important;
  }
  .ps-md-4 {
    padding-left: 1.5rem !important;
  }
  .ps-md-5 {
    padding-left: 3rem !important;
  }
  .gap-md-0 {
    gap: 0 !important;
  }
  .gap-md-1 {
    gap: 0.25rem !important;
  }
  .gap-md-2 {
    gap: 0.5rem !important;
  }
  .gap-md-3 {
    gap: 1rem !important;
  }
  .gap-md-4 {
    gap: 1.5rem !important;
  }
  .gap-md-5 {
    gap: 3rem !important;
  }
  .row-gap-md-0 {
    row-gap: 0 !important;
  }
  .row-gap-md-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-md-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-md-3 {
    row-gap: 1rem !important;
  }
  .row-gap-md-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-md-5 {
    row-gap: 3rem !important;
  }
  .column-gap-md-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-md-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-md-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-md-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-md-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-md-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 3rem !important;
  }
  .text-md-start {
    text-align: left !important;
  }
  .text-md-end {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .float-lg-start {
    float: left !important;
  }
  .float-lg-end {
    float: right !important;
  }
  .float-lg-none {
    float: none !important;
  }
  .object-fit-lg-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-lg-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-lg-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-lg-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-lg-none {
    -o-object-fit: none !important;
       object-fit: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-grid {
    display: grid !important;
  }
  .d-lg-inline-grid {
    display: inline-grid !important;
  }
  .d-lg-table {
    display: table !important;
  }
  .d-lg-table-row {
    display: table-row !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
  .d-lg-flex {
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: inline-flex !important;
  }
  .d-lg-none {
    display: none !important;
  }
  .flex-lg-fill {
    flex: 1 1 auto !important;
  }
  .flex-lg-row {
    flex-direction: row !important;
  }
  .flex-lg-column {
    flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-lg-start {
    justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    justify-content: center !important;
  }
  .justify-content-lg-between {
    justify-content: space-between !important;
  }
  .justify-content-lg-around {
    justify-content: space-around !important;
  }
  .justify-content-lg-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-lg-start {
    align-items: flex-start !important;
  }
  .align-items-lg-end {
    align-items: flex-end !important;
  }
  .align-items-lg-center {
    align-items: center !important;
  }
  .align-items-lg-baseline {
    align-items: baseline !important;
  }
  .align-items-lg-stretch {
    align-items: stretch !important;
  }
  .align-content-lg-start {
    align-content: flex-start !important;
  }
  .align-content-lg-end {
    align-content: flex-end !important;
  }
  .align-content-lg-center {
    align-content: center !important;
  }
  .align-content-lg-between {
    align-content: space-between !important;
  }
  .align-content-lg-around {
    align-content: space-around !important;
  }
  .align-content-lg-stretch {
    align-content: stretch !important;
  }
  .align-self-lg-auto {
    align-self: auto !important;
  }
  .align-self-lg-start {
    align-self: flex-start !important;
  }
  .align-self-lg-end {
    align-self: flex-end !important;
  }
  .align-self-lg-center {
    align-self: center !important;
  }
  .align-self-lg-baseline {
    align-self: baseline !important;
  }
  .align-self-lg-stretch {
    align-self: stretch !important;
  }
  .order-lg-first {
    order: -1 !important;
  }
  .order-lg-0 {
    order: 0 !important;
  }
  .order-lg-1 {
    order: 1 !important;
  }
  .order-lg-2 {
    order: 2 !important;
  }
  .order-lg-3 {
    order: 3 !important;
  }
  .order-lg-4 {
    order: 4 !important;
  }
  .order-lg-5 {
    order: 5 !important;
  }
  .order-lg-last {
    order: 6 !important;
  }
  .m-lg-0 {
    margin: 0 !important;
  }
  .m-lg-1 {
    margin: 0.25rem !important;
  }
  .m-lg-2 {
    margin: 0.5rem !important;
  }
  .m-lg-3 {
    margin: 1rem !important;
  }
  .m-lg-4 {
    margin: 1.5rem !important;
  }
  .m-lg-5 {
    margin: 3rem !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mx-lg-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-lg-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-lg-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-lg-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-lg-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-lg-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-lg-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-lg-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-lg-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-lg-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-lg-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-lg-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-lg-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-lg-0 {
    margin-top: 0 !important;
  }
  .mt-lg-1 {
    margin-top: 0.25rem !important;
  }
  .mt-lg-2 {
    margin-top: 0.5rem !important;
  }
  .mt-lg-3 {
    margin-top: 1rem !important;
  }
  .mt-lg-4 {
    margin-top: 1.5rem !important;
  }
  .mt-lg-5 {
    margin-top: 3rem !important;
  }
  .mt-lg-auto {
    margin-top: auto !important;
  }
  .me-lg-0 {
    margin-right: 0 !important;
  }
  .me-lg-1 {
    margin-right: 0.25rem !important;
  }
  .me-lg-2 {
    margin-right: 0.5rem !important;
  }
  .me-lg-3 {
    margin-right: 1rem !important;
  }
  .me-lg-4 {
    margin-right: 1.5rem !important;
  }
  .me-lg-5 {
    margin-right: 3rem !important;
  }
  .me-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-0 {
    margin-bottom: 0 !important;
  }
  .mb-lg-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-lg-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-lg-3 {
    margin-bottom: 1rem !important;
  }
  .mb-lg-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-lg-5 {
    margin-bottom: 3rem !important;
  }
  .mb-lg-auto {
    margin-bottom: auto !important;
  }
  .ms-lg-0 {
    margin-left: 0 !important;
  }
  .ms-lg-1 {
    margin-left: 0.25rem !important;
  }
  .ms-lg-2 {
    margin-left: 0.5rem !important;
  }
  .ms-lg-3 {
    margin-left: 1rem !important;
  }
  .ms-lg-4 {
    margin-left: 1.5rem !important;
  }
  .ms-lg-5 {
    margin-left: 3rem !important;
  }
  .ms-lg-auto {
    margin-left: auto !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .p-lg-1 {
    padding: 0.25rem !important;
  }
  .p-lg-2 {
    padding: 0.5rem !important;
  }
  .p-lg-3 {
    padding: 1rem !important;
  }
  .p-lg-4 {
    padding: 1.5rem !important;
  }
  .p-lg-5 {
    padding: 3rem !important;
  }
  .px-lg-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-lg-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-lg-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-lg-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-lg-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-lg-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-lg-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-lg-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-lg-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-lg-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-lg-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-lg-0 {
    padding-top: 0 !important;
  }
  .pt-lg-1 {
    padding-top: 0.25rem !important;
  }
  .pt-lg-2 {
    padding-top: 0.5rem !important;
  }
  .pt-lg-3 {
    padding-top: 1rem !important;
  }
  .pt-lg-4 {
    padding-top: 1.5rem !important;
  }
  .pt-lg-5 {
    padding-top: 3rem !important;
  }
  .pe-lg-0 {
    padding-right: 0 !important;
  }
  .pe-lg-1 {
    padding-right: 0.25rem !important;
  }
  .pe-lg-2 {
    padding-right: 0.5rem !important;
  }
  .pe-lg-3 {
    padding-right: 1rem !important;
  }
  .pe-lg-4 {
    padding-right: 1.5rem !important;
  }
  .pe-lg-5 {
    padding-right: 3rem !important;
  }
  .pb-lg-0 {
    padding-bottom: 0 !important;
  }
  .pb-lg-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-lg-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-lg-3 {
    padding-bottom: 1rem !important;
  }
  .pb-lg-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-lg-5 {
    padding-bottom: 3rem !important;
  }
  .ps-lg-0 {
    padding-left: 0 !important;
  }
  .ps-lg-1 {
    padding-left: 0.25rem !important;
  }
  .ps-lg-2 {
    padding-left: 0.5rem !important;
  }
  .ps-lg-3 {
    padding-left: 1rem !important;
  }
  .ps-lg-4 {
    padding-left: 1.5rem !important;
  }
  .ps-lg-5 {
    padding-left: 3rem !important;
  }
  .gap-lg-0 {
    gap: 0 !important;
  }
  .gap-lg-1 {
    gap: 0.25rem !important;
  }
  .gap-lg-2 {
    gap: 0.5rem !important;
  }
  .gap-lg-3 {
    gap: 1rem !important;
  }
  .gap-lg-4 {
    gap: 1.5rem !important;
  }
  .gap-lg-5 {
    gap: 3rem !important;
  }
  .row-gap-lg-0 {
    row-gap: 0 !important;
  }
  .row-gap-lg-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-lg-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-lg-3 {
    row-gap: 1rem !important;
  }
  .row-gap-lg-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-lg-5 {
    row-gap: 3rem !important;
  }
  .column-gap-lg-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-lg-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-lg-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-lg-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-lg-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-lg-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 3rem !important;
  }
  .text-lg-start {
    text-align: left !important;
  }
  .text-lg-end {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .float-xl-start {
    float: left !important;
  }
  .float-xl-end {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
  .object-fit-xl-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-xl-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-xl-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-xl-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-xl-none {
    -o-object-fit: none !important;
       object-fit: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-grid {
    display: grid !important;
  }
  .d-xl-inline-grid {
    display: inline-grid !important;
  }
  .d-xl-table {
    display: table !important;
  }
  .d-xl-table-row {
    display: table-row !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
  .d-xl-flex {
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: inline-flex !important;
  }
  .d-xl-none {
    display: none !important;
  }
  .flex-xl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xl-row {
    flex-direction: row !important;
  }
  .flex-xl-column {
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    justify-content: center !important;
  }
  .justify-content-xl-between {
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    justify-content: space-around !important;
  }
  .justify-content-xl-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-xl-start {
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    align-items: center !important;
  }
  .align-items-xl-baseline {
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    align-items: stretch !important;
  }
  .align-content-xl-start {
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    align-content: center !important;
  }
  .align-content-xl-between {
    align-content: space-between !important;
  }
  .align-content-xl-around {
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    align-self: auto !important;
  }
  .align-self-xl-start {
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    align-self: center !important;
  }
  .align-self-xl-baseline {
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    align-self: stretch !important;
  }
  .order-xl-first {
    order: -1 !important;
  }
  .order-xl-0 {
    order: 0 !important;
  }
  .order-xl-1 {
    order: 1 !important;
  }
  .order-xl-2 {
    order: 2 !important;
  }
  .order-xl-3 {
    order: 3 !important;
  }
  .order-xl-4 {
    order: 4 !important;
  }
  .order-xl-5 {
    order: 5 !important;
  }
  .order-xl-last {
    order: 6 !important;
  }
  .m-xl-0 {
    margin: 0 !important;
  }
  .m-xl-1 {
    margin: 0.25rem !important;
  }
  .m-xl-2 {
    margin: 0.5rem !important;
  }
  .m-xl-3 {
    margin: 1rem !important;
  }
  .m-xl-4 {
    margin: 1.5rem !important;
  }
  .m-xl-5 {
    margin: 3rem !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mx-xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-xl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-xl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-xl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-xl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-xl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-xl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-xl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-xl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-xl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-xl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xl-0 {
    margin-top: 0 !important;
  }
  .mt-xl-1 {
    margin-top: 0.25rem !important;
  }
  .mt-xl-2 {
    margin-top: 0.5rem !important;
  }
  .mt-xl-3 {
    margin-top: 1rem !important;
  }
  .mt-xl-4 {
    margin-top: 1.5rem !important;
  }
  .mt-xl-5 {
    margin-top: 3rem !important;
  }
  .mt-xl-auto {
    margin-top: auto !important;
  }
  .me-xl-0 {
    margin-right: 0 !important;
  }
  .me-xl-1 {
    margin-right: 0.25rem !important;
  }
  .me-xl-2 {
    margin-right: 0.5rem !important;
  }
  .me-xl-3 {
    margin-right: 1rem !important;
  }
  .me-xl-4 {
    margin-right: 1.5rem !important;
  }
  .me-xl-5 {
    margin-right: 3rem !important;
  }
  .me-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-xl-3 {
    margin-bottom: 1rem !important;
  }
  .mb-xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-xl-5 {
    margin-bottom: 3rem !important;
  }
  .mb-xl-auto {
    margin-bottom: auto !important;
  }
  .ms-xl-0 {
    margin-left: 0 !important;
  }
  .ms-xl-1 {
    margin-left: 0.25rem !important;
  }
  .ms-xl-2 {
    margin-left: 0.5rem !important;
  }
  .ms-xl-3 {
    margin-left: 1rem !important;
  }
  .ms-xl-4 {
    margin-left: 1.5rem !important;
  }
  .ms-xl-5 {
    margin-left: 3rem !important;
  }
  .ms-xl-auto {
    margin-left: auto !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .p-xl-1 {
    padding: 0.25rem !important;
  }
  .p-xl-2 {
    padding: 0.5rem !important;
  }
  .p-xl-3 {
    padding: 1rem !important;
  }
  .p-xl-4 {
    padding: 1.5rem !important;
  }
  .p-xl-5 {
    padding: 3rem !important;
  }
  .px-xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-xl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-xl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-xl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-xl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-xl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-xl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-xl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-xl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-xl-0 {
    padding-top: 0 !important;
  }
  .pt-xl-1 {
    padding-top: 0.25rem !important;
  }
  .pt-xl-2 {
    padding-top: 0.5rem !important;
  }
  .pt-xl-3 {
    padding-top: 1rem !important;
  }
  .pt-xl-4 {
    padding-top: 1.5rem !important;
  }
  .pt-xl-5 {
    padding-top: 3rem !important;
  }
  .pe-xl-0 {
    padding-right: 0 !important;
  }
  .pe-xl-1 {
    padding-right: 0.25rem !important;
  }
  .pe-xl-2 {
    padding-right: 0.5rem !important;
  }
  .pe-xl-3 {
    padding-right: 1rem !important;
  }
  .pe-xl-4 {
    padding-right: 1.5rem !important;
  }
  .pe-xl-5 {
    padding-right: 3rem !important;
  }
  .pb-xl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-xl-3 {
    padding-bottom: 1rem !important;
  }
  .pb-xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-xl-5 {
    padding-bottom: 3rem !important;
  }
  .ps-xl-0 {
    padding-left: 0 !important;
  }
  .ps-xl-1 {
    padding-left: 0.25rem !important;
  }
  .ps-xl-2 {
    padding-left: 0.5rem !important;
  }
  .ps-xl-3 {
    padding-left: 1rem !important;
  }
  .ps-xl-4 {
    padding-left: 1.5rem !important;
  }
  .ps-xl-5 {
    padding-left: 3rem !important;
  }
  .gap-xl-0 {
    gap: 0 !important;
  }
  .gap-xl-1 {
    gap: 0.25rem !important;
  }
  .gap-xl-2 {
    gap: 0.5rem !important;
  }
  .gap-xl-3 {
    gap: 1rem !important;
  }
  .gap-xl-4 {
    gap: 1.5rem !important;
  }
  .gap-xl-5 {
    gap: 3rem !important;
  }
  .row-gap-xl-0 {
    row-gap: 0 !important;
  }
  .row-gap-xl-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-xl-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-xl-3 {
    row-gap: 1rem !important;
  }
  .row-gap-xl-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-xl-5 {
    row-gap: 3rem !important;
  }
  .column-gap-xl-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-xl-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-xl-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-xl-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-xl-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-xl-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 3rem !important;
  }
  .text-xl-start {
    text-align: left !important;
  }
  .text-xl-end {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}
@media (min-width: 1400px) {
  .float-xxl-start {
    float: left !important;
  }
  .float-xxl-end {
    float: right !important;
  }
  .float-xxl-none {
    float: none !important;
  }
  .object-fit-xxl-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-xxl-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-xxl-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-xxl-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-xxl-none {
    -o-object-fit: none !important;
       object-fit: none !important;
  }
  .d-xxl-inline {
    display: inline !important;
  }
  .d-xxl-inline-block {
    display: inline-block !important;
  }
  .d-xxl-block {
    display: block !important;
  }
  .d-xxl-grid {
    display: grid !important;
  }
  .d-xxl-inline-grid {
    display: inline-grid !important;
  }
  .d-xxl-table {
    display: table !important;
  }
  .d-xxl-table-row {
    display: table-row !important;
  }
  .d-xxl-table-cell {
    display: table-cell !important;
  }
  .d-xxl-flex {
    display: flex !important;
  }
  .d-xxl-inline-flex {
    display: inline-flex !important;
  }
  .d-xxl-none {
    display: none !important;
  }
  .flex-xxl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xxl-row {
    flex-direction: row !important;
  }
  .flex-xxl-column {
    flex-direction: column !important;
  }
  .flex-xxl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xxl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xxl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xxl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xxl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xxl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-xxl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xxl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-xxl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xxl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xxl-center {
    justify-content: center !important;
  }
  .justify-content-xxl-between {
    justify-content: space-between !important;
  }
  .justify-content-xxl-around {
    justify-content: space-around !important;
  }
  .justify-content-xxl-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-xxl-start {
    align-items: flex-start !important;
  }
  .align-items-xxl-end {
    align-items: flex-end !important;
  }
  .align-items-xxl-center {
    align-items: center !important;
  }
  .align-items-xxl-baseline {
    align-items: baseline !important;
  }
  .align-items-xxl-stretch {
    align-items: stretch !important;
  }
  .align-content-xxl-start {
    align-content: flex-start !important;
  }
  .align-content-xxl-end {
    align-content: flex-end !important;
  }
  .align-content-xxl-center {
    align-content: center !important;
  }
  .align-content-xxl-between {
    align-content: space-between !important;
  }
  .align-content-xxl-around {
    align-content: space-around !important;
  }
  .align-content-xxl-stretch {
    align-content: stretch !important;
  }
  .align-self-xxl-auto {
    align-self: auto !important;
  }
  .align-self-xxl-start {
    align-self: flex-start !important;
  }
  .align-self-xxl-end {
    align-self: flex-end !important;
  }
  .align-self-xxl-center {
    align-self: center !important;
  }
  .align-self-xxl-baseline {
    align-self: baseline !important;
  }
  .align-self-xxl-stretch {
    align-self: stretch !important;
  }
  .order-xxl-first {
    order: -1 !important;
  }
  .order-xxl-0 {
    order: 0 !important;
  }
  .order-xxl-1 {
    order: 1 !important;
  }
  .order-xxl-2 {
    order: 2 !important;
  }
  .order-xxl-3 {
    order: 3 !important;
  }
  .order-xxl-4 {
    order: 4 !important;
  }
  .order-xxl-5 {
    order: 5 !important;
  }
  .order-xxl-last {
    order: 6 !important;
  }
  .m-xxl-0 {
    margin: 0 !important;
  }
  .m-xxl-1 {
    margin: 0.25rem !important;
  }
  .m-xxl-2 {
    margin: 0.5rem !important;
  }
  .m-xxl-3 {
    margin: 1rem !important;
  }
  .m-xxl-4 {
    margin: 1.5rem !important;
  }
  .m-xxl-5 {
    margin: 3rem !important;
  }
  .m-xxl-auto {
    margin: auto !important;
  }
  .mx-xxl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xxl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-xxl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-xxl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-xxl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-xxl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-xxl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-xxl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xxl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-xxl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-xxl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-xxl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-xxl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-xxl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xxl-0 {
    margin-top: 0 !important;
  }
  .mt-xxl-1 {
    margin-top: 0.25rem !important;
  }
  .mt-xxl-2 {
    margin-top: 0.5rem !important;
  }
  .mt-xxl-3 {
    margin-top: 1rem !important;
  }
  .mt-xxl-4 {
    margin-top: 1.5rem !important;
  }
  .mt-xxl-5 {
    margin-top: 3rem !important;
  }
  .mt-xxl-auto {
    margin-top: auto !important;
  }
  .me-xxl-0 {
    margin-right: 0 !important;
  }
  .me-xxl-1 {
    margin-right: 0.25rem !important;
  }
  .me-xxl-2 {
    margin-right: 0.5rem !important;
  }
  .me-xxl-3 {
    margin-right: 1rem !important;
  }
  .me-xxl-4 {
    margin-right: 1.5rem !important;
  }
  .me-xxl-5 {
    margin-right: 3rem !important;
  }
  .me-xxl-auto {
    margin-right: auto !important;
  }
  .mb-xxl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xxl-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-xxl-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-xxl-3 {
    margin-bottom: 1rem !important;
  }
  .mb-xxl-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-xxl-5 {
    margin-bottom: 3rem !important;
  }
  .mb-xxl-auto {
    margin-bottom: auto !important;
  }
  .ms-xxl-0 {
    margin-left: 0 !important;
  }
  .ms-xxl-1 {
    margin-left: 0.25rem !important;
  }
  .ms-xxl-2 {
    margin-left: 0.5rem !important;
  }
  .ms-xxl-3 {
    margin-left: 1rem !important;
  }
  .ms-xxl-4 {
    margin-left: 1.5rem !important;
  }
  .ms-xxl-5 {
    margin-left: 3rem !important;
  }
  .ms-xxl-auto {
    margin-left: auto !important;
  }
  .p-xxl-0 {
    padding: 0 !important;
  }
  .p-xxl-1 {
    padding: 0.25rem !important;
  }
  .p-xxl-2 {
    padding: 0.5rem !important;
  }
  .p-xxl-3 {
    padding: 1rem !important;
  }
  .p-xxl-4 {
    padding: 1.5rem !important;
  }
  .p-xxl-5 {
    padding: 3rem !important;
  }
  .px-xxl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xxl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-xxl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-xxl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-xxl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-xxl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-xxl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xxl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-xxl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-xxl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-xxl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-xxl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-xxl-0 {
    padding-top: 0 !important;
  }
  .pt-xxl-1 {
    padding-top: 0.25rem !important;
  }
  .pt-xxl-2 {
    padding-top: 0.5rem !important;
  }
  .pt-xxl-3 {
    padding-top: 1rem !important;
  }
  .pt-xxl-4 {
    padding-top: 1.5rem !important;
  }
  .pt-xxl-5 {
    padding-top: 3rem !important;
  }
  .pe-xxl-0 {
    padding-right: 0 !important;
  }
  .pe-xxl-1 {
    padding-right: 0.25rem !important;
  }
  .pe-xxl-2 {
    padding-right: 0.5rem !important;
  }
  .pe-xxl-3 {
    padding-right: 1rem !important;
  }
  .pe-xxl-4 {
    padding-right: 1.5rem !important;
  }
  .pe-xxl-5 {
    padding-right: 3rem !important;
  }
  .pb-xxl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xxl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-xxl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-xxl-3 {
    padding-bottom: 1rem !important;
  }
  .pb-xxl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-xxl-5 {
    padding-bottom: 3rem !important;
  }
  .ps-xxl-0 {
    padding-left: 0 !important;
  }
  .ps-xxl-1 {
    padding-left: 0.25rem !important;
  }
  .ps-xxl-2 {
    padding-left: 0.5rem !important;
  }
  .ps-xxl-3 {
    padding-left: 1rem !important;
  }
  .ps-xxl-4 {
    padding-left: 1.5rem !important;
  }
  .ps-xxl-5 {
    padding-left: 3rem !important;
  }
  .gap-xxl-0 {
    gap: 0 !important;
  }
  .gap-xxl-1 {
    gap: 0.25rem !important;
  }
  .gap-xxl-2 {
    gap: 0.5rem !important;
  }
  .gap-xxl-3 {
    gap: 1rem !important;
  }
  .gap-xxl-4 {
    gap: 1.5rem !important;
  }
  .gap-xxl-5 {
    gap: 3rem !important;
  }
  .row-gap-xxl-0 {
    row-gap: 0 !important;
  }
  .row-gap-xxl-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-xxl-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-xxl-3 {
    row-gap: 1rem !important;
  }
  .row-gap-xxl-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-xxl-5 {
    row-gap: 3rem !important;
  }
  .column-gap-xxl-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-xxl-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-xxl-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-xxl-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-xxl-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-xxl-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 3rem !important;
  }
  .text-xxl-start {
    text-align: left !important;
  }
  .text-xxl-end {
    text-align: right !important;
  }
  .text-xxl-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .fs-1 {
    font-size: 2.5rem !important;
  }
  .fs-2 {
    font-size: 2rem !important;
  }
  .fs-3 {
    font-size: 1.75rem !important;
  }
  .fs-4 {
    font-size: 1.5rem !important;
  }
}
@media print {
  .d-print-inline {
    display: inline !important;
  }
  .d-print-inline-block {
    display: inline-block !important;
  }
  .d-print-block {
    display: block !important;
  }
  .d-print-grid {
    display: grid !important;
  }
  .d-print-inline-grid {
    display: inline-grid !important;
  }
  .d-print-table {
    display: table !important;
  }
  .d-print-table-row {
    display: table-row !important;
  }
  .d-print-table-cell {
    display: table-cell !important;
  }
  .d-print-flex {
    display: flex !important;
  }
  .d-print-inline-flex {
    display: inline-flex !important;
  }
  .d-print-none {
    display: none !important;
  }
}
/* Global */
/*--------------------------------

LineIcons Free Web Font
Author: lineicons.com

-------------------------------- */
@font-face {
  font-family: "LineIcons";
  src: url(./fonts/LineIcons.eot?c4771dd9ed744d283e5daf3856c79f19);
  src: url(./fonts/LineIcons.eot?c4771dd9ed744d283e5daf3856c79f19) format("embedded-opentype"), url(./fonts/LineIcons.woff2?05bb07eed0e1e0695840bd6b645be7cb) format("woff2"), url(./fonts/LineIcons.woff?62e764662756aee9ff19b9947e253171) format("woff"), url(./fonts/LineIcons.ttf?4ac57d3b3f08b5129b08288f465e6c96) format("truetype"), url(./fonts/LineIcons.svg?d2e229f7bbdb51adf26266803fb14015) format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
/*------------------------
      base class definition
  -------------------------*/
.lni {
  display: inline-block;
  font: normal normal normal 1em/1 "LineIcons";
  speak: none;
  text-transform: none;
  /* Better Font Rendering */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/*------------------------
    change icon size
  -------------------------*/
/* relative units */
.lni-sm {
  font-size: 0.8em;
}

.lni-lg {
  font-size: 1.2em;
}

/* absolute units */
.lni-16 {
  font-size: 16px;
}

.lni-32 {
  font-size: 32px;
}

/*----------------------------------
    add a square/circle background
  -----------------------------------*/
.lni-bg-square,
.lni-bg-circle {
  padding: 0.35em;
  background-color: #eee;
}

.lni-bg-circle {
  border-radius: 50%;
}

/*------------------------------------
    use icons as list item markers
  -------------------------------------*/
.lni-ul {
  padding-left: 0;
  list-style-type: none;
}

.lni-ul > li {
  display: flex;
  align-items: flex-start;
  line-height: 1.4;
}

.lni-ul > li > .lni {
  margin-right: 0.4em;
  line-height: inherit;
}

/*------------------------
    spinning icons
  -------------------------*/
.lni-is-spinning {
  animation: lni-spin 2s infinite linear;
}
@keyframes lni-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/*------------------------
    rotated/flipped icons
  -------------------------*/
.lni-rotate-90 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
  transform: rotate(90deg);
}

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

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

.lni-flip-y {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0);
  transform: scale(-1, 1);
}

.lni-flip-x {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  transform: scale(1, -1);
}

/*------------------------
      icons
  -------------------------*/
.lni-500px::before {
  content: "\ea02";
}

.lni-add-files::before {
  content: "\ea03";
}

.lni-alarm-clock::before {
  content: "\ea04";
}

.lni-alarm::before {
  content: "\ea05";
}

.lni-airbnb::before {
  content: "\ea06";
}

.lni-adobe::before {
  content: "\ea07";
}

.lni-amazon-pay::before {
  content: "\ea08";
}

.lni-amazon::before {
  content: "\ea09";
}

.lni-amex::before {
  content: "\ea0a";
}

.lni-anchor::before {
  content: "\ea0b";
}

.lni-amazon-original::before {
  content: "\ea0c";
}

.lni-android-original::before {
  content: "\ea0d";
}

.lni-android::before {
  content: "\ea0e";
}

.lni-angellist::before {
  content: "\ea0f";
}

.lni-angle-double-down::before {
  content: "\ea10";
}

.lni-angle-double-left::before {
  content: "\ea11";
}

.lni-angle-double-right::before {
  content: "\ea12";
}

.lni-angle-double-up::before {
  content: "\ea13";
}

.lni-angular::before {
  content: "\ea14";
}

.lni-apartment::before {
  content: "\ea15";
}

.lni-app-store::before {
  content: "\ea16";
}

.lni-apple-pay::before {
  content: "\ea17";
}

.lni-apple::before {
  content: "\ea18";
}

.lni-archive::before {
  content: "\ea19";
}

.lni-arrow-down-circle::before {
  content: "\ea1a";
}

.lni-arrow-left-circle::before {
  content: "\ea1b";
}

.lni-arrow-left::before {
  content: "\ea1c";
}

.lni-arrow-right-circle::before {
  content: "\ea1d";
}

.lni-arrow-right::before {
  content: "\ea1e";
}

.lni-arrow-top-left::before {
  content: "\ea1f";
}

.lni-arrow-top-right::before {
  content: "\ea20";
}

.lni-arrow-up-circle::before {
  content: "\ea21";
}

.lni-arrow-up::before {
  content: "\ea22";
}

.lni-arrows-horizontal::before {
  content: "\ea23";
}

.lni-arrows-vertical::before {
  content: "\ea24";
}

.lni-atlassian::before {
  content: "\ea25";
}

.lni-aws::before {
  content: "\ea26";
}

.lni-arrow-down::before {
  content: "\ea27";
}

.lni-ambulance::before {
  content: "\ea28";
}

.lni-agenda::before {
  content: "\ea29";
}

.lni-backward::before {
  content: "\ea2a";
}

.lni-baloon::before {
  content: "\ea2b";
}

.lni-ban::before {
  content: "\ea2c";
}

.lni-bar-chart::before {
  content: "\ea2d";
}

.lni-behance-original::before {
  content: "\ea2e";
}

.lni-bitbucket::before {
  content: "\ea2f";
}

.lni-bitcoin::before {
  content: "\ea30";
}

.lni-blackboard::before {
  content: "\ea31";
}

.lni-blogger::before {
  content: "\ea32";
}

.lni-bluetooth::before {
  content: "\ea33";
}

.lni-bold::before {
  content: "\ea34";
}

.lni-bolt-alt::before {
  content: "\ea35";
}

.lni-bolt::before {
  content: "\ea36";
}

.lni-book::before {
  content: "\ea37";
}

.lni-bookmark-alt::before {
  content: "\ea38";
}

.lni-bookmark::before {
  content: "\ea39";
}

.lni-bootstrap::before {
  content: "\ea3a";
}

.lni-bricks::before {
  content: "\ea3b";
}

.lni-bridge::before {
  content: "\ea3c";
}

.lni-briefcase::before {
  content: "\ea3d";
}

.lni-brush-alt::before {
  content: "\ea3e";
}

.lni-brush::before {
  content: "\ea3f";
}

.lni-bubble::before {
  content: "\ea40";
}

.lni-bug::before {
  content: "\ea41";
}

.lni-bulb::before {
  content: "\ea42";
}

.lni-bullhorn::before {
  content: "\ea43";
}

.lni-burger::before {
  content: "\ea44";
}

.lni-bus::before {
  content: "\ea45";
}

.lni-cake::before {
  content: "\ea46";
}

.lni-calculator::before {
  content: "\ea47";
}

.lni-calendar::before {
  content: "\ea48";
}

.lni-camera::before {
  content: "\ea49";
}

.lni-candy-cane::before {
  content: "\ea4a";
}

.lni-candy::before {
  content: "\ea4b";
}

.lni-capsule::before {
  content: "\ea4c";
}

.lni-car-alt::before {
  content: "\ea4d";
}

.lni-car::before {
  content: "\ea4e";
}

.lni-caravan::before {
  content: "\ea4f";
}

.lni-cart-full::before {
  content: "\ea50";
}

.lni-cart::before {
  content: "\ea51";
}

.lni-certificate::before {
  content: "\ea52";
}

.lni-checkbox::before {
  content: "\ea53";
}

.lni-checkmark-circle::before {
  content: "\ea54";
}

.lni-checkmark::before {
  content: "\ea55";
}

.lni-chef-hat::before {
  content: "\ea56";
}

.lni-chevron-down-circle::before {
  content: "\ea57";
}

.lni-chevron-down::before {
  content: "\ea58";
}

.lni-chevron-left-circle::before {
  content: "\ea59";
}

.lni-chevron-left::before {
  content: "\ea5a";
}

.lni-chevron-right-circle::before {
  content: "\ea5b";
}

.lni-chevron-right::before {
  content: "\ea5c";
}

.lni-chevron-up-circle::before {
  content: "\ea5d";
}

.lni-chevron-up::before {
  content: "\ea5e";
}

.lni-chrome::before {
  content: "\ea5f";
}

.lni-circle-minus::before {
  content: "\ea60";
}

.lni-circle-plus::before {
  content: "\ea61";
}

.lni-clipboard::before {
  content: "\ea62";
}

.lni-close::before {
  content: "\ea63";
}

.lni-cloud-check::before {
  content: "\ea64";
}

.lni-cloud-download::before {
  content: "\ea65";
}

.lni-cloud-network::before {
  content: "\ea66";
}

.lni-cloud-sync::before {
  content: "\ea67";
}

.lni-cloud-upload::before {
  content: "\ea68";
}

.lni-cloud::before {
  content: "\ea69";
}

.lni-cloudy-sun::before {
  content: "\ea6a";
}

.lni-code-alt::before {
  content: "\ea6b";
}

.lni-code::before {
  content: "\ea6c";
}

.lni-codepen::before {
  content: "\ea6d";
}

.lni-coffee-cup::before {
  content: "\ea6e";
}

.lni-cog::before {
  content: "\ea6f";
}

.lni-cogs::before {
  content: "\ea70";
}

.lni-coin::before {
  content: "\ea71";
}

.lni-comments-alt::before {
  content: "\ea72";
}

.lni-comments-reply::before {
  content: "\ea73";
}

.lni-comments::before {
  content: "\ea74";
}

.lni-compass::before {
  content: "\ea75";
}

.lni-construction-hammer::before {
  content: "\ea76";
}

.lni-construction::before {
  content: "\ea77";
}

.lni-consulting::before {
  content: "\ea78";
}

.lni-control-panel::before {
  content: "\ea79";
}

.lni-cpanel::before {
  content: "\ea7a";
}

.lni-creative-commons::before {
  content: "\ea7b";
}

.lni-credit-cards::before {
  content: "\ea7c";
}

.lni-crop::before {
  content: "\ea7d";
}

.lni-cross-circle::before {
  content: "\ea7e";
}

.lni-crown::before {
  content: "\ea7f";
}

.lni-css3::before {
  content: "\ea80";
}

.lni-cup::before {
  content: "\ea81";
}

.lni-customer::before {
  content: "\ea82";
}

.lni-cut::before {
  content: "\ea83";
}

.lni-dashboard::before {
  content: "\ea84";
}

.lni-database::before {
  content: "\ea85";
}

.lni-delivery::before {
  content: "\ea86";
}

.lni-dev::before {
  content: "\ea87";
}

.lni-diamond-alt::before {
  content: "\ea88";
}

.lni-diamond::before {
  content: "\ea89";
}

.lni-diners-club::before {
  content: "\ea8a";
}

.lni-dinner::before {
  content: "\ea8b";
}

.lni-direction-alt::before {
  content: "\ea8c";
}

.lni-direction-ltr::before {
  content: "\ea8d";
}

.lni-direction-rtl::before {
  content: "\ea8e";
}

.lni-direction::before {
  content: "\ea8f";
}

.lni-discord::before {
  content: "\ea90";
}

.lni-discover::before {
  content: "\ea91";
}

.lni-display-alt::before {
  content: "\ea92";
}

.lni-display::before {
  content: "\ea93";
}

.lni-docker::before {
  content: "\ea94";
}

.lni-dollar::before {
  content: "\ea95";
}

.lni-domain::before {
  content: "\ea96";
}

.lni-download::before {
  content: "\ea97";
}

.lni-dribbble::before {
  content: "\ea98";
}

.lni-drop::before {
  content: "\ea99";
}

.lni-dropbox-original::before {
  content: "\ea9a";
}

.lni-dropbox::before {
  content: "\ea9b";
}

.lni-drupal-original::before {
  content: "\ea9c";
}

.lni-drupal::before {
  content: "\ea9d";
}

.lni-dumbbell::before {
  content: "\ea9e";
}

.lni-edge::before {
  content: "\ea9f";
}

.lni-emoji-cool::before {
  content: "\eaa0";
}

.lni-emoji-friendly::before {
  content: "\eaa1";
}

.lni-emoji-happy::before {
  content: "\eaa2";
}

.lni-emoji-sad::before {
  content: "\eaa3";
}

.lni-emoji-smile::before {
  content: "\eaa4";
}

.lni-emoji-speechless::before {
  content: "\eaa5";
}

.lni-emoji-suspect::before {
  content: "\eaa6";
}

.lni-emoji-tounge::before {
  content: "\eaa7";
}

.lni-empty-file::before {
  content: "\eaa8";
}

.lni-enter::before {
  content: "\eaa9";
}

.lni-envato::before {
  content: "\eaaa";
}

.lni-envelope::before {
  content: "\eaab";
}

.lni-eraser::before {
  content: "\eaac";
}

.lni-euro::before {
  content: "\eaad";
}

.lni-exit-down::before {
  content: "\eaae";
}

.lni-exit-up::before {
  content: "\eaaf";
}

.lni-exit::before {
  content: "\eab0";
}

.lni-eye::before {
  content: "\eab1";
}

.lni-facebook-filled::before {
  content: "\eab2";
}

.lni-facebook-messenger::before {
  content: "\eab3";
}

.lni-facebook-original::before {
  content: "\eab4";
}

.lni-facebook-oval::before {
  content: "\eab5";
}

.lni-facebook::before {
  content: "\eab6";
}

.lni-figma::before {
  content: "\eab7";
}

.lni-files::before {
  content: "\eab8";
}

.lni-firefox-original::before {
  content: "\eab9";
}

.lni-firefox::before {
  content: "\eaba";
}

.lni-fireworks::before {
  content: "\eabb";
}

.lni-first-aid::before {
  content: "\eabc";
}

.lni-flag-alt::before {
  content: "\eabd";
}

.lni-flag::before {
  content: "\eabe";
}

.lni-flags::before {
  content: "\eabf";
}

.lni-flickr::before {
  content: "\eac0";
}

.lni-basketball::before {
  content: "\eac1";
}

.lni-behance::before {
  content: "\eac2";
}

.lni-forward::before {
  content: "\eac3";
}

.lni-frame-expand::before {
  content: "\eac4";
}

.lni-flower::before {
  content: "\eac5";
}

.lni-full-screen::before {
  content: "\eac6";
}

.lni-funnel::before {
  content: "\eac7";
}

.lni-gallery::before {
  content: "\eac8";
}

.lni-game::before {
  content: "\eac9";
}

.lni-gift::before {
  content: "\eaca";
}

.lni-git::before {
  content: "\eacb";
}

.lni-github-original::before {
  content: "\eacc";
}

.lni-github::before {
  content: "\eacd";
}

.lni-goodreads::before {
  content: "\eace";
}

.lni-google-drive::before {
  content: "\eacf";
}

.lni-google-pay::before {
  content: "\ead0";
}

.lni-fresh-juice::before {
  content: "\ead1";
}

.lni-folder::before {
  content: "\ead2";
}

.lni-bi-cycle::before {
  content: "\ead3";
}

.lni-graph::before {
  content: "\ead4";
}

.lni-grid-alt::before {
  content: "\ead5";
}

.lni-grid::before {
  content: "\ead6";
}

.lni-google-wallet::before {
  content: "\ead7";
}

.lni-grow::before {
  content: "\ead8";
}

.lni-hammer::before {
  content: "\ead9";
}

.lni-hand::before {
  content: "\eada";
}

.lni-handshake::before {
  content: "\eadb";
}

.lni-harddrive::before {
  content: "\eadc";
}

.lni-headphone-alt::before {
  content: "\eadd";
}

.lni-headphone::before {
  content: "\eade";
}

.lni-heart-filled::before {
  content: "\eadf";
}

.lni-heart-monitor::before {
  content: "\eae0";
}

.lni-heart::before {
  content: "\eae1";
}

.lni-helicopter::before {
  content: "\eae2";
}

.lni-helmet::before {
  content: "\eae3";
}

.lni-help::before {
  content: "\eae4";
}

.lni-highlight-alt::before {
  content: "\eae5";
}

.lni-highlight::before {
  content: "\eae6";
}

.lni-home::before {
  content: "\eae7";
}

.lni-hospital::before {
  content: "\eae8";
}

.lni-hourglass::before {
  content: "\eae9";
}

.lni-html5::before {
  content: "\eaea";
}

.lni-image::before {
  content: "\eaeb";
}

.lni-inbox::before {
  content: "\eaec";
}

.lni-indent-decrease::before {
  content: "\eaed";
}

.lni-indent-increase::before {
  content: "\eaee";
}

.lni-infinite::before {
  content: "\eaef";
}

.lni-information::before {
  content: "\eaf0";
}

.lni-instagram-filled::before {
  content: "\eaf1";
}

.lni-instagram-original::before {
  content: "\eaf2";
}

.lni-instagram::before {
  content: "\eaf3";
}

.lni-invention::before {
  content: "\eaf4";
}

.lni-graduation::before {
  content: "\eaf5";
}

.lni-invest-monitor::before {
  content: "\eaf6";
}

.lni-island::before {
  content: "\eaf7";
}

.lni-italic::before {
  content: "\eaf8";
}

.lni-java::before {
  content: "\eaf9";
}

.lni-javascript::before {
  content: "\eafa";
}

.lni-jcb::before {
  content: "\eafb";
}

.lni-joomla-original::before {
  content: "\eafc";
}

.lni-joomla::before {
  content: "\eafd";
}

.lni-jsfiddle::before {
  content: "\eafe";
}

.lni-juice::before {
  content: "\eaff";
}

.lni-key::before {
  content: "\eb00";
}

.lni-keyboard::before {
  content: "\eb01";
}

.lni-keyword-research::before {
  content: "\eb02";
}

.lni-hacker-news::before {
  content: "\eb03";
}

.lni-google::before {
  content: "\eb04";
}

.lni-laravel::before {
  content: "\eb05";
}

.lni-layers::before {
  content: "\eb06";
}

.lni-layout::before {
  content: "\eb07";
}

.lni-leaf::before {
  content: "\eb08";
}

.lni-library::before {
  content: "\eb09";
}

.lni-licencse::before {
  content: "\eb0a";
}

.lni-life-ring::before {
  content: "\eb0b";
}

.lni-line-dashed::before {
  content: "\eb0c";
}

.lni-line-dotted::before {
  content: "\eb0d";
}

.lni-line-double::before {
  content: "\eb0e";
}

.lni-line-spacing::before {
  content: "\eb0f";
}

.lni-line::before {
  content: "\eb10";
}

.lni-lineicons-alt::before {
  content: "\eb11";
}

.lni-lineicons::before {
  content: "\eb12";
}

.lni-link::before {
  content: "\eb13";
}

.lni-linkedin-original::before {
  content: "\eb14";
}

.lni-linkedin::before {
  content: "\eb15";
}

.lni-list::before {
  content: "\eb16";
}

.lni-lock-alt::before {
  content: "\eb17";
}

.lni-lock::before {
  content: "\eb18";
}

.lni-magnet::before {
  content: "\eb19";
}

.lni-magnifier::before {
  content: "\eb1a";
}

.lni-mailchimp::before {
  content: "\eb1b";
}

.lni-map-marker::before {
  content: "\eb1c";
}

.lni-map::before {
  content: "\eb1d";
}

.lni-mashroom::before {
  content: "\eb1e";
}

.lni-mastercard::before {
  content: "\eb1f";
}

.lni-medall-alt::before {
  content: "\eb20";
}

.lni-medall::before {
  content: "\eb21";
}

.lni-medium::before {
  content: "\eb22";
}

.lni-laptop::before {
  content: "\eb23";
}

.lni-investment::before {
  content: "\eb24";
}

.lni-laptop-phone::before {
  content: "\eb25";
}

.lni-megento::before {
  content: "\eb26";
}

.lni-mic::before {
  content: "\eb27";
}

.lni-microphone::before {
  content: "\eb28";
}

.lni-menu::before {
  content: "\eb29";
}

.lni-microscope::before {
  content: "\eb2a";
}

.lni-money-location::before {
  content: "\eb2b";
}

.lni-minus::before {
  content: "\eb2c";
}

.lni-mobile::before {
  content: "\eb2d";
}

.lni-more-alt::before {
  content: "\eb2e";
}

.lni-mouse::before {
  content: "\eb2f";
}

.lni-move::before {
  content: "\eb30";
}

.lni-music::before {
  content: "\eb31";
}

.lni-network::before {
  content: "\eb32";
}

.lni-night::before {
  content: "\eb33";
}

.lni-nodejs-alt::before {
  content: "\eb34";
}

.lni-nodejs::before {
  content: "\eb35";
}

.lni-notepad::before {
  content: "\eb36";
}

.lni-npm::before {
  content: "\eb37";
}

.lni-offer::before {
  content: "\eb38";
}

.lni-opera::before {
  content: "\eb39";
}

.lni-package::before {
  content: "\eb3a";
}

.lni-page-break::before {
  content: "\eb3b";
}

.lni-pagination::before {
  content: "\eb3c";
}

.lni-paint-bucket::before {
  content: "\eb3d";
}

.lni-paint-roller::before {
  content: "\eb3e";
}

.lni-pallet::before {
  content: "\eb3f";
}

.lni-paperclip::before {
  content: "\eb40";
}

.lni-more::before {
  content: "\eb41";
}

.lni-pause::before {
  content: "\eb42";
}

.lni-paypal-original::before {
  content: "\eb43";
}

.lni-microsoft::before {
  content: "\eb44";
}

.lni-money-protection::before {
  content: "\eb45";
}

.lni-pencil::before {
  content: "\eb46";
}

.lni-paypal::before {
  content: "\eb47";
}

.lni-pencil-alt::before {
  content: "\eb48";
}

.lni-patreon::before {
  content: "\eb49";
}

.lni-phone-set::before {
  content: "\eb4a";
}

.lni-phone::before {
  content: "\eb4b";
}

.lni-pin::before {
  content: "\eb4c";
}

.lni-pinterest::before {
  content: "\eb4d";
}

.lni-pie-chart::before {
  content: "\eb4e";
}

.lni-pilcrow::before {
  content: "\eb4f";
}

.lni-plane::before {
  content: "\eb50";
}

.lni-play::before {
  content: "\eb51";
}

.lni-plug::before {
  content: "\eb52";
}

.lni-plus::before {
  content: "\eb53";
}

.lni-pointer-down::before {
  content: "\eb54";
}

.lni-pointer-left::before {
  content: "\eb55";
}

.lni-pointer-right::before {
  content: "\eb56";
}

.lni-pointer-up::before {
  content: "\eb57";
}

.lni-play-store::before {
  content: "\eb58";
}

.lni-pizza::before {
  content: "\eb59";
}

.lni-postcard::before {
  content: "\eb5a";
}

.lni-pound::before {
  content: "\eb5b";
}

.lni-power-switch::before {
  content: "\eb5c";
}

.lni-printer::before {
  content: "\eb5d";
}

.lni-producthunt::before {
  content: "\eb5e";
}

.lni-protection::before {
  content: "\eb5f";
}

.lni-pulse::before {
  content: "\eb60";
}

.lni-pyramids::before {
  content: "\eb61";
}

.lni-python::before {
  content: "\eb62";
}

.lni-pointer::before {
  content: "\eb63";
}

.lni-popup::before {
  content: "\eb64";
}

.lni-quotation::before {
  content: "\eb65";
}

.lni-radio-button::before {
  content: "\eb66";
}

.lni-rain::before {
  content: "\eb67";
}

.lni-quora::before {
  content: "\eb68";
}

.lni-react::before {
  content: "\eb69";
}

.lni-question-circle::before {
  content: "\eb6a";
}

.lni-php::before {
  content: "\eb6b";
}

.lni-reddit::before {
  content: "\eb6c";
}

.lni-reload::before {
  content: "\eb6d";
}

.lni-restaurant::before {
  content: "\eb6e";
}

.lni-road::before {
  content: "\eb6f";
}

.lni-rocket::before {
  content: "\eb70";
}

.lni-rss-feed::before {
  content: "\eb71";
}

.lni-ruler-alt::before {
  content: "\eb72";
}

.lni-ruler-pencil::before {
  content: "\eb73";
}

.lni-ruler::before {
  content: "\eb74";
}

.lni-rupee::before {
  content: "\eb75";
}

.lni-save::before {
  content: "\eb76";
}

.lni-school-bench-alt::before {
  content: "\eb77";
}

.lni-school-bench::before {
  content: "\eb78";
}

.lni-scooter::before {
  content: "\eb79";
}

.lni-scroll-down::before {
  content: "\eb7a";
}

.lni-search-alt::before {
  content: "\eb7b";
}

.lni-search::before {
  content: "\eb7c";
}

.lni-select::before {
  content: "\eb7d";
}

.lni-seo::before {
  content: "\eb7e";
}

.lni-service::before {
  content: "\eb7f";
}

.lni-share-alt::before {
  content: "\eb80";
}

.lni-share::before {
  content: "\eb81";
}

.lni-shield::before {
  content: "\eb82";
}

.lni-shift-left::before {
  content: "\eb83";
}

.lni-shift-right::before {
  content: "\eb84";
}

.lni-ship::before {
  content: "\eb85";
}

.lni-shopify::before {
  content: "\eb86";
}

.lni-shopping-basket::before {
  content: "\eb87";
}

.lni-shortcode::before {
  content: "\eb88";
}

.lni-shovel::before {
  content: "\eb89";
}

.lni-shuffle::before {
  content: "\eb8a";
}

.lni-signal::before {
  content: "\eb8b";
}

.lni-sketch::before {
  content: "\eb8c";
}

.lni-skipping-rope::before {
  content: "\eb8d";
}

.lni-skype::before {
  content: "\eb8e";
}

.lni-microsoft-teams {
  content: "\e90a";
}

.lni-slack::before {
  content: "\eb8f";
}

.lni-slice::before {
  content: "\eb90";
}

.lni-slideshare::before {
  content: "\eb91";
}

.lni-slim::before {
  content: "\eb92";
}

.lni-reply::before {
  content: "\eb93";
}

.lni-sort-alpha-asc::before {
  content: "\eb94";
}

.lni-remove-file::before {
  content: "\eb95";
}

.lni-sort-amount-dsc::before {
  content: "\eb96";
}

.lni-sort-amount-asc::before {
  content: "\eb97";
}

.lni-soundcloud::before {
  content: "\eb98";
}

.lni-souncloud-original::before {
  content: "\eb99";
}

.lni-spiner-solid::before {
  content: "\eb9a";
}

.lni-revenue::before {
  content: "\eb9b";
}

.lni-spinner::before {
  content: "\eb9c";
}

.lni-spellcheck::before {
  content: "\eb9d";
}

.lni-spotify::before {
  content: "\eb9e";
}

.lni-spray::before {
  content: "\eb9f";
}

.lni-sprout::before {
  content: "\eba0";
}

.lni-snapchat::before {
  content: "\eba1";
}

.lni-stamp::before {
  content: "\eba2";
}

.lni-star-empty::before {
  content: "\eba3";
}

.lni-star-filled::before {
  content: "\eba4";
}

.lni-star-half::before {
  content: "\eba5";
}

.lni-star::before {
  content: "\eba6";
}

.lni-stats-down::before {
  content: "\eba7";
}

.lni-spinner-arrow::before {
  content: "\eba8";
}

.lni-steam::before {
  content: "\eba9";
}

.lni-stackoverflow::before {
  content: "\ebaa";
}

.lni-stop::before {
  content: "\ebab";
}

.lni-strikethrough::before {
  content: "\ebac";
}

.lni-sthethoscope::before {
  content: "\ebad";
}

.lni-stumbleupon::before {
  content: "\ebae";
}

.lni-sun::before {
  content: "\ebaf";
}

.lni-support::before {
  content: "\ebb0";
}

.lni-surf-board::before {
  content: "\ebb1";
}

.lni-swift::before {
  content: "\ebb2";
}

.lni-syringe::before {
  content: "\ebb3";
}

.lni-tab::before {
  content: "\ebb4";
}

.lni-tag::before {
  content: "\ebb5";
}

.lni-target-customer::before {
  content: "\ebb6";
}

.lni-target-revenue::before {
  content: "\ebb7";
}

.lni-target::before {
  content: "\ebb8";
}

.lni-taxi::before {
  content: "\ebb9";
}

.lni-stats-up::before {
  content: "\ebba";
}

.lni-telegram-original::before {
  content: "\ebbb";
}

.lni-telegram::before {
  content: "\ebbc";
}

.lni-text-align-center::before {
  content: "\ebbd";
}

.lni-text-align-justify::before {
  content: "\ebbe";
}

.lni-text-align-left::before {
  content: "\ebbf";
}

.lni-text-format-remove::before {
  content: "\ebc0";
}

.lni-text-align-right::before {
  content: "\ebc1";
}

.lni-text-format::before {
  content: "\ebc2";
}

.lni-thought::before {
  content: "\ebc3";
}

.lni-thumbs-down::before {
  content: "\ebc4";
}

.lni-thumbs-up::before {
  content: "\ebc5";
}

.lni-thunder-alt::before {
  content: "\ebc6";
}

.lni-thunder::before {
  content: "\ebc7";
}

.lni-ticket-alt::before {
  content: "\ebc8";
}

.lni-ticket::before {
  content: "\ebc9";
}

.lni-timer::before {
  content: "\ebca";
}

.lni-train-alt::before {
  content: "\ebcb";
}

.lni-train::before {
  content: "\ebcc";
}

.lni-trash::before {
  content: "\ebcd";
}

.lni-travel::before {
  content: "\ebce";
}

.lni-tree::before {
  content: "\ebcf";
}

.lni-trees::before {
  content: "\ebd0";
}

.lni-trello::before {
  content: "\ebd1";
}

.lni-trowel::before {
  content: "\ebd2";
}

.lni-tshirt::before {
  content: "\ebd3";
}

.lni-tumblr::before {
  content: "\ebd4";
}

.lni-twitch::before {
  content: "\ebd5";
}

.lni-twitter-filled::before {
  content: "\ebd6";
}

.lni-twitter-original::before {
  content: "\ebd7";
}

.lni-twitter::before {
  content: "\ebd8";
}

.lni-ubuntu::before {
  content: "\ebd9";
}

.lni-underline::before {
  content: "\ebda";
}

.lni-unlink::before {
  content: "\ebdb";
}

.lni-unlock::before {
  content: "\ebdc";
}

.lni-upload::before {
  content: "\ebdd";
}

.lni-user::before {
  content: "\ebde";
}

.lni-users::before {
  content: "\ebdf";
}

.lni-ux::before {
  content: "\ebe0";
}

.lni-vector::before {
  content: "\ebe1";
}

.lni-video::before {
  content: "\ebe2";
}

.lni-vimeo::before {
  content: "\ebe3";
}

.lni-visa::before {
  content: "\ebe4";
}

.lni-vk::before {
  content: "\ebe5";
}

.lni-volume-high::before {
  content: "\ebe6";
}

.lni-volume-low::before {
  content: "\ebe7";
}

.lni-volume-medium::before {
  content: "\ebe8";
}

.lni-volume-mute::before {
  content: "\ebe9";
}

.lni-volume::before {
  content: "\ebea";
}

.lni-wallet::before {
  content: "\ebeb";
}

.lni-warning::before {
  content: "\ebec";
}

.lni-website-alt::before {
  content: "\ebed";
}

.lni-website::before {
  content: "\ebee";
}

.lni-wechat::before {
  content: "\ebef";
}

.lni-weight::before {
  content: "\ebf0";
}

.lni-whatsapp::before {
  content: "\ebf1";
}

.lni-wheelbarrow::before {
  content: "\ebf2";
}

.lni-wheelchair::before {
  content: "\ebf3";
}

.lni-windows::before {
  content: "\ebf4";
}

.lni-wordpress-filled::before {
  content: "\ebf5";
}

.lni-wordpress::before {
  content: "\ebf6";
}

.lni-world-alt::before {
  content: "\ebf7";
}

.lni-world::before {
  content: "\ebf8";
}

.lni-write::before {
  content: "\ebf9";
}

.lni-yahoo::before {
  content: "\ebfa";
}

.lni-ycombinator::before {
  content: "\ebfb";
}

.lni-yen::before {
  content: "\ebfc";
}

.lni-youtube::before {
  content: "\ebfd";
}

.lni-zip::before {
  content: "\ebfe";
}

.lni-zoom-in::before {
  content: "\ebff";
}

.lni-zoom-out::before {
  content: "\ec00";
}

.lni-teabag::before {
  content: "\ec01";
}

.lni-stripe::before {
  content: "\ec02";
}

.lni-spotify-original::before {
  content: "\ec03";
}

.font-poppins {
  font-family: "Poppins", sans-serif !important;
}

.font-lexend {
  font-family: "Lexend", sans-serif !important;
}

.font-gordita {
  font-family: "Gordita", sans-serif !important;
}

.font-lato {
  font-family: "Lato", sans-serif !important;
}

.font-exo {
  font-family: "Exo", sans-serif !important;
}

/*
* Admin Layout (Pixelwibes)
* @author: Pixelwibes
* @design by: Pixelwibes.
* @event-namespace: Pixelwibes
* Copyright 2021 Pixelwibes
*/
:root {
  --dark-color: #323a45;
  /* Neutral scale (kept same naming) */
  --color-fff: #ffffff;
  --color-100: #f9fbfd;
  --color-200: #f1f3f6;
  --color-300: #e5e7eb;
  --color-400: #c7ccd6;
  --color-500: #6a7c92;
  --color-600: #556178;
  --color-700: #3e4a63;
  --color-800: #1f2937;
  --color-900: #111827;
  --color-000: #000000;
  --color-f8f8f8: #f8f8f8;
  --color-f6f6f6: #f6f6f6;
  --color-515151: #515151;
  --color-e03457: #e03457;
  --color-ecf9f4: #ecf9f4;
  --color-f5f6ff: #f5f6ff;
  --color-dfe1ff: #dfe1ff;
  --color-3479E0: #3479e0;
  --color-4E54A5: #4e54a5;
  --color-37A2C8: #37a2c8;
  --color-8050E1: #8050e1;
  --color-515151-rgb: 51, 51, 51;
  --color-3479E0-rgb: 52, 121, 224;
  --title-font-fraunces: "Fraunces", serif;
  /* Layout */
  --border-color: rgba(0, 0, 0, 0.06);
  --card-color: #ffffff;
  --body-color: rgba(255, 255, 255, 1);
  --white-color: #ffffff;
  --sidebar-color: #fcfcff;
  /* Typography */
  --text-color: #333333;
  --seccond-text-color: #666666;
  --title-color: rgba(78, 84, 165, 1);
  /* Icons */
  --svg-color: #6c63ff;
  /* Highlight card */
  --hc-font-color: #4b5563;
  --hc-bg-color: #f3f4ff;
  /* Borders */
  --borderColor08: rgba(0, 0, 0, 0.04);
  --borderColor03: rgba(0, 0, 0, 0.02);
  --borderColor1: rgba(0, 0, 0, 0.06);
  --borderColor4: rgba(0, 0, 0, 0.18);
  /* Brand */
  --primary-color: #6c63ff;
  --primary-rgb: 78, 84, 165;
  /* Purple */
  --secondary-color: #f2669a;
  --secondary-rgb: 242, 102, 154;
  /* Pink */
  --second-color: #ff8fb1;
  --second-rgb: 255, 143, 177;
  /* Accent options */
  --option-color1: #ff8b78;
  --option-color2: #ffc060;
  --option-color3: #5d5a8e;
  --option-color4: #3b5376;
  --option-color5: #d16144;
  --option-color6: #5d5a8e;
  --option-color7: #bea5a9;
  --soft-rose: 255, 219, 227;
  --ice-blue: 191, 238, 255;
  --violet-cloud: 233, 222, 255;
  --mint-light: 236, 249, 244;
  --vanilla-light: 254, 252, 241;
  --cyan-ice: 241, 254, 252;
  --lavender-mist: 244, 241, 254;
  --cerulean-blue: 25, 142, 178;
  --glass-color: rgba(255, 255, 255, 0.65);
  --blush-pink: 255, 195, 210;
  --sky-blue: 157, 230, 255;
  --lavender: 209, 188, 255;
  /* Gradient */
  --primary-gradient: linear-gradient(
      90deg,
      var(--primary-color),
      var(--secondary-color)
  );
  --soft-gradient: linear-gradient(90deg, #8b84ff, #f2669a);
  --second-primary-gradient: linear-gradient(
      90deg,
      var(--color-3479E0) 0%,
      #4e54a5 100%
  );
  --tab-gradient: linear-gradient(
      180deg,
      rgba(245, 63, 100, 0.3) 0%,
      rgba(250, 119, 145, 0.3) 100%
  );
  --gradient-color: linear-gradient(
      90deg,
      rgba(224, 52, 87, 1),
      rgba(78, 84, 165, 1)
  );
  --blush-pink-gradient: linear-gradient(
      180deg,
      rgba(var(--blush-pink), 0.4) 0%,
      rgba(209, 188, 255, 0) 100%
  );
  --sky-blue-fade-gradient: linear-gradient(
      180deg,
      rgba(var(--sky-blue), 0.4) 0%,
      rgba(209, 188, 255, 0) 100%
  );
  --lavender-fade-gradient: linear-gradient(
      180deg,
      rgba(var(--lavender), 0.4) 0%,
      rgba(209, 188, 255, 0) 100%
  );
}
:root .bg-1 {
  background-color: #fefcf1;
}
:root .bg-2 {
  background-color: #f1fefc;
}
:root .bg-3 {
  background-color: #f4f1fe;
}

[data-theme=dark] {
  --dark-color: #0f1220;
  --color-fff: #0f1220;
  --color-100: #14182b;
  --color-200: #1b2038;
  --color-300: #2a2f4a;
  --color-400: #3a3f5c;
  --color-500: #8a90b2;
  --color-600: #aeb4d6;
  --color-700: #d1d6f0;
  --color-800: #eef0ff;
  --color-900: #f8f9ff;
  --color-000: #ffffff;
  --border-color: rgba(255, 255, 255, 0.08);
  --card-color: #161a33;
  --body-color: #0f1220;
  --white-color: #ffffff;
  --sidebar-color: #161a33;
  --text-color: #c7cbe6;
  --title-color: #ffffff;
  --svg-color: #f2669a;
  --whitebg-text: #1c2040;
  --hc-font-color: #c7cbe6;
  --hc-bg-color: #1c2140;
  --borderColor08: rgba(255, 255, 255, 0.06);
  --borderColor03: rgba(255, 255, 255, 0.03);
  --borderColor1: rgba(255, 255, 255, 0.08);
  --borderColor4: rgba(255, 255, 255, 0.2);
  --primary-color: #8b84ff;
  --secondary-color: #f2669a;
  --second-color: #ff8fb1;
  --option-color1: #ff8b78;
  --option-color2: #ffc060;
  --option-color3: #161a33;
  --option-color4: #3b5376;
  --option-color5: #d16144;
  --option-color6: #5d5a8e;
  --option-color7: #bea5a9;
  --glass-color: rgba(73, 73, 73, 0.65);
  --primary-gradient: linear-gradient(
      90deg,
      var(--primary-color),
      var(--secondary-color)
  );
  --soft-gradient: linear-gradient(90deg, #8b84ff, #f2669a);
  --primary-gradient-menu: linear-gradient(90deg, #2a2f6b, #3b2f4a);
}

.mt-0 {
  margin-top: 0px;
}

.mt-5 {
  margin-top: 5px;
}

.mt-10 {
  margin-top: 10px;
}

.mt-15 {
  margin-top: 15px;
}

.mt-20 {
  margin-top: 20px;
}

.mt-25 {
  margin-top: 25px;
}

.mt-30 {
  margin-top: 30px;
}

.mt-35 {
  margin-top: 35px;
}

.mt-40 {
  margin-top: 40px;
}

.mt-45 {
  margin-top: 45px;
}

.mt-50 {
  margin-top: 50px;
}

.mt-55 {
  margin-top: 55px;
}

.mt-60 {
  margin-top: 60px;
}

.mt-65 {
  margin-top: 65px;
}

.mt-70 {
  margin-top: 70px;
}

.mt-75 {
  margin-top: 75px;
}

.mt-80 {
  margin-top: 80px;
}

.mt-85 {
  margin-top: 85px;
}

.mt-90 {
  margin-top: 90px;
}

.mt-95 {
  margin-top: 95px;
}

.mt-100 {
  margin-top: 100px;
}

.mt-105 {
  margin-top: 105px;
}

.mt-110 {
  margin-top: 110px;
}

.mt-115 {
  margin-top: 115px;
}

.mt-120 {
  margin-top: 120px;
}

.mt-125 {
  margin-top: 125px;
}

.mt-130 {
  margin-top: 130px;
}

.mt-135 {
  margin-top: 135px;
}

.mt-140 {
  margin-top: 140px;
}

.mt-145 {
  margin-top: 145px;
}

.mt-150 {
  margin-top: 150px;
}

.mt-155 {
  margin-top: 155px;
}

.mt-160 {
  margin-top: 160px;
}

.mt-165 {
  margin-top: 165px;
}

.mt-170 {
  margin-top: 170px;
}

.mt-175 {
  margin-top: 175px;
}

.mt-180 {
  margin-top: 180px;
}

.mt-185 {
  margin-top: 185px;
}

.mt-190 {
  margin-top: 190px;
}

.mt-195 {
  margin-top: 195px;
}

.mt-200 {
  margin-top: 200px;
}

.mt-205 {
  margin-top: 205px;
}

.mt-210 {
  margin-top: 210px;
}

.mt-215 {
  margin-top: 215px;
}

.mt-220 {
  margin-top: 220px;
}

.mt-225 {
  margin-top: 225px;
}

.mb-0 {
  margin-bottom: 0px;
}

.mb-5 {
  margin-bottom: 5px;
}

.mb-10 {
  margin-bottom: 10px;
}

.mb-15 {
  margin-bottom: 15px;
}

.mb-20 {
  margin-bottom: 20px;
}

.mb-25 {
  margin-bottom: 25px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mb-35 {
  margin-bottom: 35px;
}

.mb-40 {
  margin-bottom: 40px;
}

.mb-45 {
  margin-bottom: 45px;
}

.mb-50 {
  margin-bottom: 50px;
}

.mb-55 {
  margin-bottom: 55px;
}

.mb-60 {
  margin-bottom: 60px;
}

.mb-65 {
  margin-bottom: 65px;
}

.mb-70 {
  margin-bottom: 70px;
}

.mb-75 {
  margin-bottom: 75px;
}

.mb-80 {
  margin-bottom: 80px;
}

.mb-85 {
  margin-bottom: 85px;
}

.mb-90 {
  margin-bottom: 90px;
}

.mb-95 {
  margin-bottom: 95px;
}

.mb-100 {
  margin-bottom: 100px;
}

.mb-105 {
  margin-bottom: 105px;
}

.mb-110 {
  margin-bottom: 110px;
}

.mb-115 {
  margin-bottom: 115px;
}

.mb-120 {
  margin-bottom: 120px;
}

.mb-125 {
  margin-bottom: 125px;
}

.mb-130 {
  margin-bottom: 130px;
}

.mb-135 {
  margin-bottom: 135px;
}

.mb-140 {
  margin-bottom: 140px;
}

.mb-145 {
  margin-bottom: 145px;
}

.mb-150 {
  margin-bottom: 150px;
}

.mb-155 {
  margin-bottom: 155px;
}

.mb-160 {
  margin-bottom: 160px;
}

.mb-165 {
  margin-bottom: 165px;
}

.mb-170 {
  margin-bottom: 170px;
}

.mb-175 {
  margin-bottom: 175px;
}

.mb-180 {
  margin-bottom: 180px;
}

.mb-185 {
  margin-bottom: 185px;
}

.mb-190 {
  margin-bottom: 190px;
}

.mb-195 {
  margin-bottom: 195px;
}

.mb-200 {
  margin-bottom: 200px;
}

.mb-205 {
  margin-bottom: 205px;
}

.mb-210 {
  margin-bottom: 210px;
}

.mb-215 {
  margin-bottom: 215px;
}

.mb-220 {
  margin-bottom: 220px;
}

.mb-225 {
  margin-bottom: 225px;
}

.pt-0 {
  padding-top: 0px;
}

.pt-5 {
  padding-top: 5px;
}

.pt-10 {
  padding-top: 10px;
}

.pt-15 {
  padding-top: 15px;
}

.pt-20 {
  padding-top: 20px;
}

.pt-25 {
  padding-top: 25px;
}

.pt-30 {
  padding-top: 30px;
}

.pt-35 {
  padding-top: 35px;
}

.pt-40 {
  padding-top: 40px;
}

.pt-45 {
  padding-top: 45px;
}

.pt-50 {
  padding-top: 50px;
}

.pt-55 {
  padding-top: 55px;
}

.pt-60 {
  padding-top: 60px;
}

.pt-65 {
  padding-top: 65px;
}

.pt-70 {
  padding-top: 70px;
}

.pt-75 {
  padding-top: 75px;
}

.pt-80 {
  padding-top: 80px;
}

.pt-85 {
  padding-top: 85px;
}

.pt-90 {
  padding-top: 90px;
}

.pt-95 {
  padding-top: 95px;
}

.pt-100 {
  padding-top: 100px;
}

.pt-105 {
  padding-top: 105px;
}

.pt-110 {
  padding-top: 110px;
}

.pt-115 {
  padding-top: 115px;
}

.pt-120 {
  padding-top: 120px;
}

.pt-125 {
  padding-top: 125px;
}

.pt-130 {
  padding-top: 130px;
}

.pt-135 {
  padding-top: 135px;
}

.pt-140 {
  padding-top: 140px;
}

.pt-145 {
  padding-top: 145px;
}

.pt-150 {
  padding-top: 150px;
}

.pt-155 {
  padding-top: 155px;
}

.pt-160 {
  padding-top: 160px;
}

.pt-165 {
  padding-top: 165px;
}

.pt-170 {
  padding-top: 170px;
}

.pt-175 {
  padding-top: 175px;
}

.pt-180 {
  padding-top: 180px;
}

.pt-185 {
  padding-top: 185px;
}

.pt-190 {
  padding-top: 190px;
}

.pt-195 {
  padding-top: 195px;
}

.pt-200 {
  padding-top: 200px;
}

.pt-205 {
  padding-top: 205px;
}

.pt-210 {
  padding-top: 210px;
}

.pt-215 {
  padding-top: 215px;
}

.pt-220 {
  padding-top: 220px;
}

.pt-225 {
  padding-top: 225px;
}

.pb-0 {
  padding-bottom: 0px;
}

.pb-5 {
  padding-bottom: 5px;
}

.pb-10 {
  padding-bottom: 10px;
}

.pb-15 {
  padding-bottom: 15px;
}

.pb-20 {
  padding-bottom: 20px;
}

.pb-25 {
  padding-bottom: 25px;
}

.pb-30 {
  padding-bottom: 30px;
}

.pb-35 {
  padding-bottom: 35px;
}

.pb-40 {
  padding-bottom: 40px;
}

.pb-45 {
  padding-bottom: 45px;
}

.pb-50 {
  padding-bottom: 50px;
}

.pb-55 {
  padding-bottom: 55px;
}

.pb-60 {
  padding-bottom: 60px;
}

.pb-65 {
  padding-bottom: 65px;
}

.pb-70 {
  padding-bottom: 70px;
}

.pb-75 {
  padding-bottom: 75px;
}

.pb-80 {
  padding-bottom: 80px;
}

.pb-85 {
  padding-bottom: 85px;
}

.pb-90 {
  padding-bottom: 90px;
}

.pb-95 {
  padding-bottom: 95px;
}

.pb-100 {
  padding-bottom: 100px;
}

.pb-105 {
  padding-bottom: 105px;
}

.pb-110 {
  padding-bottom: 110px;
}

.pb-115 {
  padding-bottom: 115px;
}

.pb-120 {
  padding-bottom: 120px;
}

.pb-125 {
  padding-bottom: 125px;
}

.pb-130 {
  padding-bottom: 130px;
}

.pb-135 {
  padding-bottom: 135px;
}

.pb-140 {
  padding-bottom: 140px;
}

.pb-145 {
  padding-bottom: 145px;
}

.pb-150 {
  padding-bottom: 150px;
}

.pb-155 {
  padding-bottom: 155px;
}

.pb-160 {
  padding-bottom: 160px;
}

.pb-165 {
  padding-bottom: 165px;
}

.pb-170 {
  padding-bottom: 170px;
}

.pb-175 {
  padding-bottom: 175px;
}

.pb-180 {
  padding-bottom: 180px;
}

.pb-185 {
  padding-bottom: 185px;
}

.pb-190 {
  padding-bottom: 190px;
}

.pb-195 {
  padding-bottom: 195px;
}

.pb-200 {
  padding-bottom: 200px;
}

.pb-205 {
  padding-bottom: 205px;
}

.pb-210 {
  padding-bottom: 210px;
}

.pb-215 {
  padding-bottom: 215px;
}

.pb-220 {
  padding-bottom: 220px;
}

.pb-225 {
  padding-bottom: 225px;
}

@keyframes animation1 {
  0% {
    transform: translateY(0px);
    opacity: 0.29;
  }
  50% {
    transform: translateY(-700px);
    opacity: 0;
  }
  100% {
    transform: translateY(0px);
    opacity: 0;
  }
}
@keyframes spinner-linspin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes spinner-easespin {
  12.5% {
    transform: rotate(135deg);
  }
  25% {
    transform: rotate(270deg);
  }
  37.5% {
    transform: rotate(405deg);
  }
  50% {
    transform: rotate(540deg);
  }
  62.5% {
    transform: rotate(675deg);
  }
  75% {
    transform: rotate(810deg);
  }
  87.5% {
    transform: rotate(945deg);
  }
  to {
    transform: rotate(1080deg);
  }
}
@keyframes spinner-left-spin {
  0% {
    transform: rotate(130deg);
  }
  50% {
    transform: rotate(-5deg);
  }
  to {
    transform: rotate(130deg);
  }
}
@keyframes right-spin {
  0% {
    transform: rotate(-130deg);
  }
  50% {
    transform: rotate(5deg);
  }
  to {
    transform: rotate(-130deg);
  }
}
html {
  scroll-behavior: smooth;
}

body {
  font-family: "Work Sans", sans-serif;
  font-weight: 400;
  font-style: normal;
  color: var(--text-color);
  overflow-x: hidden;
  position: relative;
  background-color: var(--body-color);
  font-size: 16px;
}
body a:focus {
  text-decoration: none;
  outline: none;
  box-shadow: none;
  text-decoration: none;
}
body a:hover {
  transition: all 0.3s ease-out 0s;
  color: var(--primary-color);
  text-decoration: none;
}
body a {
  display: inline-block;
  text-decoration: none;
}
body p {
  font-size: 16px;
  font-weight: 400;
  color: var(--text-color);
  margin: 0;
}
body ul {
  list-style: none;
}
body .title-font {
  font-family: var(--title-font-fraunces) !important;
  font-weight: 600;
  letter-spacing: 1px;
  text-align: start;
  font-size: 60px;
}
@media (max-width: 1200px) {
  body .title-font {
    font-size: 30px !important;
  }
}
body .title-font.blog-detail-title {
  font-size: 40px !important;
}
@media (max-width: 1200px) {
  body .title-font.blog-detail-title {
    font-size: 30px !important;
  }
}
@media (max-width: 768px) {
  body .title-font.blog-detail-title {
    font-size: 20px !important;
  }
}

/* ============ desktop view ============ */
@media all and (min-width: 992px) {
  .navbar .has-megamenu {
    position: static !important;
  }
  .navbar .megamenu {
    left: 0;
    right: 0;
    width: 100%;
  }
}
@media only screen and (max-width: 480px) {
  .pt-130 {
    padding-top: 80px;
  }
}

@media only screen and (max-width: 480px) {
  .pb-130 {
    padding-bottom: 80px;
  }
}

@media only screen and (max-width: 480px) {
  .mt-130 {
    margin-top: 100px;
  }
}

@media only screen and (max-width: 480px) {
  .pb-110 {
    padding-bottom: 80px;
  }
}

.pt-87 {
  padding-top: 87px;
}

/************404-page***********/
.page-error h2, .page-error .h2 {
  font-size: 120px;
  font-weight: 900;
  color: var(--title-color);
}
.page-error h4, .page-error .h4 {
  font-size: 40px;
  color: var(--text-color);
}

/************Heading-title***********/
.heading-title span {
  font-size: 25px;
  font-weight: 700;
  color: var(--primary-color);
  margin-bottom: 5px;
}
@media (max-width: 767px) {
  .heading-title span {
    font-size: 20px;
  }
}
.heading-title h2, .heading-title .h2 {
  line-height: 56px;
  font-weight: 600;
  margin-bottom: 10px;
  color: var(--title-color);
}
@media (max-width: 767px) {
  .heading-title h2, .heading-title .h2 {
    line-height: 41px;
  }
}
@media (max-width: 480px) {
  .heading-title h2, .heading-title .h2 {
    font-size: 30px;
    line-height: 33px;
  }
}
.heading-title p {
  font-size: 18px;
  color: var(--text-color);
}

/************Page-loader***********/
.preloader {
  position: fixed;
  top: 0;
  left: 0;
  display: table;
  height: 100%;
  width: 100%;
  background: var(--white-color);
  z-index: 99999;
}
.preloader .loader {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}
.preloader .loader .spinner {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 64px;
  margin-left: -32px;
  z-index: 18;
  pointer-events: none;
}
.preloader .loader .spinner .spinner-container {
  pointer-events: none;
  position: absolute;
  width: 100%;
  padding-bottom: 100%;
  top: 50%;
  left: 50%;
  margin-top: -50%;
  margin-left: -50%;
  animation: spinner-linspin 1568.2353ms linear infinite;
}
.preloader .loader .spinner .spinner-container .spinner-rotator {
  position: absolute;
  width: 100%;
  height: 100%;
  animation: spinner-easespin 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}
.preloader .loader .spinner .spinner-container .spinner-rotator .spinner-left {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  overflow: hidden;
  right: 50%;
}
.preloader .loader .spinner .spinner-container .spinner-rotator .spinner-right {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  left: 50%;
}
.preloader .loader .spinner-circle {
  box-sizing: border-box;
  position: absolute;
  width: 200%;
  height: 100%;
  border-style: solid;
  border-color: var(--primary-color) var(--primary-color) var(--border-color);
  border-radius: 50%;
  border-width: 6px;
}
.preloader .loader .spinner-left .spinner-circle {
  left: 0;
  right: -100%;
  border-right-color: var(--border-color);
  animation: spinner-left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}
.preloader .loader .spinner-right .spinner-circle {
  left: -100%;
  right: 0;
  border-left-color: var(--border-color);
  animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

/************Navbar***********/
.navbar-toggler:focus {
  text-decoration: none;
  outline: none;
  box-shadow: none;
}
.navbar-toggler {
  padding: 0;
}
.navbar-toggler .toggler-icon {
  width: 30px;
  height: 2px;
  background-color: var(--color-000);
  display: block;
  margin: 5px 0;
  position: relative;
  transition: all 0.3s ease-out 0s;
}

@media only screen and (max-width: 991px) {
  .navbar-collapse {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    z-index: 9999;
    padding: 5px 12px;
  }
}

.navbar {
  padding: 6px 40px;
  border: 2px solid transparent;
}
@media only screen and (max-width: 1200px) {
  .navbar {
    padding: 6px 20px;
  }
}
@media only screen and (max-width: 576px) {
  .navbar {
    padding: 10px 15px;
  }
}
.navbar .sub-menu {
  padding: 1.5rem;
  border-radius: 20px;
  margin-top: 10px;
  border: 1px solid var(--border-color) !important;
}
.navbar .sub-menu .col-megamenu ul li a {
  padding: 7px 0px;
  font-size: 15px;
  color: var(--color-000) !important;
}
.navbar .sub-menu .col-megamenu ul li a:hover {
  color: var(--primary-color);
}

/************Nav-style***********/
.nav-container {
  border-radius: 60px;
  border-color: var(--color-fff);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  background-color: var(--glass-color);
  transition: all 0.3s ease-out 0s;
}
@media only screen and (max-width: 576px) {
  .nav-container {
    border-radius: 30px;
  }
}

.navbar-nav > .nav-item {
  position: relative;
}

.nav-link {
  padding: 20px 16px;
  display: inline-flex;
  align-items: center;
  font-weight: 500;
  color: var(--color-900);
  cursor: pointer;
}
.nav-link:hover {
  color: var(--secondary-color);
}

.header-menubar {
  opacity: 0;
  visibility: hidden;
  display: none;
  transform: translateY(-12px);
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
}
.header-menubar.is-active {
  opacity: 1;
  visibility: visible;
  display: block;
  transform: translateY(0);
  pointer-events: auto;
}
.header-menubar a {
  display: block;
  padding: 6px 0;
  color: var(--color-000);
  text-decoration: none;
  transition: color 0.25s ease;
}
.header-menubar a:hover {
  color: var(--secondary-color);
}

.mega-content {
  padding: 32px 40px;
  min-height: 220px;
}

.col-megamenu a img {
  max-width: 900px;
  width: 100%;
  height: 100%;
  border-radius: 20px;
}
@media only screen and (max-width: 1400px) {
  .col-megamenu a img {
    max-width: 780px;
  }
}
@media only screen and (max-width: 1200px) {
  .col-megamenu a img {
    max-width: 470px;
  }
}
@media only screen and (max-width: 576px) {
  .col-megamenu a img {
    margin-top: 10px;
    max-width: auto;
    border-radius: 10px;
  }
}

.sub-menu[data-mega-panel] {
  display: none;
  opacity: 0;
  transform: translateY(-8px);
  transition: opacity 0.25s ease, transform 0.25s ease;
}
.sub-menu[data-mega-panel].is-active {
  display: block;
  opacity: 1;
  transform: translateY(0);
}

.navbar-area {
  z-index: 999;
  transition: all 0.2s ease-out 0s;
  padding: 0;
  margin-top: 10px;
  border: 2px solid transparent;
}
.navbar-area .navbar {
  position: relative;
}
.navbar-area .navbar .Comman-btn.Common-btn-2 {
  margin-right: 10px;
  width: 40px;
  height: 40px;
  padding: 10px 17px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-900);
  border: 1px solid var(--border-color);
  background: transparent !important;
}
@media only screen and (max-width: 991px) {
  .navbar-area .navbar .Comman-btn {
    margin-right: 10px;
    width: 40px;
    height: 40px;
    padding: 10px 17px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-900);
    border: 1px solid var(--border-color);
    background: transparent !important;
  }
}
@media only screen and (max-width: 1399px) {
  .navbar-area .navbar .Comman-btn {
    font-size: 16px !important;
  }
}
@media only screen and (max-width: 1200px) {
  .navbar-area .navbar .Comman-btn {
    font-size: 13px !important;
  }
}
.navbar-area .navbar .schedule-call-btn img {
  transition: all 0.2s ease-in-out 0s;
}
.navbar-area .navbar .schedule-call-btn:hover > img {
  transform: rotate(43deg);
}
.navbar-area .navbar .navbar-toggler {
  padding: 5px 7px !important;
  border: 1px solid var(--border-color) !important;
}
.navbar-area .navbar-brand {
  padding: 0;
}
@media only screen and (max-width: 375px) {
  .navbar-area .navbar-brand {
    margin-right: 5px;
  }
}
.navbar-area .navbar-brand img {
  max-width: 75px;
}
@media only screen and (max-width: 600px) {
  .navbar-area .navbar-brand img {
    max-width: 55px;
  }
}
@media only screen and (max-width: 375px) {
  .navbar-area .navbar-brand img {
    max-width: 48px;
  }
}
@media only screen and (max-width: 375px) {
  .navbar-area .navbar-brand span {
    font-size: 16px !important;
  }
}
.navbar-area .navbar-toggler.active .toggler-icon:nth-of-type(1) {
  transform: rotate(45deg);
  top: 7px;
}
.navbar-area .navbar-toggler.active .toggler-icon:nth-of-type(2) {
  opacity: 0;
}
.navbar-area .navbar-toggler.active .toggler-icon:nth-of-type(3) {
  transform: rotate(135deg);
  top: -7px;
}
@media only screen and (min-width: 991px) {
  .navbar-area .navbar-nav {
    align-items: center;
  }
}
.navbar-area .navbar-nav .nav-item {
  position: relative;
  z-index: 1;
}
.navbar-area .navbar-nav .nav-item:hover a.pw-menu::after,
.navbar-area .navbar-nav .nav-item:hover span[data-mega-link].pw-menu::after {
  color: var(--secondary-color) !important;
  transform: rotate(0deg) !important;
}
.navbar-area .navbar-nav .nav-item a,
.navbar-area .navbar-nav .nav-item span[data-mega-link] {
  font-size: 16px;
  transition: all 0.3s ease-out 0s;
  position: relative;
  padding: 20px;
  display: inline-flex;
  align-items: center;
}
@media only screen and (max-width: 1280px) {
  .navbar-area .navbar-nav .nav-item a,
  .navbar-area .navbar-nav .nav-item span[data-mega-link] {
    font-size: 13px;
    padding: 14px;
  }
}
@media only screen and (max-width: 991px) {
  .navbar-area .navbar-nav .nav-item a,
  .navbar-area .navbar-nav .nav-item span[data-mega-link] {
    font-size: 16px;
    padding: 15px;
  }
}
.navbar-area .navbar-nav .nav-item a.active,
.navbar-area .navbar-nav .nav-item span[data-mega-link].active {
  color: var(--secondary-color);
}
.navbar-area .navbar-nav .nav-item a.pw-menu::after,
.navbar-area .navbar-nav .nav-item span[data-mega-link].pw-menu::after {
  display: inline-block;
  margin-left: 0.5em;
  vertical-align: 0.255em;
  font-size: 13px;
  content: "\ea5e";
  transform: rotate(180deg);
  font-family: "LineIcons";
  transition: transform 0.2s ease;
  color: #999999;
}
.navbar-area .navbar-nav .nav-item .sub-menu {
  min-width: 200px;
  padding: 1rem;
  border-radius: 20px;
  margin-top: 10px;
  border: 1px solid var(--border-color) !important;
  position: absolute;
  top: 110%;
  left: auto;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease-out 0s;
}
@media (max-width: 991px) {
  .navbar-area .navbar-nav .nav-item .sub-menu {
    position: unset;
    opacity: 1;
    visibility: visible;
  }
}
.navbar-area .navbar-nav .nav-item .sub-menu > li {
  display: block;
  margin-left: 0;
}
.navbar-area .navbar-nav .nav-item .sub-menu > li:last-child {
  border: none;
}
.navbar-area .navbar-nav .nav-item .sub-menu > li:hover > a {
  color: var(--secondary-color);
}
.navbar-area .navbar-nav .nav-item .sub-menu > li > a {
  font-weight: 400;
  display: block;
  padding: 7px 15px;
  font-size: 14px;
  color: var(--text-color);
}
.navbar-area .navbar-nav .nav-item .sub-menu > li > a:hover {
  background: rgba(0, 0, 0, 0.05);
}
.navbar-area .navbar-nav .nav-item .sub-menu > li.active > a {
  color: var(--secondary-color);
}
.navbar-area .navbar-nav .nav-item .sub-menu.left-menu {
  left: -100%;
}
.navbar-area .navbar-nav .nav-item .sub-menu.collapse:not(.show) {
  display: block;
}
.navbar-area .navbar-nav .nav-item.header-user-profile .sub-menu {
  left: auto;
  right: 4%;
}
.navbar-area .navbar-nav .nav-item.header-user-profile .sub-menu:after {
  left: auto;
  right: 4%;
}

.nav-menu-header {
  max-width: calc(100% - 20px);
  border-color: var(--color-fff);
  border-radius: 30px;
  margin-left: auto;
  margin-right: auto;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  background-color: var(--glass-color);
  box-shadow: 0 10px 30px var(--color-200);
  transition: all 0.3s ease-out 0s;
}
@media only screen and (max-width: 991px) {
  .nav-menu-header {
    height: calc(100vh - 24px);
    overflow-y: auto;
    overflow-x: hidden;
  }
}
@media only screen and (max-width: 576px) {
  .nav-menu-header .container {
    padding: 0px 2px !important;
  }
}

/************Herobanner-style***********/
.bg-radial {
  width: 100%;
  overflow: clip;
}

.sticky-xl-top,
.sticky-lg-top,
.sticky-md-top,
.sticky-sm-top,
.sticky-top {
  z-index: 960 !important;
}

.hero-section {
  padding: 100px 0px 70px 0px;
  position: relative;
  height: 752px;
  display: flex;
  align-items: center;
  background-image: url(./images/hero-bg-effect.png?ee7d461f1ff25250e1a33de30a1cf63e);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media only screen and (max-width: 1280px) {
  .hero-section {
    height: 643px;
    padding-bottom: 16px;
  }
}
@media only screen and (max-width: 1024px) {
  .hero-section {
    height: 503px;
    padding-bottom: 16px;
  }
}
@media only screen and (max-width: 991px) {
  .hero-section {
    height: auto;
    padding: 130px 0px 50px 0px;
  }
}
.hero-section:before {
  position: absolute;
  content: " ";
  width: 1100px;
  height: 888px;
  top: 87px;
  left: -397px;
  background: radial-gradient(50% 50% at 50% 50%, rgb(78, 84, 165) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.2;
}
@media (max-width: 1200px) {
  .hero-section:before {
    width: 875px;
    height: 888px;
    top: 28px;
    left: -201px;
  }
}
@media (max-width: 768px) {
  .hero-section:before {
    width: 500px;
    height: 500px;
    top: 0;
    left: -201;
  }
}
.hero-section:after {
  position: absolute;
  content: " ";
  width: 875px;
  height: 888px;
  top: 28px;
  right: -279px;
  background: radial-gradient(50% 50% at 50% 50%, rgba(241, 34, 86, 0.911) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.15;
}
@media (max-width: 1200px) {
  .hero-section:after {
    width: 875px;
    height: 888px;
    top: -48px;
    right: -272px;
  }
}
@media (max-width: 768px) {
  .hero-section:after {
    background: radial-gradient(50% 50% at 50% 50%, rgba(241, 34, 86, 0.79) 0%, rgba(255, 255, 255, 0) 100%);
    width: 500px;
    height: 500px;
    top: 0;
  }
}
.hero-section .hero-content-wrapper h1, .hero-section .hero-content-wrapper .h1 {
  color: var(--color-000);
}
.hero-section .hero-content-wrapper p {
  font-size: 26px;
}
@media (max-width: 768px) {
  .hero-section .hero-content-wrapper p {
    font-size: 16px !important;
  }
}
.hero-section .hero-title.title-font {
  font-family: var(--title-font-fraunces) !important;
  font-weight: 600;
  letter-spacing: 1px;
  text-align: center;
  font-size: 93px;
}
.hero-section .hero-title.title-font svg {
  width: 100px;
  height: 100px;
}
@media (max-width: 1200px) {
  .hero-section .hero-title.title-font {
    font-size: 50px !important;
  }
  .hero-section .hero-title.title-font svg {
    width: 60px;
    height: 60px;
  }
}
@media (max-width: 768px) {
  .hero-section .hero-title.title-font {
    font-size: 30px !important;
  }
  .hero-section .hero-title.title-font svg {
    width: 40px;
    height: 40px;
  }
}
@media (max-width: 480px) {
  .hero-section .hero-title.title-font {
    font-size: 21px !important;
  }
  .hero-section .hero-title.title-font svg {
    width: 30px;
    height: 30px;
  }
}

@media (max-width: 991px) {
  .page-title {
    padding-top: 0px;
  }
}

/************Clientlogo-style***********/
.client-logo-section {
  position: relative;
}
.client-logo-section::after {
  position: absolute;
  content: " ";
  width: 920px;
  height: 1212px;
  top: -500px;
  left: 35%;
  transform: translateX(-50%);
  background: radial-gradient(50% 50% at 50% 50%, rgb(241, 34, 86) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.15;
}
@media (max-width: 1200px) {
  .client-logo-section::after {
    width: 500px;
    height: 600px;
    top: -235px;
    left: 35%;
  }
}
@media (max-width: 768px) {
  .client-logo-section::after {
    width: 500px;
    height: 500px;
    top: -167px;
  }
}
.client-logo-section .client-logo-wrapper {
  background-color: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-radius: 100px;
  padding: 0px 30px;
  position: relative;
  z-index: 1;
}
@media (max-width: 991px) {
  .client-logo-section .client-logo-wrapper {
    padding: 0px 15px;
  }
}
.client-logo-section .client-logo-wrapper .client-logo-carousel {
  border-radius: 100px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.client-logo-section .client-logo-wrapper .client-logo-carousel .client-logo {
  padding: 10px;
  text-align: center;
  margin: auto;
}
.client-logo-section .client-logo-wrapper .client-logo-carousel .client-logo img {
  max-width: 100px;
  width: 100%;
  transition: all 0.3s ease-out 0s;
  border-radius: 5px;
  cursor: grab;
}
.client-logo-section .client-logo-wrapper .client-logo-carousel .client-logo img:hover {
  opacity: 1;
}
.client-logo-section .tns-controls {
  display: none;
}

/************Service-style***********/
.service-section {
  position: relative;
  max-width: calc(100vw - 50px);
  margin: 0px auto;
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .service-section {
    margin-bottom: 50px;
  }
}
.service-section {
  padding: 70px 0 100px 0;
  border-radius: 50px;
  background: linear-gradient(180deg, rgba(var(--secondary-rgb), 0.15) 0%, rgba(var(--primary-rgb), 0.15) 100%);
  z-index: 1;
}
@media (max-width: 1199px) {
  .service-section {
    max-width: calc(100vw - 30px);
  }
}
@media (max-width: 576px) {
  .service-section {
    padding: 42px 0;
    border-radius: 0;
    max-width: 100vw;
  }
}
.service-section .service-box .box-content-style {
  background-image: url(./images/service-card-bg.svg?75b28487647dc99c375faa0d08b190ba);
  background-repeat: repeat;
  background-size: 100%;
  background-position: center;
  border-radius: 30px;
  padding: 25px;
}
.service-section .service-box .service-content h5, .service-section .service-box .service-content .h5 {
  color: var(--color-000);
}
.service-section .service-bottom {
  position: absolute;
  bottom: -21px;
  left: 50%;
  transform: translateX(-50%);
}

.service-full-inforamtion {
  position: relative;
}
.service-full-inforamtion .service-inner:nth-child(even) {
  margin-top: 40px;
}
.service-full-inforamtion .service-inner .service-provided {
  padding: 40px;
  border: 1px solid var(--border-color);
  height: 260px;
  background: var(--soft-gradient);
}
.service-full-inforamtion:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0px;
  background-image: url(./images/service-circle.png?97700153d8ac8780729207d416bbebe0);
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: auto;
  width: 100%;
  height: 100%;
  opacity: 0.4;
}

/************ our-products ***********/
.our-works {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .our-works {
    padding-bottom: 50px;
  }
}
.our-works {
  position: relative;
  z-index: 1;
}
.our-works .works-box {
  position: relative;
  border-radius: 50px;
  overflow: hidden;
}
.our-works .works-box .works-name {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 15px 40px;
  background-color: var(--glass-color);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.our-works .works-box .works-name h5, .our-works .works-box .works-name .h5 {
  color: var(--color-000);
}
@media (max-width: 768px) {
  .our-works .works-box .works-name {
    padding: 15px;
  }
}
@media (max-width: 768px) {
  .our-works .works-box {
    border-radius: 20px;
  }
}
.our-works:before {
  position: absolute;
  content: " ";
  width: 1100px;
  height: 888px;
  bottom: -300px;
  left: -397px;
  background: radial-gradient(50% 50% at 50% 50%, rgb(78, 84, 165) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.2;
  z-index: -1;
}
@media (max-width: 1200px) {
  .our-works:before {
    width: 875px;
    height: 888px;
    top: 28px;
    left: -201px;
  }
}
@media (max-width: 768px) {
  .our-works:before {
    width: 500px;
    height: 500px;
    top: 0;
    left: -201;
  }
}
.our-works:after {
  position: absolute;
  content: " ";
  width: 875px;
  height: 888px;
  top: -350px;
  right: -349px;
  background: radial-gradient(50% 50% at 50% 50%, rgba(241, 34, 86, 0.911) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.15;
  z-index: -1;
}
@media (max-width: 1200px) {
  .our-works:after {
    width: 875px;
    height: 888px;
    top: -48px;
    right: -272px;
  }
}
@media (max-width: 768px) {
  .our-works:after {
    background: radial-gradient(50% 50% at 50% 50%, rgba(241, 34, 86, 0.79) 0%, rgba(255, 255, 255, 0) 100%);
    width: 500px;
    height: 500px;
    top: 0;
  }
}

/************Home cta***********/
.cta {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .cta {
    padding-bottom: 50px;
  }
}
.cta .cta-box {
  overflow: hidden;
  border-radius: 40px;
  background: var(--color-fff);
  padding: 100px 90px;
  position: relative;
  z-index: 1;
}
.cta .cta-box h2, .cta .cta-box .h2 {
  color: var(--color-000);
}
@media (min-width: 1200px) {
  .cta .cta-box h2, .cta .cta-box .h2 {
    font-size: 70px;
  }
}
@media (max-width: 576px) {
  .cta .cta-box h2, .cta .cta-box .h2 {
    font-size: 23px;
  }
  .cta .cta-box {
    padding: 50px 20px;
    border-radius: 20px;
  }
}
.cta .cta-box:before {
  position: absolute;
  content: " ";
  width: 500px;
  height: 500px;
  top: 39px;
  left: -300px;
  background: radial-gradient(50% 50% at 50% 50%, rgb(78, 84, 165) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.2;
  z-index: -1;
}
.cta .cta-box:after {
  position: absolute;
  content: " ";
  width: 1600px;
  height: 888px;
  top: -300px;
  right: -300px;
  background: radial-gradient(50% 50% at 50% 50%, rgba(241, 34, 86, 0.911) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.15;
  z-index: -1;
}
.cta.subscribe-box .cta-box,
.cta.subscribe-box .cta-common-box {
  padding: 60px 90px;
}
@media (max-width: 576px) {
  .cta.subscribe-box .cta-box,
  .cta.subscribe-box .cta-common-box {
    padding: 50px 20px;
  }
}

/************Common cta***********/
.cta-common-box {
  overflow: hidden;
  border-radius: 40px;
  background: var(--color-fff);
  padding: 100px 70px;
  position: relative;
  z-index: 1;
}
.cta-common-box h3, .cta-common-box .h3 {
  color: var(--color-000);
}
@media (min-width: 1200px) {
  .cta-common-box h3, .cta-common-box .h3 {
    font-size: 43px;
  }
}
@media (max-width: 576px) {
  .cta-common-box h3, .cta-common-box .h3 {
    font-size: 22px;
  }
  .cta-common-box {
    padding: 50px 20px;
    border-radius: 20px;
  }
}
.cta-common-box:before {
  position: absolute;
  content: " ";
  width: 500px;
  height: 500px;
  top: 39px;
  left: -300px;
  background: radial-gradient(50% 50% at 50% 50%, rgb(78, 84, 165) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.2;
  z-index: -1;
}
.cta-common-box:after {
  position: absolute;
  content: " ";
  width: 1600px;
  height: 888px;
  top: -300px;
  right: -300px;
  background: radial-gradient(50% 50% at 50% 50%, rgba(241, 34, 86, 0.911) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.15;
  z-index: -1;
}

/************service-section***********/
.our-products {
  position: relative;
  max-width: calc(100vw - 50px);
  margin: 0 auto;
  padding: 70px 0 100px;
  border-radius: 50px;
  background: url(./images/products-bg.svg?1285e1b6f8c060158f7fff67377da54f) center repeat;
  background-size: 100%;
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .our-products {
    margin-bottom: 50px;
  }
}
.our-products .product-bottom {
  position: absolute;
  left: 50%;
  bottom: -21px;
  transform: translateX(-50%);
}
@media (max-width: 1199px) {
  .our-products {
    max-width: calc(100vw - 30px);
  }
}
@media (max-width: 576px) {
  .our-products {
    padding: 42px 0;
    border-radius: 0;
    max-width: 100vw;
  }
}
.our-products .item .product-content {
  padding: 30px;
}
@media (max-width: 991px) {
  .our-products .item .product-content {
    padding: 20px;
  }
}
@media (max-width: 767px) {
  .our-products .item .product-content {
    padding: 30px 0 0;
  }
}
.our-products .item .product-content .product-title,
.our-products .item .product-content .product-tags {
  color: var(--text-color);
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .our-products .item .product-content .product-title,
  .our-products .item .product-content .product-tags {
    margin-bottom: 15px;
  }
}
.our-products .item .product-content .product-title {
  font-size: 36px;
  font-weight: 700;
}
@media (max-width: 1199px) {
  .our-products .item .product-content .product-title {
    font-size: 28px;
  }
}
@media (max-width: 576px) {
  .our-products .item .product-content .product-title {
    font-size: 23px;
  }
}
.our-products .item .product-content .product-tags {
  display: flex;
  flex-direction: column;
  gap: 23px;
}
.our-products .item .product-content .product-tags .product-tag {
  display: flex;
  align-items: center;
  gap: 15px;
}
.our-products .item .product-content .product-tags .product-tag img {
  border-radius: 0px;
  width: 32px;
}
@media (max-width: 767px) {
  .our-products .item .product-content .product-tags {
    gap: 15px;
  }
}
.our-products .item .product-content .product-description {
  color: var(--text-color);
  font-size: 20px;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .our-products .item .product-content .product-description {
    font-size: 16px;
  }
}
.our-products .owl-carousel {
  clip-path: inset(0px -100vw 0px 0px);
}
.our-products .owl-carousel .owl-stage-outer {
  overflow: visible !important;
}
.our-products .owl-carousel .owl-item {
  opacity: 0;
  visibility: hidden;
  transform: scale(0.9);
  transition: all 0.5s ease-in-out;
}
.our-products .owl-carousel .owl-item img {
  border-radius: 50px;
}
@media (max-width: 768px) {
  .our-products .owl-carousel .owl-item img {
    border-radius: 20px;
  }
}
.our-products .owl-carousel .owl-item.active {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
}
.our-products .owl-carousel .owl-item.active ~ .owl-item {
  opacity: 0.4;
  visibility: visible;
  transform: scale(0.9);
}
@media (max-width: 767px) {
  .our-products .owl-carousel .owl-item {
    transform: scale(0.95);
  }
  .our-products .owl-carousel .owl-item.active ~ .owl-item {
    transform: scale(0.95);
  }
}
.our-products .owl-carousel .owl-dots {
  text-align: center;
  margin-top: 30px;
}
.our-products .owl-carousel .owl-dots .owl-dot {
  width: 10px;
  height: 10px;
  background: #d4d4d4 !important;
  border-radius: 50%;
  display: inline-block;
  margin: 0 5px;
  transition: background 0.3s ease;
}
.our-products .owl-carousel .owl-dots .owl-dot.active {
  background: var(--primary-color) !important;
}

.bg-waves {
  background: url(./images/products-bg.svg?1285e1b6f8c060158f7fff67377da54f) center no-repeat;
  background-size: cover;
}

/************testimonial-style***********/
.testimonial-section {
  max-width: calc(100vw - 50px);
  margin: 0 auto;
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .testimonial-section {
    margin-bottom: 50px;
  }
}
.testimonial-section {
  border-radius: 50px;
  padding: 70px 0px;
  background-color: rgba(var(--mint-light), 1);
}
.testimonial-section .testimonial-box {
  border: 1px solid var(--color-400);
  border-radius: 30px;
  padding: 10px;
}
.testimonial-section .testimonial-box .testimonial-content {
  padding: 10px 20px;
}
.testimonial-section .testimonial-box .testimonial-content .testimonial-description {
  font-size: 14px;
  color: var(--text-color);
}
.testimonial-section .testimonial-box .testimonial-content .testimonial-info {
  margin-bottom: 15px;
}
.testimonial-section .testimonial-box .testimonial-content .testimonial-info h5, .testimonial-section .testimonial-box .testimonial-content .testimonial-info .h5 {
  color: var(--text-color);
  text-transform: uppercase;
}
.testimonial-section .testimonial-image img {
  border-radius: 20px;
  max-width: 175.82px;
  max-height: 240px;
}
@media (max-width: 1200px) {
  .testimonial-section .testimonial-image img {
    max-height: 200px !important;
    height: 100%;
    width: 200px !important;
    display: inline !important;
  }
}
@media (min-width: 576px) {
  .testimonial-section h2, .testimonial-section .h2 {
    font-size: 42px;
  }
}
@media (max-width: 1199px) {
  .testimonial-section {
    max-width: calc(100vw - 30px);
  }
}
@media (max-width: 576px) {
  .testimonial-section {
    padding: 42px 0;
    border-radius: 0;
    max-width: 100vw;
  }
}

.bg-vanilla-light {
  background-color: rgb(var(--vanilla-light));
}

.bg-cyan-ice {
  background-color: rgb(var(--cyan-ice));
}

.bg-lavender-mist {
  background-color: rgb(var(--lavender-mist));
}

/************Industry Expertise***********/
.industry-expertise {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .industry-expertise {
    padding-bottom: 50px;
  }
}
.industry-expertise .more-expertise-title {
  color: var(--color-700);
  font-size: 26px;
}
.industry-expertise .industry-expertise-content {
  width: 100%;
  padding: 25px;
  border-radius: 30px;
}
.industry-expertise .industry-expertise-content .industry-expertise-title {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  margin-bottom: 25px;
}
.industry-expertise .industry-expertise-content ul,
.industry-expertise .industry-expertise-content p {
  padding: 0 !important;
  color: var(--text-color);
}
.industry-expertise .industry-expertise-content ul li,
.industry-expertise .industry-expertise-content p li {
  list-style: inside !important;
}
.industry-expertise .industry-expertise-content ul.list-unstyled li {
  list-style: none !important;
}

/************Tech Stack***********/
.tech-stack {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .tech-stack {
    padding-bottom: 50px;
  }
}
.tech-stack {
  position: relative;
  z-index: 5;
}
.tech-stack .nav-tabs {
  padding-left: 25px !important;
  border: none !important;
}
.tech-stack .nav-tabs .nav-link {
  padding: 0.5rem 1rem !important;
  border-color: var(--color-300) !important;
  margin-right: 4px;
}
.tech-stack .nav-tabs .nav-link.active, .tech-stack .nav-tabs .nav-link:hover {
  background: var(--tab-gradient);
  border-color: transparent !important;
  color: var(--color-900);
}
@media (max-width: 767px) and (min-width: 576px) {
  .tech-stack .nav-tabs .nav-link {
    font-size: 12px !important;
  }
}
@media (max-width: 576px) {
  .tech-stack .nav-tabs .nav-link {
    border-radius: 10px !important;
  }
}
@media (max-width: 576px) {
  .tech-stack .nav-tabs {
    padding-left: 0 !important;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 20px;
  }
}
.tech-stack .tab-content {
  padding: 20px !important;
  border-color: var(--color-300) !important;
  border-radius: 30px !important;
}
@media (max-width: 576px) {
  .tech-stack .tab-content {
    padding: 10px !important;
  }
}
.tech-stack .tab-content .tech-stack-col {
  padding: 20px 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background-color: var(--color-200);
  gap: 10px;
  text-align: center;
  border-radius: 20px;
  height: 100%;
}
.tech-stack .tab-content .tech-stack-col span {
  color: var(--color-700);
}
.tech-stack .tab-content .tech-stack-col img {
  width: 50px;
  height: 50px;
}

/************faq***********/
.faq-section {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .faq-section {
    padding-bottom: 50px;
  }
}
.faq-section .accordion-item {
  border: none;
  border-top: 1px solid var(--color-200);
  background-color: transparent;
}
.faq-section .accordion-item:first-child {
  border-top: none;
}
.faq-section .accordion-button {
  background-color: transparent !important;
  box-shadow: none !important;
  color: var(--color-800);
  font-weight: 600;
  padding: 20px 0;
  text-align: left;
}
.faq-section .accordion-button::after {
  background-image: url(./images/arrow-down.svg?e63de38073b732db7eaabd9763e07aea);
  background-repeat: no-repeat;
  background-size: contain;
  width: 16px;
  height: 16px;
  content: "";
  transition: all 0.3s ease-in-out;
}
.faq-section .accordion-button:not(.collapsed) {
  color: var(--color-900);
}
.faq-section .accordion-button:not(.collapsed)::after {
  transform: rotate(-180deg);
}
.faq-section .accordion-body {
  padding: 0 0 20px 0;
  color: var(--color-500);
  font-size: 0.9rem;
  line-height: 180%;
}

/************Hiring-models-section***********/
.hiring-models-section {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .hiring-models-section {
    padding-bottom: 50px;
  }
}
.hiring-models-section h5, .hiring-models-section .h5 {
  color: var(--text-color);
}
@media screen and (max-width: 576px) {
  .hiring-models-section h5, .hiring-models-section .h5 {
    font-size: 1.1rem;
  }
}
.hiring-models-section .hire-model-box {
  padding: 40px;
  border-radius: 30px;
  height: 100%;
}
@media screen and (max-width: 1199px) {
  .hiring-models-section .hire-model-box {
    padding: 30px;
  }
}
@media screen and (max-width: 576px) {
  .hiring-models-section .hire-model-box {
    padding: 24px;
    border-radius: 20px;
  }
}
.hiring-models-section .hire-model-box .model-details {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.hiring-models-section .hire-model-box .model-details .detail-row {
  display: flex;
  align-items: center;
  gap: 0px;
}
.hiring-models-section .hire-model-box .model-details .detail-row .detail-label,
.hiring-models-section .hire-model-box .model-details .detail-row .detail-value {
  padding: 12px 20px;
  border-radius: 12px;
  font-weight: 600;
  flex: 1;
  display: flex;
  align-items: center;
  font-size: 15px;
  min-height: 50px;
}
@media screen and (max-width: 576px) {
  .hiring-models-section .hire-model-box .model-details .detail-row .detail-label,
  .hiring-models-section .hire-model-box .model-details .detail-row .detail-value {
    padding: 8px 12px;
    font-size: 13px;
    min-height: 40px;
  }
}
@media screen and (max-width: 400px) {
  .hiring-models-section .hire-model-box .model-details .detail-row .detail-label,
  .hiring-models-section .hire-model-box .model-details .detail-row .detail-value {
    padding: 6px 8px;
    font-size: 12px;
  }
}
.hiring-models-section .hire-model-box .model-details .detail-row .detail-label {
  background: var(--color-fff);
  color: var(--text-color);
}
.hiring-models-section .hire-model-box .model-details .detail-row .detail-value {
  justify-content: center;
  text-align: center;
  color: var(--text-color);
}

.bg-blush-pink-gradient {
  background: var(--blush-pink-gradient);
}
.bg-blush-pink-gradient .detail-value {
  background: rgb(var(--blush-pink));
}
.bg-blush-pink-gradient .detail-label {
  border: 1px solid rgb(var(--blush-pink));
}

.bg-blush-pink {
  background: rgba(var(--blush-pink), 0.3);
}
.bg-blush-pink.border-color {
  border-color: 1px solid rgba(var(--blush-pink), 1);
}

.bg-sky-blue-fade-gradient {
  background: var(--sky-blue-fade-gradient);
}
.bg-sky-blue-fade-gradient .detail-value {
  background: rgb(var(--sky-blue));
}
.bg-sky-blue-fade-gradient .detail-label {
  border: 1px solid rgb(var(--sky-blue));
}

.bg-lavender-fade-gradient {
  background: var(--lavender-fade-gradient);
}
.bg-lavender-fade-gradient .detail-value {
  background: rgb(var(--lavender));
}
.bg-lavender-fade-gradient .detail-label {
  border: 1px solid rgb(var(--lavender));
}

.bg-blush-lavender {
  background: rgba(var(--lavender), 0.3);
}
.bg-blush-lavender.border-color {
  border-color: 1px solid rgba(var(--lavender), 1);
}

/************our pillar***********/
.our-pillar {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .our-pillar {
    padding-bottom: 50px;
  }
}
.our-pillar {
  position: relative;
  z-index: 5;
}
.our-pillar::after {
  position: absolute;
  content: " ";
  width: 920px;
  height: 1212px;
  top: -500px;
  left: 35%;
  transform: translateX(-50%);
  background: radial-gradient(50% 50% at 50% 50%, rgb(241, 34, 86) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.15;
  z-index: -1;
}
@media (max-width: 1200px) {
  .our-pillar::after {
    width: 500px;
    height: 600px;
    top: -235px;
    left: 35%;
  }
}
@media (max-width: 768px) {
  .our-pillar::after {
    width: 500px;
    height: 500px;
    top: -167px;
  }
}
.our-pillar .card-box {
  position: relative;
  padding-bottom: 90px;
}
.our-pillar .card-box h4, .our-pillar .card-box .h4 {
  color: var(--text-color);
}
.our-pillar .card-box img {
  width: 100%;
  border-radius: 40px;
  position: relative;
  z-index: 2;
  margin-bottom: 20px;
}
@media (max-width: 576px) {
  .our-pillar .card-box img {
    border-radius: 30px;
  }
}
.our-pillar .card-box .card-content {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 110px 30px 30px;
  border-radius: 0 0 40px 40px;
  z-index: 1;
  border: 1px solid var(--border-color);
}
@media (max-width: 1200px) {
  .our-pillar .card-box .card-content {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (max-width: 576px) {
  .our-pillar .card-box .card-content {
    border-radius: 0 0 30px 30px;
  }
}
.our-pillar {
  /* Responsive Fix */
}
@media (max-width: 767px) {
  .our-pillar .card-box {
    padding-bottom: 70px;
  }
  .our-pillar .card-box .card-content {
    padding: 90px 20px 24px;
  }
}

/************Team-style***********/
.team-section {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .team-section {
    padding-bottom: 50px;
  }
}
.team-section {
  position: relative;
  z-index: 1;
}
.team-section .single-team {
  overflow: hidden;
  border-radius: 25px;
  box-shadow: 0 0 12px rgba(110, 89, 162, 0.16);
}
.team-section .single-team .team-img {
  position: relative;
  overflow: hidden;
}
.team-section .single-team .team-img img {
  width: 100%;
}
.team-section .single-team .team-info {
  padding: 14px 16px;
  text-align: left;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  background-color: var(--glass-color);
  width: 100%;
  border-radius: 0 0 25px 25px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.team-section .single-team .team-info h4, .team-section .single-team .team-info .h4 {
  margin-bottom: 5px;
}
.team-section .single-team .team-info span {
  font-size: 16px;
  display: block;
  margin: 5px 0;
}

/************Box-style***********/
.pw-box {
  padding: 40px 30px;
  border: 1px solid var(--border-color);
  border-radius: 10px;
  height: 350px;
  margin-bottom: 30px;
  transition: all 0.3s ease-out 0s;
}
@media (max-width: 600px) {
  .pw-box {
    height: auto;
  }
}
.pw-box:hover {
  box-shadow: 0 0 12px rgba(110, 89, 162, 0.16);
}
.pw-box:hover .box-icon-style {
  color: var(--white-color);
  border-color: transparent;
  background: linear-gradient(var(--primary-color) 0%, var(--second-color) 100%);
}
.pw-box:hover .box-icon-style::after {
  opacity: 1;
  visibility: visible;
}
.pw-box .box-icon-style {
  width: 78px;
  height: 78px;
  border-radius: 50%;
  margin-bottom: 25px;
  background: var(--white-color);
  border: 2px solid var(--primary-color);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--primary-color);
  font-size: 40px;
  transition: all 0.3s ease-out 0s;
  position: relative;
}
.pw-box .box-icon-style::after {
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
  visibility: hidden;
  background: linear-gradient(var(--primary-color) 0%, var(--second-color) 100%);
  transition: all 0.3s ease-out 0s;
  z-index: -1;
  border-radius: 50%;
  border: 1px solid transparent;
}
.pw-box .box-content-style h4, .pw-box .box-content-style .h4 {
  font-size: 25px;
  font-weight: 600;
  margin-bottom: 20px;
}
@media (max-width: 480px) {
  .pw-box .box-content-style h4, .pw-box .box-content-style .h4 {
    font-size: 20px;
    margin-bottom: 10px;
  }
}

.checkservice {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  flex-wrap: wrap;
}
.checkservice > input[type=checkbox] {
  height: 0em;
  width: 0em;
  background: none;
  display: none;
  box-sizing: border-box;
  padding: 0;
}
.checkservice > input[type=checkbox]:checked + label, .checkservice > input[type=checkbox]:hover + label {
  background: var(--color-fff);
  color: var(--color-900);
  border: 1px solid var(--secondary-color);
}
.checkservice > label {
  background: var(--color-200);
  color: var(--color-700);
  border: 1px solid transparent;
  border-radius: 21px;
  cursor: pointer;
  font-size: 16px;
  padding: 8px 12px;
  line-height: 17px;
}

.contact-option {
  text-align: center;
  margin-top: 44px;
  margin-bottom: 20px;
  position: relative;
  color: var(--color-900);
}

.contact-other .mi-contact {
  display: flex;
  align-items: center;
  position: relative;
  border-radius: 18px;
  padding: 18px 20px;
  overflow: hidden;
  background-color: var(--color-fff);
}
.contact-other .mi-contact::before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 2px;
  border-radius: inherit;
  background: linear-gradient(95.28deg, rgba(var(--secondary-rgb), 1) 0%, rgba(var(--primary-rgb), 1) 100%);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: exclude;
  mask-composite: exclude;
  pointer-events: none;
}
.contact-other .mi-contact .contact-icon {
  width: 20px;
  margin-right: 1.5rem;
}
.contact-other .mi-contact .contact-icon i,
.contact-other .mi-contact .contact-icon svg {
  font-size: 24px;
  color: var(--color-700);
}
.contact-other .mi-contact .contact-icon svg {
  height: 26px;
  width: 26px;
}
.contact-other .mi-contact .contact-icon svg path {
  fill: var(--color-700);
}
.contact-other .mi-contact .contact-details span {
  font-weight: 400;
  font-size: 15px;
  line-height: 24px;
  color: var(--color-700);
  display: block;
}
.contact-other .mi-contact:hover {
  background-color: var(--color-fff);
}

.follows-btn {
  display: flex;
  width: 200px;
  height: auto;
  border: none;
  position: relative;
  border-radius: 16px;
  background: var(--color-200);
  z-index: 1;
  overflow: hidden;
  transition: all 0.3s ease-out 0s;
}
.follows-btn::before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 2px;
  border-radius: inherit;
  background: linear-gradient(95.28deg, rgba(var(--secondary-rgb), 1) 0%, rgba(var(--primary-rgb), 1) 100%);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: exclude;
  mask-composite: exclude;
  pointer-events: none;
}
@media (min-width: 767px) {
  .follows-btn {
    width: 250px;
  }
}
@media (max-width: 450px) {
  .follows-btn {
    width: auto;
  }
}
.follows-btn:hover {
  background: var(--color-fff);
}
.follows-btn:hover span {
  color: var(--color-900);
}
.follows-btn .follow-link {
  vertical-align: middle;
  display: flex;
  justify-content: space-between;
  align-content: space-around;
  align-self: center;
  flex-grow: 1 !important;
  padding: 14px 15px;
}
.follows-btn .follow-link span {
  flex-grow: 1 !important;
  align-self: center;
  padding-left: 11px;
  font-size: 15px;
  letter-spacing: 0px;
  color: var(--color-700);
}
@media (min-width: 767px) {
  .follows-btn .follow-link span {
    font-size: 20px;
  }
}
@media (max-width: 450px) {
  .follows-btn .follow-link span {
    display: none;
  }
}

.center-block {
  justify-content: center;
  align-items: center;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
@media (min-width: 991px) {
  .center-block {
    flex-direction: column;
  }
}

.contact-block h3, .contact-block .h3,
.contact-block h2,
.contact-block .h2 {
  display: none !important;
}
.contact-block .pt-130 {
  padding-top: 0px !important;
}
.contact-block .inquires-form {
  padding-top: 40px;
}

/************connect form**********/
.lets-connect {
  max-width: calc(100vw - 50px);
  margin: 0 auto;
  padding: 90px 0;
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .lets-connect {
    margin-bottom: 50px;
  }
}
@media (max-width: 1199px) {
  .lets-connect {
    max-width: calc(100vw - 30px);
  }
}
@media (max-width: 576px) {
  .lets-connect {
    padding: 42px 0;
    border-radius: 0;
    max-width: 100vw;
  }
}
.lets-connect {
  background: linear-gradient(180deg, rgba(var(--secondary-rgb), 0.15) 0%, rgba(var(--primary-rgb), 0.15) 100%);
  border-radius: 50px;
}
.lets-connect.contact-us {
  padding: 0;
  background: transparent;
  border-radius: 0;
  z-index: 5;
  position: relative;
}

.contact-hero {
  height: auto !important;
}
@media (min-width: 991px) {
  .contact-hero {
    padding-top: 180px;
  }
}
.contact-hero .contact-us {
  position: relative;
  z-index: 5;
}
.contact-hero .contact-us .heading-title h2, .contact-hero .contact-us .heading-title .h2 {
  color: var(--title-color) !important;
}
.contact-hero .contact-us::after {
  position: absolute;
  content: " ";
  width: 920px;
  height: 1212px;
  top: 59%;
  left: 50%;
  transform: translate(-50%, -40%);
  background: radial-gradient(50% 50% at 50% 50%, rgb(241, 34, 86) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.15;
  z-index: -1;
}
@media (max-width: 1200px) {
  .contact-hero .contact-us::after {
    width: 500px;
    height: 600px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -40%);
  }
}
@media (max-width: 768px) {
  .contact-hero .contact-us::after {
    width: 500px;
    height: 500px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -40%);
  }
}

/************ About page **********/
.about-hero-section {
  height: auto !important;
}
.about-hero-section p {
  font-size: 20px;
}
@media (max-width: 576px) {
  .about-hero-section p {
    font-size: 16px;
  }
}
.about-hero-section img {
  position: relative;
  z-index: 5;
  border-radius: 20px;
  box-shadow: 0px 24px 100px 0px rgba(var(--secondary-rgb), 0.3);
}
@media (min-width: 576px) {
  .about-hero-section {
    padding-top: 150px;
  }
  .about-hero-section img {
    border-radius: 50px;
  }
}

.about-content {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .about-content {
    padding-bottom: 50px;
  }
}
.about-content {
  padding-top: 90px;
}
.about-content img {
  opacity: 0.1;
}
@media (max-width: 768px) {
  .about-content {
    padding-top: 0px;
  }
}
.about-content .title-font {
  color: var(--color-000);
}

.company-overview {
  max-width: calc(100vw - 50px);
  margin: 0 auto;
  padding: 90px 0;
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .company-overview {
    margin-bottom: 50px;
  }
}
@media (max-width: 1199px) {
  .company-overview {
    max-width: calc(100vw - 30px);
  }
}
@media (max-width: 576px) {
  .company-overview {
    padding: 42px 0;
    border-radius: 0;
    max-width: 100vw;
  }
}
.company-overview {
  background: var(--color-f6f6f6);
  border-radius: 50px;
}
.company-overview .box-content-style {
  padding: 30px;
  border-radius: 30px;
}
.company-overview .box-content-style h4, .company-overview .box-content-style .h4 {
  color: var(--color-000);
  margin-bottom: 25px;
}
.company-overview .box-content-style .box-icon {
  background-color: var(--color-fff);
  border-radius: 50%;
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}

.bg-soft-rose {
  background: rgb(var(--soft-rose));
}
.bg-soft-rose .box-icon {
  border: 1px solid rgba(var(--soft-rose), 0.22);
}
.bg-soft-rose .box-icon svg path {
  fill: var(--color-e03457) !important;
}

.bg-ice-blue {
  background: rgb(var(--ice-blue));
}
.bg-ice-blue .box-icon {
  border: 1px solid rgba(var(--ice-blue), 0.22);
}
.bg-ice-blue .box-icon svg path {
  fill: var(--color-37A2C8) !important;
}

.bg-violet-cloud {
  background: rgb(var(--violet-cloud));
}
.bg-violet-cloud .box-icon {
  border: 1px solid rgba(var(--violet-cloud), 0.22);
}
.bg-violet-cloud .box-icon svg path {
  fill: var(--color-8050E1) !important;
}

/************work-process***********/
.work-process {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .work-process {
    padding-bottom: 50px;
  }
}
.work-process .work-process-wrap {
  position: relative;
  padding: 40px 0;
}
.work-process .work-process-wrap::after {
  content: "";
  position: absolute;
  top: 52.8%;
  left: 30px;
  right: 20px;
  height: 2px;
  background-color: var(--color-e03457);
  z-index: 1;
}
@media (max-width: 1200px) {
  .work-process .work-process-wrap::after {
    display: none;
  }
}
.work-process .work-process-wrap::before {
  content: "";
  position: absolute;
  top: 52.8%;
  right: 15px;
  width: 10px;
  height: 10px;
  background-color: var(--color-e03457);
  border-radius: 50%;
  transform: translateY(-50%);
  z-index: 2;
}
@media (max-width: 1200px) {
  .work-process .work-process-wrap::before {
    display: none;
  }
}
.work-process .timeline-content {
  position: relative;
  padding-left: 40px;
  z-index: 2;
  height: 100%;
}
@media (max-width: 1200px) {
  .work-process .timeline-content {
    padding-left: 20px;
    margin-bottom: 40px;
    border-left: 2px solid var(--color-e03457);
  }
}
.work-process .timeline-content h4, .work-process .timeline-content .h4 {
  font-weight: 700;
  color: var(--color-000);
  font-size: 24px;
}
.work-process .timeline-content p {
  font-size: 15px;
  color: var(--second-text-color);
  line-height: 1.7;
}
.work-process .timeline-content .box-icon-style {
  width: 44px;
  height: 44px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 600;
  border-radius: 50%;
  border: 1px solid var(--color-e03457);
  background-color: rgba(var(--soft-rose), 0.3);
  color: var(--color-e03457);
  margin-bottom: 24px;
  position: relative;
  z-index: 5;
  box-shadow: 0 4px 10px rgba(var(--soft-rose), 0.3);
  transition: all 0.2s ease-in-out;
}
.work-process .timeline-content::before {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  background-color: var(--color-e03457);
  border-radius: 50%;
  left: 0;
  z-index: 3;
}
@media (max-width: 1200px) {
  .work-process .timeline-content::before {
    left: -7px;
    top: 0;
  }
}
.work-process .timeline-content::after {
  content: "";
  position: absolute;
  left: 5px;
  width: 40px;
  border-left: 2px solid var(--color-e03457);
  z-index: 1;
}
@media (max-width: 1200px) {
  .work-process .timeline-content::after {
    display: none;
  }
}
.work-process .timeline-content:hover > .box-icon-style {
  background-color: var(--color-e03457);
  color: var(--color-fff);
  box-shadow: 0 4px 10px rgba(var(--soft-rose), 0.9);
}
@media (min-width: 1400px) {
  .work-process .step-top::after {
    height: calc(100% - 26px);
  }
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .work-process .step-top::after {
    height: calc(100% - 35px);
  }
}
@media (min-width: 1200px) {
  .work-process .step-top {
    margin-bottom: 50px;
  }
  .work-process .step-top::before {
    top: 0;
  }
  .work-process .step-top::after {
    top: 0;
    border-bottom: 2px solid var(--color-e03457);
    border-bottom-left-radius: 30px;
  }
}
@media (min-width: 1400px) {
  .work-process .step-bottom::after {
    height: calc(100% + 78px);
  }
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .work-process .step-bottom::after {
    height: calc(100% + 87px);
  }
}
@media (min-width: 1200px) {
  .work-process .step-bottom {
    margin-top: 50px;
  }
  .work-process .step-bottom::before {
    bottom: 0;
  }
  .work-process .step-bottom::after {
    bottom: 0;
    border-top: 2px solid var(--color-e03457);
    border-top-left-radius: 30px;
  }
}

/************behind Team***********/
.behind-team {
  max-width: calc(100vw - 50px);
  margin: 0 auto;
  padding: 90px 0;
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .behind-team {
    margin-bottom: 50px;
  }
}
@media (max-width: 1199px) {
  .behind-team {
    max-width: calc(100vw - 30px);
  }
}
@media (max-width: 576px) {
  .behind-team {
    padding: 42px 0;
    border-radius: 0;
    max-width: 100vw;
  }
}
.behind-team {
  background: var(--color-ecf9f4);
  border-radius: 50px;
}

/************about-style***********/
.about-section {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .about-section {
    padding-bottom: 50px;
  }
}
.about-section {
  padding-top: 150px;
}
@media (max-width: 991px) {
  .about-section {
    padding-top: 100px;
  }
}
@media (max-width: 480px) {
  .about-section {
    padding-top: 50px;
  }
}
.about-section .about-img-wrapper img {
  width: 100%;
}

@media (min-width: 991px) {
  .card.border-gradient,
  .card.border-gradient-dashed {
    min-height: 160px;
  }
}
.card.border-gradient .card-title,
.card.border-gradient-dashed .card-title {
  font-family: var(--title-font-fraunces) !important;
  font-weight: 400;
  font-size: 59px;
  color: var(--color-000);
}
.card.border-gradient .card-body,
.card.border-gradient-dashed .card-body {
  padding: 25px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
}
.card.border-gradient .card-body .card-text,
.card.border-gradient-dashed .card-body .card-text {
  color: var(--color-000);
  font-style: italic;
}

.service-details-section {
  position: relative;
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .service-details-section {
    padding-bottom: 50px;
  }
}
.service-details-section {
  padding-top: 90px;
  z-index: 5;
}
@media (max-width: 991px) {
  .service-details-section {
    padding-top: 60px;
  }
}
@media (max-width: 480px) {
  .service-details-section {
    padding-top: 40px;
  }
}

.dedicate-hire-section {
  position: relative;
  max-width: calc(100vw - 50px);
  margin: 90px auto auto auto;
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .dedicate-hire-section {
    margin-bottom: 50px;
  }
}
.dedicate-hire-section {
  background-color: var(--color-f6f6f6);
  padding: 80px 0;
  border-radius: 50px;
  z-index: 50;
}
.dedicate-hire-section h5, .dedicate-hire-section .h5 {
  color: var(--text-color);
}
@media (max-width: 991px) {
  .dedicate-hire-section {
    margin-top: 60px;
  }
}
@media (max-width: 1199px) {
  .dedicate-hire-section {
    max-width: calc(100vw - 30px);
  }
}
@media (max-width: 576px) {
  .dedicate-hire-section {
    padding: 42px 0;
    border-radius: 0;
    max-width: 100vw;
  }
}
@media (max-width: 480px) {
  .dedicate-hire-section {
    margin-top: 40px;
  }
}
.dedicate-hire-section .nav-tabs .nav-link {
  border: none;
  font-weight: 500;
  color: var(--text-color);
  font-size: 20px;
  position: relative;
  background-color: transparent;
  padding: 10px 10px;
}
@media screen and (max-width: 991px) {
  .dedicate-hire-section .nav-tabs .nav-link {
    font-size: 18px;
    padding: 8px 15px;
  }
}
@media screen and (max-width: 576px) {
  .dedicate-hire-section .nav-tabs .nav-link {
    font-size: 16px;
    padding: 6px 10px;
  }
}
.dedicate-hire-section .nav-tabs .nav-link.active {
  background-color: transparent;
}
.dedicate-hire-section .nav-tabs .nav-link.active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  background: var(--gradient-color);
  border-radius: 30px;
}
.dedicate-hire-section .card {
  border: 1px solid var(--border-color);
  border-radius: 25px;
}
.dedicate-hire-section .card .card-body {
  padding: 24px;
}
.dedicate-hire-section .card .card-footer {
  padding: 10px !important;
  background-color: transparent !important;
  border: none !important;
}
.dedicate-hire-section .btn-pixel-outline {
  padding: 10px 12px;
  border-radius: 30px;
  border-color: var(--primary-color);
  overflow: hidden;
}
.dedicate-hire-section .btn-pixel-outline::before {
  background: none;
}
.dedicate-hire-section .btn-pixel-outline:hover, .dedicate-hire-section .btn-pixel-outline:focus {
  background: var(--secondary-color);
  border-color: var(--secondary-color);
}
.dedicate-hire-section .btn-pixel-outline:hover svg,
.dedicate-hire-section .btn-pixel-outline:hover img, .dedicate-hire-section .btn-pixel-outline:focus svg,
.dedicate-hire-section .btn-pixel-outline:focus img {
  transform: rotate(0deg) !important;
}
.dedicate-hire-section.industries-box .card {
  transition: all 0.3s ease-in-out;
}
.dedicate-hire-section.industries-box .card:hover {
  cursor: pointer;
  border-color: var(--secondary-color);
  box-shadow: 0px 0px 12px 0px rgba(var(--secondary-rgb), 0.15) inset;
}

.title-style {
  font-size: 20px;
  position: relative;
  margin-bottom: 15px;
  padding-bottom: 5px;
}
.title-style::after {
  content: "";
  position: absolute;
  width: 50px;
  height: 3px;
  border-radius: 30px;
  background: var(--gradient-color);
  bottom: 0;
  left: 0;
}

/***********Process Style***********/
.process-section {
  max-width: calc(100vw - 50px);
  margin: 0 auto;
  padding: 90px 0;
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .process-section {
    margin-bottom: 50px;
  }
}
@media (max-width: 1199px) {
  .process-section {
    max-width: calc(100vw - 30px);
  }
}
@media (max-width: 576px) {
  .process-section {
    padding: 42px 0;
    border-radius: 0;
    max-width: 100vw;
  }
}
.process-section {
  background: linear-gradient(180deg, rgba(var(--secondary-rgb), 0.15) 0%, rgba(var(--primary-rgb), 0.15) 100%);
  border-radius: 50px;
}

/*********why-section*********/
.why-section {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .why-section {
    padding-bottom: 50px;
  }
}

/*******Stats-Section******/
.stats-section {
  position: relative;
  max-width: calc(100vw - 50px);
  margin: 0 auto;
  padding: 90px 0;
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .stats-section {
    margin-bottom: 50px;
  }
}
.stats-section {
  z-index: 5;
}
@media (max-width: 1199px) {
  .stats-section {
    max-width: calc(100vw - 30px);
  }
}
@media (max-width: 576px) {
  .stats-section {
    padding: 42px 0;
    border-radius: 0;
    max-width: 100vw;
  }
}
.stats-section {
  background: rgba(var(--color-515151-rgb), 0.07);
  border-radius: 50px;
}
.stats-section .stats-list .stats-box {
  text-align: center;
  background-image: url(./images/service-card-bg.svg?75b28487647dc99c375faa0d08b190ba);
  background-repeat: repeat;
  background-size: 100%;
  background-position: center;
  border-radius: 30px;
  padding: 30px;
}
.stats-section .stats-list .stats-box .stats-text {
  font-weight: 600;
  font-size: 18px;
  margin: 25px auto;
}
.stats-section .stats-list .stats-box.bg-white {
  background-image: none;
  background-color: var(--white-color);
}
.stats-section .stats-bottom {
  position: absolute;
  bottom: -21px;
  left: 50%;
  transform: translateX(-50%);
}

.can-trust-section {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .can-trust-section {
    padding-bottom: 50px;
  }
}
.can-trust-section .title-style {
  font-size: 18px;
}
.can-trust-section .title-style::after {
  display: none;
}

/*******Horizantal-Timeline******/
.hor-timeline-steps {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.hor-timeline-steps .hor-timeline-step {
  align-items: center;
  display: flex;
  flex-direction: column;
  position: relative;
  margin: 1rem;
}
@media (min-width: 1024px) {
  .hor-timeline-steps .hor-timeline-step:not(:last-child):after {
    content: "";
    display: block;
    border-top: 0.25rem dotted var(--primary-color);
    width: 3.46rem;
    position: absolute;
    left: 7.5rem;
    top: 0.3125rem;
  }
  .hor-timeline-steps .hor-timeline-step:not(:first-child):before {
    content: "";
    display: block;
    border-top: 0.25rem dotted var(--primary-color);
    width: 11.46rem;
    position: absolute;
    right: 7.5rem;
    top: 0.3125rem;
  }
}
.hor-timeline-steps .hor-timeline-step .timeline-content {
  width: 14rem;
  text-align: center;
}
.hor-timeline-steps .hor-timeline-step .timeline-content .inner-circle {
  border-radius: 1.5rem;
  height: 1rem;
  width: 1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: var(--primary-color);
}
.hor-timeline-steps .hor-timeline-step .timeline-content .inner-circle:before {
  content: "";
  background-color: var(--primary-color);
  display: inline-block;
  height: 3rem;
  width: 3rem;
  min-width: 3rem;
  border-radius: 6.25rem;
  opacity: 0.5;
}

/************portfolio-style***********/
.portfolio-section {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .portfolio-section {
    padding-bottom: 50px;
  }
}
.portfolio-section {
  position: relative;
  z-index: 5;
}
.portfolio-section::after {
  position: absolute;
  content: " ";
  width: 920px;
  height: 1212px;
  top: -700px;
  left: 35%;
  transform: translateX(-50%);
  background: radial-gradient(50% 50% at 50% 50%, rgb(241, 34, 86) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.15;
  z-index: -1;
}
@media (max-width: 1200px) {
  .portfolio-section::after {
    width: 500px;
    height: 600px;
    top: -235px;
    left: 35%;
  }
}
@media (max-width: 768px) {
  .portfolio-section::after {
    width: 500px;
    height: 500px;
    top: -167px;
  }
}

.custom-tabs {
  display: inline-flex;
  gap: 4px;
  padding: 6px;
  border-radius: 50px;
  background: transparent;
  border: 1px solid rgba(var(--secondary-rgb), 0.25);
}
@media (max-width: 576px) {
  .custom-tabs {
    width: 100%;
    align-items: center;
    justify-content: center;
  }
}

@media (max-width: 576px) {
  .custom-tabs .nav-item {
    width: 48%;
  }
}

.custom-tabs .nav-link {
  border: none;
  border-radius: 50px;
  padding: 6px 22px;
  font-weight: 400;
  font-size: 14px;
  background: transparent;
  color: var(--color-500);
  transition: all 0.3s ease;
}

.custom-tabs .nav-link:hover {
  color: var(--primary-color);
}

.custom-tabs .nav-link.active {
  background: var(--second-primary-gradient);
  color: var(--color-fff);
}

.single-portfolio .single-portfolio-img {
  border-radius: 10px;
  overflow: hidden;
}
.single-portfolio .single-portfolio-img img {
  width: 100%;
}

.project-info-box ul li {
  margin-bottom: 15px;
  display: flex;
  font-size: 14px;
}
.project-info-box ul li:last-child {
  margin-bottom: 0;
}
.project-info-box ul li .destination {
  width: 40%;
  color: var(--title-color);
  text-transform: uppercase;
}

.small-img-box {
  height: auto;
  background-color: var(--body-color);
  position: relative;
  margin-bottom: 10px;
}
.small-img-box .img-box {
  height: 650px;
  position: relative;
  overflow: hidden;
}
.small-img-box .img-box:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}
.small-img-box .img-box picture {
  display: block;
}
.small-img-box .img-box img {
  transition: 0.4s ease-in-out;
  -webkit-transition: 0.4s ease-in-out;
  width: 663px;
  aspect-ratio: auto 663/550;
  max-width: 100%;
  height: auto;
  min-height: 100%;
}
.small-img-box .img-box:hover:before {
  transform: translate3d(0, 50%, 0);
  background: linear-gradient(180deg, rgba(21, 21, 21, 0) 0, rgba(21, 21, 21, 0.8) 75%);
}
.small-img-box .img-box:hover img {
  transform: scale(1.1);
  transition: 0.4s ease-in-out;
  -webkit-transition: 0.4s ease-in-out;
}
@media (max-width: 1200px) {
  .small-img-box .img-box {
    height: auto;
  }
}
.small-img-box .img-details {
  width: 100%;
  background-color: var(--body-color);
  height: 110px;
  z-index: 3;
  position: relative;
  padding: 20px 0;
  margin-top: -110px;
}

.big-img-box {
  position: relative;
  background-color: var(--body-color);
  border-radius: 50px;
  overflow: hidden;
  box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.06);
  transition: all 0.4s ease;
  height: 100%;
}
@media (max-width: 992px) {
  .big-img-box {
    border-radius: 30px;
  }
}
@media (max-width: 576px) {
  .big-img-box {
    border-radius: 18px;
  }
}
.big-img-box .img-box {
  position: relative;
  overflow: hidden;
  max-height: 344px;
  height: 100%;
  border-radius: 50px;
}
@media (max-width: 1400px) {
  .big-img-box .img-box {
    max-height: 290px;
  }
}
@media (max-width: 1200px) {
  .big-img-box .img-box {
    max-height: 244px;
  }
}
@media (max-width: 992px) {
  .big-img-box .img-box {
    border-radius: 30px;
    max-height: 218px;
  }
}
@media (max-width: 768px) {
  .big-img-box .img-box {
    border-radius: 30px;
    max-height: 330px;
  }
}
@media (max-width: 576px) {
  .big-img-box .img-box {
    border-radius: 18px;
    max-height: 190px;
  }
}
.big-img-box .img-box img {
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 648/424;
  transition: transform 0.6s ease;
}
@media (hover: hover) {
  .big-img-box .img-box:hover img {
    transform: scale(1.08);
  }
}
.big-img-box .img-details {
  position: relative;
  z-index: 3;
  background-color: var(--body-color);
  padding: 30px;
  border-radius: 0 0 50px 50px;
}
@media (max-width: 992px) {
  .big-img-box .img-details {
    padding: 20px;
    border-radius: 0 0 30px 30px;
  }
}
@media (max-width: 576px) {
  .big-img-box .img-details {
    padding: 18px;
    border-radius: 0 0 20px 20px;
  }
}
@media (max-width: 992px) {
  .big-img-box .img-details h4, .big-img-box .img-details .h4 {
    font-size: 20px;
  }
}
.big-img-box .img-details span {
  font-size: 14px;
}
@media (max-width: 576px) {
  .big-img-box .img-details span {
    font-size: 13px;
  }
}
.big-img-box .img-details h4, .big-img-box .img-details .h4,
.big-img-box .img-details span {
  color: var(--color-000);
}
.big-img-box .img-details .badge {
  border: 1px solid var(--border-color) !important;
}
.big-img-box .img-details .btn-pixel-outline {
  padding: 10px 12px;
  border-radius: 30px;
  border-color: var(--primary-color);
  min-width: 44px;
  min-height: 44px;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.big-img-box .img-details .btn-pixel-outline::before {
  background: none;
}
.big-img-box .img-details .btn-pixel-outline:hover, .big-img-box .img-details .btn-pixel-outline:focus {
  background: var(--primary-color);
  color: var(--color-fff);
}

.project-features {
  display: flex;
  align-items: center;
  width: 100%;
  background: url(./images/fs-bg.svg?ecd41acd438ad98b41130c83718ed843) 50% center/contain no-repeat;
  margin-top: 20px;
  height: 170px;
}
@media (max-width: 767px) {
  .project-features {
    height: 125px;
  }
}
.project-features .avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  background-color: var(--soft-gradient);
  border-color: var(--soft-gradient);
  border-radius: 50%;
  margin: 0px 20px 0px 50px;
}
.project-features i {
  font-size: 30px;
}
@media (max-width: 767px) {
  .project-features .project-features-detail {
    padding: 0px 20px;
    text-align: center;
  }
}
@media (max-width: 767px) {
  .project-features .project-features-detail .lead {
    font-size: 16px;
    font-weight: 400;
  }
}

.custom-badge {
  background-color: var(--color-fff);
  color: var(--color-000);
  padding: 8px 12px;
  border-radius: 30px;
  border: 1px solid var(--color-300);
}

/************Blog-style***********/
.single-blog-hero {
  height: auto !important;
}
.single-blog-hero p {
  font-size: 20px;
}
@media (max-width: 576px) {
  .single-blog-hero p {
    font-size: 16px;
  }
}
.single-blog-hero img {
  position: relative;
  z-index: 5;
  border-radius: 20px;
  box-shadow: 0px 24px 100px 0px rgba(var(--secondary-rgb), 0.3);
}
@media (min-width: 576px) {
  .single-blog-hero {
    padding-top: 150px;
  }
  .single-blog-hero img {
    border-radius: 50px;
  }
}

.blog-social-links a {
  color: var(--second-text-color);
  font-size: 1.25rem;
  transition: all 0.3s ease;
  text-decoration: none;
  position: relative;
  z-index: 10;
}
.blog-social-links a:hover {
  color: var(--primary-color);
  transform: translateY(-2px);
}

.blog-section {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .blog-section {
    padding-bottom: 50px;
  }
}
.blog-section .single-blog-image img {
  position: relative;
  z-index: 5;
  border-radius: 20px;
  box-shadow: 0px 24px 100px 0px rgba(var(--secondary-rgb), 0.3);
}
@media (min-width: 768px) {
  .blog-section .single-blog-image img {
    margin-bottom: 90px;
    border-radius: 50px;
  }
}
.blog-section .blog-img {
  overflow: hidden;
  position: relative;
}
.blog-section .blog-img a {
  display: block;
  overflow: hidden;
}
.blog-section .blog-img img {
  width: 100%;
}
.blog-section .blog-content {
  padding: 1.25rem !important;
}
.blog-section .blog-content a {
  color: var(--primary-color);
}
.blog-section .blog-content a:hover {
  color: var(--secondary-color);
}
.blog-section .blog-content .date-meta {
  margin-bottom: 6px !important;
}
.blog-section .blog-content h2, .blog-section .blog-content .h2 {
  margin-bottom: 10px;
  font-size: calc(1.275rem + 0.3vw);
  color: var(--color-e03457) !important;
  display: flex;
  align-items: flex-start;
}
.blog-section .blog-content h2::before, .blog-section .blog-content .h2::before {
  content: "";
  background-image: url(./images/title-point-red.svg?ef4bd06e799d0efc91b9e1490c2c8776);
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  width: 15px;
  height: 15px;
  margin-right: 8px;
  margin-top: 8px;
  vertical-align: middle;
  flex-shrink: 0;
}
.blog-section .blog-content p {
  margin-bottom: 30px;
}
.blog-section .blog-content blockquote {
  font-weight: 500;
  padding: 15px 25px;
  background: linear-gradient(90deg, rgba(var(--primary-rgb), 0.1), rgba(var(--secondary-rgb), 0.1));
  color: var(--title-color);
  border-radius: 0 5px 5px 0;
  border: 0.1px solid rgba(var(--secondary-rgb), 0.2);
  border-left: 5px solid rgba(var(--secondary-rgb), 0.2) !important;
  margin-bottom: 20px;
}
.blog-section .blog-content blockquote p {
  margin-bottom: 0px !important;
}
.blog-section .blog-content .read-more-btn {
  position: relative;
  display: inline-block;
  color: rgb(var(--cerulean-blue));
}
.blog-section .blog-content .read-more-btn:after {
  content: "";
  position: absolute;
  width: 20%;
  height: 2px;
  bottom: 0;
  left: 0;
  background-color: rgb(var(--cerulean-blue));
  border-radius: 5px;
  transition: all 0.3s ease-in-out;
}
.blog-section .blog-content .read-more-btn:hover {
  color: rgb(var(--cerulean-blue));
}
.blog-section .blog-content .read-more-btn:hover:after {
  width: 100%;
}
.blog-section .blog-content strong a {
  display: inline-block;
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  padding: 11px 30px;
  font-size: 18px;
  border-radius: 50px;
  cursor: pointer;
  z-index: 50;
  transition: all 0.4s ease-in-out;
  border: none;
  overflow: hidden;
  background: linear-gradient(90deg, var(--color-3479E0) 0%, #4e54a5 51%, var(--color-3479E0) 100%);
  background-size: 200% auto;
  color: var(--white-color);
}
@media (max-width: 991px) {
  .blog-section .blog-content strong a {
    padding: 8px 24px;
    font-size: 14px;
  }
}
.blog-section .blog-content strong a img {
  transition: all 0.4s ease-in-out;
}
.blog-section .blog-content strong a:hover, .blog-section .blog-content strong a:focus {
  background-position: right center;
  color: var(--white-color);
}
.blog-section .blog-content strong a:hover img, .blog-section .blog-content strong a:focus img {
  transform: rotate(43deg);
}
.blog-section .blog-content ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.blog-section .blog-content ul > li {
  position: relative;
  display: flex;
  align-items: flex-start;
}
.blog-section .blog-content ul > li::before {
  content: "";
  background-image: url(./images/title-point-red.svg?ef4bd06e799d0efc91b9e1490c2c8776);
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  width: 15px;
  height: 15px;
  margin-right: 10px;
  flex-shrink: 0;
  margin-top: 8px;
}
.blog-section .blog-content ul > li:last-child {
  margin-bottom: 0;
}
.blog-section .blog-content ol {
  counter-reset: legal-counter;
  list-style: none;
  padding-left: 0;
}
.blog-section .blog-content ol > li {
  counter-increment: legal-counter;
  position: relative;
  padding-left: 50px;
  font-size: 18px;
  line-height: 1.8;
  color: var(--text-color);
  opacity: 0.9;
}
@media (max-width: 767px) {
  .blog-section .blog-content ol > li {
    padding-left: 40px;
    font-size: 16px;
  }
}
.blog-section .blog-content ol > li::before {
  content: counter(legal-counter);
  position: absolute;
  left: 0;
  top: 4px;
  width: 35px;
  height: 35px;
  background: var(--color-100);
  color: var(--primary-color);
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 850;
  font-size: 14px;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  border: 1px solid var(--border-color);
}
.blog-section .blog-content ol > li:hover {
  opacity: 1;
}
.blog-section .blog-content ol > li:hover::before {
  background: var(--primary-color);
  color: var(--color-fff);
  transform: scale(1.1) rotate(-5deg);
  border-color: var(--primary-color);
}
.blog-section .blog-content ol > li:last-child {
  margin-bottom: 0;
}
.blog-section .blog-content img {
  max-width: 100%;
  height: auto;
}
.blog-section .single-blog {
  border-radius: 30px;
  border: 1px solid var(--border-color);
  transition: all 0.3s ease-out 0s;
  overflow: hidden;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.1490196078);
  background: var(--color-fff);
  position: relative;
  z-index: 7;
}
.blog-section .pw-blog-design {
  padding: 0;
  border: none;
}
.blog-section .pw-blog-design:hover {
  box-shadow: none;
}
.blog-section .pw-blog-design .blog-img {
  padding-bottom: 0;
  margin-bottom: 30px;
  border-radius: 10px;
}
.blog-section .pw-blog-design .blog-img img {
  border-radius: 10px;
}
.blog-section .pw-blog-design .blog-content {
  padding: 0 1.25rem !important;
}
@media (max-width: 576px) {
  .blog-section .pw-blog-design .blog-content {
    padding: 0 !important;
  }
}
.blog-section .pw-blog-design .blog-content h1, .blog-section .pw-blog-design .blog-content .h1,
.blog-section .pw-blog-design .blog-content h2,
.blog-section .pw-blog-design .blog-content .h2,
.blog-section .pw-blog-design .blog-content h3,
.blog-section .pw-blog-design .blog-content .h3,
.blog-section .pw-blog-design .blog-content h4,
.blog-section .pw-blog-design .blog-content .h4,
.blog-section .pw-blog-design .blog-content h5,
.blog-section .pw-blog-design .blog-content .h5,
.blog-section .pw-blog-design .blog-content h6,
.blog-section .pw-blog-design .blog-content .h6,
.blog-section .pw-blog-design .blog-content p {
  color: var(--text-color);
}
.blog-section .pw-blog-design .blog-content h4, .blog-section .pw-blog-design .blog-content .h4 {
  margin-bottom: 18px;
}
.blog-section .pw-blog-design .blog-content p {
  margin-bottom: 20px;
  line-height: 32px;
}
.blog-section .pw-blog-design .blog-content .blog-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.blog-section .pw-blog-design .blog-content .blog-meta .read-more-btn {
  display: flex;
  align-items: center;
  margin-right: 10px;
}
.blog-section .pw-blog-design .blog-content .blog-meta .read-more-btn i {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--soft-gradient);
  padding-right: 5px;
  margin-left: 10px;
  font-size: 15px;
}
@media (max-width: 767px) {
  .blog-section .pw-blog-design .blog-content .blog-meta .read-more-btn {
    font-size: 16px;
  }
}
.blog-section .pw-blog-design .blog-content .blog-meta .comment {
  font-size: 18px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--text-color);
}
.blog-section .pw-blog-design .blog-content .blog-meta .comment:hover {
  color: var(--primary-color);
}
.blog-section .pw-blog-design .blog-content .blog-meta .comment i {
  margin-right: 10px;
}
@media (max-width: 767px) {
  .blog-section .pw-blog-design .blog-content .blog-meta .comment {
    font-size: 16px;
  }
}
.blog-section .related-post .single-blog .row > * {
  width: 100%;
}
.blog-section .related-post .single-blog .blog-img img {
  border-top-right-radius: var(--bs-border-radius) !important;
}

.title-point {
  color: var(--color-e03457) !important;
}
.title-point::before {
  content: "";
  background-image: url(./images/title-point-red.svg?ef4bd06e799d0efc91b9e1490c2c8776);
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  width: 15px;
  height: 15px;
  margin-right: 8px;
  vertical-align: middle;
}

ul.list-title-point,
ol.list-title-point {
  list-style: none;
  margin: 0;
  padding: 0;
}
ul.list-title-point > li,
ol.list-title-point > li {
  position: relative;
  margin-bottom: 15px;
  display: flex;
  align-items: flex-start;
}
ul.list-title-point > li::before,
ol.list-title-point > li::before {
  content: "";
  background-image: url(./images/title-point-red.svg?ef4bd06e799d0efc91b9e1490c2c8776);
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  width: 15px;
  height: 15px;
  margin-right: 10px;
  flex-shrink: 0;
  margin-top: 5px;
}
ul.list-title-point > li:last-child,
ol.list-title-point > li:last-child {
  margin-bottom: 0;
}

ul.list-title-point-blue,
ol.list-title-point-blue {
  list-style: none;
  margin: 0;
  padding: 0;
}
ul.list-title-point-blue > li,
ol.list-title-point-blue > li {
  position: relative;
  margin-bottom: 15px;
  display: flex;
  align-items: flex-start;
}
ul.list-title-point-blue > li::before,
ol.list-title-point-blue > li::before {
  content: "";
  background-image: url(./images/title-point-blue.svg?9f523c4e48d04cc39b02ed39fde8c237);
  background-repeat: no-repeat;
  background-size: contain;
  width: 15px;
  height: 15px;
  display: inline-block;
  margin-right: 10px;
  flex-shrink: 0;
  margin-top: 5px;
}
ul.list-title-point-blue > li:last-child,
ol.list-title-point-blue > li:last-child {
  margin-bottom: 0;
}

.tags {
  position: relative;
  z-index: 9;
}

.blog-detail-title {
  font-size: 40px !important;
}
@media (max-width: 1200px) {
  .blog-detail-title {
    font-size: 30px !important;
  }
}

.more-blogs {
  position: relative;
  z-index: 5;
}
.more-blogs::after {
  position: absolute;
  content: "";
  width: 920px;
  height: 1212px;
  top: -800px;
  left: 35%;
  transform: translateX(-50%);
  background: radial-gradient(50% 50% at 50% 50%, rgb(241, 34, 86) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.15;
  z-index: -10;
}
@media (max-width: 1200px) {
  .more-blogs::after {
    width: 500px;
    height: 600px;
    top: -235px;
    left: 35%;
  }
}
@media (max-width: 768px) {
  .more-blogs::after {
    width: 500px;
    height: 500px;
    top: -167px;
  }
}

.blog-owner {
  background-color: var(--color-f5f6ff);
  border: 1px solid var(--color-dfe1ff);
  border-radius: 30px;
  padding: 24px;
}
.blog-owner .author-img img {
  border: 4px solid var(--white-color);
}

.search-box {
  position: relative;
  max-width: 414px;
  width: 100%;
  margin: 0 auto;
  z-index: 9;
}
.search-box input {
  width: 100%;
  padding: 13px 16px 13px 50px;
  border-radius: 30px;
  border: 1px solid var(--border-color);
  background-color: var(--body-color);
  color: var(--title-color);
  font-size: 16px;
  outline: none;
}
.search-box input::-moz-placeholder {
  color: var(--text-color);
}
.search-box input::placeholder {
  color: var(--text-color);
}
.search-box svg {
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
}

.bg-white .form-floating .form-control,
.bg-white .form-floating .form-select {
  color: var(--color-600);
  border-color: var(--color-600);
}
.bg-white .form-floating .form-control:placeholder,
.bg-white .form-floating .form-select:placeholder {
  color: var(--color-600);
}
.bg-white .form-floating label {
  color: var(--color-600);
}
.bg-white .form-check-label,
.bg-white .form-label {
  color: var(--color-600);
}
.bg-white .card ul li {
  color: var(--color-600);
}

.left-side-wrapper {
  margin-right: 40px;
}
@media (max-width: 767px) {
  .left-side-wrapper {
    margin-right: 0px;
  }
}

.sidebar-wrapper .sidebar-box {
  overflow: hidden;
  border: 1px solid rgba(var(--secondary-rgb), 0.15);
  border-radius: 30px;
  transition: all 0.3s ease-out 0s;
}
.sidebar-wrapper .sidebar-box:hover {
  box-shadow: 0 0 30px rgba(215, 224, 252, 0.15);
}
.sidebar-wrapper .sidebar-box .box-title-header {
  padding: 20px;
  background: rgba(var(--secondary-rgb), 0.15);
}
.sidebar-wrapper .sidebar-box .box-content-body {
  padding: 20px;
}
.sidebar-wrapper .sidebar-box .box-content-body ul {
  margin-bottom: 0px !important;
}
@media (max-width: 767px) {
  .sidebar-wrapper .sidebar-box .box-content-body {
    padding: 30px 20px;
  }
}
.sidebar-wrapper .sidebar-box.recent-blog-box .recent-blog-items .recent-blog {
  display: flex;
}
.sidebar-wrapper .sidebar-box.recent-blog-box .recent-blog-items .recent-blog .recent-blog-img {
  border-radius: 10px;
  width: 100%;
  max-width: 100px;
  height: 100px;
}
.sidebar-wrapper .sidebar-box.recent-blog-box .recent-blog-items .recent-blog .recent-blog-img img {
  width: 100%;
}
@media (max-width: 767px) {
  .sidebar-wrapper .sidebar-box.recent-blog-box .recent-blog-items .recent-blog .recent-blog-img {
    max-width: 80px;
    height: 80px;
  }
}
.sidebar-wrapper .sidebar-box.recent-blog-box .recent-blog-items .recent-blog .recent-blog-content {
  margin-left: 20px;
}
.sidebar-wrapper .sidebar-box.recent-blog-box .recent-blog-items .recent-blog .recent-blog-content h5, .sidebar-wrapper .sidebar-box.recent-blog-box .recent-blog-items .recent-blog .recent-blog-content .h5 {
  font-weight: 500;
  margin-bottom: 8px;
}
@media (max-width: 767px) {
  .sidebar-wrapper .sidebar-box.recent-blog-box .recent-blog-items .recent-blog .recent-blog-content h5, .sidebar-wrapper .sidebar-box.recent-blog-box .recent-blog-items .recent-blog .recent-blog-content .h5 {
    font-size: 18px;
  }
}
.sidebar-wrapper .sidebar-box.catagories-box ul {
  padding: 0px;
}
.sidebar-wrapper .sidebar-box.catagories-box ul li {
  margin-bottom: 20px;
  padding-left: 25px;
  position: relative;
}
.sidebar-wrapper .sidebar-box.catagories-box ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--text-color);
  transition: all 0.3s ease-out 0s;
}
.sidebar-wrapper .sidebar-box.catagories-box ul li:hover::before {
  background: var(--primary-color);
}
.sidebar-wrapper .sidebar-box.catagories-box ul li:hover a {
  color: var(--primary-color);
}
.sidebar-wrapper .sidebar-box.catagories-box ul li:last-child {
  margin-bottom: 0;
}
.sidebar-wrapper .sidebar-box.catagories-box ul li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  font-size: 18px;
  font-weight: 500;
  color: var(--text-color);
}
.sidebar-wrapper .sidebar-box.tags-box ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -20px;
  padding: 0px;
}
.sidebar-wrapper .sidebar-box.tags-box ul li {
  margin-right: 12px;
}
.sidebar-wrapper .sidebar-box.tags-box ul li a {
  padding: 8px 20px;
  border-radius: 30px;
  margin-bottom: 12px;
  color: var(--text-color);
  border: 1px solid var(--border-color);
}
.sidebar-wrapper .sidebar-box.tags-box ul li a:hover {
  background: var(--primary-color);
  color: var(--white-color);
}
.sidebar-wrapper .sidebar-box.tags-box ul li:last-child a {
  margin-bottom: 0;
}

.contact-section .form-floating > .form-control:focus ~ label,
.contact-section .form-floating > .form-select ~ label {
  opacity: 1;
}
.contact-section .form-control,
.contact-section .form-select {
  background-color: var(--color-000);
  color: var(--color-fff);
}
.contact-section .form-control:focus,
.contact-section .form-select:focus {
  background-color: var(--color-000);
}
@media (min-width: 991px) {
  .contact-section .contact-form {
    margin-top: -100px;
  }
}
.contact-section .contact-form .form-control:focus,
.contact-section .contact-form .form-select:focus {
  color: var(--color-fff);
}

/************career-section***********/
.careers-content {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .careers-content {
    padding-bottom: 50px;
  }
}
.careers-content {
  position: relative;
  z-index: 9;
}
.careers-content::after {
  position: absolute;
  content: " ";
  width: 920px;
  height: 1000px;
  top: -580px;
  left: 50%;
  transform: translateX(-50%);
  background: radial-gradient(50% 50% at 50% 50%, rgb(241, 34, 86) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.15;
  z-index: -9999;
}
@media (max-width: 1200px) {
  .careers-content::after {
    width: 500px;
    height: 600px;
    top: -235px;
    left: 50%;
  }
}
@media (max-width: 768px) {
  .careers-content::after {
    width: 500px;
    height: 500px;
    top: -167px;
  }
}

.about-career {
  max-width: calc(100vw - 50px);
  margin: 0 auto;
  padding: 70px 0;
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .about-career {
    margin-bottom: 50px;
  }
}
@media (max-width: 1199px) {
  .about-career {
    max-width: calc(100vw - 30px);
  }
}
@media (max-width: 576px) {
  .about-career {
    padding: 30px 0;
    border-radius: 0;
    max-width: 100vw;
  }
}
.about-career {
  background: var(--color-ecf9f4);
  border-radius: 50px;
}

.application-process {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .application-process {
    padding-bottom: 50px;
  }
}
.application-process .accordion-item {
  border: none;
  border-top: 1px solid var(--color-200);
  background-color: transparent;
}
.application-process .accordion-item:first-child {
  border-top: none;
}
.application-process .accordion-button {
  background-color: transparent !important;
  box-shadow: none !important;
  color: var(--color-800);
  font-weight: 600;
  padding: 20px 0;
  text-align: left;
}
.application-process .accordion-button::after {
  background-image: url(./images/plus.svg?4cd85bfb4783873984216959254062d4);
  background-repeat: no-repeat;
  background-size: contain;
  width: 16px;
  height: 16px;
  content: "";
  transition: all 0.3s ease-in-out;
}
.application-process .accordion-button:not(.collapsed) {
  color: var(--color-900);
}
.application-process .accordion-button:not(.collapsed)::after {
  background-image: url(./images/minus.svg?72d1e38940d1cf9f77516a5be4bff277);
}
.application-process .accordion-body {
  padding: 0 0 20px 0;
  color: var(--color-500);
  font-size: 0.9rem;
  line-height: 180%;
}

.openings-section {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .openings-section {
    padding-bottom: 50px;
  }
}
.openings-section .apply-links .btn-pixel-outline {
  padding: 11px 38px;
}
.openings-section .apply-links .btn-pixel-outline svg path {
  transition: all 0.4s ease-in-out;
}
.openings-section .apply-links .btn-pixel-outline:hover, .openings-section .apply-links .btn-pixel-outline:focus {
  border-color: var(--primary-color) !important;
}
.openings-section .apply-links .btn-pixel-outline:hover svg path, .openings-section .apply-links .btn-pixel-outline:focus svg path {
  fill: var(--white-color) !important;
}
.openings-section .apply-links .btn-pixel-outline:hover img,
.openings-section .apply-links .btn-pixel-outline:hover svg, .openings-section .apply-links .btn-pixel-outline:focus img,
.openings-section .apply-links .btn-pixel-outline:focus svg {
  transform: rotate(0deg) !important;
}
.openings-section .apply-links .btn-pixel {
  padding: 11px 24px;
}
@media (max-width: 576px) {
  .openings-section .apply-links .btn-pixel,
  .openings-section .apply-links .btn-pixel-outline {
    padding: 11px 19px;
  }
}
.openings-section .more-opening {
  gap: 10px;
  flex-wrap: wrap;
}
.openings-section .more-opening .exp {
  background: rgba(var(--blush-pink), 0.2);
  padding: 5px 14px;
  border-radius: 60px;
}
.openings-section .opening-inner {
  background: rgba(var(--color-3479E0-rgb), 0.1);
  border-radius: 25px;
}

.photo-grid {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .photo-grid {
    padding-bottom: 50px;
  }
}
.photo-grid .item img {
  border-radius: 30px;
}
@media (max-width: 1200px) {
  .photo-grid .item img {
    border-radius: 10px;
  }
}

/************AI ML Section***********/
.aiml-client {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .aiml-client {
    padding-bottom: 50px;
  }
}

.hero-section.ai-ml {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 100vh;
  padding: 100px 0;
  background-color: transparent;
}
@media (max-width: 1200px) {
  .hero-section.ai-ml {
    min-height: 80vh;
    padding: 120px 0 80px;
  }
}
@media (max-width: 991px) {
  .hero-section.ai-ml {
    min-height: auto;
    padding: 140px 0 60px;
  }
}
@media (max-width: 768px) {
  .hero-section.ai-ml {
    padding: 120px 0 60px;
  }
}
@media (max-width: 576px) {
  .hero-section.ai-ml {
    padding: 100px 0 50px;
  }
}

.bg-ai-ml {
  background-image: url(./images/ai-ml-bg.png?49c59990af142d1ffedfb023e367d03d);
  background-size: 50% auto;
  background-position: right center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 10;
}
.bg-ai-ml::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0%;
  transform: translateY(-50%);
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(var(--primary-rgb), 0.1) 0%, rgba(255, 255, 255, 0) 70%);
  z-index: -1;
  pointer-events: none;
}
@media (max-width: 991px) {
  .bg-ai-ml::before {
    width: 400px;
    height: 400px;
    top: 20%;
    right: 50%;
    transform: translate(50%, -50%);
  }
}
@media (max-width: 1400px) {
  .bg-ai-ml {
    background-size: 45% auto;
  }
}
@media (max-width: 1200px) {
  .bg-ai-ml {
    background-size: 40% auto;
  }
}
@media (max-width: 991px) {
  .bg-ai-ml {
    background-size: 60% auto;
    background-position: center bottom;
    flex-direction: column;
    justify-content: flex-start;
    text-align: center;
    padding-bottom: 300px;
  }
}
@media (max-width: 768px) {
  .bg-ai-ml {
    background-size: 80% auto;
    padding-bottom: 250px;
    background-attachment: fixed;
    background-position: top center;
  }
}
@media (max-width: 576px) {
  .bg-ai-ml {
    background-size: 100% auto;
    padding-bottom: 200px;
  }
}
@media (max-width: 320px) {
  .bg-ai-ml {
    background-size: 100% auto;
    padding-bottom: 50px;
  }
}

.who-we-are {
  position: relative;
  z-index: 10;
}

.who-box {
  border-radius: 30px;
  background: transparent;
  transition: all 0.2s ease-in-out;
  background-image: url(./images/bg-effect-orange.svg?3a467d85161fe315e9e1feadd194a104);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border: 1px solid rgba(var(--secondary-rgb), 0.1);
}
.who-box .card-body {
  padding: 24px;
}
.who-box .box-icons {
  margin-bottom: 30px;
}
.who-box .box-icons svg {
  transition: all 0.2s ease-in-out;
}
.who-box .box-icons svg path {
  fill: var(--secondary-color);
  transition: all 0.2s ease-in-out;
}
.who-box .who-box-content h5, .who-box .who-box-content .h5 {
  transition: all 0.2s ease-in-out;
  margin-bottom: 20px;
  color: var(--secondary-color);
}
.who-box:hover {
  background-image: url(./images/bg-effect-blue.svg?0114fa36300c4785a2f6f265041a8e3f);
  border: 1px solid rgba(var(--primary-rgb), 0.1);
}
.who-box:hover .box-icons svg {
  scale: 1.1;
}
.who-box:hover .box-icons svg path {
  fill: var(--primary-color);
}
.who-box:hover .who-box-content h5, .who-box:hover .who-box-content .h5 {
  color: var(--primary-color);
}

/************Site Map Section***********/
.site-map-section {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .site-map-section {
    padding-bottom: 50px;
  }
}
.site-map-section {
  position: relative;
}
.site-map-section .sitemap-row {
  position: relative;
  margin-bottom: 80px;
}
.site-map-section .sitemap-row:last-child {
  margin-bottom: 0;
}
.site-map-section .sitemap-row .sitemap-header {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
  position: relative;
}
@media (max-width: 768px) {
  .site-map-section .sitemap-row .sitemap-header {
    margin-bottom: 30px;
  }
}
.site-map-section .sitemap-row .sitemap-header .number-box {
  min-width: 89px;
  height: 100px;
  background: var(--color-4E54A5);
  color: rgba(255, 255, 255, 0.33);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 40px;
  font-weight: 700;
  box-shadow: 0 10px 20px rgba(78, 84, 165, 0.15);
  z-index: 5;
}
@media (max-width: 768px) {
  .site-map-section .sitemap-row .sitemap-header .number-box {
    min-width: 70px;
    height: 70px;
    font-size: 30px;
  }
}
@media (max-width: 576px) {
  .site-map-section .sitemap-row .sitemap-header .number-box {
    min-width: 60px;
    height: 60px;
    font-size: 26px;
  }
}
.site-map-section .sitemap-row .sitemap-header .title-wrapper {
  flex-grow: 1;
}
.site-map-section .sitemap-row .sitemap-header .title-wrapper h2, .site-map-section .sitemap-row .sitemap-header .title-wrapper .h2 {
  margin: 0;
  color: var(--color-4E54A5);
  font-weight: 700;
  font-size: 34px;
  letter-spacing: -0.5px;
  white-space: nowrap;
  margin-bottom: 21px;
  padding-left: 24px;
}
@media (max-width: 768px) {
  .site-map-section .sitemap-row .sitemap-header .title-wrapper h2, .site-map-section .sitemap-row .sitemap-header .title-wrapper .h2 {
    margin-bottom: 5px;
    padding-left: 15px;
  }
}
@media (max-width: 576px) {
  .site-map-section .sitemap-row .sitemap-header .title-wrapper h2, .site-map-section .sitemap-row .sitemap-header .title-wrapper .h2 {
    font-size: 26px;
  }
}
.site-map-section .sitemap-row .sitemap-header .title-wrapper .title-line {
  flex-grow: 1;
  height: 2px;
  background: var(--color-4E54A5);
  opacity: 1;
  position: relative;
}
.site-map-section .sitemap-row .sitemap-header .title-wrapper .title-line::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
  height: 8px;
  background: var(--color-4E54A5);
  border-radius: 50%;
}
.site-map-section .sitemap-row .sitemap-header::after {
  content: "";
  position: absolute;
  top: 80%;
  left: 79px;
  width: 40px;
  height: 40px;
  border-right: 2px solid var(--color-4E54A5);
  border-top: 2px solid var(--color-4E54A5);
  border-top-right-radius: 15px;
  opacity: 1;
}
@media (max-width: 768px) {
  .site-map-section .sitemap-row .sitemap-header::after {
    display: none;
  }
}
.site-map-section .sitemap-row .sitemap-header::before {
  content: "";
  height: 10px;
  width: 10px;
  background-color: var(--color-4E54A5);
  border-radius: 50%;
  position: absolute;
  left: 113.5px;
  top: 119%;
}
@media (max-width: 768px) {
  .site-map-section .sitemap-row .sitemap-header::before {
    display: none;
  }
}
.site-map-section .sitemap-row .sitemap-body {
  padding-left: 140px;
}
@media (max-width: 768px) {
  .site-map-section .sitemap-row .sitemap-body {
    padding-left: 0;
  }
}
.site-map-section .sitemap-row .sitemap-body .category-group {
  margin-bottom: 45px;
  position: relative;
}
.site-map-section .sitemap-row .sitemap-body .category-group .category-title-wrapper {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 24px;
  position: relative;
}
.site-map-section .sitemap-row .sitemap-body .category-group .category-title-wrapper::before {
  content: "";
  position: absolute;
  left: -33px;
  top: 10px;
  width: 10px;
  height: 10px;
  background: var(--color-4E54A5);
  border-radius: 50%;
  opacity: 0.6;
}
@media (max-width: 768px) {
  .site-map-section .sitemap-row .sitemap-body .category-group .category-title-wrapper::before {
    display: none;
  }
}
.site-map-section .sitemap-row .sitemap-body .category-group h5, .site-map-section .sitemap-row .sitemap-body .category-group .h5 {
  color: var(--text-color) !important;
}
.site-map-section .sitemap-row .sitemap-body .category-group .tag-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 20px;
}
.site-map-section .sitemap-row .sitemap-body .category-group .tag-cloud a {
  padding: 10px 24px;
  font-size: 14px;
  font-weight: 500;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  text-decoration: none;
}

/************carousel-style***********/
.carousel-section-wrapper {
  position: relative;
  z-index: 3;
}
.carousel-section-wrapper .carousel-section {
  position: relative;
  z-index: 3;
}
.carousel-section-wrapper .carousel-section.clip-bg {
  clip-path: polygon(0 11%, 100% 0, 100% 100%, 0 89%);
}
@media (max-width: 767px) {
  .carousel-section-wrapper .carousel-section.clip-bg {
    clip-path: polygon(0% 8%, 100% 2%, 100% 98%, 0 92%);
  }
}
.carousel-section-wrapper .carousel-section.clip-bg::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background: var(--soft-gradient);
}
.carousel-section-wrapper .carousel-section.carousel-item .carousel-content .heading-title h2, .carousel-section-wrapper .carousel-section.carousel-item .carousel-content .heading-title .h2 {
  margin-bottom: 25px;
}
.carousel-section-wrapper .carousel-section.carousel-item .carousel-content .heading-title p {
  margin-bottom: 40px;
}
.carousel-section-wrapper .carousel-section.carousel-item .carousel-content .border-btn {
  border-color: var(--white-color);
  color: var(--white-color);
}
.carousel-section-wrapper .carousel-section.carousel-item .carousel-content .border-btn:hover {
  background: rgba(255, 255, 255, 0.2);
}
.carousel-section-wrapper .carousel-control {
  background: var(--soft-gradient);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1px solid var(--border-color);
  color: var(--white-color);
  top: 50%;
  left: 30px;
  transform: translateY(-50%);
  z-index: 99;
}
.carousel-section-wrapper .carousel-control:hover {
  background: var(--white-color);
  color: var(--primary-color);
}
.carousel-section-wrapper .carousel-control span {
  background: 0 0;
  width: auto;
  height: auto;
}
@media (max-width: 767px) {
  .carousel-section-wrapper .carousel-control {
    top: auto;
    transform: translateY(0);
    bottom: 80px;
    margin: auto;
  }
}
@media (max-width: 767px) {
  .carousel-section-wrapper .carousel-control.carousel-control-prev {
    left: 37%;
  }
}
.carousel-section-wrapper .carousel-control.carousel-control-next {
  left: auto;
  right: 30px;
}
@media (max-width: 767px) {
  .carousel-section-wrapper .carousel-control.carousel-control-next {
    left: 23%;
  }
}

.footer {
  background-color: var(--soft-gradient);
}
.footer h5, .footer .h5,
.footer .logo-link span {
  color: var(--color-900);
}
.footer a,
.footer span {
  color: var(--second-text-color);
}
.footer .footer-bottom {
  border-top: 1px solid var(--border-color);
}
.footer .footer-bottom p {
  color: var(--color-900);
  font-size: 15px;
}
@media only screen and (max-width: 480px) {
  .footer .footer-bottom p {
    font-size: 14px;
    text-align: center;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 480px) {
  .footer .footer-bottom ul {
    justify-content: center !important;
  }
}
.footer .footer-bottom ul li {
  position: relative;
}
.footer .footer-bottom ul li:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 12px;
  background-color: var(--color-400);
  opacity: 0.5;
}
.footer .footer-bottom ul li a {
  color: var(--color-900);
  font-size: 15px;
  transition: all 0.3s ease;
  text-decoration: none;
}
@media (max-width: 576px) {
  .footer .footer-bottom ul li a {
    font-size: 13px;
  }
}
.footer .footer-bottom ul li a:hover {
  color: var(--secondary-color);
}
.footer .footer-bottom ul li:last-child a {
  padding-right: 0 !important;
}
@media only screen and (max-width: 991px) {
  .footer .footer-bottom ul li:first-child a {
    padding-left: 0 !important;
  }
}
.footer ul {
  list-style: none;
  padding-left: 0px;
  padding-right: 0px;
}
.footer ul li a {
  color: var(--second-text-color);
}

.achievements {
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .achievements {
    margin-bottom: 50px;
  }
}
.achievements {
  padding: 20px 30px;
  border-radius: 30px;
  border: 1px solid var(--color-400);
}
.achievements img {
  max-width: 100px;
}

/***********svg-icon-Color*********/
.st0 {
  fill: var(--svg-color);
}

.st1 {
  fill: url(#crp_svg);
}

.st2 {
  stop-color: var(--primary-color);
}

.st3 {
  stop-color: var(--chart-color4);
}

.st4 {
  fill: var(--color-000);
}

.icon_box {
  margin-bottom: 50px;
  position: relative;
  padding-right: 45px;
  padding-top: 15px;
}
.icon_box img {
  position: relative;
  z-index: 99;
}
.icon_box .icon_overlay {
  position: absolute;
  left: -10px;
  top: -10px;
  z-index: 9;
}
.icon_box .icon_overlay img {
  animation: spin 10s linear infinite;
}

@keyframes spin {
  0% {
    transform: scaleX(1) skewY(0deg) translateX(0) translateY(-10px);
  }
  50% {
    transform: scaleX(1.3) skewY(-20deg) translateX(25px) translateY(15px);
  }
  to {
    transform: scaleX(1) skewY(0deg) translateX(0) translateY(-10px);
  }
}
.psw-5 {
  padding-left: 5vw;
}

.team-block {
  position: relative;
  border: 10px solid var(--border-color);
  height: 400px;
}
.team-block .vr-text {
  writing-mode: vertical-rl;
  text-orientation: upright;
}

.counter-list .counter-title {
  position: relative;
  background-image: url(./images/service-card-bg.svg?75b28487647dc99c375faa0d08b190ba);
  background-repeat: repeat;
  background-size: 100%;
  background-position: center;
  border-radius: 30px;
  padding: 25px;
}

.offer-section {
  max-width: calc(100vw - 50px);
  margin: 100px auto 200px auto;
  border-radius: 50px;
  padding: 90px 0px;
  background-color: rgba(var(--secondary-rgb), 0.15);
  position: relative;
}
.offer-section .offer-title {
  color: var(--color-900);
}
.offer-section .offer-tag {
  display: flex;
  align-items: center;
  gap: 15px;
}
.offer-section .offer-tag img {
  width: 28px;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.1));
}
.offer-section .offer-tag span {
  font-weight: 600;
  color: var(--color-700);
  font-size: 16px;
}
.offer-section .offer-img-parent {
  position: absolute;
  top: -55%;
  right: 20px;
  z-index: 2;
}
.offer-section .offer-img-parent img {
  border-radius: 30px;
  max-width: 100%;
}
.offer-section .product-img {
  max-width: 400px;
  width: 100%;
  border-radius: 30px;
}
@media (max-width: 768px) {
  .offer-section .product-img {
    max-width: 100%;
    width: 100%;
  }
}
@media (max-width: 1399px) {
  .offer-section .offer-img-parent {
    top: -55%;
    right: 0;
  }
}
@media (max-width: 1199px) {
  .offer-section {
    max-width: calc(100vw - 30px);
    margin: 120px auto 181px auto;
  }
  .offer-section .offer-img-parent {
    position: relative;
    top: 0;
    right: 0;
    margin-top: 10px;
    text-align: center;
    max-width: 100%;
  }
  .offer-section .offer-img-parent img {
    border-radius: 10px;
    width: 100%;
  }
  .offer-section .product-img {
    max-width: 100%;
    width: 100%;
    border-radius: 10px;
  }
}
@media (max-width: 991px) {
  .offer-section {
    margin: 80px auto 181px auto;
    padding: 40px 0;
  }
}
@media (max-width: 767px) {
  .offer-section {
    margin: 60px auto 50px auto;
    padding: 0 15px;
  }
}
@media (max-width: 576px) {
  .offer-section {
    padding: 40px 0;
    border-radius: 0;
    max-width: 100vw;
    margin: 0 0 50px 0;
  }
}

.service-layer {
  height: 100%;
  position: absolute;
  left: -50%;
  width: 100%;
  transform: translateX(-50%);
  margin-left: 100px;
  background: var(--soft-gradient);
  border-radius: 0px 20px 20px 0px;
}
@media only screen and (max-width: 991px) {
  .service-layer {
    background: transparent;
  }
}

.service-circle {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.icon-block {
  position: absolute;
  right: 15%;
  bottom: -25%;
  width: 250px;
}
@media screen and (max-width: 991px) {
  .icon-block {
    display: none;
  }
}

.choose-us {
  position: relative;
}
.choose-us .choose-us-img {
  height: 120%;
  max-height: none;
  animation: rotate-center 100s linear infinite both;
}
@media screen and (max-width: 991px) {
  .choose-us .choose-us-img {
    animation: none;
    height: auto;
  }
}
.choose-us .choose-us-brands {
  position: absolute;
  left: 0;
  bottom: 0;
  -o-object-fit: contain;
  object-fit: contain;
  animation: slide_up_down 2s ease-in-out infinite alternate both;
  z-index: 5;
}
.choose-us .choose-us-bubbles {
  position: absolute;
  left: 0;
  bottom: 0;
  -o-object-fit: contain;
  object-fit: contain;
  animation: slide_up_down 2s ease-in-out infinite alternate both;
  animation-delay: 1s;
  z-index: 3;
}
@media screen and (max-width: 991px) {
  .choose-us {
    margin-top: 50px;
  }
}

.contact_globe {
  position: absolute;
  height: 150%;
  max-height: none;
  width: 60%;
  top: -25%;
  left: 20%;
  opacity: 0.15;
  animation: rotate-center 100s linear infinite both;
  z-index: -1;
}

.row-deck > .col,
.row-deck > [class*=col-] {
  display: flex;
  align-items: stretch;
}
.row-deck > .col .card,
.row-deck > [class*=col-] .card {
  flex: 1 1 auto;
}

.border-gradient {
  position: relative;
  border-radius: 16px;
  background: var(--color-fff);
  overflow: hidden;
  z-index: 7;
}
.border-gradient::before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 2px;
  border-radius: inherit;
  background: linear-gradient(95.28deg, rgba(var(--secondary-rgb), 0.9), rgba(var(--primary-rgb), 0.9));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

.border-gradient-dashed {
  position: relative;
  border-radius: 16px;
  background: var(--color-fff);
  overflow: hidden;
  z-index: 7;
}
.border-gradient-dashed::before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 2px;
  border-radius: inherit;
  /* solid gradient for sides */
  background: linear-gradient(95.28deg, rgba(var(--secondary-rgb), 0.9), rgba(var(--primary-rgb), 0.9));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
.border-gradient-dashed {
  /* dashed top border */
}
.border-gradient-dashed::after {
  content: "";
  position: absolute;
  top: 0;
  left: 12px;
  right: 12px;
  height: 2px;
  background: repeating-linear-gradient(to right, rgba(var(--secondary-rgb), 0.9) 0 10px, transparent 10px 18px);
  pointer-events: none;
}

.product-card {
  position: relative;
  border: 1px dashed var(--option-color7);
  overflow: hidden;
}
.product-card .product-img {
  transition: ease-in-out 0.2s all;
  position: relative;
  top: 0;
}
.product-card .product-img .btn-hover {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  transition: ease-in-out 0.2s all;
  width: 100%;
}
.product-card .product-img:hover {
  transition: ease-in-out 0.2s all;
  top: -15px;
}
.product-card .product-img:hover .btn-hover {
  position: absolute;
  bottom: -17px;
  z-index: 1;
  transition: ease-in-out 0.2s all;
}

.perview-block {
  position: absolute;
  right: 11%;
  bottom: -12%;
  width: 250px;
}

.accordion-item {
  margin-bottom: 7px;
  border-radius: 0px !important;
  border-top: 1px solid #dee2e6;
}
.accordion-item:not(:first-of-type) {
  border-top: 1px solid #dee2e6;
}

.plans {
  padding: 15px;
  box-sizing: border-box;
  background: #fff;
  border-radius: 5px;
  box-shadow: 0px 8px 10px 0px #d8dfeb;
  align-items: center;
  flex-wrap: wrap;
}
.plans .plan {
  cursor: pointer;
  margin-bottom: 10px;
  display: block;
}
.plans .plan input[type=radio] {
  position: absolute;
  opacity: 0;
}
.plans .plan input[type=radio]:checked + .plan-content:after {
  content: "";
  position: absolute;
  height: 8px;
  width: 8px;
  background: var(--primary-color);
  right: 20px;
  top: 8px;
  border-radius: 100%;
  border: 3px solid #fff;
  box-shadow: 0px 0px 0px 2px var(--primary-color);
}
.plans .plan input[type=radio]:checked + .plan-content {
  border: 2px solid var(--primary-color);
  background: #ffebe8;
  transition: ease-in 0.3s;
}
.plans .plan input[type=radio]:checked + .plan-content .price {
  color: var(--primary-color);
}
.plans .plan .plan-content {
  display: flex;
  align-items: center;
  padding: 15px;
  box-sizing: border-box;
  border: 2px solid #e1e2e7;
  border-radius: 10px;
  transition: box-shadow 0.4s;
  position: relative;
}
.plans .plan .plan-content img {
  margin-right: 30px;
  height: 72px;
}
.plans .plan .plan-content .price {
  font-size: 26px;
}
.plans .plan .plan-content:hover {
  box-shadow: 0px 3px 5px 0px #e8e8e8;
}
.plans .plan .plan-details span {
  margin-bottom: 5px;
  display: block;
  font-size: 20px;
  line-height: 24px;
  color: #252f42;
}
.plans .plan .plan-details p {
  color: #646a79;
  font-size: 14px;
  line-height: 18px;
}

.cta-block {
  padding: 100px 0px;
}
@media screen and (max-width: 991px) {
  .cta-block {
    padding: 50px 0px;
  }
}
@media screen and (max-width: 480px) {
  .cta-block {
    padding: 50px 15px;
  }
}
@media screen and (max-width: 767px) {
  .cta-block .h1 {
    font-size: 25px;
  }
}

@media screen and (max-width: 991px) {
  .plans {
    margin: 0 20px;
    flex-direction: column;
    align-items: flex-start;
    padding: 40px;
  }
  .plans .plan {
    width: 100%;
  }
  .plans .plan .plan-content .plan-details {
    width: 70%;
    display: inline-block;
  }
  .plans .plan input[type=radio]:checked + .plan-content:after {
    top: 45%;
    transform: translate(-50%);
  }
  .plan.complete-plan {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .plans .plan .plan-content .plan-details {
    width: 60%;
    display: inline-block;
  }
}
@media screen and (max-width: 540px) {
  .plans .plan .plan-content img {
    margin-bottom: 20px;
    height: 56px;
    transition: height 0.4s;
  }
  .plans .plan .plan-content .plan-details {
    width: 100%;
  }
  .plans .plan .plan-content {
    padding: 20px;
    flex-direction: column;
    align-items: baseline;
  }
  .plans .plan input[type=radio]:checked + .plan-content:after {
    top: 8px;
    right: 10px;
  }
}
.chk-img {
  position: absolute;
  z-index: -1;
  left: 15px;
  top: 0px;
}

.attribution {
  display: none !important;
}

.file-input input {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}
.file-input label:hover {
  cursor: pointer;
  color: var(--primary-color);
}

.image-input {
  position: relative;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: cover;
}
.image-input .avatar-wrapper {
  background-repeat: no-repeat;
  background-size: cover !important;
  width: 100%;
  height: 100%;
}
.image-input.avatar.xxl .file-input {
  position: absolute;
  bottom: 10px;
  right: 10px;
}
.image-input.avatar.xl .file-input {
  position: absolute;
  bottom: 5px;
  right: 5px;
}
.image-input.avatar.lg .file-input {
  position: absolute;
  bottom: -5px;
  right: -5px;
}
.image-input .file-input label {
  background: var(--soft-gradient);
  text-align: center;
  height: 24px;
  width: 24px;
  line-height: 24px;
  border-radius: 24px;
}

.avatar.xxl {
  width: 120px;
  min-width: 120px;
  height: 120px;
}

.header-user-profile .user-img {
  width: 50px;
  height: 50px;
  border-radius: 50%;
}
@media screen and (max-width: 767px) {
  .header-user-profile .user-img {
    width: 40px;
    height: 40px;
  }
}
.header-user-profile .pw-menu::after {
  display: none !important;
}

.line-svg-animation g * {
  stroke: var(--primary-color);
  stroke-width: 2;
}
.line-svg-animation .controls {
  display: none;
}

.blockchain-working img {
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
}
.blockchain-working .option-color3:hover img {
  filter: none;
  -webkit-filter: grayscale(0);
}

.inquiry-card {
  background-color: var(--color-fff);
  border-radius: 30px;
  padding: 35px 30px;
  position: relative;
  z-index: 5;
  box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.05);
}
@media (max-width: 576px) {
  .inquiry-card {
    padding: 25px 20px;
    border-radius: 20px;
  }
}
.inquiry-card .inquiry-card-body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}
.inquiry-card .inquiry-card-body form {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}
@media (max-width: 576px) {
  .inquiry-card .inquiry-card-body form {
    gap: 10px;
  }
}
@media (max-width: 576px) {
  .inquiry-card .inquiry-card-body {
    gap: 10px;
  }
}
.inquiry-card .inquiry-card-body ul {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
}
@media (max-width: 576px) {
  .inquiry-card .inquiry-card-body ul {
    padding: 0px 20px;
    margin: 0;
  }
}
.inquiry-card .inquiry-card-body ul li {
  list-style: none;
}
.inquiry-card .inquiry-card-body ul li:before {
  content: "";
  width: 7px;
  height: 12px;
  background-color: var(--color-000);
  display: inline-block;
  margin-right: 12px;
  -webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%2211%22%20viewBox%3D%220%200%206%2011%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M0.251909%200.251908C0.419848%200.0839691%200.633588%200%200.89313%200C1.15267%200%201.36641%200.0839691%201.53435%200.251908L5.74809%204.46565C5.8397%204.55725%205.90443%204.65649%205.94229%204.76336C5.98015%204.87023%205.99939%204.98473%206%205.10687C6%205.22901%205.9771%205.34748%205.9313%205.46229C5.8855%205.5771%205.82443%205.67237%205.74809%205.74809L1.53435%209.96183C1.36641%2010.1298%201.15267%2010.2137%200.89313%2010.2137C0.633588%2010.2137%200.419848%2010.1298%200.251909%209.96183C0.0839699%209.79389%20-1.21075e-07%209.58015%20-1.21075e-07%209.32061C-1.21075e-07%209.06107%200.0839699%208.84733%200.251909%208.67939L3.82443%205.10687L0.251909%201.53435C0.0839699%201.36641%20-1.21075e-07%201.15267%20-1.21075e-07%200.89313C-1.21075e-07%200.633588%200.0839699%200.419847%200.251909%200.251908Z%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%2211%22%20viewBox%3D%220%200%206%2011%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M0.251909%200.251908C0.419848%200.0839691%200.633588%200%200.89313%200C1.15267%200%201.36641%200.0839691%201.53435%200.251908L5.74809%204.46565C5.8397%204.55725%205.90443%204.65649%205.94229%204.76336C5.98015%204.87023%205.99939%204.98473%206%205.10687C6%205.22901%205.9771%205.34748%205.9313%205.46229C5.8855%205.5771%205.82443%205.67237%205.74809%205.74809L1.53435%209.96183C1.36641%2010.1298%201.15267%2010.2137%200.89313%2010.2137C0.633588%2010.2137%200.419848%2010.1298%200.251909%209.96183C0.0839699%209.79389%20-1.21075e-07%209.58015%20-1.21075e-07%209.32061C-1.21075e-07%209.06107%200.0839699%208.84733%200.251909%208.67939L3.82443%205.10687L0.251909%201.53435C0.0839699%201.36641%20-1.21075e-07%201.15267%20-1.21075e-07%200.89313C-1.21075e-07%200.633588%200.0839699%200.419847%200.251909%200.251908Z%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-size: contain;
          mask-size: contain;
  vertical-align: middle;
}
@media (min-width: 768px) {
  .inquiry-card .inquiry-card-body h4, .inquiry-card .inquiry-card-body .h4 {
    font-size: 28px;
    margin-bottom: 10px;
  }
}
.inquiry-card .inquiry-card-body h4, .inquiry-card .inquiry-card-body .h4 {
  text-align: center;
}
.inquiry-card .inquiry-card-body .form-control {
  text-align: center;
  padding: 10px 20px;
  font-size: 16px;
  letter-spacing: -1%;
  background-color: var(--color-f8f8f8);
  color: var(--second-text-color);
  border-color: var(--border-color);
  outline: none;
}
.inquiry-card .inquiry-card-body .form-control:focus {
  border-color: var(--secondary-color);
  box-shadow: none;
  outline: none;
}
.inquiry-card .inquiry-card-body .btn-pixel {
  width: 100%;
  text-transform: uppercase;
  padding: 13px 30px;
}
.inquiry-card .inquiry-card-body .btn-pixel img {
  margin-left: auto;
}
.inquiry-card .inquiry-card-body .btn-pixel.theme-2 {
  background: var(--gradient-color);
}

.industry-block {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .industry-block {
    padding-bottom: 50px;
  }
}
.industry-block {
  position: relative;
  z-index: 5;
}
.industry-block .industry-block-box {
  background-image: url(./images/service-card-bg.svg?75b28487647dc99c375faa0d08b190ba);
  background-repeat: repeat;
  background-size: 100%;
  background-position: center;
  border-radius: 30px;
  padding: 30px 0px;
  border: 1px solid var(--border-color);
}
.industry-block .industry-block-box h5, .industry-block .industry-block-box .h5 {
  color: var(--text-color);
}
.industry-block:before {
  position: absolute;
  content: " ";
  width: 1100px;
  height: 888px;
  top: -350px;
  left: -397px;
  background: radial-gradient(50% 50% at 50% 50%, rgb(78, 84, 165) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.2;
  z-index: -1;
}
@media (max-width: 1200px) {
  .industry-block:before {
    width: 875px;
    height: 888px;
    top: 28px;
    left: -201px;
  }
}
@media (max-width: 768px) {
  .industry-block:before {
    width: 500px;
    height: 500px;
    top: 0;
    left: -201;
  }
}
.industry-block:after {
  position: absolute;
  content: " ";
  width: 875px;
  height: 888px;
  bottom: -300px;
  right: -349px;
  background: radial-gradient(50% 50% at 50% 50%, rgba(241, 34, 86, 0.911) 0%, rgba(255, 255, 255, 0) 100%);
  opacity: 0.15;
  z-index: -1;
}
@media (max-width: 1200px) {
  .industry-block:after {
    width: 875px;
    height: 888px;
    top: -48px;
    right: -272px;
  }
}
@media (max-width: 768px) {
  .industry-block:after {
    background: radial-gradient(50% 50% at 50% 50%, rgba(241, 34, 86, 0.79) 0%, rgba(255, 255, 255, 0) 100%);
    width: 500px;
    height: 500px;
    top: 0;
  }
}

.top-100px {
  top: 100px;
}

.mb-inquire {
  position: fixed;
  top: 140px;
  right: -106px;
  transition: all 0.5s ease-in-out;
  z-index: 1;
}
.mb-inquire .inquire-btn {
  background: var(--soft-gradient);
  border: 1px solid var(--primary-color);
  border-radius: 20px 0 0 20px;
  color: #ffffff;
  padding: 10px 10px 10px 15px;
  width: 150px;
  line-height: 20px;
  display: inline-flex;
  align-items: center;
}
.mb-inquire .inquire-btn i {
  margin-right: 12px;
}
.mb-inquire:hover {
  right: -1px;
}

/* Global Utilities */
.py-100 {
  padding-top: 100px;
  padding-bottom: 100px;
}
@media (max-width: 991px) {
  .py-100 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.font-heading {
  font-family: var(--title-font-fraunces), serif !important;
}

.title-accent {
  width: 60px;
  height: 4px;
  background: var(--primary-color);
  border-radius: 2px;
}

.section-padding {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .section-padding {
    padding-bottom: 50px;
  }
}

.section-margin {
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .section-margin {
    margin-bottom: 50px;
  }
}

/************ Legal & Policy Pages ***********/
.legal-section {
  padding-top: 50px;
}
@media (max-width: 768px) {
  .legal-section {
    padding-top: 0px;
  }
}
.legal-section .legal-card .content-title {
  font-size: 32px;
  font-weight: 900;
  margin-bottom: 40px;
  color: var(--text-color);
  letter-spacing: -0.5px;
}
@media (max-width: 575px) {
  .legal-section .legal-card .content-title {
    font-size: 24px;
  }
}
.legal-section .legal-list {
  counter-reset: legal-counter;
  list-style: none;
  padding-left: 0;
}
.legal-section .legal-list li {
  counter-increment: legal-counter;
  position: relative;
  padding-left: 70px;
  margin-bottom: 35px;
  font-size: 18px;
  line-height: 2.8;
  color: var(--text-color);
  opacity: 0.9;
}
@media (max-width: 767px) {
  .legal-section .legal-list li {
    padding-left: 60px;
    font-size: 16px;
  }
}
.legal-section .legal-list li::before {
  content: counter(legal-counter);
  position: absolute;
  left: 0;
  top: 4px;
  width: 44px;
  height: 44px;
  background: var(--color-100);
  color: var(--primary-color);
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 850;
  font-size: 16px;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  border: 1px solid var(--border-color);
}
.legal-section .legal-list li:hover {
  opacity: 1;
}
.legal-section .legal-list li:hover::before {
  background: var(--primary-color);
  color: var(--color-fff);
  transform: scale(1.1) rotate(-5deg);
  border-color: var(--primary-color);
}
.legal-section .legal-list li:last-child {
  margin-bottom: 0;
}
.legal-section .more-info-block {
  margin-top: 60px;
  padding-top: 40px;
  border-top: 1px solid var(--border-color);
}
@media (max-width: 991px) {
  .legal-section .more-info-block {
    padding-top: 40px;
  }
}
@media (max-width: 575px) {
  .legal-section .more-info-block {
    padding-top: 30px;
  }
}

.hero-visual {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 480px;
  perspective: 1000px;
}
.hero-visual .kinetic-wrapper {
  position: relative;
  width: 100%;
  height: 400px;
  display: flex;
  justify-content: center;
  align-items: center;
  transform-style: preserve-3d;
}
.hero-visual .orbit-ring {
  position: absolute;
  border-radius: 50%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  transition: all 0.5s ease;
}
.hero-visual .orbit-ring.ring-1 {
  width: 450px;
  height: 450px;
  border: 1px solid rgba(var(--secondary-rgb), 0.15);
  animation: pulse-ring 8s ease-in-out infinite;
}
@media (max-width: 576px) {
  .hero-visual .orbit-ring.ring-1 {
    width: 300px;
    height: 300px;
  }
}
.hero-visual .orbit-ring.ring-2 {
  width: 320px;
  height: 320px;
  border: 1px solid rgba(var(--primary-rgb), 0.15);
  animation: pulse-ring 6s ease-in-out infinite reverse;
}
@media (max-width: 576px) {
  .hero-visual .orbit-ring.ring-2 {
    width: 220px;
    height: 220px;
  }
}
.hero-visual .orbit-ring.ring-3 {
  width: 550px;
  height: 550px;
  border: 1px dashed rgba(var(--secondary-rgb), 0.1);
  animation: rotate-slow 20s linear infinite;
}
@media (max-width: 576px) {
  .hero-visual .orbit-ring.ring-3 {
    width: 380px;
    height: 380px;
  }
}
.hero-visual .floating-shape {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 10;
  filter: drop-shadow(0 10px 15px rgba(0, 0, 0, 0.1));
}
.hero-visual .floating-shape.shape-circle {
  width: 28px;
  height: 28px;
  background: linear-gradient(135deg, var(--secondary-color), rgb(13.25, 13.25, 13.25));
  border-radius: 50%;
  margin: -14px 0 0 -14px;
  --orbit-radius: 160px;
  animation: orbit 14s linear infinite;
}
.hero-visual .floating-shape.shape-square {
  width: 40px;
  height: 40px;
  background: linear-gradient(135deg, rgba(var(--primary-rgb), 0.9), rgba(var(--primary-rgb), 0.05));
  backdrop-filter: blur(5px);
  border: 1px solid rgba(var(--primary-rgb), 0.3);
  border-radius: 10px;
  margin: -20px 0 0 -20px;
  --orbit-radius: 230px;
  animation: orbit-rev 20s linear infinite;
}
.hero-visual .floating-shape.shape-triangle {
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-bottom: 26px solid var(--primary-color);
  opacity: 0.8;
  margin: -13px 0 0 -15px;
  --orbit-radius: 190px;
  animation: orbit 18s linear infinite reverse;
}
.hero-visual .kinetic-box {
  width: 220px;
  height: 220px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  animation: box-hover 6s ease-in-out infinite;
  transform-style: preserve-3d;
}
.hero-visual .kinetic-box .glass-layer {
  position: absolute;
  inset: 0;
  border-radius: 40px;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 25px 50px rgba(var(--secondary-rgb), 0.15);
  border: 1px solid rgba(255, 255, 255, 0.6);
  transition: all 0.3s ease;
}
.hero-visual .kinetic-box .layer-1 {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.1));
  transform: translateZ(20px) rotate(12deg);
  z-index: 2;
}
.hero-visual .kinetic-box .layer-2 {
  background: linear-gradient(135deg, rgba(var(--primary-rgb), 0.2), rgba(var(--primary-rgb), 0.05));
  transform: translateZ(10px) rotate(-8deg) scale(0.95);
  z-index: 1;
}
.hero-visual .kinetic-box .letters {
  position: relative;
  z-index: 10;
  font-size: 90px;
  font-weight: 900;
  line-height: 1;
  display: flex;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  transform: translateZ(40px);
}
.hero-visual .kinetic-box .letters .letter-p {
  color: rgba(var(--secondary-rgb), 1);
  position: relative;
  z-index: 2;
  text-shadow: 0 10px 20px rgba(var(--secondary-rgb), 0.2);
}
.hero-visual .kinetic-box .letters .letter-w {
  color: rgba(var(--primary-rgb), 1);
  margin-left: -28px;
  position: relative;
  z-index: 1;
  text-shadow: 0 10px 20px rgba(var(--primary-rgb), 0.2);
}

@keyframes box-hover {
  0%, 100% {
    transform: translateY(0) rotateX(0) rotateY(0);
  }
  50% {
    transform: translateY(-15px) rotateX(2deg) rotateY(-2deg);
  }
}
@keyframes orbit {
  0% {
    transform: rotate(0deg) translateX(var(--orbit-radius)) rotate(0deg);
  }
  100% {
    transform: rotate(360deg) translateX(var(--orbit-radius)) rotate(-360deg);
  }
}
@keyframes orbit-rev {
  0% {
    transform: rotate(360deg) translateX(var(--orbit-radius)) rotate(-360deg);
  }
  100% {
    transform: rotate(0deg) translateX(var(--orbit-radius)) rotate(0deg);
  }
}
@keyframes pulse-ring {
  0%, 100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
  50% {
    transform: translate(-50%, -50%) scale(1.05);
    opacity: 0.8;
  }
}
@keyframes rotate-slow {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
@keyframes pulse-green {
  0% {
    box-shadow: 0 0 0 0 rgba(46, 204, 113, 0.4);
  }
  70% {
    box-shadow: 0 0 0 6px rgba(46, 204, 113, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(46, 204, 113, 0);
  }
}
.home-faq-section .home-faq-hidden {
  opacity: 0;
  transform: translateY(20px);
  pointer-events: none;
  max-height: 0;
  overflow: hidden;
}
.home-faq-section .home-faq-visible {
  opacity: 1;
  transform: translateY(0);
  max-height: 500px;
  transition: all 0.5s ease;
  pointer-events: auto;
}

/* Custom Bootstrap Components */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.border,
.border-top,
.border-right,
.border-end,
.border-bottom,
.border-left,
.border-start,
.dropdown-divider,
.input-group-text {
  border-color: var(--border-color) !important;
}

.border.border-primary {
  border-color: var(--primary-color) !important;
}
.border.border-secondary {
  border-color: var(--secondary-color) !important;
}
.border.border-success {
  border-color: #4dca88 !important;
}
.border.border-danger {
  border-color: #fc5a69 !important;
}
.border.border-warning {
  border-color: #ffba33 !important;
}
.border.border-info {
  border-color: #4fb8c9 !important;
}
.border.border-dark {
  border-color: var(--color-900) !important;
}
.border.border-white {
  border-color: var(--color-fff) !important;
}

.container-xxl {
  max-width: 1560px;
}

.font-weight-bold {
  font-weight: bold;
}

.table > :not(caption) > * > * {
  padding: 0.8rem 0.8rem;
}

.zindex-fixed {
  z-index: 1030;
}

.zindex-popover {
  z-index: 1070;
}

.zindex-modal {
  z-index: 1055;
}

.small-xs {
  font-size: 13px !important;
}

.form-control,
.form-select {
  border-color: var(--border-color);
  background-color: var(--color-fff);
  color: var(--color-900);
  font-size: 16px;
  border-radius: 20px;
  padding: 10px 20px;
}
.form-control::-moz-placeholder, .form-select::-moz-placeholder {
  color: var(--color-400);
}
.form-control::placeholder,
.form-select::placeholder {
  color: var(--color-400);
}
.form-control:focus,
.form-select:focus {
  box-shadow: 0 0 10px rgba(33, 37, 41, 0.15);
  background-color: var(--color-fff);
  border-color: var(--secondary-color);
  color: var(--text-color);
}
.form-control.form-control-lg,
.form-select.form-control-lg {
  min-height: calc(1.5em + 1.8rem + 2px);
}
.form-control:disabled,
.form-select:disabled {
  cursor: not-allowed;
}

.btn-link {
  color: var(--text-color);
}
.btn-link:hover {
  color: var(--secondary-color);
}

.btn {
  font-size: 14px;
  color: var(--text-color);
}
.btn.focus {
  text-decoration: none;
  outline: none;
  box-shadow: none;
}
.btn:focus {
  text-decoration: none;
  outline: none;
  box-shadow: none;
}
.btn:not(:disabled):not(.disabled).active {
  text-decoration: none;
  outline: none;
  box-shadow: none;
}
.btn:not(:disabled):not(.disabled):active {
  text-decoration: none;
  outline: none;
  box-shadow: none;
}
.btn:hover {
  color: var(--text-color);
}
.btn.btn-primary {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
  color: var(--white-color);
}
.btn.btn-primary.active {
  background-color: var(--secondary-color);
  border-color: var(--secondary-color);
}
.btn.btn-outline-primary {
  color: var(--primary-color);
  border-color: var(--primary-color);
}
.btn.btn-outline-primary:hover {
  color: #fff;
  background-color: var(--primary-color);
}
.btn.btn-outline-primary.active {
  background-color: var(--primary-color);
  color: var(--white-color);
}
.btn.btn-outline-secondary {
  border-color: var(--border-color);
}
.btn.btn-outline-secondary:hover {
  color: #fff;
  background-color: var(--secondary-color);
}
.btn.btn-outline-secondary:hover i {
  color: #fff !important;
}
.btn.btn-outline-success {
  color: #4dca88;
  border-color: #4dca88;
}
.btn.btn-outline-success:hover {
  background-color: #4dca88;
  color: #fff;
}
.btn.btn-outline-danger {
  color: #fc5a69;
  border-color: #fc5a69;
}
.btn.btn-outline-danger:hover {
  background-color: #fc5a69;
  color: #fff;
}
.btn.btn-outline-info {
  color: #4fb8c9;
  border-color: #4fb8c9;
}
.btn.btn-outline-info:hover {
  background-color: #4fb8c9;
  color: #fff;
}
.btn.btn-dark {
  color: var(--white-color);
}
.btn.btn-secondary {
  color: var(--white-color);
}
.btn.btn-lg, .btn-group-lg > .btn {
  padding: 0.7rem 1rem;
}

.Comman-btn {
  display: inline-block;
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  padding: 10px 48px;
  font-size: 18px;
  border-radius: 50px;
  color: var(--white-color);
  cursor: pointer;
  z-index: 5;
  transition: all 0.4s ease-in-out;
  border: none;
  background: var(--gradient-color);
  background-size: 100% auto;
  overflow: hidden;
}
.Comman-btn:hover, .Comman-btn:focus {
  background-position: left center;
  color: var(--white-color);
  text-decoration: none;
  outline: none;
}
.Comman-btn.border-btn {
  padding: 14px 40px;
  background: 0 0;
  border: 1.5px solid var(--primary-color);
  color: var(--text-color);
  font-size: 18px;
  box-shadow: none;
}

.dropdown-menu.profile-menu {
  border-radius: 16px !important;
  margin-top: 15px !important;
  padding: 12px !important;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12) !important;
  border: 1px solid rgba(0, 0, 0, 0.05) !important;
  min-width: 220px;
}
@media (max-width: 420px) {
  .dropdown-menu.profile-menu {
    min-width: calc(100vw - 113px) !important;
    position: fixed !important;
    left: 0px !important;
    right: 0px !important;
    top: 60px !important;
    transform: none !important;
  }
}
.dropdown-menu.profile-menu .dropdown-item {
  border-radius: 10px;
  padding: 10px 15px;
  font-weight: 500;
  color: #495057;
  margin-bottom: 4px;
  display: flex;
  align-items: center;
  gap: 12px;
  transition: all 0.2s ease;
}
.dropdown-menu.profile-menu .dropdown-item:last-child {
  margin-bottom: 0;
}
.dropdown-menu.profile-menu .dropdown-item i {
  font-size: 1.1rem;
  color: #6c757d;
}
.dropdown-menu.profile-menu .dropdown-item:hover {
  background-color: #f1f3f5;
  color: var(--primary-color);
}
.dropdown-menu.profile-menu .dropdown-item:hover i {
  color: var(--primary-color);
}
.dropdown-menu.profile-menu .dropdown-item.text-danger:hover {
  background-color: #fff5f5;
  color: #e03131;
}
.dropdown-menu.profile-menu .dropdown-item.text-danger:hover i {
  color: #e03131;
}
.dropdown-menu.profile-menu .dropdown-divider {
  margin: 8px 0;
  opacity: 0.1;
}

.cart-dropdown-btn {
  position: relative;
}
.cart-dropdown-btn i {
  font-size: 14px;
}
.cart-dropdown-btn .cart-badge {
  position: absolute;
  top: -5px;
  right: -5px;
  background: var(--primary-color);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #fff;
}

.dropdown-menu.cart-menu {
  border-radius: 16px !important;
  margin-top: 15px !important;
  padding: 0 !important;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12) !important;
  border: 1px solid rgba(0, 0, 0, 0.05) !important;
  min-width: 300px;
  overflow: hidden;
}
@media (max-width: 768px) {
  .dropdown-menu.cart-menu {
    min-width: calc(100vw - 113px) !important;
    position: fixed !important;
    left: 0px !important;
    right: 0px !important;
    top: 50px !important;
    transform: none !important;
  }
  .dropdown-menu.cart-menu::before {
    left: 25px !important;
    right: auto !important;
  }
}
@media (max-width: 576px) {
  .dropdown-menu.cart-menu {
    left: 0px !important;
    right: 0px !important;
    top: 60px !important;
  }
}
.dropdown-menu.cart-menu .cart-header {
  padding: 15px 20px;
  background: #f8f9fa;
  border-bottom: 1px solid #eee;
  font-weight: 600;
  font-size: 14px;
  color: #212529;
}
.dropdown-menu.cart-menu .cart-items-list {
  max-height: 350px;
  overflow-y: auto;
  overflow-x: hidden;
  /* Custom Scrollbar */
}
.dropdown-menu.cart-menu .cart-items-list::-webkit-scrollbar {
  width: 5px;
}
.dropdown-menu.cart-menu .cart-items-list::-webkit-scrollbar-track {
  background: transparent;
}
.dropdown-menu.cart-menu .cart-items-list::-webkit-scrollbar-thumb {
  background: transparent;
  border-radius: 10px;
}
.dropdown-menu.cart-menu .cart-items-list:hover::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.15);
}
.dropdown-menu.cart-menu .cart-item {
  padding: 12px 20px;
  display: flex;
  align-items: center;
  gap: 15px;
  transition: all 0.2s ease;
  border-bottom: 1px solid #f8f9fa;
  text-decoration: none;
}
.dropdown-menu.cart-menu .cart-item:last-child {
  border-bottom: none;
}
.dropdown-menu.cart-menu .cart-item .item-img {
  width: 50px;
  height: 50px;
  border-radius: 8px;
  -o-object-fit: cover;
     object-fit: cover;
  background: #eee;
}
.dropdown-menu.cart-menu .cart-item .item-info {
  flex: 1;
  overflow: hidden;
}
.dropdown-menu.cart-menu .cart-item .item-info .item-name {
  display: block;
  font-weight: 600;
  font-size: 14px;
  color: #212529;
  margin-bottom: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.dropdown-menu.cart-menu .cart-item .item-info .item-meta {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  color: #6c757d;
}
.dropdown-menu.cart-menu .cart-item .item-info .item-meta .item-price {
  color: var(--primary-color);
  font-weight: 600;
}
.dropdown-menu.cart-menu .cart-item:hover {
  background-color: #f1f3f5;
}
.dropdown-menu.cart-menu .cart-footer {
  padding: 15px 20px;
  border-top: 1px solid #eee;
  background: #fff;
}
.dropdown-menu.cart-menu .cart-footer .view-all-btn {
  display: block;
  width: 100%;
  text-align: center;
  padding: 10px;
  background: var(--primary-color);
  color: #fff !important;
  border-radius: 10px;
  text-decoration: none;
  font-weight: 600;
  font-size: 14px;
  transition: opacity 0.2s;
}
.dropdown-menu.cart-menu .cart-footer .view-all-btn:hover {
  opacity: 0.9;
}

@keyframes rubberBand {
  from {
    transform: scale3d(1, 1, 1);
  }
  30% {
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    transform: scale3d(1.05, 0.95, 1);
  }
  to {
    transform: scale3d(1, 1, 1);
  }
}
.animate__rubberBand {
  animation: rubberBand 0.8s;
}

.page-item.disabled .page-link {
  background-color: var(--border-color);
  border-color: var(--border-color);
}
.page-item .page-link {
  background-color: var(--card-color);
  border-color: var(--border-color);
  color: var(--primary-color);
}
.page-item.active .page-link {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
}

h1, .h1 {
  font-weight: 600;
  color: var(--title-color);
  margin: 0;
  font-size: 50px;
}
h1 a, .h1 a {
  color: inherit;
}

h2, .h2 {
  font-weight: 600;
  color: var(--title-color);
  margin: 0;
  font-size: 40px;
}
h2 a, .h2 a {
  color: inherit;
}
@media (max-width: 767px) {
  h2, .h2 {
    font-size: 31px;
  }
}

h3, .h3 {
  font-weight: 600;
  color: var(--title-color);
  margin: 0;
  font-size: 30px;
}
h3 a, .h3 a {
  color: inherit;
}

h4, .h4 {
  font-weight: 600;
  color: var(--title-color);
  margin: 0;
  font-size: 25px;
}
h4 a, .h4 a {
  color: inherit;
}

h5, .h5 {
  font-weight: 600;
  color: var(--title-color);
  margin: 0;
  font-size: 20px;
}
h5 a, .h5 a {
  color: inherit;
}

h6, .h6 {
  font-weight: 600;
  color: var(--title-color);
  margin: 0;
  font-size: 16px;
}
h6 a, .h6 a {
  color: inherit;
}

.hero-section h1, .hero-section .h1,
.hero-section h2,
.hero-section .h2,
.hero-section h3,
.hero-section .h3,
.hero-section h4,
.hero-section .h4,
.hero-section h5,
.hero-section .h5,
.hero-section h6,
.hero-section .h6 {
  color: var(--color-900) !important;
}

.bg-white,
.black-color,
.text-dark {
  color: var(--whitebg-text) !important;
}

.modal {
  z-index: 9999;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

/* Generic */
.no-resize {
  resize: none;
}

.bg-none {
  background: none !important;
}

.text-primary {
  color: var(--primary-color) !important;
}

.text-secondary {
  color: var(--secondary-color) !important;
}

.text-muted {
  color: #8c9db5 !important;
}

.fw-fraunces {
  font-family: var(--title-font-fraunces);
}

.btn-pixel {
  display: inline-block;
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  padding: 11px 30px;
  font-size: 18px;
  border-radius: 50px;
  cursor: pointer;
  z-index: 50;
  transition: all 0.4s ease-in-out;
  border: none;
  overflow: hidden;
  background: linear-gradient(90deg, var(--color-3479E0) 0%, #4E54A5 51%, var(--color-3479E0) 100%);
  background-size: 200% auto;
  color: var(--white-color);
}
@media (max-width: 991px) {
  .btn-pixel {
    padding: 8px 24px;
    font-size: 14px;
  }
}
.btn-pixel img {
  transition: all 0.4s ease-in-out;
}
.btn-pixel:hover, .btn-pixel:focus {
  background-position: right center;
  color: var(--white-color);
}
.btn-pixel:hover img, .btn-pixel:focus img {
  transform: rotate(43deg);
}

.btn-pixel-outline {
  display: inline-block;
  padding: 11px 48px;
  font-size: 17px;
  border-radius: 50px;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.2);
  color: var(--text-color);
  z-index: 50;
  transition: all 0.4s ease-in-out;
  position: relative;
  overflow: hidden;
  cursor: pointer;
}
.btn-pixel-outline img,
.btn-pixel-outline svg {
  transition: all 0.4s ease-in-out;
}
@media (max-width: 991px) {
  .btn-pixel-outline {
    padding: 8px 24px;
    font-size: 14px;
  }
}
.btn-pixel-outline::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, var(--color-3479E0) 0%, #4E54A5 51%, var(--color-3479E0) 100%);
  transition: all 0.4s ease-in-out;
  z-index: -1;
}
.btn-pixel-outline:hover, .btn-pixel-outline:focus {
  color: var(--white-color);
  border-color: var(--primary-color);
}
.btn-pixel-outline:hover img,
.btn-pixel-outline:hover svg, .btn-pixel-outline:focus img,
.btn-pixel-outline:focus svg {
  transform: rotate(43deg);
}
.btn-pixel-outline:hover::before, .btn-pixel-outline:focus::before {
  left: 0;
}

.text-gradient {
  background: linear-gradient(211deg, var(--primary-color), var(--secondary-color));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.bg-primary {
  background: var(--primary-color) !important;
}

.fill-primary {
  fill: var(--primary-color) !important;
}

.bg-secondary {
  background: var(--secondary-color) !important;
}

.bg-primary-gradient {
  background: var(--soft-gradient) !important;
  color: #fff;
}

.link-secondary {
  color: var(--secondary-color) !important;
}

.text-color {
  color: var(--text-color);
}

.border-bottom-dashed {
  border-bottom: 1px dashed var(--primary-color) !important;
}

.btn-success {
  background-color: #4dca88;
  border-color: #4dca88;
}

.btn-danger {
  background-color: #fc5a69;
  border-color: #fc5a69;
}

.btn-warning {
  background-color: #ffba33;
  border-color: #ffba33;
}

.btn-info {
  background-color: #4fb8c9;
  border-color: #4fb8c9;
}

.option-color1 {
  background-color: var(--option-color1) !important;
}

.option-color2 {
  background-color: var(--option-color2) !important;
}

.option-color3 {
  background-color: var(--soft-gradient) !important;
}

.option-color4 {
  background-color: var(--option-color4) !important;
}

.option-color5 {
  background-color: var(--option-color5) !important;
}

.option-color6 {
  background-color: var(--option-color6) !important;
}

.option-color7 {
  background-color: var(--option-color7) !important;
}

.text-color1 {
  color: var(--option-color1) !important;
}

.text-color2 {
  color: var(--option-color2) !important;
}

.text-color3 {
  color: var(--soft-gradient) !important;
}

.text-color4 {
  color: var(--option-color4) !important;
}

.text-color5 {
  color: var(--option-color5) !important;
}

.text-color6 {
  color: var(--option-color6) !important;
}

.text-color7 {
  color: var(--option-color7) !important;
}

.border,
.border-left,
.border-top,
.border-right,
.border-bottom {
  border-color: var(--border-color) !important;
}

/************Custom-Width*************/
.vh100 {
  height: 100vh;
}

.w30 {
  width: 30px;
}

.w60 {
  width: 60px;
}

.w90 {
  width: 90px;
}

.w120 {
  width: 120px;
}

.w220 {
  width: 220px;
}

.w240 {
  width: 240px;
}

.w280 {
  width: 280px;
}

.w380 {
  width: 380px;
}

.w-30 {
  width: 30%;
}

.mt--160 {
  margin-top: -160px;
}

/************theme-textcolor*************/
.color-fff {
  color: var(--color-fff);
}

.color-100 {
  color: var(--color-100);
}

.color-200 {
  color: var(--color-200);
}

.color-300 {
  color: var(--color-300);
}

.color-400 {
  color: var(--color-400);
}

.color-600 {
  color: var(--color-600);
}

.color-700 {
  color: var(--color-700);
}

.color-800 {
  color: var(--color-800);
}

.color-900 {
  color: var(--color-900);
}

.color-000 {
  color: var(--color-000);
}

.title-color {
  color: var(--title-color);
}

.black-color {
  color: var(--color-fff);
}

/************theme-bacgroundcolor*************/
.color-bg-fff {
  background-color: var(--color-fff) !important;
}

.color-bg-100 {
  background-color: var(--color-100) !important;
}

.color-bg-200 {
  background-color: var(--color-200) !important;
}

.color-bg-300 {
  background-color: var(--color-300) !important;
}

.color-bg-400 {
  background-color: var(--color-400) !important;
}

.color-bg-600 {
  background-color: var(--color-600) !important;
}

.color-bg-700 {
  background-color: var(--color-700) !important;
}

.color-bg-800 {
  background-color: var(--color-800) !important;
}

.color-bg-900 {
  background-color: var(--color-900) !important;
}

.color-bg-000 {
  background-color: var(--color-000) !important;
}

.bg-orange-image {
  background-image: url(./images/bg-effect-orange.svg?3a467d85161fe315e9e1feadd194a104);
  background-size: 100%;
  background-position: center;
  background-repeat: repeat;
  border: 1px solid rgba(224, 52, 87, 0.1);
}
.bg-orange-image .effect-title h1, .bg-orange-image .effect-title .h1,
.bg-orange-image .effect-title h2,
.bg-orange-image .effect-title .h2,
.bg-orange-image .effect-title h3,
.bg-orange-image .effect-title .h3,
.bg-orange-image .effect-title h4,
.bg-orange-image .effect-title .h4,
.bg-orange-image .effect-title h5,
.bg-orange-image .effect-title .h5,
.bg-orange-image .effect-title h6,
.bg-orange-image .effect-title .h6 {
  color: #E03457;
}
.bg-orange-image .effect-title svg {
  width: 30px;
}
.bg-orange-image .effect-title svg.arrow {
  width: 26px;
  transition: all 0.4s ease-in-out;
}
.bg-orange-image .effect-title svg path {
  fill: #E03457;
}
.bg-orange-image .effect-title:hover svg.arrow, .bg-orange-image .effect-title:focus svg.arrow {
  transform: rotate(43deg);
}

.bg-cerulean-image {
  background-image: url(./images/bg-effect-cerulean.svg?874323a4a3bb5a75e91f6938498c870f);
  background-size: 100%;
  background-position: center;
  background-repeat: repeat;
  border: 1px solid rgba(55, 162, 200, 0.1);
}
.bg-cerulean-image .effect-title h1, .bg-cerulean-image .effect-title .h1,
.bg-cerulean-image .effect-title h2,
.bg-cerulean-image .effect-title .h2,
.bg-cerulean-image .effect-title h3,
.bg-cerulean-image .effect-title .h3,
.bg-cerulean-image .effect-title h4,
.bg-cerulean-image .effect-title .h4,
.bg-cerulean-image .effect-title h5,
.bg-cerulean-image .effect-title .h5,
.bg-cerulean-image .effect-title h6,
.bg-cerulean-image .effect-title .h6 {
  color: #37A2C8;
}
.bg-cerulean-image .effect-title svg {
  width: 30px;
}
.bg-cerulean-image .effect-title svg.arrow {
  width: 26px;
  transition: all 0.4s ease-in-out;
}
.bg-cerulean-image .effect-title svg path {
  fill: #37A2C8;
}
.bg-cerulean-image .effect-title:hover svg.arrow, .bg-cerulean-image .effect-title:focus svg.arrow {
  transform: rotate(43deg);
}

.bg-blue-image {
  background-image: url(./images/bg-effect-blue.svg?0114fa36300c4785a2f6f265041a8e3f);
  background-size: 100%;
  background-position: center;
  background-repeat: repeat;
  border: 1px solid rgba(80, 121, 233, 0.1);
}
.bg-blue-image .effect-title h1, .bg-blue-image .effect-title .h1,
.bg-blue-image .effect-title h2,
.bg-blue-image .effect-title .h2,
.bg-blue-image .effect-title h3,
.bg-blue-image .effect-title .h3,
.bg-blue-image .effect-title h4,
.bg-blue-image .effect-title .h4,
.bg-blue-image .effect-title h5,
.bg-blue-image .effect-title .h5,
.bg-blue-image .effect-title h6,
.bg-blue-image .effect-title .h6 {
  color: #5079E9;
}
.bg-blue-image .effect-title svg {
  width: 30px;
}
.bg-blue-image .effect-title svg.arrow {
  width: 26px;
  transition: all 0.4s ease-in-out;
}
.bg-blue-image .effect-title svg path {
  fill: #5079E9;
}
.bg-blue-image .effect-title:hover svg.arrow, .bg-blue-image .effect-title:focus svg.arrow {
  transform: rotate(43deg);
}

.bg-purple-image {
  background-image: url(./images/bg-effect-purple.svg?9d575e25309c456d15ef72c47aa4dc94);
  background-size: 100%;
  background-position: center;
  background-repeat: repeat;
  border: 1px solid rgba(128, 80, 225, 0.1);
}
.bg-purple-image .effect-title h1, .bg-purple-image .effect-title .h1,
.bg-purple-image .effect-title h2,
.bg-purple-image .effect-title .h2,
.bg-purple-image .effect-title h3,
.bg-purple-image .effect-title .h3,
.bg-purple-image .effect-title h4,
.bg-purple-image .effect-title .h4,
.bg-purple-image .effect-title h5,
.bg-purple-image .effect-title .h5,
.bg-purple-image .effect-title h6,
.bg-purple-image .effect-title .h6 {
  color: #8050E1;
}
.bg-purple-image .effect-title svg {
  width: 30px;
}
.bg-purple-image .effect-title svg.arrow {
  width: 26px;
  transition: all 0.4s ease-in-out;
}
.bg-purple-image .effect-title svg path {
  fill: #8050E1;
}
.bg-purple-image .effect-title:hover svg.arrow, .bg-purple-image .effect-title:focus svg.arrow {
  transform: rotate(43deg);
}

.dropdown-animation {
  opacity: 0;
  transform: translateY(15px);
  animation: eliment-animation 0.2s ease-in-out 0.33333s;
  animation-fill-mode: forwards;
  animation-delay: 0.05s;
}
@keyframes eliment-animation {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes ping {
  0% {
    transform: scale(1);
    opacity: 0.5;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}
.lift {
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}
.lift:focus, .lift:hover {
  box-shadow: 0 6px 1rem rgba(33, 37, 41, 0.1), 0 0.5rem 1rem -0.75rem rgba(33, 37, 41, 0.1) !important;
  transform: translate3d(0, -3px, 0);
}

.animated {
  animation-duration: 1s;
  animation-fill-mode: both;
}

.animated.hinge {
  animation-duration: 2s;
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-30px);
  }
  60% {
    transform: translateY(-15px);
  }
}
.bounce {
  animation-name: bounce;
}
@keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
.flash {
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
.pulse {
  animation-name: pulse;
}
@keyframes shake {
  0%, 100% {
    transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    transform: translateX(10px);
  }
}
.shake {
  animation-name: shake;
}
@keyframes swing {
  20% {
    transform: rotate(15deg);
  }
  40% {
    transform: rotate(-10deg);
  }
  60% {
    transform: rotate(5deg);
  }
  80% {
    transform: rotate(-5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
.swing {
  transform-origin: top center;
  animation-name: swing;
}
@keyframes tada {
  0% {
    transform: scale(1);
  }
  10%, 20% {
    transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    transform: scale(1.1) rotate(-3deg);
  }
  100% {
    transform: scale(1) rotate(0);
  }
}
.tada {
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes wobble {
  0% {
    transform: translateX(0%);
  }
  15% {
    transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    transform: translateX(20%) rotate(3deg);
  }
  45% {
    transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    transform: translateX(10%) rotate(2deg);
  }
  75% {
    transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    transform: translateX(0%);
  }
}
.wobble {
  animation-name: wobble;
}
@keyframes bounceIn {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  50% {
    opacity: 1;
    transform: scale(1.05);
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}
.bounceIn {
  animation-name: bounceIn;
}
@keyframes bounceInDown {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(30px);
  }
  80% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}
.bounceInDown {
  animation-name: bounceInDown;
}
@keyframes bounceInLeft {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateX(30px);
  }
  80% {
    transform: translateX(-10px);
  }
  100% {
    transform: translateX(0);
  }
}
.bounceInLeft {
  animation-name: bounceInLeft;
}
@keyframes bounceInRight {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    transform: translateX(-30px);
  }
  80% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(0);
  }
}
.bounceInRight {
  animation-name: bounceInRight;
}
@keyframes bounceInUp {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(-30px);
  }
  80% {
    transform: translateY(10px);
  }
  100% {
    transform: translateY(0);
  }
}
.bounceInUp {
  animation-name: bounceInUp;
}
@keyframes bounceOut {
  0% {
    transform: scale(1);
  }
  25% {
    transform: scale(0.95);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
  100% {
    opacity: 0;
    transform: scale(0.3);
  }
}
.bounceOut {
  animation-name: bounceOut;
}
@keyframes bounceOutDown {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
.bounceOutDown {
  animation-name: bounceOutDown;
}
@keyframes bounceOutLeft {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(20px);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
.bounceOutLeft {
  animation-name: bounceOutLeft;
}
@keyframes bounceOutRight {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
.bounceOutRight {
  animation-name: bounceOutRight;
}
@keyframes bounceOutUp {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(20px);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
.bounceOutUp {
  animation-name: bounceOutUp;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fadeIn {
  animation-name: fadeIn;
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInDown {
  animation-name: fadeInDown;
}
@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInDownBig {
  animation-name: fadeInDownBig;
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInLeft {
  animation-name: fadeInLeft;
}
@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInLeftBig {
  animation-name: fadeInLeftBig;
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInRight {
  animation-name: fadeInRight;
}
@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInRightBig {
  animation-name: fadeInRightBig;
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInUp {
  animation-name: fadeInUp;
}
@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInUpBig {
  animation-name: fadeInUpBig;
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.fadeOut {
  animation-name: fadeOut;
}
@keyframes fadeOutDown {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(20px);
  }
}
.fadeOutDown {
  animation-name: fadeOutDown;
}
@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
.fadeOutDownBig {
  animation-name: fadeOutDownBig;
}
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-20px);
  }
}
.fadeOutLeft {
  animation-name: fadeOutLeft;
}
@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
.fadeOutLeftBig {
  animation-name: fadeOutLeftBig;
}
@keyframes fadeOutRight {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(20px);
  }
}
.fadeOutRight {
  animation-name: fadeOutRight;
}
@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
.fadeOutRightBig {
  animation-name: fadeOutRightBig;
}
@keyframes fadeOutUp {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-20px);
  }
}
.fadeOutUp {
  animation-name: fadeOutUp;
}
@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
.fadeOutUpBig {
  animation-name: fadeOutUpBig;
}
@keyframes flip {
  0% {
    transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
    animation-timing-function: ease-out;
  }
  40% {
    transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
    animation-timing-function: ease-out;
  }
  50% {
    transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    animation-timing-function: ease-in;
  }
  80% {
    transform: perspective(400px) translateZ(0) rotateY(360deg) scale(0.95);
    animation-timing-function: ease-in;
  }
  100% {
    transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
    animation-timing-function: ease-in;
  }
}
.animated.flip {
  backface-visibility: visible;
  animation-name: flip;
}
@keyframes flipInX {
  0% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    transform: perspective(400px) rotateX(10deg);
  }
  100% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
.flipInX {
  backface-visibility: visible !important;
  animation-name: flipInX;
}
@keyframes flipInY {
  0% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    transform: perspective(400px) rotateY(10deg);
  }
  100% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
.flipInY {
  backface-visibility: visible !important;
  animation-name: flipInY;
}
@keyframes flipOutX {
  0% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
.flipOutX {
  animation-name: flipOutX;
  backface-visibility: visible !important;
}
@keyframes flipOutY {
  0% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
.flipOutY {
  backface-visibility: visible !important;
  animation-name: flipOutY;
}
@keyframes lightSpeedIn {
  0% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
.lightSpeedIn {
  animation-name: lightSpeedIn;
  animation-timing-function: ease-out;
}
@keyframes lightSpeedOut {
  0% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
.lightSpeedOut {
  animation-name: lightSpeedOut;
  animation-timing-function: ease-in;
}
@keyframes rotateIn {
  0% {
    transform-origin: center center;
    transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateIn {
  animation-name: rotateIn;
}
@keyframes rotateInDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInDownLeft {
  animation-name: rotateInDownLeft;
}
@keyframes rotateInDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInDownRight {
  animation-name: rotateInDownRight;
}
@keyframes rotateInUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInUpLeft {
  animation-name: rotateInUpLeft;
}
@keyframes rotateInUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInUpRight {
  animation-name: rotateInUpRight;
}
@keyframes rotateOut {
  0% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: center center;
    transform: rotate(200deg);
    opacity: 0;
  }
}
.rotateOut {
  animation-name: rotateOut;
}
@keyframes rotateOutDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}
.rotateOutDownLeft {
  animation-name: rotateOutDownLeft;
}
@keyframes rotateOutDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
}
.rotateOutDownRight {
  animation-name: rotateOutDownRight;
}
@keyframes rotateOutUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
}
.rotateOutUpLeft {
  animation-name: rotateOutUpLeft;
}
@keyframes rotateOutUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}
.rotateOutUpRight {
  animation-name: rotateOutUpRight;
}
@keyframes slideInDown {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  100% {
    transform: translateY(0);
  }
}
.slideInDown {
  animation-name: slideInDown;
}
@keyframes slideInLeft {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  100% {
    transform: translateX(0);
  }
}
.slideInLeft {
  animation-name: slideInLeft;
}
@keyframes slideInRight {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  100% {
    transform: translateX(0);
  }
}
.slideInRight {
  animation-name: slideInRight;
}
@keyframes slideOutLeft {
  0% {
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
.slideOutLeft {
  animation-name: slideOutLeft;
}
@keyframes slideOutRight {
  0% {
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
.slideOutRight {
  animation-name: slideOutRight;
}
@keyframes slideOutUp {
  0% {
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
.slideOutUp {
  animation-name: slideOutUp;
}
@keyframes hinge {
  0% {
    transform: rotate(0);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    transform: rotate(80deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  40% {
    transform: rotate(60deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  80% {
    transform: rotate(60deg) translateY(0);
    opacity: 1;
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  100% {
    transform: translateY(700px);
    opacity: 0;
  }
}
.hinge {
  animation-name: hinge;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes rollIn {
  0% {
    opacity: 0;
    transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
}
.rollIn {
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes rollOut {
  0% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    transform: translateX(100%) rotate(120deg);
  }
}
.rollOut {
  animation-name: rollOut;
}
@keyframes zoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}
.zoomIn {
  animation-name: zoomIn;
}
@keyframes zoomInDown {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInDown {
  animation-name: zoomInDown;
}
@keyframes zoomInLeft {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInLeft {
  animation-name: zoomInLeft;
}
@keyframes zoomInRight {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInRight {
  animation-name: zoomInRight;
}
@keyframes zoomInUp {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInUp {
  animation-name: zoomInUp;
}
@keyframes zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
.zoomOut {
  animation-name: zoomOut;
}
@keyframes zoomOutDown {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform-origin: center bottom;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomOutDown {
  animation-name: zoomOutDown;
}
@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  to {
    opacity: 0;
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform-origin: left center;
  }
}
.zoomOutLeft {
  animation-name: zoomOutLeft;
}
@keyframes zoomOutRight {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  to {
    opacity: 0;
    transform: scale(0.1) translate3d(2000px, 0, 0);
    transform-origin: right center;
  }
}
.zoomOutRight {
  animation-name: zoomOutRight;
}
@keyframes zoomOutUp {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform-origin: center bottom;
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomOutUp {
  animation-name: zoomOutUp;
}

/*************Loader******************/
.loader {
  position: fixed;
  width: 100%;
  height: 100vh;
  background-color: rgba(116, 114, 114, 0.2);
  background-color: var(--glass-color);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  z-index: 99999999;
  top: 0;
}
.loader .animation-loader {
  width: 200px;
  height: 200px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: auto;
  filter: url("#goo");
  animation: rotate-move 2s ease-in-out infinite;
}
.loader .animation-loader .dot {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background-color: #000;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.loader .animation-loader .dot.dot-3 {
  background-color: #e94a3f;
  animation: dot-3-move 2s ease infinite, index 6s ease infinite;
}
.loader .animation-loader .dot.dot-2 {
  background-color: #10beae;
  animation: dot-2-move 2s ease infinite, index 6s -4s ease infinite;
}
.loader .animation-loader .dot.dot-1 {
  background-color: #fbae24;
  animation: dot-1-move 2s ease infinite, index 6s -2s ease infinite;
}

@keyframes dot-3-move {
  20% {
    transform: scale(1);
  }
  45% {
    transform: translateY(-18px) scale(0.45);
  }
  60% {
    transform: translateY(-90px) scale(0.45);
  }
  80% {
    transform: translateY(-90px) scale(0.45);
  }
  100% {
    transform: translateY(0px) scale(1);
  }
}
@keyframes dot-2-move {
  20% {
    transform: scale(1);
  }
  45% {
    transform: translate(-16px, 12px) scale(0.45);
  }
  60% {
    transform: translate(-80px, 60px) scale(0.45);
  }
  80% {
    transform: translate(-80px, 60px) scale(0.45);
  }
  100% {
    transform: translateY(0px) scale(1);
  }
}
@keyframes dot-1-move {
  20% {
    transform: scale(1);
  }
  45% {
    transform: translate(16px, 12px) scale(0.45);
  }
  60% {
    transform: translate(80px, 60px) scale(0.45);
  }
  80% {
    transform: translate(80px, 60px) scale(0.45);
  }
  100% {
    transform: translateY(0px) scale(1);
  }
}
@keyframes rotate-move {
  55% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  80% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
@keyframes index {
  0%, 100% {
    z-index: 3;
  }
  33.3% {
    z-index: 2;
  }
  66.6% {
    z-index: 1;
  }
}
.animated.infinite {
  animation-iteration-count: infinite;
}

/**
 * ----------------------------------------
 * animation rotate-center
 * ----------------------------------------
*/
.rotate-center {
  animation: rotate-center 100s linear infinite both;
}
@keyframes rotate-center {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
/**
 * ----------------------------------------
 * animation slide_up_down
 * ----------------------------------------
*/
.slide_up_down {
  animation: slide_up_down 1.7s ease-in-out infinite alternate both;
}

/* ------- */
@keyframes slide_up_down {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-20px);
  }
}
/**
 * ----------------------------------------
 * animation wave
 * ----------------------------------------
*/
.wave {
  animation: wave 2s ease-in-out infinite alternate both;
}

/* ------- */
@keyframes wave {
  0% {
    transform: rotate(1deg);
  }
  100% {
    transform: rotate(-1deg);
  }
}
/**
 * ----------------------------------------
 * animation scale_up_down
 * ----------------------------------------
*/
.scale_up_down {
  animation: scale_up_down 1s ease-in-out infinite alternate both;
}

/* ------- */
@keyframes scale_up_down {
  0% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}
.left_to_right_apperance {
  transform: scale(1.2);
  transition: all 0.8s ease-in-out;
  transition-delay: 0.4s;
  clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
}

.left_to_right_apperance.animated {
  transform: scale(1);
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

#redblocks > * {
  transform: translate3d(160px, -93px, 0);
  animation: moveblocks 4s 1s ease infinite;
}

@keyframes moveblocks {
  0% {
    transform: translate3d(160px, -93px, 0);
  }
  50%, 100% {
    transform: translate(0);
  }
}
#firstBlock {
  transform: translate3d(160px, -93px, 0);
  animation: firstBlock 4s 1s ease infinite;
}

#blockdis {
  animation: blockdis 4s 1s ease infinite;
}

@keyframes blockdis {
  30% {
    opacity: 1;
  }
  40%, 100% {
    opacity: 0;
    transform: translate3d(-160px, 93px, 0);
  }
}
@keyframes firstBlock {
  0%, 15% {
    opacity: 0;
  }
  40%, 100% {
    opacity: 1;
  }
}
#redblocksparticles g:nth-child(1) polygon {
  opacity: 0.35;
  animation: glow 4s 1s ease infinite;
}

#redblocksparticles g:nth-child(2) polygon {
  opacity: 0.35;
  animation: glow 4s 1s ease infinite;
}

#redblocksparticles g:nth-child(3) polygon {
  opacity: 0.35;
  animation: glow 4s 1s ease infinite;
}

#redblocksparticles g:nth-child(4) polygon {
  opacity: 0.35;
  animation: glow 4s 1s ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(1) {
  animation: dots 4s 1050ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(1) {
  animation: dots 4s 1050ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(1) {
  animation: dots 4s 1050ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(1) {
  animation: dots 4s 1050ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(2) {
  animation: dots 4s 1100ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(2) {
  animation: dots 4s 1100ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(2) {
  animation: dots 4s 1100ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(2) {
  animation: dots 4s 1100ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(3) {
  animation: dots 4s 1150ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(3) {
  animation: dots 4s 1150ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(3) {
  animation: dots 4s 1150ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(3) {
  animation: dots 4s 1150ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(4) {
  animation: dots 4s 1200ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(4) {
  animation: dots 4s 1200ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(4) {
  animation: dots 4s 1200ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(4) {
  animation: dots 4s 1200ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(5) {
  animation: dots 4s 1250ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(5) {
  animation: dots 4s 1250ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(5) {
  animation: dots 4s 1250ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(5) {
  animation: dots 4s 1250ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(6) {
  animation: dots 4s 1300ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(6) {
  animation: dots 4s 1300ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(6) {
  animation: dots 4s 1300ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(6) {
  animation: dots 4s 1300ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(7) {
  animation: dots 4s 1350ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(7) {
  animation: dots 4s 1350ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(7) {
  animation: dots 4s 1350ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(7) {
  animation: dots 4s 1350ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(8) {
  animation: dots 4s 1400ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(8) {
  animation: dots 4s 1400ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(8) {
  animation: dots 4s 1400ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(8) {
  animation: dots 4s 1400ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(9) {
  animation: dots 4s 1450ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(9) {
  animation: dots 4s 1450ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(9) {
  animation: dots 4s 1450ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(9) {
  animation: dots 4s 1450ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(10) {
  animation: dots 4s 1500ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(10) {
  animation: dots 4s 1500ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(10) {
  animation: dots 4s 1500ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(10) {
  animation: dots 4s 1500ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(11) {
  animation: dots 4s 1550ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(11) {
  animation: dots 4s 1550ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(11) {
  animation: dots 4s 1550ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(11) {
  animation: dots 4s 1550ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(12) {
  animation: dots 4s 1600ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(12) {
  animation: dots 4s 1600ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(12) {
  animation: dots 4s 1600ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(12) {
  animation: dots 4s 1600ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(13) {
  animation: dots 4s 1650ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(13) {
  animation: dots 4s 1650ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(13) {
  animation: dots 4s 1650ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(13) {
  animation: dots 4s 1650ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(14) {
  animation: dots 4s 1700ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(14) {
  animation: dots 4s 1700ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(14) {
  animation: dots 4s 1700ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(14) {
  animation: dots 4s 1700ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(15) {
  animation: dots 4s 1750ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(15) {
  animation: dots 4s 1750ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(15) {
  animation: dots 4s 1750ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(15) {
  animation: dots 4s 1750ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(16) {
  animation: dots 4s 1800ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(16) {
  animation: dots 4s 1800ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(16) {
  animation: dots 4s 1800ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(16) {
  animation: dots 4s 1800ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(17) {
  animation: dots 4s 1850ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(17) {
  animation: dots 4s 1850ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(17) {
  animation: dots 4s 1850ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(17) {
  animation: dots 4s 1850ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(18) {
  animation: dots 4s 1900ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(18) {
  animation: dots 4s 1900ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(18) {
  animation: dots 4s 1900ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(18) {
  animation: dots 4s 1900ms ease infinite;
}

#redblocksparticles g:nth-child(1) g circle:nth-child(19) {
  animation: dots 4s 1950ms ease infinite;
}

#redblocksparticles g:nth-child(2) g circle:nth-child(19) {
  animation: dots 4s 1950ms ease infinite;
}

#redblocksparticles g:nth-child(3) g circle:nth-child(19) {
  animation: dots 4s 1950ms ease infinite;
}

#redblocksparticles g:nth-child(4) g circle:nth-child(19) {
  animation: dots 4s 1950ms ease infinite;
}

@keyframes glow {
  0%, 45% {
    opacity: 0;
  }
  60%, 100% {
    opacity: 0.35;
  }
}
@keyframes dots {
  0%, 35% {
    transform: translate(0);
    opacity: 0;
  }
  60%, 80% {
    transform: translate(55px, -35px);
    opacity: 1;
  }
  100% {
    transform: translate(55px, -35px);
    opacity: 0;
  }
}
#purplebg > :nth-child(1) {
  animation: up 2s 500ms ease infinite alternate;
}

#purplebg > :nth-child(2) {
  animation: up 2s 1000ms ease infinite alternate;
}

#purplebg > :nth-child(3) {
  animation: up 2s 1500ms ease infinite alternate;
}

#purplebg > :nth-child(4) {
  animation: up 2s 2000ms ease infinite alternate;
}

#purplebg > :nth-child(5) {
  animation: up 2s 2500ms ease infinite alternate;
}

#purplebg > :nth-child(6) {
  animation: up 2s 3000ms ease infinite alternate;
}

#purplebg > :nth-child(7) {
  animation: up 2s 3500ms ease infinite alternate;
}

#purplebg > :nth-child(8) {
  animation: up 2s 4000ms ease infinite alternate;
}

#purplebg > :nth-child(9) {
  animation: up 2s 4500ms ease infinite alternate;
}

#purplebg > :nth-child(10) {
  animation: up 2s 5000ms ease infinite alternate;
}

#purplebg > :nth-child(11) {
  animation: up 2s 5500ms ease infinite alternate;
}

#purplebg > :nth-child(12) {
  animation: up 2s 6000ms ease infinite alternate;
}

#purplebg > :nth-child(13) {
  animation: up 2s 6500ms ease infinite alternate;
}

#purplebg > :nth-child(14) {
  animation: up 2s 7000ms ease infinite alternate;
}

#purplebg > :nth-child(15) {
  animation: up 2s 7500ms ease infinite alternate;
}

#purplebg > :nth-child(16) {
  animation: up 2s 8000ms ease infinite alternate;
}

#purplebg > :nth-child(17) {
  animation: up 2s 8500ms ease infinite alternate;
}

#purplebg > :nth-child(18) {
  animation: up 2s 9000ms ease infinite alternate;
}

#purplebg > :nth-child(19) {
  animation: up 2s 9500ms ease infinite alternate;
}

#purplebg > :nth-child(20) {
  animation: up 2s 10000ms ease infinite alternate;
}

#purplebg > :nth-child(21) {
  animation: up 2s 10500ms ease infinite alternate;
}

@keyframes up {
  to {
    transform: translate(0, -25px);
  }
}
#bottomparticles > :nth-child(1) {
  animation: particles 4s 300ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles2 > :nth-child(1) {
  animation: particles 4s 300ms ease infinite alternate, p 2s ease infinite alternate;
}

#redglowparticles > :nth-child(1) {
  animation: particles 4s 300ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles > :nth-child(2) {
  animation: particles 4s 600ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles2 > :nth-child(2) {
  animation: particles 4s 600ms ease infinite alternate, p 2s ease infinite alternate;
}

#redglowparticles > :nth-child(2) {
  animation: particles 4s 600ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles > :nth-child(3) {
  animation: particles 4s 900ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles2 > :nth-child(3) {
  animation: particles 4s 900ms ease infinite alternate, p 2s ease infinite alternate;
}

#redglowparticles > :nth-child(3) {
  animation: particles 4s 900ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles > :nth-child(4) {
  animation: particles 4s 1200ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles2 > :nth-child(4) {
  animation: particles 4s 1200ms ease infinite alternate, p 2s ease infinite alternate;
}

#redglowparticles > :nth-child(4) {
  animation: particles 4s 1200ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles > :nth-child(5) {
  animation: particles 4s 1500ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles2 > :nth-child(5) {
  animation: particles 4s 1500ms ease infinite alternate, p 2s ease infinite alternate;
}

#redglowparticles > :nth-child(5) {
  animation: particles 4s 1500ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles > :nth-child(6) {
  animation: particles 4s 1800ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles2 > :nth-child(6) {
  animation: particles 4s 1800ms ease infinite alternate, p 2s ease infinite alternate;
}

#redglowparticles > :nth-child(6) {
  animation: particles 4s 1800ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles > :nth-child(7) {
  animation: particles 4s 2100ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles2 > :nth-child(7) {
  animation: particles 4s 2100ms ease infinite alternate, p 2s ease infinite alternate;
}

#redglowparticles > :nth-child(7) {
  animation: particles 4s 2100ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles > :nth-child(8) {
  animation: particles 4s 2400ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles2 > :nth-child(8) {
  animation: particles 4s 2400ms ease infinite alternate, p 2s ease infinite alternate;
}

#redglowparticles > :nth-child(8) {
  animation: particles 4s 2400ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles > :nth-child(9) {
  animation: particles 4s 2700ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles2 > :nth-child(9) {
  animation: particles 4s 2700ms ease infinite alternate, p 2s ease infinite alternate;
}

#redglowparticles > :nth-child(9) {
  animation: particles 4s 2700ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles > :nth-child(10) {
  animation: particles 4s 3000ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles2 > :nth-child(10) {
  animation: particles 4s 3000ms ease infinite alternate, p 2s ease infinite alternate;
}

#redglowparticles > :nth-child(10) {
  animation: particles 4s 3000ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles > :nth-child(11) {
  animation: particles 4s 3300ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles2 > :nth-child(11) {
  animation: particles 4s 3300ms ease infinite alternate, p 2s ease infinite alternate;
}

#redglowparticles > :nth-child(11) {
  animation: particles 4s 3300ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles > :nth-child(12) {
  animation: particles 4s 3600ms ease infinite alternate, p 2s ease infinite alternate;
}

#bottomparticles2 > :nth-child(12) {
  animation: particles 4s 3600ms ease infinite alternate, p 2s ease infinite alternate;
}

#redglowparticles > :nth-child(12) {
  animation: particles 4s 3600ms ease infinite alternate, p 2s ease infinite alternate;
}

@keyframes p {
  85%, 100% {
    opacity: 0;
  }
}
@keyframes particles {
  0%, 100% {
    transform: translate(0);
  }
  50% {
    transform: translate(10px, 15px);
  }
}
.particlespoly {
  animation: p 2s ease infinite alternate;
}

#d-app g:nth-child(1) {
  animation: updown 2s 200ms ease-in-out infinite alternate;
}

#d-app g:nth-child(2) {
  animation: updown 2s 400ms ease-in-out infinite alternate;
}

#d-app g:nth-child(3) {
  animation: updown 2s 600ms ease-in-out infinite alternate;
}

#d-apps2 g:nth-child(1) {
  animation: updown 2s 200ms ease-in-out infinite alternate;
}

#d-apps2 g:nth-child(2) {
  animation: updown 2s 400ms ease-in-out infinite alternate;
}

#d-apps2 g:nth-child(3) {
  animation: updown 2s 600ms ease-in-out infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(1) {
  animation: updown 2s 50ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(2) {
  animation: updown 2s 100ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(3) {
  animation: updown 2s 150ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(4) {
  animation: updown 2s 200ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(5) {
  animation: updown 2s 250ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(6) {
  animation: updown 2s 300ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(7) {
  animation: updown 2s 350ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(8) {
  animation: updown 2s 400ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(9) {
  animation: updown 2s 450ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(10) {
  animation: updown 2s 500ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(11) {
  animation: updown 2s 550ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(12) {
  animation: updown 2s 600ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(13) {
  animation: updown 2s 650ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(14) {
  animation: updown 2s 700ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(15) {
  animation: updown 2s 750ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(16) {
  animation: updown 2s 800ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(17) {
  animation: updown 2s 850ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(18) {
  animation: updown 2s 900ms ease infinite alternate;
}

#d-apps2wrapper g:nth-child(3) g > circle:nth-child(19) {
  animation: updown 2s 950ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(1) {
  animation: updown 2s 50ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(2) {
  animation: updown 2s 100ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(3) {
  animation: updown 2s 150ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(4) {
  animation: updown 2s 200ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(5) {
  animation: updown 2s 250ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(6) {
  animation: updown 2s 300ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(7) {
  animation: updown 2s 350ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(8) {
  animation: updown 2s 400ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(9) {
  animation: updown 2s 450ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(10) {
  animation: updown 2s 500ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(11) {
  animation: updown 2s 550ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(12) {
  animation: updown 2s 600ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(13) {
  animation: updown 2s 650ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(14) {
  animation: updown 2s 700ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(15) {
  animation: updown 2s 750ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(16) {
  animation: updown 2s 800ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(17) {
  animation: updown 2s 850ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(18) {
  animation: updown 2s 900ms ease infinite alternate;
}

#d-appswrapper g:nth-child(2) g > circle:nth-child(19) {
  animation: updown 2s 950ms ease infinite alternate;
}

@keyframes updown {
  100% {
    transform: translate(0, -20px);
  }
}
#Layer_1 > g:nth-child(2) > g:nth-child(18) > g:nth-child(12) {
  animation: arrows 1s ease-in-out infinite alternate, p 2s ease infinite alternate;
}

@keyframes arrows {
  to {
    transform: translate(25px, 25px);
  }
}
#Layer_1 > g:nth-child(2) > g:nth-child(17) > g:nth-child(13) {
  animation: arrows2 1s ease-in-out infinite alternate, p 2s ease infinite alternate;
}

@keyframes arrows2 {
  to {
    transform: translate(-25px, -25px);
  }
}
#Layer_1 > g:nth-child(2) > g:nth-child(17) > g:nth-child(12) {
  animation: arrows 1s ease-in-out infinite alternate, p 2s ease infinite alternate;
}

@keyframes pulse-primary {
  0% {
    box-shadow: 0 0 0 0 rgba(var(--primary-rgb), 0.4);
  }
  70% {
    box-shadow: 0 0 0 15px rgba(var(--primary-rgb), 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(var(--primary-rgb), 0);
  }
}
.hero-image-wrapper {
  position: relative;
  z-index: 1;
}
.hero-image-wrapper img {
  border-radius: 30px;
  border: 8px solid var(--color-fff);
}
@media (max-width: 576px) {
  .hero-image-wrapper img {
    border-radius: 20px;
    border-width: 4px !important;
  }
}

.project-info-card {
  border-radius: 24px;
  padding: 20px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.project-info-card .info-label {
  color: var(--text-color);
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.75rem;
  letter-spacing: 1.5px;
  display: block;
  margin-bottom: 8px;
  opacity: 0.8;
}
.project-info-card .info-value {
  font-size: 1rem;
  font-weight: 600;
  color: var(--text-color);
}

.products-section {
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .products-section {
    margin-bottom: 50px;
  }
}
.products-section .bg-waves {
  padding: 30px;
  border-radius: 30px;
  background-attachment: fixed !important;
}
@media (max-width: 576px) {
  .products-section .bg-waves {
    padding: 20px;
    border-radius: 20px;
  }
}

.feature-section {
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .feature-section {
    margin-bottom: 50px;
  }
}
.feature-section {
  padding: 90px 0;
}
@media (max-width: 768px) {
  .feature-section {
    padding: 50px 0;
  }
}
.feature-section {
  background: linear-gradient(180deg, rgba(var(--primary-rgb), 0.05) 0%, rgba(var(--secondary-rgb), 0.05) 100%);
}

.section-subtitle {
  color: var(--primary-color);
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.8rem;
  letter-spacing: 2px;
  display: block;
  margin-bottom: 20px;
  position: relative;
  padding-left: 50px;
}
.section-subtitle::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 35px;
  height: 2px;
  background: var(--primary-color);
  transform: translateY(-50%);
}

.feature-card {
  background-color: var(--glass-color);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-radius: 24px;
  padding: 40px 30px;
  height: 100%;
  border: 1px solid var(--border-color);
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  position: relative;
  overflow: hidden;
}
.feature-card:hover {
  box-shadow: 0 20px 40px rgba(var(--primary-rgb), 0.08);
  transform: translateY(-7px);
  border-color: rgba(var(--primary-rgb), 0.2);
}
.feature-card:hover .icon-box {
  background: rgba(var(--secondary-rgb), 0.2);
  color: rgba(var(--secondary-rgb), 1);
  transform: translateY(-10px);
}
.feature-card .icon-box {
  width: 70px;
  height: 70px;
  background: var(--color-100);
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 25px;
  font-size: 28px;
  color: var(--primary-color);
  transition: all 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
@media (max-width: 576px) {
  .feature-card {
    padding: 20px;
  }
}

.key-feature-card {
  background: var(--color-fff);
  border: 1px solid var(--border-color);
  border-radius: 30px;
  padding: 40px;
  height: 100%;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 280px;
}
.key-feature-card::before {
  content: attr(data-index);
  position: absolute;
  top: -10px;
  right: 10px;
  font-size: 100px;
  font-weight: 900;
  color: rgba(var(--primary-rgb), 0.03);
  line-height: 1;
  transition: all 0.4s ease;
  pointer-events: none;
}
.key-feature-card .icon-box {
  width: 60px;
  height: 60px;
  background: rgba(var(--primary-rgb), 0.05);
  color: var(--primary-color);
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  margin-bottom: auto;
  transition: all 0.4s ease;
}
.key-feature-card h4, .key-feature-card .h4 {
  margin-bottom: 12px;
  font-weight: 700;
  transition: color 0.3s ease;
  font-size: 1.25rem;
}
.key-feature-card p {
  margin: 0;
  font-size: 0.95rem;
  color: var(--text-color);
  opacity: 0.8;
}
.key-feature-card:hover {
  border-color: var(--primary-color);
  box-shadow: 0 30px 60px rgba(var(--primary-rgb), 0.1);
  transform: translateY(-10px);
}
.key-feature-card:hover::before {
  color: rgba(var(--secondary-rgb), 0.08);
  transform: scale(1.1) rotate(-5deg);
}
.key-feature-card:hover .icon-box {
  background-color: rgba(var(--primary-rgb), 0.08);
  color: var(--primary-color);
  transform: scale(1.1) rotate(10deg);
}
.key-feature-card:hover h4, .key-feature-card:hover .h4 {
  color: var(--primary-color);
}
@media (min-width: 992px) {
  .key-feature-card.large-card {
    min-height: 100%;
    justify-content: center;
    padding: 60px;
  }
  .key-feature-card.large-card h4, .key-feature-card.large-card .h4 {
    font-size: 1.75rem;
  }
  .key-feature-card.large-card p {
    font-size: 1.1rem;
  }
  .key-feature-card.large-card .icon-box {
    width: 80px;
    height: 80px;
    font-size: 32px;
    margin-bottom: 30px;
  }
}

.feature-pills {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .feature-pills {
    padding-bottom: 50px;
  }
}

.pill-feature-card {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 20px 30px;
  background: var(--color-fff);
  border: 1px solid rgba(var(--primary-rgb), 0.1);
  border-radius: 100px;
  transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  position: relative;
  overflow: hidden;
}
@media (max-width: 1200px) {
  .pill-feature-card {
    padding: 10px 13px;
  }
}
.pill-feature-card .icon-wrapper {
  width: 50px;
  height: 50px;
  min-width: 50px;
  background: rgba(var(--primary-rgb), 0.05);
  color: var(--primary-color);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  transition: all 0.3s ease;
}
.pill-feature-card h5, .pill-feature-card .h5 {
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
  color: var(--title-color);
}
.pill-feature-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 100px;
  padding: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--primary-rgb), 0.5), transparent);
  -webkit-mask: linear-gradient(var(--color-fff) 0 0) content-box, linear-gradient(var(--color-fff) 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.pill-feature-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  background: var(--color-fff);
}
.pill-feature-card:hover .icon-wrapper {
  background: var(--primary-color);
  color: var(--color-fff);
  transform: scale(1.1) rotate(10deg);
}
.pill-feature-card:hover .icon-wrapper svg path {
  fill: var(--color-fff);
}
.pill-feature-card:hover::before {
  opacity: 1;
}

.cms-showcase-section {
  position: relative;
  overflow: hidden;
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .cms-showcase-section {
    padding-bottom: 50px;
  }
}
.cms-showcase-section .cms-badge {
  display: inline-flex;
  align-items: center;
  padding: 10px 24px;
  background: linear-gradient(135deg, rgba(var(--primary-rgb), 0.1) 0%, rgba(var(--secondary-rgb), 0.1) 100%);
  border: 1px solid rgba(var(--primary-rgb), 0.2);
  border-radius: 100px;
  font-size: 0.8rem;
  font-weight: 700;
  color: var(--primary-color);
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 24px;
}
.cms-showcase-section .cms-badge i {
  font-size: 1rem;
}
.cms-showcase-section .cms-main-title {
  font-size: 3.5rem;
  font-weight: 800;
  color: var(--title-color);
  margin-bottom: 10px;
  letter-spacing: -2px;
  line-height: 1.1;
  background: linear-gradient(135deg, var(--title-color) 0%, var(--primary-color) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media (max-width: 768px) {
  .cms-showcase-section .cms-main-title {
    font-size: 2.5rem;
  }
}
.cms-showcase-section .cms-subtitle {
  color: var(--text-color);
  opacity: 0.7;
  line-height: 1.7;
}
.cms-showcase-section .cms-modules-grid {
  display: flex;
  flex-direction: column;
  gap: 50px;
}
.cms-showcase-section .cms-module-block {
  position: relative;
}
.cms-showcase-section .cms-module-block.reveal {
  opacity: 0;
  transform: translateY(40px);
  transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.cms-showcase-section .cms-module-block.reveal.active {
  opacity: 1;
  transform: translateY(0);
}
.cms-showcase-section .cms-info-card .info-card-header {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 24px;
}
.cms-showcase-section .cms-info-card .module-label {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--text-color);
  opacity: 0.6;
}
.cms-showcase-section .cms-info-card h3, .cms-showcase-section .cms-info-card .h3 {
  font-size: 2.5rem;
  font-weight: 800;
  color: var(--title-color);
  margin-bottom: 20px;
  letter-spacing: -1px;
}
@media (max-width: 768px) {
  .cms-showcase-section .cms-info-card h3, .cms-showcase-section .cms-info-card .h3 {
    font-size: 1.75rem;
  }
}
.cms-showcase-section .cms-info-card p {
  font-size: 1.1rem;
  color: var(--text-color);
  margin-bottom: 30px;
}
.cms-showcase-section .feature-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.cms-showcase-section .feature-pills .pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 18px;
  background: linear-gradient(135deg, rgba(var(--primary-rgb), 0.06) 0%, rgba(var(--secondary-rgb), 0.06) 100%);
  border: 1px solid rgba(var(--primary-rgb), 0.12);
  border-radius: 100px;
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--primary-color);
  transition: all 0.3s ease;
}
.cms-showcase-section .feature-pills .pill i {
  font-size: 14px;
  color: #10b981;
}
.cms-showcase-section .feature-pills .pill:hover {
  background: rgba(var(--primary-rgb), 0.1);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(var(--primary-rgb), 0.15);
}
.cms-showcase-section .cms-mockup-showcase {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.cms-showcase-section .cms-mockup-showcase .browser-frame {
  position: relative;
  z-index: 1;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(255, 255, 255, 0.1);
  transform: perspective(1000px) rotateY(-5deg) rotateX(2deg);
  transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.cms-showcase-section .cms-mockup-showcase .browser-frame:hover {
  transform: perspective(1000px) rotateY(0deg) rotateX(0deg) translateY(-10px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}
.cms-showcase-section .cms-mockup-showcase .browser-frame .browser-bar {
  display: flex;
  gap: 8px;
  padding: 14px 18px;
  background: var(--color-200);
}
.cms-showcase-section .cms-mockup-showcase .browser-frame .browser-bar .browser-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #45475a;
}
.cms-showcase-section .cms-mockup-showcase .browser-frame .browser-bar .browser-dot:nth-child(1) {
  background: #f38ba8;
}
.cms-showcase-section .cms-mockup-showcase .browser-frame .browser-bar .browser-dot:nth-child(2) {
  background: #f9e2af;
}
.cms-showcase-section .cms-mockup-showcase .browser-frame .browser-bar .browser-dot:nth-child(3) {
  background: #a6e3a1;
}
.cms-showcase-section .cms-mockup-showcase .browser-frame img {
  width: 100%;
  display: block;
}
.cms-showcase-section .cms-mockup-showcase .phone-frame {
  position: relative;
  z-index: 1;
  border-radius: 16px;
  padding: 12px;
  border: 1px solid var(--border-color);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
  transform: perspective(1000px) rotateY(5deg) rotateX(2deg);
  transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.cms-showcase-section .cms-mockup-showcase .phone-frame:hover {
  transform: perspective(1000px) rotateY(0deg) rotateX(0deg) translateY(-15px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}
.cms-showcase-section .cms-mockup-showcase .phone-frame img {
  width: 100%;
  border-radius: 28px;
  display: block;
}
.cms-showcase-section .cms-cta-title {
  font-size: 2rem;
  font-weight: 800;
  color: var(--title-color);
  margin-bottom: 12px;
}
@media (max-width: 768px) {
  .cms-showcase-section .cms-cta-title {
    font-size: 1.5rem;
  }
}
.cms-showcase-section .cms-cta-subtitle {
  font-size: 1.1rem;
  color: var(--text-color);
  opacity: 0.6;
}
@media (max-width: 991px) {
  .cms-showcase-section .cms-main-title {
    font-size: 2.25rem;
  }
  .cms-showcase-section .cms-panel-inner {
    padding: 40px 24px;
  }
  .cms-showcase-section .cms-mockup-showcase .browser-frame,
  .cms-showcase-section .cms-mockup-showcase .phone-frame {
    transform: none;
  }
  .cms-showcase-section .floating-stat {
    display: none;
  }
}

.cms-feature-block {
  display: flex;
  align-items: center;
  position: relative;
  gap: 0;
}
.cms-feature-block .content-side {
  width: 50%;
  padding: 60px;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(30px);
  border: 1px solid var(--border-color);
  border-radius: 40px;
  box-shadow: 0 40px 100px rgba(0, 0, 0, 0.06);
  z-index: 2;
  position: relative;
}
@media (max-width: 991px) {
  .cms-feature-block .content-side {
    width: 100%;
    padding: 40px;
    margin-bottom: -40px;
  }
}
.cms-feature-block .visual-side {
  width: 60%;
  margin-left: -10%;
  position: relative;
  z-index: 1;
}
@media (max-width: 991px) {
  .cms-feature-block .visual-side {
    width: 100%;
    margin-left: 0;
    order: -1;
  }
}
.cms-feature-block .visual-side::after {
  content: "";
  position: absolute;
  inset: -20px;
  background: rgba(var(--primary-rgb), 0.03);
  border-radius: 50px;
  z-index: -1;
}
.cms-feature-block.reverse {
  flex-direction: row-reverse;
}
.cms-feature-block.reverse .visual-side {
  margin-left: 0;
  margin-right: -10%;
}
@media (max-width: 991px) {
  .cms-feature-block.reverse .visual-side {
    margin-right: 0;
  }
}
.cms-feature-block .module-tag {
  display: inline-block;
  padding: 5px 15px;
  background: var(--primary-color);
  color: var(--color-fff);
  border-radius: 5px;
  font-weight: 700;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 25px;
}
.cms-feature-block h3, .cms-feature-block .h3 {
  font-size: 2.75rem;
  font-weight: 800;
  margin-bottom: 20px;
  line-height: 1.1;
  color: var(--title-color) !important;
}
.cms-feature-block p {
  font-size: 1.15rem;
  opacity: 0.7;
  line-height: 1.8;
  margin-bottom: 35px;
}
.cms-feature-block .feature-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.cms-feature-block .feature-tags span {
  padding: 8px 20px;
  background: #f8fafc;
  border: 1px solid var(--border-color);
  border-radius: 100px;
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--primary-color);
}
.cms-feature-block .cms-mockup {
  width: 100%;
  border-radius: 30px;
  box-shadow: 0 50px 100px rgba(0, 0, 0, 0.15);
  transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.cms-feature-block .cms-mockup.isometric {
  transform: perspective(1000px) rotateY(-15deg) rotateX(5deg);
}
.cms-feature-block .cms-mockup:hover {
  transform: translateY(-20px) scale(1.02);
  z-index: 10;
}

.mockup-display {
  position: relative;
  padding: 40px;
  z-index: 1;
}
.mockup-display::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 120%;
  height: 120%;
  background: radial-gradient(circle, var(--glow-color, rgba(var(--primary-rgb), 0.1)) 0%, transparent 70%);
  z-index: -1;
  opacity: 0.6;
}
.mockup-display .cms-mockup {
  width: 100%;
  border-radius: 24px;
  box-shadow: 0 50px 100px rgba(0, 0, 0, 0.12);
  transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.mockup-display .cms-mockup:hover {
  transform: translateY(-20px) scale(1.02);
  box-shadow: 0 60px 120px rgba(0, 0, 0, 0.18);
}
.mockup-display.app-view .cms-mockup {
  max-width: 320px;
  border-radius: 50px;
  border: 8px solid var(--border-color);
}

.check-list {
  margin-top: 30px;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}
@media (max-width: 576px) {
  .check-list {
    grid-template-columns: 1fr;
  }
}
.check-list li {
  position: relative;
  padding: 15px 20px 15px 50px;
  list-style: none;
  font-size: 1rem;
  color: var(--title-color);
  font-weight: 600;
  background: var(--color-fff);
  border: 1px solid var(--border-color);
  border-radius: 100px;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
}
.check-list li::before {
  content: "\ec61";
  font-family: "LineIcons", sans-serif;
  position: absolute;
  left: 15px;
  width: 26px;
  height: 26px;
  background: rgba(var(--primary-rgb), 0.08);
  color: var(--primary-color);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  font-size: 14px;
  transition: all 0.3s ease;
}
.check-list li:hover {
  border-color: var(--primary-color);
  transform: translateX(5px);
}
.check-list li:hover::before {
  background: var(--primary-color);
  color: var(--color-fff);
}

.workflow-section {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .workflow-section {
    padding-bottom: 50px;
  }
}
.workflow-section .workflow-timeline {
  position: relative;
  max-width: 1000px;
  margin: 40px auto 0;
  padding: 20px 0;
}
.workflow-section .workflow-timeline::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 2px;
  background: rgba(var(--primary-rgb), 0.1);
  margin-left: -1px;
  z-index: 0;
}
@media (max-width: 767px) {
  .workflow-section .workflow-timeline::before {
    left: 0;
  }
}
@media (max-width: 576px) {
  .workflow-section .workflow-timeline::before {
    left: 5%;
  }
}
.workflow-section .workflow-timeline .timeline-progress {
  position: absolute;
  top: 0;
  left: 50%;
  width: 2px;
  background: var(--primary-color);
  margin-left: -1px;
  height: 0;
  z-index: 1;
  transition: height 0.1s linear;
}
@media (max-width: 767px) {
  .workflow-section .workflow-timeline .timeline-progress {
    left: 0;
  }
}
@media (max-width: 576px) {
  .workflow-section .workflow-timeline .timeline-progress {
    left: 5%;
  }
}
.workflow-section .workflow-timeline .work-step-item {
  position: relative;
  width: 50%;
  padding-bottom: 60px;
  opacity: 0;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
  z-index: 2;
}
.workflow-section .workflow-timeline .work-step-item:nth-child(odd) {
  left: 0;
  text-align: right;
  padding-right: 60px;
  transform: translateX(-40px);
}
.workflow-section .workflow-timeline .work-step-item:nth-child(odd) .work-step .step-number {
  right: -96px;
}
@media (max-width: 767px) {
  .workflow-section .workflow-timeline .work-step-item:nth-child(odd) {
    left: 0;
    padding-left: 0;
    text-align: left;
  }
  .workflow-section .workflow-timeline .work-step-item:nth-child(odd) .work-step .step-number {
    left: -35px;
    right: inherit;
  }
}
@media (max-width: 576px) {
  .workflow-section .workflow-timeline .work-step-item:nth-child(odd) {
    left: 0;
    padding-left: 0;
  }
  .workflow-section .workflow-timeline .work-step-item:nth-child(odd) .work-step .step-number {
    left: 0;
    position: inherit;
  }
}
.workflow-section .workflow-timeline .work-step-item:nth-child(even) {
  left: 50%;
  text-align: left;
  padding-left: 60px;
  transform: translateX(40px);
}
.workflow-section .workflow-timeline .work-step-item:nth-child(even) .work-step .step-number {
  left: -96px;
}
@media (max-width: 767px) {
  .workflow-section .workflow-timeline .work-step-item:nth-child(even) {
    left: 0;
    padding-left: 0;
  }
  .workflow-section .workflow-timeline .work-step-item:nth-child(even) .work-step .step-number {
    left: -35px;
    right: inherit;
  }
}
@media (max-width: 576px) {
  .workflow-section .workflow-timeline .work-step-item:nth-child(even) {
    left: 0;
    padding-left: 0;
  }
  .workflow-section .workflow-timeline .work-step-item:nth-child(even) .work-step .step-number {
    left: 0;
    position: inherit;
  }
}
.workflow-section .workflow-timeline .work-step-item.active {
  opacity: 1;
  transform: translateX(0);
}
.workflow-section .workflow-timeline .work-step-item.active .work-step .step-number {
  background: var(--primary-color);
  color: #fff;
  box-shadow: 0 0 0 8px #fff, 0 10px 20px rgba(var(--primary-rgb), 0.3);
}
@media (max-width: 767px) {
  .workflow-section .workflow-timeline .work-step-item.active {
    width: 100%;
  }
}
.workflow-section .workflow-timeline .work-step-item:last-child {
  padding-bottom: 0;
}
@media (max-width: 767px) {
  .workflow-section .workflow-timeline .work-step-item {
    width: 100%;
  }
  .workflow-section .workflow-timeline .work-step-item .work-step {
    padding-left: 50px;
  }
}
@media (max-width: 576px) {
  .workflow-section .workflow-timeline .work-step-item .work-step {
    padding-left: 35px;
  }
}

.work-step-old {
  text-align: center;
  padding: 20px;
  background: transparent;
  border: none;
  position: relative;
  z-index: 1;
}
.work-step-old:hover {
  transform: translateY(-5px);
}
.work-step-old:hover .step-number {
  background: var(--primary-color);
  color: var(--color-fff);
  border-color: var(--primary-color);
  box-shadow: 0 15px 30px rgba(var(--primary-rgb), 0.2);
}
.work-step-old:hover .step-number::after {
  border-color: var(--primary-color);
  color: var(--primary-color);
  opacity: 1;
  transform: translate(0, -50%);
}
.work-step-old .step-number {
  width: 70px;
  height: 70px;
  background: #fff;
  color: var(--primary-color);
  border-radius: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  margin: 0 auto 30px;
  font-size: 1.5rem;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  border: 2px dashed rgba(var(--primary-rgb), 0.3);
  position: relative;
  z-index: 2;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
}
.work-step-old .step-number::after {
  content: "\ea5c";
  font-family: "LineIcons";
  position: absolute;
  right: -40px;
  top: 50%;
  transform: translate(-10px, -50%);
  font-size: 1.5rem;
  color: rgba(var(--primary-rgb), 0.3);
  transition: all 0.3s ease;
  opacity: 0.5;
  background: transparent;
  border: none;
  width: auto;
  height: auto;
}
@media (max-width: 991px) {
  .work-step-old .step-number::after {
    display: none;
  }
}
.work-step-old h5, .work-step-old .h5 {
  color: var(--title-color);
  font-weight: 700;
  margin-bottom: 12px;
  font-size: 1.15rem;
}
.work-step-old p {
  color: var(--text-color);
  font-size: 0.95rem;
  line-height: 1.6;
  opacity: 0.8;
}

.work-step {
  position: relative;
}
.work-step .step-number {
  position: absolute;
  top: 0;
  width: 70px;
  height: 70px;
  background: #fff;
  color: var(--primary-color);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 1.5rem;
  border: 2px solid var(--primary-color);
  box-shadow: 0 0 0 8px #fff;
  z-index: 2;
  transition: all 0.3s ease;
}
.work-step .step-number:hover {
  transform: scale(1.1);
  background: var(--primary-color);
  color: #fff;
  box-shadow: 0 0 0 8px #fff, 0 10px 20px rgba(var(--primary-rgb), 0.3);
}
.work-step h5, .work-step .h5 {
  color: var(--title-color);
  font-weight: 800;
  font-size: 1.35rem;
  margin-bottom: 15px;
  margin-top: 15px;
}
.work-step p {
  color: var(--text-color);
  font-size: 1rem;
  line-height: 1.6;
  opacity: 0.8;
}

.workflow-timeline .work-step-item.active .work-step .step-number {
  animation: pulse-primary 2s infinite;
}

.service-inner-card {
  background: var(--color-fff);
  border: 1px solid var(--border-color);
  border-radius: 20px;
  padding: 30px;
  margin-bottom: 24px;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  cursor: pointer;
  display: flex;
  align-items: center;
}
.service-inner-card:hover {
  border-color: var(--primary-color);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
  transform: scale(1.02);
}
.service-inner-card:hover i {
  color: var(--primary-color) !important;
  transform: scale(1.1);
}
.service-inner-card h5, .service-inner-card .h5 {
  margin: 0;
  font-weight: 700;
  color: var(--title-color);
}
.service-inner-card i {
  transition: all 0.3s ease;
  color: rgba(var(--primary-rgb), 0.5) !important;
}

@media (max-width: 991px) {
  .cms-section {
    padding: 80px 0;
  }
  .display-4 {
    font-size: 2.5rem;
  }
  .portfolio-section .hero-section::after {
    z-index: -1;
  }
}
.related-project {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .related-project {
    padding-bottom: 50px;
  }
}
.related-project {
  position: relative;
}
.related-project .img-details h4, .related-project .img-details .h4 {
  font-size: 17px;
}

.product-marketing-section {
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .product-marketing-section {
    margin-bottom: 50px;
  }
}
.product-marketing-section {
  max-width: calc(100vw - 50px);
  margin: 0 auto;
  padding: 90px 0;
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .product-marketing-section {
    margin-bottom: 50px;
  }
}
@media (max-width: 1199px) {
  .product-marketing-section {
    max-width: calc(100vw - 30px);
  }
}
@media (max-width: 576px) {
  .product-marketing-section {
    padding: 42px 0;
    border-radius: 0;
    max-width: 100vw;
  }
}
.product-marketing-section {
  border-radius: 50px;
  background: rgba(0, 0, 0, 0) linear-gradient(230deg, rgba(var(--primary-rgb), 0.3) 0%, var(--color-fff) 100%);
}

.design-system-section {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .design-system-section {
    padding-bottom: 50px;
  }
}
.design-system-section {
  position: relative;
}
.design-system-section .system-card {
  background: var(--color-fff);
  border-radius: 24px;
  padding: 35px;
  border: 1px solid var(--border-color);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  height: 100%;
}
@media (max-width: 768px) {
  .design-system-section .system-card {
    padding: 25px;
  }
}
.design-system-section .card-header-custom {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--border-color);
}
.design-system-section .card-header-custom .icon-wrapper {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--primary-color);
  border-radius: 12px;
  color: var(--color-fff);
}
.design-system-section .card-header-custom .system-title {
  font-weight: 700;
  color: var(--text-color);
  margin: 0;
  font-size: 1.5rem;
}
.design-system-section .color-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 25px;
}
.design-system-section .color-stack .stack-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-color);
  margin-bottom: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.design-system-section .color-card {
  width: 100%;
  height: 200px;
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  cursor: pointer;
}
.design-system-section .color-card .shade {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: all 0.3s ease;
}
.design-system-section .color-card .shade .color-code {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--color-fff);
  background: rgba(0, 0, 0, 0.3);
  padding: 4px 12px;
  border-radius: 20px;
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.3s ease;
  backdrop-filter: blur(10px);
}
.design-system-section .color-card:hover .color-code {
  opacity: 1;
  transform: translateY(0);
}
.design-system-section .typography-showcase .font-display {
  margin-bottom: 35px;
}
.design-system-section .typography-showcase .font-display .main-font-name {
  font-size: clamp(3rem, 8vw, 5rem);
  font-weight: 700;
  background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 1.1;
  margin: 0 0 10px 0;
  letter-spacing: -2px;
}
.design-system-section .typography-showcase .font-display .font-description {
  font-size: 0.95rem;
  color: var(--text-color);
  margin: 0;
  font-weight: 400;
}
.design-system-section .typography-showcase .font-weights-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 15px;
}
@media (max-width: 576px) {
  .design-system-section .typography-showcase .font-weights-grid {
    grid-template-columns: repeat(1, 1fr);
  }
}
.design-system-section .typography-showcase .font-weights-grid .weight-item {
  padding: 20px;
  background: rgba(var(--primary-rgb), 0.06);
  border-radius: 12px;
  border: 1px solid var(--border-color);
  transition: all 0.3s ease;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.design-system-section .typography-showcase .font-weights-grid .weight-item:hover {
  background: rgba(var(--primary-rgb), 0.08);
  border-color: var(--primary-color);
  transform: translateY(-3px);
  box-shadow: 0 8px 20px rgba(var(--primary-rgb), 0.15);
}
.design-system-section .typography-showcase .font-weights-grid .weight-item .weight-label {
  font-size: 1.5rem;
  color: var(--text-color);
  display: block;
}
.design-system-section .typography-showcase .font-weights-grid .weight-item .weight-name {
  font-size: 0.85rem;
  color: var(--text-color);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.design-system-section .typography-showcase .font-weights-grid .weight-item.fw-300 {
  font-weight: 300;
}
.design-system-section .typography-showcase .font-weights-grid .weight-item.fw-400 {
  font-weight: 400;
}
.design-system-section .typography-showcase .font-weights-grid .weight-item.fw-600 {
  font-weight: 600;
}
.design-system-section .typography-showcase .font-weights-grid .weight-item.fw-700 {
  font-weight: 700;
}
.design-system-section .typography-showcase .char-sets .char-category {
  margin-bottom: 16px;
  padding: 20px;
  background: rgba(var(--primary-rgb), 0.06);
  border-radius: 12px;
  border-left: 4px solid var(--primary-color);
}
.design-system-section .typography-showcase .char-sets .char-category:last-child {
  margin-bottom: 0;
}
.design-system-section .typography-showcase .char-sets .char-category .category-label {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--primary-color);
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin-bottom: 12px;
}
.design-system-section .typography-showcase .char-sets .char-category .char-line {
  font-size: clamp(0.9rem, 2vw, 1.1rem);
  color: var(--text-color);
  font-weight: 500;
  letter-spacing: 3px;
  word-break: break-all;
  line-height: 1.8;
}
.design-system-section .typography-showcase .char-sets .char-category .char-line.lowercase {
  text-transform: none;
}

.templates-hero-wrap {
  padding: 90px 0 0;
  position: relative;
  overflow: clip;
  background-image: radial-gradient(#d1d5db 1.2px, transparent 1.2px), radial-gradient(#d1d5db 1.2px, transparent 1.2px);
  background-size: 30px 30px;
  background-position: 0 0, 15px 15px;
  background-attachment: fixed;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .templates-hero-wrap {
    padding: 50px 0 0;
  }
}

.template-tabs {
  text-align: center;
}
.template-tabs .nav-pills {
  display: inline-flex;
  flex-direction: row;
  gap: 12px;
  padding: 10px;
  border-radius: 18px;
  justify-content: center;
  flex-wrap: wrap;
  position: static;
  top: auto;
  z-index: auto;
}
@media (max-width: 767px) {
  .template-tabs .nav-pills {
    padding: 8px;
    gap: 8px;
    border-radius: 15px;
    width: 100%;
  }
}
.template-tabs .nav-pills .nav-item {
  width: auto;
}
.template-tabs .nav-pills .nav-link {
  padding: 12px 20px;
  border-radius: 14px;
  font-weight: 700;
  font-size: 13px;
  transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  text-align: center;
  display: block;
  background: var(--color-fff);
  color: var(--text-color);
  border: 1px solid rgba(var(--primary-rgb), 0.1);
}
@media (max-width: 991px) {
  .template-tabs .nav-pills .nav-link {
    padding: 10px 20px;
  }
}
@media (max-width: 575px) {
  .template-tabs .nav-pills .nav-link {
    width: 100%;
    text-align: center;
    padding: 10px 10px;
    font-size: 11px;
  }
}
.template-tabs .nav-pills .nav-link.active, .template-tabs .nav-pills .nav-link:hover {
  background: var(--second-primary-gradient);
  color: var(--color-fff);
  border-color: transparent;
  box-shadow: 0 8px 15px rgba(var(--primary-rgb), 0.2);
}

.product-card {
  border-radius: 24px;
  padding: 3px;
  height: 100%;
  border-color: rgba(var(--primary-rgb), 0.2);
}
.product-card:hover .product-img-box .overlay {
  opacity: 1;
  background: rgba(26, 32, 44, 0.4);
}
.product-card:hover .product-img-box .action-btns {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}
.product-card .product-img-box {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  aspect-ratio: 16/11;
  background: #f8fafc;
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.02);
}
.product-card .product-img-box img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 1s ease;
}
.product-card .product-img-box .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(26, 32, 44, 0);
  backdrop-filter: blur(2px);
  opacity: 0;
  transition: all 0.4s ease;
  z-index: 1;
  border-radius: 20px;
}
.product-card .product-img-box .action-btns {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.9);
  display: flex;
  gap: 15px;
  z-index: 2;
  opacity: 0;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.product-card .product-img-box .action-btns .btn-act {
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  transition: all 0.3s;
  text-decoration: none;
}
.product-card .product-img-box .action-btns .btn-act.btn-details {
  background: var(--color-fff);
  color: var(--text-color);
}
.product-card .product-img-box .action-btns .btn-act.btn-details:hover {
  background: var(--second-primary-gradient);
  color: var(--color-fff);
  transform: translateY(-3px);
}
.product-card .product-img-box .badge-pannel {
  position: absolute;
  bottom: 15px;
  left: 15px;
  right: 15px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 3;
}
.product-card .product-img-box .badge-pannel .price-tag {
  background: var(--color-fff);
  color: var(--text-color);
  padding: 6px 15px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 800;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}
.product-card .type-tag {
  font-size: 11px;
  margin-bottom: 12px;
  font-weight: 500;
}
.product-card .product-content {
  padding: 20px;
}
.product-card .product-content .title {
  font-size: 20px;
  margin-bottom: 2px;
}
.product-card .product-content .title a {
  color: var(--text-color);
  text-decoration: none;
  transition: color 0.3s;
}
.product-card .product-content .title a:hover {
  color: var(--primary-color);
}
.product-card .product-content .description {
  font-size: 14px;
  color: var(--text-color);
  opacity: 0.75;
  line-height: 1.6;
  margin-bottom: 12px;
  height: 45px;
  overflow: hidden;
}
.product-card .product-content .meta-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 20px;
  border-top: 1px solid var(--border-color);
}
.product-card .product-content .meta-bottom .sales {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 700;
  color: var(--text-color);
}
.product-card .product-content .meta-bottom .sales i {
  color: var(--option-color2);
  font-size: 16px;
}
.product-card .product-content .meta-bottom .status a {
  font-size: 12px;
}
.product-card .product-content .meta-bottom .status a:hover {
  color: var(--secondary-color);
}

.meta-info {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.meta-info .meta-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px;
  border: 1px solid rgba(var(--primary-rgb), 0.1);
  border-radius: 50px;
  font-size: 13px;
  position: relative;
  z-index: 10;
}

.template-content-section {
  padding-bottom: 90px;
}
@media (max-width: 768px) {
  .template-content-section {
    padding-bottom: 50px;
  }
}
.template-content-section .template-content {
  background-color: var(--glass-color) !important;
}
.template-content-section .main-content-wrap .image-gallery-wrap {
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.05);
  margin-bottom: 40px;
  border: 1px solid var(--border-color);
}
@media (max-width: 576px) {
  .template-content-section .main-content-wrap .image-gallery-wrap {
    border-radius: 10px;
  }
}
.template-content-section .main-content-wrap .image-gallery-wrap img {
  transition: transform 0.5s ease;
}
.template-content-section .main-content-wrap .image-gallery-wrap:hover img {
  transform: scale(1.02);
}
.template-content-section .main-content-wrap .image-gallery-wrap .carousel-indicators {
  bottom: 20px;
}
.template-content-section .main-content-wrap .image-gallery-wrap .carousel-indicators button {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: var(--white-color);
  border: 2px solid var(--primary-color);
  opacity: 0.5;
  margin: 0 6px;
}
.template-content-section .main-content-wrap .image-gallery-wrap .carousel-indicators button.active {
  opacity: 1;
  background-color: var(--primary-color);
}
.template-content-section .main-content-wrap .template-tabs-wrap .nav-tabs {
  border-bottom: 2px solid var(--border-color);
  gap: 30px;
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
  padding: 0 10px;
}
.template-content-section .main-content-wrap .template-tabs-wrap .nav-tabs::-webkit-scrollbar {
  display: none;
}
.template-content-section .main-content-wrap .template-tabs-wrap .nav-tabs .nav-item {
  margin-bottom: -2px;
}
.template-content-section .main-content-wrap .template-tabs-wrap .nav-tabs .nav-link {
  border: none;
  padding: 12px 0;
  font-weight: 600;
  font-size: 15px;
  color: var(--seccond-text-color);
  position: relative;
  background: transparent !important;
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 8px;
  transition: all 0.3s ease;
  opacity: 0.7;
}
.template-content-section .main-content-wrap .template-tabs-wrap .nav-tabs .nav-link i {
  font-size: 16px;
  transition: all 0.3s ease;
}
.template-content-section .main-content-wrap .template-tabs-wrap .nav-tabs .nav-link::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: var(--primary-color);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.25s ease;
}
.template-content-section .main-content-wrap .template-tabs-wrap .nav-tabs .nav-link.active {
  color: var(--text-color) !important;
  opacity: 1 !important;
}
.template-content-section .main-content-wrap .template-tabs-wrap .nav-tabs .nav-link.active i {
  color: var(--primary-color);
}
.template-content-section .main-content-wrap .template-tabs-wrap .nav-tabs .nav-link.active::after {
  transform: scaleX(1);
}
.template-content-section .main-content-wrap .template-tabs-wrap .nav-tabs .nav-link:hover:not(.active) {
  opacity: 1;
  color: var(--text-color);
}
.template-content-section .main-content-wrap .template-tabs-wrap .tab-content {
  padding-top: 40px;
}
.template-content-section .main-content-wrap .template-tabs-wrap .tab-content .tab-pane.fade {
  opacity: 0;
  transform: translateY(15px);
  transition: opacity 0.4s ease, transform 0.4s ease;
}
.template-content-section .main-content-wrap .template-tabs-wrap .tab-content .tab-pane.fade.show {
  opacity: 1;
  transform: translateY(0);
}
.template-content-section .main-content-wrap .template-tabs-wrap .tab-content .tab-pane .changelog-box .version-timeline {
  border-left: 2px solid var(--border-color) !important;
}
.template-content-section .main-content-wrap .template-tabs-wrap .tab-content .tab-pane .changelog-box .version-timeline .version-item .version-dot {
  position: absolute;
  left: -24px;
  top: 5px;
  width: 14px;
  height: 14px;
  background: var(--primary-color);
  border-radius: 50%;
  border: 3px solid var(--color-fff);
  box-shadow: 0 0 0 4px rgba(var(--primary-rgb), 0.1);
}
.template-content-section .main-content-wrap .template-tabs-wrap .tab-content .tab-pane .changelog-box .version-timeline .version-item .version-content.dashed {
  border-style: dashed !important;
}
.template-content-section .main-content-wrap .description-box .spec-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 15px;
  margin-bottom: 40px;
}
.template-content-section .main-content-wrap .description-box .spec-grid .spec-item {
  padding: 20px;
  text-align: center;
  background: var(--color-fff);
  border-radius: 16px;
  border: 1px solid var(--border-color);
  transition: all 0.3s ease;
}
.template-content-section .main-content-wrap .description-box .spec-grid .spec-item:hover {
  border-color: var(--primary-color);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
  transform: translateY(-5px);
}
.template-content-section .main-content-wrap .description-box .spec-grid .spec-item .icon {
  font-size: 28px;
  color: var(--primary-color);
  margin-bottom: 12px;
  display: block;
}
.template-content-section .main-content-wrap .description-box .spec-grid .spec-item h6, .template-content-section .main-content-wrap .description-box .spec-grid .spec-item .h6 {
  font-size: 14px;
  font-weight: 700;
  margin: 0;
  color: var(--text-color);
}
.template-content-section .main-content-wrap .description-box .spec-grid .spec-item p {
  font-size: 12px;
  color: var(--seccond-text-color);
  margin: 4px 0 0;
  font-weight: 500;
}

.content-section {
  padding-bottom: 30px;
}
.content-section:last-child {
  padding-bottom: 0;
}
.content-section .section-title {
  font-size: 20px;
  font-weight: 600;
  padding-left: 10px;
  margin: 15px 0;
  color: var(--primary-color);
  display: flex;
  align-items: center;
  gap: 12px;
}
.content-section .section-title i {
  font-size: 24px;
  color: var(--primary-color);
  transition: transform 0.3s ease;
}
.content-section .section-title:hover i {
  transform: scale(1.1);
}
.content-section .premium-list {
  list-style: none;
  padding: 0;
}
.content-section .premium-list li {
  position: relative;
  padding: 0px 0 12px 35px;
  font-size: 16px;
  line-height: 1.6;
  color: var(--text-color);
  display: block;
  border: none;
  background: transparent;
}
.content-section .premium-list li::before {
  content: "";
  position: absolute;
  left: 15px;
  top: 9px;
  width: 8px;
  height: 8px;
  background: var(--primary-color);
  border-radius: 50%;
  box-shadow: 0 0 10px rgba(var(--primary-rgb), 0.3);
}
.content-section .premium-list li strong {
  font-weight: 700;
  color: var(--text-color);
  margin-right: 4px;
}

.dynamic-content-wrap {
  margin-top: 30px;
  color: var(--text-color);
  line-height: 1.8;
  font-size: 15px;
}
.dynamic-content-wrap h1, .dynamic-content-wrap .h1,
.dynamic-content-wrap h2,
.dynamic-content-wrap .h2,
.dynamic-content-wrap h3,
.dynamic-content-wrap .h3,
.dynamic-content-wrap h4,
.dynamic-content-wrap .h4,
.dynamic-content-wrap h5,
.dynamic-content-wrap .h5,
.dynamic-content-wrap h6,
.dynamic-content-wrap .h6 {
  margin-top: 40px;
  margin-bottom: 20px;
  color: var(--text-color);
  font-weight: 800;
}
.dynamic-content-wrap p {
  margin-bottom: 25px;
}
.dynamic-content-wrap ul,
.dynamic-content-wrap ol {
  margin-bottom: 40px;
  padding-left: 20px;
}
.dynamic-content-wrap ul li,
.dynamic-content-wrap ol li {
  margin-bottom: 12px;
}
.dynamic-content-wrap img {
  max-width: 100%;
  height: auto;
  border-radius: 16px;
  margin: 40px 0;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.05);
  border: 1px solid var(--border-color);
}
.dynamic-content-wrap blockquote {
  padding: 30px 40px;
  border-left: 5px solid var(--primary-color);
  background: var(--color-f8);
  border-radius: 0 16px 16px 0;
  margin: 40px 0;
  font-style: italic;
  color: var(--seccond-text-color);
}
.dynamic-content-wrap table {
  width: 100%;
  margin: 40px 0;
  border-collapse: collapse;
}
.dynamic-content-wrap table th,
.dynamic-content-wrap table td {
  padding: 15px 20px;
  border: 1px solid var(--border-color);
}
.dynamic-content-wrap table th {
  background: var(--color-f8);
  font-weight: 700;
}

.template-faq .faq-header {
  margin-bottom: 40px;
}
.template-faq .faq-header h3, .template-faq .faq-header .h3 {
  font-weight: 800;
  margin-bottom: 10px;
}
.template-faq h3, .template-faq .h3 {
  font-weight: 700;
  margin-bottom: 10px;
}
.template-faq .accordion .accordion-item {
  margin-bottom: 20px;
  border: 1px solid var(--border-color);
  border-radius: 16px !important;
  transition: all 0.3s ease;
  background: var(--color-fff);
}
@media (max-width: 767px) {
  .template-faq .accordion .accordion-item {
    margin-bottom: 12px;
    border-radius: 12px !important;
  }
}
.template-faq .accordion .accordion-item:hover {
  border-color: rgba(var(--primary-rgb), 0.2);
}
.template-faq .accordion .accordion-item .accordion-header .accordion-button {
  padding: 24px 30px;
  font-weight: 600;
  font-size: 17px;
  color: var(--text-color);
  background: transparent;
  box-shadow: none;
}
@media (max-width: 991px) {
  .template-faq .accordion .accordion-item .accordion-header .accordion-button {
    padding: 20px 25px;
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .template-faq .accordion .accordion-item .accordion-header .accordion-button {
    padding: 16px 20px;
    font-size: 15px;
  }
}
.template-faq .accordion .accordion-item .accordion-header .accordion-button:not(.collapsed) {
  color: var(--primary-color);
  background: rgba(var(--primary-rgb), 0.02);
  border-bottom: 1px solid rgba(var(--primary-rgb), 0.05);
}
.template-faq .accordion .accordion-item .accordion-header .accordion-button::after {
  width: 1.25rem;
  height: 1.25rem;
  background-size: 1.25rem;
}
@media (max-width: 767px) {
  .template-faq .accordion .accordion-item .accordion-header .accordion-button::after {
    width: 1rem;
    height: 1rem;
    background-size: 1rem;
  }
}
.template-faq .accordion .accordion-item .accordion-body {
  padding: 30px;
  color: var(--seccond-text-color);
  line-height: 1.8;
  font-size: 16px;
}
@media (max-width: 991px) {
  .template-faq .accordion .accordion-item .accordion-body {
    padding: 20px 25px;
    font-size: 15px;
  }
}
@media (max-width: 767px) {
  .template-faq .accordion .accordion-item .accordion-body {
    padding: 15px 20px;
    font-size: 14px;
  }
}

.note-box {
  background: var(--color-fff);
  border-radius: 20px;
  padding: 30px;
  border: 1px solid var(--border-color);
  position: relative;
  z-index: 10;
}
@media (max-width: 991px) {
  .note-box {
    padding: 24px;
  }
}
@media (max-width: 576px) {
  .note-box {
    padding: 20px;
  }
}
.note-box h6, .note-box .h6 {
  font-weight: 700;
  color: var(--text-color);
  margin-bottom: 20px;
}
.note-box ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.note-box ul li {
  margin-bottom: 15px;
  font-size: 15px;
  color: var(--text-color);
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
}
@media (max-width: 480px) {
  .note-box ul li {
    flex-direction: column;
    gap: 5px;
  }
}
.note-box ul li:last-child {
  margin-bottom: 0;
}
.note-box ul li .label {
  color: var(--seccond-text-color);
  flex-shrink: 0;
}
.note-box ul li .value {
  font-weight: 600;
  text-align: right;
}
@media (max-width: 480px) {
  .note-box ul li .value {
    text-align: left;
  }
}

.pricing-card {
  background: var(--color-fff);
  border-radius: 12px;
  padding: 20px;
  border: 1px solid var(--border-color);
  transition: border-color 0.2s ease;
}
.pricing-card .plan-options {
  margin-bottom: 25px;
}
.pricing-card .plan-options .plan-label {
  display: block;
  cursor: pointer;
  margin-bottom: 12px;
  position: relative;
}
.pricing-card .plan-options .plan-label input[type=radio] {
  display: none;
}
.pricing-card .plan-options .plan-label input[type=radio]:checked + .plan-content {
  border-color: var(--primary-color);
  background: rgba(var(--primary-rgb), 0.02);
}
.pricing-card .plan-options .plan-label input[type=radio]:checked + .plan-content .radio-check {
  border-color: var(--primary-color);
  background: var(--primary-color);
}
.pricing-card .plan-options .plan-label input[type=radio]:checked + .plan-content .radio-check::after {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
  background: var(--color-fff);
}
.pricing-card .plan-options .plan-label .plan-content {
  display: flex;
  align-items: center;
  padding: 10px 15px;
  border: 1px solid var(--border-color);
  border-radius: 10px;
  transition: border-color 0.2s ease;
  background: var(--color-fff);
}
.pricing-card .plan-options .plan-label .plan-content .radio-check {
  width: 16px;
  height: 16px;
  border: 2px solid var(--border-color);
  border-radius: 50%;
  position: relative;
  margin-right: 12px;
  flex-shrink: 0;
  transition: all 0.2s ease;
}
.pricing-card .plan-options .plan-label .plan-content .radio-check::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6px;
  height: 6px;
  background: var(--primary-color);
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(0);
  opacity: 0;
  transition: all 0.2s ease;
}
.pricing-card .plan-options .plan-label .plan-content .plan-info {
  flex: 1;
}
.pricing-card .plan-options .plan-label .plan-content .plan-info span {
  display: block;
  font-weight: 500;
  font-size: 14px;
  color: var(--text-color);
  margin-bottom: 2px;
}
.pricing-card .plan-options .plan-label .plan-content .plan-info p {
  font-size: 12px;
  color: var(--seccond-text-color);
  margin: 0;
  font-weight: 500;
}
.pricing-card .plan-options .plan-label .plan-content .plan-price {
  font-weight: 500;
  font-size: 15px;
  color: var(--primary-color);
  background: rgba(var(--primary-rgb), 0.05);
  padding: 5px 12px;
  border-radius: 10px;
}
.pricing-card .plan-options .plan-label:hover .plan-content:not(input:checked + .plan-content) {
  border-color: var(--primary-color);
}
.pricing-card .action-buttons {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.pricing-card .action-buttons .btn {
  border-radius: 10px;
}
.pricing-card .license-note {
  margin-top: 25px;
  padding-top: 20px;
  border-top: 1px solid var(--border-color);
  font-size: 13px;
  color: var(--seccond-text-color);
  line-height: 1.5;
}
.pricing-card .additional-info {
  margin-top: 25px;
  list-style: none;
  padding: 0;
}
.pricing-card .additional-info li {
  display: flex;
  justify-content: space-between;
  padding: 8px 0;
  font-size: 14px;
  border-bottom: 1px dashed var(--border-color);
}
.pricing-card .additional-info li:last-child {
  border-bottom: none;
}
.pricing-card .additional-info li .label {
  color: var(--seccond-text-color);
}
.pricing-card .additional-info li .value {
  font-weight: 600;
  color: var(--text-color);
}

.cart-section, .checkout-section {
  background-color: var(--body-color);
  padding: 80px 0;
}
.cart-section .cart-card, .checkout-section .cart-card {
  background: var(--color-fff);
  border-radius: 24px;
  border: 1px solid var(--border-color);
  overflow: hidden;
}
.cart-section .cart-table, .checkout-section .cart-table {
  margin-bottom: 0;
}
.cart-section .cart-table thead, .checkout-section .cart-table thead {
  background-color: var(--color-200);
}
.cart-section .cart-table thead th, .checkout-section .cart-table thead th {
  border-bottom: none;
  padding: 18px 24px;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 11px;
  letter-spacing: 1px;
  color: var(--color-500);
}
.cart-section .cart-table tbody tr, .checkout-section .cart-table tbody tr {
  border-bottom: 1px solid var(--border-color);
  transition: background-color 0.2s;
}
.cart-section .cart-table tbody tr:last-child, .checkout-section .cart-table tbody tr:last-child {
  border-bottom: none;
}
.cart-section .cart-table tbody tr:hover, .checkout-section .cart-table tbody tr:hover {
  background-color: var(--color-100);
}
.cart-section .cart-table tbody td, .checkout-section .cart-table tbody td {
  padding: 24px;
  vertical-align: middle;
  border: none !important;
}
@media (max-width: 767px) {
  .cart-section .cart-table tbody td, .checkout-section .cart-table tbody td {
    padding: 12px;
  }
}
.cart-section .cart-item-info, .checkout-section .cart-item-info {
  display: flex;
  align-items: center;
  gap: 20px;
}
@media (max-width: 767px) {
  .cart-section .cart-item-info, .checkout-section .cart-item-info {
    flex-direction: column;
    align-items: flex-start;
  }
}
.cart-section .cart-item-info .item-img-box, .checkout-section .cart-item-info .item-img-box {
  width: 70px;
  height: 50px;
  flex-shrink: 0;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid var(--border-color);
  background-color: var(--color-200);
}
.cart-section .cart-item-info .item-img-box img, .checkout-section .cart-item-info .item-img-box img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.cart-section .cart-item-info .item-details .item-name, .checkout-section .cart-item-info .item-details .item-name {
  font-weight: 700;
  color: var(--text-color);
  text-decoration: none;
  display: block;
  font-size: 16px;
  line-height: 1.4;
  transition: color 0.2s;
}
.cart-section .cart-item-info .item-details .item-name:hover, .checkout-section .cart-item-info .item-details .item-name:hover {
  color: var(--primary-color);
}
.cart-section .cart-item-info .item-details .item-category, .checkout-section .cart-item-info .item-details .item-category {
  font-size: 12px;
  color: var(--seccond-text-color);
  margin-top: 2px;
}
.cart-section .item-price, .checkout-section .item-price {
  font-weight: 700;
  font-size: 17px;
  color: var(--text-color);
}
.cart-section .btn-return, .checkout-section .btn-return {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 24px;
  background: var(--color-200);
  color: var(--text-color);
  border-radius: 12px;
  font-weight: 700;
  font-size: 14px;
  text-decoration: none;
  transition: all 0.3s ease;
}
.cart-section .btn-return i, .checkout-section .btn-return i {
  font-size: 18px;
  transition: transform 0.3s ease;
}
.cart-section .btn-return:hover, .checkout-section .btn-return:hover {
  background: var(--primary-color);
  color: var(--color-fff);
  transform: translateX(-5px);
}
.cart-section .btn-return:hover i, .checkout-section .btn-return:hover i {
  transform: translateX(-3px);
}
.cart-section .btn-remove, .checkout-section .btn-remove {
  color: var(--color-e03457);
  background: rgba(224, 52, 87, 0.08);
  width: 38px;
  height: 38px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  border: 1px solid transparent;
  text-decoration: none;
}
.cart-section .btn-remove i, .checkout-section .btn-remove i {
  font-size: 18px;
}
.cart-section .btn-remove:hover, .checkout-section .btn-remove:hover {
  background: var(--color-e03457);
  color: var(--color-fff);
  transform: scale(1.1) rotate(8deg);
  box-shadow: 0 5px 15px rgba(224, 52, 87, 0.2);
}
.cart-section, .checkout-section {
  /* Order Summary Card */
}
.cart-section .summary-card, .checkout-section .summary-card {
  background: var(--color-fff);
  border-radius: 24px;
  padding: 32px;
  border: 1px solid var(--border-color);
  position: sticky;
  top: 120px;
}
.cart-section .summary-card h5, .checkout-section .summary-card h5, .cart-section .summary-card .h5, .checkout-section .summary-card .h5 {
  font-weight: 800;
  margin-bottom: 24px;
  color: var(--text-color);
  display: flex;
  align-items: center;
  gap: 10px;
}
.cart-section .summary-card h5 i, .checkout-section .summary-card h5 i, .cart-section .summary-card .h5 i, .checkout-section .summary-card .h5 i {
  color: var(--primary-color);
}
.cart-section .summary-card .summary-list, .checkout-section .summary-card .summary-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.cart-section .summary-card .summary-list li, .checkout-section .summary-card .summary-list li {
  display: flex;
  justify-content: space-between;
  margin-bottom: 16px;
  font-size: 14px;
  color: var(--seccond-text-color);
}
.cart-section .summary-card .summary-list li .value, .checkout-section .summary-card .summary-list li .value {
  font-weight: 700;
  color: var(--text-color);
}
.cart-section .summary-card .summary-list li.total-row, .checkout-section .summary-card .summary-list li.total-row {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 2px dashed var(--border-color);
  color: var(--text-color);
  font-size: 20px;
}
.cart-section .summary-card .summary-list li.total-row .label, .checkout-section .summary-card .summary-list li.total-row .label {
  font-weight: 800;
}
.cart-section .summary-card .summary-list li.total-row .value, .checkout-section .summary-card .summary-list li.total-row .value {
  color: var(--primary-color);
  font-weight: 900;
}
.cart-section .summary-card .checkout-actions, .checkout-section .summary-card .checkout-actions {
  margin-top: 32px;
}
.cart-section .summary-card .checkout-actions .btn-checkout, .checkout-section .summary-card .checkout-actions .btn-checkout {
  width: 100%;
  padding: 16px;
  font-size: 15px;
  font-weight: 700;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.form-z-index {
  position: relative;
  z-index: 10;
}

.checkout-section .checkout-form-box {
  background: var(--color-fff);
  border-radius: 24px;
  border: 1px solid var(--border-color);
  padding: 40px;
}
@media (max-width: 575px) {
  .checkout-section .checkout-form-box {
    padding: 24px;
  }
}
.checkout-section .checkout-form-box .section-title {
  font-size: 22px;
  font-weight: 850;
  margin-bottom: 24px;
  color: var(--text-color);
  display: flex;
  align-items: center;
  gap: 12px;
}
.checkout-section .checkout-form-box .section-title i {
  color: var(--primary-color);
}
.checkout-section .form-label {
  font-weight: 700;
  font-size: 14px;
  color: var(--text-color);
  margin-bottom: 8px;
}
.checkout-section .form-control,
.checkout-section .form-select {
  padding: 12px 18px;
  border-radius: 12px;
  border-top-right-radius: 12px !important;
  border-bottom-right-radius: 12px !important;
  background-color: var(--color-100);
  border: 1px solid var(--border-color);
  font-size: 15px;
  transition: all 0.3s ease;
}
.checkout-section .form-control:focus,
.checkout-section .form-select:focus {
  background-color: var(--color-fff);
  border-color: var(--primary-color);
  box-shadow: 0 0 0 4px rgba(var(--primary-rgb), 0.1);
}
.checkout-section .form-control[readonly],
.checkout-section .form-select[readonly] {
  opacity: 0.7;
  cursor: not-allowed;
}
.checkout-section .input-group-text {
  background-color: var(--color-100);
  border-color: var(--border-color);
  border-radius: 12px;
  color: var(--color-500);
}
.checkout-section {
  /* Stripe Elements style */
}
.checkout-section .payment-input-container {
  padding: 14px 18px;
  border-radius: 12px;
  background-color: var(--color-100);
  border: 1px solid var(--border-color);
  min-height: 50px;
}
.checkout-section .checkout-item-list {
  margin-bottom: 24px;
  border-bottom: 1px solid var(--border-color);
  padding-bottom: 16px;
}
.checkout-section .checkout-item-list .checkout-item {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 12px;
}
.checkout-section .checkout-item-list .checkout-item .item-img {
  width: 40px;
  height: 30px;
  border-radius: 6px;
  -o-object-fit: cover;
     object-fit: cover;
  border: 1px solid var(--border-color);
}
.checkout-section .checkout-item-list .checkout-item .item-info {
  flex: 1;
}
.checkout-section .checkout-item-list .checkout-item .item-info .name {
  font-size: 13px;
  font-weight: 700;
  color: var(--text-color);
  display: block;
  line-height: 1.2;
}
.checkout-section .checkout-item-list .checkout-item .price {
  font-size: 13px;
  font-weight: 700;
  color: var(--text-color);
}

.empty-cart-container {
  text-align: center;
}
.empty-cart-container .empty-illustration {
  width: 140px;
  height: 140px;
  background: var(--color-200);
  border-radius: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px;
  transform: rotate(-5deg);
  transition: transform 0.5s;
}
.empty-cart-container .empty-illustration i {
  font-size: 60px;
  color: var(--color-400);
}
.empty-cart-container .empty-illustration:hover {
  transform: rotate(0deg) scale(1.05);
}
.empty-cart-container h2, .empty-cart-container .h2 {
  font-weight: 800;
  margin-bottom: 12px;
  color: var(--text-color);
}
.empty-cart-container p {
  color: var(--seccond-text-color);
  max-width: 400px;
  margin: 0 auto 30px;
}
.empty-cart-container .btn-shop {
  padding: 14px 40px;
  font-weight: 700;
  border-radius: 50px;
}

.order-history-section::before, .order-history-section::after {
  display: none;
}

@media (max-width: 991px) {
  .cart-section, .checkout-section {
    padding: 60px 0;
  }
  .cart-section .summary-card, .checkout-section .summary-card {
    margin-top: 40px;
    position: static;
  }
}
@media (max-width: 767px) {
  .cart-section .cart-table, .checkout-section .cart-table {
    display: block;
  }
  .cart-section .cart-table thead, .checkout-section .cart-table thead {
    display: none;
  }
  .cart-section .cart-table tbody, .checkout-section .cart-table tbody,
  .cart-section .cart-table tr,
  .checkout-section .cart-table tr,
  .cart-section .cart-table td,
  .checkout-section .cart-table td {
    display: block;
    width: 100%;
  }
  .cart-section .cart-table tr, .checkout-section .cart-table tr {
    padding: 15px;
  }
  .cart-section .cart-table td, .checkout-section .cart-table td {
    padding: 12px 10px;
    border-bottom: none;
  }
  .cart-section .cart-table td[data-label], .checkout-section .cart-table td[data-label] {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .cart-section .cart-table td[data-label]::before, .checkout-section .cart-table td[data-label]::before {
    content: attr(data-label);
    font-weight: 700;
    font-size: 11px;
    text-transform: uppercase;
    color: var(--color-500);
  }
  .cart-section .cart-item-info .item-img-box, .checkout-section .cart-item-info .item-img-box {
    width: 60px;
    height: 45px;
  }
  .cart-section .cart-item-info .item-details .item-name, .checkout-section .cart-item-info .item-details .item-name {
    font-size: 15px;
  }
}
/* Customer Dashboard Styles (Order History, Profile) */
.customer-section {
  padding: 80px 0;
  background-color: var(--body-color);
}
.customer-section .customer-card {
  background: var(--color-fff);
  border-radius: 24px;
  border: 1px solid var(--border-color);
  padding: 40px;
  overflow: hidden;
}
@media (max-width: 575px) {
  .customer-section .customer-card {
    padding: 24px;
  }
}
.customer-section .customer-card .section-title {
  font-size: 24px;
  font-weight: 850;
  margin-bottom: 30px;
  color: var(--text-color);
  display: flex;
  align-items: center;
  gap: 12px;
}
.customer-section .customer-card .section-title i {
  color: var(--primary-color);
}
.customer-section {
  /* Order History Table */
}
.customer-section .order-table {
  width: 100%;
  margin-bottom: 0;
}
.customer-section .order-table thead {
  background-color: var(--color-100);
}
.customer-section .order-table thead th {
  border-bottom: none;
  padding: 18px 20px;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 11px;
  letter-spacing: 1px;
  color: var(--color-500);
}
.customer-section .order-table tbody tr {
  border-bottom: 1px solid var(--border-color);
  transition: all 0.2s;
}
.customer-section .order-table tbody tr:last-child {
  border-bottom: none;
}
.customer-section .order-table tbody tr:hover {
  background-color: var(--color-100);
}
.customer-section .order-table tbody td {
  padding: 20px;
  vertical-align: middle;
  font-size: 15px;
  color: var(--text-color);
  border: none;
}
.customer-section .order-table tbody td .order-id {
  font-weight: 700;
  color: var(--primary-color);
}
.customer-section .order-table tbody td .status-badge {
  padding: 6px 14px;
  border-radius: 50px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}
.customer-section .order-table tbody td .status-badge.status-pending {
  background: rgba(255, 193, 7, 0.15);
  color: #b38600;
}
.customer-section .order-table tbody td .status-badge.status-completed {
  background: rgba(40, 167, 69, 0.15);
  color: #1e7e34;
}
.customer-section .order-table tbody td .status-badge.status-cancelled {
  background: rgba(220, 53, 69, 0.15);
  color: #bd2130;
}

/* Profile Summary Styles */
.profile-summary {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.profile-summary .profile-avatar {
  width: 100px;
  height: 100px;
  background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-fff);
  font-size: 36px;
  font-weight: 800;
  box-shadow: 0 10px 20px rgba(var(--primary-rgb), 0.2);
  border: 4px solid var(--color-fff);
}
.profile-summary .stat-item {
  text-align: center;
  padding: 10px 20px;
  background: var(--color-100);
  border-radius: 12px;
  min-width: 120px;
}

/* Profile Form Styles */
.profile-form .form-label {
  font-weight: 700;
  font-size: 14px;
  color: var(--text-color);
  margin-bottom: 8px;
}
.profile-form .form-label small, .profile-form .form-label .small {
  font-weight: 400;
  color: var(--color-500);
}
.profile-form .form-control {
  padding: 14px 20px;
  border-radius: 12px;
  background-color: var(--color-fff);
  border: 1px solid var(--border-color);
  font-size: 15px;
  font-weight: 500;
  color: var(--title-color);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.profile-form .form-control:focus {
  background-color: var(--color-fff);
  border-color: var(--primary-color);
  box-shadow: 0 0 0 4px rgba(var(--primary-rgb), 0.1);
  transform: translateY(-1px);
}
.profile-form .form-control::-moz-placeholder {
  color: var(--color-500);
  font-weight: 400;
}
.profile-form .form-control::placeholder {
  color: var(--color-500);
  font-weight: 400;
}
.profile-form .form-control[readonly] {
  opacity: 1;
  background-color: var(--color-100);
  cursor: not-allowed;
  color: var(--color-500);
  border-style: dashed;
}

/* Authentication Pages (Login, Register, etc.) */
.auth-wrapper {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 120px 0 80px;
  background-image: radial-gradient(rgba(var(--primary-rgb), 0.08) 1.5px, transparent 1.5px), radial-gradient(rgba(var(--primary-rgb), 0.08) 1.5px, transparent 1.5px);
  background-size: 40px 40px;
  background-position: 0 0, 20px 20px;
  background-color: var(--color-100);
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
}
.auth-wrapper::before {
  content: "";
  position: absolute;
  top: -10%;
  right: -5%;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(var(--primary-rgb), 0.05) 0%, transparent 70%);
  border-radius: 50%;
  z-index: 0;
}
.auth-wrapper::after {
  content: "";
  position: absolute;
  bottom: -5%;
  left: -5%;
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, rgba(var(--secondary-rgb), 0.05) 0%, transparent 70%);
  border-radius: 50%;
  z-index: 0;
}
.auth-wrapper .auth-card {
  background: var(--color-fff);
  border: 1px solid var(--border-color);
  border-radius: 32px;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  position: relative;
  z-index: 1;
  max-width: 550px;
  width: 100%;
  margin: 0 auto;
}
.auth-wrapper .auth-card .auth-header {
  padding: 48px 48px 0;
  text-align: center;
}
.auth-wrapper .auth-card .auth-header .brand-logo {
  margin-bottom: 24px;
  display: inline-block;
}
.auth-wrapper .auth-card .auth-header h2, .auth-wrapper .auth-card .auth-header .h2 {
  font-weight: 800;
  color: var(--text-color);
  letter-spacing: -1px;
  margin-bottom: 8px;
}
.auth-wrapper .auth-card .auth-header p {
  color: var(--seccond-text-color);
  font-size: 15px;
}
.auth-wrapper .auth-card .auth-body {
  padding: 32px 48px 48px;
}
.auth-wrapper .auth-card .auth-body .form-label {
  font-weight: 600;
  color: var(--text-color);
  margin-bottom: 8px;
  font-size: 14px;
}
.auth-wrapper .auth-card .auth-body .form-control {
  padding: 14px 20px;
  border-radius: 12px;
  border-top-right-radius: 12px !important;
  border-bottom-right-radius: 12px !important;
  background-color: var(--color-100);
  border: 1px solid var(--border-color);
  font-size: 15px;
  transition: all 0.3s ease;
}
.auth-wrapper .auth-card .auth-body .form-control:focus {
  background-color: var(--color-fff);
  border-color: var(--primary-color);
  box-shadow: 0 0 0 4px rgba(var(--primary-rgb), 0.1);
}
.auth-wrapper .auth-card .auth-body .input-group-text {
  background-color: var(--color-100);
  border: 1px solid var(--border-color);
  border-radius: 14px;
  padding-left: 15px;
  color: var(--seccond-text-color);
}
.auth-wrapper .auth-card .auth-body .auth-divider {
  display: flex;
  align-items: center;
  text-align: center;
  margin: 24px 0;
  color: var(--color-400);
  font-size: 13px;
}
.auth-wrapper .auth-card .auth-body .auth-divider::before, .auth-wrapper .auth-card .auth-body .auth-divider::after {
  content: "";
  flex: 1;
  border-bottom: 1px solid var(--border-color);
}
.auth-wrapper .auth-card .auth-body .auth-divider span {
  padding: 0 15px;
}
.auth-wrapper .auth-card .auth-body .btn-auth {
  width: 100%;
  padding: 14px;
  border-radius: 16px;
  font-weight: 700;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  box-shadow: 0 10px 20px rgba(var(--primary-rgb), 0.2);
  margin-bottom: 24px;
  transition: all 0.3s ease;
}
.auth-wrapper .auth-card .auth-body .btn-auth:hover {
  transform: translateY(-2px);
  box-shadow: 0 15px 25px rgba(var(--primary-rgb), 0.25);
}
.auth-wrapper .auth-card .auth-body .btn-auth img {
  width: 18px;
}
.auth-wrapper .auth-card .auth-body .auth-footer {
  text-align: center;
  color: var(--seccond-text-color);
  font-size: 14px;
}
.auth-wrapper .auth-card .auth-body .auth-footer a {
  font-weight: 700;
  text-decoration: none;
  transition: color 0.2s;
}
.auth-wrapper .auth-card .auth-body .auth-footer a:hover {
  text-decoration: underline;
}

.password-toggle {
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  color: var(--color-400);
  z-index: 10;
  transition: color 0.2s;
}
.password-toggle:hover {
  color: var(--primary-color);
}

@media (max-width: 767px) {
  .auth-wrapper {
    padding: 80px 15px 40px;
  }
  .auth-wrapper .auth-card .auth-header {
    padding: 32px 24px 0;
  }
  .auth-wrapper .auth-card .auth-body {
    padding: 24px 24px 32px;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBRUEsV0FDRSxvQkFBcUIsQ0FEdkIsb0JBRWEsdUJBQXdCLENBRnJDLG9EQUdtQyxjQUFlLENBQUksWUFLcEQsaUJBQWtCLENBSHBCLHNCQU9JLHFCQUFzQixDQUN2Qiw2QkFLQyxrQkFBbUIsQ0FGdkIsdUNBSU0sb0JBQXFCLENBQ3JCLGtCQUFtQixDQUNuQixrQkFBbUIsQ0FOekIsc0NBV00sVUFBVyxDQUNYLGFBQWMsQ0FDZCxVQUFXLENBYmpCLDBDQWdCTSxVQUFXLENBaEJqQix1REFzQlEsa0JBQW1CLENBQ3BCLGFBS0wsaUJBQWtCLENBQ2xCLE1BQU8sQ0FDUixhQUVDLGlCQUFrQixDQUNsQixNQUFPLENBQ1AsY0FBZSxDQUhqQix1QkFNSSxpQkFBa0IsQ0FDbEIsVUFBVyxDQUdYLG1DQUFvQyxDQVZ4QywrQkFhSSxpQkFBa0IsQ0FDbEIsb0JBQXFCLENBZHpCLHlCQW1CSSxvQkFBcUIsQ0FDdEIsZUFFYyxvQkFBcUIsQ0FBSSxjQUl4Qyx1QkFBd0IsQ0FDeEIsV0FBWSxDQUpkLDJCQUttQixTQUFVLENBQUksUUFLL0Isb0JBQXFCLENBQ3RCLFNBQ1UsZUFBZ0IsQ0FBSSxxQkFDUixpQkFBa0IsQ0FBRSxhQUFjLENBQUksaUJBQzFDLFNBQVUsQ0FBRSxpQkFBa0IsQ0FBSSxZQUduRCxTQUFVLENBQ1YseUJBQTBCLENBQzFCLFNBQVUsQ0FDWCx5QkFFQyxTQUFVLENBQ1YsdUJBQXdCLENBQ3hCLFVBQVcsQ0FDWixXQUtDLGtCQUFtQixDQURyQiw2QkFHSSxvQkFBcUIsQ0FDdEIsYUFXQyxhQUFjLENBQ2QsV0FSUyxDQVNULGlCQUFrQixDQUNsQixXQVRTLENBVVQsZUFBZ0IsQ0FDakIsVUFFQyxtQkFBaUMsQ0FHakMseUJBQTJDLENBQzNDLGlCQUFrQixDQUNsQixPQUFRLENBTlQsZ0JBUUcsVUFBVyxDQUNYLGFBQWMsQ0FDZCxVQUFXLENBVmQsY0FhRyxnQkFBc0IsQ0FHdEIscUJBQTZCLENBQzdCLFdBN0JPLENBOEJQLFVBQVc7O0FDMUlqQixxREFBcUQ7O0FDRnJEOzs7O0VBSUU7QUFDRjs7RUFFRTtBQUNGO0VBQ0UsYUFBYTtFQUNiLFdBQVc7RUFDWCx3Q0FBd0M7RUFDeEMsbUVBQW1FO0VBQ25FLGtCQUFrQjtFQUNsQixVQUFVLEVBQUU7RUFDWjtJQUNFLGtCQUFrQjtJQUVsQiwwQkFBMEI7SUFDMUIsZ0NBQWdDO0lBQ2hDLGlDQUFpQyxFQUFFO0VBQ3JDO0lBQ0UsWUFBWTtJQUNaLGNBQWM7SUFDZCxXQUFXO0lBQ1gsa0JBQWtCO0lBQ2xCLGNBQWM7SUFDZCxTQUFTLEVBQUU7RUFDYjtJQUNFLGtCQUFrQjtJQUNsQixnQkFBZ0I7SUFDaEIsZ0NBQWdDO0lBQ2hDLDZDQUE2QyxFQUFFO0VBQ2pEOztJQUVFLG1DQUFtQztJQUNuQyxnQ0FBZ0M7SUFDaEMsK0JBQStCO0lBQy9CLHVDQUF1QztJQUN2QyxvQ0FBb0M7SUFDcEMsbUNBQW1DLEVBQUU7RUFDdkM7SUFDRSxrQkFBa0I7SUFDbEIsZUFBZTtJQUNmLFdBQVc7SUFDWCxtQ0FBbUM7SUFDbkMsd0NBQXdDO0lBQ3hDLDJCQUEyQixFQUFFO0VBQy9CO0lBQ0UsY0FBYztJQUNkLFdBQVcsRUFBRTtFQUNmOztJQUVFLGFBQWEsRUFBRTtFQUNqQjs7O0lBR0UsZUFBZTtJQUNmLHlCQUF5QjtJQUV6QixzQkFBc0I7SUFFdEIsaUJBQWlCLEVBQUU7RUFDckI7OztJQUdFLGdCQUFnQjtJQUNoQixjQUFjO0lBQ2QsWUFBWTtJQUNaLHFCQUFxQjtJQUNyQixhQUFhLEVBQUU7RUFDakI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxVQUFVO0lBQ1YsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsVUFBVSxFQUFFO0VBQ2Q7SUFDRSxrQkFBa0IsRUFBRTtFQUN0QjtJQUVNLG1CQUFtQjtJQUN2Qix5QkFBeUI7SUFDekIsc0JBQXNCO0lBRXRCLGlCQUFpQixFQUFFO0VBQ3JCO0lBQ0UsWUFBWTtJQUNaLFlBQVksRUFBRTtFQUNoQjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLFlBQVksRUFBRTs7QUFFbEIsVUFBVTtBQUNWO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjs7RUFFRTtBQUNGO0VBQ0UsMEJBQTBCO0VBQzFCLHlCQUF5QixFQUFFOztBQUU3QjtFQUNFLFVBQVUsRUFBRTs7QUFFZDtFQUNFLFVBQVUsRUFBRTs7QUFFZDtFQUNFLHVCQUF1QixFQUFFOztBQUUzQjtFQUNFO0lBQ0UsVUFBVSxFQUFFO0VBQ2Q7SUFDRSxVQUFVLEVBQUUsRUFBRTs7QUFFbEI7O0VBRUU7QUFDRjtFQUNFLG9DQUFvQyxFQUFFOztBQUV4Qzs7RUFFRTtBQUNGO0VBQ0U7OztJQUdFLEVBQUU7RUFDSjtJQUNFLFVBQVU7SUFDViw4QkFBOEIsRUFBRTtFQUNsQztJQUNFLGFBQWEsRUFBRTtFQUNqQjtJQUNFLDRCQUE0QixFQUFFOztBQUVsQzs7RUFFRTtBQUNGO0VBQ0Usa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixnQkFBZ0IsRUFBRTs7QUFFcEI7RUFDRSxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFdBQVc7RUFDWCxTQUFTO0VBQ1QsUUFBUTtFQUNSLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsNkRBQStDO0VBQy9DLGVBQWU7RUFDZixVQUFVO0VBQ1YsbUNBQW1DO0VBQ25DLGdDQUFnQyxFQUFFOztBQUVwQztFQUVNLDBCQUEwQixFQUFFOztBQUVsQzs7RUFFRSxhQUFhLEVBQUU7O0FBRWpCO0VBQ0UsVUFBVTtFQUNWLFlBQVk7RUFDWixrQ0FBa0M7RUFDbEMsNEJBQTRCO0VBQzVCLHdCQUF3QjtFQUN4Qiw4QkFBOEIsRUFBRTs7QUFFbEM7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFlBQVk7RUFDWixXQUFXLEVBQUU7O0FDekxmLGFBQWEsZUFBZSxDQUFDLGVBQWUsd0JBQXdCLENBQUMsb0JBQW9CLENBQUMsc0NBQXNDLFVBQVUsQ0FBQyx1QkFBdUIsVUFBVSxDQUFDLG9CQUFvQixDQUFDLG9CQUFvQixpQkFBaUIsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxnQ0FBZ0MsQ0FBQyx3QkFBd0IsQ0FBQyxVQUFVLENBQUMsOERBQThELENBQUMsd0JBQXdCLENBQUMsYUFBYSxDQUFDLG9EQUFvRCxVQUFVLENBQUMsb0JBQW9CLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyw4REFBOEQsQ0FBQyx3QkFBd0IsQ0FBQyx5QkFBeUIsVUFBVSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsMEJBQTBCLFNBQVMsQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxrQkFBa0IsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMscUJBQXFCLFFBQVEsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLHNCQUFzQixLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyx5QkFBeUIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLFFBQVEsQ0FBQyxTQUFTLENBQUMsaUJBQWlCLFFBQVEsQ0FBQyxVQUFVLENBQUMsb0JBQW9CLFVBQVUsQ0FBQyxXQUFXLENBQUMsbUJBQW1CLFdBQVcsQ0FBQyxTQUFTLENBQUMsaUJBQWlCLGNBQWMsQ0FBQyxjQUFjLENBQUMsbUJBQW1CLENBQUMsbUJBQTRFLHFCQUFxQixDQUFDLHFCQUFxQixpQkFBaUIsQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLDJCQUEyQixDQUFDLFdBQVcsQ0FBa0QsaUJBQWlCLENBQUMsK0JBQStCLENBQUMsMkJBQTJCLENBQWdFLHdCQUF3QixDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsOERBQThELENBQUMsd0JBQXdCLENBQUMseUJBQXlCLGFBQWEsQ0FBQywyQkFBMkIsQ0FBQyxxQ0FBcUMsQ0FBQywyQkFBMEYsd0JBQXdCLENBQUMsU0FBUyxDQUFDLCtEQUErRCxDQUFDLHlCQUF5QixDQUFDLGNBQWMsQ0FBQyw2QkFBNkIsc3dCQUFzd0IsQ0FBQyw4QkFBOEIsOHlCQUE4eUIsQ0FBQyxnQ0FBZ0Msa2dCQUFrZ0IsQ0FBQyxnQ0FBZ0Msc3VCQUFzdUIsQ0FBQywrRUFBK0UsV0FBVyxDQUFDLGdCQUFnQixDQUFDLGlCQUFpQixDQUFDLHVGQUF1RixTQUFTLENBQUMsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsT0FBTyx3QkFBd0IsQ0FBQyxlQUFlLHdCQUF3QixDQUFDLGFBQWEsd0JBQXdCLENBQUMsWUFBWSx3QkFBd0IsQ0FBQyxlQUFlLHdCQUF3QixDQUFDLGdCQUFnQixpQkFBaUIsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxVQUFVLENBQUMsOERBQThELENBQUMsd0JBQXdCLENBQUMsaUNBQWlDLHFCQUFxQix3QkFBd0IsQ0FBQyxVQUFVLENBQUMseUJBQXlCLHdCQUF3QixDQUFDLHFDQUFxQyxXQUFXLENBQUMsU0FBUyxDQUFDLDBDQUEwQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMsdURBQXVELHFCQUFxQix3QkFBd0IsQ0FBQyxVQUFVLENBQUMseUJBQXlCLHdCQUF3QixDQUFDLHFDQUFxQyxXQUFXLENBQUMsU0FBUyxDQUFDLDBDQUEwQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMsdURBQXVELHFCQUFxQiwyQkFBMkIsQ0FBQyxVQUFVLENBQUMseUJBQXlCLDJCQUEyQixDQUFDLEM7QUNBcnpNLGdCQUFnQjtBQ0NkOzs7O0VBQUE7QUNERjs7RUFTSTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFJQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFHRjtFQUNBO0VBTUE7RUFDQTtFQUNBO0VBT0E7RUMyT0kseUJBTEk7RURwT1I7RUFDQTtFQUtBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFNQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFJQTtFQUNBO0VBQ0E7RUFJQTtFQUNBO0VBQ0E7RUFDQTtBRlFGOztBSXhISTtFRnNIQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFHRTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUlBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFHRjtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0FGUUo7O0FLaExBOzs7RUFHRTtBTG1MRjs7QUtwS0k7RUFOSjtJQU9NO0VMd0tKO0FBQ0Y7O0FLM0pBO0VBQ0U7RUFDQTtFRjZPSSxtQ0FMSTtFRXRPUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTDhKRjs7QUtySkE7RUFDRTtFQUNBLGNDbW5CNEI7RURsbkI1QjtFQUNBO0VBQ0EsYUN5bkI0QjtBTmplOUI7O0FLOUlBO0VBQ0U7RUFDQSxxQkN3akI0QjtFRHJqQjVCLGdCQ3dqQjRCO0VEdmpCNUIsZ0JDd2pCNEI7RUR2akI1QjtBTCtJRjs7QUs1SUE7RUZ1TVE7QUh2RFI7QUdyR0k7RUUzQ0o7SUY4TVE7RUgxRE47QUFDRjs7QUtoSkE7RUZrTVE7QUg5Q1I7QUc5R0k7RUV0Q0o7SUZ5TVE7RUhqRE47QUFDRjs7QUtwSkE7RUY2TFE7QUhyQ1I7QUd2SEk7RUVqQ0o7SUZvTVE7RUh4Q047QUFDRjs7QUt4SkE7RUZ3TFE7QUg1QlI7QUdoSUk7RUU1Qko7SUYrTFE7RUgvQk47QUFDRjs7QUs1SkE7RUYrS00sa0JBTEk7QUhWVjs7QUszSkE7RUYwS00sZUFMSTtBSE5WOztBS3BKQTtFQUNFO0VBQ0EsbUJDd1YwQjtBTmpNNUI7O0FLN0lBO0VBQ0U7VUFBQTtFQUNBO0VBQ0E7VUFBQTtBTGdKRjs7QUsxSUE7RUFDRTtFQUNBO0VBQ0E7QUw2SUY7O0FLdklBOztFQUVFO0FMMElGOztBS3ZJQTs7O0VBR0U7RUFDQTtBTDBJRjs7QUt2SUE7Ozs7RUFJRTtBTDBJRjs7QUt2SUE7RUFDRSxnQkM2YjRCO0FOblQ5Qjs7QUtySUE7RUFDRTtFQUNBO0FMd0lGOztBS2xJQTtFQUNFO0FMcUlGOztBSzdIQTs7RUFFRSxtQkNzYTRCO0FOdFM5Qjs7QUt4SEE7RUY2RU0sa0JBTEk7QUhvRFY7O0FLckhBO0VBQ0UsaUJDcWY0QjtFRHBmNUI7RUFDQTtBTHdIRjs7QUsvR0E7O0VBRUU7RUZ3REksaUJBTEk7RUVqRFI7RUFDQTtBTGtIRjs7QUsvR0E7RUFBTTtBTG1ITjs7QUtsSEE7RUFBTTtBTHNITjs7QUtqSEE7RUFDRTtFQUNBLDBCQ2dOd0M7QU41RjFDO0FLbEhFO0VBQ0U7QUxvSEo7O0FLekdFO0VBRUU7RUFDQTtBTDJHSjs7QUtwR0E7Ozs7RUFJRSxxQ0NnVjRCO0VIbFV4QixjQUxJO0FIK0ZWOztBS2hHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VGRUksa0JBTEk7QUh1R1Y7QUsvRkU7RUZISSxrQkFMSTtFRVVOO0VBQ0E7QUxpR0o7O0FLN0ZBO0VGVk0sa0JBTEk7RUVpQlI7RUFDQTtBTGdHRjtBSzdGRTtFQUNFO0FMK0ZKOztBSzNGQTtFQUNFO0VGdEJJLGtCQUxJO0VFNkJSLHdCQzI1Q2tDO0VEMTVDbEMsc0NDMjVDa0M7RUNoc0RoQztBUG9ZSjtBSzVGRTtFQUNFO0VGN0JFLGNBTEk7QUhpSVY7O0FLcEZBO0VBQ0U7QUx1RkY7O0FLakZBOztFQUVFO0FMb0ZGOztBSzVFQTtFQUNFO0VBQ0E7QUwrRUY7O0FLNUVBO0VBQ0UsbUJDNFg0QjtFRDNYNUIsc0JDMlg0QjtFRDFYNUIsZ0NDNFo0QjtFRDNaNUI7QUwrRUY7O0FLeEVBO0VBRUU7RUFDQTtBTDBFRjs7QUt2RUE7Ozs7OztFQU1FO0VBQ0E7RUFDQTtBTDBFRjs7QUtsRUE7RUFDRTtBTHFFRjs7QUsvREE7RUFFRTtBTGlFRjs7QUt6REE7RUFDRTtBTDRERjs7QUt2REE7Ozs7O0VBS0U7RUFDQTtFRjVISSxrQkFMSTtFRW1JUjtBTDBERjs7QUt0REE7O0VBRUU7QUx5REY7O0FLcERBO0VBQ0U7QUx1REY7O0FLcERBO0VBR0U7QUxxREY7QUtsREU7RUFDRTtBTG9ESjs7QUs3Q0E7RUFDRTtBTGdERjs7QUt4Q0E7Ozs7RUFJRTtBTDJDRjtBS3hDSTs7OztFQUNFO0FMNkNOOztBS3RDQTtFQUNFO0VBQ0E7QUx5Q0Y7O0FLcENBO0VBQ0U7QUx1Q0Y7O0FLN0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QUxnQ0Y7O0FLeEJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EscUJDbU40QjtFRGpONUI7RUZuTk07QUg4T1I7QUcxWUk7RUV5V0o7SUZ0TVE7RUgyT047QUFDRjtBSzdCRTtFQUNFO0FMK0JKOztBS3hCQTs7Ozs7OztFQU9FO0FMMkJGOztBS3hCQTtFQUNFO0FMMkJGOztBS2xCQTtFQUNFO0VBQ0E7QUxxQkY7QUtsQkU7RUFDRTtFQUNBO0FMb0JKOztBS1hBOzs7Ozs7O0NBQUE7QUFXQTtFQUNFO0FMV0Y7O0FLTkE7RUFDRTtBTFNGOztBS0ZBO0VBQ0U7RUFDQTtBTEtGOztBS0FBO0VBQ0U7QUxHRjs7QUtFQTtFQUNFO0FMQ0Y7O0FLTUE7RUFDRTtFQUNBO0FMSEY7O0FLV0E7RUFDRTtBTFJGOztBS2dCQTtFQUNFO0FMYkY7O0FROWpCQTtFTG1RTSxrQkFMSTtFSzVQUixnQkZ3b0I0QjtBTnZFOUI7O0FRNWpCRTtFQUdFLGdCRjBuQmtCO0VFem5CbEIsZ0JGeW1CMEI7RUg3V3RCO0FIa1VSO0FHOWRJO0VLcEdGO0lMdVFNO0VIK1ROO0FBQ0Y7O0FRdmtCRTtFQUdFLGdCRjBuQmtCO0VFem5CbEIsZ0JGeW1CMEI7RUg3V3RCO0FINlVSO0FHemVJO0VLcEdGO0lMdVFNO0VIMFVOO0FBQ0Y7O0FRbGxCRTtFQUdFLGdCRjBuQmtCO0VFem5CbEIsZ0JGeW1CMEI7RUg3V3RCO0FId1ZSO0FHcGZJO0VLcEdGO0lMdVFNO0VIcVZOO0FBQ0Y7O0FRN2xCRTtFQUdFLGdCRjBuQmtCO0VFem5CbEIsZ0JGeW1CMEI7RUg3V3RCO0FIbVdSO0FHL2ZJO0VLcEdGO0lMdVFNO0VIZ1dOO0FBQ0Y7O0FReG1CRTtFQUdFLGdCRjBuQmtCO0VFem5CbEIsZ0JGeW1CMEI7RUg3V3RCO0FIOFdSO0FHMWdCSTtFS3BHRjtJTHVRTTtFSDJXTjtBQUNGOztBUW5uQkU7RUFHRSxnQkYwbkJrQjtFRXpuQmxCLGdCRnltQjBCO0VIN1d0QjtBSHlYUjtBR3JoQkk7RUtwR0Y7SUx1UU07RUhzWE47QUFDRjs7QVF0bUJBO0VDdkRFO0VBQ0E7QVRpcUJGOztBUXRtQkE7RUM1REU7RUFDQTtBVHNxQkY7O0FReG1CQTtFQUNFO0FSMm1CRjtBUXptQkU7RUFDRSxvQkZzb0IwQjtBTjNCOUI7O0FRam1CQTtFTDhNTSxrQkFMSTtFS3ZNUjtBUm9tQkY7O0FRaG1CQTtFQUNFLG1CRmlVTztFSDFISCxrQkFMSTtBSGthVjtBUWptQkU7RUFDRTtBUm1tQko7O0FRL2xCQTtFQUNFO0VBQ0EsbUJGdVRPO0VIMUhILGtCQUxJO0VLdExSLGNGdEZTO0FOd3JCWDtBUWhtQkU7RUFDRTtBUmttQko7O0FVbHNCQTtFQ0lFO0VBR0E7QVhnc0JGOztBVWpzQkE7RUFDRSxnQkorakRrQztFSTlqRGxDLG1DSitqRGtDO0VJOWpEbEM7RUhHRTtFSVJGO0VBR0E7QVh5c0JGOztBVTNyQkE7RUFFRTtBVjZyQkY7O0FVMXJCQTtFQUNFO0VBQ0E7QVY2ckJGOztBVTFyQkE7RVB5UE0sa0JBTEk7RU9sUFIsZ0NKa2pEa0M7QU5yM0JwQzs7QVkvdEJFOzs7Ozs7O0VDSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWI0dUJGOztBY3RyQkk7RUY1Q0U7SUFDRSxnQk5rZWU7RU5vUXJCO0FBQ0Y7QWM1ckJJO0VGNUNFO0lBQ0UsZ0JOa2VlO0VOeVFyQjtBQUNGO0FjanNCSTtFRjVDRTtJQUNFLGdCTmtlZTtFTjhRckI7QUFDRjtBY3RzQkk7RUY1Q0U7SUFDRSxpQk5rZWU7RU5tUnJCO0FBQ0Y7QWMzc0JJO0VGNUNFO0lBQ0UsaUJOa2VlO0VOd1JyQjtBQUNGO0FlM3dCQTtFQUVJO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBZml4Qko7O0FlNXdCRTtFQ05BO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0FoQnF4QkY7QWVueEJJO0VDT0Y7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQit3QkY7O0FnQmh1Qk07RUFDRTtBaEJtdUJSOztBZ0JodUJNO0VBcENKO0VBQ0E7QWhCd3dCRjs7QWdCMXZCRTtFQUNFO0VBQ0E7QWhCNnZCSjs7QWdCL3ZCRTtFQUNFO0VBQ0E7QWhCa3dCSjs7QWdCcHdCRTtFQUNFO0VBQ0E7QWhCdXdCSjs7QWdCendCRTtFQUNFO0VBQ0E7QWhCNHdCSjs7QWdCOXdCRTtFQUNFO0VBQ0E7QWhCaXhCSjs7QWdCbnhCRTtFQUNFO0VBQ0E7QWhCc3hCSjs7QWdCdnZCTTtFQWhESjtFQUNBO0FoQjJ5QkY7O0FnQnR2QlU7RUFoRU47RUFDQTtBaEIwekJKOztBZ0IzdkJVO0VBaEVOO0VBQ0E7QWhCK3pCSjs7QWdCaHdCVTtFQWhFTjtFQUNBO0FoQm8wQko7O0FnQnJ3QlU7RUFoRU47RUFDQTtBaEJ5MEJKOztBZ0Ixd0JVO0VBaEVOO0VBQ0E7QWhCODBCSjs7QWdCL3dCVTtFQWhFTjtFQUNBO0FoQm0xQko7O0FnQnB4QlU7RUFoRU47RUFDQTtBaEJ3MUJKOztBZ0J6eEJVO0VBaEVOO0VBQ0E7QWhCNjFCSjs7QWdCOXhCVTtFQWhFTjtFQUNBO0FoQmsyQko7O0FnQm55QlU7RUFoRU47RUFDQTtBaEJ1MkJKOztBZ0J4eUJVO0VBaEVOO0VBQ0E7QWhCNDJCSjs7QWdCN3lCVTtFQWhFTjtFQUNBO0FoQmkzQko7O0FnQjF5Qlk7RUF4RFY7QWhCczJCRjs7QWdCOXlCWTtFQXhEVjtBaEIwMkJGOztBZ0JsekJZO0VBeERWO0FoQjgyQkY7O0FnQnR6Qlk7RUF4RFY7QWhCazNCRjs7QWdCMXpCWTtFQXhEVjtBaEJzM0JGOztBZ0I5ekJZO0VBeERWO0FoQjAzQkY7O0FnQmwwQlk7RUF4RFY7QWhCODNCRjs7QWdCdDBCWTtFQXhEVjtBaEJrNEJGOztBZ0IxMEJZO0VBeERWO0FoQnM0QkY7O0FnQjkwQlk7RUF4RFY7QWhCMDRCRjs7QWdCbDFCWTtFQXhEVjtBaEI4NEJGOztBZ0IzMEJROztFQUVFO0FoQjgwQlY7O0FnQjMwQlE7O0VBRUU7QWhCODBCVjs7QWdCcjFCUTs7RUFFRTtBaEJ3MUJWOztBZ0JyMUJROztFQUVFO0FoQncxQlY7O0FnQi8xQlE7O0VBRUU7QWhCazJCVjs7QWdCLzFCUTs7RUFFRTtBaEJrMkJWOztBZ0J6MkJROztFQUVFO0FoQjQyQlY7O0FnQnoyQlE7O0VBRUU7QWhCNDJCVjs7QWdCbjNCUTs7RUFFRTtBaEJzM0JWOztBZ0JuM0JROztFQUVFO0FoQnMzQlY7O0FnQjczQlE7O0VBRUU7QWhCZzRCVjs7QWdCNzNCUTs7RUFFRTtBaEJnNEJWOztBYzE3Qkk7RUVVRTtJQUNFO0VoQm83Qk47RWdCajdCSTtJQXBDSjtJQUNBO0VoQnc5QkE7RWdCMThCQTtJQUNFO0lBQ0E7RWhCNDhCRjtFZ0I5OEJBO0lBQ0U7SUFDQTtFaEJnOUJGO0VnQmw5QkE7SUFDRTtJQUNBO0VoQm85QkY7RWdCdDlCQTtJQUNFO0lBQ0E7RWhCdzlCRjtFZ0IxOUJBO0lBQ0U7SUFDQTtFaEI0OUJGO0VnQjk5QkE7SUFDRTtJQUNBO0VoQmcrQkY7RWdCajhCSTtJQWhESjtJQUNBO0VoQm8vQkE7RWdCLzdCUTtJQWhFTjtJQUNBO0VoQmtnQ0Y7RWdCbjhCUTtJQWhFTjtJQUNBO0VoQnNnQ0Y7RWdCdjhCUTtJQWhFTjtJQUNBO0VoQjBnQ0Y7RWdCMzhCUTtJQWhFTjtJQUNBO0VoQjhnQ0Y7RWdCLzhCUTtJQWhFTjtJQUNBO0VoQmtoQ0Y7RWdCbjlCUTtJQWhFTjtJQUNBO0VoQnNoQ0Y7RWdCdjlCUTtJQWhFTjtJQUNBO0VoQjBoQ0Y7RWdCMzlCUTtJQWhFTjtJQUNBO0VoQjhoQ0Y7RWdCLzlCUTtJQWhFTjtJQUNBO0VoQmtpQ0Y7RWdCbitCUTtJQWhFTjtJQUNBO0VoQnNpQ0Y7RWdCditCUTtJQWhFTjtJQUNBO0VoQjBpQ0Y7RWdCMytCUTtJQWhFTjtJQUNBO0VoQjhpQ0Y7RWdCditCVTtJQXhEVjtFaEJraUNBO0VnQjErQlU7SUF4RFY7RWhCcWlDQTtFZ0I3K0JVO0lBeERWO0VoQndpQ0E7RWdCaC9CVTtJQXhEVjtFaEIyaUNBO0VnQm4vQlU7SUF4RFY7RWhCOGlDQTtFZ0J0L0JVO0lBeERWO0VoQmlqQ0E7RWdCei9CVTtJQXhEVjtFaEJvakNBO0VnQjUvQlU7SUF4RFY7RWhCdWpDQTtFZ0IvL0JVO0lBeERWO0VoQjBqQ0E7RWdCbGdDVTtJQXhEVjtFaEI2akNBO0VnQnJnQ1U7SUF4RFY7RWhCZ2tDQTtFZ0J4Z0NVO0lBeERWO0VoQm1rQ0E7RWdCaGdDTTs7SUFFRTtFaEJrZ0NSO0VnQi8vQk07O0lBRUU7RWhCaWdDUjtFZ0J4Z0NNOztJQUVFO0VoQjBnQ1I7RWdCdmdDTTs7SUFFRTtFaEJ5Z0NSO0VnQmhoQ007O0lBRUU7RWhCa2hDUjtFZ0IvZ0NNOztJQUVFO0VoQmloQ1I7RWdCeGhDTTs7SUFFRTtFaEIwaENSO0VnQnZoQ007O0lBRUU7RWhCeWhDUjtFZ0JoaUNNOztJQUVFO0VoQmtpQ1I7RWdCL2hDTTs7SUFFRTtFaEJpaUNSO0VnQnhpQ007O0lBRUU7RWhCMGlDUjtFZ0J2aUNNOztJQUVFO0VoQnlpQ1I7QUFDRjtBY3BtQ0k7RUVVRTtJQUNFO0VoQjZsQ047RWdCMWxDSTtJQXBDSjtJQUNBO0VoQmlvQ0E7RWdCbm5DQTtJQUNFO0lBQ0E7RWhCcW5DRjtFZ0J2bkNBO0lBQ0U7SUFDQTtFaEJ5bkNGO0VnQjNuQ0E7SUFDRTtJQUNBO0VoQjZuQ0Y7RWdCL25DQTtJQUNFO0lBQ0E7RWhCaW9DRjtFZ0Jub0NBO0lBQ0U7SUFDQTtFaEJxb0NGO0VnQnZvQ0E7SUFDRTtJQUNBO0VoQnlvQ0Y7RWdCMW1DSTtJQWhESjtJQUNBO0VoQjZwQ0E7RWdCeG1DUTtJQWhFTjtJQUNBO0VoQjJxQ0Y7RWdCNW1DUTtJQWhFTjtJQUNBO0VoQitxQ0Y7RWdCaG5DUTtJQWhFTjtJQUNBO0VoQm1yQ0Y7RWdCcG5DUTtJQWhFTjtJQUNBO0VoQnVyQ0Y7RWdCeG5DUTtJQWhFTjtJQUNBO0VoQjJyQ0Y7RWdCNW5DUTtJQWhFTjtJQUNBO0VoQityQ0Y7RWdCaG9DUTtJQWhFTjtJQUNBO0VoQm1zQ0Y7RWdCcG9DUTtJQWhFTjtJQUNBO0VoQnVzQ0Y7RWdCeG9DUTtJQWhFTjtJQUNBO0VoQjJzQ0Y7RWdCNW9DUTtJQWhFTjtJQUNBO0VoQitzQ0Y7RWdCaHBDUTtJQWhFTjtJQUNBO0VoQm10Q0Y7RWdCcHBDUTtJQWhFTjtJQUNBO0VoQnV0Q0Y7RWdCaHBDVTtJQXhEVjtFaEIyc0NBO0VnQm5wQ1U7SUF4RFY7RWhCOHNDQTtFZ0J0cENVO0lBeERWO0VoQml0Q0E7RWdCenBDVTtJQXhEVjtFaEJvdENBO0VnQjVwQ1U7SUF4RFY7RWhCdXRDQTtFZ0IvcENVO0lBeERWO0VoQjB0Q0E7RWdCbHFDVTtJQXhEVjtFaEI2dENBO0VnQnJxQ1U7SUF4RFY7RWhCZ3VDQTtFZ0J4cUNVO0lBeERWO0VoQm11Q0E7RWdCM3FDVTtJQXhEVjtFaEJzdUNBO0VnQjlxQ1U7SUF4RFY7RWhCeXVDQTtFZ0JqckNVO0lBeERWO0VoQjR1Q0E7RWdCenFDTTs7SUFFRTtFaEIycUNSO0VnQnhxQ007O0lBRUU7RWhCMHFDUjtFZ0JqckNNOztJQUVFO0VoQm1yQ1I7RWdCaHJDTTs7SUFFRTtFaEJrckNSO0VnQnpyQ007O0lBRUU7RWhCMnJDUjtFZ0J4ckNNOztJQUVFO0VoQjByQ1I7RWdCanNDTTs7SUFFRTtFaEJtc0NSO0VnQmhzQ007O0lBRUU7RWhCa3NDUjtFZ0J6c0NNOztJQUVFO0VoQjJzQ1I7RWdCeHNDTTs7SUFFRTtFaEIwc0NSO0VnQmp0Q007O0lBRUU7RWhCbXRDUjtFZ0JodENNOztJQUVFO0VoQmt0Q1I7QUFDRjtBYzd3Q0k7RUVVRTtJQUNFO0VoQnN3Q047RWdCbndDSTtJQXBDSjtJQUNBO0VoQjB5Q0E7RWdCNXhDQTtJQUNFO0lBQ0E7RWhCOHhDRjtFZ0JoeUNBO0lBQ0U7SUFDQTtFaEJreUNGO0VnQnB5Q0E7SUFDRTtJQUNBO0VoQnN5Q0Y7RWdCeHlDQTtJQUNFO0lBQ0E7RWhCMHlDRjtFZ0I1eUNBO0lBQ0U7SUFDQTtFaEI4eUNGO0VnQmh6Q0E7SUFDRTtJQUNBO0VoQmt6Q0Y7RWdCbnhDSTtJQWhESjtJQUNBO0VoQnMwQ0E7RWdCanhDUTtJQWhFTjtJQUNBO0VoQm8xQ0Y7RWdCcnhDUTtJQWhFTjtJQUNBO0VoQncxQ0Y7RWdCenhDUTtJQWhFTjtJQUNBO0VoQjQxQ0Y7RWdCN3hDUTtJQWhFTjtJQUNBO0VoQmcyQ0Y7RWdCanlDUTtJQWhFTjtJQUNBO0VoQm8yQ0Y7RWdCcnlDUTtJQWhFTjtJQUNBO0VoQncyQ0Y7RWdCenlDUTtJQWhFTjtJQUNBO0VoQjQyQ0Y7RWdCN3lDUTtJQWhFTjtJQUNBO0VoQmczQ0Y7RWdCanpDUTtJQWhFTjtJQUNBO0VoQm8zQ0Y7RWdCcnpDUTtJQWhFTjtJQUNBO0VoQnczQ0Y7RWdCenpDUTtJQWhFTjtJQUNBO0VoQjQzQ0Y7RWdCN3pDUTtJQWhFTjtJQUNBO0VoQmc0Q0Y7RWdCenpDVTtJQXhEVjtFaEJvM0NBO0VnQjV6Q1U7SUF4RFY7RWhCdTNDQTtFZ0IvekNVO0lBeERWO0VoQjAzQ0E7RWdCbDBDVTtJQXhEVjtFaEI2M0NBO0VnQnIwQ1U7SUF4RFY7RWhCZzRDQTtFZ0J4MENVO0lBeERWO0VoQm00Q0E7RWdCMzBDVTtJQXhEVjtFaEJzNENBO0VnQjkwQ1U7SUF4RFY7RWhCeTRDQTtFZ0JqMUNVO0lBeERWO0VoQjQ0Q0E7RWdCcDFDVTtJQXhEVjtFaEIrNENBO0VnQnYxQ1U7SUF4RFY7RWhCazVDQTtFZ0IxMUNVO0lBeERWO0VoQnE1Q0E7RWdCbDFDTTs7SUFFRTtFaEJvMUNSO0VnQmoxQ007O0lBRUU7RWhCbTFDUjtFZ0IxMUNNOztJQUVFO0VoQjQxQ1I7RWdCejFDTTs7SUFFRTtFaEIyMUNSO0VnQmwyQ007O0lBRUU7RWhCbzJDUjtFZ0JqMkNNOztJQUVFO0VoQm0yQ1I7RWdCMTJDTTs7SUFFRTtFaEI0MkNSO0VnQnoyQ007O0lBRUU7RWhCMjJDUjtFZ0JsM0NNOztJQUVFO0VoQm8zQ1I7RWdCajNDTTs7SUFFRTtFaEJtM0NSO0VnQjEzQ007O0lBRUU7RWhCNDNDUjtFZ0J6M0NNOztJQUVFO0VoQjIzQ1I7QUFDRjtBY3Q3Q0k7RUVVRTtJQUNFO0VoQis2Q047RWdCNTZDSTtJQXBDSjtJQUNBO0VoQm05Q0E7RWdCcjhDQTtJQUNFO0lBQ0E7RWhCdThDRjtFZ0J6OENBO0lBQ0U7SUFDQTtFaEIyOENGO0VnQjc4Q0E7SUFDRTtJQUNBO0VoQis4Q0Y7RWdCajlDQTtJQUNFO0lBQ0E7RWhCbTlDRjtFZ0JyOUNBO0lBQ0U7SUFDQTtFaEJ1OUNGO0VnQno5Q0E7SUFDRTtJQUNBO0VoQjI5Q0Y7RWdCNTdDSTtJQWhESjtJQUNBO0VoQisrQ0E7RWdCMTdDUTtJQWhFTjtJQUNBO0VoQjYvQ0Y7RWdCOTdDUTtJQWhFTjtJQUNBO0VoQmlnREY7RWdCbDhDUTtJQWhFTjtJQUNBO0VoQnFnREY7RWdCdDhDUTtJQWhFTjtJQUNBO0VoQnlnREY7RWdCMThDUTtJQWhFTjtJQUNBO0VoQjZnREY7RWdCOThDUTtJQWhFTjtJQUNBO0VoQmloREY7RWdCbDlDUTtJQWhFTjtJQUNBO0VoQnFoREY7RWdCdDlDUTtJQWhFTjtJQUNBO0VoQnloREY7RWdCMTlDUTtJQWhFTjtJQUNBO0VoQjZoREY7RWdCOTlDUTtJQWhFTjtJQUNBO0VoQmlpREY7RWdCbCtDUTtJQWhFTjtJQUNBO0VoQnFpREY7RWdCdCtDUTtJQWhFTjtJQUNBO0VoQnlpREY7RWdCbCtDVTtJQXhEVjtFaEI2aERBO0VnQnIrQ1U7SUF4RFY7RWhCZ2lEQTtFZ0J4K0NVO0lBeERWO0VoQm1pREE7RWdCMytDVTtJQXhEVjtFaEJzaURBO0VnQjkrQ1U7SUF4RFY7RWhCeWlEQTtFZ0JqL0NVO0lBeERWO0VoQjRpREE7RWdCcC9DVTtJQXhEVjtFaEIraURBO0VnQnYvQ1U7SUF4RFY7RWhCa2pEQTtFZ0IxL0NVO0lBeERWO0VoQnFqREE7RWdCNy9DVTtJQXhEVjtFaEJ3akRBO0VnQmhnRFU7SUF4RFY7RWhCMmpEQTtFZ0JuZ0RVO0lBeERWO0VoQjhqREE7RWdCMy9DTTs7SUFFRTtFaEI2L0NSO0VnQjEvQ007O0lBRUU7RWhCNC9DUjtFZ0JuZ0RNOztJQUVFO0VoQnFnRFI7RWdCbGdETTs7SUFFRTtFaEJvZ0RSO0VnQjNnRE07O0lBRUU7RWhCNmdEUjtFZ0IxZ0RNOztJQUVFO0VoQjRnRFI7RWdCbmhETTs7SUFFRTtFaEJxaERSO0VnQmxoRE07O0lBRUU7RWhCb2hEUjtFZ0IzaERNOztJQUVFO0VoQjZoRFI7RWdCMWhETTs7SUFFRTtFaEI0aERSO0VnQm5pRE07O0lBRUU7RWhCcWlEUjtFZ0JsaURNOztJQUVFO0VoQm9pRFI7QUFDRjtBYy9sREk7RUVVRTtJQUNFO0VoQndsRE47RWdCcmxESTtJQXBDSjtJQUNBO0VoQjRuREE7RWdCOW1EQTtJQUNFO0lBQ0E7RWhCZ25ERjtFZ0JsbkRBO0lBQ0U7SUFDQTtFaEJvbkRGO0VnQnRuREE7SUFDRTtJQUNBO0VoQnduREY7RWdCMW5EQTtJQUNFO0lBQ0E7RWhCNG5ERjtFZ0I5bkRBO0lBQ0U7SUFDQTtFaEJnb0RGO0VnQmxvREE7SUFDRTtJQUNBO0VoQm9vREY7RWdCcm1ESTtJQWhESjtJQUNBO0VoQndwREE7RWdCbm1EUTtJQWhFTjtJQUNBO0VoQnNxREY7RWdCdm1EUTtJQWhFTjtJQUNBO0VoQjBxREY7RWdCM21EUTtJQWhFTjtJQUNBO0VoQjhxREY7RWdCL21EUTtJQWhFTjtJQUNBO0VoQmtyREY7RWdCbm5EUTtJQWhFTjtJQUNBO0VoQnNyREY7RWdCdm5EUTtJQWhFTjtJQUNBO0VoQjByREY7RWdCM25EUTtJQWhFTjtJQUNBO0VoQjhyREY7RWdCL25EUTtJQWhFTjtJQUNBO0VoQmtzREY7RWdCbm9EUTtJQWhFTjtJQUNBO0VoQnNzREY7RWdCdm9EUTtJQWhFTjtJQUNBO0VoQjBzREY7RWdCM29EUTtJQWhFTjtJQUNBO0VoQjhzREY7RWdCL29EUTtJQWhFTjtJQUNBO0VoQmt0REY7RWdCM29EVTtJQXhEVjtFaEJzc0RBO0VnQjlvRFU7SUF4RFY7RWhCeXNEQTtFZ0JqcERVO0lBeERWO0VoQjRzREE7RWdCcHBEVTtJQXhEVjtFaEIrc0RBO0VnQnZwRFU7SUF4RFY7RWhCa3REQTtFZ0IxcERVO0lBeERWO0VoQnF0REE7RWdCN3BEVTtJQXhEVjtFaEJ3dERBO0VnQmhxRFU7SUF4RFY7RWhCMnREQTtFZ0JucURVO0lBeERWO0VoQjh0REE7RWdCdHFEVTtJQXhEVjtFaEJpdURBO0VnQnpxRFU7SUF4RFY7RWhCb3VEQTtFZ0I1cURVO0lBeERWO0VoQnV1REE7RWdCcHFETTs7SUFFRTtFaEJzcURSO0VnQm5xRE07O0lBRUU7RWhCcXFEUjtFZ0I1cURNOztJQUVFO0VoQjhxRFI7RWdCM3FETTs7SUFFRTtFaEI2cURSO0VnQnByRE07O0lBRUU7RWhCc3JEUjtFZ0JuckRNOztJQUVFO0VoQnFyRFI7RWdCNXJETTs7SUFFRTtFaEI4ckRSO0VnQjNyRE07O0lBRUU7RWhCNnJEUjtFZ0Jwc0RNOztJQUVFO0VoQnNzRFI7RWdCbnNETTs7SUFFRTtFaEJxc0RSO0VnQjVzRE07O0lBRUU7RWhCOHNEUjtFZ0Izc0RNOztJQUVFO0VoQjZzRFI7QUFDRjtBaUJuMERBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0EsbUJYa1lPO0VXallQLG1CWHVzQjRCO0VXdHNCNUI7QWpCazBERjtBaUIzekRFO0VBQ0U7RUFFQTtFQUNBO0VBQ0EsMkNYK3NCMEI7RVc5c0IxQjtBakI0ekRKO0FpQnp6REU7RUFDRTtBakIyekRKO0FpQnh6REU7RUFDRTtBakIwekRKOztBaUJ0ekRBO0VBQ0U7QWpCeXpERjs7QWlCbHpEQTtFQUNFO0FqQnF6REY7O0FpQjN5REU7RUFDRTtBakI4eURKOztBaUIveERFO0VBQ0U7QWpCa3lESjtBaUIveERJO0VBQ0U7QWpCaXlETjs7QWlCMXhERTtFQUNFO0FqQjZ4REo7QWlCMXhERTtFQUNFO0FqQjR4REo7O0FpQmx4REU7RUFDRTtFQUNBO0FqQnF4REo7O0FpQi93REU7RUFDRTtFQUNBO0FqQmt4REo7O0FpQjF3REE7RUFDRTtFQUNBO0FqQjZ3REY7O0FpQnJ3REU7RUFDRTtFQUNBO0FqQnd3REo7O0FrQnA1REU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FsQmc1REo7O0FrQmw2REU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FsQjg1REo7O0FrQmg3REU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FsQjQ2REo7O0FrQjk3REU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FsQjA3REo7O0FrQjU4REU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FsQnc4REo7O0FrQjE5REU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FsQnM5REo7O0FrQngrREU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FsQm8rREo7O0FrQnQvREU7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0FsQmsvREo7O0FpQmoyREk7RUFDRTtFQUNBO0FqQm8yRE47O0FjLzdESTtFR3lGQTtJQUNFO0lBQ0E7RWpCMDJESjtBQUNGO0FjdDhESTtFR3lGQTtJQUNFO0lBQ0E7RWpCZzNESjtBQUNGO0FjNThESTtFR3lGQTtJQUNFO0lBQ0E7RWpCczNESjtBQUNGO0FjbDlESTtFR3lGQTtJQUNFO0lBQ0E7RWpCNDNESjtBQUNGO0FjeDlESTtFR3lGQTtJQUNFO0lBQ0E7RWpCazRESjtBQUNGO0FtQnRpRUE7RUFDRSxxQmJ1MkJzQztBTmlzQ3hDOztBbUIvaEVBO0VBQ0U7RUFDQTtFQUNBO0VoQjhRSSxrQkFMSTtFZ0JyUVIsZ0JiK2xCNEI7QU5pOEM5Qjs7QW1CNWhFQTtFQUNFO0VBQ0E7RWhCb1FJLGtCQUxJO0FIaXlEVjs7QW1CNWhFQTtFQUNFO0VBQ0E7RWhCOFBJLG1CQUxJO0FIdXlEVjs7QW9CN2pFQTtFQUNFLG1CZCsxQnNDO0VIcmtCbEMsa0JBTEk7RWlCalJSLGdDZCsxQnNDO0FOK3RDeEM7O0FxQm5rRUE7RUFDRTtFQUNBO0VBQ0E7RWxCd1JJLGVBTEk7RWtCaFJSLGdCZmttQjRCO0Vlam1CNUIsZ0JmeW1CNEI7RWV4bUI1QiwyQmY0M0JzQztFZTMzQnRDO0tBQUE7VUFBQTtFQUNBLG1DZnEzQnNDO0VlcDNCdEM7RUFDQTtFZEdFO0VlSEUsd0VETUo7QXJCaWtFRjtBc0Jua0VNO0VEaEJOO0lDaUJRO0V0QnNrRU47QUFDRjtBcUJwa0VFO0VBQ0U7QXJCc2tFSjtBcUJwa0VJO0VBQ0U7QXJCc2tFTjtBcUJqa0VFO0VBQ0UsMkJmczJCb0M7RWVyMkJwQyxtQ2ZnMkJvQztFZS8xQnBDLGtDZjgyQm9DO0VlNzJCcEM7RUFLRSxrRGZraEJrQjtBTjZpRHhCO0FxQjNqRUU7RUFNRTtFQU1BO0VBS0E7QXJCK2lFSjtBcUIxaUVFO0VBQ0U7RUFDQTtBckI0aUVKO0FxQnhpRUU7RUFDRSxnQ2Y0MEJvQztFZTEwQnBDO0FyQnlpRUo7QXFCNWlFRTtFQUNFLGdDZjQwQm9DO0VlMTBCcEM7QXJCeWlFSjtBcUJqaUVFO0VBRUUsd0NmOHlCb0M7RWUzeUJwQztBckJnaUVKO0FxQjVoRUU7RUFDRTtFQUNBO0VBQ0EsMEJmb3JCMEI7RWVuckIxQiwyQmZzeUJvQztFaUJwNEJ0Qyx1Q2pCcWlDZ0M7RWVyOEI5QjtFQUNBO0VBQ0E7RUFDQTtFQUNBLCtDZmdzQjBCO0VlL3JCMUI7RUN6RkUscUlEMEZGO0FyQjhoRUo7QXNCcG5FTTtFRDBFSjtJQ3pFTTtFdEJ1bkVOO0FBQ0Y7QXFCaGlFRTtFQUNFLHdDZjQ3QjhCO0FOc21DbEM7O0FxQnpoRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCZndmNEI7RWV2ZjVCLDJCZjJ4QnNDO0VlMXhCdEM7RUFDQTtFQUNBO0FyQjRoRUY7QXFCMWhFRTtFQUNFO0FyQjRoRUo7QXFCemhFRTtFQUVFO0VBQ0E7QXJCMGhFSjs7QXFCL2dFQTtFQUNFLG1FZjR3QnNDO0VlM3dCdEM7RWxCeUlJLG1CQUxJO0VJdlFOO0FQdXBFSjtBcUJoaEVFO0VBQ0U7RUFDQTtFQUNBLHlCZm9vQjBCO0FOODRDOUI7O0FxQjlnRUE7RUFDRSxpRWZnd0JzQztFZS92QnRDO0VsQjRISSxrQkFMSTtFSXZRTjtBUG1xRUo7QXFCL2dFRTtFQUNFO0VBQ0E7RUFDQSx1QmYybkIwQjtBTnM1QzlCOztBcUJ6Z0VFO0VBQ0Usb0VmNnVCb0M7QU4reEN4QztBcUJ6Z0VFO0VBQ0UsbUVmMHVCb0M7QU5peUN4QztBcUJ4Z0VFO0VBQ0UsaUVmdXVCb0M7QU5teUN4Qzs7QXFCcmdFQTtFQUNFLFdmcXVCc0M7RWVwdUJ0QyxnRWY4dEJzQztFZTd0QnRDLGlCZmlsQjRCO0FOdTdDOUI7QXFCdGdFRTtFQUNFO0FyQndnRUo7QXFCcmdFRTtFQUNFO0VkdkxBO0FQK3JFSjtBcUJwZ0VFO0VBQ0U7RWQ1TEE7QVBtc0VKO0FxQm5nRUU7RUFBb0IsK0RmOHNCa0I7QU53ekN4QztBcUJyZ0VFO0VBQW9CLDZEZjhzQmtCO0FOMHpDeEM7O0F3QnZ0RUE7RUFDRTtFQUVBO0VBQ0E7RUFDQTtFckJxUkksZUFMSTtFcUI3UVIsZ0JsQitsQjRCO0VrQjlsQjVCLGdCbEJzbUI0QjtFa0JybUI1QiwyQmxCeTNCc0M7RWtCeDNCdEM7S0FBQTtVQUFBO0VBQ0EsbUNsQmszQnNDO0VrQmozQnRDO0VBQ0E7RUFDQSx5Q2xCKzlCa0M7RWtCOTlCbEMsMEJsQis5QmtDO0VrQjk5QmxDO0VqQkhFO0VlSEUsd0VFU0o7QXhCdXRFRjtBc0I1dEVNO0VFZk47SUZnQlE7RXRCK3RFTjtBQUNGO0F3QjF0RUU7RUFDRSxrQ2xCczNCb0M7RWtCcjNCcEM7RUFLRSxrRGxCaStCNEI7QU51dkNsQztBd0JwdEVFO0VBRUUsc0JsQjZ1QjBCO0VrQjV1QjFCO0F4QnF0RUo7QXdCbHRFRTtFQUVFLHdDbEJ1MUJvQztBTjQzQ3hDO0F3QjlzRUU7RUFDRTtFQUNBO0F4Qmd0RUo7O0F3QjVzRUE7RUFDRSxvQmxCc3VCNEI7RWtCcnVCNUIsdUJsQnF1QjRCO0VrQnB1QjVCLG9CbEJxdUI0QjtFSGxnQnhCLG1CQUxJO0VJdlFOO0FQMHZFSjs7QXdCNXNFQTtFQUNFLG1CbEJrdUI0QjtFa0JqdUI1QixzQmxCaXVCNEI7RWtCaHVCNUIsa0JsQml1QjRCO0VIdGdCeEIsa0JBTEk7RUl2UU47QVBrd0VKOztBd0Ixc0VJO0VBQ0U7QXhCNnNFTjs7QXlCcnhFQTtFQUNFO0VBQ0Esa0JuQnE2QndDO0VtQnA2QnhDLG1CbkJxNkJ3QztFbUJwNkJ4Qyx1Qm5CcTZCd0M7QU5tM0MxQztBeUJ0eEVFO0VBQ0U7RUFDQTtBekJ3eEVKOztBeUJweEVBO0VBQ0Usb0JuQjI1QndDO0VtQjE1QnhDO0VBQ0E7QXpCdXhFRjtBeUJyeEVFO0VBQ0U7RUFDQTtFQUNBO0F6QnV4RUo7O0F5Qm54RUE7RUFDRTtFQUVBO0VBQ0EsVW5CMDRCd0M7RW1CejRCeEMsV25CeTRCd0M7RW1CeDRCeEM7RUFDQTtFQUNBO0tBQUE7VUFBQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSwyRG5CMjRCd0M7RW1CMTRCeEM7QXpCcXhFRjtBeUJseEVFO0VsQjNCRTtBUGd6RUo7QXlCanhFRTtFQUVFLGtCbkJtNEJzQztBTis0QzFDO0F5Qi93RUU7RUFDRSx1Qm5CMDNCc0M7QU51NUMxQztBeUI5d0VFO0VBQ0Usa0NuQnMxQm9DO0VtQnIxQnBDO0VBQ0Esa0RuQjhmb0I7QU5reER4QjtBeUI3d0VFO0VBQ0UseUJuQjVCTTtFbUI2Qk4scUJuQjdCTTtBTjR5RVY7QXlCN3dFSTtFQUlJO0F6QjR3RVI7QXlCeHdFSTtFQUlJO0F6QnV3RVI7QXlCbHdFRTtFQUNFLHlCbkJqRE07RW1Ca0ROLHFCbkJsRE07RW1CdURKO0F6Qmd3RU47QXlCNXZFRTtFQUNFO0VBQ0E7RUFDQSxZbkJrMkJ1QztBTjQ1QzNDO0F5QnZ2RUk7RUFDRTtFQUNBLFluQnkxQnFDO0FOZzZDM0M7O0F5QjN1RUE7RUFDRSxtQm5CbzFCZ0M7QU4wNUNsQztBeUI1dUVFO0VBQ0U7RUFFQSxVbkI4MEI4QjtFbUI3MEI5QjtFQUNBO0VBQ0E7RWxCakhBO0VlSEUsaURHc0hGO0F6QjZ1RUo7QXNCLzFFTTtFRzBHSjtJSHpHTTtFdEJrMkVOO0FBQ0Y7QXlCaHZFSTtFQUNFO0F6Qmt2RU47QXlCL3VFSTtFQUNFLGlDbkI2MEI0QjtFbUJ4MEIxQjtBekI2dUVSO0F5Qnh1RUU7RUFDRSxvQm5Cd3pCOEI7RW1CdnpCOUI7QXpCMHVFSjtBeUJ4dUVJO0VBQ0U7RUFDQTtBekIwdUVOOztBeUJydUVBO0VBQ0U7RUFDQSxrQm5Cc3lCZ0M7QU5rOENsQzs7QXlCcnVFQTtFQUNFO0VBQ0E7RUFDQTtBekJ3dUVGO0F5QnB1RUk7RUFDRTtFQUNBO0VBQ0EsYW5Cc3BCd0I7QU5nbEQ5Qjs7QXlCL3RFSTtFQUNFO0F6Qmt1RU47O0EwQnI1RUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtLQUFBO1VBQUE7RUFDQTtBMUJ3NUVGO0EwQnQ1RUU7RUFDRTtBMUJ3NUVKO0EwQnA1RUk7RUFBMEIsa0VwQjhnQ2E7QU55NEMzQztBMEJ0NUVJO0VBQTBCLGtFcEI2Z0NhO0FONDRDM0M7QTBCdDVFRTtFQUNFO0ExQnc1RUo7QTBCcjVFRTtFQUNFLFdwQisvQnVDO0VvQjkvQnZDLFlwQjgvQnVDO0VvQjcvQnZDO0VBQ0E7VUFBQTtFSDFCRix5QmpCa0NRO0VvQk5OLFNwQjYvQnVDO0VDMWdDdkM7RWVIRSxvSEltQkY7RUpuQkUsNEdJbUJGO0ExQnM1RUo7QXNCcjZFTTtFSU1KO0lKTE07SUFBQTtFdEJ3NkVOO0FBQ0Y7QTBCejVFSTtFSGpDRiwwQ2pCOGhDeUM7QU4rNUMzQztBMEJ2NUVFO0VBQ0UsV3BCdytCOEI7RW9CditCOUIsY3BCdytCOEI7RW9CditCOUI7RUFDQSxlcEJ1K0I4QjtFb0J0K0I5Qix3Q3BCdStCOEI7RW9CdCtCOUI7RW5CN0JBO0FQdTdFSjtBMEJyNUVFO0VBQ0UsV3BCbytCdUM7RW9CbitCdkMsWXBCbStCdUM7RW9CbCtCdkM7T0FBQTtFSHBERix5QmpCa0NRO0VvQm9CTixTcEJtK0J1QztFQzFnQ3ZDO0VlSEUsaUhJNkNGO0VKN0NFLDRHSTZDRjtBMUJzNUVKO0FzQi83RU07RUlpQ0o7SUpoQ007SUFBQTtFdEJrOEVOO0FBQ0Y7QTBCejVFSTtFSDNERiwwQ2pCOGhDeUM7QU55N0MzQztBMEJ2NUVFO0VBQ0UsV3BCODhCOEI7RW9CNzhCOUIsY3BCODhCOEI7RW9CNzhCOUI7RUFDQSxlcEI2OEI4QjtFb0I1OEI5Qix3Q3BCNjhCOEI7RW9CNThCOUI7RW5CdkRBO0FQaTlFSjtBMEJyNUVFO0VBQ0U7QTFCdTVFSjtBMEJyNUVJO0VBQ0UsMkNwQmc5QnFDO0FOdThDM0M7QTBCcDVFSTtFQUNFLDJDcEI0OEJxQztBTjA4QzNDOztBMkI3K0VBO0VBQ0U7QTNCZy9FRjtBMkI5K0VFOzs7RUFHRSx1RHJCd2lDb0M7RXFCdmlDcEMsMkRyQnVpQ29DO0VxQnRpQ3BDLGlCckJ1aUNvQztBTnk4Q3hDO0EyQjcrRUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUxWRSxnRUtXRjtBM0IrK0VKO0FzQnQvRU07RUtUSjtJTFVNO0V0QnkvRU47QUFDRjtBMkJqL0VFOztFQUVFO0EzQm0vRUo7QTJCai9FSTtFQUNFO0EzQm8vRU47QTJCci9FSTs7RUFDRTtBM0JvL0VOO0EyQmovRUk7RUFFRSxxQnJCMGdDa0M7RXFCemdDbEMsd0JyQjBnQ2tDO0FOMCtDeEM7QTJCdi9FSTs7O0VBRUUscUJyQjBnQ2tDO0VxQnpnQ2xDLHdCckIwZ0NrQztBTjArQ3hDO0EyQmovRUk7O0VBQ0UscUJyQnFnQ2tDO0VxQnBnQ2xDLHdCckJxZ0NrQztBTisrQ3hDO0EyQmgvRUU7RUFDRSxxQnJCKy9Cb0M7RXFCOS9CcEMsd0JyQisvQm9DO0VxQjkvQnBDLHFCckJndUIwQjtBTmt4RDlCO0EyQjMrRUk7RUFDRSw4RHJCeS9Ca0M7QU51L0N4QztBMkJqL0VJOzs7O0VBQ0UsOERyQnkvQmtDO0FOdS9DeEM7QTJCMytFSTtFQUNFLDhEckJtL0JrQztBTjAvQ3hDO0EyQngrRUk7RUFDRTtFQUNBO0VBQ0E7RUFDQSxhckJ3K0JrQztFcUJ2K0JsQztFQUNBLG1DckJxekJrQztFQ2gzQnBDO0FQdWlGSjtBMkJsL0VJOztFQUNFO0VBQ0E7RUFDQTtFQUNBLGFyQncrQmtDO0VxQnYrQmxDO0VBQ0EsbUNyQnF6QmtDO0VDaDNCcEM7QVB1aUZKO0EyQngrRUU7RUFDRSx3Q3JCa3pCb0M7QU53ckR4QztBMkJ0K0VJO0VBQ0U7QTNCdytFTjtBMkJwK0VFOztFQUVFLGNyQmhGTztBTnNqRlg7O0E0QmhrRkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1Qm1rRkY7QTRCamtGRTs7O0VBR0U7RUFDQTtFQUNBO0VBQ0E7QTVCbWtGSjtBNEIvakZFOzs7RUFHRTtBNUJpa0ZKO0E0QjNqRkU7RUFDRTtFQUNBO0E1QjZqRko7QTRCM2pGSTtFQUNFO0E1QjZqRk47O0E0QmxqRkE7RUFDRTtFQUNBO0VBQ0E7RXpCOE9JLGVBTEk7RXlCdk9SLGdCdEJ5akI0QjtFc0J4akI1QixnQnRCZ2tCNEI7RXNCL2pCNUIsMkJ0Qm0xQnNDO0VzQmwxQnRDO0VBQ0E7RUFDQSx1Q3RCMDZCc0M7RXNCejZCdEM7RXJCdENFO0FQNGxGSjs7QTRCNWlGQTs7OztFQUlFO0V6QndOSSxrQkFMSTtFSXZRTjtBUHFtRko7O0E0QjVpRkE7Ozs7RUFJRTtFekIrTUksbUJBTEk7RUl2UU47QVA4bUZKOztBNEI1aUZBOztFQUVFO0E1QitpRkY7O0E0QmxpRkk7Ozs7RXJCakVBO0VBQ0E7QVAwbUZKO0E0QmppRkk7Ozs7RXJCMUVBO0VBQ0E7QVBpbkZKO0E0QjNoRkU7RUFDRTtFckIxRUE7RUFDQTtBUHdtRko7QTRCM2hGRTs7RXJCOUVFO0VBQ0E7QVA2bUZKOztBNkJyb0ZFO0VBQ0U7RUFDQTtFQUNBLG1CdkJ1MEJvQztFSHJrQmxDLGtCQUxJO0UwQjFQTixpQ3ZCa2pDcUI7QU5xbER6Qjs7QTZCcG9GRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UxQnFQRSxtQkFMSTtFMEI3T04sV3ZCcWlDcUI7RXVCcGlDckIsbUN2Qm9pQ3FCO0VDL2pDckI7QVBrcUZKOztBNkJsb0ZJOzs7O0VBRUU7QTdCdW9GTjs7QTZCdHJGSTtFQXFERSwrQ3ZCdWhDbUI7RXVCcGhDakIsb0N2QjgxQmdDO0V1QjcxQmhDO0VBQ0E7RUFDQTtFQUNBO0E3Qm1vRlI7QTZCaG9GTTtFQUNFLCtDdkI0Z0NpQjtFdUJ2Z0NmLDJEdkJ1Z0NlO0FOdW5EekI7O0E2Qm5zRkk7RUErRUksb0N2QnUwQmdDO0V1QnQwQmhDO0E3QnduRlI7O0E2QnhzRkk7RUF1RkUsK0N2QnEvQm1CO0FOZ29EekI7QTZCbG5GUTtFQUVFO0VBQ0EsdUJ2QnE1QjhCO0V1QnA1QjlCO0VBQ0E7QTdCbW5GVjtBNkIvbUZNO0VBQ0UsK0N2QncrQmlCO0V1Qm4rQmYsMkR2Qm0rQmU7QU4wb0R6Qjs7QTZCdHRGSTtFQWtISTtBN0J3bUZSOztBNkIxdEZJO0VBeUhFLCtDdkJtOUJtQjtBTmtwRHpCO0E2Qm5tRk07RUFDRSw0Q3ZCZzlCaUI7QU5xcER6QjtBNkJsbUZNO0VBQ0UsMkR2QjQ4QmlCO0FOd3BEekI7QTZCam1GTTtFQUNFLGlDdkJ3OEJpQjtBTjJwRHpCOztBNkI5bEZJO0VBQ0U7QTdCaW1GTjs7QTZCM3VGSTs7Ozs7RUFvSk07QTdCK2xGVjs7QTZCL3RGRTtFQUNFO0VBQ0E7RUFDQSxtQnZCdTBCb0M7RUhya0JsQyxrQkFMSTtFMEIxUE4sbUN2QmtqQ3FCO0FOK3FEekI7O0E2Qjl0RkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFMUJxUEUsbUJBTEk7RTBCN09OLFd2QnFpQ3FCO0V1QnBpQ3JCLGtDdkJvaUNxQjtFQy9qQ3JCO0FQNHZGSjs7QTZCNXRGSTs7OztFQUVFO0E3Qml1Rk47O0E2Qmh4Rkk7RUFxREUsaUR2QnVoQ21CO0V1QnBoQ2pCLG9DdkI4MUJnQztFdUI3MUJoQztFQUNBO0VBQ0E7RUFDQTtBN0I2dEZSO0E2QjF0Rk07RUFDRSxpRHZCNGdDaUI7RXVCdmdDZiwwRHZCdWdDZTtBTml0RHpCOztBNkI3eEZJO0VBK0VJLG9DdkJ1MEJnQztFdUJ0MEJoQztBN0JrdEZSOztBNkJseUZJO0VBdUZFLGlEdkJxL0JtQjtBTjB0RHpCO0E2QjVzRlE7RUFFRTtFQUNBLHVCdkJxNUI4QjtFdUJwNUI5QjtFQUNBO0E3QjZzRlY7QTZCenNGTTtFQUNFLGlEdkJ3K0JpQjtFdUJuK0JmLDBEdkJtK0JlO0FOb3VEekI7O0E2Qmh6Rkk7RUFrSEk7QTdCa3NGUjs7QTZCcHpGSTtFQXlIRSxpRHZCbTlCbUI7QU40dUR6QjtBNkI3ckZNO0VBQ0UsOEN2Qmc5QmlCO0FOK3VEekI7QTZCNXJGTTtFQUNFLDBEdkI0OEJpQjtBTmt2RHpCO0E2QjNyRk07RUFDRSxtQ3ZCdzhCaUI7QU5xdkR6Qjs7QTZCeHJGSTtFQUNFO0E3QjJyRk47O0E2QnIwRkk7Ozs7O0VBc0pNO0E3QnVyRlY7O0E4Qi8wRkE7RUFFRTtFQUNBO0VBQ0E7RTNCdVJJLHdCQUxJO0UyQmhSUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0UzQnNRSSxrQ0FMSTtFMkIvUFI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtLQUFBO1VBQUE7RUFDQTtFdkJqQkU7RWdCZkYsa0NPa0NxQjtFUnRCakIscUlRd0JKO0E5QjYwRkY7QXNCajJGTTtFUWhCTjtJUmlCUTtFdEJvMkZOO0FBQ0Y7QThCaDFGRTtFQUNFO0VBRUE7RUFDQTtBOUJpMUZKO0E4QjkwRkU7RUFFRTtFQUNBO0VBQ0E7QTlCKzBGSjtBOEI1MEZFO0VBQ0U7RVByREYsd0NPc0R1QjtFQUNyQjtFQUNBO0VBS0U7QTlCMDBGTjtBOEJ0MEZFO0VBQ0U7RUFDQTtFQUtFO0E5Qm8wRk47QThCaDBGRTtFQUtFO0VBQ0E7RUFHQTtBOUI0ekZKO0E4Qnp6Rkk7RUFLSTtBOUJ1ekZSO0E4Qmx6RkU7RUFLSTtBOUJnekZOO0E4QjV5RkU7RUFHRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0E5QjJ5Rko7O0E4Qi94RkU7RUMvR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0JrNUZGOztBOEJoekZFO0VDL0dBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CbTZGRjs7QThCajBGRTtFQy9HQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvQm83RkY7O0E4QmwxRkU7RUMvR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0JxOEZGOztBOEJuMkZFO0VDL0dBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CczlGRjs7QThCcDNGRTtFQy9HQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvQnUrRkY7O0E4QnI0RkU7RUMvR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0J3L0ZGOztBOEJ0NUZFO0VDL0dBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CeWdHRjs7QThCNzRGRTtFQ2hIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvQmlnR0Y7O0E4Qjk1RkU7RUNoSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0JraEdGOztBOEIvNkZFO0VDaEhBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CbWlHRjs7QThCaDhGRTtFQ2hIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvQm9qR0Y7O0E4Qmo5RkU7RUNoSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0Jxa0dGOztBOEJsK0ZFO0VDaEhBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9Cc2xHRjs7QThCbi9GRTtFQ2hIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvQnVtR0Y7O0E4QnBnR0U7RUNoSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0J3bkdGOztBOEJ6Z0dBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsMEJ4QjhRd0M7QU42dkYxQztBOEJqZ0dFO0VBQ0U7QTlCbWdHSjtBOEJoZ0dFO0VBQ0U7QTlCa2dHSjs7QThCdi9GQTtFQ2pKRTtFQUNBO0U1QjhOSSwyQkFMSTtFNEJ2TlI7QS9CNG9HRjs7QThCMS9GQTtFQ3JKRTtFQUNBO0U1QjhOSSw0QkFMSTtFNEJ2TlI7QS9CbXBHRjs7QWdDdHRHQTtFVmdCTSxnQ1VmSjtBaEN5dEdGO0FzQnRzR007RVVwQk47SVZxQlE7RXRCeXNHTjtBQUNGO0FnQzV0R0U7RUFDRTtBaEM4dEdKOztBZ0N4dEdFO0VBQ0U7QWhDMnRHSjs7QWdDdnRHQTtFQUNFO0VBQ0E7RVZESSw2QlVFSjtBaEMwdEdGO0FzQnh0R007RVVMTjtJVk1RO0V0QjJ0R047QUFDRjtBZ0M3dEdFO0VBQ0U7RUFDQTtFVk5FLDRCVU9GO0FoQyt0R0o7QXNCbHVHTTtFVUFKO0lWQ007RXRCcXVHTjtBQUNGOztBaUMxdkdBOzs7Ozs7RUFNRTtBakM2dkdGOztBaUMxdkdBO0VBQ0U7QWpDNnZHRjtBa0NydUdJO0VBQ0U7RUFDQSxvQjVCNmhCd0I7RTRCNWhCeEIsdUI1QjJoQndCO0U0QjFoQnhCO0VBckNKO0VBQ0E7RUFDQTtFQUNBO0FsQzZ3R0Y7QWtDbnRHSTtFQUNFO0FsQ3F0R047O0FpQ253R0E7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U5QnVRSSw2QkFMSTtFOEJoUVI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFOUIwT0ksdUNBTEk7RThCbk9SO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFMUJ6Q0U7QVA2eUdKO0FpQ2h3R0U7RUFDRTtFQUNBO0VBQ0E7QWpDa3dHSjs7QWlDMXVHSTtFQUNFO0FqQzZ1R047QWlDM3VHTTtFQUNFO0VBQ0E7QWpDNnVHUjs7QWlDenVHSTtFQUNFO0FqQzR1R047QWlDMXVHTTtFQUNFO0VBQ0E7QWpDNHVHUjs7QWN0eEdJO0VtQjRCQTtJQUNFO0VqQzh2R0o7RWlDNXZHSTtJQUNFO0lBQ0E7RWpDOHZHTjtFaUMxdkdFO0lBQ0U7RWpDNHZHSjtFaUMxdkdJO0lBQ0U7SUFDQTtFakM0dkdOO0FBQ0Y7QWN2eUdJO0VtQjRCQTtJQUNFO0VqQzh3R0o7RWlDNXdHSTtJQUNFO0lBQ0E7RWpDOHdHTjtFaUMxd0dFO0lBQ0U7RWpDNHdHSjtFaUMxd0dJO0lBQ0U7SUFDQTtFakM0d0dOO0FBQ0Y7QWN2ekdJO0VtQjRCQTtJQUNFO0VqQzh4R0o7RWlDNXhHSTtJQUNFO0lBQ0E7RWpDOHhHTjtFaUMxeEdFO0lBQ0U7RWpDNHhHSjtFaUMxeEdJO0lBQ0U7SUFDQTtFakM0eEdOO0FBQ0Y7QWN2MEdJO0VtQjRCQTtJQUNFO0VqQzh5R0o7RWlDNXlHSTtJQUNFO0lBQ0E7RWpDOHlHTjtFaUMxeUdFO0lBQ0U7RWpDNHlHSjtFaUMxeUdJO0lBQ0U7SUFDQTtFakM0eUdOO0FBQ0Y7QWN2MUdJO0VtQjRCQTtJQUNFO0VqQzh6R0o7RWlDNXpHSTtJQUNFO0lBQ0E7RWpDOHpHTjtFaUMxekdFO0lBQ0U7RWpDNHpHSjtFaUMxekdJO0lBQ0U7SUFDQTtFakM0ekdOO0FBQ0Y7QWlDbnpHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FqQ3F6R0o7QWtDejRHSTtFQUNFO0VBQ0Esb0I1QjZoQndCO0U0QjVoQnhCLHVCNUIyaEJ3QjtFNEIxaEJ4QjtFQTlCSjtFQUNBO0VBQ0E7RUFDQTtBbEMwNkdGO0FrQ3YzR0k7RUFDRTtBbEN5M0dOOztBaUN6ekdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakM0ekdKO0FrQzk1R0k7RUFDRTtFQUNBLG9CNUI2aEJ3QjtFNEI1aEJ4Qix1QjVCMmhCd0I7RTRCMWhCeEI7RUF2Qko7RUFDQTtFQUNBO0VBQ0E7QWxDdzdHRjtBa0M1NEdJO0VBQ0U7QWxDODRHTjtBaUNwMEdJO0VBQ0U7QWpDczBHTjs7QWlDaDBHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDbTBHSjtBa0N0N0dJO0VBQ0U7RUFDQSxvQjVCNmhCd0I7RTRCNWhCeEIsdUI1QjJoQndCO0U0QjFoQnhCO0FsQ3c3R047QWtDNzZHTTtFQUNFO0FsQys2R1I7QWtDNTZHTTtFQUNFO0VBQ0EscUI1QjBnQnNCO0U0QnpnQnRCLHVCNUJ3Z0JzQjtFNEJ2Z0J0QjtFQW5DTjtFQUNBO0VBQ0E7QWxDazlHRjtBa0M1NkdJO0VBQ0U7QWxDODZHTjtBaUNuMUdJO0VBQ0U7QWpDcTFHTjs7QWlDOTBHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDaTFHRjs7QWlDMzBHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsZ0IzQnliNEI7RTJCeGI1QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTFCdEtFO0FQcS9HSjtBaUM1MEdFO0VBRUU7RVYxTEYsa0RVNEx1QjtBakM0MEd6QjtBaUN6MEdFO0VBRUU7RUFDQTtFVmxNRixtRFVtTXVCO0FqQzAwR3pCO0FpQ3YwR0U7RUFFRTtFQUNBO0VBQ0E7QWpDdzBHSjs7QWlDbDBHQTtFQUNFO0FqQ3EwR0Y7O0FpQ2owR0E7RUFDRTtFQUNBO0VBQ0E7RTlCbUVJLG1CQUxJO0U4QjVEUjtFQUNBO0FqQ28wR0Y7O0FpQ2gwR0E7RUFDRTtFQUNBO0VBQ0E7QWpDbTBHRjs7QWlDL3pHQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakNpMEdGOztBbUN2akhBOztFQUVFO0VBQ0E7RUFDQTtBbkMwakhGO0FtQ3hqSEU7O0VBQ0U7RUFDQTtBbkMyakhKO0FtQ3RqSEU7Ozs7Ozs7Ozs7OztFQU1FO0FuQzhqSEo7O0FtQ3pqSEE7RUFDRTtFQUNBO0VBQ0E7QW5DNGpIRjtBbUMxakhFO0VBQ0U7QW5DNGpISjs7QW1DeGpIQTtFNUJoQkk7QVA0a0hKO0FtQ3hqSEU7O0VBRUU7QW5DMGpISjtBbUN0akhFOzs7RTVCVkU7RUFDQTtBUHFrSEo7QW1DbGpIRTs7O0U1Qk5FO0VBQ0E7QVA2akhKOztBbUNyaUhBO0VBQ0U7RUFDQTtBbkN3aUhGO0FtQ3RpSEU7RUFHRTtBbkNzaUhKO0FtQ25pSEU7RUFDRTtBbkNxaUhKOztBbUNqaUhBO0VBQ0U7RUFDQTtBbkNvaUhGOztBbUNqaUhBO0VBQ0U7RUFDQTtBbkNvaUhGOztBbUNoaEhBO0VBQ0U7RUFDQTtFQUNBO0FuQ21oSEY7QW1DamhIRTs7RUFFRTtBbkNtaEhKO0FtQ2hoSEU7O0VBRUU7QW5Da2hISjtBbUM5Z0hFOztFNUIxRkU7RUFDQTtBUDRtSEo7QW1DMWdIRTs7O0U1QmpIRTtFQUNBO0FQZ29ISjs7QW9DeHBIQTtFQUVFO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBDdXBIRjs7QW9DcHBIQTtFQUNFO0VBQ0E7RWpDc1FJLHVDQUxJO0VpQy9QUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VkZkksdUdjZ0JKO0FwQ3VwSEY7QXNCbnFITTtFY0dOO0lkRlE7RXRCc3FITjtBQUNGO0FvQzFwSEU7RUFFRTtBcEMycEhKO0FvQ3ZwSEU7RUFDRTtFQUNBLGtEOUJraEJvQjtBTnVvR3hCO0FvQ3JwSEU7RUFFRTtFQUNBO0VBQ0E7QXBDc3BISjs7QW9DOW9IQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QXBDOG9IRjtBb0M1b0hFO0VBQ0U7RUFDQTtFN0I3Q0E7RUFDQTtBUDRySEo7QW9DN29ISTtFQUdFO0VBQ0E7QXBDNm9ITjtBb0N6b0hFOztFQUVFO0VBQ0E7RUFDQTtBcEMyb0hKO0FvQ3hvSEU7RUFFRTtFN0JqRUE7RUFDQTtBUDJzSEo7O0FvQ2hvSEE7RUFFRTtFQUNBO0VBQ0E7QXBDa29IRjtBb0MvbkhFO0U3QjVGRTtBUDh0SEo7QW9DOW5IRTs7RUFFRTtFYmpIRixvRGFrSHVCO0FwQ2dvSHpCOztBb0N2bkhBO0VBRUU7RUFDQTtFQUNBO0VBR0E7QXBDdW5IRjtBb0NybkhFO0VBQ0U7RUFDQTtFQUNBO0FwQ3VuSEo7QW9Dcm5ISTtFQUVFO0FwQ3NuSE47QW9DbG5IRTs7RUFFRSxnQjlCMGQwQjtFOEJ6ZDFCO0VBQ0E7QXBDb25ISjs7QW9DMW1IRTs7RUFFRTtFQUNBO0FwQzZtSEo7O0FvQ3htSEU7O0VBRUU7RUFDQTtFQUNBO0FwQzJtSEo7O0FvQ3JtSEU7O0VBQ0U7QXBDeW1ISjs7QW9DL2xIRTtFQUNFO0FwQ2ttSEo7QW9DaG1IRTtFQUNFO0FwQ2ttSEo7O0FxQy94SEE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyQyt4SEY7QXFDenhIRTs7Ozs7OztFQUNFO0VBQ0E7RUFDQTtFQUNBO0FyQ2l5SEo7QXFDN3dIQTtFQUNFO0VBQ0E7RUFDQTtFbEM0TkksMkNBTEk7RWtDck5SO0VBQ0E7RUFDQTtBckMrd0hGO0FxQzd3SEU7RUFFRTtBckM4d0hKOztBcUNwd0hBO0VBRUU7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckNtd0hGO0FxQ2h3SEk7RUFFRTtBckNpd0hOO0FxQzd2SEU7RUFDRTtBckMrdkhKOztBcUN0dkhBO0VBQ0UsbUIvQjhnQ2tDO0UrQjdnQ2xDLHNCL0I2Z0NrQztFK0I1Z0NsQztBckN5dkhGO0FxQ3Z2SEU7OztFQUdFO0FyQ3l2SEo7O0FxQzV1SEE7RUFDRTtFQUNBO0VBR0E7QXJDNnVIRjs7QXFDenVIQTtFQUNFO0VsQ3lJSSw2Q0FMSTtFa0NsSVI7RUFDQTtFQUNBO0VBQ0E7RTlCeElFO0VlSEUsK0NlNklKO0FyQzR1SEY7QXNCcjNITTtFZWlJTjtJZmhJUTtFdEJ3M0hOO0FBQ0Y7QXFDL3VIRTtFQUNFO0FyQ2l2SEo7QXFDOXVIRTtFQUNFO0VBQ0E7RUFDQTtBckNndkhKOztBcUMxdUhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckM2dUhGOztBcUMxdUhBO0VBQ0U7RUFDQTtBckM2dUhGOztBY3YySEk7RXVCc0lBO0lBRUk7SUFDQTtFckNvdUhOO0VxQ2x1SE07SUFDRTtFckNvdUhSO0VxQ2x1SFE7SUFDRTtFckNvdUhWO0VxQ2p1SFE7SUFDRTtJQUNBO0VyQ211SFY7RXFDL3RITTtJQUNFO0VyQ2l1SFI7RXFDOXRITTtJQUNFO0lBQ0E7RXJDZ3VIUjtFcUM3dEhNO0lBQ0U7RXJDK3RIUjtFcUM1dEhNO0lBRUU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmOU5KLGdCZWdPSTtFckM0dEhSO0VxQ3p0SFE7SUFDRTtFckMydEhWO0VxQ3h0SFE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFckMwdEhWO0FBQ0Y7QWN2NUhJO0V1QnNJQTtJQUVJO0lBQ0E7RXJDbXhITjtFcUNqeEhNO0lBQ0U7RXJDbXhIUjtFcUNqeEhRO0lBQ0U7RXJDbXhIVjtFcUNoeEhRO0lBQ0U7SUFDQTtFckNreEhWO0VxQzl3SE07SUFDRTtFckNneEhSO0VxQzd3SE07SUFDRTtJQUNBO0VyQyt3SFI7RXFDNXdITTtJQUNFO0VyQzh3SFI7RXFDM3dITTtJQUVFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJZjlOSixnQmVnT0k7RXJDMndIUjtFcUN4d0hRO0lBQ0U7RXJDMHdIVjtFcUN2d0hRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXJDeXdIVjtBQUNGO0FjdDhISTtFdUJzSUE7SUFFSTtJQUNBO0VyQ2swSE47RXFDaDBITTtJQUNFO0VyQ2swSFI7RXFDaDBIUTtJQUNFO0VyQ2swSFY7RXFDL3pIUTtJQUNFO0lBQ0E7RXJDaTBIVjtFcUM3ekhNO0lBQ0U7RXJDK3pIUjtFcUM1ekhNO0lBQ0U7SUFDQTtFckM4ekhSO0VxQzN6SE07SUFDRTtFckM2ekhSO0VxQzF6SE07SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWY5TkosZ0JlZ09JO0VyQzB6SFI7RXFDdnpIUTtJQUNFO0VyQ3l6SFY7RXFDdHpIUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VyQ3d6SFY7QUFDRjtBY3IvSEk7RXVCc0lBO0lBRUk7SUFDQTtFckNpM0hOO0VxQy8ySE07SUFDRTtFckNpM0hSO0VxQy8ySFE7SUFDRTtFckNpM0hWO0VxQzkySFE7SUFDRTtJQUNBO0VyQ2czSFY7RXFDNTJITTtJQUNFO0VyQzgySFI7RXFDMzJITTtJQUNFO0lBQ0E7RXJDNjJIUjtFcUMxMkhNO0lBQ0U7RXJDNDJIUjtFcUN6MkhNO0lBRUU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmOU5KLGdCZWdPSTtFckN5MkhSO0VxQ3QySFE7SUFDRTtFckN3MkhWO0VxQ3IySFE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFckN1MkhWO0FBQ0Y7QWNwaUlJO0V1QnNJQTtJQUVJO0lBQ0E7RXJDZzZITjtFcUM5NUhNO0lBQ0U7RXJDZzZIUjtFcUM5NUhRO0lBQ0U7RXJDZzZIVjtFcUM3NUhRO0lBQ0U7SUFDQTtFckMrNUhWO0VxQzM1SE07SUFDRTtFckM2NUhSO0VxQzE1SE07SUFDRTtJQUNBO0VyQzQ1SFI7RXFDejVITTtJQUNFO0VyQzI1SFI7RXFDeDVITTtJQUVFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJZjlOSixnQmVnT0k7RXJDdzVIUjtFcUNyNUhRO0lBQ0U7RXJDdTVIVjtFcUNwNUhRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXJDczVIVjtBQUNGO0FxQzc4SEk7RUFFSTtFQUNBO0FyQzg4SFI7QXFDNThIUTtFQUNFO0FyQzg4SFY7QXFDNThIVTtFQUNFO0FyQzg4SFo7QXFDMzhIVTtFQUNFO0VBQ0E7QXJDNjhIWjtBcUN6OEhRO0VBQ0U7QXJDMjhIVjtBcUN4OEhRO0VBQ0U7RUFDQTtBckMwOEhWO0FxQ3Y4SFE7RUFDRTtBckN5OEhWO0FxQ3Q4SFE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWY5TkosZ0JlZ09JO0FyQ3M4SFY7QXFDbjhIVTtFQUNFO0FyQ3E4SFo7QXFDbDhIVTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FyQ284SFo7O0FxQ243SEE7O0VBR0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckNxN0hGOztBcUMvNkhJO0VBQ0U7QXJDazdITjs7QXNDM3NJQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RS9CakJFO0FQNnRJSjtBc0N4c0lFO0VBQ0U7RUFDQTtBdEMwc0lKO0FzQ3ZzSUU7RUFDRTtFQUNBO0F0Q3lzSUo7QXNDdnNJSTtFQUNFO0UvQnRCRjtFQUNBO0FQZ3VJSjtBc0N2c0lJO0VBQ0U7RS9CYkY7RUFDQTtBUHV0SUo7QXNDcHNJRTs7RUFFRTtBdENzc0lKOztBc0Nsc0lBO0VBR0U7RUFDQTtFQUNBO0F0Q21zSUY7O0FzQ2hzSUE7RUFDRTtFQUNBO0F0Q21zSUY7O0FzQ2hzSUE7RUFDRTtFQUNBO0VBQ0E7QXRDbXNJRjs7QXNDaHNJQTtFQUNFO0F0Q21zSUY7O0FzQzNySUU7RUFDRTtBdEM4cklKOztBc0N0cklBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEN5cklGO0FzQ3ZySUU7RS9CN0ZFO0FQdXhJSjs7QXNDcnJJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F0Q3dySUY7QXNDdHJJRTtFL0J4R0U7QVBpeUlKOztBc0MvcUlBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRDa3JJRjtBc0NocklFO0VBQ0U7RUFDQTtBdENrcklKOztBc0M5cUlBO0VBQ0U7RUFDQTtBdENpcklGOztBc0M3cUlBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UvQjFJRTtBUDJ6SUo7O0FzQzdxSUE7OztFQUdFO0F0Q2dySUY7O0FzQzdxSUE7O0UvQjNJSTtFQUNBO0FQNnpJSjs7QXNDOXFJQTs7RS9CbElJO0VBQ0E7QVBxeklKOztBc0N2cUlFO0VBQ0U7QXRDMHFJSjtBY3J5SUk7RXdCdUhKO0lBUUk7SUFDQTtFdEMwcUlGO0VzQ3ZxSUU7SUFDRTtJQUNBO0V0Q3lxSUo7RXNDdnFJSTtJQUNFO0lBQ0E7RXRDeXFJTjtFc0NwcUlNO0kvQjFLSjtJQUNBO0VQaTFJRjtFc0NycUlROztJQUdFO0V0Q3NxSVY7RXNDcHFJUTs7SUFHRTtFdENxcUlWO0VzQ2pxSU07SS9CM0tKO0lBQ0E7RVArMElGO0VzQ2xxSVE7O0lBR0U7RXRDbXFJVjtFc0NqcUlROztJQUdFO0V0Q2txSVY7QUFDRjs7QXVDdDRJQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkN3NElGOztBdUNwNElBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFcEM0UEksZUFMSTtFb0NyUFI7RUFDQTtFQUNBO0VBQ0E7RWhDckJFO0VnQ3VCRjtFakIxQkksMENpQjJCSjtBdkN1NElGO0FzQjk1SU07RWlCVU47SWpCVFE7RXRCaTZJTjtBQUNGO0F1QzE0SUU7RUFDRTtFQUNBO0VBQ0E7QXZDNDRJSjtBdUMxNElJO0VBQ0U7RUFDQTtBdkM0NElOO0F1Q3Y0SUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqQmpERSxtRGlCa0RGO0F2Q3k0SUo7QXNCdjdJTTtFaUJxQ0o7SWpCcENNO0V0QjA3SU47QUFDRjtBdUMzNElFO0VBQ0U7QXZDNjRJSjtBdUMxNElFO0VBQ0U7RUFDQTtFQUNBO0F2QzQ0SUo7O0F1Q3g0SUE7RUFDRTtBdkMyNElGOztBdUN4NElBO0VBQ0U7RUFDQTtFQUNBO0F2QzI0SUY7QXVDejRJRTtFaEM3REU7RUFDQTtBUHk4SUo7QXVDMTRJSTtFaENoRUE7RUFDQTtBUDY4SUo7QXVDejRJRTtFQUNFO0F2QzI0SUo7QXVDdjRJRTtFaEM1REU7RUFDQTtBUHM4SUo7QXVDdjRJTTtFaENoRUY7RUFDQTtBUDA4SUo7QXVDdDRJSTtFaENyRUE7RUFDQTtBUDg4SUo7O0F1Q3A0SUE7RUFDRTtBdkN1NElGOztBdUM5M0lFO0VBQ0U7RUFDQTtFaEM5R0E7QVBnL0lKO0F1Qy8zSUk7RUFBZ0I7QXZDazRJcEI7QXVDajRJSTtFQUFlO0F2Q280SW5CO0F1Q2o0SUk7OztFaENySEE7QVAyL0lKOztBdUMzM0lJO0VBQ0U7RUFDQTtBdkM4M0lOOztBd0NuaEpBO0VBRUU7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VyQytRSSx5Q0FMSTtFcUN4UVI7RUFDQTtFakNBRTtBUG1oSko7O0F3QzdnSkU7RUFDRTtBeENnaEpKO0F3QzlnSkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBeENnaEpOO0F3QzVnSkU7RUFDRTtBeEM4Z0pKOztBeUNuakpBO0VBRUU7RUFDQTtFdEM0UkksK0JBTEk7RXNDclJSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFaENwQkE7RUFDQTtBVHdrSkY7O0F5Q2pqSkE7RUFDRTtFQUNBO0VBQ0E7RXRDZ1FJLHlDQUxJO0VzQ3pQUjtFQUNBO0VBQ0E7RUFDQTtFbkJwQkkscUltQnFCSjtBekNvakpGO0FzQnJrSk07RW1CUU47SW5CUFE7RXRCd2tKTjtBQUNGO0F5Q3ZqSkU7RUFDRTtFQUNBO0VBRUE7RUFDQTtBekN3akpKO0F5Q3JqSkU7RUFDRTtFQUNBO0VBQ0E7RUFDQSxVbkMydUNnQztFbUMxdUNoQztBekN1akpKO0F5Q3BqSkU7RUFFRTtFQUNBO0VsQnRERixnRGtCdUR1QjtFQUNyQjtBekNxakpKO0F5Q2xqSkU7RUFFRTtFQUNBO0VBQ0E7RUFDQTtBekNtakpKOztBeUM5aUpFO0VBQ0UsOENuQzhzQ2dDO0FObTJHcEM7QXlDNWlKTTtFbEM5QkY7RUFDQTtBUDZrSko7QXlDMWlKTTtFbENsREY7RUFDQTtBUCtsSko7O0F5QzdoSkE7RUNsR0U7RUFDQTtFdkMwUkksa0NBTEk7RXVDblJSO0ExQ21vSkY7O0F5Q2hpSkE7RUN0R0U7RUFDQTtFdkMwUkksbUNBTEk7RXVDblJSO0ExQzBvSkY7O0EyQzVvSkE7RUFFRTtFQUNBO0V4Q3VSSSw0QkFMSTtFd0NoUlI7RUFDQTtFQUNBO0VBR0E7RUFDQTtFeEMrUUksb0NBTEk7RXdDeFFSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFcENKRTtBUGlwSko7QTJDeG9KRTtFQUNFO0EzQzBvSko7O0EyQ3JvSkE7RUFDRTtFQUNBO0EzQ3dvSkY7O0E0Q3hxSkE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXJDSEU7QVA0cUpKOztBNENwcUpBO0VBRUU7QTVDc3FKRjs7QTRDbHFKQTtFQUNFLGdCdEM2a0I0QjtFc0M1a0I1QjtBNUNxcUpGOztBNEM3cEpBO0VBQ0UsbUJ0Q3MrQzhCO0FOMHJHaEM7QTRDN3BKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVDK3BKSjs7QTRDdnBKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E1QzBwSko7O0E0QzlwSkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBNUNpcUpKOztBNENycUpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVDd3FKSjs7QTRDNXFKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E1QytxSko7O0E0Q25ySkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBNUNzckpKOztBNEMxckpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVDNnJKSjs7QTRDanNKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E1Q29zSko7O0E0Q3hzSkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBNUMyc0pKOztBNkN2d0pFO0VBQ0U7SUFBSztFN0Myd0pQO0FBQ0Y7QTZDdndKQTs7RUFHRTtFMUNrUkksZ0NBTEk7RTBDM1FSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFMUNzUUksdUNBTEk7RTBDL1BSO0V0Q1JFO0FQK3dKSjs7QTZDbHdKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXZCeEJJLDZDdUJ5Qko7QTdDcXdKRjtBc0IxeEpNO0V1QllOO0l2QlhRO0V0QjZ4Sk47QUFDRjs7QTZDdndKQTtFdEJBRTtFc0JFQTtBN0Mwd0pGOztBNkN2d0pBO0VBQ0U7QTdDMHdKRjs7QTZDdndKQTtFQUNFO0E3QzB3SkY7O0E2Q3R3SkU7RUFDRTtBN0N5d0pKO0E2Q3R3Sk07RUFKSjtJQUtNO0U3Q3l3Sk47QUFDRjs7QThDcjBKQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBR0E7RUFDQTtFdkNYRTtBUCswSko7O0E4Q2gwSkE7RUFDRTtFQUNBO0E5Q20wSkY7QThDajBKRTtFQUVFO0VBQ0E7QTlDazBKSjs7QThDMXpKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QzZ6SkY7QThDM3pKRTtFdkM5QkU7RUFDQTtBUDQxSko7QThDM3pKRTtFdkNwQkU7RUFDQTtBUGsxSko7QThDM3pKRTtFQUVFO0VBQ0E7RUFDQTtBOUM0ekpKO0E4Q3h6SkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBOUMwekpKO0E4Q3R6SkU7RUFDRTtBOUN3ekpKO0E4Q3R6Skk7RUFDRTtFQUNBO0E5Q3d6Sk47O0E4Qzl5SkE7RUFDRTtFQUNBO0VBQ0E7QTlDaXpKRjtBOEM3eUpJO0VBRUU7RUFDQTtFQUNBO0VBQ0E7QTlDOHlKTjtBOEMzeUpJO0VBQ0U7RUFDQTtBOUM2eUpOOztBOENoeUpJO0VBQ0U7QTlDbXlKTjtBOENoeUpRO0V2Q3pESjtFQVpBO0FQeTJKSjtBOEMveEpRO0V2QzFFSjtFQVlBO0FQaTJKSjtBOEM5eEpRO0VBQ0U7QTlDZ3lKVjtBOEM3eEpRO0VBQ0U7RUFDQTtBOUMreEpWO0E4Qzd4SlU7RUFDRTtFQUNBO0E5Qyt4Slo7O0FjdjNKSTtFZ0NnRUE7SUFDRTtFOUMyekpKO0U4Q3h6Sk07SXZDekRKO0lBWkE7RVBpNEpGO0U4Q3Z6Sk07SXZDMUVKO0lBWUE7RVB5M0pGO0U4Q3R6Sk07SUFDRTtFOUN3ekpSO0U4Q3J6Sk07SUFDRTtJQUNBO0U5Q3V6SlI7RThDcnpKUTtJQUNFO0lBQ0E7RTlDdXpKVjtBQUNGO0FjaDVKSTtFZ0NnRUE7SUFDRTtFOUNtMUpKO0U4Q2gxSk07SXZDekRKO0lBWkE7RVB5NUpGO0U4Qy8wSk07SXZDMUVKO0lBWUE7RVBpNUpGO0U4QzkwSk07SUFDRTtFOUNnMUpSO0U4QzcwSk07SUFDRTtJQUNBO0U5QyswSlI7RThDNzBKUTtJQUNFO0lBQ0E7RTlDKzBKVjtBQUNGO0FjeDZKSTtFZ0NnRUE7SUFDRTtFOUMyMkpKO0U4Q3gySk07SXZDekRKO0lBWkE7RVBpN0pGO0U4Q3YySk07SXZDMUVKO0lBWUE7RVB5NkpGO0U4Q3QySk07SUFDRTtFOUN3MkpSO0U4Q3IySk07SUFDRTtJQUNBO0U5Q3UySlI7RThDcjJKUTtJQUNFO0lBQ0E7RTlDdTJKVjtBQUNGO0FjaDhKSTtFZ0NnRUE7SUFDRTtFOUNtNEpKO0U4Q2g0Sk07SXZDekRKO0lBWkE7RVB5OEpGO0U4Qy8zSk07SXZDMUVKO0lBWUE7RVBpOEpGO0U4QzkzSk07SUFDRTtFOUNnNEpSO0U4QzczSk07SUFDRTtJQUNBO0U5QyszSlI7RThDNzNKUTtJQUNFO0lBQ0E7RTlDKzNKVjtBQUNGO0FjeDlKSTtFZ0NnRUE7SUFDRTtFOUMyNUpKO0U4Q3g1Sk07SXZDekRKO0lBWkE7RVBpK0pGO0U4Q3Y1Sk07SXZDMUVKO0lBWUE7RVB5OUpGO0U4Q3Q1Sk07SUFDRTtFOUN3NUpSO0U4Q3I1Sk07SUFDRTtJQUNBO0U5Q3U1SlI7RThDcjVKUTtJQUNFO0lBQ0E7RTlDdTVKVjtBQUNGO0E4QzE0SkE7RXZDbEpJO0FQK2hLSjtBOEMxNEpFO0VBQ0U7QTlDNDRKSjtBOEMxNEpJO0VBQ0U7QTlDNDRKTjs7QThDLzNKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5Q2s0Sko7O0E4QzU0SkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUMrNEpKOztBOEN6NUpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlDNDVKSjs7QThDdDZKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5Q3k2Sko7O0E4Q243SkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUNzN0pKOztBOENoOEpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlDbThKSjs7QThDNzhKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5Q2c5Sko7O0E4QzE5SkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUM2OUpKOztBK0MzcEtBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBLFV6Q3VwRDJCO0V5Q3RwRDNCLFd6Q3NwRDJCO0V5Q3JwRDNCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXhDSkU7RXdDTUY7QS9DMnBLRjtBK0N4cEtFO0VBQ0U7RUFDQTtFQUNBO0EvQzBwS0o7QStDdnBLRTtFQUNFO0VBQ0E7RUFDQTtBL0N5cEtKO0ErQ3RwS0U7RUFFRTtFQUNBO0tBQUE7VUFBQTtFQUNBO0EvQ3VwS0o7O0ErQy9vS0E7RUFIRTtBL0NzcEtGOztBK0Mvb0tBOztFQUVFO0EvQ2twS0Y7O0FJN3JLSTtFMkNrQ0Y7QS9DK3BLRjs7QWdEaHRLQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTdDeVJJLDhCQUxJO0U2Q2xSUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0U3QzJRSSxvQ0FMSTtFNkNwUVI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V6Q1JFO0FQeXRLSjtBZ0Q5c0tFO0VBQ0U7QWhEZ3RLSjtBZ0Q3c0tFO0VBQ0U7QWhEK3NLSjs7QWdEM3NLQTtFQUNFO0VBRUE7RUFDQTtFQUNBO0VBQUE7RUFDQTtFQUNBO0FoRDZzS0Y7QWdEM3NLRTtFQUNFO0FoRDZzS0o7O0FnRHpzS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFekNoQ0U7RUFDQTtBUDZ1S0o7QWdEM3NLRTtFQUNFO0VBQ0E7QWhENnNLSjs7QWdEenNLQTtFQUNFO0VBQ0E7QWhENHNLRjs7QWlEMXdLQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0FqRHd3S0Y7O0FpRGp3S0E7RUFDRTtFQUNBO0VBQ0E7RUFFQTtBakRtd0tGO0FpRGh3S0U7RUFDRSw4QjNDbThDZ0M7RWdCaC9DOUIsbUMyQjhDRjtBakRrd0tKO0FzQjV5S007RTJCd0NKO0kzQnZDTTtFdEIreUtOO0FBQ0Y7QWlEcndLRTtFQUNFLGUzQ2c4Q2dDO0FOdTBIcEM7QWlEbndLRTtFQUNFLHNCM0M2N0NnQztBTncwSHBDOztBaURqd0tBO0VBQ0U7QWpEb3dLRjtBaURsd0tFO0VBQ0U7RUFDQTtBakRvd0tKO0FpRGp3S0U7RUFDRTtBakRtd0tKOztBaUQvdktBO0VBQ0U7RUFDQTtFQUNBO0FqRGt3S0Y7O0FpRDl2S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTFDckZFO0UwQ3lGRjtBakQ4dktGOztBaUQxdktBO0VBRUU7RUFDQTtFQUNBO0VDbEhBO0VBQ0E7RUFDQTtFQUNBLGtDRGtIMEI7RUNqSDFCO0VBQ0E7RUFDQSx1Q0QrRzREO0FqRGd3SzlEO0FrRDUyS0U7RUFBUztBbEQrMktYO0FrRDkyS0U7RUFBUyxtQ0QyR2lGO0FqRHN3SzVGOztBaURqd0tBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFMUNyR0U7RUFDQTtBUDAyS0o7QWlEbndLRTtFQUNFO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QWpEb3dLSjs7QWlEL3ZLQTtFQUNFO0VBQ0E7QWpEa3dLRjs7QWlEN3ZLQTtFQUNFO0VBR0E7RUFDQTtBakQ4dktGOztBaUQxdktBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFMUM3SEU7RUFDQTtBUDIzS0o7QWlEenZLRTtFQUNFO0FqRDJ2S0o7O0FjMTJLSTtFbUNxSEY7SUFDRTtJQUNBO0VqRHl2S0Y7RWlEcnZLQTtJQUNFO0lBQ0E7SUFDQTtFakR1dktGO0VpRHB2S0E7SUFDRTtFakRzdktGO0FBQ0Y7QWN6M0tJO0VtQ3VJRjs7SUFFRTtFakRxdktGO0FBQ0Y7QWMvM0tJO0VtQzhJRjtJQUNFO0VqRG92S0Y7QUFDRjtBaUQzdUtJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWpENnVLTjtBaUQzdUtNO0VBQ0U7RUFDQTtFMUM3TUo7QVAyN0tKO0FpRDF1S007O0UxQ2pORjtBUCs3S0o7QWlEenVLTTtFQUNFO0FqRDJ1S1I7O0FjejRLSTtFbUM0SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFakRpd0tKO0VpRC92S0k7SUFDRTtJQUNBO0kxQzdNSjtFUCs4S0Y7RWlEOXZLSTs7STFDak5GO0VQbTlLRjtFaUQ3dktJO0lBQ0U7RWpEK3ZLTjtBQUNGO0FjOTVLSTtFbUM0SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFakRxeEtKO0VpRG54S0k7SUFDRTtJQUNBO0kxQzdNSjtFUG0rS0Y7RWlEbHhLSTs7STFDak5GO0VQdStLRjtFaURqeEtJO0lBQ0U7RWpEbXhLTjtBQUNGO0FjbDdLSTtFbUM0SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFakR5eUtKO0VpRHZ5S0k7SUFDRTtJQUNBO0kxQzdNSjtFUHUvS0Y7RWlEdHlLSTs7STFDak5GO0VQMi9LRjtFaURyeUtJO0lBQ0U7RWpEdXlLTjtBQUNGO0FjdDhLSTtFbUM0SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFakQ2ektKO0VpRDN6S0k7SUFDRTtJQUNBO0kxQzdNSjtFUDJnTEY7RWlEMXpLSTs7STFDak5GO0VQK2dMRjtFaUR6ektJO0lBQ0U7RWpEMnpLTjtBQUNGO0FjMTlLSTtFbUM0SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFakRpMUtKO0VpRC8wS0k7SUFDRTtJQUNBO0kxQzdNSjtFUCtoTEY7RWlEOTBLSTs7STFDak5GO0VQbWlMRjtFaUQ3MEtJO0lBQ0U7RWpEKzBLTjtBQUNGO0FtRHpqTEE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VoRHdSSSxnQ0FMSTtFZ0RqUlI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VDbEJBLHNDOUMrbEI0QjtFOEM3bEI1QjtFQUNBLGdCOUN3bUI0QjtFOEN2bUI1QixnQjlDK21CNEI7RThDOW1CNUI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWpEZ1JJLHNDQUxJO0VnRGhRUjtFQUNBO0FuRGlrTEY7QW1EL2pMRTtFQUFTO0FuRGtrTFg7QW1EaGtMRTtFQUNFO0VBQ0E7RUFDQTtBbkRra0xKO0FtRGhrTEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkRra0xOOztBbUQ3akxBO0VBQ0U7QW5EZ2tMRjtBbUQ5akxFO0VBQ0U7RUFDQTtFQUNBO0FuRGdrTEo7O0FtRDVqTEE7QUFDQTtFQUNFO0VBQ0E7RUFDQTtBbkQrakxGO0FtRDdqTEU7RUFDRTtFQUNBO0VBQ0E7QW5EK2pMSjs7QW1EM2pMQTtBQUVBO0VBQ0U7QW5ENmpMRjtBbUQzakxFO0VBQ0U7RUFDQTtFQUNBO0FuRDZqTEo7O0FtRHpqTEE7QUFDQTtFQUNFO0VBQ0E7RUFDQTtBbkQ0akxGO0FtRDFqTEU7RUFDRTtFQUNBO0VBQ0E7QW5ENGpMSjs7QW1EeGpMQTtBQWtCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTVDakdFO0FQNG9MSjs7QXFEL3BMQTtFQUVFO0VBQ0E7RWxENFJJLGdDQUxJO0VrRHJSUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VsRG1SSSxtQ0FMSTtFa0Q1UVI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFRHpCQSxzQzlDK2xCNEI7RThDN2xCNUI7RUFDQSxnQjlDd21CNEI7RThDdm1CNUIsZ0I5QyttQjRCO0U4QzltQjVCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VqRGdSSSxzQ0FMSTtFa0QxUFI7RUFDQTtFQUNBO0VBQ0E7RTlDaEJFO0FQMHJMSjtBcUR0cUxFO0VBQ0U7RUFDQTtFQUNBO0FyRHdxTEo7QXFEdHFMSTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckR1cUxOOztBcURqcUxFO0VBQ0U7QXJEb3FMSjtBcURscUxJO0VBRUU7QXJEbXFMTjtBcURocUxJO0VBQ0U7RUFDQTtBckRrcUxOO0FxRC9wTEk7RUFDRTtFQUNBO0FyRGlxTE47O0FxRDVwTEE7QUFFRTtFQUNFO0VBQ0E7RUFDQTtBckQ4cExKO0FxRDVwTEk7RUFFRTtBckQ2cExOO0FxRDFwTEk7RUFDRTtFQUNBO0FyRDRwTE47QXFEenBMSTtFQUNFO0VBQ0E7QXJEMnBMTjs7QXFEdHBMQTtBQUdFO0VBQ0U7QXJEdXBMSjtBcURycExJO0VBRUU7QXJEc3BMTjtBcURucExJO0VBQ0U7RUFDQTtBckRxcExOO0FxRGxwTEk7RUFDRTtFQUNBO0FyRG9wTE47QXFEL29MRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJEaXBMSjs7QXFEN29MQTtBQUVFO0VBQ0U7RUFDQTtFQUNBO0FyRCtvTEo7QXFEN29MSTtFQUVFO0FyRDhvTE47QXFEM29MSTtFQUNFO0VBQ0E7QXJENm9MTjtBcUQxb0xJO0VBQ0U7RUFDQTtBckQ0b0xOOztBcUR2b0xBO0FBa0JBO0VBQ0U7RUFDQTtFbEQyR0ksNkNBTEk7RWtEcEdSO0VBQ0E7RUFDQTtFOUM1SkU7RUFDQTtBUHN4TEo7QXFEeG5MRTtFQUNFO0FyRDBuTEo7O0FxRHRuTEE7RUFDRTtFQUNBO0FyRHluTEY7O0FzRDl5TEE7RUFDRTtBdERpekxGOztBc0Q5eUxBO0VBQ0U7QXREaXpMRjs7QXNEOXlMQTtFQUNFO0VBQ0E7RUFDQTtBdERpekxGO0F1RHYwTEU7RUFDRTtFQUNBO0VBQ0E7QXZEeTBMSjs7QXNEbHpMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFaENsQkksc0NnQ21CSjtBdERxekxGO0FzQnAwTE07RWdDUU47SWhDUFE7RXRCdTBMTjtBQUNGOztBc0R2ekxBOzs7RUFHRTtBdEQwekxGOztBc0R2ekxBOztFQUVFO0F0RDB6TEY7O0FzRHZ6TEE7O0VBRUU7QXREMHpMRjs7QXNEanpMRTtFQUNFO0VBQ0E7RUFDQTtBdERvekxKO0FzRGp6TEU7OztFQUdFO0VBQ0E7QXREbXpMSjtBc0RoekxFOztFQUVFO0VBQ0E7RWhDNURFLDJCZ0M2REY7QXREa3pMSjtBc0IzMkxNO0VnQ3FESjs7SWhDcERNO0V0QisyTE47QUFDRjs7QXNEL3lMQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBLFVoRGtoRG1DO0VnRGpoRG5DO0VBQ0EsV2hEMUZTO0VnRDJGVDtFQUNBO0VBQ0E7RUFDQTtFQUNBLFloRDRnRG1DO0VnQm5tRC9CLDhCZ0N3Rko7QXREaXpMRjtBc0JyNExNO0VnQ2tFTjs7SWhDakVRO0V0Qnk0TE47QUFDRjtBc0RwekxFOzs7RUFFRSxXaERyR087RWdEc0dQO0VBQ0E7RUFDQSxZaERvZ0RpQztBTm16SXJDOztBc0RwekxBO0VBQ0U7QXREdXpMRjs7QXNEcHpMQTtFQUNFO0F0RHV6TEY7O0FzRGx6TEE7O0VBRUU7RUFDQSxXaERzZ0RtQztFZ0RyZ0RuQyxZaERxZ0RtQztFZ0RwZ0RuQztFQUNBO0VBQ0E7QXREcXpMRjs7QXNEbHpMQTtFQUNFO0F0RHF6TEY7O0FzRG56TEE7RUFDRTtBdERzekxGOztBc0Q5eUxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBLGlCaERxOUNtQztFZ0RwOUNuQztFQUNBLGdCaERtOUNtQztBTjYxSXJDO0FzRDl5TEU7RUFDRTtFQUNBO0VBQ0EsV2hEbzlDaUM7RWdEbjlDakMsV2hEbzlDaUM7RWdEbjlDakM7RUFDQSxpQmhEbzlDaUM7RWdEbjlDakMsZ0JoRG05Q2lDO0VnRGw5Q2pDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0EsWWhEMjhDaUM7RWdCNW1EL0IsNkJnQ2tLRjtBdEQreUxKO0FzQjc4TE07RWdDNklKO0loQzVJTTtFdEJnOUxOO0FBQ0Y7QXNEanpMRTtFQUNFLFVoRHc4Q2lDO0FOMjJJckM7O0FzRDF5TEE7RUFDRTtFQUNBO0VBQ0EsZWhEazhDbUM7RWdEajhDbkM7RUFDQSxvQmhEKzdDbUM7RWdEOTdDbkMsdUJoRDg3Q21DO0VnRDc3Q25DO0VBQ0E7QXRENnlMRjs7QXNEbHlMQTtFQUxFO0VBQ0E7RUFDQTtBdEQyeUxGOztBc0RweUxBOztFQUVFO0VBQ0E7RUFDQTtBdER1eUxGOztBSWwvTEk7RWtEOExGO0VBQ0E7RUFDQTtBdER3ekxGOztBd0RuZ01BOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0F4RHFnTUY7O0F3RGpnTUE7RUFDRTtJQUFLO0V4RHFnTUw7QUFDRjtBd0RsZ01BO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtBeERpZ01GOztBd0Q5L0xBO0VBRUU7RUFDQTtFQUNBO0F4RGdnTUY7O0F3RHYvTEE7RUFDRTtJQUNFO0V4RDAvTEY7RXdEeC9MQTtJQUNFO0lBQ0E7RXhEMC9MRjtBQUNGO0F3RHQvTEE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtBeERxL0xGOztBd0RsL0xBO0VBQ0U7RUFDQTtBeERxL0xGOztBd0RqL0xFO0VBQ0U7O0lBRUU7RXhEby9MSjtBQUNGO0F5RHJrTUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpEc2tNRjs7QWN6Z01JO0UyQzVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SW5DNUJBLDBDbUM4QkE7RXpEdWpNSjtBQUNGO0FzQmxsTU07RW1DWUo7SW5DWE07RXRCcWxNTjtBQUNGO0FjL2hNSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V6RDhqTU47RXlEM2pNSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpENmpNTjtFeUQxak1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpENGpNTjtFeUR6ak1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V6RDJqTU47RXlEeGpNSTtJQUVFO0V6RHlqTU47RXlEdGpNSTtJQUdFO0V6RHNqTU47QUFDRjtBY25sTUk7RTJDL0JGO0lBaUVNO0lBQ0E7SUFDQTtFekRxak1OO0V5RG5qTU07SUFDRTtFekRxak1SO0V5RGxqTU07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0V6RG1qTVI7QUFDRjs7QWN2bE1JO0UyQzVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SW5DNUJBLDBDbUM4QkE7RXpEcW9NSjtBQUNGO0FzQmhxTU07RW1DWUo7SW5DWE07RXRCbXFNTjtBQUNGO0FjN21NSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V6RDRvTU47RXlEem9NSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpEMm9NTjtFeUR4b01JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpEMG9NTjtFeUR2b01JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V6RHlvTU47RXlEdG9NSTtJQUVFO0V6RHVvTU47RXlEcG9NSTtJQUdFO0V6RG9vTU47QUFDRjtBY2pxTUk7RTJDL0JGO0lBaUVNO0lBQ0E7SUFDQTtFekRtb01OO0V5RGpvTU07SUFDRTtFekRtb01SO0V5RGhvTU07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0V6RGlvTVI7QUFDRjs7QWNycU1JO0UyQzVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SW5DNUJBLDBDbUM4QkE7RXpEbXRNSjtBQUNGO0FzQjl1TU07RW1DWUo7SW5DWE07RXRCaXZNTjtBQUNGO0FjM3JNSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V6RDB0TU47RXlEdnRNSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpEeXRNTjtFeUR0dE1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpEd3RNTjtFeURydE1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V6RHV0TU47RXlEcHRNSTtJQUVFO0V6RHF0TU47RXlEbHRNSTtJQUdFO0V6RGt0TU47QUFDRjtBYy91TUk7RTJDL0JGO0lBaUVNO0lBQ0E7SUFDQTtFekRpdE1OO0V5RC9zTU07SUFDRTtFekRpdE1SO0V5RDlzTU07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0V6RCtzTVI7QUFDRjs7QWNudk1JO0UyQzVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SW5DNUJBLDBDbUM4QkE7RXpEaXlNSjtBQUNGO0FzQjV6TU07RW1DWUo7SW5DWE07RXRCK3pNTjtBQUNGO0FjendNSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V6RHd5TU47RXlEcnlNSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpEdXlNTjtFeURweU1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpEc3lNTjtFeURueU1JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V6RHF5TU47RXlEbHlNSTtJQUVFO0V6RG15TU47RXlEaHlNSTtJQUdFO0V6RGd5TU47QUFDRjtBYzd6TUk7RTJDL0JGO0lBaUVNO0lBQ0E7SUFDQTtFekQreE1OO0V5RDd4TU07SUFDRTtFekQreE1SO0V5RDV4TU07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0V6RDZ4TVI7QUFDRjs7QWNqME1JO0UyQzVDRjtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SW5DNUJBLDBDbUM4QkE7RXpEKzJNSjtBQUNGO0FzQjE0TU07RW1DWUo7SW5DWE07RXRCNjRNTjtBQUNGO0FjdjFNSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V6RHMzTU47RXlEbjNNSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpEcTNNTjtFeURsM01JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXpEbzNNTjtFeURqM01JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0V6RG0zTU47RXlEaDNNSTtJQUVFO0V6RGkzTU47RXlEOTJNSTtJQUdFO0V6RDgyTU47QUFDRjtBYzM0TUk7RTJDL0JGO0lBaUVNO0lBQ0E7SUFDQTtFekQ2Mk1OO0V5RDMyTU07SUFDRTtFekQ2Mk1SO0V5RDEyTU07SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUVBO0V6RDIyTVI7QUFDRjs7QXlEMzdNRTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RW5DNUJBLDBDbUM4QkE7QXpENDdNTjtBc0J0OU1NO0VtQ1lKO0luQ1hNO0V0Qnk5TU47QUFDRjtBeUQvN01NO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekRpOE1SO0F5RDk3TU07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6RGc4TVI7QXlENzdNTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6RCs3TVI7QXlENTdNTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekQ4N01SO0F5RDM3TU07RUFFRTtBekQ0N01SO0F5RHo3TU07RUFHRTtBekR5N01SOztBeUQ5NU1BO0VQcEhFO0VBQ0E7RUFDQTtFQUNBLGE1QzBtQ2tDO0U0Q3ptQ2xDO0VBQ0E7RUFDQSxzQjVDVVM7QU40Z05YO0FrRG5oTkU7RUFBUztBbERzaE5YO0FrRHJoTkU7RUFBUyxZNUNtK0N5QjtBTnFqS3BDOztBeUQxNk1BO0VBQ0U7RUFDQTtFQUNBO0F6RDY2TUY7QXlEMzZNRTtFQUNFO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QXpENDZNSjs7QXlEeDZNQTtFQUNFO0VBQ0E7QXpEMjZNRjs7QXlEeDZNQTtFQUNFO0VBQ0E7RUFDQTtBekQyNk1GOztBMEQ1ak5BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFlwRGd6Q2tDO0FOK3dLcEM7QTBEN2pORTtFQUNFO0VBQ0E7QTFEK2pOSjs7QTBEMWpOQTtFQUNFO0ExRDZqTkY7O0EwRDFqTkE7RUFDRTtBMUQ2ak5GOztBMEQxak5BO0VBQ0U7QTFENmpORjs7QTBEeGpORTtFQUNFO0ExRDJqTko7O0EwRHZqTkE7RUFDRTtJQUNFLFlwRG14Q2dDO0VOdXlLbEM7QUFDRjtBMER2ak5BO0VBQ0U7VUFBQTtFQUNBO1VBQUE7RUFDQTtBMUR5ak5GOztBMER0ak5BO0VBQ0U7SUFDRTtZQUFBO0UxRHlqTkY7QUFDRjtBdUR4bU5FO0VBQ0U7RUFDQTtFQUNBO0F2RDBtTko7O0EyRDdtTkU7RUFDRTtFQUNBO0EzRGduTko7O0EyRGxuTkU7RUFDRTtFQUNBO0EzRHFuTko7O0EyRHZuTkU7RUFDRTtFQUNBO0EzRDBuTko7O0EyRDVuTkU7RUFDRTtFQUNBO0EzRCtuTko7O0EyRGpvTkU7RUFDRTtFQUNBO0EzRG9vTko7O0EyRHRvTkU7RUFDRTtFQUNBO0EzRHlvTko7O0EyRDNvTkU7RUFDRTtFQUNBO0EzRDhvTko7O0EyRGhwTkU7RUFDRTtFQUNBO0EzRG1wTko7O0E0RHJwTkU7RUFDRTtFQUNBO1VBQUE7QTVEd3BOSjtBNERycE5NO0VBR0U7RUFDQTtVQUFBO0E1RHFwTlI7O0E0RDlwTkU7RUFDRTtFQUNBO1VBQUE7QTVEaXFOSjtBNEQ5cE5NO0VBR0U7RUFDQTtVQUFBO0E1RDhwTlI7O0E0RHZxTkU7RUFDRTtFQUNBO1VBQUE7QTVEMHFOSjtBNER2cU5NO0VBR0U7RUFDQTtVQUFBO0E1RHVxTlI7O0E0RGhyTkU7RUFDRTtFQUNBO1VBQUE7QTVEbXJOSjtBNERock5NO0VBR0U7RUFDQTtVQUFBO0E1RGdyTlI7O0E0RHpyTkU7RUFDRTtFQUNBO1VBQUE7QTVENHJOSjtBNER6ck5NO0VBR0U7RUFDQTtVQUFBO0E1RHlyTlI7O0E0RGxzTkU7RUFDRTtFQUNBO1VBQUE7QTVEcXNOSjtBNERsc05NO0VBR0U7RUFDQTtVQUFBO0E1RGtzTlI7O0E0RDNzTkU7RUFDRTtFQUNBO1VBQUE7QTVEOHNOSjtBNEQzc05NO0VBR0U7RUFDQTtVQUFBO0E1RDJzTlI7O0E0RHB0TkU7RUFDRTtFQUNBO1VBQUE7QTVEdXROSjtBNERwdE5NO0VBR0U7RUFDQTtVQUFBO0E1RG90TlI7O0E0RDdzTkE7RUFDRTtFQUNBO1VBQUE7QTVEZ3RORjtBNEQ3c05JO0VBRUU7RUFDQTtVQUFBO0E1RDhzTk47O0E2RHh1TkE7RUFDRTtFQUVBO0E3RDB1TkY7O0E4RDd1TkE7RUFDRTtFQUNBLGF4RDZjNEI7RXdENWM1QjtFQUNBO1VBQUE7RUFDQSw2QnhEMmM0QjtFd0QxYzVCO0E5RGd2TkY7QThEOXVORTtFQUNFO0VBQ0EsVXhEdWMwQjtFd0R0YzFCLFd4RHNjMEI7RXdEcmMxQjtFeENJRSxzQ3dDSEY7QTlEZ3ZOSjtBc0J6dU5NO0V3Q1pKO0l4Q2FNO0V0QjR1Tk47QUFDRjs7QThEOXVOSTtFQUNFO0E5RGl2Tk47O0ErRHB3TkE7RUFDRTtFQUNBO0EvRHV3TkY7QStEcndORTtFQUNFO0VBQ0E7RUFDQTtBL0R1d05KO0ErRHB3TkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvRHN3Tko7O0ErRGp3TkU7RUFDRTtBL0Rvd05KOztBK0Ryd05FO0VBQ0U7QS9Ed3dOSjs7QStEendORTtFQUNFO0EvRDR3Tko7O0ErRDd3TkU7RUFDRTtBL0RneE5KOztBZ0VyeU5BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhMUR1bUNrQztBTmlzTHBDOztBZ0VyeU5BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhMUQrbENrQztBTnlzTHBDOztBZ0VoeU5JO0VBQ0U7RUFDQTtFQUNBLGExRG1sQzhCO0FOZ3RMcEM7O0FnRWh5Tkk7RUFDRTtFQUNBO0VBQ0EsYTFENmtDOEI7QU5zdExwQzs7QWNwd05JO0VrRHhDQTtJQUNFO0lBQ0E7SUFDQSxhMURtbEM4QjtFTjZ0TGxDO0VnRTd5TkU7SUFDRTtJQUNBO0lBQ0EsYTFENmtDOEI7RU5rdUxsQztBQUNGO0FjanhOSTtFa0R4Q0E7SUFDRTtJQUNBO0lBQ0EsYTFEbWxDOEI7RU55dUxsQztFZ0V6ek5FO0lBQ0U7SUFDQTtJQUNBLGExRDZrQzhCO0VOOHVMbEM7QUFDRjtBYzd4Tkk7RWtEeENBO0lBQ0U7SUFDQTtJQUNBLGExRG1sQzhCO0VOcXZMbEM7RWdFcjBORTtJQUNFO0lBQ0E7SUFDQSxhMUQ2a0M4QjtFTjB2TGxDO0FBQ0Y7QWN6eU5JO0VrRHhDQTtJQUNFO0lBQ0E7SUFDQSxhMURtbEM4QjtFTml3TGxDO0VnRWoxTkU7SUFDRTtJQUNBO0lBQ0EsYTFENmtDOEI7RU5zd0xsQztBQUNGO0FjcnpOSTtFa0R4Q0E7SUFDRTtJQUNBO0lBQ0EsYTFEbWxDOEI7RU42d0xsQztFZ0U3MU5FO0lBQ0U7SUFDQTtJQUNBLGExRDZrQzhCO0VOa3hMbEM7QUFDRjtBaUUvM05BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWpFaTRORjs7QWlFOTNOQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FqRWk0TkY7O0FrRXo0TkE7O0VDSUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkUwNE5GO0FtRXY0TkU7O0VBQ0U7QW5FMDROSjtBbUV0NE5FOztFQUNFO0FuRXk0Tko7O0FvRTU1TkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsVTlEZ2NzQztFOEQvYnRDO0FwRSs1Tko7O0FxRXY2TkE7RUNBRTtFQUNBO0VBQ0E7QXRFMjZORjs7QXVFajdOQTtFQUNFO0VBQ0E7RUFDQSw2QmpFaXNCNEI7RWlFaHNCNUI7RUFDQTtFQUNBLGFqRTJyQjRCO0FOeXZNOUI7O0F3RXgzTlE7RUFPSTtBeEVxM05aOztBd0U1M05RO0VBT0k7QXhFeTNOWjs7QXdFaDROUTtFQU9JO0F4RTYzTlo7O0F3RXA0TlE7RUFPSTtBeEVpNE5aOztBd0V4NE5RO0VBT0k7QXhFcTROWjs7QXdFNTROUTtFQU9JO0F4RXk0Tlo7O0F3RWg1TlE7RUFPSTtBeEU2NE5aOztBd0VwNU5RO0VBT0k7QXhFaTVOWjs7QXdFeDVOUTtFQU9JO0F4RXE1Tlo7O0F3RTU1TlE7RUFPSTtLQUFBO0F4RXk1Tlo7O0F3RWg2TlE7RUFPSTtLQUFBO0F4RTY1Tlo7O0F3RXA2TlE7RUFPSTtLQUFBO0F4RWk2Tlo7O0F3RXg2TlE7RUFPSTtLQUFBO0F4RXE2Tlo7O0F3RTU2TlE7RUFPSTtLQUFBO0F4RXk2Tlo7O0F3RWg3TlE7RUFPSTtBeEU2Nk5aOztBd0VwN05RO0VBT0k7QXhFaTdOWjs7QXdFeDdOUTtFQU9JO0F4RXE3Tlo7O0F3RTU3TlE7RUFPSTtBeEV5N05aOztBd0VoOE5RO0VBT0k7QXhFNjdOWjs7QXdFcDhOUTtFQU9JO0F4RWk4Tlo7O0F3RXg4TlE7RUFPSTtBeEVxOE5aOztBd0U1OE5RO0VBT0k7QXhFeThOWjs7QXdFaDlOUTtFQU9JO0F4RTY4Tlo7O0F3RXA5TlE7RUFPSTtBeEVpOU5aOztBd0V4OU5RO0VBT0k7QXhFcTlOWjs7QXdFNTlOUTtFQU9JO0F4RXk5Tlo7O0F3RWgrTlE7RUFPSTtBeEU2OU5aOztBd0VwK05RO0VBT0k7QXhFaStOWjs7QXdFeCtOUTtFQU9JO0F4RXErTlo7O0F3RTUrTlE7RUFPSTtBeEV5K05aOztBd0VoL05RO0VBT0k7QXhFNitOWjs7QXdFcC9OUTtFQU9JO0F4RWkvTlo7O0F3RXgvTlE7RUFPSTtBeEVxL05aOztBd0U1L05RO0VBT0k7QXhFeS9OWjs7QXdFaGdPUTtFQU9JO0F4RTYvTlo7O0F3RXBnT1E7RUFPSTtBeEVpZ09aOztBd0V4Z09RO0VBT0k7QXhFcWdPWjs7QXdFNWdPUTtFQU9JO0F4RXlnT1o7O0F3RWhoT1E7RUFPSTtBeEU2Z09aOztBd0VwaE9RO0VBT0k7QXhFaWhPWjs7QXdFeGhPUTtFQU9JO0F4RXFoT1o7O0F3RTVoT1E7RUFPSTtBeEV5aE9aOztBd0VoaU9RO0VBT0k7QXhFNmhPWjs7QXdFcGlPUTtFQU9JO0F4RWlpT1o7O0F3RXhpT1E7RUFPSTtBeEVxaU9aOztBd0U1aU9RO0VBT0k7QXhFeWlPWjs7QXdFMWpPUTtFQUNFO0F4RTZqT1Y7O0F3RTlqT1E7RUFDRTtBeEVpa09WOztBd0Vsa09RO0VBQ0U7QXhFcWtPVjs7QXdFdGtPUTtFQUNFO0F4RXlrT1Y7O0F3RTFrT1E7RUFDRTtBeEU2a09WOztBd0U5a09RO0VBQ0U7QXhFaWxPVjs7QXdFbGxPUTtFQUNFO0F4RXFsT1Y7O0F3RXRsT1E7RUFDRTtBeEV5bE9WOztBd0VobE9RO0VBT0k7QXhFNmtPWjs7QXdFcGxPUTtFQU9JO0F4RWlsT1o7O0F3RXhsT1E7RUFPSTtBeEVxbE9aOztBd0U1bE9RO0VBT0k7QXhFeWxPWjs7QXdFaG1PUTtFQU9JO0F4RTZsT1o7O0F3RXBtT1E7RUFPSTtBeEVpbU9aOztBd0V4bU9RO0VBT0k7QXhFcW1PWjs7QXdFNW1PUTtFQU9JO0F4RXltT1o7O0F3RWhuT1E7RUFPSTtBeEU2bU9aOztBd0Vwbk9RO0VBT0k7QXhFaW5PWjs7QXdFeG5PUTtFQU9JO0F4RXFuT1o7O0F3RTVuT1E7RUFPSTtBeEV5bk9aOztBd0Vob09RO0VBT0k7QXhFNm5PWjs7QXdFcG9PUTtFQU9JO0F4RWlvT1o7O0F3RXhvT1E7RUFPSTtBeEVxb09aOztBd0U1b09RO0VBT0k7QXhFeW9PWjs7QXdFaHBPUTtFQU9JO0F4RTZvT1o7O0F3RXBwT1E7RUFPSTtBeEVpcE9aOztBd0V4cE9RO0VBT0k7QXhFcXBPWjs7QXdFNXBPUTtFQU9JO0F4RXlwT1o7O0F3RWhxT1E7RUFPSTtBeEU2cE9aOztBd0VwcU9RO0VBT0k7QXhFaXFPWjs7QXdFeHFPUTtFQU9JO0F4RXFxT1o7O0F3RTVxT1E7RUFPSTtBeEV5cU9aOztBd0Vock9RO0VBT0k7QXhFNnFPWjs7QXdFcHJPUTtFQU9JO0F4RWlyT1o7O0F3RXhyT1E7RUFPSTtBeEVxck9aOztBd0U1ck9RO0VBT0k7QXhFeXJPWjs7QXdFaHNPUTtFQU9JO0F4RTZyT1o7O0F3RXBzT1E7RUFPSTtBeEVpc09aOztBd0V4c09RO0VBSVE7RUFHSjtBeEVzc09aOztBd0U3c09RO0VBSVE7RUFHSjtBeEUyc09aOztBd0VsdE9RO0VBSVE7RUFHSjtBeEVndE9aOztBd0V2dE9RO0VBSVE7RUFHSjtBeEVxdE9aOztBd0U1dE9RO0VBSVE7RUFHSjtBeEUwdE9aOztBd0VqdU9RO0VBSVE7RUFHSjtBeEUrdE9aOztBd0V0dU9RO0VBSVE7RUFHSjtBeEVvdU9aOztBd0UzdU9RO0VBSVE7RUFHSjtBeEV5dU9aOztBd0Vodk9RO0VBSVE7RUFHSjtBeEU4dU9aOztBd0Vydk9RO0VBSVE7RUFHSjtBeEVtdk9aOztBd0Uxdk9RO0VBT0k7QXhFdXZPWjs7QXdFOXZPUTtFQU9JO0F4RTJ2T1o7O0F3RWx3T1E7RUFPSTtBeEUrdk9aOztBd0V0d09RO0VBT0k7QXhFbXdPWjs7QXdFMXdPUTtFQU9JO0F4RXV3T1o7O0F3RTl3T1E7RUFPSTtBeEUyd09aOztBd0VseE9RO0VBT0k7QXhFK3dPWjs7QXdFdHhPUTtFQU9JO0F4RW14T1o7O0F3RTF4T1E7RUFPSTtBeEV1eE9aOztBd0U5eE9RO0VBT0k7QXhFMnhPWjs7QXdFbHlPUTtFQU9JO0F4RSt4T1o7O0F3RXR5T1E7RUFPSTtBeEVteU9aOztBd0UxeU9RO0VBT0k7QXhFdXlPWjs7QXdFeHpPUTtFQUNFO0F4RTJ6T1Y7O0F3RTV6T1E7RUFDRTtBeEUrek9WOztBd0VoME9RO0VBQ0U7QXhFbTBPVjs7QXdFcDBPUTtFQUNFO0F4RXUwT1Y7O0F3RXgwT1E7RUFDRTtBeEUyME9WOztBd0VsME9RO0VBT0k7QXhFK3pPWjs7QXdFdDBPUTtFQU9JO0F4RW0wT1o7O0F3RTEwT1E7RUFPSTtBeEV1ME9aOztBd0U5ME9RO0VBT0k7QXhFMjBPWjs7QXdFbDFPUTtFQU9JO0F4RSswT1o7O0F3RXQxT1E7RUFPSTtBeEVtMU9aOztBd0UxMU9RO0VBT0k7QXhFdTFPWjs7QXdFOTFPUTtFQU9JO0F4RTIxT1o7O0F3RWwyT1E7RUFPSTtBeEUrMU9aOztBd0V0Mk9RO0VBT0k7QXhFbTJPWjs7QXdFMTJPUTtFQU9JO0F4RXUyT1o7O0F3RTkyT1E7RUFPSTtBeEUyMk9aOztBd0VsM09RO0VBT0k7QXhFKzJPWjs7QXdFdDNPUTtFQU9JO0F4RW0zT1o7O0F3RTEzT1E7RUFPSTtBeEV1M09aOztBd0U5M09RO0VBT0k7QXhFMjNPWjs7QXdFbDRPUTtFQU9JO0F4RSszT1o7O0F3RXQ0T1E7RUFPSTtBeEVtNE9aOztBd0UxNE9RO0VBT0k7QXhFdTRPWjs7QXdFOTRPUTtFQU9JO0F4RTI0T1o7O0F3RWw1T1E7RUFPSTtBeEUrNE9aOztBd0V0NU9RO0VBT0k7QXhFbTVPWjs7QXdFMTVPUTtFQU9JO0F4RXU1T1o7O0F3RTk1T1E7RUFPSTtBeEUyNU9aOztBd0VsNk9RO0VBT0k7QXhFKzVPWjs7QXdFdDZPUTtFQU9JO0F4RW02T1o7O0F3RTE2T1E7RUFPSTtBeEV1Nk9aOztBd0U5Nk9RO0VBT0k7QXhFMjZPWjs7QXdFbDdPUTtFQU9JO0F4RSs2T1o7O0F3RXQ3T1E7RUFPSTtBeEVtN09aOztBd0UxN09RO0VBT0k7QXhFdTdPWjs7QXdFOTdPUTtFQU9JO0F4RTI3T1o7O0F3RWw4T1E7RUFPSTtBeEUrN09aOztBd0V0OE9RO0VBT0k7QXhFbThPWjs7QXdFMThPUTtFQU9JO0F4RXU4T1o7O0F3RTk4T1E7RUFPSTtBeEUyOE9aOztBd0VsOU9RO0VBT0k7QXhFKzhPWjs7QXdFdDlPUTtFQU9JO0F4RW05T1o7O0F3RTE5T1E7RUFPSTtBeEV1OU9aOztBd0U5OU9RO0VBT0k7QXhFMjlPWjs7QXdFbCtPUTtFQU9JO0F4RSs5T1o7O0F3RXQrT1E7RUFPSTtBeEVtK09aOztBd0UxK09RO0VBT0k7QXhFdStPWjs7QXdFOStPUTtFQU9JO0F4RTIrT1o7O0F3RWwvT1E7RUFPSTtBeEUrK09aOztBd0V0L09RO0VBT0k7QXhFbS9PWjs7QXdFMS9PUTtFQU9JO0F4RXUvT1o7O0F3RTkvT1E7RUFPSTtBeEUyL09aOztBd0VsZ1BRO0VBT0k7QXhFKy9PWjs7QXdFdGdQUTtFQU9JO0F4RW1nUFo7O0F3RTFnUFE7RUFPSTtBeEV1Z1BaOztBd0U5Z1BRO0VBT0k7QXhFMmdQWjs7QXdFbGhQUTtFQU9JO0F4RStnUFo7O0F3RXRoUFE7RUFPSTtBeEVtaFBaOztBd0UxaFBRO0VBT0k7QXhFdWhQWjs7QXdFOWhQUTtFQU9JO0F4RTJoUFo7O0F3RWxpUFE7RUFPSTtBeEUraFBaOztBd0V0aVBRO0VBT0k7QXhFbWlQWjs7QXdFMWlQUTtFQU9JO0F4RXVpUFo7O0F3RTlpUFE7RUFPSTtBeEUyaVBaOztBd0VsalBRO0VBT0k7QXhFK2lQWjs7QXdFdGpQUTtFQU9JO0F4RW1qUFo7O0F3RTFqUFE7RUFPSTtBeEV1alBaOztBd0U5alBRO0VBT0k7QXhFMmpQWjs7QXdFbGtQUTtFQU9JO0F4RStqUFo7O0F3RXRrUFE7RUFPSTtBeEVta1BaOztBd0Uxa1BRO0VBT0k7RUFBQTtBeEV3a1BaOztBd0Uva1BRO0VBT0k7RUFBQTtBeEU2a1BaOztBd0VwbFBRO0VBT0k7RUFBQTtBeEVrbFBaOztBd0V6bFBRO0VBT0k7RUFBQTtBeEV1bFBaOztBd0U5bFBRO0VBT0k7RUFBQTtBeEU0bFBaOztBd0VubVBRO0VBT0k7RUFBQTtBeEVpbVBaOztBd0V4bVBRO0VBT0k7RUFBQTtBeEVzbVBaOztBd0U3bVBRO0VBT0k7RUFBQTtBeEUybVBaOztBd0VsblBRO0VBT0k7RUFBQTtBeEVnblBaOztBd0V2blBRO0VBT0k7RUFBQTtBeEVxblBaOztBd0U1blBRO0VBT0k7RUFBQTtBeEUwblBaOztBd0Vqb1BRO0VBT0k7RUFBQTtBeEUrblBaOztBd0V0b1BRO0VBT0k7RUFBQTtBeEVvb1BaOztBd0Uzb1BRO0VBT0k7RUFBQTtBeEV5b1BaOztBd0VocFBRO0VBT0k7QXhFNm9QWjs7QXdFcHBQUTtFQU9JO0F4RWlwUFo7O0F3RXhwUFE7RUFPSTtBeEVxcFBaOztBd0U1cFBRO0VBT0k7QXhFeXBQWjs7QXdFaHFQUTtFQU9JO0F4RTZwUFo7O0F3RXBxUFE7RUFPSTtBeEVpcVBaOztBd0V4cVBRO0VBT0k7QXhFcXFQWjs7QXdFNXFQUTtFQU9JO0F4RXlxUFo7O0F3RWhyUFE7RUFPSTtBeEU2cVBaOztBd0VwclBRO0VBT0k7QXhFaXJQWjs7QXdFeHJQUTtFQU9JO0F4RXFyUFo7O0F3RTVyUFE7RUFPSTtBeEV5clBaOztBd0Voc1BRO0VBT0k7QXhFNnJQWjs7QXdFcHNQUTtFQU9JO0F4RWlzUFo7O0F3RXhzUFE7RUFPSTtBeEVxc1BaOztBd0U1c1BRO0VBT0k7QXhFeXNQWjs7QXdFaHRQUTtFQU9JO0F4RTZzUFo7O0F3RXB0UFE7RUFPSTtBeEVpdFBaOztBd0V4dFBRO0VBT0k7QXhFcXRQWjs7QXdFNXRQUTtFQU9JO0F4RXl0UFo7O0F3RWh1UFE7RUFPSTtBeEU2dFBaOztBd0VwdVBRO0VBT0k7QXhFaXVQWjs7QXdFeHVQUTtFQU9JO0F4RXF1UFo7O0F3RTV1UFE7RUFPSTtBeEV5dVBaOztBd0VodlBRO0VBT0k7QXhFNnVQWjs7QXdFcHZQUTtFQU9JO0F4RWl2UFo7O0F3RXh2UFE7RUFPSTtBeEVxdlBaOztBd0U1dlBRO0VBT0k7QXhFeXZQWjs7QXdFaHdQUTtFQU9JO0F4RTZ2UFo7O0F3RXB3UFE7RUFPSTtBeEVpd1BaOztBd0V4d1BRO0VBT0k7QXhFcXdQWjs7QXdFNXdQUTtFQU9JO0F4RXl3UFo7O0F3RWh4UFE7RUFPSTtBeEU2d1BaOztBd0VweFBRO0VBT0k7QXhFaXhQWjs7QXdFeHhQUTtFQU9JO0VBQUE7QXhFc3hQWjs7QXdFN3hQUTtFQU9JO0VBQUE7QXhFMnhQWjs7QXdFbHlQUTtFQU9JO0VBQUE7QXhFZ3lQWjs7QXdFdnlQUTtFQU9JO0VBQUE7QXhFcXlQWjs7QXdFNXlQUTtFQU9JO0VBQUE7QXhFMHlQWjs7QXdFanpQUTtFQU9JO0VBQUE7QXhFK3lQWjs7QXdFdHpQUTtFQU9JO0VBQUE7QXhFb3pQWjs7QXdFM3pQUTtFQU9JO0VBQUE7QXhFeXpQWjs7QXdFaDBQUTtFQU9JO0VBQUE7QXhFOHpQWjs7QXdFcjBQUTtFQU9JO0VBQUE7QXhFbTBQWjs7QXdFMTBQUTtFQU9JO0VBQUE7QXhFdzBQWjs7QXdFLzBQUTtFQU9JO0VBQUE7QXhFNjBQWjs7QXdFcDFQUTtFQU9JO0F4RWkxUFo7O0F3RXgxUFE7RUFPSTtBeEVxMVBaOztBd0U1MVBRO0VBT0k7QXhFeTFQWjs7QXdFaDJQUTtFQU9JO0F4RTYxUFo7O0F3RXAyUFE7RUFPSTtBeEVpMlBaOztBd0V4MlBRO0VBT0k7QXhFcTJQWjs7QXdFNTJQUTtFQU9JO0F4RXkyUFo7O0F3RWgzUFE7RUFPSTtBeEU2MlBaOztBd0VwM1BRO0VBT0k7QXhFaTNQWjs7QXdFeDNQUTtFQU9JO0F4RXEzUFo7O0F3RTUzUFE7RUFPSTtBeEV5M1BaOztBd0VoNFBRO0VBT0k7QXhFNjNQWjs7QXdFcDRQUTtFQU9JO0F4RWk0UFo7O0F3RXg0UFE7RUFPSTtBeEVxNFBaOztBd0U1NFBRO0VBT0k7QXhFeTRQWjs7QXdFaDVQUTtFQU9JO0F4RTY0UFo7O0F3RXA1UFE7RUFPSTtBeEVpNVBaOztBd0V4NVBRO0VBT0k7QXhFcTVQWjs7QXdFNTVQUTtFQU9JO0F4RXk1UFo7O0F3RWg2UFE7RUFPSTtBeEU2NVBaOztBd0VwNlBRO0VBT0k7QXhFaTZQWjs7QXdFeDZQUTtFQU9JO0F4RXE2UFo7O0F3RTU2UFE7RUFPSTtBeEV5NlBaOztBd0VoN1BRO0VBT0k7QXhFNjZQWjs7QXdFcDdQUTtFQU9JO0F4RWk3UFo7O0F3RXg3UFE7RUFPSTtBeEVxN1BaOztBd0U1N1BRO0VBT0k7QXhFeTdQWjs7QXdFaDhQUTtFQU9JO0F4RTY3UFo7O0F3RXA4UFE7RUFPSTtBeEVpOFBaOztBd0V4OFBRO0VBT0k7QXhFcThQWjs7QXdFNThQUTtFQU9JO0F4RXk4UFo7O0F3RWg5UFE7RUFPSTtBeEU2OFBaOztBd0VwOVBRO0VBT0k7QXhFaTlQWjs7QXdFeDlQUTtFQU9JO0F4RXE5UFo7O0F3RTU5UFE7RUFPSTtBeEV5OVBaOztBd0VoK1BRO0VBT0k7QXhFNjlQWjs7QXdFcCtQUTtFQU9JO09BQUE7QXhFaStQWjs7QXdFeCtQUTtFQU9JO09BQUE7QXhFcStQWjs7QXdFNStQUTtFQU9JO09BQUE7QXhFeStQWjs7QXdFaC9QUTtFQU9JO09BQUE7QXhFNitQWjs7QXdFcC9QUTtFQU9JO09BQUE7QXhFaS9QWjs7QXdFeC9QUTtFQU9JO09BQUE7QXhFcS9QWjs7QXdFNS9QUTtFQU9JO0F4RXkvUFo7O0F3RWhnUVE7RUFPSTtBeEU2L1BaOztBd0VwZ1FRO0VBT0k7QXhFaWdRWjs7QXdFeGdRUTtFQU9JO0F4RXFnUVo7O0F3RTVnUVE7RUFPSTtBeEV5Z1FaOztBd0VoaFFRO0VBT0k7QXhFNmdRWjs7QXdFcGhRUTtFQU9JO0F4RWloUVo7O0F3RXhoUVE7RUFPSTtBeEVxaFFaOztBd0U1aFFRO0VBT0k7QXhFeWhRWjs7QXdFaGlRUTtFQU9JO0F4RTZoUVo7O0F3RXBpUVE7RUFPSTtBeEVpaVFaOztBd0V4aVFRO0VBT0k7QXhFcWlRWjs7QXdFNWlRUTtFQU9JO0F4RXlpUVo7O0F3RWhqUVE7RUFPSTtBeEU2aVFaOztBd0VwalFRO0VBT0k7QXhFaWpRWjs7QXdFeGpRUTtFQU9JO0F4RXFqUVo7O0F3RTVqUVE7RUFPSTtBeEV5alFaOztBd0Voa1FRO0VBT0k7QXhFNmpRWjs7QXdFcGtRUTtFQU9JO0F4RWlrUVo7O0F3RXhrUVE7RUFPSTtBeEVxa1FaOztBd0U1a1FRO0VBT0k7QXhFeWtRWjs7QXdFaGxRUTtFQU9JO0F4RTZrUVo7O0F3RXBsUVE7RUFPSTtBeEVpbFFaOztBd0V4bFFRO0VBT0k7QXhFcWxRWjs7QXdFNWxRUTtFQU9JO0F4RXlsUVo7O0F3RWhtUVE7RUFPSTtBeEU2bFFaOztBd0VwbVFRO0VBT0k7QXhFaW1RWjs7QXdFeG1RUTtFQU9JO0F4RXFtUVo7O0F3RTVtUVE7RUFPSTtBeEV5bVFaOztBd0VoblFRO0VBT0k7QXhFNm1RWjs7QXdFcG5RUTtFQU9JO0F4RWluUVo7O0F3RXRvUVE7QUFjQTtFQU9JO0VBQUE7QXhFdW5RWjs7QXdFcG1RUTtBQTFCQTtFQUlRO0VBR0o7QXhFNm5RWjs7QXdFcG9RUTtFQUlRO0VBR0o7QXhFa29RWjs7QXdFem9RUTtFQUlRO0VBR0o7QXhFdW9RWjs7QXdFOW9RUTtFQUlRO0VBR0o7QXhFNG9RWjs7QXdFbnBRUTtFQUlRO0VBR0o7QXhFaXBRWjs7QXdFeHBRUTtFQUlRO0VBR0o7QXhFc3BRWjs7QXdFN3BRUTtFQUlRO0VBR0o7QXhFMnBRWjs7QXdFbHFRUTtFQUlRO0VBR0o7QXhFZ3FRWjs7QXdFdnFRUTtFQUlRO0VBR0o7QXhFcXFRWjs7QXdFNXFRUTtFQUlRO0VBR0o7QXhFMHFRWjs7QXdFanJRUTtFQUlRO0VBR0o7QXhFK3FRWjs7QXdFdHJRUTtFQUlRO0VBR0o7QXhFb3JRWjs7QXdFM3JRUTtFQUlRO0VBR0o7QXhFeXJRWjs7QXdFaHNRUTtFQUlRO0VBR0o7QXhFOHJRWjs7QXdFcnNRUTtFQUlRO0VBR0o7QXhFbXNRWjs7QXdFMXNRUTtFQUlRO0VBR0o7QXhFd3NRWjs7QXdFL3NRUTtFQUlRO0VBR0o7QXhFNnNRWjs7QXdFcHRRUTtFQUlRO0VBR0o7QXhFa3RRWjs7QXdFbnVRUTtFQUNFO0F4RXN1UVY7O0F3RXZ1UVE7RUFDRTtBeEUwdVFWOztBd0UzdVFRO0VBQ0U7QXhFOHVRVjs7QXdFL3VRUTtFQUNFO0F4RWt2UVY7O0F3RXp1UVE7RUFPSTtBeEVzdVFaOztBd0U3dVFRO0VBT0k7QXhFMHVRWjs7QXdFanZRUTtFQU9JO0F4RTh1UVo7O0F3RXJ2UVE7RUFPSTtBeEVrdlFaOztBd0V6dlFRO0VBT0k7QXhFc3ZRWjs7QXdFN3ZRUTtFQU9JO0F4RTB2UVo7O0F3RWp3UVE7RUFPSTtBeEU4dlFaOztBd0Vyd1FRO0VBT0k7QXhFa3dRWjs7QXdFbnhRUTtFQUNFO0F4RXN4UVY7O0F3RWx4UVU7RUFDRTtBeEVxeFFaOztBd0UzeFFRO0VBQ0U7QXhFOHhRVjs7QXdFMXhRVTtFQUNFO0F4RTZ4UVo7O0F3RW55UVE7RUFDRTtBeEVzeVFWOztBd0VseVFVO0VBQ0U7QXhFcXlRWjs7QXdFM3lRUTtFQUNFO0F4RTh5UVY7O0F3RTF5UVU7RUFDRTtBeEU2eVFaOztBd0VuelFRO0VBQ0U7QXhFc3pRVjs7QXdFbHpRVTtFQUNFO0F4RXF6UVo7O0F3RWp6UVE7RUFPSTtBeEU4eVFaOztBd0V6eVFVO0VBT0k7QXhFc3lRZDs7QXdFenpRUTtFQU9JO0F4RXN6UVo7O0F3RWp6UVU7RUFPSTtBeEU4eVFkOztBd0VqMFFRO0VBT0k7QXhFOHpRWjs7QXdFenpRVTtFQU9JO0F4RXN6UWQ7O0F3RXowUVE7RUFJUTtFQUdKO1VBQUE7QXhFdTBRWjs7QXdFOTBRUTtFQUlRO0VBR0o7VUFBQTtBeEU0MFFaOztBd0VuMVFRO0VBSVE7RUFHSjtVQUFBO0F4RWkxUVo7O0F3RXgxUVE7RUFJUTtFQUdKO1VBQUE7QXhFczFRWjs7QXdFNzFRUTtFQUlRO0VBR0o7VUFBQTtBeEUyMVFaOztBd0VsMlFRO0VBSVE7RUFHSjtVQUFBO0F4RWcyUVo7O0F3RXYyUVE7RUFJUTtFQUdKO1VBQUE7QXhFcTJRWjs7QXdFNTJRUTtFQUlRO0VBR0o7VUFBQTtBeEUwMlFaOztBd0VqM1FRO0VBSVE7RUFHSjtVQUFBO0F4RSsyUVo7O0F3RWg0UVE7RUFDRTtBeEVtNFFWOztBd0UvM1FVO0VBQ0U7QXhFazRRWjs7QXdFeDRRUTtFQUNFO0F4RTI0UVY7O0F3RXY0UVU7RUFDRTtBeEUwNFFaOztBd0VoNVFRO0VBQ0U7QXhFbTVRVjs7QXdFLzRRVTtFQUNFO0F4RWs1UVo7O0F3RXg1UVE7RUFDRTtBeEUyNVFWOztBd0V2NVFVO0VBQ0U7QXhFMDVRWjs7QXdFaDZRUTtFQUNFO0F4RW02UVY7O0F3RS81UVU7RUFDRTtBeEVrNlFaOztBd0V4NlFRO0VBQ0U7QXhFMjZRVjs7QXdFdjZRVTtFQUNFO0F4RTA2UVo7O0F3RXQ2UVE7RUFJUTtFQUdKO0F4RW82UVo7O0F3RTM2UVE7RUFJUTtFQUdKO0F4RXk2UVo7O0F3RWg3UVE7RUFJUTtFQUdKO0F4RTg2UVo7O0F3RXI3UVE7RUFJUTtFQUdKO0F4RW03UVo7O0F3RTE3UVE7RUFJUTtFQUdKO0F4RXc3UVo7O0F3RS83UVE7RUFJUTtFQUdKO0F4RTY3UVo7O0F3RXA4UVE7RUFJUTtFQUdKO0F4RWs4UVo7O0F3RXo4UVE7RUFJUTtFQUdKO0F4RXU4UVo7O0F3RTk4UVE7RUFJUTtFQUdKO0F4RTQ4UVo7O0F3RW45UVE7RUFJUTtFQUdKO0F4RWk5UVo7O0F3RXg5UVE7RUFJUTtFQUdKO0F4RXM5UVo7O0F3RTc5UVE7RUFJUTtFQUdKO0F4RTI5UVo7O0F3RWwrUVE7RUFJUTtFQUdKO0F4RWcrUVo7O0F3RXYrUVE7RUFJUTtFQUdKO0F4RXErUVo7O0F3RXQvUVE7RUFDRTtBeEV5L1FWOztBd0UxL1FRO0VBQ0U7QXhFNi9RVjs7QXdFOS9RUTtFQUNFO0F4RWlnUlY7O0F3RWxnUlE7RUFDRTtBeEVxZ1JWOztBd0V0Z1JRO0VBQ0U7QXhFeWdSVjs7QXdFaGdSUTtFQU9JO0F4RTYvUVo7O0F3RXBnUlE7RUFPSTtBeEVpZ1JaOztBd0V4Z1JRO0VBT0k7QXhFcWdSWjs7QXdFNWdSUTtFQU9JO0F4RXlnUlo7O0F3RWhoUlE7RUFPSTtBeEU2Z1JaOztBd0VwaFJRO0VBT0k7QXhFaWhSWjs7QXdFeGhSUTtFQU9JO0F4RXFoUlo7O0F3RTVoUlE7RUFPSTtBeEV5aFJaOztBd0VoaVJRO0VBT0k7QXhFNmhSWjs7QXdFcGlSUTtFQU9JO0tBQUE7VUFBQTtBeEVpaVJaOztBd0V4aVJRO0VBT0k7S0FBQTtVQUFBO0F4RXFpUlo7O0F3RTVpUlE7RUFPSTtLQUFBO1VBQUE7QXhFeWlSWjs7QXdFaGpSUTtFQU9JO0F4RTZpUlo7O0F3RXBqUlE7RUFPSTtBeEVpalJaOztBd0V4alJRO0VBT0k7QXhFcWpSWjs7QXdFNWpSUTtFQU9JO0F4RXlqUlo7O0F3RWhrUlE7RUFPSTtBeEU2alJaOztBd0Vwa1JRO0VBT0k7QXhFaWtSWjs7QXdFeGtSUTtFQU9JO0F4RXFrUlo7O0F3RTVrUlE7RUFPSTtBeEV5a1JaOztBd0VobFJRO0VBT0k7QXhFNmtSWjs7QXdFcGxSUTtFQU9JO0F4RWlsUlo7O0F3RXhsUlE7RUFPSTtBeEVxbFJaOztBd0U1bFJRO0VBT0k7RUFBQTtBeEUwbFJaOztBd0VqbVJRO0VBT0k7RUFBQTtBeEUrbFJaOztBd0V0bVJRO0VBT0k7RUFBQTtBeEVvbVJaOztBd0UzbVJRO0VBT0k7RUFBQTtBeEV5bVJaOztBd0VoblJRO0VBT0k7RUFBQTtBeEU4bVJaOztBd0VyblJRO0VBT0k7RUFBQTtBeEVtblJaOztBd0UxblJRO0VBT0k7RUFBQTtBeEV3blJaOztBd0UvblJRO0VBT0k7RUFBQTtBeEU2blJaOztBd0Vwb1JRO0VBT0k7RUFBQTtBeEVrb1JaOztBd0V6b1JRO0VBT0k7RUFBQTtBeEV1b1JaOztBd0U5b1JRO0VBT0k7RUFBQTtBeEU0b1JaOztBd0VucFJRO0VBT0k7RUFBQTtBeEVpcFJaOztBd0V4cFJRO0VBT0k7RUFBQTtBeEVzcFJaOztBd0U3cFJRO0VBT0k7RUFBQTtBeEUycFJaOztBd0VscVJRO0VBT0k7RUFBQTtBeEVncVJaOztBd0V2cVJRO0VBT0k7RUFBQTtBeEVxcVJaOztBd0U1cVJRO0VBT0k7RUFBQTtBeEUwcVJaOztBd0VqclJRO0VBT0k7RUFBQTtBeEUrcVJaOztBd0V0clJRO0VBT0k7RUFBQTtBeEVvclJaOztBd0UzclJRO0VBT0k7RUFBQTtBeEV5clJaOztBd0Voc1JRO0VBT0k7RUFBQTtBeEU4clJaOztBd0Vyc1JRO0VBT0k7RUFBQTtBeEVtc1JaOztBd0Uxc1JRO0VBT0k7RUFBQTtBeEV3c1JaOztBd0Uvc1JRO0VBT0k7RUFBQTtBeEU2c1JaOztBd0VwdFJRO0VBT0k7RUFBQTtBeEVrdFJaOztBd0V6dFJRO0VBT0k7RUFBQTtBeEV1dFJaOztBd0U5dFJRO0VBT0k7RUFBQTtBeEU0dFJaOztBd0VudVJRO0VBT0k7RUFBQTtBeEVpdVJaOztBd0V4dVJRO0VBT0k7RUFBQTtBeEVzdVJaOztBd0U3dVJRO0VBT0k7RUFBQTtBeEUydVJaOztBd0VsdlJRO0VBT0k7RUFBQTtBeEVndlJaOztBd0V2dlJRO0VBT0k7RUFBQTtBeEVxdlJaOztBd0U1dlJRO0VBT0k7RUFBQTtBeEUwdlJaOztBd0Vqd1JRO0VBT0k7RUFBQTtBeEUrdlJaOztBd0V0d1JRO0VBT0k7RUFBQTtBeEVvd1JaOztBd0Uzd1JRO0VBT0k7RUFBQTtBeEV5d1JaOztBd0VoeFJRO0VBT0k7QXhFNndSWjs7QXdFcHhSUTtFQU9JO0F4RWl4Ulo7O0F3RXh4UlE7RUFPSTtBeEVxeFJaOztBd0U1eFJRO0VBT0k7QXhFeXhSWjs7QXdFaHlSUTtFQU9JO0F4RTZ4Ulo7O0F3RXB5UlE7RUFPSTtBeEVpeVJaOztBd0V4eVJRO0VBT0k7QXhFcXlSWjs7QWMveVJJO0UwREdJO0lBT0k7RXhFMHlSVjtFd0VqelJNO0lBT0k7RXhFNnlSVjtFd0VwelJNO0lBT0k7RXhFZ3pSVjtFd0V2elJNO0lBT0k7T0FBQTtFeEVtelJWO0V3RTF6Uk07SUFPSTtPQUFBO0V4RXN6UlY7RXdFN3pSTTtJQU9JO09BQUE7RXhFeXpSVjtFd0VoMFJNO0lBT0k7T0FBQTtFeEU0elJWO0V3RW4wUk07SUFPSTtPQUFBO0V4RSt6UlY7RXdFdDBSTTtJQU9JO0V4RWswUlY7RXdFejBSTTtJQU9JO0V4RXEwUlY7RXdFNTBSTTtJQU9JO0V4RXcwUlY7RXdFLzBSTTtJQU9JO0V4RTIwUlY7RXdFbDFSTTtJQU9JO0V4RTgwUlY7RXdFcjFSTTtJQU9JO0V4RWkxUlY7RXdFeDFSTTtJQU9JO0V4RW8xUlY7RXdFMzFSTTtJQU9JO0V4RXUxUlY7RXdFOTFSTTtJQU9JO0V4RTAxUlY7RXdFajJSTTtJQU9JO0V4RTYxUlY7RXdFcDJSTTtJQU9JO0V4RWcyUlY7RXdFdjJSTTtJQU9JO0V4RW0yUlY7RXdFMTJSTTtJQU9JO0V4RXMyUlY7RXdFNzJSTTtJQU9JO0V4RXkyUlY7RXdFaDNSTTtJQU9JO0V4RTQyUlY7RXdFbjNSTTtJQU9JO0V4RSsyUlY7RXdFdDNSTTtJQU9JO0V4RWszUlY7RXdFejNSTTtJQU9JO0V4RXEzUlY7RXdFNTNSTTtJQU9JO0V4RXczUlY7RXdFLzNSTTtJQU9JO0V4RTIzUlY7RXdFbDRSTTtJQU9JO0V4RTgzUlY7RXdFcjRSTTtJQU9JO0V4RWk0UlY7RXdFeDRSTTtJQU9JO0V4RW80UlY7RXdFMzRSTTtJQU9JO0V4RXU0UlY7RXdFOTRSTTtJQU9JO0V4RTA0UlY7RXdFajVSTTtJQU9JO0V4RTY0UlY7RXdFcDVSTTtJQU9JO0V4RWc1UlY7RXdFdjVSTTtJQU9JO0V4RW01UlY7RXdFMTVSTTtJQU9JO0V4RXM1UlY7RXdFNzVSTTtJQU9JO0V4RXk1UlY7RXdFaDZSTTtJQU9JO0V4RTQ1UlY7RXdFbjZSTTtJQU9JO0V4RSs1UlY7RXdFdDZSTTtJQU9JO0V4RWs2UlY7RXdFejZSTTtJQU9JO0V4RXE2UlY7RXdFNTZSTTtJQU9JO0V4RXc2UlY7RXdFLzZSTTtJQU9JO0V4RTI2UlY7RXdFbDdSTTtJQU9JO0V4RTg2UlY7RXdFcjdSTTtJQU9JO0V4RWk3UlY7RXdFeDdSTTtJQU9JO0V4RW83UlY7RXdFMzdSTTtJQU9JO0V4RXU3UlY7RXdFOTdSTTtJQU9JO0V4RTA3UlY7RXdFajhSTTtJQU9JO0V4RTY3UlY7RXdFcDhSTTtJQU9JO0V4RWc4UlY7RXdFdjhSTTtJQU9JO0V4RW04UlY7RXdFMThSTTtJQU9JO0V4RXM4UlY7RXdFNzhSTTtJQU9JO0V4RXk4UlY7RXdFaDlSTTtJQU9JO0V4RTQ4UlY7RXdFbjlSTTtJQU9JO0V4RSs4UlY7RXdFdDlSTTtJQU9JO0V4RWs5UlY7RXdFejlSTTtJQU9JO0V4RXE5UlY7RXdFNTlSTTtJQU9JO0V4RXc5UlY7RXdFLzlSTTtJQU9JO0V4RTI5UlY7RXdFbCtSTTtJQU9JO0V4RTg5UlY7RXdFcitSTTtJQU9JO0V4RWkrUlY7RXdFeCtSTTtJQU9JO0V4RW8rUlY7RXdFMytSTTtJQU9JO0V4RXUrUlY7RXdFOStSTTtJQU9JO0V4RTArUlY7RXdFai9STTtJQU9JO0V4RTYrUlY7RXdFcC9STTtJQU9JO0V4RWcvUlY7RXdFdi9STTtJQU9JO0V4RW0vUlY7RXdFMS9STTtJQU9JO0V4RXMvUlY7RXdFNy9STTtJQU9JO0lBQUE7RXhFMC9SVjtFd0VqZ1NNO0lBT0k7SUFBQTtFeEU4L1JWO0V3RXJnU007SUFPSTtJQUFBO0V4RWtnU1Y7RXdFemdTTTtJQU9JO0lBQUE7RXhFc2dTVjtFd0U3Z1NNO0lBT0k7SUFBQTtFeEUwZ1NWO0V3RWpoU007SUFPSTtJQUFBO0V4RThnU1Y7RXdFcmhTTTtJQU9JO0lBQUE7RXhFa2hTVjtFd0V6aFNNO0lBT0k7SUFBQTtFeEVzaFNWO0V3RTdoU007SUFPSTtJQUFBO0V4RTBoU1Y7RXdFamlTTTtJQU9JO0lBQUE7RXhFOGhTVjtFd0VyaVNNO0lBT0k7SUFBQTtFeEVraVNWO0V3RXppU007SUFPSTtJQUFBO0V4RXNpU1Y7RXdFN2lTTTtJQU9JO0lBQUE7RXhFMGlTVjtFd0VqalNNO0lBT0k7SUFBQTtFeEU4aVNWO0V3RXJqU007SUFPSTtFeEVpalNWO0V3RXhqU007SUFPSTtFeEVvalNWO0V3RTNqU007SUFPSTtFeEV1alNWO0V3RTlqU007SUFPSTtFeEUwalNWO0V3RWprU007SUFPSTtFeEU2alNWO0V3RXBrU007SUFPSTtFeEVna1NWO0V3RXZrU007SUFPSTtFeEVta1NWO0V3RTFrU007SUFPSTtFeEVza1NWO0V3RTdrU007SUFPSTtFeEV5a1NWO0V3RWhsU007SUFPSTtFeEU0a1NWO0V3RW5sU007SUFPSTtFeEUra1NWO0V3RXRsU007SUFPSTtFeEVrbFNWO0V3RXpsU007SUFPSTtFeEVxbFNWO0V3RTVsU007SUFPSTtFeEV3bFNWO0V3RS9sU007SUFPSTtFeEUybFNWO0V3RWxtU007SUFPSTtFeEU4bFNWO0V3RXJtU007SUFPSTtFeEVpbVNWO0V3RXhtU007SUFPSTtFeEVvbVNWO0V3RTNtU007SUFPSTtFeEV1bVNWO0V3RTltU007SUFPSTtFeEUwbVNWO0V3RWpuU007SUFPSTtFeEU2bVNWO0V3RXBuU007SUFPSTtFeEVnblNWO0V3RXZuU007SUFPSTtFeEVtblNWO0V3RTFuU007SUFPSTtFeEVzblNWO0V3RTduU007SUFPSTtFeEV5blNWO0V3RWhvU007SUFPSTtFeEU0blNWO0V3RW5vU007SUFPSTtFeEUrblNWO0V3RXRvU007SUFPSTtFeEVrb1NWO0V3RXpvU007SUFPSTtFeEVxb1NWO0V3RTVvU007SUFPSTtFeEV3b1NWO0V3RS9vU007SUFPSTtFeEUyb1NWO0V3RWxwU007SUFPSTtFeEU4b1NWO0V3RXJwU007SUFPSTtFeEVpcFNWO0V3RXhwU007SUFPSTtFeEVvcFNWO0V3RTNwU007SUFPSTtJQUFBO0V4RXdwU1Y7RXdFL3BTTTtJQU9JO0lBQUE7RXhFNHBTVjtFd0VucVNNO0lBT0k7SUFBQTtFeEVncVNWO0V3RXZxU007SUFPSTtJQUFBO0V4RW9xU1Y7RXdFM3FTTTtJQU9JO0lBQUE7RXhFd3FTVjtFd0UvcVNNO0lBT0k7SUFBQTtFeEU0cVNWO0V3RW5yU007SUFPSTtJQUFBO0V4RWdyU1Y7RXdFdnJTTTtJQU9JO0lBQUE7RXhFb3JTVjtFd0UzclNNO0lBT0k7SUFBQTtFeEV3clNWO0V3RS9yU007SUFPSTtJQUFBO0V4RTRyU1Y7RXdFbnNTTTtJQU9JO0lBQUE7RXhFZ3NTVjtFd0V2c1NNO0lBT0k7SUFBQTtFeEVvc1NWO0V3RTNzU007SUFPSTtFeEV1c1NWO0V3RTlzU007SUFPSTtFeEUwc1NWO0V3RWp0U007SUFPSTtFeEU2c1NWO0V3RXB0U007SUFPSTtFeEVndFNWO0V3RXZ0U007SUFPSTtFeEVtdFNWO0V3RTF0U007SUFPSTtFeEVzdFNWO0V3RTd0U007SUFPSTtFeEV5dFNWO0V3RWh1U007SUFPSTtFeEU0dFNWO0V3RW51U007SUFPSTtFeEUrdFNWO0V3RXR1U007SUFPSTtFeEVrdVNWO0V3RXp1U007SUFPSTtFeEVxdVNWO0V3RTV1U007SUFPSTtFeEV3dVNWO0V3RS91U007SUFPSTtFeEUydVNWO0V3RWx2U007SUFPSTtFeEU4dVNWO0V3RXJ2U007SUFPSTtFeEVpdlNWO0V3RXh2U007SUFPSTtFeEVvdlNWO0V3RTN2U007SUFPSTtFeEV1dlNWO0V3RTl2U007SUFPSTtFeEUwdlNWO0V3RWp3U007SUFPSTtFeEU2dlNWO0V3RXB3U007SUFPSTtFeEVnd1NWO0V3RXZ3U007SUFPSTtFeEVtd1NWO0V3RTF3U007SUFPSTtFeEVzd1NWO0V3RTd3U007SUFPSTtFeEV5d1NWO0V3RWh4U007SUFPSTtFeEU0d1NWO0V3RW54U007SUFPSTtFeEUrd1NWO0V3RXR4U007SUFPSTtFeEVreFNWO0V3RXp4U007SUFPSTtFeEVxeFNWO0V3RTV4U007SUFPSTtFeEV3eFNWO0V3RS94U007SUFPSTtFeEUyeFNWO0V3RWx5U007SUFPSTtFeEU4eFNWO0V3RXJ5U007SUFPSTtFeEVpeVNWO0V3RXh5U007SUFPSTtFeEVveVNWO0V3RTN5U007SUFPSTtFeEV1eVNWO0V3RTl5U007SUFPSTtFeEUweVNWO0V3RWp6U007SUFPSTtFeEU2eVNWO0V3RXB6U007SUFPSTtFeEVnelNWO0V3RXZ6U007SUFPSTtTQUFBO0V4RW16U1Y7RXdFMXpTTTtJQU9JO1NBQUE7RXhFc3pTVjtFd0U3elNNO0lBT0k7U0FBQTtFeEV5elNWO0V3RWgwU007SUFPSTtTQUFBO0V4RTR6U1Y7RXdFbjBTTTtJQU9JO1NBQUE7RXhFK3pTVjtFd0V0MFNNO0lBT0k7U0FBQTtFeEVrMFNWO0V3RXowU007SUFPSTtFeEVxMFNWO0V3RTUwU007SUFPSTtFeEV3MFNWO0V3RS8wU007SUFPSTtFeEUyMFNWO0FBQ0Y7QWN0MVNJO0UwREdJO0lBT0k7RXhFZzFTVjtFd0V2MVNNO0lBT0k7RXhFbTFTVjtFd0UxMVNNO0lBT0k7RXhFczFTVjtFd0U3MVNNO0lBT0k7T0FBQTtFeEV5MVNWO0V3RWgyU007SUFPSTtPQUFBO0V4RTQxU1Y7RXdFbjJTTTtJQU9JO09BQUE7RXhFKzFTVjtFd0V0MlNNO0lBT0k7T0FBQTtFeEVrMlNWO0V3RXoyU007SUFPSTtPQUFBO0V4RXEyU1Y7RXdFNTJTTTtJQU9JO0V4RXcyU1Y7RXdFLzJTTTtJQU9JO0V4RTIyU1Y7RXdFbDNTTTtJQU9JO0V4RTgyU1Y7RXdFcjNTTTtJQU9JO0V4RWkzU1Y7RXdFeDNTTTtJQU9JO0V4RW8zU1Y7RXdFMzNTTTtJQU9JO0V4RXUzU1Y7RXdFOTNTTTtJQU9JO0V4RTAzU1Y7RXdFajRTTTtJQU9JO0V4RTYzU1Y7RXdFcDRTTTtJQU9JO0V4RWc0U1Y7RXdFdjRTTTtJQU9JO0V4RW00U1Y7RXdFMTRTTTtJQU9JO0V4RXM0U1Y7RXdFNzRTTTtJQU9JO0V4RXk0U1Y7RXdFaDVTTTtJQU9JO0V4RTQ0U1Y7RXdFbjVTTTtJQU9JO0V4RSs0U1Y7RXdFdDVTTTtJQU9JO0V4RWs1U1Y7RXdFejVTTTtJQU9JO0V4RXE1U1Y7RXdFNTVTTTtJQU9JO0V4RXc1U1Y7RXdFLzVTTTtJQU9JO0V4RTI1U1Y7RXdFbDZTTTtJQU9JO0V4RTg1U1Y7RXdFcjZTTTtJQU9JO0V4RWk2U1Y7RXdFeDZTTTtJQU9JO0V4RW82U1Y7RXdFMzZTTTtJQU9JO0V4RXU2U1Y7RXdFOTZTTTtJQU9JO0V4RTA2U1Y7RXdFajdTTTtJQU9JO0V4RTY2U1Y7RXdFcDdTTTtJQU9JO0V4RWc3U1Y7RXdFdjdTTTtJQU9JO0V4RW03U1Y7RXdFMTdTTTtJQU9JO0V4RXM3U1Y7RXdFNzdTTTtJQU9JO0V4RXk3U1Y7RXdFaDhTTTtJQU9JO0V4RTQ3U1Y7RXdFbjhTTTtJQU9JO0V4RSs3U1Y7RXdFdDhTTTtJQU9JO0V4RWs4U1Y7RXdFejhTTTtJQU9JO0V4RXE4U1Y7RXdFNThTTTtJQU9JO0V4RXc4U1Y7RXdFLzhTTTtJQU9JO0V4RTI4U1Y7RXdFbDlTTTtJQU9JO0V4RTg4U1Y7RXdFcjlTTTtJQU9JO0V4RWk5U1Y7RXdFeDlTTTtJQU9JO0V4RW85U1Y7RXdFMzlTTTtJQU9JO0V4RXU5U1Y7RXdFOTlTTTtJQU9JO0V4RTA5U1Y7RXdFaitTTTtJQU9JO0V4RTY5U1Y7RXdFcCtTTTtJQU9JO0V4RWcrU1Y7RXdFditTTTtJQU9JO0V4RW0rU1Y7RXdFMStTTTtJQU9JO0V4RXMrU1Y7RXdFNytTTTtJQU9JO0V4RXkrU1Y7RXdFaC9TTTtJQU9JO0V4RTQrU1Y7RXdFbi9TTTtJQU9JO0V4RSsrU1Y7RXdFdC9TTTtJQU9JO0V4RWsvU1Y7RXdFei9TTTtJQU9JO0V4RXEvU1Y7RXdFNS9TTTtJQU9JO0V4RXcvU1Y7RXdFLy9TTTtJQU9JO0V4RTIvU1Y7RXdFbGdUTTtJQU9JO0V4RTgvU1Y7RXdFcmdUTTtJQU9JO0V4RWlnVFY7RXdFeGdUTTtJQU9JO0V4RW9nVFY7RXdFM2dUTTtJQU9JO0V4RXVnVFY7RXdFOWdUTTtJQU9JO0V4RTBnVFY7RXdFamhUTTtJQU9JO0V4RTZnVFY7RXdFcGhUTTtJQU9JO0V4RWdoVFY7RXdFdmhUTTtJQU9JO0V4RW1oVFY7RXdFMWhUTTtJQU9JO0V4RXNoVFY7RXdFN2hUTTtJQU9JO0V4RXloVFY7RXdFaGlUTTtJQU9JO0V4RTRoVFY7RXdFbmlUTTtJQU9JO0lBQUE7RXhFZ2lUVjtFd0V2aVRNO0lBT0k7SUFBQTtFeEVvaVRWO0V3RTNpVE07SUFPSTtJQUFBO0V4RXdpVFY7RXdFL2lUTTtJQU9JO0lBQUE7RXhFNGlUVjtFd0VualRNO0lBT0k7SUFBQTtFeEVnalRWO0V3RXZqVE07SUFPSTtJQUFBO0V4RW9qVFY7RXdFM2pUTTtJQU9JO0lBQUE7RXhFd2pUVjtFd0UvalRNO0lBT0k7SUFBQTtFeEU0alRWO0V3RW5rVE07SUFPSTtJQUFBO0V4RWdrVFY7RXdFdmtUTTtJQU9JO0lBQUE7RXhFb2tUVjtFd0Uza1RNO0lBT0k7SUFBQTtFeEV3a1RWO0V3RS9rVE07SUFPSTtJQUFBO0V4RTRrVFY7RXdFbmxUTTtJQU9JO0lBQUE7RXhFZ2xUVjtFd0V2bFRNO0lBT0k7SUFBQTtFeEVvbFRWO0V3RTNsVE07SUFPSTtFeEV1bFRWO0V3RTlsVE07SUFPSTtFeEUwbFRWO0V3RWptVE07SUFPSTtFeEU2bFRWO0V3RXBtVE07SUFPSTtFeEVnbVRWO0V3RXZtVE07SUFPSTtFeEVtbVRWO0V3RTFtVE07SUFPSTtFeEVzbVRWO0V3RTdtVE07SUFPSTtFeEV5bVRWO0V3RWhuVE07SUFPSTtFeEU0bVRWO0V3RW5uVE07SUFPSTtFeEUrbVRWO0V3RXRuVE07SUFPSTtFeEVrblRWO0V3RXpuVE07SUFPSTtFeEVxblRWO0V3RTVuVE07SUFPSTtFeEV3blRWO0V3RS9uVE07SUFPSTtFeEUyblRWO0V3RWxvVE07SUFPSTtFeEU4blRWO0V3RXJvVE07SUFPSTtFeEVpb1RWO0V3RXhvVE07SUFPSTtFeEVvb1RWO0V3RTNvVE07SUFPSTtFeEV1b1RWO0V3RTlvVE07SUFPSTtFeEUwb1RWO0V3RWpwVE07SUFPSTtFeEU2b1RWO0V3RXBwVE07SUFPSTtFeEVncFRWO0V3RXZwVE07SUFPSTtFeEVtcFRWO0V3RTFwVE07SUFPSTtFeEVzcFRWO0V3RTdwVE07SUFPSTtFeEV5cFRWO0V3RWhxVE07SUFPSTtFeEU0cFRWO0V3RW5xVE07SUFPSTtFeEUrcFRWO0V3RXRxVE07SUFPSTtFeEVrcVRWO0V3RXpxVE07SUFPSTtFeEVxcVRWO0V3RTVxVE07SUFPSTtFeEV3cVRWO0V3RS9xVE07SUFPSTtFeEUycVRWO0V3RWxyVE07SUFPSTtFeEU4cVRWO0V3RXJyVE07SUFPSTtFeEVpclRWO0V3RXhyVE07SUFPSTtFeEVvclRWO0V3RTNyVE07SUFPSTtFeEV1clRWO0V3RTlyVE07SUFPSTtFeEUwclRWO0V3RWpzVE07SUFPSTtJQUFBO0V4RThyVFY7RXdFcnNUTTtJQU9JO0lBQUE7RXhFa3NUVjtFd0V6c1RNO0lBT0k7SUFBQTtFeEVzc1RWO0V3RTdzVE07SUFPSTtJQUFBO0V4RTBzVFY7RXdFanRUTTtJQU9JO0lBQUE7RXhFOHNUVjtFd0VydFRNO0lBT0k7SUFBQTtFeEVrdFRWO0V3RXp0VE07SUFPSTtJQUFBO0V4RXN0VFY7RXdFN3RUTTtJQU9JO0lBQUE7RXhFMHRUVjtFd0VqdVRNO0lBT0k7SUFBQTtFeEU4dFRWO0V3RXJ1VE07SUFPSTtJQUFBO0V4RWt1VFY7RXdFenVUTTtJQU9JO0lBQUE7RXhFc3VUVjtFd0U3dVRNO0lBT0k7SUFBQTtFeEUwdVRWO0V3RWp2VE07SUFPSTtFeEU2dVRWO0V3RXB2VE07SUFPSTtFeEVndlRWO0V3RXZ2VE07SUFPSTtFeEVtdlRWO0V3RTF2VE07SUFPSTtFeEVzdlRWO0V3RTd2VE07SUFPSTtFeEV5dlRWO0V3RWh3VE07SUFPSTtFeEU0dlRWO0V3RW53VE07SUFPSTtFeEUrdlRWO0V3RXR3VE07SUFPSTtFeEVrd1RWO0V3RXp3VE07SUFPSTtFeEVxd1RWO0V3RTV3VE07SUFPSTtFeEV3d1RWO0V3RS93VE07SUFPSTtFeEUyd1RWO0V3RWx4VE07SUFPSTtFeEU4d1RWO0V3RXJ4VE07SUFPSTtFeEVpeFRWO0V3RXh4VE07SUFPSTtFeEVveFRWO0V3RTN4VE07SUFPSTtFeEV1eFRWO0V3RTl4VE07SUFPSTtFeEUweFRWO0V3RWp5VE07SUFPSTtFeEU2eFRWO0V3RXB5VE07SUFPSTtFeEVneVRWO0V3RXZ5VE07SUFPSTtFeEVteVRWO0V3RTF5VE07SUFPSTtFeEVzeVRWO0V3RTd5VE07SUFPSTtFeEV5eVRWO0V3RWh6VE07SUFPSTtFeEU0eVRWO0V3RW56VE07SUFPSTtFeEUreVRWO0V3RXR6VE07SUFPSTtFeEVrelRWO0V3RXp6VE07SUFPSTtFeEVxelRWO0V3RTV6VE07SUFPSTtFeEV3elRWO0V3RS96VE07SUFPSTtFeEUyelRWO0V3RWwwVE07SUFPSTtFeEU4elRWO0V3RXIwVE07SUFPSTtFeEVpMFRWO0V3RXgwVE07SUFPSTtFeEVvMFRWO0V3RTMwVE07SUFPSTtFeEV1MFRWO0V3RTkwVE07SUFPSTtFeEUwMFRWO0V3RWoxVE07SUFPSTtFeEU2MFRWO0V3RXAxVE07SUFPSTtFeEVnMVRWO0V3RXYxVE07SUFPSTtFeEVtMVRWO0V3RTExVE07SUFPSTtFeEVzMVRWO0V3RTcxVE07SUFPSTtTQUFBO0V4RXkxVFY7RXdFaDJUTTtJQU9JO1NBQUE7RXhFNDFUVjtFd0VuMlRNO0lBT0k7U0FBQTtFeEUrMVRWO0V3RXQyVE07SUFPSTtTQUFBO0V4RWsyVFY7RXdFejJUTTtJQU9JO1NBQUE7RXhFcTJUVjtFd0U1MlRNO0lBT0k7U0FBQTtFeEV3MlRWO0V3RS8yVE07SUFPSTtFeEUyMlRWO0V3RWwzVE07SUFPSTtFeEU4MlRWO0V3RXIzVE07SUFPSTtFeEVpM1RWO0FBQ0Y7QWM1M1RJO0UwREdJO0lBT0k7RXhFczNUVjtFd0U3M1RNO0lBT0k7RXhFeTNUVjtFd0VoNFRNO0lBT0k7RXhFNDNUVjtFd0VuNFRNO0lBT0k7T0FBQTtFeEUrM1RWO0V3RXQ0VE07SUFPSTtPQUFBO0V4RWs0VFY7RXdFejRUTTtJQU9JO09BQUE7RXhFcTRUVjtFd0U1NFRNO0lBT0k7T0FBQTtFeEV3NFRWO0V3RS80VE07SUFPSTtPQUFBO0V4RTI0VFY7RXdFbDVUTTtJQU9JO0V4RTg0VFY7RXdFcjVUTTtJQU9JO0V4RWk1VFY7RXdFeDVUTTtJQU9JO0V4RW81VFY7RXdFMzVUTTtJQU9JO0V4RXU1VFY7RXdFOTVUTTtJQU9JO0V4RTA1VFY7RXdFajZUTTtJQU9JO0V4RTY1VFY7RXdFcDZUTTtJQU9JO0V4RWc2VFY7RXdFdjZUTTtJQU9JO0V4RW02VFY7RXdFMTZUTTtJQU9JO0V4RXM2VFY7RXdFNzZUTTtJQU9JO0V4RXk2VFY7RXdFaDdUTTtJQU9JO0V4RTQ2VFY7RXdFbjdUTTtJQU9JO0V4RSs2VFY7RXdFdDdUTTtJQU9JO0V4RWs3VFY7RXdFejdUTTtJQU9JO0V4RXE3VFY7RXdFNTdUTTtJQU9JO0V4RXc3VFY7RXdFLzdUTTtJQU9JO0V4RTI3VFY7RXdFbDhUTTtJQU9JO0V4RTg3VFY7RXdFcjhUTTtJQU9JO0V4RWk4VFY7RXdFeDhUTTtJQU9JO0V4RW84VFY7RXdFMzhUTTtJQU9JO0V4RXU4VFY7RXdFOThUTTtJQU9JO0V4RTA4VFY7RXdFajlUTTtJQU9JO0V4RTY4VFY7RXdFcDlUTTtJQU9JO0V4RWc5VFY7RXdFdjlUTTtJQU9JO0V4RW05VFY7RXdFMTlUTTtJQU9JO0V4RXM5VFY7RXdFNzlUTTtJQU9JO0V4RXk5VFY7RXdFaCtUTTtJQU9JO0V4RTQ5VFY7RXdFbitUTTtJQU9JO0V4RSs5VFY7RXdFdCtUTTtJQU9JO0V4RWsrVFY7RXdFeitUTTtJQU9JO0V4RXErVFY7RXdFNStUTTtJQU9JO0V4RXcrVFY7RXdFLytUTTtJQU9JO0V4RTIrVFY7RXdFbC9UTTtJQU9JO0V4RTgrVFY7RXdFci9UTTtJQU9JO0V4RWkvVFY7RXdFeC9UTTtJQU9JO0V4RW8vVFY7RXdFMy9UTTtJQU9JO0V4RXUvVFY7RXdFOS9UTTtJQU9JO0V4RTAvVFY7RXdFamdVTTtJQU9JO0V4RTYvVFY7RXdFcGdVTTtJQU9JO0V4RWdnVVY7RXdFdmdVTTtJQU9JO0V4RW1nVVY7RXdFMWdVTTtJQU9JO0V4RXNnVVY7RXdFN2dVTTtJQU9JO0V4RXlnVVY7RXdFaGhVTTtJQU9JO0V4RTRnVVY7RXdFbmhVTTtJQU9JO0V4RStnVVY7RXdFdGhVTTtJQU9JO0V4RWtoVVY7RXdFemhVTTtJQU9JO0V4RXFoVVY7RXdFNWhVTTtJQU9JO0V4RXdoVVY7RXdFL2hVTTtJQU9JO0V4RTJoVVY7RXdFbGlVTTtJQU9JO0V4RThoVVY7RXdFcmlVTTtJQU9JO0V4RWlpVVY7RXdFeGlVTTtJQU9JO0V4RW9pVVY7RXdFM2lVTTtJQU9JO0V4RXVpVVY7RXdFOWlVTTtJQU9JO0V4RTBpVVY7RXdFampVTTtJQU9JO0V4RTZpVVY7RXdFcGpVTTtJQU9JO0V4RWdqVVY7RXdFdmpVTTtJQU9JO0V4RW1qVVY7RXdFMWpVTTtJQU9JO0V4RXNqVVY7RXdFN2pVTTtJQU9JO0V4RXlqVVY7RXdFaGtVTTtJQU9JO0V4RTRqVVY7RXdFbmtVTTtJQU9JO0V4RStqVVY7RXdFdGtVTTtJQU9JO0V4RWtrVVY7RXdFemtVTTtJQU9JO0lBQUE7RXhFc2tVVjtFd0U3a1VNO0lBT0k7SUFBQTtFeEUwa1VWO0V3RWpsVU07SUFPSTtJQUFBO0V4RThrVVY7RXdFcmxVTTtJQU9JO0lBQUE7RXhFa2xVVjtFd0V6bFVNO0lBT0k7SUFBQTtFeEVzbFVWO0V3RTdsVU07SUFPSTtJQUFBO0V4RTBsVVY7RXdFam1VTTtJQU9JO0lBQUE7RXhFOGxVVjtFd0VybVVNO0lBT0k7SUFBQTtFeEVrbVVWO0V3RXptVU07SUFPSTtJQUFBO0V4RXNtVVY7RXdFN21VTTtJQU9JO0lBQUE7RXhFMG1VVjtFd0VqblVNO0lBT0k7SUFBQTtFeEU4bVVWO0V3RXJuVU07SUFPSTtJQUFBO0V4RWtuVVY7RXdFem5VTTtJQU9JO0lBQUE7RXhFc25VVjtFd0U3blVNO0lBT0k7SUFBQTtFeEUwblVWO0V3RWpvVU07SUFPSTtFeEU2blVWO0V3RXBvVU07SUFPSTtFeEVnb1VWO0V3RXZvVU07SUFPSTtFeEVtb1VWO0V3RTFvVU07SUFPSTtFeEVzb1VWO0V3RTdvVU07SUFPSTtFeEV5b1VWO0V3RWhwVU07SUFPSTtFeEU0b1VWO0V3RW5wVU07SUFPSTtFeEUrb1VWO0V3RXRwVU07SUFPSTtFeEVrcFVWO0V3RXpwVU07SUFPSTtFeEVxcFVWO0V3RTVwVU07SUFPSTtFeEV3cFVWO0V3RS9wVU07SUFPSTtFeEUycFVWO0V3RWxxVU07SUFPSTtFeEU4cFVWO0V3RXJxVU07SUFPSTtFeEVpcVVWO0V3RXhxVU07SUFPSTtFeEVvcVVWO0V3RTNxVU07SUFPSTtFeEV1cVVWO0V3RTlxVU07SUFPSTtFeEUwcVVWO0V3RWpyVU07SUFPSTtFeEU2cVVWO0V3RXByVU07SUFPSTtFeEVnclVWO0V3RXZyVU07SUFPSTtFeEVtclVWO0V3RTFyVU07SUFPSTtFeEVzclVWO0V3RTdyVU07SUFPSTtFeEV5clVWO0V3RWhzVU07SUFPSTtFeEU0clVWO0V3RW5zVU07SUFPSTtFeEUrclVWO0V3RXRzVU07SUFPSTtFeEVrc1VWO0V3RXpzVU07SUFPSTtFeEVxc1VWO0V3RTVzVU07SUFPSTtFeEV3c1VWO0V3RS9zVU07SUFPSTtFeEUyc1VWO0V3RWx0VU07SUFPSTtFeEU4c1VWO0V3RXJ0VU07SUFPSTtFeEVpdFVWO0V3RXh0VU07SUFPSTtFeEVvdFVWO0V3RTN0VU07SUFPSTtFeEV1dFVWO0V3RTl0VU07SUFPSTtFeEUwdFVWO0V3RWp1VU07SUFPSTtFeEU2dFVWO0V3RXB1VU07SUFPSTtFeEVndVVWO0V3RXZ1VU07SUFPSTtJQUFBO0V4RW91VVY7RXdFM3VVTTtJQU9JO0lBQUE7RXhFd3VVVjtFd0UvdVVNO0lBT0k7SUFBQTtFeEU0dVVWO0V3RW52VU07SUFPSTtJQUFBO0V4RWd2VVY7RXdFdnZVTTtJQU9JO0lBQUE7RXhFb3ZVVjtFd0UzdlVNO0lBT0k7SUFBQTtFeEV3dlVWO0V3RS92VU07SUFPSTtJQUFBO0V4RTR2VVY7RXdFbndVTTtJQU9JO0lBQUE7RXhFZ3dVVjtFd0V2d1VNO0lBT0k7SUFBQTtFeEVvd1VWO0V3RTN3VU07SUFPSTtJQUFBO0V4RXd3VVY7RXdFL3dVTTtJQU9JO0lBQUE7RXhFNHdVVjtFd0VueFVNO0lBT0k7SUFBQTtFeEVneFVWO0V3RXZ4VU07SUFPSTtFeEVteFVWO0V3RTF4VU07SUFPSTtFeEVzeFVWO0V3RTd4VU07SUFPSTtFeEV5eFVWO0V3RWh5VU07SUFPSTtFeEU0eFVWO0V3RW55VU07SUFPSTtFeEUreFVWO0V3RXR5VU07SUFPSTtFeEVreVVWO0V3RXp5VU07SUFPSTtFeEVxeVVWO0V3RTV5VU07SUFPSTtFeEV3eVVWO0V3RS95VU07SUFPSTtFeEUyeVVWO0V3RWx6VU07SUFPSTtFeEU4eVVWO0V3RXJ6VU07SUFPSTtFeEVpelVWO0V3RXh6VU07SUFPSTtFeEVvelVWO0V3RTN6VU07SUFPSTtFeEV1elVWO0V3RTl6VU07SUFPSTtFeEUwelVWO0V3RWowVU07SUFPSTtFeEU2elVWO0V3RXAwVU07SUFPSTtFeEVnMFVWO0V3RXYwVU07SUFPSTtFeEVtMFVWO0V3RTEwVU07SUFPSTtFeEVzMFVWO0V3RTcwVU07SUFPSTtFeEV5MFVWO0V3RWgxVU07SUFPSTtFeEU0MFVWO0V3RW4xVU07SUFPSTtFeEUrMFVWO0V3RXQxVU07SUFPSTtFeEVrMVVWO0V3RXoxVU07SUFPSTtFeEVxMVVWO0V3RTUxVU07SUFPSTtFeEV3MVVWO0V3RS8xVU07SUFPSTtFeEUyMVVWO0V3RWwyVU07SUFPSTtFeEU4MVVWO0V3RXIyVU07SUFPSTtFeEVpMlVWO0V3RXgyVU07SUFPSTtFeEVvMlVWO0V3RTMyVU07SUFPSTtFeEV1MlVWO0V3RTkyVU07SUFPSTtFeEUwMlVWO0V3RWozVU07SUFPSTtFeEU2MlVWO0V3RXAzVU07SUFPSTtFeEVnM1VWO0V3RXYzVU07SUFPSTtFeEVtM1VWO0V3RTEzVU07SUFPSTtFeEVzM1VWO0V3RTczVU07SUFPSTtFeEV5M1VWO0V3RWg0VU07SUFPSTtFeEU0M1VWO0V3RW40VU07SUFPSTtTQUFBO0V4RSszVVY7RXdFdDRVTTtJQU9JO1NBQUE7RXhFazRVVjtFd0V6NFVNO0lBT0k7U0FBQTtFeEVxNFVWO0V3RTU0VU07SUFPSTtTQUFBO0V4RXc0VVY7RXdFLzRVTTtJQU9JO1NBQUE7RXhFMjRVVjtFd0VsNVVNO0lBT0k7U0FBQTtFeEU4NFVWO0V3RXI1VU07SUFPSTtFeEVpNVVWO0V3RXg1VU07SUFPSTtFeEVvNVVWO0V3RTM1VU07SUFPSTtFeEV1NVVWO0FBQ0Y7QWNsNlVJO0UwREdJO0lBT0k7RXhFNDVVVjtFd0VuNlVNO0lBT0k7RXhFKzVVVjtFd0V0NlVNO0lBT0k7RXhFazZVVjtFd0V6NlVNO0lBT0k7T0FBQTtFeEVxNlVWO0V3RTU2VU07SUFPSTtPQUFBO0V4RXc2VVY7RXdFLzZVTTtJQU9JO09BQUE7RXhFMjZVVjtFd0VsN1VNO0lBT0k7T0FBQTtFeEU4NlVWO0V3RXI3VU07SUFPSTtPQUFBO0V4RWk3VVY7RXdFeDdVTTtJQU9JO0V4RW83VVY7RXdFMzdVTTtJQU9JO0V4RXU3VVY7RXdFOTdVTTtJQU9JO0V4RTA3VVY7RXdFajhVTTtJQU9JO0V4RTY3VVY7RXdFcDhVTTtJQU9JO0V4RWc4VVY7RXdFdjhVTTtJQU9JO0V4RW04VVY7RXdFMThVTTtJQU9JO0V4RXM4VVY7RXdFNzhVTTtJQU9JO0V4RXk4VVY7RXdFaDlVTTtJQU9JO0V4RTQ4VVY7RXdFbjlVTTtJQU9JO0V4RSs4VVY7RXdFdDlVTTtJQU9JO0V4RWs5VVY7RXdFejlVTTtJQU9JO0V4RXE5VVY7RXdFNTlVTTtJQU9JO0V4RXc5VVY7RXdFLzlVTTtJQU9JO0V4RTI5VVY7RXdFbCtVTTtJQU9JO0V4RTg5VVY7RXdFcitVTTtJQU9JO0V4RWkrVVY7RXdFeCtVTTtJQU9JO0V4RW8rVVY7RXdFMytVTTtJQU9JO0V4RXUrVVY7RXdFOStVTTtJQU9JO0V4RTArVVY7RXdFai9VTTtJQU9JO0V4RTYrVVY7RXdFcC9VTTtJQU9JO0V4RWcvVVY7RXdFdi9VTTtJQU9JO0V4RW0vVVY7RXdFMS9VTTtJQU9JO0V4RXMvVVY7RXdFNy9VTTtJQU9JO0V4RXkvVVY7RXdFaGdWTTtJQU9JO0V4RTQvVVY7RXdFbmdWTTtJQU9JO0V4RSsvVVY7RXdFdGdWTTtJQU9JO0V4RWtnVlY7RXdFemdWTTtJQU9JO0V4RXFnVlY7RXdFNWdWTTtJQU9JO0V4RXdnVlY7RXdFL2dWTTtJQU9JO0V4RTJnVlY7RXdFbGhWTTtJQU9JO0V4RThnVlY7RXdFcmhWTTtJQU9JO0V4RWloVlY7RXdFeGhWTTtJQU9JO0V4RW9oVlY7RXdFM2hWTTtJQU9JO0V4RXVoVlY7RXdFOWhWTTtJQU9JO0V4RTBoVlY7RXdFamlWTTtJQU9JO0V4RTZoVlY7RXdFcGlWTTtJQU9JO0V4RWdpVlY7RXdFdmlWTTtJQU9JO0V4RW1pVlY7RXdFMWlWTTtJQU9JO0V4RXNpVlY7RXdFN2lWTTtJQU9JO0V4RXlpVlY7RXdFaGpWTTtJQU9JO0V4RTRpVlY7RXdFbmpWTTtJQU9JO0V4RStpVlY7RXdFdGpWTTtJQU9JO0V4RWtqVlY7RXdFempWTTtJQU9JO0V4RXFqVlY7RXdFNWpWTTtJQU9JO0V4RXdqVlY7RXdFL2pWTTtJQU9JO0V4RTJqVlY7RXdFbGtWTTtJQU9JO0V4RThqVlY7RXdFcmtWTTtJQU9JO0V4RWlrVlY7RXdFeGtWTTtJQU9JO0V4RW9rVlY7RXdFM2tWTTtJQU9JO0V4RXVrVlY7RXdFOWtWTTtJQU9JO0V4RTBrVlY7RXdFamxWTTtJQU9JO0V4RTZrVlY7RXdFcGxWTTtJQU9JO0V4RWdsVlY7RXdFdmxWTTtJQU9JO0V4RW1sVlY7RXdFMWxWTTtJQU9JO0V4RXNsVlY7RXdFN2xWTTtJQU9JO0V4RXlsVlY7RXdFaG1WTTtJQU9JO0V4RTRsVlY7RXdFbm1WTTtJQU9JO0V4RStsVlY7RXdFdG1WTTtJQU9JO0V4RWttVlY7RXdFem1WTTtJQU9JO0V4RXFtVlY7RXdFNW1WTTtJQU9JO0V4RXdtVlY7RXdFL21WTTtJQU9JO0lBQUE7RXhFNG1WVjtFd0VublZNO0lBT0k7SUFBQTtFeEVnblZWO0V3RXZuVk07SUFPSTtJQUFBO0V4RW9uVlY7RXdFM25WTTtJQU9JO0lBQUE7RXhFd25WVjtFd0UvblZNO0lBT0k7SUFBQTtFeEU0blZWO0V3RW5vVk07SUFPSTtJQUFBO0V4RWdvVlY7RXdFdm9WTTtJQU9JO0lBQUE7RXhFb29WVjtFd0Uzb1ZNO0lBT0k7SUFBQTtFeEV3b1ZWO0V3RS9vVk07SUFPSTtJQUFBO0V4RTRvVlY7RXdFbnBWTTtJQU9JO0lBQUE7RXhFZ3BWVjtFd0V2cFZNO0lBT0k7SUFBQTtFeEVvcFZWO0V3RTNwVk07SUFPSTtJQUFBO0V4RXdwVlY7RXdFL3BWTTtJQU9JO0lBQUE7RXhFNHBWVjtFd0VucVZNO0lBT0k7SUFBQTtFeEVncVZWO0V3RXZxVk07SUFPSTtFeEVtcVZWO0V3RTFxVk07SUFPSTtFeEVzcVZWO0V3RTdxVk07SUFPSTtFeEV5cVZWO0V3RWhyVk07SUFPSTtFeEU0cVZWO0V3RW5yVk07SUFPSTtFeEUrcVZWO0V3RXRyVk07SUFPSTtFeEVrclZWO0V3RXpyVk07SUFPSTtFeEVxclZWO0V3RTVyVk07SUFPSTtFeEV3clZWO0V3RS9yVk07SUFPSTtFeEUyclZWO0V3RWxzVk07SUFPSTtFeEU4clZWO0V3RXJzVk07SUFPSTtFeEVpc1ZWO0V3RXhzVk07SUFPSTtFeEVvc1ZWO0V3RTNzVk07SUFPSTtFeEV1c1ZWO0V3RTlzVk07SUFPSTtFeEUwc1ZWO0V3RWp0Vk07SUFPSTtFeEU2c1ZWO0V3RXB0Vk07SUFPSTtFeEVndFZWO0V3RXZ0Vk07SUFPSTtFeEVtdFZWO0V3RTF0Vk07SUFPSTtFeEVzdFZWO0V3RTd0Vk07SUFPSTtFeEV5dFZWO0V3RWh1Vk07SUFPSTtFeEU0dFZWO0V3RW51Vk07SUFPSTtFeEUrdFZWO0V3RXR1Vk07SUFPSTtFeEVrdVZWO0V3RXp1Vk07SUFPSTtFeEVxdVZWO0V3RTV1Vk07SUFPSTtFeEV3dVZWO0V3RS91Vk07SUFPSTtFeEUydVZWO0V3RWx2Vk07SUFPSTtFeEU4dVZWO0V3RXJ2Vk07SUFPSTtFeEVpdlZWO0V3RXh2Vk07SUFPSTtFeEVvdlZWO0V3RTN2Vk07SUFPSTtFeEV1dlZWO0V3RTl2Vk07SUFPSTtFeEUwdlZWO0V3RWp3Vk07SUFPSTtFeEU2dlZWO0V3RXB3Vk07SUFPSTtFeEVnd1ZWO0V3RXZ3Vk07SUFPSTtFeEVtd1ZWO0V3RTF3Vk07SUFPSTtFeEVzd1ZWO0V3RTd3Vk07SUFPSTtJQUFBO0V4RTB3VlY7RXdFanhWTTtJQU9JO0lBQUE7RXhFOHdWVjtFd0VyeFZNO0lBT0k7SUFBQTtFeEVreFZWO0V3RXp4Vk07SUFPSTtJQUFBO0V4RXN4VlY7RXdFN3hWTTtJQU9JO0lBQUE7RXhFMHhWVjtFd0VqeVZNO0lBT0k7SUFBQTtFeEU4eFZWO0V3RXJ5Vk07SUFPSTtJQUFBO0V4RWt5VlY7RXdFenlWTTtJQU9JO0lBQUE7RXhFc3lWVjtFd0U3eVZNO0lBT0k7SUFBQTtFeEUweVZWO0V3RWp6Vk07SUFPSTtJQUFBO0V4RTh5VlY7RXdFcnpWTTtJQU9JO0lBQUE7RXhFa3pWVjtFd0V6elZNO0lBT0k7SUFBQTtFeEVzelZWO0V3RTd6Vk07SUFPSTtFeEV5elZWO0V3RWgwVk07SUFPSTtFeEU0elZWO0V3RW4wVk07SUFPSTtFeEUrelZWO0V3RXQwVk07SUFPSTtFeEVrMFZWO0V3RXowVk07SUFPSTtFeEVxMFZWO0V3RTUwVk07SUFPSTtFeEV3MFZWO0V3RS8wVk07SUFPSTtFeEUyMFZWO0V3RWwxVk07SUFPSTtFeEU4MFZWO0V3RXIxVk07SUFPSTtFeEVpMVZWO0V3RXgxVk07SUFPSTtFeEVvMVZWO0V3RTMxVk07SUFPSTtFeEV1MVZWO0V3RTkxVk07SUFPSTtFeEUwMVZWO0V3RWoyVk07SUFPSTtFeEU2MVZWO0V3RXAyVk07SUFPSTtFeEVnMlZWO0V3RXYyVk07SUFPSTtFeEVtMlZWO0V3RTEyVk07SUFPSTtFeEVzMlZWO0V3RTcyVk07SUFPSTtFeEV5MlZWO0V3RWgzVk07SUFPSTtFeEU0MlZWO0V3RW4zVk07SUFPSTtFeEUrMlZWO0V3RXQzVk07SUFPSTtFeEVrM1ZWO0V3RXozVk07SUFPSTtFeEVxM1ZWO0V3RTUzVk07SUFPSTtFeEV3M1ZWO0V3RS8zVk07SUFPSTtFeEUyM1ZWO0V3RWw0Vk07SUFPSTtFeEU4M1ZWO0V3RXI0Vk07SUFPSTtFeEVpNFZWO0V3RXg0Vk07SUFPSTtFeEVvNFZWO0V3RTM0Vk07SUFPSTtFeEV1NFZWO0V3RTk0Vk07SUFPSTtFeEUwNFZWO0V3RWo1Vk07SUFPSTtFeEU2NFZWO0V3RXA1Vk07SUFPSTtFeEVnNVZWO0V3RXY1Vk07SUFPSTtFeEVtNVZWO0V3RTE1Vk07SUFPSTtFeEVzNVZWO0V3RTc1Vk07SUFPSTtFeEV5NVZWO0V3RWg2Vk07SUFPSTtFeEU0NVZWO0V3RW42Vk07SUFPSTtFeEUrNVZWO0V3RXQ2Vk07SUFPSTtFeEVrNlZWO0V3RXo2Vk07SUFPSTtTQUFBO0V4RXE2VlY7RXdFNTZWTTtJQU9JO1NBQUE7RXhFdzZWVjtFd0UvNlZNO0lBT0k7U0FBQTtFeEUyNlZWO0V3RWw3Vk07SUFPSTtTQUFBO0V4RTg2VlY7RXdFcjdWTTtJQU9JO1NBQUE7RXhFaTdWVjtFd0V4N1ZNO0lBT0k7U0FBQTtFeEVvN1ZWO0V3RTM3Vk07SUFPSTtFeEV1N1ZWO0V3RTk3Vk07SUFPSTtFeEUwN1ZWO0V3RWo4Vk07SUFPSTtFeEU2N1ZWO0FBQ0Y7QWN4OFZJO0UwREdJO0lBT0k7RXhFazhWVjtFd0V6OFZNO0lBT0k7RXhFcThWVjtFd0U1OFZNO0lBT0k7RXhFdzhWVjtFd0UvOFZNO0lBT0k7T0FBQTtFeEUyOFZWO0V3RWw5Vk07SUFPSTtPQUFBO0V4RTg4VlY7RXdFcjlWTTtJQU9JO09BQUE7RXhFaTlWVjtFd0V4OVZNO0lBT0k7T0FBQTtFeEVvOVZWO0V3RTM5Vk07SUFPSTtPQUFBO0V4RXU5VlY7RXdFOTlWTTtJQU9JO0V4RTA5VlY7RXdFaitWTTtJQU9JO0V4RTY5VlY7RXdFcCtWTTtJQU9JO0V4RWcrVlY7RXdFditWTTtJQU9JO0V4RW0rVlY7RXdFMStWTTtJQU9JO0V4RXMrVlY7RXdFNytWTTtJQU9JO0V4RXkrVlY7RXdFaC9WTTtJQU9JO0V4RTQrVlY7RXdFbi9WTTtJQU9JO0V4RSsrVlY7RXdFdC9WTTtJQU9JO0V4RWsvVlY7RXdFei9WTTtJQU9JO0V4RXEvVlY7RXdFNS9WTTtJQU9JO0V4RXcvVlY7RXdFLy9WTTtJQU9JO0V4RTIvVlY7RXdFbGdXTTtJQU9JO0V4RTgvVlY7RXdFcmdXTTtJQU9JO0V4RWlnV1Y7RXdFeGdXTTtJQU9JO0V4RW9nV1Y7RXdFM2dXTTtJQU9JO0V4RXVnV1Y7RXdFOWdXTTtJQU9JO0V4RTBnV1Y7RXdFamhXTTtJQU9JO0V4RTZnV1Y7RXdFcGhXTTtJQU9JO0V4RWdoV1Y7RXdFdmhXTTtJQU9JO0V4RW1oV1Y7RXdFMWhXTTtJQU9JO0V4RXNoV1Y7RXdFN2hXTTtJQU9JO0V4RXloV1Y7RXdFaGlXTTtJQU9JO0V4RTRoV1Y7RXdFbmlXTTtJQU9JO0V4RStoV1Y7RXdFdGlXTTtJQU9JO0V4RWtpV1Y7RXdFemlXTTtJQU9JO0V4RXFpV1Y7RXdFNWlXTTtJQU9JO0V4RXdpV1Y7RXdFL2lXTTtJQU9JO0V4RTJpV1Y7RXdFbGpXTTtJQU9JO0V4RThpV1Y7RXdFcmpXTTtJQU9JO0V4RWlqV1Y7RXdFeGpXTTtJQU9JO0V4RW9qV1Y7RXdFM2pXTTtJQU9JO0V4RXVqV1Y7RXdFOWpXTTtJQU9JO0V4RTBqV1Y7RXdFamtXTTtJQU9JO0V4RTZqV1Y7RXdFcGtXTTtJQU9JO0V4RWdrV1Y7RXdFdmtXTTtJQU9JO0V4RW1rV1Y7RXdFMWtXTTtJQU9JO0V4RXNrV1Y7RXdFN2tXTTtJQU9JO0V4RXlrV1Y7RXdFaGxXTTtJQU9JO0V4RTRrV1Y7RXdFbmxXTTtJQU9JO0V4RStrV1Y7RXdFdGxXTTtJQU9JO0V4RWtsV1Y7RXdFemxXTTtJQU9JO0V4RXFsV1Y7RXdFNWxXTTtJQU9JO0V4RXdsV1Y7RXdFL2xXTTtJQU9JO0V4RTJsV1Y7RXdFbG1XTTtJQU9JO0V4RThsV1Y7RXdFcm1XTTtJQU9JO0V4RWltV1Y7RXdFeG1XTTtJQU9JO0V4RW9tV1Y7RXdFM21XTTtJQU9JO0V4RXVtV1Y7RXdFOW1XTTtJQU9JO0V4RTBtV1Y7RXdFam5XTTtJQU9JO0V4RTZtV1Y7RXdFcG5XTTtJQU9JO0V4RWduV1Y7RXdFdm5XTTtJQU9JO0V4RW1uV1Y7RXdFMW5XTTtJQU9JO0V4RXNuV1Y7RXdFN25XTTtJQU9JO0V4RXluV1Y7RXdFaG9XTTtJQU9JO0V4RTRuV1Y7RXdFbm9XTTtJQU9JO0V4RStuV1Y7RXdFdG9XTTtJQU9JO0V4RWtvV1Y7RXdFem9XTTtJQU9JO0V4RXFvV1Y7RXdFNW9XTTtJQU9JO0V4RXdvV1Y7RXdFL29XTTtJQU9JO0V4RTJvV1Y7RXdFbHBXTTtJQU9JO0V4RThvV1Y7RXdFcnBXTTtJQU9JO0lBQUE7RXhFa3BXVjtFd0V6cFdNO0lBT0k7SUFBQTtFeEVzcFdWO0V3RTdwV007SUFPSTtJQUFBO0V4RTBwV1Y7RXdFanFXTTtJQU9JO0lBQUE7RXhFOHBXVjtFd0VycVdNO0lBT0k7SUFBQTtFeEVrcVdWO0V3RXpxV007SUFPSTtJQUFBO0V4RXNxV1Y7RXdFN3FXTTtJQU9JO0lBQUE7RXhFMHFXVjtFd0VqcldNO0lBT0k7SUFBQTtFeEU4cVdWO0V3RXJyV007SUFPSTtJQUFBO0V4RWtyV1Y7RXdFenJXTTtJQU9JO0lBQUE7RXhFc3JXVjtFd0U3cldNO0lBT0k7SUFBQTtFeEUwcldWO0V3RWpzV007SUFPSTtJQUFBO0V4RThyV1Y7RXdFcnNXTTtJQU9JO0lBQUE7RXhFa3NXVjtFd0V6c1dNO0lBT0k7SUFBQTtFeEVzc1dWO0V3RTdzV007SUFPSTtFeEV5c1dWO0V3RWh0V007SUFPSTtFeEU0c1dWO0V3RW50V007SUFPSTtFeEUrc1dWO0V3RXR0V007SUFPSTtFeEVrdFdWO0V3RXp0V007SUFPSTtFeEVxdFdWO0V3RTV0V007SUFPSTtFeEV3dFdWO0V3RS90V007SUFPSTtFeEUydFdWO0V3RWx1V007SUFPSTtFeEU4dFdWO0V3RXJ1V007SUFPSTtFeEVpdVdWO0V3RXh1V007SUFPSTtFeEVvdVdWO0V3RTN1V007SUFPSTtFeEV1dVdWO0V3RTl1V007SUFPSTtFeEUwdVdWO0V3RWp2V007SUFPSTtFeEU2dVdWO0V3RXB2V007SUFPSTtFeEVndldWO0V3RXZ2V007SUFPSTtFeEVtdldWO0V3RTF2V007SUFPSTtFeEVzdldWO0V3RTd2V007SUFPSTtFeEV5dldWO0V3RWh3V007SUFPSTtFeEU0dldWO0V3RW53V007SUFPSTtFeEUrdldWO0V3RXR3V007SUFPSTtFeEVrd1dWO0V3RXp3V007SUFPSTtFeEVxd1dWO0V3RTV3V007SUFPSTtFeEV3d1dWO0V3RS93V007SUFPSTtFeEUyd1dWO0V3RWx4V007SUFPSTtFeEU4d1dWO0V3RXJ4V007SUFPSTtFeEVpeFdWO0V3RXh4V007SUFPSTtFeEVveFdWO0V3RTN4V007SUFPSTtFeEV1eFdWO0V3RTl4V007SUFPSTtFeEUweFdWO0V3RWp5V007SUFPSTtFeEU2eFdWO0V3RXB5V007SUFPSTtFeEVneVdWO0V3RXZ5V007SUFPSTtFeEVteVdWO0V3RTF5V007SUFPSTtFeEVzeVdWO0V3RTd5V007SUFPSTtFeEV5eVdWO0V3RWh6V007SUFPSTtFeEU0eVdWO0V3RW56V007SUFPSTtJQUFBO0V4RWd6V1Y7RXdFdnpXTTtJQU9JO0lBQUE7RXhFb3pXVjtFd0UzeldNO0lBT0k7SUFBQTtFeEV3eldWO0V3RS96V007SUFPSTtJQUFBO0V4RTR6V1Y7RXdFbjBXTTtJQU9JO0lBQUE7RXhFZzBXVjtFd0V2MFdNO0lBT0k7SUFBQTtFeEVvMFdWO0V3RTMwV007SUFPSTtJQUFBO0V4RXcwV1Y7RXdFLzBXTTtJQU9JO0lBQUE7RXhFNDBXVjtFd0VuMVdNO0lBT0k7SUFBQTtFeEVnMVdWO0V3RXYxV007SUFPSTtJQUFBO0V4RW8xV1Y7RXdFMzFXTTtJQU9JO0lBQUE7RXhFdzFXVjtFd0UvMVdNO0lBT0k7SUFBQTtFeEU0MVdWO0V3RW4yV007SUFPSTtFeEUrMVdWO0V3RXQyV007SUFPSTtFeEVrMldWO0V3RXoyV007SUFPSTtFeEVxMldWO0V3RTUyV007SUFPSTtFeEV3MldWO0V3RS8yV007SUFPSTtFeEUyMldWO0V3RWwzV007SUFPSTtFeEU4MldWO0V3RXIzV007SUFPSTtFeEVpM1dWO0V3RXgzV007SUFPSTtFeEVvM1dWO0V3RTMzV007SUFPSTtFeEV1M1dWO0V3RTkzV007SUFPSTtFeEUwM1dWO0V3RWo0V007SUFPSTtFeEU2M1dWO0V3RXA0V007SUFPSTtFeEVnNFdWO0V3RXY0V007SUFPSTtFeEVtNFdWO0V3RTE0V007SUFPSTtFeEVzNFdWO0V3RTc0V007SUFPSTtFeEV5NFdWO0V3RWg1V007SUFPSTtFeEU0NFdWO0V3RW41V007SUFPSTtFeEUrNFdWO0V3RXQ1V007SUFPSTtFeEVrNVdWO0V3RXo1V007SUFPSTtFeEVxNVdWO0V3RTU1V007SUFPSTtFeEV3NVdWO0V3RS81V007SUFPSTtFeEUyNVdWO0V3RWw2V007SUFPSTtFeEU4NVdWO0V3RXI2V007SUFPSTtFeEVpNldWO0V3RXg2V007SUFPSTtFeEVvNldWO0V3RTM2V007SUFPSTtFeEV1NldWO0V3RTk2V007SUFPSTtFeEUwNldWO0V3RWo3V007SUFPSTtFeEU2NldWO0V3RXA3V007SUFPSTtFeEVnN1dWO0V3RXY3V007SUFPSTtFeEVtN1dWO0V3RTE3V007SUFPSTtFeEVzN1dWO0V3RTc3V007SUFPSTtFeEV5N1dWO0V3RWg4V007SUFPSTtFeEU0N1dWO0V3RW44V007SUFPSTtFeEUrN1dWO0V3RXQ4V007SUFPSTtFeEVrOFdWO0V3RXo4V007SUFPSTtFeEVxOFdWO0V3RTU4V007SUFPSTtFeEV3OFdWO0V3RS84V007SUFPSTtTQUFBO0V4RTI4V1Y7RXdFbDlXTTtJQU9JO1NBQUE7RXhFODhXVjtFd0VyOVdNO0lBT0k7U0FBQTtFeEVpOVdWO0V3RXg5V007SUFPSTtTQUFBO0V4RW85V1Y7RXdFMzlXTTtJQU9JO1NBQUE7RXhFdTlXVjtFd0U5OVdNO0lBT0k7U0FBQTtFeEUwOVdWO0V3RWorV007SUFPSTtFeEU2OVdWO0V3RXArV007SUFPSTtFeEVnK1dWO0V3RXYrV007SUFPSTtFeEVtK1dWO0FBQ0Y7QXlFMWhYQTtFRCtDUTtJQU9JO0V4RXcrV1Y7RXdFLytXTTtJQU9JO0V4RTIrV1Y7RXdFbC9XTTtJQU9JO0V4RTgrV1Y7RXdFci9XTTtJQU9JO0V4RWkvV1Y7QUFDRjtBeUVyaFhBO0VENEJRO0lBT0k7RXhFcy9XVjtFd0U3L1dNO0lBT0k7RXhFeS9XVjtFd0VoZ1hNO0lBT0k7RXhFNC9XVjtFd0VuZ1hNO0lBT0k7RXhFKy9XVjtFd0V0Z1hNO0lBT0k7RXhFa2dYVjtFd0V6Z1hNO0lBT0k7RXhFcWdYVjtFd0U1Z1hNO0lBT0k7RXhFd2dYVjtFd0UvZ1hNO0lBT0k7RXhFMmdYVjtFd0VsaFhNO0lBT0k7RXhFOGdYVjtFd0VyaFhNO0lBT0k7RXhFaWhYVjtFd0V4aFhNO0lBT0k7RXhFb2hYVjtBQUNGO0FBMWxYQTtBMEVNQTs7Ozs7a0NBQUE7QUFPQTtFQUNJO0VBQ0E7RUFDQSw0U0FDSTtFQUtKO0VBQ0E7RUFDQTtBMUVpbFhKO0EwRS9rWEE7OzRCQUFBO0FBR0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUVpbFhKOztBMEUva1hBOzs0QkFBQTtBQUdBO0FBQ0E7RUFDSTtBMUVrbFhKOztBMEVobFhBO0VBQ0k7QTFFbWxYSjs7QTBFamxYQTtBQUNBO0VBQ0k7QTFFb2xYSjs7QTBFbGxYQTtFQUNJO0ExRXFsWEo7O0EwRW5sWEE7O3NDQUFBO0FBR0E7O0VBRUk7RUFDQTtBMUVzbFhKOztBMEVwbFhBO0VBQ0k7QTFFdWxYSjs7QTBFcmxYQTs7d0NBQUE7QUFHQTtFQUNJO0VBQ0E7QTFFd2xYSjs7QTBFdGxYQTtFQUNJO0VBQ0E7RUFDQTtBMUV5bFhKOztBMEV2bFhBO0VBQ0k7RUFDQTtBMUUwbFhKOztBMEV4bFhBOzs0QkFBQTtBQUdBO0VBR0k7QTFFMmxYSjtBMEV6a1hBO0VBQ0k7SUFLSTtFMUU0bFhOO0UwRTFsWEU7SUFLSTtFMUU0bFhOO0FBQ0Y7QTBFMWxYQTs7NEJBQUE7QUFHQTtFQUNJO0VBS0E7QTFFNGxYSjs7QTBFMWxYQTtFQUNJO0VBS0E7QTFFNmxYSjs7QTBFM2xYQTtFQUNJO0VBS0E7QTFFOGxYSjs7QTBFNWxYQTtFQUNJO0VBS0E7QTFFK2xYSjs7QTBFN2xYQTtFQUNJO0VBS0E7QTFFZ21YSjs7QTBFOWxYQTs7NEJBQUE7QUFJQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EwRTdsWEE7RUFDSTtBMUVnbVhKOztBMEU3bFhBO0VBQ0k7QTFFZ21YSjs7QTBFN2xYQTtFQUNJO0ExRWdtWEo7O0EyRTF5YkE7Ozs7OztDQUFBO0FBUUE7RUFDSTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7Ozs7R0FBQTtFQU1BO0VBRUE7Ozs7R0FBQTtFQU1BOzs7O0dBQUE7RUFNQTs7OztHQUFBO0VBTUE7Ozs7R0FBQTtFQU1BOzs7O0dBQUE7RUFNQTs7OztHQUFBO0EzRXd4Yko7QTJFbHhiSTtFQUNJO0EzRW94YlI7QTJFanhiSTtFQUNJO0EzRW14YlI7QTJFaHhiSTtFQUNJO0EzRWt4YlI7O0EyRTl3YkE7RUFDSTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBRUE7Ozs7R0FBQTtFQU1BO0VBRUE7QTNFcXdiSjs7QTRFdDViSTtFQUNFO0E1RXk1Yk47O0E0RTE1Ykk7RUFDRTtBNUU2NWJOOztBNEU5NWJJO0VBQ0U7QTVFaTZiTjs7QTRFbDZiSTtFQUNFO0E1RXE2Yk47O0E0RXQ2Ykk7RUFDRTtBNUV5NmJOOztBNEUxNmJJO0VBQ0U7QTVFNjZiTjs7QTRFOTZiSTtFQUNFO0E1RWk3Yk47O0E0RWw3Ykk7RUFDRTtBNUVxN2JOOztBNEV0N2JJO0VBQ0U7QTVFeTdiTjs7QTRFMTdiSTtFQUNFO0E1RTY3Yk47O0E0RTk3Ykk7RUFDRTtBNUVpOGJOOztBNEVsOGJJO0VBQ0U7QTVFcThiTjs7QTRFdDhiSTtFQUNFO0E1RXk4Yk47O0E0RTE4Ykk7RUFDRTtBNUU2OGJOOztBNEU5OGJJO0VBQ0U7QTVFaTliTjs7QTRFbDliSTtFQUNFO0E1RXE5Yk47O0E0RXQ5Ykk7RUFDRTtBNUV5OWJOOztBNEUxOWJJO0VBQ0U7QTVFNjliTjs7QTRFOTliSTtFQUNFO0E1RWkrYk47O0E0RWwrYkk7RUFDRTtBNUVxK2JOOztBNEV0K2JJO0VBQ0U7QTVFeStiTjs7QTRFMStiSTtFQUNFO0E1RTYrYk47O0E0RTkrYkk7RUFDRTtBNUVpL2JOOztBNEVsL2JJO0VBQ0U7QTVFcS9iTjs7QTRFdC9iSTtFQUNFO0E1RXkvYk47O0E0RTEvYkk7RUFDRTtBNUU2L2JOOztBNEU5L2JJO0VBQ0U7QTVFaWdjTjs7QTRFbGdjSTtFQUNFO0E1RXFnY047O0E0RXRnY0k7RUFDRTtBNUV5Z2NOOztBNEUxZ2NJO0VBQ0U7QTVFNmdjTjs7QTRFOWdjSTtFQUNFO0E1RWloY047O0E0RWxoY0k7RUFDRTtBNUVxaGNOOztBNEV0aGNJO0VBQ0U7QTVFeWhjTjs7QTRFMWhjSTtFQUNFO0E1RTZoY047O0E0RTloY0k7RUFDRTtBNUVpaWNOOztBNEVsaWNJO0VBQ0U7QTVFcWljTjs7QTRFdGljSTtFQUNFO0E1RXlpY047O0E0RTFpY0k7RUFDRTtBNUU2aWNOOztBNEU5aWNJO0VBQ0U7QTVFaWpjTjs7QTRFbGpjSTtFQUNFO0E1RXFqY047O0E0RXRqY0k7RUFDRTtBNUV5amNOOztBNEUxamNJO0VBQ0U7QTVFNmpjTjs7QTRFOWpjSTtFQUNFO0E1RWlrY047O0E0RWxrY0k7RUFDRTtBNUVxa2NOOztBNEV0a2NJO0VBQ0U7QTVFeWtjTjs7QTRFMWtjSTtFQUNFO0E1RTZrY047O0E0RTlrY0k7RUFDRTtBNUVpbGNOOztBNEVsbGNJO0VBQ0U7QTVFcWxjTjs7QTRFdGxjSTtFQUNFO0E1RXlsY047O0E0RTFsY0k7RUFDRTtBNUU2bGNOOztBNEU5bGNJO0VBQ0U7QTVFaW1jTjs7QTRFbG1jSTtFQUNFO0E1RXFtY047O0E0RXRtY0k7RUFDRTtBNUV5bWNOOztBNEUxbWNJO0VBQ0U7QTVFNm1jTjs7QTRFOW1jSTtFQUNFO0E1RWluY047O0E0RWxuY0k7RUFDRTtBNUVxbmNOOztBNEV0bmNJO0VBQ0U7QTVFeW5jTjs7QTRFMW5jSTtFQUNFO0E1RTZuY047O0E0RTluY0k7RUFDRTtBNUVpb2NOOztBNEVsb2NJO0VBQ0U7QTVFcW9jTjs7QTRFdG9jSTtFQUNFO0E1RXlvY047O0E0RTFvY0k7RUFDRTtBNUU2b2NOOztBNEU5b2NJO0VBQ0U7QTVFaXBjTjs7QTRFbHBjSTtFQUNFO0E1RXFwY047O0E0RXRwY0k7RUFDRTtBNUV5cGNOOztBNEUxcGNJO0VBQ0U7QTVFNnBjTjs7QTRFOXBjSTtFQUNFO0E1RWlxY047O0E0RWxxY0k7RUFDRTtBNUVxcWNOOztBNEV0cWNJO0VBQ0U7QTVFeXFjTjs7QTRFMXFjSTtFQUNFO0E1RTZxY047O0E0RTlxY0k7RUFDRTtBNUVpcmNOOztBNEVscmNJO0VBQ0U7QTVFcXJjTjs7QTRFdHJjSTtFQUNFO0E1RXlyY047O0E0RTFyY0k7RUFDRTtBNUU2cmNOOztBNEU5cmNJO0VBQ0U7QTVFaXNjTjs7QTRFbHNjSTtFQUNFO0E1RXFzY047O0E0RXRzY0k7RUFDRTtBNUV5c2NOOztBNEUxc2NJO0VBQ0U7QTVFNnNjTjs7QTRFOXNjSTtFQUNFO0E1RWl0Y047O0E0RWx0Y0k7RUFDRTtBNUVxdGNOOztBNEV0dGNJO0VBQ0U7QTVFeXRjTjs7QTRFMXRjSTtFQUNFO0E1RTZ0Y047O0E0RTl0Y0k7RUFDRTtBNUVpdWNOOztBNEVsdWNJO0VBQ0U7QTVFcXVjTjs7QTRFdHVjSTtFQUNFO0E1RXl1Y047O0E0RTF1Y0k7RUFDRTtBNUU2dWNOOztBNEU5dWNJO0VBQ0U7QTVFaXZjTjs7QTRFbHZjSTtFQUNFO0E1RXF2Y047O0E0RXR2Y0k7RUFDRTtBNUV5dmNOOztBNEUxdmNJO0VBQ0U7QTVFNnZjTjs7QTRFOXZjSTtFQUNFO0E1RWl3Y047O0E0RWx3Y0k7RUFDRTtBNUVxd2NOOztBNEV0d2NJO0VBQ0U7QTVFeXdjTjs7QTRFMXdjSTtFQUNFO0E1RTZ3Y047O0E0RTl3Y0k7RUFDRTtBNUVpeGNOOztBNEVseGNJO0VBQ0U7QTVFcXhjTjs7QTRFdHhjSTtFQUNFO0E1RXl4Y047O0E0RTF4Y0k7RUFDRTtBNUU2eGNOOztBNEU5eGNJO0VBQ0U7QTVFaXljTjs7QTRFbHljSTtFQUNFO0E1RXF5Y047O0E0RXR5Y0k7RUFDRTtBNUV5eWNOOztBNEUxeWNJO0VBQ0U7QTVFNnljTjs7QTRFOXljSTtFQUNFO0E1RWl6Y047O0E0RWx6Y0k7RUFDRTtBNUVxemNOOztBNEV0emNJO0VBQ0U7QTVFeXpjTjs7QTRFMXpjSTtFQUNFO0E1RTZ6Y047O0E0RTl6Y0k7RUFDRTtBNUVpMGNOOztBNEVsMGNJO0VBQ0U7QTVFcTBjTjs7QTRFdDBjSTtFQUNFO0E1RXkwY047O0E0RTEwY0k7RUFDRTtBNUU2MGNOOztBNEU5MGNJO0VBQ0U7QTVFaTFjTjs7QTRFbDFjSTtFQUNFO0E1RXExY047O0E0RXQxY0k7RUFDRTtBNUV5MWNOOztBNEUxMWNJO0VBQ0U7QTVFNjFjTjs7QTRFOTFjSTtFQUNFO0E1RWkyY047O0E0RWwyY0k7RUFDRTtBNUVxMmNOOztBNEV0MmNJO0VBQ0U7QTVFeTJjTjs7QTRFMTJjSTtFQUNFO0E1RTYyY047O0E0RTkyY0k7RUFDRTtBNUVpM2NOOztBNEVsM2NJO0VBQ0U7QTVFcTNjTjs7QTRFdDNjSTtFQUNFO0E1RXkzY047O0E0RTEzY0k7RUFDRTtBNUU2M2NOOztBNEU5M2NJO0VBQ0U7QTVFaTRjTjs7QTRFbDRjSTtFQUNFO0E1RXE0Y047O0E0RXQ0Y0k7RUFDRTtBNUV5NGNOOztBNEUxNGNJO0VBQ0U7QTVFNjRjTjs7QTRFOTRjSTtFQUNFO0E1RWk1Y047O0E0RWw1Y0k7RUFDRTtBNUVxNWNOOztBNEV0NWNJO0VBQ0U7QTVFeTVjTjs7QTRFMTVjSTtFQUNFO0E1RTY1Y047O0E0RTk1Y0k7RUFDRTtBNUVpNmNOOztBNEVsNmNJO0VBQ0U7QTVFcTZjTjs7QTRFdDZjSTtFQUNFO0E1RXk2Y047O0E0RTE2Y0k7RUFDRTtBNUU2NmNOOztBNEU5NmNJO0VBQ0U7QTVFaTdjTjs7QTRFbDdjSTtFQUNFO0E1RXE3Y047O0E0RXQ3Y0k7RUFDRTtBNUV5N2NOOztBNEUxN2NJO0VBQ0U7QTVFNjdjTjs7QTRFOTdjSTtFQUNFO0E1RWk4Y047O0E0RWw4Y0k7RUFDRTtBNUVxOGNOOztBNEV0OGNJO0VBQ0U7QTVFeThjTjs7QTRFMThjSTtFQUNFO0E1RTY4Y047O0E0RTk4Y0k7RUFDRTtBNUVpOWNOOztBNEVsOWNJO0VBQ0U7QTVFcTljTjs7QTRFdDljSTtFQUNFO0E1RXk5Y047O0E0RTE5Y0k7RUFDRTtBNUU2OWNOOztBNEU5OWNJO0VBQ0U7QTVFaStjTjs7QTRFbCtjSTtFQUNFO0E1RXErY047O0E0RXQrY0k7RUFDRTtBNUV5K2NOOztBNEUxK2NJO0VBQ0U7QTVFNitjTjs7QTRFOStjSTtFQUNFO0E1RWkvY047O0E0RWwvY0k7RUFDRTtBNUVxL2NOOztBNEV0L2NJO0VBQ0U7QTVFeS9jTjs7QTRFMS9jSTtFQUNFO0E1RTYvY047O0E0RTkvY0k7RUFDRTtBNUVpZ2ROOztBNEVsZ2RJO0VBQ0U7QTVFcWdkTjs7QTRFdGdkSTtFQUNFO0E1RXlnZE47O0E0RTFnZEk7RUFDRTtBNUU2Z2ROOztBNEU5Z2RJO0VBQ0U7QTVFaWhkTjs7QTRFbGhkSTtFQUNFO0E1RXFoZE47O0E0RXRoZEk7RUFDRTtBNUV5aGROOztBNEUxaGRJO0VBQ0U7QTVFNmhkTjs7QTRFOWhkSTtFQUNFO0E1RWlpZE47O0E0RWxpZEk7RUFDRTtBNUVxaWROOztBNEV0aWRJO0VBQ0U7QTVFeWlkTjs7QTRFMWlkSTtFQUNFO0E1RTZpZE47O0E0RTlpZEk7RUFDRTtBNUVpamROOztBNEVsamRJO0VBQ0U7QTVFcWpkTjs7QTRFdGpkSTtFQUNFO0E1RXlqZE47O0E0RTFqZEk7RUFDRTtBNUU2amROOztBNEU5amRJO0VBQ0U7QTVFaWtkTjs7QTRFbGtkSTtFQUNFO0E1RXFrZE47O0E0RXRrZEk7RUFDRTtBNUV5a2ROOztBNEUxa2RJO0VBQ0U7QTVFNmtkTjs7QTRFOWtkSTtFQUNFO0E1RWlsZE47O0E0RWxsZEk7RUFDRTtBNUVxbGROOztBNEV0bGRJO0VBQ0U7QTVFeWxkTjs7QTRFMWxkSTtFQUNFO0E1RTZsZE47O0E0RTlsZEk7RUFDRTtBNUVpbWROOztBNEVsbWRJO0VBQ0U7QTVFcW1kTjs7QTRFdG1kSTtFQUNFO0E1RXltZE47O0E0RTFtZEk7RUFDRTtBNUU2bWROOztBNEU5bWRJO0VBQ0U7QTVFaW5kTjs7QTRFbG5kSTtFQUNFO0E1RXFuZE47O0E2RTNyZEE7RUFDSTtJQUNJO0lBQ0E7RTdFOHJkTjtFNkUzcmRFO0lBQ0k7SUFDQTtFN0U2cmROO0U2RTFyZEU7SUFDSTtJQUNBO0U3RTRyZE47QUFDRjtBNkV6cmRBO0VBQ0k7SUFDSTtFN0UycmROO0FBQ0Y7QTZFeHJkQTtFQUNJO0lBQ0k7RTdFMHJkTjtFNkV2cmRFO0lBQ0k7RTdFeXJkTjtFNkV0cmRFO0lBQ0k7RTdFd3JkTjtFNkVycmRFO0lBQ0k7RTdFdXJkTjtFNkVwcmRFO0lBQ0k7RTdFc3JkTjtFNkVucmRFO0lBQ0k7RTdFcXJkTjtFNkVscmRFO0lBQ0k7RTdFb3JkTjtFNkVqcmRFO0lBQ0k7RTdFbXJkTjtBQUNGO0E2RWhyZEE7RUFDSTtJQUNJO0U3RWtyZE47RTZFL3FkRTtJQUNJO0U3RWlyZE47RTZFOXFkRTtJQUNJO0U3RWdyZE47QUFDRjtBNkU3cWRBO0VBQ0k7SUFDSTtFN0UrcWROO0U2RTVxZEU7SUFDSTtFN0U4cWROO0U2RTNxZEU7SUFDSTtFN0U2cWROO0FBQ0Y7QTZFMXFkQTtFQUNJO0E3RTRxZEo7O0E2RXpxZEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RTRxZEo7QTZFenFkUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3RTJxZFo7QTZFeHFkUTtFQUNJO0VBQ0E7RUFDQTtBN0UwcWRaO0E2RXJyZEk7RUFjSTtFQUNBO0E3RTBxZFI7QTZFdnFkSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3RXlxZFI7QTZFdHFkSTtFQUNJO0E3RXdxZFI7QTZFcnFkSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFdXFkUjtBNkVycWRRO0VBUEo7SUFRUTtFN0V3cWRWO0FBQ0Y7QTZFdHFkUTtFQUNJO0E3RXdxZFo7QTZFdHFkWTtFQUhKO0lBSVE7RTdFeXFkZDtBQUNGO0E2RXZxZFk7RUFQSjtJQVFRO0U3RTBxZGQ7QUFDRjs7QTZFcnFkQTtBQUNBO0VBQ0k7SUFDSTtFN0V3cWROO0U2RXJxZEU7SUFDSTtJQUNBO0lBQ0E7RTdFdXFkTjtBQUNGO0E2RW5xZEk7RUFESjtJQUVRO0U3RXNxZE47QUFDRjs7QTZFbHFkSTtFQURKO0lBRVE7RTdFc3FkTjtBQUNGOztBNkVscWRJO0VBREo7SUFFUTtFN0VzcWROO0FBQ0Y7O0E2RWxxZEk7RUFESjtJQUVRO0U3RXNxZE47QUFDRjs7QTZFbnFkQTtFQUNJO0E3RXNxZEo7O0E2RW5xZEE7QUFHSTtFQUNJO0VBQ0E7RUFDQTtBN0VvcWRSO0E2RWpxZEk7RUFDSTtFQUNBO0E3RW1xZFI7O0E2RS9wZEE7QUFFSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3RWlxZFI7QTZFL3BkUTtFQU5KO0lBT1E7RTdFa3FkVjtBQUNGO0E2RS9wZEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0VpcWRSO0E2RS9wZFE7RUFOSjtJQU9RO0U3RWtxZFY7QUFDRjtBNkVocWRRO0VBVko7SUFXUTtJQUNBO0U3RW1xZFY7QUFDRjtBNkVocWRJO0VBQ0k7RUFDQTtBN0VrcWRSOztBNkU5cGRBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RWlxZEo7QTZFL3BkSTtFQUNJO0VBQ0E7RUFDQTtBN0VpcWRSO0E2RS9wZFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VpcWRaO0E2RS9wZFk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFaXFkaEI7QTZFL3BkZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0VpcWRwQjtBNkU5cGRvQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VncWR4QjtBNkU3cGRvQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0UrcGR4QjtBNkV6cGRRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBN0UwcGRaO0E2RXRwZFk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0V3cGRoQjtBNkVscGRZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFb3BkaEI7O0E2RTdvZEE7QUFFSTtFQUNJO0VBQ0E7RUFDQTtBN0Urb2RSO0E2RW5wZEE7RUFPSTtBN0Urb2RKO0E2RTdvZEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Urb2RSOztBNkUxb2RJO0VBREo7SUFFUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTdFOG9kTjtBQUNGOztBNkUzb2RBO0VBQ0k7RUFDQTtBN0U4b2RKO0E2RTVvZEk7RUFKSjtJQUtRO0U3RStvZE47QUFDRjtBNkU3b2RJO0VBUko7SUFTUTtFN0VncGROO0FBQ0Y7QTZFOW9kSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3RWdwZFI7QTZFM29kb0I7RUFDSTtFQUNBO0VBQ0E7QTdFNm9keEI7QTZFM29kd0I7RUFDSTtBN0U2b2Q1Qjs7QTZFcG9kQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXVvZEo7QTZFcm9kSTtFQVJKO0lBU1E7RTdFd29kTjtBQUNGOztBNkVyb2RBO0VBQ0k7QTdFd29kSjs7QTZFcm9kQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0V3b2RKO0E2RXRvZEk7RUFDSTtBN0V3b2RSOztBNkVub2RBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQSx3RUFDSTtBN0Vxb2RSO0E2RWpvZEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RW1vZFI7QTZFaG9kSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFa29kUjtBNkVob2RRO0VBQ0k7QTdFa29kWjs7QTZFN25kQTtFQUNJO0VBQ0E7QTdFZ29kSjs7QTZFM25kUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3RThuZFo7QTZFNW5kWTtFQU5KO0lBT1E7RTdFK25kZDtBQUNGO0E2RTduZFk7RUFWSjtJQVdRO0U3RWdvZGQ7QUFDRjtBNkU5bmRZO0VBZEo7SUFlUTtJQUNBO0lBQ0E7RTdFaW9kZDtBQUNGOztBNkU1bmRBO0VBQ0k7RUFDQTtFQUNBO0VBQ0Esb0RBQ0k7QTdFOG5kUjtBNkUzbmRJO0VBQ0k7RUFDQTtFQUNBO0E3RTZuZFI7O0E2RXpuZEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RTRuZEo7QTZFMW5kSTtFQUNJO0E3RTRuZFI7QTZFem5kWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RTJuZGhCO0E2RXhuZFk7RUFkSjtJQWVRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U3RTJuZGQ7QUFDRjtBNkV6bmRZO0VBM0JKO0lBNEJRO0U3RTRuZGQ7QUFDRjtBNkUxbmRZO0VBL0JKO0lBZ0NRO0U3RTZuZGQ7QUFDRjtBNkV6bmRZO0VBQ0k7QTdFMm5kaEI7QTZFeG5kWTtFQUNJO0E3RTBuZGhCO0E2RXRuZFE7RUFDSTtFQUNBO0E3RXduZFo7QTZFcG5kSTtFQUNJO0E3RXNuZFI7QTZFcG5kUTtFQUhKO0lBSVE7RTdFdW5kVjtBQUNGO0E2RXJuZFE7RUFDSTtBN0V1bmRaO0E2RXJuZFk7RUFISjtJQUlRO0U3RXduZGQ7QUFDRjtBNkV0bmRZO0VBUEo7SUFRUTtFN0V5bmRkO0FBQ0Y7QTZFcm5kWTtFQURKO0lBRVE7RTdFd25kZDtBQUNGO0E2RWxuZFk7RUFDSTtFQUNBO0E3RW9uZGhCO0E2RWpuZFk7RUFDSTtBN0VtbmRoQjtBNkVobmRZO0VBQ0k7RUFDQTtBN0VrbmRoQjtBNkU1bWRRO0VBREo7SUFFUTtFN0UrbWRWO0FBQ0Y7QTZFN21kUTtFQUNJO0VBQ0E7QTdFK21kWjtBNkV6bWR3Qjs7RUFDSTtFQUNBO0E3RTRtZDVCO0E2RXRtZFk7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXdtZGhCO0E2RXRtZGdCO0VBVEo7O0lBVVE7SUFDQTtFN0UwbWRsQjtBQUNGO0E2RXhtZGdCO0VBZEo7O0lBZVE7SUFDQTtFN0U0bWRsQjtBQUNGO0E2RXptZFk7O0VBRUk7QTdFMm1kaEI7QTZFdG1kZ0I7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXltZHBCO0E2RXJtZFk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXVtZGhCO0E2RXJtZGdCO0VBYko7SUFjUTtJQUNBO0lBQ0E7RTdFd21kbEI7QUFDRjtBNkV0bWRnQjtFQUNJO0VBQ0E7QTdFd21kcEI7QTZFdG1kb0I7RUFDSTtBN0V3bWR4QjtBNkVwbWR3QjtFQUNJO0E3RXNtZDVCO0E2RWxtZG9CO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VvbWR4QjtBNkVsbWR3QjtFQUNJO0E3RW9tZDVCO0E2RTlsZG9CO0VBQ0k7QTdFZ21keEI7QTZFM2xkWTtFQUNJO0E3RTZsZGhCO0E2RXpsZGdCO0VBQ0k7QTdFMmxkcEI7QTZFdGxkZ0I7RUFDSTtFQUNBO0E3RXdsZHBCO0E2RXRsZG9CO0VBQ0k7RUFDQTtBN0V3bGR4Qjs7QTZFaGxkQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RW1sZEo7QTZFamxkSTtFQVpKO0lBYVE7SUFDQTtJQUNBO0U3RW9sZE47QUFDRjtBNkVsbGRJO0VBQ0k7SUFDSTtFN0VvbGRWO0FBQ0Y7O0E2RTlrZEE7QUFDQTtFQUNJO0VBQ0E7QTdFaWxkSjs7QTZFOWtkQTs7Ozs7RUFLSTtBN0VpbGRKOztBNkU5a2RBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RWlsZEo7QTZFL2tkSTtFQVhKO0lBWVE7SUFDQTtFN0VrbGROO0FBQ0Y7QTZFaGxkSTtFQWhCSjtJQWlCUTtJQUNBO0U3RW1sZE47QUFDRjtBNkVqbGRJO0VBckJKO0lBc0JRO0lBQ0E7RTdFb2xkTjtBQUNGO0E2RWxsZEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUtBO0E3RWdsZFI7QTZFOWtkUTtFQWRKO0lBZVE7SUFDQTtJQUNBO0lBQ0E7RTdFaWxkVjtBQUNGO0E2RS9rZFE7RUFyQko7SUFzQlE7SUFDQTtJQUNBO0lBQ0E7RTdFa2xkVjtBQUNGO0E2RS9rZEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUtBO0E3RTZrZFI7QTZFM2tkUTtFQWRKO0lBZVE7SUFDQTtJQUNBO0lBQ0E7RTdFOGtkVjtBQUNGO0E2RTVrZFE7RUFyQko7SUFzQlE7SUFLQTtJQUNBO0lBQ0E7RTdFMmtkVjtBQUNGO0E2RXZrZFE7RUFDSTtBN0V5a2RaO0E2RXRrZFE7RUFDSTtBN0V3a2RaO0E2RXRrZFk7RUFISjtJQUlRO0U3RXlrZGQ7QUFDRjtBNkVwa2RRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Vza2RaO0E2RXBrZFk7RUFDSTtFQUNBO0E3RXNrZGhCO0E2RW5rZFk7RUFaSjtJQWFRO0U3RXNrZGQ7RTZFcGtkYztJQUNJO0lBQ0E7RTdFc2tkbEI7QUFDRjtBNkVua2RZO0VBckJKO0lBc0JRO0U3RXNrZGQ7RTZFcGtkYztJQUNJO0lBQ0E7RTdFc2tkbEI7QUFDRjtBNkVua2RZO0VBOUJKO0lBK0JRO0U3RXNrZGQ7RTZFcGtkYztJQUNJO0lBQ0E7RTdFc2tkbEI7QUFDRjs7QTZFL2pkSTtFQURKO0lBRVE7RTdFbWtkTjtBQUNGOztBNkVoa2RBO0FBQ0E7RUFDSTtBN0Vta2RKO0E2RWprZEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBS0E7QTdFK2pkUjtBNkU3amRRO0VBZko7SUFnQlE7SUFDQTtJQUNBO0lBQ0E7RTdFZ2tkVjtBQUNGO0E2RTlqZFE7RUF0Qko7SUF1QlE7SUFDQTtJQUNBO0U3RWlrZFY7QUFDRjtBNkU5amRJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFZ2tkUjtBNkU5amRRO0VBVEo7SUFVUTtFN0Vpa2RWO0FBQ0Y7QTZFL2pkUTtFQUNJO0VBQ0E7S0FBQTtVQUFBO0E3RWlrZFo7QTZFL2pkWTtFQUNJO0VBQ0E7RUFDQTtBN0Vpa2RoQjtBNkUvamRnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFaWtkcEI7QTZFL2pkb0I7RUFDSTtBN0Vpa2R4QjtBNkUxamRJO0VBQ0k7QTdFNGpkUjs7QTZFeGpkQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VEcDlCRjtBNUVnaGZGO0E0RTlnZkU7RUMrOEJGO0lEOThCSTtFNUVpaGZGO0FBQ0Y7QTZFcGtkQTtFQUtJO0VBQ0E7RUFDQTtFQUtBO0E3RThqZEo7QTZFNWpkSTtFQWRKO0lBZVE7RTdFK2pkTjtBQUNGO0E2RTdqZEk7RUFsQko7SUFtQlE7SUFDQTtJQUNBO0U3RWdrZE47QUFDRjtBNkU3amRRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RStqZFo7QTZFM2pkWTtFQUNJO0E3RTZqZGhCO0E2RXhqZEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0UwamRSOztBNkV0amRBO0VBQ0k7QTdFeWpkSjtBNkV0amRRO0VBQ0k7QTdFd2pkWjtBNkVyamRRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFdWpkWjtBNkVuamRJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VxamRSOztBNkVqamRBO0FBQ0E7RUQxaUNFO0E1RStsZkY7QTRFN2xmRTtFQ3dpQ0Y7SUR2aUNJO0U1RWdtZkY7QUFDRjtBNkUxamRBO0VBRUk7RUFDQTtBN0UyamRKO0E2RXpqZEk7RUFDSTtFQUNBO0VBQ0E7QTdFMmpkUjtBNkV6amRRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0UyamRaO0E2RXpqZFk7RUFDSTtBN0UyamRoQjtBNkV4amRZO0VBZEo7SUFlUTtFN0UyamRkO0FBQ0Y7QTZFeGpkUTtFQXhCSjtJQXlCUTtFN0UyamRWO0FBQ0Y7QTZFeGpkSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBS0E7RUFDQTtBN0VzamRSO0E2RXBqZFE7RUFmSjtJQWdCUTtJQUNBO0lBQ0E7SUFDQTtFN0V1amRWO0FBQ0Y7QTZFcmpkUTtFQXRCSjtJQXVCUTtJQUNBO0lBQ0E7SUFDQTtFN0V3amRWO0FBQ0Y7QTZFcmpkSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBS0E7RUFDQTtBN0VtamRSO0E2RWpqZFE7RUFmSjtJQWdCUTtJQUNBO0lBQ0E7SUFDQTtFN0VvamRWO0FBQ0Y7QTZFbGpkUTtFQXRCSjtJQXVCUTtJQUtBO0lBQ0E7SUFDQTtFN0VpamRWO0FBQ0Y7O0E2RTdpZEE7QUFDQTtFRDlvQ0U7QTVFK3JmRjtBNEU3cmZFO0VDNG9DRjtJRDNvQ0k7RTVFZ3NmRjtBQUNGO0E2RW5qZEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFcWpkUjtBNkVuamRRO0VBQ0k7QTdFcWpkWjtBNkVuamRZO0VBSEo7SUFJUTtFN0VzamRkO0FBQ0Y7QTZFbmpkUTtFQUNJO0lBQ0k7RTdFcWpkZDtFNkV2a2RFO0lBcUJRO0lBQ0E7RTdFcWpkVjtBQUNGO0E2RW5qZFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUtBO0VBQ0E7QTdFaWpkWjtBNkU5aWRRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0E3RTRpZFo7QTZFdmlkUTs7RUFFSTtBN0V5aWRaO0E2RXZpZFk7RUFKSjs7SUFLUTtFN0UyaWRkO0FBQ0Y7O0E2RXRpZEE7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0V5aWRKO0E2RXZpZEk7RUFDSTtBN0V5aWRSO0E2RXZpZFE7RUFISjtJQUlRO0U3RTBpZFY7QUFDRjtBNkV2aWRJO0VBQ0k7SUFDSTtFN0V5aWRWO0U2RTNqZEY7SUFxQlE7SUFDQTtFN0V5aWROO0FBQ0Y7QTZFdmlkSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBS0E7RUFDQTtBN0VxaWRSO0E2RWxpZEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUtBO0VBQ0E7QTdFZ2lkUjs7QTZFNWhkQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RURseENGO0E1RWt6ZkY7QTRFaHpmRTtFQ3l3Q0Y7SUR4d0NJO0U1RW16ZkY7QUFDRjtBNkVsaWRJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFb2lkUjtBNkVqaWRJO0VBakJKO0lBa0JRO0U3RW9pZE47QUFDRjtBNkVsaWRJO0VBckJKO0lBc0JRO0lBQ0E7SUFDQTtFN0VxaWROO0FBQ0Y7QTZFbGlkUTtFQUNJO0E3RW9pZFo7QTZFbGlkWTtFQUhKO0lBSVE7RTdFcWlkZDtBQUNGO0E2RW5pZFk7RUFQSjtJQVFRO0U3RXNpZGQ7QUFDRjtBNkVwaWRZOztFQUVJO0VBQ0E7QTdFc2lkaEI7QTZFcGlkZ0I7RUFMSjs7SUFNUTtFN0V3aWRsQjtBQUNGO0E2RXJpZFk7RUFDSTtFQUNBO0E3RXVpZGhCO0E2RXJpZGdCO0VBSko7SUFLUTtFN0V3aWRsQjtBQUNGO0E2RXRpZGdCO0VBUko7SUFTUTtFN0V5aWRsQjtBQUNGO0E2RXRpZFk7RUFDSTtFQUNBO0VBQ0E7QTdFd2lkaEI7QTZFdGlkZ0I7RUFDSTtFQUNBO0VBQ0E7QTdFd2lkcEI7QTZFdGlkb0I7RUFDSTtFQUNBO0E3RXdpZHhCO0E2RXBpZGdCO0VBaEJKO0lBaUJRO0U3RXVpZGxCO0FBQ0Y7QTZFcGlkWTtFQUNJO0VBQ0E7RUFDQTtBN0VzaWRoQjtBNkVwaWRnQjtFQUxKO0lBTVE7RTdFdWlkbEI7QUFDRjtBNkVsaWRJO0VBQ0k7QTdFb2lkUjtBNkVsaWRRO0VBQ0k7QTdFb2lkWjtBNkVqaWRRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFbWlkWjtBNkVqaWRZO0VBQ0k7QTdFbWlkaEI7QTZFamlkZ0I7RUFISjtJQUlRO0U3RW9pZGxCO0FBQ0Y7QTZFamlkWTtFQUNJO0VBQ0E7RUFDQTtBN0VtaWRoQjtBNkVqaWRnQjtFQUNJO0VBQ0E7RUFDQTtBN0VtaWRwQjtBNkUvaGRZO0VBMUJKO0lBMkJRO0U3RWtpZGQ7RTZFaGlkYztJQUNJO0U3RWtpZGxCO0FBQ0Y7QTZFOWhkUTtFQUNJO0VBQ0E7QTdFZ2lkWjtBNkU5aGRZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFZ2lkaEI7QTZFOWhkZ0I7RUFDSTtBN0VnaWRwQjs7QTZFemhkQTtFQUNJO0VBQ0E7QTdFNGhkSjs7QTZFemhkQTtBQUNBO0VBQ0k7RUFDQTtFRGo3Q0Y7QTVFODhmRjtBNEU1OGZFO0VDNjZDRjtJRDU2Q0k7RTVFKzhmRjtBQUNGO0E2RXBpZEE7RUFJSTtFQUNBO0VBQ0E7QTdFbWlkSjtBNkVqaWRJO0VBQ0k7RUFDQTtFQUNBO0E3RW1pZFI7QTZFamlkUTtFQUNJO0E3RW1pZFo7QTZFamlkWTtFQUNJO0VBQ0E7QTdFbWlkaEI7QTZFaGlkWTtFQUNJO0E3RWtpZGhCO0E2RWhpZGdCO0VBQ0k7RUFDQTtBN0VraWRwQjtBNkUzaGRRO0VBQ0k7RUFDQTtFQUNBO0E3RTZoZFo7QTZFM2hkWTtFQUxKO0lBTVE7SUFDQTtJQUNBO0lBQ0E7RTdFOGhkZDtBQUNGO0E2RXpoZFE7RUFESjtJQUVRO0U3RTRoZFY7QUFDRjtBNkV6aGRJO0VBckRKO0lBc0RRO0U3RTRoZE47QUFDRjtBNkUxaGRJO0VBekRKO0lBMERRO0lBQ0E7SUFDQTtFN0U2aGROO0FBQ0Y7O0E2RTFoZEE7RUFDSTtBN0U2aGRKOztBNkUxaGRBO0VBQ0k7QTdFNmhkSjs7QTZFMWhkQTtFQUNJO0E3RTZoZEo7O0E2RTFoZEE7QUFDQTtFRHBnREU7QTVFa2lnQkY7QTRFaGlnQkU7RUNrZ0RGO0lEamdESTtFNUVtaWdCRjtBQUNGO0E2RWhpZEk7RUFDSTtFQUNBO0E3RWtpZFI7QTZFL2hkSTtFQUNJO0VBQ0E7RUFDQTtBN0VpaWRSO0E2RS9oZFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RWlpZFo7QTZFOWhkUTs7RUFFSTtFQUNBO0E3RWdpZFo7QTZFOWhkWTs7RUFDSTtBN0VpaWRoQjtBNkU1aGRZO0VBQ0k7QTdFOGhkaEI7O0E2RXhoZEE7QUFDQTtFRDVpREU7QTVFd2tnQkY7QTRFdGtnQkU7RUMwaURGO0lEemlESTtFNUV5a2dCRjtBQUNGO0E2RWppZEE7RUFFSTtFQUNBO0E3RWtpZEo7QTZFaGlkSTtFQUNJO0VBQ0E7QTdFa2lkUjtBNkVoaWRRO0VBQ0k7RUFDQTtFQUNBO0E3RWtpZFo7QTZFaGlkWTtFQUVJO0VBQ0E7RUFDQTtBN0VpaWRoQjtBNkU5aGRZO0VBWko7SUFhUTtFN0VpaWRkO0FBQ0Y7QTZFL2hkWTtFQWhCSjtJQWlCUTtFN0VraWRkO0FBQ0Y7QTZFL2hkUTtFQXpCSjtJQTBCUTtJQUNBO0lBQ0E7SUFDQTtFN0VraWRWO0FBQ0Y7QTZFL2hkSTtFQUNJO0VBQ0E7RUFDQTtBN0VpaWRSO0E2RS9oZFE7RUFMSjtJQU1RO0U3RWtpZFY7QUFDRjtBNkVoaWRRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFa2lkWjtBNkVoaWRZO0VBQ0k7QTdFa2lkaEI7QTZFL2hkWTtFQUNJO0VBQ0E7QTdFaWlkaEI7O0E2RTNoZEE7QUFDQTtFRHBuREU7QTVFbXBnQkY7QTRFanBnQkU7RUNrbkRGO0lEam5ESTtFNUVvcGdCRjtBQUNGO0E0RXprZ0JFO0VBQ0U7RUFDQTtFQUNBO0E1RTJrZ0JKO0E0RXprZ0JJO0VBQ0U7QTVFMmtnQk47QTRFdmtnQkU7RUFDRTtFQUNBO0VBQ0EsdUJDNGhESTtFRDNoREo7RUFDQTtFQUNBO0E1RXlrZ0JKO0E0RXZrZ0JJO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsV0F2QnFKO0VBd0JySixZQXhCcUo7RUF5QnJKO0VBQ0E7QTVFeWtnQk47QTRFdGtnQkk7RUFDRSx1QkM4Z0RFO0E3RTBqZFI7QTRFdGtnQk07RUFNSTtBNUVta2dCVjtBNEU3amdCRTtFQUNFO0VBQ0EsdUJDNi9DSTtFRDUvQ0o7RUFDQTtBNUUramdCSjs7QTZFL2pkQTtBQUNBO0VEL25ERTtBNUVrc2dCRjtBNEVoc2dCRTtFQzZuREY7SUQ1bkRJO0U1RW1zZ0JGO0FBQ0Y7QTZFcmtkSTtFQUNJO0E3RXVrZFI7QTZFcmtkUTtFQUhKO0lBSVE7RTdFd2tkVjtBQUNGO0E2RXJrZEk7RUFDSTtFQUNBO0VBQ0E7QTdFdWtkUjtBNkVya2RRO0VBTEo7SUFNUTtFN0V3a2RWO0FBQ0Y7QTZFdGtkUTtFQVRKO0lBVVE7SUFDQTtFN0V5a2RWO0FBQ0Y7QTZFdmtkUTtFQUNJO0VBQ0E7RUFDQTtBN0V5a2RaO0E2RXZrZFk7RUFDSTtFQUNBO0VBQ0E7QTdFeWtkaEI7QTZFdmtkZ0I7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0V5a2RwQjtBNkV2a2RvQjtFQVhKOztJQVlRO0lBQ0E7SUFDQTtFN0Uya2R0QjtBQUNGO0E2RXprZG9CO0VBakJKOztJQWtCUTtJQUNBO0U3RTZrZHRCO0FBQ0Y7QTZFMWtkZ0I7RUFDSTtFQUNBO0E3RTRrZHBCO0E2RXprZGdCO0VBQ0k7RUFDQTtFQUNBO0E3RTJrZHBCOztBNkVwa2RBO0VBQ0k7QTdFdWtkSjtBNkVya2RJO0VBQ0k7QTdFdWtkUjtBNkVwa2RJO0VBQ0k7QTdFc2tkUjs7QTZFbGtkQTtFQUNJO0E3RXFrZEo7QTZFbmtkSTtFQUNJO0E3RXFrZFI7O0E2RWprZEE7RUFDSTtBN0Vva2RKO0E2RWxrZEk7RUFDSTtBN0Vva2RSO0E2RWprZEk7RUFDSTtBN0Vta2RSOztBNkUvamRBO0VBQ0k7QTdFa2tkSjtBNkVoa2RJO0VBQ0k7QTdFa2tkUjtBNkUvamRJO0VBQ0k7QTdFaWtkUjs7QTZFN2pkQTtFQUNJO0E3RWdrZEo7QTZFOWpkSTtFQUNJO0E3RWdrZFI7O0E2RTVqZEE7QUFDQTtFRDd2REU7QTVFNnpnQkY7QTRFM3pnQkU7RUMydkRGO0lEMXZESTtFNUU4emdCRjtBQUNGO0E2RXJrZEE7RUFFSTtFQUNBO0E3RXNrZEo7QTZFcGtkSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0E3RWtrZFI7QTZFaGtkUTtFQWhCSjtJQWlCUTtJQUNBO0lBQ0E7SUFDQTtFN0Vta2RWO0FBQ0Y7QTZFamtkUTtFQXZCSjtJQXdCUTtJQUNBO0lBQ0E7RTdFb2tkVjtBQUNGO0E2RWprZEk7RUFDSTtFQUNBO0E3RW1rZFI7QTZFamtkUTtFQUNJO0E3RW1rZFo7QTZFaGtkUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFa2tkWjtBNkVoa2RZO0VBUEo7SUFRUTtFN0Vta2RkO0FBQ0Y7QTZFaGtkUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFa2tkWjtBNkVoa2RZO0VBVko7SUFXUTtJQUNBO0U3RW1rZGQ7QUFDRjtBNkVqa2RZO0VBZko7SUFnQlE7RTdFb2tkZDtBQUNGO0E2RTVvZEE7RUE0RUk7QTdFbWtkSjtBNkVsa2RJO0VBQ0k7SUFDSTtFN0Vva2RWO0U2RWxrZFU7SUFDSTtFN0Vva2RkO0FBQ0Y7O0E2RS9qZEE7QUFDQTtFRHQxREU7QTVFeTVnQkY7QTRFdjVnQkU7RUNvMURGO0lEbjFESTtFNUUwNWdCRjtBQUNGO0E2RXhrZEE7RUFFSTtFQUNBO0E3RXlrZEo7QTZFdmtkSTtFQUNJO0VBQ0E7RUFDQTtBN0V5a2RSO0E2RXZrZFE7RUFDSTtFQUNBO0E3RXlrZFo7QTZFdmtkWTtFQUNJO0E3RXlrZGhCO0E2RXJrZFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0V1a2RaO0E2RXJrZFk7RUFDSTtBN0V1a2RoQjtBNkVwa2RZO0VBQ0k7RUFDQTtFQUNBO0E3RXNrZGhCOztBNkVoa2RBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFbWtkSjtBNkVqa2RJO0VBUko7SUFTUTtFN0Vva2ROO0FBQ0Y7QTZFbGtkSTtFQUNJO0E3RW9rZFI7QTZFbGtkUTtFQUNJO0VBQ0E7RUFDQTtBN0Vva2RaO0E2RS9qZFk7RUFDSTtFQUNBO0E3RWlrZGhCO0E2RTVqZEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0U4amRSO0E2RTVqZFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFJQTtFQUNBO0VBQ0E7RUFDQTtBN0UyamRaO0E2RXRqZFE7RUFDSTtFQUNBO0VBQ0E7QTdFd2pkWjtBNkV0amRZO0VBTEo7SUFNUTtJQUNBO0U3RXlqZGQ7QUFDRjs7QTZFcGpkQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFdWpkSjtBNkVyamRJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXVqZFI7QTZFbmpkWTtFQUNJO0VBQ0E7RUFDQTtBN0VxamRoQjtBNkVoamRJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VramRSOztBNkU5aWRBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VpamRKOztBNkU3aWRJO0VBRUk7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFZ2pkUjtBNkU5aWRRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBTUEsOEVBQ0k7RUFFSjtFQUNBO0VBRUE7QTdFd2lkWjtBNkVyaWRRO0VBQ0k7RUFDQTtBN0V1aWRaO0E2RXJpZFk7O0VBRUk7RUFDQTtBN0V1aWRoQjtBNkVwaWRZO0VBQ0k7RUFDQTtBN0VzaWRoQjtBNkVwaWRnQjtFQUNJO0E3RXNpZHBCO0E2RWhpZFk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RWtpZGhCO0E2RTloZFE7RUFDSTtBN0VnaWRaOztBNkUzaGRBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFOGhkSjtBNkU1aGRJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBTUEsOEVBQ0k7RUFFSjtFQUNBO0VBRUE7QTdFc2hkUjtBNkVuaGRJO0VBakNKO0lBa0NRO0U3RXNoZE47QUFDRjtBNkVwaGRJO0VBckNKO0lBc0NRO0U3RXVoZE47QUFDRjtBNkVyaGRJO0VBQ0k7QTdFdWhkUjtBNkVyaGRRO0VBQ0k7QTdFdWhkWjtBNkVuaGRJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFcWhkUjtBNkVuaGRRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXFoZFo7QTZFbmhkWTtFQVJKO0lBU1E7RTdFc2hkZDtBQUNGO0E2RXBoZFk7RUFaSjtJQWFRO0U3RXVoZGQ7QUFDRjs7QTZFbGhkQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFcWhkSjtBNkVuaGRJO0VBUEo7SUFRUTtFN0VzaGROO0FBQ0Y7O0E2RWxoZEk7OztFQUVJO0E3RXNoZFI7QTZFbmhkSTtFQUNJO0E3RXFoZFI7QTZFbGhkSTtFQUNJO0E3RW9oZFI7O0E2RWhoZEE7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFRHhxRUY7QTVFNHJoQkY7QTRFMXJoQkU7RUNtcUVGO0lEbHFFSTtFNUU2cmhCRjtBQUNGO0E2RXRoZEk7RUFOSjtJQU9RO0U3RXloZE47QUFDRjtBNkV2aGRJO0VBVko7SUFXUTtJQUNBO0lBQ0E7RTdFMGhkTjtBQUNGO0E2RXhpZEE7RUFnQkk7RUFLQTtBN0V1aGRKO0E2RXJoZEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXVoZFI7O0E2RW5oZEE7RUFDSTtBN0VzaGRKO0E2RXBoZEk7RUFISjtJQUlRO0U3RXVoZE47QUFDRjtBNkVyaGRJO0VBQ0k7RUFDQTtBN0V1aGRSO0E2RXBoZFk7RUFDSTtBN0VzaGRoQjtBNkVsaGRRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUtBO0VBQ0E7QTdFZ2hkWjtBNkU5Z2RZO0VBaEJKO0lBaUJRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTdFaWhkZDtBQUNGO0E2RS9nZFk7RUF4Qko7SUF5QlE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFN0VraGRkO0FBQ0Y7O0E2RTdnZEE7QUFDQTtFQUNJO0E3RWdoZEo7QTZFOWdkSTtFQUNJO0E3RWdoZFI7QTZFOWdkUTtFQUhKO0lBSVE7RTdFaWhkVjtBQUNGO0E2RTlnZEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0VnaGRSO0E2RTdnZEk7RUFsQko7SUFtQlE7RTdFZ2hkTjtFNkU5Z2RNO0lBQ0k7RTdFZ2hkVjtBQUNGOztBNkU1Z2RBO0VEN3hFRTtBNUU2eWhCRjtBNEUzeWhCRTtFQzJ4RUY7SUQxeEVJO0U1RTh5aEJGO0FBQ0Y7QTZFcmhkQTtFQUVJO0E3RXNoZEo7QTZFcGhkSTtFQUNJO0E3RXNoZFI7QTZFbmhkSTtFQVJKO0lBU1E7RTdFc2hkTjtBQUNGO0E2RXBoZEk7RUFDSTtBN0VzaGRSOztBNkVsaGRBO0VBQ0k7RUFDQTtFQUNBO0VEenlFRjtBNUUremhCRjtBNEU3emhCRTtFQ295RUY7SURueUVJO0U1RWcwaEJGO0FBQ0Y7QTZFeGhkSTtFQU5KO0lBT1E7RTdFMmhkTjtBQUNGO0E2RXpoZEk7RUFWSjtJQVdRO0lBQ0E7SUFDQTtFN0U0aGROO0FBQ0Y7QTZFMWlkQTtFQWdCSTtFQUNBO0E3RTZoZEo7QTZFM2hkSTtFQUNJO0VBQ0E7QTdFNmhkUjtBNkUzaGRRO0VBQ0k7RUFDQTtBN0U2aGRaO0E2RTFoZFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RTRoZFo7O0E2RXZoZEE7RUFDSTtBN0UwaGRKO0E2RXhoZEk7RUFDSTtBN0UwaGRSO0E2RXZoZFk7RUFDSTtBN0V5aGRoQjs7QTZFbmhkQTtFQUNJO0E3RXNoZEo7QTZFcGhkSTtFQUNJO0E3RXNoZFI7QTZFbmhkWTtFQUNJO0E3RXFoZGhCOztBNkUvZ2RBO0VBQ0k7QTdFa2hkSjtBNkVoaGRJO0VBQ0k7QTdFa2hkUjtBNkUvZ2RZO0VBQ0k7QTdFaWhkaEI7O0E2RTNnZEE7QUFDQTtFRGw0RUU7QTVFaTVoQkY7QTRFLzRoQkU7RUNnNEVGO0lELzNFSTtFNUVrNWhCRjtBQUNGO0E2RWpoZEk7RUFDSTtFQUNBO0E3RW1oZFI7QTZFamhkUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFbWhkWjtBNkVqaGRZO0VBVko7SUFXUTtFN0VvaGRkO0FBQ0Y7QTZFamhkUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RW1oZFo7QTZFamhkWTtFQVpKO0lBYVE7RTdFb2hkZDtBQUNGO0E2RWhoZEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0VraGRSO0E2RWhoZFE7RUFOSjtJQU9RO0lBQ0E7SUFDQTtFN0VtaGRWO0FBQ0Y7QTZFamhkUTtFQUNJO0VBQ0E7RUFDQTtBN0VtaGRaO0E2RWhoZFE7RUFDSTtFQUNBO0VBQ0E7QTdFa2hkWjtBNkUvZ2RRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RWloZFo7QTZFOWdkUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFZ2hkWjtBNkU5Z2RZO0VBVko7SUFXUTtJQUNBO0U3RWloZGQ7QUFDRjtBNkU5Z2RRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RWdoZFo7QTZFOWdkWTtFQVJKO0lBU1E7RTdFaWhkZDtBQUNGO0E2RTdnZFk7RUFDSTtFQUNBO0VBQ0E7QTdFK2dkaEI7QTZFemdkUTtFQUNJO0lBQ0k7RTdFMmdkZDtBQUNGO0E2RXhnZFE7RUFDSTtJQUNJO0U3RTBnZGQ7QUFDRjtBNkV2Z2RRO0VBYko7SUFjUTtFN0UwZ2RWO0U2RXhnZFU7SUFDSTtFN0UwZ2RkO0U2RXZnZFU7SUFDSTtJQUNBO0lBQ0E7RTdFeWdkZDtBQUNGO0E2RXBnZFE7RUFDSTtJQUNJO0U3RXNnZGQ7QUFDRjtBNkVuZ2RRO0VBQ0k7SUFDSTtFN0VxZ2RkO0FBQ0Y7QTZFbGdkUTtFQWJKO0lBY1E7RTdFcWdkVjtFNkVuZ2RVO0lBQ0k7RTdFcWdkZDtFNkVsZ2RVO0lBQ0k7SUFDQTtJQUNBO0U3RW9nZGQ7QUFDRjs7QTZFLy9jQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VEL2lGRjtBNUVramlCRjtBNEVoamlCRTtFQzBpRkY7SUR6aUZJO0U1RW1qaUJGO0FBQ0Y7QTZFcmdkSTtFQU5KO0lBT1E7RTdFd2dkTjtBQUNGO0E2RXRnZEk7RUFWSjtJQVdRO0lBQ0E7SUFDQTtFN0V5Z2ROO0FBQ0Y7QTZFdmhkQTtFQWdCSTtFQUNBO0E3RTBnZEo7O0E2RXZnZEE7QUFDQTtFRHprRkU7QTVFb2xpQkY7QTRFbGxpQkU7RUN1a0ZGO0lEdGtGSTtFNUVxbGlCRjtBQUNGO0E2RWhoZEE7RUFFSTtBN0VpaGRKO0E2RS9nZEk7RUFKSjtJQUtRO0U3RWtoZE47QUFDRjtBNkVoaGRJO0VBUko7SUFTUTtFN0VtaGROO0FBQ0Y7QTZFaGhkUTtFQUNJO0E3RWtoZFo7O0E2RTNnZEk7RUFGSjs7SUFHUTtFN0VnaGROO0FBQ0Y7QTZFOWdkSTs7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0VpaGRSO0E2RTlnZEk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VpaGRSO0E2RS9nZFE7O0VBQ0k7RUFDQTtBN0VraGRaOztBNkU3Z2RBO0VBQ0k7RUR4bkZGO0E1RXlvaUJGO0E0RXZvaUJFO0VDcW5GRjtJRHBuRkk7RTVFMG9pQkY7QUFDRjtBNkV2aGRBO0VBR0k7RUFDQTtBN0V1aGRKO0E2RXJoZEk7RUFOSjtJQU9RO0U3RXdoZE47QUFDRjtBNkV0aGRJO0VBVko7SUFXUTtFN0V5aGROO0FBQ0Y7O0E2RXRoZEE7RUFDSTtFQUNBO0VBQ0E7RURqb0ZGO0E1RTJwaUJGO0E0RXpwaUJFO0VDNG5GRjtJRDNuRkk7RTVFNHBpQkY7QUFDRjtBNkVsaWRBO0VBS0k7RUFDQTtFQUNBO0VBQ0E7QTdFZ2lkSjtBNkU5aGRJO0VBQ0k7QTdFZ2lkUjtBNkU3aGRJO0VBZEo7SUFlUTtFN0VnaWROO0FBQ0Y7QTZFOWhkSTtFQWxCSjtJQW1CUTtFN0VpaWROO0FBQ0Y7QTZFL2hkSTtFQXRCSjtJQXVCUTtJQUNBO0lBQ0E7RTdFa2lkTjtBQUNGO0E2RWhpZEk7RUE1Qko7SUE2QlE7RTdFbWlkTjtBQUNGO0E2RWppZEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VtaWRSO0E2RWppZFE7RUFUSjtJQVVRO0lBQ0E7RTdFb2lkVjtBQUNGO0E2RWxpZFE7RUFkSjtJQWVRO0lBQ0E7RTdFcWlkVjtBQUNGO0E2RWxpZEk7RUFDSTtBN0VvaWRSO0E2RWxpZFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RW9pZFo7QTZFaGlkSTtFQUNJO0VBQ0E7QTdFa2lkUjtBNkVoaWRRO0VBQ0k7QTdFa2lkWjtBNkUvaGRRO0VBQ0k7RUFDQTtFQUNBO0E3RWlpZFo7QTZFN2hkSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3RStoZFI7QTZFN2hkUTtFQUNJO0E3RStoZFo7QTZFNWhkUTtFQUVJO0VBQ0E7QTdFNmhkWjtBNkUzaGRZOzs7RUFFSTtBN0U4aGRoQjtBNkV4aGRRO0VBQ0k7QTdFMGhkWjtBNkV4aGRZO0VBQ0k7RUFDQTtFQUNBO0E3RTBoZGhCOztBNkVuaGRBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFc2hkSjtBNkVwaGRJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VzaGRSOztBNkVsaGRBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUQxd0ZGO0E1RWd5aUJGO0E0RTl4aUJFO0VDcXdGRjtJRHB3Rkk7RTVFaXlpQkY7QUFDRjtBNkV4aGRJO0VBTko7SUFPUTtFN0UyaGROO0FBQ0Y7QTZFemhkSTtFQVZKO0lBV1E7SUFDQTtJQUNBO0U3RTRoZE47QUFDRjtBNkUxaWRBO0VBZ0JJO0VBS0E7QTdFeWhkSjs7QTZFdGhkQTtBQUNBO0VEeHlGRTtBNUVrMGlCRjtBNEVoMGlCRTtFQ3N5RkY7SURyeUZJO0U1RW0waUJGO0FBQ0Y7O0E2RTNoZEE7QUFDQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VEenlGRjtBNUV3MGlCRjtBNEV0MGlCRTtFQ215RkY7SURseUZJO0U1RXkwaUJGO0FBQ0Y7QTZFeGlkQTtFQU1JO0E3RXFpZEo7QTZFbmlkSTtFQVJKO0lBU1E7RTdFc2lkTjtBQUNGO0E2RXBpZEk7RUFaSjtJQWFRO0lBQ0E7SUFDQTtFN0V1aWROO0FBQ0Y7QTZFdmpkQTtFQWtCSTtFQUNBO0E3RXdpZEo7QTZFcmlkUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXVpZFo7QTZFcmlkWTtFQUNJO0VBQ0E7RUFDQTtBN0V1aWRoQjtBNkVwaWRZO0VBQ0k7RUFDQTtBN0VzaWRoQjtBNkVqaWRJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFbWlkUjs7QTZFL2hkQTtFRGoyRkU7QTVFbzRpQkY7QTRFbDRpQkU7RUMrMUZGO0lEOTFGSTtFNUVxNGlCRjtBQUNGO0E2RXJpZEk7RUFDSTtBN0V1aWRSO0E2RXJpZFE7RUFDSTtBN0V1aWRaOztBNkVsaWRBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7QTdFcWlkSjtBNkVuaWRJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VxaWRSO0E2RW5pZFE7RUFDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U3RXFpZGQ7RTZFbGlkVTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U3RW9pZGQ7QUFDRjtBNkVqaWRRO0VBQ0k7RUFDQTtBN0VtaWRaO0E2RWppZFk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VtaWRoQjtBNkVqaWRnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFbWlkcEI7O0E2RTVoZEE7QUFDQTtFRDc2RkU7QTVFNjhpQkY7QTRFMzhpQkU7RUMyNkZGO0lEMTZGSTtFNUU4OGlCRjtBQUNGO0E2RXJpZEE7RUFFSTtFQUNBO0E3RXNpZEo7QTZFcGlkSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0E3RWtpZFI7QTZFaGlkUTtFQWhCSjtJQWlCUTtJQUNBO0lBQ0E7SUFDQTtFN0VtaWRWO0FBQ0Y7QTZFamlkUTtFQXZCSjtJQXdCUTtJQUNBO0lBQ0E7RTdFb2lkVjtBQUNGOztBNkVoaWRBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RW1pZEo7QTZFamlkSTtFQVJKO0lBU1E7SUFDQTtJQUNBO0U3RW9pZE47QUFDRjs7QTZFaGlkSTtFQURKO0lBRVE7RTdFb2lkTjtBQUNGOztBNkVqaWRBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VvaWRKOztBNkVqaWRBO0VBQ0k7QTdFb2lkSjs7QTZFamlkQTtFQUNJO0VBQ0E7QTdFb2lkSjs7QTZFaGlkSTtFQUNJO0VBQ0E7QTdFbWlkUjtBNkVqaWRRO0VBQ0k7QTdFbWlkWjs7QTZFNWhkUTtFQUNJO0VBQ0E7RUFDQTtBN0UraGRaO0E2RTdoZFk7RUFDSTtBN0UraGRoQjtBNkU1aGRZO0VBQ0k7RUFDQTtFQUNBO0E3RThoZGhCOztBNkV4aGRBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFMmhkSjtBNkV6aGRJO0VBQ0k7RUFDQTtFQUNBO0E3RTJoZFI7QTZFemhkUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RTJoZFo7QTZFeGhkUTtFQUNJO0E3RTBoZFo7QTZFdmhkUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXloZFo7QTZFcmhkWTtFQUVJO0VBQ0E7QTdFdWhkaEI7QTZFaGhkWTtFQUVJO0VBQ0E7RUFDQTtBN0VraGRoQjtBNkU5Z2RRO0VBaERKO0lBaURRO0U3RWloZFY7QUFDRjtBNkU5Z2RJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFZ2hkUjs7QTZFNWdkQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RStnZEo7QTZFN2dkSTtFQVRKO0lBVVE7RTdFZ2hkTjtBQUNGO0E2RTlnZEk7RUFiSjtJQWNRO0U3RWloZE47QUFDRjtBNkUvZ2RJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VpaGRSO0E2RS9nZFE7RUFQSjtJQVFRO0U3RWtoZFY7QUFDRjtBNkVoaGRRO0VBWEo7SUFZUTtFN0VtaGRWO0FBQ0Y7QTZFamhkUTtFQWZKO0lBZ0JRO0lBQ0E7RTdFb2hkVjtBQUNGO0E2RWxoZFE7RUFwQko7SUFxQlE7SUFDQTtFN0VxaGRWO0FBQ0Y7QTZFbmhkUTtFQXpCSjtJQTBCUTtJQUNBO0U3RXNoZFY7QUFDRjtBNkVwaGRRO0VBQ0k7S0FBQTtFQUNBO0VBQ0E7QTdFc2hkWjtBNkVsaGRJO0VBRVE7SUFDSTtFN0VtaGRkO0FBQ0Y7QTZFL2dkSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFaWhkUjtBNkUvZ2RRO0VBUEo7SUFRUTtJQUNBO0U3RWtoZFY7QUFDRjtBNkVoaGRRO0VBWko7SUFhUTtJQUNBO0U3RW1oZFY7QUFDRjtBNkVoaGRZO0VBREo7SUFFUTtFN0VtaGRkO0FBQ0Y7QTZFaGhkUTtFQUNJO0E3RWtoZFo7QTZFaGhkWTtFQUhKO0lBSVE7RTdFbWhkZDtBQUNGO0E2RWhoZFE7O0VBRUk7QTdFa2hkWjtBNkUvZ2RRO0VBQ0k7QTdFaWhkWjtBNkU5Z2RRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFZ2hkWjtBNkU5Z2RZO0VBQ0k7QTdFZ2hkaEI7QTZFN2dkWTtFQUVJO0VBQ0E7QTdFOGdkaEI7O0E2RXhnZEE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QTdFMGdkSjtBNkV4Z2RJO0VBVEo7SUFVUTtFN0UyZ2ROO0FBQ0Y7QTZFemdkSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0UyZ2RSO0E2RXhnZEk7RUFDSTtBN0UwZ2RSO0E2RXRnZFE7RUFESjtJQUVRO0lBQ0E7RTdFeWdkVjtBQUNGO0E2RXRnZFk7RUFESjtJQUVRO0lBQ0E7RTdFeWdkZDtBQUNGOztBNkVwZ2RBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0V1Z2RKOztBNkVwZ2RBO0FBQ0E7RUFDSTtBN0V1Z2RKO0E2RXJnZEk7RUFDSTtBN0V1Z2RSO0E2RXJnZFE7RUFISjtJQUlRO0U3RXdnZFY7QUFDRjtBNkVyZ2RJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFdWdkUjtBNkVwZ2RJO0VBbEJKO0lBbUJRO0U3RXVnZE47RTZFcmdkTTtJQUNJO0U3RXVnZFY7QUFDRjs7QTZFbGdkSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VxZ2RSO0E2RW5nZFE7RUFDSTtFQUNBO0E3RXFnZFo7O0E2RWhnZEE7RUQ5ekdFO0E1RWswakJGO0E0RWgwakJFO0VDNHpHRjtJRDN6R0k7RTVFbTBqQkY7QUFDRjtBNkVyZ2RRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFdWdkWjtBNkVwZ2RRO0VBQ0k7SUFDSTtJQUNBO0U3RXNnZGQ7QUFDRjtBNkVsZ2RJO0VBQ0k7RUFDQTtBN0VvZ2RSO0E2RWxnZFE7RUFDSTtFQUNBO0E3RW9nZFo7QTZFamdkUTtFQUNJO0E3RW1nZFo7QTZFLy9jSTtFQUNJO0E3RWlnZFI7QTZFLy9jUTtFQUNJO0E3RWlnZFo7QTZFLy9jWTtFQUNJO0E3RWlnZGhCO0E2RTcvY1E7RUFDSTtBN0UrL2NaO0E2RTUvY1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RTgvY1o7QTZFNS9jWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFOC9jaEI7QTZFMS9jUTtFQUNJO0E3RTQvY1o7QTZFei9jUTtFQUNJO0VBQ0E7RUFDQTtFQUtBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFdS9jWjtBNkVyL2NZO0VBQ0k7QTdFdS9jaEI7QTZFbi9jUTtFQUNJO0VBQ0E7RUFDQTtBN0VxL2NaO0E2RW4vY1k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFcS9jaEI7QTZFbC9jWTtFQUNJO0E3RW8vY2hCO0E2RWwvY2dCO0VBQ0k7QTdFby9jcEI7QTZFOStjWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFNQTtFQUNBO0E3RTIrY2hCO0E2RXorY2dCO0VBMUJKO0lBMkJRO0lBQ0E7RTdFNCtjbEI7QUFDRjtBNkUxK2NnQjtFQUNJO0E3RTQrY3BCO0E2RXorY2dCO0VBRUk7RUFDQTtBN0UwK2NwQjtBNkV4K2NvQjtFQUNJO0E3RTArY3hCO0E2RXArY1E7RUFDSTtFQUNBO0VBQ0E7QTdFcytjWjtBNkVwK2NZO0VBQ0k7RUFDQTtFQUNBO0E3RXMrY2hCO0E2RXArY2dCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFcytjcEI7QTZFbitjZ0I7RUFDSTtBN0VxK2NwQjtBNkVoK2NRO0VBQ0k7RUFDQTtFQUNBO0E3RWsrY1o7QTZFaCtjWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RWsrY2hCO0E2RWgrY2dCO0VBVEo7SUFVUTtJQUNBO0U3RW0rY2xCO0FBQ0Y7QTZFaitjZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VtK2NwQjtBNkVoK2NnQjtFQUNJO0E3RWsrY3BCO0E2RWgrY29CO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFaytjeEI7QTZFOTljZ0I7RUFDSTtBN0VnK2NwQjtBNkUzOWNRO0VBQ0k7RUFDQTtBN0U2OWNaO0E2RXo5Y0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RTI5Y1I7QTZFeDljSTtFQUNJO0VBQ0E7QTdFMDljUjtBNkV4OWNRO0VBQ0k7QTdFMDljWjtBNkV2OWNRO0VBQ0k7RUFDQTtFQUNBO0E3RXk5Y1o7QTZFdjljWTtFQUNJO0E3RXk5Y2hCO0E2RXI5Y1E7RUFDSTtBN0V1OWNaO0E2RXI5Y1k7RUFISjtJQUlRO0U3RXc5Y2Q7QUFDRjtBNkV0OWNZOzs7Ozs7Ozs7Ozs7RUFPSTtBN0U2OWNoQjtBNkUxOWNZO0VBQ0k7QTdFNDljaEI7QTZFejljWTtFQUNJO0VBQ0E7QTdFMjljaEI7QTZFeDljWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3RTA5Y2hCO0E2RXg5Y2dCO0VBQ0k7RUFDQTtFQUNBO0E3RTA5Y3BCO0E2RXg5Y29CO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFMDljeEI7QTZFdjljb0I7RUFsQko7SUFtQlE7RTdFMDljdEI7QUFDRjtBNkV2OWNnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFeTljcEI7QTZFdjljb0I7RUFDSTtBN0V5OWN4QjtBNkV0OWNvQjtFQUNJO0E3RXc5Y3hCO0E2RXI5Y29CO0VBZko7SUFnQlE7RTdFdzljdEI7QUFDRjtBNkVoOWNZO0VBQ0k7QTdFazljaEI7QTZFOThjZ0I7RUFDSTtBN0VnOWNwQjs7QTZFejhjQTtFQUNJO0E3RTQ4Y0o7QTZFMThjSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0U0OGNSOztBNkV4OGNBOztFQUVJO0VBQ0E7RUFDQTtBN0UyOGNKO0E2RXo4Y0k7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFNDhjUjtBNkUxOGNROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RTY4Y1o7QTZFMThjUTs7RUFDSTtBN0U2OGNaOztBNkV4OGNBOztFQUVJO0VBQ0E7RUFDQTtBN0UyOGNKO0E2RXo4Y0k7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFNDhjUjtBNkUxOGNROztFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RTY4Y1o7QTZFMThjUTs7RUFDSTtBN0U2OGNaOztBNkV4OGNBO0VBQ0k7RUFDQTtBN0UyOGNKOztBNkV4OGNBO0VBQ0k7QTdFMjhjSjtBNkV6OGNJO0VBSEo7SUFJUTtFN0U0OGNOO0FBQ0Y7O0E2RXo4Y0E7RUFDSTtFQUNBO0E3RTQ4Y0o7QTZFMThjSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0E3RXc4Y1I7QTZFdDhjUTtFQWhCSjtJQWlCUTtJQUNBO0lBQ0E7SUFDQTtFN0V5OGNWO0FBQ0Y7QTZFdjhjUTtFQXZCSjtJQXdCUTtJQUNBO0lBQ0E7RTdFMDhjVjtBQUNGOztBNkV0OGNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFeThjSjtBNkV0OGNRO0VBQ0k7QTdFdzhjWjs7QTZFbjhjQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFczhjSjtBNkVwOGNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VzOGNSO0E2RXA4Y1E7RUFDSTtBN0VzOGNaO0E2RXY4Y1E7RUFDSTtBN0VzOGNaO0E2RWw4Y0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RW84Y1I7O0E2RTk3Y1E7O0VBRUk7RUFDQTtBN0VpOGNaO0E2RS83Y1k7O0VBQ0k7QTdFazhjaEI7QTZFOTdjUTtFQUNJO0E3RWc4Y1o7QTZFNTdjSTs7RUFFSTtBN0U4N2NSO0E2RXo3Y1k7RUFDSTtBN0UyN2NoQjs7QTZFcjdjQTtFQUNJO0E3RXc3Y0o7QTZFdDdjSTtFQUhKO0lBSVE7RTdFeTdjTjtBQUNGOztBNkVyN2NJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFdzdjUjtBNkV0N2NRO0VBQ0k7QTdFdzdjWjtBNkVyN2NRO0VBQ0k7RUFDQTtBN0V1N2NaO0E2RXA3Y1E7RUFDSTtBN0VzN2NaO0E2RXA3Y1k7RUFDSTtBN0VzN2NoQjtBNkVuN2NZO0VBUEo7SUFRUTtFN0VzN2NkO0FBQ0Y7QTZFajdjZ0I7RUFDSTtBN0VtN2NwQjtBNkVqN2NvQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3RW03Y3hCO0E2RWo3Y3dCO0VBQ0k7QTdFbTdjNUI7QTZFaDdjd0I7RUFWSjtJQVdRO0lBQ0E7RTdFbTdjMUI7QUFDRjtBNkVoN2NvQjtFQUNJO0E3RWs3Y3hCO0E2RWg3Y3dCO0VBQ0k7RUFDQTtBN0VrN2M1QjtBNkVoN2M0QjtFQUpKO0lBS1E7RTdFbTdjOUI7QUFDRjtBNkUzNmNZO0VBQ0k7QTdFNjZjaEI7QTZFMzZjZ0I7RUFDSTtFQUNBO0VBQ0E7QTdFNjZjcEI7QTZFMzZjb0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0U2NmN4QjtBNkV6NmN3QjtFQUNJO0E3RTI2YzVCO0E2RXg2Y3dCO0VBQ0k7QTdFMDZjNUI7QTZFdDZjb0I7RUFDSTtBN0V3NmN4QjtBNkVyNmNvQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXU2Y3hCO0E2RWg2Y1k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0VrNmNoQjtBNkVoNmNnQjtFQUNJO0E3RWs2Y3BCO0E2RWg2Y29CO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VrNmN4QjtBNkVoNmN3QjtFQUNJO0VBQ0E7QTdFazZjNUI7QTZFNzVjd0I7RUFDSTtBN0UrNWM1Qjs7QTZFcjVjSTs7RUFFSTtBN0V3NWNSO0E2RXI1Y0k7O0VBRUk7RUFDQTtBN0V1NWNSO0E2RXI1Y1E7O0VBQ0k7QTdFdzVjWjtBNkVuNWNRO0VBREo7SUFFUTtFN0VzNWNWO0FBQ0Y7QTZFbDVjWTs7RUFDSTtBN0VxNWNoQjs7QTZFLzRjQTtBQUNBO0VEN2pJRTtBNUVnOWtCRjtBNEU5OGtCRTtFQzJqSUY7SUQxaklJO0U1RWk5a0JGO0FBQ0Y7QTZFeDVjQTtFQUdJO0VBQ0E7QTdFdzVjSjtBNkV0NWNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUtBO0VBQ0E7QTdFbzVjUjtBNkVsNWNRO0VBaEJKO0lBaUJRO0lBQ0E7SUFDQTtJQUNBO0U3RXE1Y1Y7QUFDRjtBNkVuNWNRO0VBdkJKO0lBd0JRO0lBQ0E7SUFDQTtFN0VzNWNWO0FBQ0Y7O0E2RWw1Y0E7RUFDSTtFQUNBO0VBQ0E7RUQ3bElGO0E1RW0va0JGO0E0RWova0JFO0VDd2xJRjtJRHZsSUk7RTVFby9rQkY7QUFDRjtBNkV4NWNJO0VBTko7SUFPUTtFN0UyNWNOO0FBQ0Y7QTZFejVjSTtFQVZKO0lBV1E7SUFDQTtJQUNBO0U3RTQ1Y047QUFDRjtBNkUxNmNBO0VBZ0JJO0VBQ0E7QTdFNjVjSjs7QTZFMTVjQTtFRHRuSUU7QTVFb2hsQkY7QTRFbGhsQkU7RUNvbklGO0lEbm5JSTtFNUVxaGxCRjtBQUNGO0E0RTE4a0JFO0VBQ0U7RUFDQTtFQUNBO0E1RTQ4a0JKO0E0RTE4a0JJO0VBQ0U7QTVFNDhrQk47QTRFeDhrQkU7RUFDRTtFQUNBO0VBQ0EsdUJDOGhJSTtFRDdoSUo7RUFDQTtFQUNBO0E1RTA4a0JKO0E0RXg4a0JJO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsV0F2QnFKO0VBd0JySixZQXhCcUo7RUF5QnJKO0VBQ0E7QTVFMDhrQk47QTRFdjhrQkk7RUFDRSx1QkNnaElFO0E3RXk3Y1I7QTRFdjhrQk07RUFFSTtBNUV3OGtCVjtBNEU5N2tCRTtFQUNFO0VBQ0EsdUJDKy9ISTtFRDkvSEo7RUFDQTtBNUVnOGtCSjs7QTZFNTdjQTtFRGxvSUU7QTVFa2tsQkY7QTRFaGtsQkU7RUNnb0lGO0lEL25JSTtFNUVta2xCRjtBQUNGO0E2RWo4Y1E7RUFDSTtBN0VtOGNaO0E2RWg4Y2dCO0VBQ0k7QTdFazhjcEI7QTZFOTdjWTtFQUVJO0E3RSs3Y2hCO0E2RTU3Y29CO0VBQ0k7QTdFODdjeEI7QTZFMTdjZ0I7OztFQUVJO0E3RTY3Y3BCO0E2RXg3Y1E7RUFDSTtBN0UwN2NaO0E2RXY3Y1E7RUFDSTs7SUFFSTtFN0V5N2NkO0FBQ0Y7QTZFcjdjSTtFQUNJO0VBQ0E7QTdFdTdjUjtBNkVyN2NRO0VBQ0k7RUFDQTtFQUNBO0E3RXU3Y1o7QTZFbjdjSTtFQUNJO0VBQ0E7QTdFcTdjUjs7QTZFajdjQTtFRDdySUU7QTVFa25sQkY7QTRFaG5sQkU7RUMycklGO0lEMXJJSTtFNUVtbmxCRjtBQUNGO0E2RXQ3Y1E7RUFDSTtBN0V3N2NaO0E2RXQ3Y1k7RUFISjtJQUlRO0U3RXk3Y2Q7QUFDRjs7QTZFcDdjQTtBQUNBO0VENXNJRTtBNUVvb2xCRjtBNEVsb2xCRTtFQzBzSUY7SUR6c0lJO0U1RXFvbEJGO0FBQ0Y7O0E2RXo3Y0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFNDdjSjtBNkUxN2NJO0VBUko7SUFTUTtJQUNBO0U3RTY3Y047QUFDRjtBNkUzN2NJO0VBYko7SUFjUTtJQUNBO0U3RTg3Y047QUFDRjtBNkU1N2NJO0VBbEJKO0lBbUJRO0U3RSs3Y047QUFDRjtBNkU3N2NJO0VBdEJKO0lBdUJRO0U3RWc4Y047QUFDRjs7QTZFNzdjQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RWc4Y0o7QTZFOTdjSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0E3RTQ3Y1I7QTZFMTdjUTtFQWhCSjtJQWlCUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U3RTY3Y1Y7QUFDRjtBNkUxN2NJO0VBckNKO0lBc0NRO0U3RTY3Y047QUFDRjtBNkUzN2NJO0VBekNKO0lBMENRO0U3RTg3Y047QUFDRjtBNkU1N2NJO0VBN0NKO0lBOENRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFN0UrN2NOO0FBQ0Y7QTZFNzdjSTtFQXRESjtJQXVEUTtJQUNBO0lBQ0E7SUFDQTtFN0VnOGNOO0FBQ0Y7QTZFOTdjSTtFQTdESjtJQThEUTtJQUNBO0U3RWk4Y047QUFDRjtBNkUvN2NJO0VBbEVKO0lBbUVRO0lBQ0E7RTdFazhjTjtBQUNGOztBNkUvN2NBO0VBQ0k7RUFDQTtBN0VrOGNKOztBNkUvN2NBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VrOGNKO0E2RWg4Y0k7RUFDSTtBN0VrOGNSO0E2RS83Y0k7RUFDSTtBN0VpOGNSO0E2RS83Y1E7RUFDSTtBN0VpOGNaO0E2RS83Y1k7RUFDSTtFQUNBO0E3RWk4Y2hCO0E2RTM3Y1E7RUFDSTtFQUNBO0VBQ0E7QTdFNjdjWjtBNkV6N2NJO0VBQ0k7RUFDQTtBN0UyN2NSO0E2RXg3Y1k7RUFDSTtBN0UwN2NoQjtBNkV4N2NnQjtFQUNJO0E3RTA3Y3BCO0E2RXA3Y1k7RUFDSTtBN0VzN2NoQjs7QTZFaDdjQTtBQUNBO0VEbDNJRTtBNUVzeWxCRjtBNEVweWxCRTtFQ2czSUY7SUQvMklJO0U1RXV5bEJGO0FBQ0Y7QTZFejdjQTtFQUVJO0E3RTA3Y0o7QTZFeDdjSTtFQUNJO0VBQ0E7QTdFMDdjUjtBNkV4N2NRO0VBQ0k7QTdFMDdjWjtBNkV2N2NRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFeTdjWjtBNkV2N2NZO0VBTko7SUFPUTtFN0UwN2NkO0FBQ0Y7QTZFeDdjWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0UwN2NoQjtBNkV4N2NnQjtFQWRKO0lBZVE7SUFDQTtJQUNBO0U3RTI3Y2xCO0FBQ0Y7QTZFejdjZ0I7RUFwQko7SUFxQlE7SUFDQTtJQUNBO0U3RTQ3Y2xCO0FBQ0Y7QTZFejdjWTtFQUNJO0E3RTI3Y2hCO0E2RXo3Y2dCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0UyN2NwQjtBNkV6N2NvQjtFQVZKO0lBV1E7SUFDQTtFN0U0N2N0QjtBQUNGO0E2RTE3Y29CO0VBZko7SUFnQlE7RTdFNjdjdEI7QUFDRjtBNkUxN2NnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFNDdjcEI7QTZFMTdjb0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFNDdjeEI7QTZFdjdjWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXk3Y2hCO0E2RXY3Y2dCO0VBWko7SUFhUTtFN0UwN2NsQjtBQUNGO0E2RXY3Y1k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXk3Y2hCO0E2RXY3Y2dCO0VBVko7SUFXUTtFN0UwN2NsQjtBQUNGO0E2RXQ3Y1E7RUFDSTtBN0V3N2NaO0E2RXQ3Y1k7RUFISjtJQUlRO0U3RXk3Y2Q7QUFDRjtBNkV2N2NZO0VBQ0k7RUFDQTtBN0V5N2NoQjtBNkV2N2NnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFeTdjcEI7QTZFdjdjb0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFeTdjeEI7QTZFdjdjd0I7RUFYSjtJQVlRO0U3RTA3YzFCO0FBQ0Y7QTZFdDdjZ0I7RUFDSTtBN0V3N2NwQjtBNkVyN2NnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3RXU3Y3BCO0E2RXI3Y29CO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0V1N2N4Qjs7QTZFLzZjQTtBQUNBO0VBQ0k7RUFDQTtBN0VrN2NKO0E2RWg3Y0k7RUFDSTtFQUNBO0E3RWs3Y1I7QTZFLzZjSTtFQUNJO0E3RWk3Y1I7QTZFLzZjUTtFQUhKO0lBSVE7RTdFazdjVjtBQUNGO0E2RWg3Y1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RWs3Y1o7QTZFMzZjZ0I7RUFDSTtBN0U2NmNwQjtBNkUxNmNnQjtFQUNJO0E3RTQ2Y3BCO0E2RXg2Y1k7RUFDSTtFQUNBO0E3RTA2Y2hCO0E2RXg2Y2dCO0VBQ0k7QTdFMDZjcEI7QTZFcDZjSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXM2Y1I7QTZFcDZjUTtFQUNJO0VBQ0E7QTdFczZjWjtBNkVuNmNRO0VBQ0k7RUFDQTtFQUNBO0E3RXE2Y1o7QTZFbDZjUTtFQXZCSjtJQXdCUTtJQUNBO0lBQ0E7SUFDQTtFN0VxNmNWO0FBQ0Y7QTZFbDZjWTtFQURKO0lBRVE7RTdFcTZjZDtBQUNGO0E2RWw2Y1E7RUFDSTtFQUNBO0E3RW82Y1o7QTZFbDZjWTtFQUpKO0lBS1E7RTdFcTZjZDtBQUNGOztBNkVoNmNBO0VBQ0k7QTdFbTZjSjtBNkVqNmNJOztFQUVJO0E3RW02Y1I7QTZFaDZjSTs7RUFFSTtBN0VrNmNSO0E2RS81Y0k7RUFDSTtBN0VpNmNSO0E2RS81Y1E7RUFDSTtFQUNBO0E3RWk2Y1o7QTZFLzVjWTtFQUpKO0lBS1E7SUFDQTtJQUNBO0U3RWs2Y2Q7QUFDRjtBNkU5NWNZO0VBREo7SUFFUTtFN0VpNmNkO0FBQ0Y7QTZFLzVjWTtFQUNJO0E3RWk2Y2hCO0E2RS81Y2dCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RWk2Y3BCO0E2RTk1Y2dCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFZzZjcEI7QTZFOTVjb0I7RUFOSjtJQU9RO0U3RWk2Y3RCO0FBQ0Y7QTZFLzVjb0I7RUFDSTtBN0VpNmN4QjtBNkU3NWNnQjtFQUNJO0E3RSs1Y3BCO0E2RTM1Y29CO0VBREo7SUFFUTtFN0U4NWN0QjtBQUNGO0E2RXg1Y0k7RUFDSTtFQUNBO0VBQ0E7QTdFMDVjUjtBNkV2NWNZO0VBQ0k7QTdFeTVjaEI7O0E2RWw1Y0E7RUQ5dEpFO0E1RW9ubUJGO0E0RWxubUJFO0VDNHRKRjtJRDN0Skk7RTVFcW5tQkY7QUFDRjtBNkUzNWNBO0VBRUk7RUFDQTtFQUNBO0E3RTQ1Y0o7QTZFMTVjSTtFQUNJO0E3RTQ1Y1I7O0E2RXg1Y0E7QUFDQTtFQUNJO0E3RTI1Y0o7O0E2RXg1Y0E7RUFDSTtBN0UyNWNKOztBNkV4NWNBO0VBQ0k7QTdFMjVjSjs7QTZFeDVjQTtFQUNJO0E3RTI1Y0o7O0E2RXg1Y0E7RUFDSTtBN0UyNWNKOztBNkV0NWNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFeTVjSjtBNkV2NWNJO0VBQ0k7RUFDQTtBN0V5NWNSO0E2RXQ1Y0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0V3NWNSO0E2RXQ1Y1E7RUFHSTtBN0V3NWNaOztBNkVuNWNBO0VBQ0k7SUFFSTtFN0VzNWNOO0U2RW41Y0U7SUFHSTtFN0VvNWNOO0U2RWo1Y0U7SUFFSTtFN0VtNWNOO0FBQ0Y7QTZFaDVjQTtFQUNJO0E3RWs1Y0o7O0E2RS80Y0E7RUFDSTtFQUNBO0VBQ0E7QTdFazVjSjtBNkVoNWNJO0VBQ0k7RUFDQTtBN0VrNWNSOztBNkU3NGNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFZzVjUjs7QTZFMzRjQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0U4NGNKO0E2RTU0Y0k7RUFDSTtBN0U4NGNSO0E2RTM0Y0k7RUFDSTtFQUNBO0VBQ0E7QTdFNjRjUjtBNkUzNGNRO0VBQ0k7RUFDQTtBN0U2NGNaO0E2RTE0Y1E7RUFDSTtFQUNBO0VBQ0E7QTdFNDRjWjtBNkV4NGNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFMDRjUjtBNkV4NGNRO0VBQ0k7RUFDQTtBN0UwNGNaO0E2RXQ0Y0k7RUFDSTtFQUNBO0VBQ0E7QTdFdzRjUjtBNkV0NGNRO0VBTEo7SUFNUTtJQUNBO0U3RXk0Y1Y7QUFDRjtBNkV0NGNJO0VBQ0k7SUFDSTtJQUNBO0U3RXc0Y1Y7QUFDRjtBNkVyNGNJO0VBM0RKO0lBNERRO0lBQ0E7RTdFdzRjTjtFNkV0NGNNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U3RXc0Y1Y7RTZFdDRjVTtJQUNJO0lBQ0E7RTdFdzRjZDtFNkVwNGNNO0lBQ0k7SUFDQTtJQUNBO0U3RXM0Y1Y7QUFDRjtBNkVuNGNJO0VBcEZKO0lBcUZRO0lBQ0E7RTdFczRjTjtBQUNGO0E2RXA0Y0k7RUF6Rko7SUEwRlE7SUFDQTtFN0V1NGNOO0FBQ0Y7QTZFcjRjSTtFQTlGSjtJQStGUTtJQUNBO0lBQ0E7SUFDQTtFN0V3NGNOO0FBQ0Y7O0E2RXI0Y0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXc0Y0o7QTZFdDRjSTtFQVZKO0lBV1E7RTdFeTRjTjtBQUNGOztBNkV0NGNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXk0Y0o7O0E2RXQ0Y0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0V5NGNKO0E2RXY0Y0k7RUFOSjtJQU9RO0U3RTA0Y047QUFDRjs7QTZFdjRjQTtFQUNJO0E3RTA0Y0o7QTZFeDRjSTtFQUtJO0VBQ0E7RUFFQTtBN0VzNGNSO0E2RXA0Y1E7RUFWSjtJQVdRO0lBQ0E7RTdFdTRjVjtBQUNGO0E2RXA0Y0k7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtBN0VxNGNSO0E2RWw0Y0k7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFFQTtFQUNBO0E3RW00Y1I7QTZFaDRjSTtFQTdDSjtJQThDUTtFN0VtNGNOO0FBQ0Y7O0E2RWg0Y0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QTdFbTRjSjs7QTZFLzNjSTs7RUFFSTtFQUNBO0E3RWs0Y1I7QTZFaDRjUTs7RUFDSTtBN0VtNGNaOztBNkU5M2NBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VpNGNKO0E2RS8zY0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFNQSw4RUFDSTtFQUVKO0VBQ0E7QTdFMDNjUjs7QTZFdDNjQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFeTNjSjtBNkV2M2NJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFNQSw4RUFDSTtFQUVKO0VBQ0E7QTdFaTNjUjtBNkUxNGNBO0VBNEJJO0E3RWkzY0o7QTZFaDNjSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBTUE7QTdFNDJjUjs7QTZFdjJjQTtFQUNJO0VBQ0E7RUFDQTtBN0UwMmNKO0E2RXgyY0k7RUFDSTtFQUNBO0VBQ0E7QTdFMDJjUjtBNkV4MmNRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RTAyY1o7QTZFdjJjUTtFQUNJO0VBQ0E7QTdFeTJjWjtBNkV2MmNZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFeTJjaEI7O0E2RW4yY0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0VzMmNKOztBNkVuMmNBO0VBQ0k7RUFDQTtFQUNBO0E3RXMyY0o7QTZFcDJjSTtFQUNJO0E3RXMyY1I7O0E2RWwyY0E7RUFDSTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBR0E7RUFFQTtBN0VxMmNKO0E2RW4yY0k7RUFDSTtFQUNBO0VBQ0E7QTdFcTJjUjtBNkVuMmNRO0VBQ0k7RUFDQTtBN0VxMmNaO0E2RWgyY3dCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QTdFaTJjNUI7QTZFOTJjb0I7RUFnQkk7RUFDQTtFQUdBO0E3RWkyY3hCO0E2RS8xY3dCO0VBQ0k7QTdFaTJjNUI7QTZFMTFjUTtFQUdJO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUlBO0VBSUE7QTdFMDFjWjtBNkV4MWNZO0VBQ0k7RUFDQTtBN0UwMWNoQjtBNkV2MWNZO0VBQ0k7QTdFeTFjaEI7QTZFdDFjWTtFQUVJO0E3RXcxY2hCO0E2RW4xY1k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXExY2hCO0E2RWwxY1k7RUFDSTtFQUNBO0VBQ0E7QTdFbzFjaEI7O0E2RTkwY0E7RUFDSTtBN0VpMWNKO0E2RS8wY0k7RUFISjtJQUlRO0U3RWsxY047QUFDRjtBNkVoMWNJO0VBUEo7SUFRUTtFN0VtMWNOO0FBQ0Y7QTZFaDFjUTtFQURKO0lBRVE7RTdFbTFjVjtBQUNGOztBNkUvMGNBO0VBQ0k7SUFDSTtJQUlBO0lBR0E7SUFDQTtFN0VrMWNOO0U2RWgxY007SUFDSTtFN0VrMWNWO0U2RS8wY2M7SUFDSTtJQUNBO0U3RWkxY2xCO0U2RXowYzBCO0lBQ0k7SUFHQTtFN0UyMGM5QjtFNkVsMGNFO0lBQ0k7RTdFbzBjTjtBQUNGO0E2RWowY0E7RUFJZ0I7SUFDSTtJQUNBO0U3RWcwY2xCO0FBQ0Y7QTZFMXpjQTtFQUlnQjtJQUNJO0lBQ0E7SUFHQTtFN0V5emNsQjtFNkV0emNjO0lBQ0k7RTdFd3pjbEI7RTZFbDBjVTtJQWFJO0lBSUE7SUFHQTtFN0V3emNkO0U2RWp6YzBCO0lBQ0k7SUFDQTtFN0VtemM5QjtBQUNGO0E2RTF5Y0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0U0eWNKOztBNkV2eWNBO0VBQ0k7QTdFMHljSjs7QTZFcHljSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0V1eWNSO0E2RXB5Y0k7RUFDSTtFQUNBO0E3RXN5Y1I7O0E2RWx5Y0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0VxeWNKO0E2RW55Y0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0VxeWNSO0E2RWh5Y1k7RUFDSTtFQUNBO0VBQ0E7QTdFa3ljaEI7QTZFN3hjWTtFQUNJO0VBQ0E7RUFDQTtBN0UreGNoQjtBNkUxeGNZO0VBQ0k7RUFDQTtFQUNBO0E3RTR4Y2hCO0E2RXR4Y1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFd3hjWjs7QTZFbHhjSTtFQUNJO0VBQ0E7RUFDQTtBN0VxeGNSOztBNkVoeGNJO0VBQ0k7RUFDQTtFQUNBO0E3RW14Y1I7QTZFanhjUTtFQUxKO0lBTVE7SUFDQTtFN0VveGNWO0FBQ0Y7QTZFaHhjUTtFQUNJO0E3RWt4Y1o7O0E2RTV3Y0k7RUFDSTtFQUNBO0E3RSt3Y1I7QTZFNXdjSTtFQUNJO0E3RTh3Y1I7O0E2RXp3Y0k7RUFFSTtFQUNBO0VBQ0E7RUFDQTtBN0U0d2NSO0E2RXZ3Y1k7RUFDSTtFQUNBO0E3RXl3Y2hCOztBNkVud2NBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RXN3Y0o7QTZFcHdjSTtFQVJKO0lBU1E7SUFDQTtFN0V1d2NOO0FBQ0Y7QTZFcndjSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3RXV3Y1I7QTZFcndjUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3RXV3Y1o7QTZFcndjWTtFQU5KO0lBT1E7RTdFd3djZDtBQUNGO0E2RXJ3Y1E7RUFqQko7SUFrQlE7RTdFd3djVjtBQUNGO0E2RXR3Y1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0V3d2NaO0E2RXR3Y1k7RUFOSjtJQU9RO0lBQ0E7RTdFeXdjZDtBQUNGO0E2RXZ3Y1k7RUFDSTtBN0V5d2NoQjtBNkV2d2NnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0VBQ0E7QTdFeXdjcEI7QTZFbndjWTtFQURKO0lBRVE7SUFDQTtFN0Vzd2NkO0FBQ0Y7QTZFMXdjUTtFQU1JO0E3RXV3Y1o7QTZFcHdjUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFc3djWjtBNkVwd2NZO0VBQ0k7RUFDQTtFQUNBO0E3RXN3Y2hCO0E2RWx3Y1E7RUFDSTtFQUNBO0VBQ0E7QTdFb3djWjtBNkVsd2NZO0VBQ0k7QTdFb3djaEI7QTZFandjWTtFQUNJO0E3RW13Y2hCOztBNkU3dmNBO0VEcG5MRTtBNUVxM25CRjtBNEVuM25CRTtFQ2tuTEY7SURqbkxJO0U1RXMzbkJGO0FBQ0Y7QTZFdHdjQTtFQUVJO0VBQ0E7QTdFdXdjSjtBNkVyd2NJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFdXdjUjtBNkVyd2NRO0VBQ0k7QTdFdXdjWjtBNkVud2NJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0E3RWl3Y1I7QTZFL3ZjUTtFQWZKO0lBZ0JRO0lBQ0E7SUFDQTtJQUNBO0U3RWt3Y1Y7QUFDRjtBNkVod2NRO0VBdEJKO0lBdUJRO0lBQ0E7SUFDQTtJQUNBO0U3RW13Y1Y7QUFDRjtBNkVod2NJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0E3RTh2Y1I7QTZFNXZjUTtFQWZKO0lBZ0JRO0lBQ0E7SUFDQTtJQUNBO0U3RSt2Y1Y7QUFDRjtBNkU3dmNRO0VBdEJKO0lBdUJRO0lBS0E7SUFDQTtJQUNBO0U3RTR2Y1Y7QUFDRjs7QTZFeHZjQTtFQUNJO0E3RTJ2Y0o7O0E2RXh2Y0E7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0E3RTJ2Y0o7QTZFenZjSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0UydmNSO0E2RXp2Y1E7RUFDSTtBN0UydmNaO0E2RXZ2Y0k7RUFDSTtBN0V5dmNSOztBNkVydmNBO0FBQ0E7RUFDSTtFQUNBO0E3RXd2Y0o7QTZFdHZjSTtFQUpKO0lBS1E7SUFDQTtFN0V5dmNOO0FBQ0Y7O0E2RXR2Y0E7RUFDSTtBN0V5dmNKOztBNkV0dmNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFeXZjSjs7QTZFdHZjQTtFRC92TEU7QTVFeS9uQkY7QTRFdi9uQkU7RUM2dkxGO0lENXZMSTtFNUUwL25CRjtBQUNGOztBNkUzdmNBO0VEM3ZMRTtBNUUwL25CRjtBNEV4L25CRTtFQ3l2TEY7SUR4dkxJO0U1RTIvbkJGO0FBQ0Y7O0E2RWh3Y0E7QUFDQTtFQUNJO0E3RW13Y0o7QTZFandjSTtFQUhKO0lBSVE7RTdFb3djTjtBQUNGO0E2RWp3Y1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RW13Y1o7QTZFandjWTtFQVBKO0lBUVE7RTdFb3djZDtBQUNGO0E2RWh3Y0k7RUFDSTtFQUNBO0VBQ0E7QTdFa3djUjtBNkVod2NRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Vrd2NaO0E2RWh3Y1k7RUFWSjtJQVdRO0lBQ0E7RTdFbXdjZDtBQUNGO0E2RWp3Y1k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Vtd2NoQjtBNkVod2NZO0VBQ0k7QTdFa3djaEI7QTZFaHdjZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBN0Vrd2NwQjtBNkU5dmNZO0VBQ0k7QTdFZ3djaEI7QTZFM3ZjSTtFQUNJO0VBQ0E7RUFDQTtBN0U2dmNSO0E2RTN2Y1E7RUFMSjtJQU1RO0U3RTh2Y1Y7QUFDRjtBNkU1dmNRO0VBVEo7SUFVUTtFN0UrdmNWO0FBQ0Y7O0E2RTN2Y0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFOHZjSjtBNkU1dmNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFOHZjUjtBNkUzdmNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFNnZjUjtBNkUzdmNRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFNnZjWjtBNkUzdmNZO0VBTko7SUFPUTtJQUNBO0U3RTh2Y2Q7QUFDRjtBNkUzdmNRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFNnZjWjtBNkUzdmNZO0VBTko7SUFPUTtJQUNBO0U3RTh2Y2Q7QUFDRjtBNkUzdmNRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTdFNnZjWjtBNkUzdmNZO0VBTko7SUFPUTtJQUNBO0U3RTh2Y2Q7QUFDRjtBNkUxdmNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0U0dmNSO0E2RTF2Y1E7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7RUFDQTtBN0V3dmNaO0E2RXJ2Y1E7RUFDSTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFbXZjWjtBNkVodmNRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RWt2Y1o7QTZFOXVjSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFZ3ZjUjtBNkU5dWNRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0VndmNaO0E2RTd1Y1E7RUFDSTtFQUtBO0VBQ0E7QTdFMnVjWjtBNkV4dWNRO0VBQ0k7RUFLQTtFQUNBO0E3RXN1Y1o7QTZFbnVjUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0tBQUE7VUFBQTtFQUNBO0E3RXF1Y1o7QTZFbnVjWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E3RXF1Y2hCO0E2RWx1Y1k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3RW91Y2hCOztBNkU5dGNBO0VBQ0k7SUFFSTtFN0VndWNOO0U2RTd0Y0U7SUFDSTtFN0UrdGNOO0FBQ0Y7QTZFNXRjQTtFQUNJO0lBQ0k7RTdFOHRjTjtFNkUzdGNFO0lBQ0k7RTdFNnRjTjtBQUNGO0E2RXp0Y0E7RUFDSTtJQUNJO0U3RTJ0Y047RTZFdnRjRTtJQUNJO0U3RXl0Y047QUFDRjtBNkV0dGNBO0VBQ0k7SUFFSTtJQUNBO0U3RXV0Y047RTZFcHRjRTtJQUNJO0lBQ0E7RTdFc3RjTjtBQUNGO0E2RW50Y0E7RUFDSTtJQUNJO0U3RXF0Y047RTZFbHRjRTtJQUNJO0U3RW90Y047QUFDRjtBNkVqdGNBO0VBQ0k7SUFDSTtFN0VtdGNOO0U2RWh0Y0U7SUFDSTtFN0VrdGNOO0U2RS9zY0U7SUFDSTtFN0VpdGNOO0FBQ0Y7QTZFMXNjSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdFNHNjUjtBNkV6c2NJO0VBQ0k7RUFDQTtFQUNBLGlCQWRTO0VBZVQ7RUFDQTtBN0Uyc2NSOztBQW4yb0JBO0E4RVhBO0VBQ0k7RUFDQTtFQUNBO0E5RWszb0JKOztBOEU5Mm9CQTs7Ozs7Ozs7O0VBU0k7QTlFaTNvQko7O0E4RTcyb0JJO0VBQ0k7QTlFZzNvQlI7QThFNzJvQkk7RUFDSTtBOUUrMm9CUjtBOEU1Mm9CSTtFQUNJO0E5RTgyb0JSO0E4RTMyb0JJO0VBQ0k7QTlFNjJvQlI7QThFMTJvQkk7RUFDSTtBOUU0Mm9CUjtBOEV6Mm9CSTtFQUNJO0E5RTIyb0JSO0E4RXgyb0JJO0VBQ0k7QTlFMDJvQlI7QThFdjJvQkk7RUFDSTtBOUV5Mm9CUjs7QThFcjJvQkE7RUFDSTtBOUV3Mm9CSjs7QThFcjJvQkE7RUFDSTtBOUV3Mm9CSjs7QThFcjJvQkE7RUFDSTtBOUV3Mm9CSjs7QThFcjJvQkE7RUFDSSxheEU0aUNnQztBTjR6bUJwQzs7QThFcjJvQkE7RUFDSSxheEU2aUNnQztBTjJ6bUJwQzs7QThFcjJvQkE7RUFDSSxheEV3aUNnQztBTmcwbUJwQzs7QThFcjJvQkE7RUFDSTtBOUV3Mm9CSjs7QThFbjJvQkE7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RXMyb0JKO0E4RXAyb0JJO0VBQ0k7QTlFdTJvQlI7QThFeDJvQkk7O0VBQ0k7QTlFdTJvQlI7QThFcDJvQkk7O0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFdTJvQlI7QThFcDJvQkk7O0VBQ0k7QTlFdTJvQlI7QThFcDJvQkk7O0VBQ0k7QTlFdTJvQlI7O0E4RW4yb0JBO0VBQ0k7QTlFczJvQko7QThFcDJvQkk7RUFDSTtBOUVzMm9CUjs7QThFajJvQkE7RUFDSSxlQzNHUTtFRDRHUjtBOUVvMm9CSjtBOEVsMm9CSTtFQUNJO0VBQ0E7RUFDQTtBOUVvMm9CUjtBOEVqMm9CSTtFQUNJO0VBQ0E7RUFDQTtBOUVtMm9CUjtBOEUvMW9CUTtFQUNJO0VBQ0E7RUFDQTtBOUVpMm9CWjtBOEU3MW9CWTtFQUNJO0VBQ0E7RUFDQTtBOUUrMW9CaEI7QThFMTFvQkk7RUFDSTtBOUU0MW9CUjtBOEV6MW9CSTtFQUNJO0VBQ0E7RUFDQTtBOUUyMW9CUjtBOEV6MW9CUTtFQUNJO0VBQ0E7QTlFMjFvQlo7QThFdjFvQkk7RUFDSTtFQUNBO0E5RXkxb0JSO0E4RXYxb0JRO0VBQ0ksV3hFcktEO0V3RXNLQztBOUV5MW9CWjtBOEV0MW9CUTtFQUNJO0VBQ0E7QTlFdzFvQlo7QThFcDFvQkk7RUFDSTtBOUVzMW9CUjtBOEVwMW9CUTtFQUNJLFd4RW5MRDtFd0VvTEM7QTlFczFvQlo7QThFcDFvQlk7RUFDSTtBOUVzMW9CaEI7QThFajFvQkk7RUFDSSxjQzVMUTtFRDZMUixxQkM3TFE7QS9FZ2hwQmhCO0E4RWoxb0JRO0VBQ0kseUJDaE1JO0VEaU1KLFd4RWxNRDtBTnFocEJYO0E4RS8wb0JJO0VBQ0ksY0NyTU87RURzTVAscUJDdE1PO0EvRXVocEJmO0E4RS8wb0JRO0VBQ0kseUJDek1HO0VEME1ILFd4RTVNRDtBTjZocEJYO0E4RTcwb0JJO0VBQ0ksY0M3TUs7RUQ4TUwscUJDOU1LO0EvRTZocEJiO0E4RTcwb0JRO0VBQ0kseUJDak5DO0VEa05ELFd4RXRORDtBTnFpcEJYO0E4RTMwb0JJO0VBQ0k7QTlFNjBvQlI7QThFMTBvQkk7RUFDSTtBOUU0MG9CUjtBOEV6MG9CSTtFQUNJO0E5RTIwb0JSOztBOEV2MG9CQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtLQUFBO1VBQUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTAwb0JKO0E4RXgwb0JJO0VBRUk7RUFDQTtFQUNBO0VBQ0E7QTlFeTBvQlI7QThFdDBvQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFdzBvQlI7O0E4RXAwb0JBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RXUwb0JKO0E4RXIwb0JJO0VBUko7SUFTUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTlFdzBvQk47QUFDRjtBOEV0MG9CSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUV3MG9CUjtBOEV0MG9CUTtFQUNJO0E5RXcwb0JaO0E4RXIwb0JRO0VBQ0k7RUFDQTtBOUV1MG9CWjtBOEVwMG9CUTtFQUNJO0VBQ0E7QTlFczBvQlo7QThFcDBvQlk7RUFDSTtBOUVzMG9CaEI7QThFbDBvQlE7RUFDSTtFQUNBO0E5RW8wb0JaO0E4RW4wb0JZO0VBQ0k7QTlFcTBvQmhCO0E4RWgwb0JJO0VBQ0k7RUFDQTtBOUVrMG9CUjs7QThFN3pvQkE7RUFDSTtBOUVnMG9CSjtBOEUvem9CSTtFQUNJO0E5RWkwb0JSO0E4RTl6b0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUVnMG9CUjs7QThFNXpvQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUUrem9CSjtBOEU3em9CSTtFQVRKO0lBVVE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U5RWcwb0JOO0U4RTl6b0JNO0lBQ0k7SUFDQTtFOUVnMG9CVjtBQUNGO0E4RTd6b0JJO0VBdkJKO0lBd0JRO0lBQ0E7SUFDQTtFOUVnMG9CTjtBQUNGO0E4RTl6b0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RWcwb0JSO0E4RTd6b0JJO0VBQ0k7RUFDQTtFQUNBO0VBRUE7QTlFOHpvQlI7QThFN3pvQlE7RUFDSTtBOUUrem9CWjtBOEU3em9CUTtFQUNJO0E5RSt6b0JaO0E4RTd6b0JRO0VBQ0k7RUFDQTtBOUUrem9CWjtBOEU3em9CUTtFQUNJO0E5RSt6b0JaO0E4RTN6b0JJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTlFNnpvQlI7QThFM3pvQlE7RUFDSTtBOUU2em9CWjtBOEUxem9CUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0tBQUE7RUFDQTtBOUU0em9CWjtBOEV6em9CUTtFQUNJO0VBQ0E7QTlFMnpvQlo7QThFenpvQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5RTJ6b0JoQjtBOEV4em9CWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E5RTB6b0JoQjtBOEV4em9CZ0I7RUFDSTtFQUNBO0E5RTB6b0JwQjtBOEVyem9CUTtFQUNJO0E5RXV6b0JaO0E4RW56b0JJO0VBQ0k7RUFDQTtFQUNBO0E5RXF6b0JSO0E4RW56b0JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUVxem9CWjtBOEVuem9CWTtFQUNJO0E5RXF6b0JoQjs7QThFOXlvQkE7RUFDSTtJQUNJO0U5RWl6b0JOO0U4RS95b0JFO0lBQ0k7RTlFaXpvQk47RThFL3lvQkU7SUFDSTtFOUVpem9CTjtFOEUveW9CRTtJQUNJO0U5RWl6b0JOO0U4RS95b0JFO0lBQ0k7RTlFaXpvQk47RThFL3lvQkU7SUFDSTtFOUVpem9CTjtFOEUveW9CRTtJQUNJO0U5RWl6b0JOO0FBQ0Y7QThFOXlvQkE7RUFDSTtBOUVnem9CSjs7QThFMXlvQlE7RUFDSTtFQUNBO0E5RTZ5b0JaO0E4RXp5b0JJO0VBQ0k7RUFDQTtFQUNBO0E5RTJ5b0JSO0E4RXZ5b0JRO0VBQ0k7RUFDQTtBOUV5eW9CWjs7QThFbnlvQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBOUVzeW9CSjtBOEVweW9CSTtFQUNJO0E5RXN5b0JSOztBOEVseW9CQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E5RXF5b0JKO0E4RW55b0JJO0VBQ0k7QTlFcXlvQlI7QThFbHlvQkk7RUFWSjtJQVdRO0U5RXF5b0JOO0FBQ0Y7O0E4RWx5b0JBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFcXlvQko7QThFbnlvQkk7RUFDSTtBOUVxeW9CUjs7QThFanlvQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBOUVveW9CSjtBOEVseW9CSTtFQUNJO0E5RW95b0JSOztBOEVoeW9CQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0E5RW15b0JKO0E4RWp5b0JJO0VBQ0k7QTlFbXlvQlI7O0E4RS94b0JBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTlFa3lvQko7QThFaHlvQkk7RUFDSTtBOUVreW9CUjs7QThFN3hvQkk7Ozs7Ozs7Ozs7O0VBTUk7QTlFcXlvQlI7O0E4RWp5b0JBOzs7RUFHSTtBOUVveW9CSjs7QThFanlvQkE7RUFDSTtBOUVveW9CSjs7QThFanlvQkE7QUFDQTs7RUFFSTtFQUNBO0E5RW95b0JKOztBOEVqeW9CQTtBQUNBO0VBQ0k7QTlFb3lvQko7O0FBbjZwQkE7QWdGZEM7RUFDRztBaEZxN3BCSjs7QWdGbDdwQkE7RUFDSTtBaEZxN3BCSjs7QWdGbDdwQkE7RUFDSTtBaEZxN3BCSjs7QWdGbDdwQkE7RUFDSTtBaEZxN3BCSjs7QWdGbDdwQkE7RUFDSTtBaEZxN3BCSjs7QWdGbDdwQkE7RUFDSTtBaEZxN3BCSjs7QWdGbDdwQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEZxN3BCSjtBZ0ZuN3BCSTtFQXJCSjtJQXNCUTtJQUNBO0VoRnM3cEJOO0FBQ0Y7QWdGcDdwQkk7RUFDSTtBaEZzN3BCUjtBZ0ZuN3BCSTtFQUVJO0VBQ0E7QWhGbzdwQlI7QWdGbDdwQlE7RUFDSTtBaEZvN3BCWjs7QWdGLzZwQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNCMUU5RE87RTBFK0RQO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoRms3cEJKO0FnRmg3cEJJOztFQUVJO0FoRms3cEJSO0FnRi82cEJJO0VBbkJKO0lBb0JRO0lBQ0E7RWhGazdwQk47QUFDRjtBZ0ZoN3BCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEZrN3BCUjtBZ0YvNnBCSTtFQUVJO0VBQ0E7QWhGZzdwQlI7QWdGOTZwQlE7OztFQUVJO0FoRmk3cEJaO0FnRjk2cEJRO0VBQ0k7QWhGZzdwQlo7O0FnRjM2cEJBO0VBQ0k7RUFDQTtFQUNBO0FoRjg2cEJKOztBZ0YzNnBCQTtFQUNJO0FoRjg2cEJKOztBZ0YzNnBCQTtFQUNJO0FoRjg2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0VBQ0EsVzFFdklPO0FOK2lxQlg7O0FnRnI2cEJBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0VBQ0kseUJEdEpZO0VDdUpaLHFCRHZKWTtBL0UranFCaEI7O0FnRnI2cEJBO0VBQ0kseUJEMUpXO0VDMkpYLHFCRDNKVztBL0Vta3FCZjs7QWdGcjZwQkE7RUFDSSx5QkQ5Slk7RUMrSloscUJEL0pZO0EvRXVrcUJoQjs7QWdGcjZwQkE7RUFDSSx5QkRsS1M7RUNtS1QscUJEbktTO0EvRTJrcUJiOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTs7Ozs7RUFLSTtBaEZ3NnBCSjs7QWdGcjZwQkE7QUFDQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtFQUNJO0FoRnc2cEJKOztBZ0ZyNnBCQTtBQUNBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0VBQ0k7QWhGdzZwQko7O0FnRnI2cEJBO0FBQ0E7RUFDSTtBaEZ3NnBCSjs7QWdGcjZwQkE7RUFDSTtBaEZ3NnBCSjs7QWdGcjZwQkE7RUFDSTtBaEZ3NnBCSjs7QWdGcjZwQkE7RUFDSTtBaEZ3NnBCSjs7QWdGcjZwQkE7RUFDSTtBaEZ3NnBCSjs7QWdGcjZwQkE7RUFDSTtBaEZ3NnBCSjs7QWdGcjZwQkE7RUFDSTtBaEZ3NnBCSjs7QWdGcjZwQkE7RUFDSTtBaEZ3NnBCSjs7QWdGcjZwQkE7RUFDSTtBaEZ3NnBCSjs7QWdGcjZwQkE7RUFDSTtBaEZ3NnBCSjs7QWdGcjZwQkE7RUpuU0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUU0c3FCRjtBNEV4c3FCSTs7Ozs7Ozs7Ozs7RUFNRSxjSXNSaUM7QWhGeTdwQnZDO0E0RTVzcUJJO0VBQ0U7QTVFOHNxQk47QTRFNXNxQk07RUFDRTtFQUNBO0E1RThzcUJSO0E0RTNzcUJNO0VBQ0UsYUkwUStCO0FoRm04cEJ2QztBNEV0c3FCUTtFQUNFO0E1RXdzcUJWOztBZ0ZuOHBCQTtFSnZTRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RTh1cUJGO0E0RTF1cUJJOzs7Ozs7Ozs7OztFQU1FLGNJMFJtQztBaEZ1OXBCekM7QTRFOXVxQkk7RUFDRTtBNUVndnFCTjtBNEU5dXFCTTtFQUNFO0VBQ0E7QTVFZ3ZxQlI7QTRFN3VxQk07RUFDRSxhSThRaUM7QWhGaStwQnpDO0E0RXh1cUJRO0VBQ0U7QTVFMHVxQlY7O0FnRmorcEJBO0VKM1NFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVFZ3hxQkY7QTRFNXdxQkk7Ozs7Ozs7Ozs7O0VBTUUsY0k4UitCO0FoRnEvcEJyQztBNEVoeHFCSTtFQUNFO0E1RWt4cUJOO0E0RWh4cUJNO0VBQ0U7RUFDQTtBNUVreHFCUjtBNEUvd3FCTTtFQUNFLGFJa1I2QjtBaEYrL3BCckM7QTRFMXdxQlE7RUFDRTtBNUU0d3FCVjs7QWdGLy9wQkE7RUovU0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUVrenFCRjtBNEU5eXFCSTs7Ozs7Ozs7Ozs7RUFNRSxjSWtTaUM7QWhGbWhxQnZDO0E0RWx6cUJJO0VBQ0U7QTVFb3pxQk47QTRFbHpxQk07RUFDRTtFQUNBO0E1RW96cUJSO0E0RWp6cUJNO0VBQ0UsYUlzUitCO0FoRjZocUJ2QztBNEU1eXFCUTtFQUNFO0E1RTh5cUJWOztBaUZyNnFCQTtFQUNFO0VBQ0E7RUFFQTtFQUVBO0VBRUE7QWpGdzZxQkY7QWlGOTVxQkE7RUFDRTtJQUNFO0lBQ0E7RWpGdTZxQkY7QUFDRjtBaUZwNnFCQTtFQUNFO0lBQ0U7SUFDQTtFakZzNnFCRjtFaUZuNnFCQTtJQUNFO0lBQ0E7RWpGcTZxQkY7QUFDRjtBaUZsNnFCQTtFQUNFO0FqRm82cUJGO0FpRmo2cUJFO0VBRUU7RUFDQTtBakZrNnFCSjs7QWlGOTVxQkE7RUFFRTtFQUVBO0FqRmk2cUJGOztBaUY5NXFCQTtFQUVFO0FqRmk2cUJGO0FpRng0cUJBO0VBRUU7SUFPRTtFakZvNXFCRjtFaUZqNXFCQTtJQUdFO0VqRm01cUJGO0VpRmg1cUJBO0lBR0U7RWpGazVxQkY7QUFDRjtBaUYvNHFCQTtFQUVFO0FqRmk1cUJGO0FpRmg0cUJBO0VBRUU7SUFHRTtFakZ3NHFCRjtFaUZyNHFCQTtJQUVFO0VqRnM0cUJGO0FBQ0Y7QWlGbjRxQkE7RUFFRTtBakZxNHFCRjs7QWlGbDRxQkE7QUFtQkE7RUFDRTtJQUdFO0VqRmk0cUJGO0VpRjkzcUJBO0lBR0U7RWpGZzRxQkY7RWlGNzNxQkE7SUFHRTtFakYrM3FCRjtBQUNGO0FpRjUzcUJBO0VBRUU7QWpGODNxQkY7QWlGajJxQkE7RUFFRTtJQUlFO0VqRmczcUJGO0VpRjcycUJBO0lBT0U7RWpGMjJxQkY7RWlGeDJxQkE7SUFNRTtFakZ1MnFCRjtBQUNGO0FpRnAycUJBO0VBRUU7QWpGczJxQkY7QWlGeDBxQkE7RUFDRTtJQUdFO0VqRmkycUJGO0VpRjkxcUJBO0lBR0U7RWpGZzJxQkY7RWlGNzFxQkE7SUFHRTtFakYrMXFCRjtFaUY1MXFCQTtJQUdFO0VqRjgxcUJGO0VpRjMxcUJBO0lBR0U7RWpGNjFxQkY7QUFDRjtBaUYxMXFCQTtFQUdFO0VBRUE7QWpGNDFxQkY7QWlGeHpxQkE7RUFDRTtJQUdFO0VqRmkxcUJGO0VpRjkwcUJBO0lBSUU7RWpGKzBxQkY7RWlGNTBxQkE7SUFNRTtFakYyMHFCRjtFaUZ4MHFCQTtJQUtFO0VqRncwcUJGO0VpRnIwcUJBO0lBR0U7RWpGdTBxQkY7QUFDRjtBaUZwMHFCQTtFQUVFO0FqRnMwcUJGOztBaUZuMHFCQTtBQXVDQTtFQUNFO0lBR0U7RWpGOHpxQkY7RWlGM3pxQkE7SUFHRTtFakY2enFCRjtFaUYxenFCQTtJQUdFO0VqRjR6cUJGO0VpRnp6cUJBO0lBR0U7RWpGMnpxQkY7RWlGeHpxQkE7SUFHRTtFakYwenFCRjtFaUZ2enFCQTtJQUdFO0VqRnl6cUJGO0VpRnR6cUJBO0lBR0U7RWpGd3pxQkY7QUFDRjtBaUZyenFCQTtFQUVFO0FqRnV6cUJGO0FpRjV4cUJBO0VBQ0U7SUFDRTtJQUdBO0VqRm16cUJGO0VpRmh6cUJBO0lBQ0U7SUFHQTtFakZrenFCRjtFaUYveXFCQTtJQUdFO0VqRml6cUJGO0VpRjl5cUJBO0lBR0U7RWpGZ3pxQkY7QUFDRjtBaUY3eXFCQTtFQUVFO0FqRit5cUJGO0FpRnB4cUJBO0VBQ0U7SUFDRTtJQUdBO0VqRjJ5cUJGO0VpRnh5cUJBO0lBQ0U7SUFHQTtFakYweXFCRjtFaUZ2eXFCQTtJQUdFO0VqRnl5cUJGO0VpRnR5cUJBO0lBR0U7RWpGd3lxQkY7QUFDRjtBaUZyeXFCQTtFQUVFO0FqRnV5cUJGO0FpRjV3cUJBO0VBQ0U7SUFDRTtJQUdBO0VqRm15cUJGO0VpRmh5cUJBO0lBQ0U7SUFHQTtFakZreXFCRjtFaUYveHFCQTtJQUdFO0VqRml5cUJGO0VpRjl4cUJBO0lBR0U7RWpGZ3lxQkY7QUFDRjtBaUY3eHFCQTtFQUVFO0FqRit4cUJGO0FpRnB3cUJBO0VBQ0U7SUFDRTtJQUdBO0VqRjJ4cUJGO0VpRnh4cUJBO0lBQ0U7SUFHQTtFakYweHFCRjtFaUZ2eHFCQTtJQUdFO0VqRnl4cUJGO0VpRnR4cUJBO0lBR0U7RWpGd3hxQkY7QUFDRjtBaUZyeHFCQTtFQUVFO0FqRnV4cUJGO0FpRjV2cUJBO0VBQ0U7SUFDRTtJQUdBO0VqRm14cUJGO0VpRmh4cUJBO0lBQ0U7SUFHQTtFakZreHFCRjtFaUYvd3FCQTtJQUdFO0VqRml4cUJGO0VpRjl3cUJBO0lBR0U7RWpGZ3hxQkY7QUFDRjtBaUY3d3FCQTtFQUVFO0FqRit3cUJGO0FpRnB2cUJBO0VBQ0U7SUFHRTtFakYyd3FCRjtFaUZ4d3FCQTtJQUdFO0VqRjB3cUJGO0VpRnZ3cUJBO0lBQ0U7SUFHQTtFakZ5d3FCRjtFaUZ0d3FCQTtJQUNFO0lBR0E7RWpGd3dxQkY7QUFDRjtBaUZyd3FCQTtFQUVFO0FqRnV3cUJGO0FpRmp2cUJBO0VBQ0U7SUFHRTtFakZvd3FCRjtFaUZqd3FCQTtJQUNFO0lBR0E7RWpGbXdxQkY7RWlGaHdxQkE7SUFDRTtJQUdBO0VqRmt3cUJGO0FBQ0Y7QWlGL3ZxQkE7RUFFRTtBakZpd3FCRjtBaUYzdXFCQTtFQUNFO0lBR0U7RWpGOHZxQkY7RWlGM3ZxQkE7SUFDRTtJQUdBO0VqRjZ2cUJGO0VpRjF2cUJBO0lBQ0U7SUFHQTtFakY0dnFCRjtBQUNGO0FpRnp2cUJBO0VBRUU7QWpGMnZxQkY7QWlGcnVxQkE7RUFDRTtJQUdFO0VqRnd2cUJGO0VpRnJ2cUJBO0lBQ0U7SUFHQTtFakZ1dnFCRjtFaUZwdnFCQTtJQUNFO0lBR0E7RWpGc3ZxQkY7QUFDRjtBaUZudnFCQTtFQUVFO0FqRnF2cUJGO0FpRi90cUJBO0VBQ0U7SUFHRTtFakZrdnFCRjtFaUYvdXFCQTtJQUNFO0lBR0E7RWpGaXZxQkY7RWlGOXVxQkE7SUFDRTtJQUdBO0VqRmd2cUJGO0FBQ0Y7QWlGN3VxQkE7RUFFRTtBakYrdXFCRjtBaUZsdXFCQTtFQUNFO0lBQ0U7RWpGNnVxQkY7RWlGMXVxQkE7SUFDRTtFakY0dXFCRjtBQUNGO0FpRnp1cUJBO0VBRUU7QWpGMnVxQkY7QWlGMXRxQkE7RUFDRTtJQUNFO0lBR0E7RWpGeXVxQkY7RWlGdHVxQkE7SUFDRTtJQUdBO0VqRnd1cUJGO0FBQ0Y7QWlGcnVxQkE7RUFFRTtBakZ1dXFCRjtBaUZ0dHFCQTtFQUNFO0lBQ0U7SUFHQTtFakZxdXFCRjtFaUZsdXFCQTtJQUNFO0lBR0E7RWpGb3VxQkY7QUFDRjtBaUZqdXFCQTtFQUVFO0FqRm11cUJGO0FpRmx0cUJBO0VBQ0U7SUFDRTtJQUdBO0VqRml1cUJGO0VpRjl0cUJBO0lBQ0U7SUFHQTtFakZndXFCRjtBQUNGO0FpRjd0cUJBO0VBRUU7QWpGK3RxQkY7QWlGOXNxQkE7RUFDRTtJQUNFO0lBR0E7RWpGNnRxQkY7RWlGMXRxQkE7SUFDRTtJQUdBO0VqRjR0cUJGO0FBQ0Y7QWlGenRxQkE7RUFFRTtBakYydHFCRjtBaUYxc3FCQTtFQUNFO0lBQ0U7SUFHQTtFakZ5dHFCRjtFaUZ0dHFCQTtJQUNFO0lBR0E7RWpGd3RxQkY7QUFDRjtBaUZydHFCQTtFQUVFO0FqRnV0cUJGO0FpRnRzcUJBO0VBQ0U7SUFDRTtJQUdBO0VqRnF0cUJGO0VpRmx0cUJBO0lBQ0U7SUFHQTtFakZvdHFCRjtBQUNGO0FpRmp0cUJBO0VBRUU7QWpGbXRxQkY7QWlGbHNxQkE7RUFDRTtJQUNFO0lBR0E7RWpGaXRxQkY7RWlGOXNxQkE7SUFDRTtJQUdBO0VqRmd0cUJGO0FBQ0Y7QWlGN3NxQkE7RUFFRTtBakYrc3FCRjtBaUY5cnFCQTtFQUNFO0lBQ0U7SUFHQTtFakY2c3FCRjtFaUYxc3FCQTtJQUNFO0lBR0E7RWpGNHNxQkY7QUFDRjtBaUZ6c3FCQTtFQUVFO0FqRjJzcUJGO0FpRjlycUJBO0VBQ0U7SUFDRTtFakZ5c3FCRjtFaUZ0c3FCQTtJQUNFO0VqRndzcUJGO0FBQ0Y7QWlGcnNxQkE7RUFFRTtBakZ1c3FCRjtBaUZ0cnFCQTtFQUNFO0lBQ0U7SUFHQTtFakZxc3FCRjtFaUZsc3FCQTtJQUNFO0lBR0E7RWpGb3NxQkY7QUFDRjtBaUZqc3FCQTtFQUVFO0FqRm1zcUJGO0FpRmxycUJBO0VBQ0U7SUFDRTtJQUdBO0VqRmlzcUJGO0VpRjlycUJBO0lBQ0U7SUFHQTtFakZnc3FCRjtBQUNGO0FpRjdycUJBO0VBRUU7QWpGK3JxQkY7QWlGOXFxQkE7RUFDRTtJQUNFO0lBR0E7RWpGNnJxQkY7RWlGMXJxQkE7SUFDRTtJQUdBO0VqRjRycUJGO0FBQ0Y7QWlGenJxQkE7RUFFRTtBakYycnFCRjtBaUYxcXFCQTtFQUNFO0lBQ0U7SUFHQTtFakZ5cnFCRjtFaUZ0cnFCQTtJQUNFO0lBR0E7RWpGd3JxQkY7QUFDRjtBaUZycnFCQTtFQUVFO0FqRnVycUJGO0FpRnRxcUJBO0VBQ0U7SUFDRTtJQUdBO0VqRnFycUJGO0VpRmxycUJBO0lBQ0U7SUFHQTtFakZvcnFCRjtBQUNGO0FpRmpycUJBO0VBRUU7QWpGbXJxQkY7QWlGbHFxQkE7RUFDRTtJQUNFO0lBR0E7RWpGaXJxQkY7RWlGOXFxQkE7SUFDRTtJQUdBO0VqRmdycUJGO0FBQ0Y7QWlGN3FxQkE7RUFFRTtBakYrcXFCRjtBaUY5cHFCQTtFQUNFO0lBQ0U7SUFHQTtFakY2cXFCRjtFaUYxcXFCQTtJQUNFO0lBR0E7RWpGNHFxQkY7QUFDRjtBaUZ6cXFCQTtFQUVFO0FqRjJxcUJGO0FpRjFwcUJBO0VBQ0U7SUFDRTtJQUdBO0VqRnlxcUJGO0VpRnRxcUJBO0lBQ0U7SUFHQTtFakZ3cXFCRjtBQUNGO0FpRnJxcUJBO0VBRUU7QWpGdXFxQkY7QWlGL25xQkE7RUFDRTtJQUdFO0lBRUE7RWpGa3FxQkY7RWlGL3BxQkE7SUFHRTtJQUVBO0VqRmlxcUJGO0VpRjlwcUJBO0lBR0U7SUFFQTtFakZncXFCRjtFaUY3cHFCQTtJQUdFO0lBRUE7RWpGK3BxQkY7RWlGNXBxQkE7SUFHRTtJQUVBO0VqRjhwcUJGO0FBQ0Y7QWlGM3BxQkE7RUFHRTtFQUVBO0FqRjZwcUJGO0FpRmxvcUJBO0VBQ0U7SUFHRTtJQUNBO0VqRnlwcUJGO0VpRnRwcUJBO0lBR0U7RWpGd3BxQkY7RWlGcnBxQkE7SUFHRTtFakZ1cHFCRjtFaUZwcHFCQTtJQUdFO0lBQ0E7RWpGc3BxQkY7QUFDRjtBaUZucHFCQTtFQUdFO0VBRUE7QWpGcXBxQkY7QWlGMW5xQkE7RUFDRTtJQUdFO0lBQ0E7RWpGaXBxQkY7RWlGOW9xQkE7SUFHRTtFakZncHFCRjtFaUY3b3FCQTtJQUdFO0VqRitvcUJGO0VpRjVvcUJBO0lBR0U7SUFDQTtFakY4b3FCRjtBQUNGO0FpRjNvcUJBO0VBR0U7RUFFQTtBakY2b3FCRjtBaUY1bnFCQTtFQUNFO0lBR0U7SUFDQTtFakYyb3FCRjtFaUZ4b3FCQTtJQUdFO0lBQ0E7RWpGMG9xQkY7QUFDRjtBaUZ2b3FCQTtFQUVFO0VBR0E7QWpGeW9xQkY7QWlGeG5xQkE7RUFDRTtJQUdFO0lBQ0E7RWpGdW9xQkY7RWlGcG9xQkE7SUFHRTtJQUNBO0VqRnNvcUJGO0FBQ0Y7QWlGbm9xQkE7RUFHRTtFQUVBO0FqRnFvcUJGO0FpRnhtcUJBO0VBQ0U7SUFHRTtJQUNBO0VqRmlvcUJGO0VpRjlucUJBO0lBR0U7SUFDQTtFakZnb3FCRjtFaUY3bnFCQTtJQUdFO0lBQ0E7RWpGK25xQkY7RWlGNW5xQkE7SUFHRTtJQUNBO0VqRjhucUJGO0FBQ0Y7QWlGM25xQkE7RUFFRTtFQUVBO0FqRjZucUJGO0FpRjVtcUJBO0VBQ0U7SUFHRTtJQUNBO0VqRjJucUJGO0VpRnhucUJBO0lBR0U7SUFDQTtFakYwbnFCRjtBQUNGO0FpRnZucUJBO0VBRUU7RUFFQTtBakZ5bnFCRjtBaUZwbXFCQTtFQUNFO0lBR0U7SUFHQTtJQUNBO0VqRnVucUJGO0VpRnBucUJBO0lBR0U7SUFHQTtJQUNBO0VqRnNucUJGO0FBQ0Y7QWlGbm5xQkE7RUFFRTtBakZxbnFCRjtBaUZobXFCQTtFQUNFO0lBR0U7SUFHQTtJQUNBO0VqRm1ucUJGO0VpRmhucUJBO0lBR0U7SUFHQTtJQUNBO0VqRmtucUJGO0FBQ0Y7QWlGL21xQkE7RUFFRTtBakZpbnFCRjtBaUY1bHFCQTtFQUNFO0lBR0U7SUFHQTtJQUNBO0VqRittcUJGO0VpRjVtcUJBO0lBR0U7SUFHQTtJQUNBO0VqRjhtcUJGO0FBQ0Y7QWlGM21xQkE7RUFFRTtBakY2bXFCRjtBaUZ4bHFCQTtFQUNFO0lBR0U7SUFHQTtJQUNBO0VqRjJtcUJGO0VpRnhtcUJBO0lBR0U7SUFHQTtJQUNBO0VqRjBtcUJGO0FBQ0Y7QWlGdm1xQkE7RUFFRTtBakZ5bXFCRjtBaUZwbHFCQTtFQUNFO0lBR0U7SUFHQTtJQUNBO0VqRnVtcUJGO0VpRnBtcUJBO0lBR0U7SUFHQTtJQUNBO0VqRnNtcUJGO0FBQ0Y7QWlGbm1xQkE7RUFFRTtBakZxbXFCRjtBaUZobHFCQTtFQUNFO0lBR0U7SUFHQTtJQUNBO0VqRm1tcUJGO0VpRmhtcUJBO0lBR0U7SUFHQTtJQUNBO0VqRmttcUJGO0FBQ0Y7QWlGL2xxQkE7RUFFRTtBakZpbXFCRjtBaUY1a3FCQTtFQUNFO0lBR0U7SUFHQTtJQUNBO0VqRitscUJGO0VpRjVscUJBO0lBR0U7SUFHQTtJQUNBO0VqRjhscUJGO0FBQ0Y7QWlGM2xxQkE7RUFFRTtBakY2bHFCRjtBaUZ4a3FCQTtFQUNFO0lBR0U7SUFHQTtJQUNBO0VqRjJscUJGO0VpRnhscUJBO0lBR0U7SUFHQTtJQUNBO0VqRjBscUJGO0FBQ0Y7QWlGdmxxQkE7RUFFRTtBakZ5bHFCRjtBaUZwa3FCQTtFQUNFO0lBR0U7SUFHQTtJQUNBO0VqRnVscUJGO0VpRnBscUJBO0lBR0U7SUFHQTtJQUNBO0VqRnNscUJGO0FBQ0Y7QWlGbmxxQkE7RUFFRTtBakZxbHFCRjtBaUZoa3FCQTtFQUNFO0lBR0U7SUFHQTtJQUNBO0VqRm1scUJGO0VpRmhscUJBO0lBR0U7SUFHQTtJQUNBO0VqRmtscUJGO0FBQ0Y7QWlGL2txQkE7RUFFRTtBakZpbHFCRjtBaUZqa3FCQTtFQUNFO0lBQ0U7SUFHQTtFakYra3FCRjtFaUY1a3FCQTtJQUdFO0VqRjhrcUJGO0FBQ0Y7QWlGM2txQkE7RUFFRTtBakY2a3FCRjtBaUY3anFCQTtFQUNFO0lBQ0U7SUFHQTtFakYya3FCRjtFaUZ4a3FCQTtJQUdFO0VqRjBrcUJGO0FBQ0Y7QWlGdmtxQkE7RUFFRTtBakZ5a3FCRjtBaUZ6anFCQTtFQUNFO0lBQ0U7SUFHQTtFakZ1a3FCRjtFaUZwa3FCQTtJQUdFO0VqRnNrcUJGO0FBQ0Y7QWlGbmtxQkE7RUFFRTtBakZxa3FCRjtBaUZyanFCQTtFQUNFO0lBR0U7RWpGbWtxQkY7RWlGaGtxQkE7SUFDRTtJQUdBO0VqRmtrcUJGO0FBQ0Y7QWlGL2pxQkE7RUFFRTtBakZpa3FCRjtBaUZqanFCQTtFQUNFO0lBR0U7RWpGK2pxQkY7RWlGNWpxQkE7SUFDRTtJQUdBO0VqRjhqcUJGO0FBQ0Y7QWlGM2pxQkE7RUFFRTtBakY2anFCRjtBaUY3aXFCQTtFQUNFO0lBR0U7RWpGMmpxQkY7RWlGeGpxQkE7SUFDRTtJQUdBO0VqRjBqcUJGO0FBQ0Y7QWlGdmpxQkE7RUFFRTtBakZ5anFCRjtBaUZ4Z3FCQTtFQUNFO0lBR0U7SUFHQTtJQUVBO0VqRm1qcUJGO0VpRmhqcUJBO0lBSUU7SUFHQTtJQUVBO0VqRmlqcUJGO0VpRjlpcUJBO0lBR0U7SUFHQTtJQUVBO0VqRmdqcUJGO0VpRjdpcUJBO0lBR0U7SUFDQTtJQUdBO0lBRUE7RWpGK2lxQkY7RWlGNWlxQkE7SUFHRTtJQUNBO0VqRjhpcUJGO0FBQ0Y7QWlGM2lxQkE7RUFFRTtBakY2aXFCRjs7QWlGMWlxQkE7QUFnQkE7RUFDRTtJQUNFO0lBR0E7RWpGMGlxQkY7RWlGdmlxQkE7SUFDRTtJQUdBO0VqRnlpcUJGO0FBQ0Y7QWlGdGlxQkE7RUFFRTtBakZ3aXFCRjs7QWlGcmlxQkE7QUFnQkE7RUFDRTtJQUNFO0lBR0E7RWpGcWlxQkY7RWlGbGlxQkE7SUFDRTtJQUdBO0VqRm9pcUJGO0FBQ0Y7QWlGamlxQkE7RUFFRTtBakZtaXFCRjtBaUZwaHFCQTtFQUNFO0lBQ0U7SUFFQTtFakZpaXFCRjtFaUY5aHFCQTtJQUNFO0VqRmdpcUJGO0FBQ0Y7QWlGN2hxQkE7RUFFRTtBakYraHFCRjtBaUYxZ3FCQTtFQUNFO0lBQ0U7SUFFQTtJQUVBO0VqRjZocUJGO0VpRjFocUJBO0lBQ0U7SUFFQTtJQUVBO0VqRjRocUJGO0FBQ0Y7QWlGemhxQkE7RUFFRTtBakYyaHFCRjtBaUZ0Z3FCQTtFQUNFO0lBQ0U7SUFFQTtJQUVBO0VqRnlocUJGO0VpRnRocUJBO0lBQ0U7SUFFQTtJQUVBO0VqRndocUJGO0FBQ0Y7QWlGcmhxQkE7RUFFRTtBakZ1aHFCRjtBaUZsZ3FCQTtFQUNFO0lBQ0U7SUFFQTtJQUVBO0VqRnFocUJGO0VpRmxocUJBO0lBQ0U7SUFFQTtJQUVBO0VqRm9ocUJGO0FBQ0Y7QWlGamhxQkE7RUFFRTtBakZtaHFCRjtBaUY5L3BCQTtFQUNFO0lBQ0U7SUFFQTtJQUVBO0VqRmlocUJGO0VpRjlncUJBO0lBQ0U7SUFFQTtJQUVBO0VqRmdocUJGO0FBQ0Y7QWlGN2dxQkE7RUFFRTtBakYrZ3FCRjtBaUY1L3BCQTtFQUNFO0lBQ0U7RWpGNGdxQkY7RWlGemdxQkE7SUFDRTtJQUVBO0VqRjJncUJGO0VpRnhncUJBO0lBQ0U7RWpGMGdxQkY7QUFDRjtBaUZ2Z3FCQTtFQUVFO0FqRnlncUJGO0FpRmwvcEJBO0VBQ0U7SUFDRTtJQUVBO0lBRUE7RWpGdWdxQkY7RWlGcGdxQkE7SUFDRTtJQUVBO0lBRUE7SUFFQTtFakZzZ3FCRjtBQUNGO0FpRm5ncUJBO0VBRUU7QWpGcWdxQkY7QWlGbC9wQkE7RUFDRTtJQUNFO0lBRUE7RWpGbWdxQkY7RWlGaGdxQkE7SUFDRTtJQUVBO0lBRUE7RWpGa2dxQkY7QUFDRjtBaUYvL3BCQTtFQUVFO0FqRmlncUJGO0FpRjkrcEJBO0VBQ0U7SUFDRTtJQUVBO0VqRisvcEJGO0VpRjUvcEJBO0lBQ0U7SUFFQTtJQUVBO0VqRjgvcEJGO0FBQ0Y7QWlGMy9wQkE7RUFFRTtBakY2L3BCRjtBaUZ0K3BCQTtFQUNFO0lBQ0U7SUFFQTtJQUVBO0VqRjIvcEJGO0VpRngvcEJBO0lBQ0U7SUFFQTtJQUVBO0lBRUE7RWpGMC9wQkY7QUFDRjtBaUZ2L3BCQTtFQUVFO0FqRnkvcEJGOztBaUZ0L3BCQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRnkvcEJGO0FpRnYvcEJFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRnkvcEJKO0FpRnYvcEJJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpGeS9wQk47QWlGdi9wQk07RUFDRTtFQUNBO0FqRnkvcEJSO0FpRnQvcEJNO0VBQ0U7RUFDQTtBakZ3L3BCUjtBaUZyL3BCTTtFQUNFO0VBQ0E7QWpGdS9wQlI7O0FpRmovcEJBO0VBQ0U7SUFDRTtFakZvL3BCRjtFaUZqL3BCQTtJQUNFO0VqRm0vcEJGO0VpRmgvcEJBO0lBQ0U7RWpGay9wQkY7RWlGLytwQkE7SUFDRTtFakZpL3BCRjtFaUY5K3BCQTtJQUNFO0VqRmcvcEJGO0FBQ0Y7QWlGNytwQkE7RUFDRTtJQUNFO0VqRisrcEJGO0VpRjUrcEJBO0lBQ0U7RWpGOCtwQkY7RWlGMytwQkE7SUFDRTtFakY2K3BCRjtFaUYxK3BCQTtJQUNFO0VqRjQrcEJGO0VpRnorcEJBO0lBQ0U7RWpGMitwQkY7QUFDRjtBaUZ4K3BCQTtFQUNFO0lBQ0U7RWpGMCtwQkY7RWlGditwQkE7SUFDRTtFakZ5K3BCRjtFaUZ0K3BCQTtJQUNFO0VqRncrcEJGO0VpRnIrcEJBO0lBQ0U7RWpGdStwQkY7RWlGcCtwQkE7SUFDRTtFakZzK3BCRjtBQUNGO0FpRm4rcEJBO0VBQ0U7SUFDRTtFakZxK3BCRjtFaUZsK3BCQTtJQUNFO0VqRm8rcEJGO0VpRmorcEJBO0lBQ0U7RWpGbStwQkY7QUFDRjtBaUZoK3BCQTtFQUVFO0lBRUU7RWpGZytwQkY7RWlGNzlwQkE7SUFDRTtFakYrOXBCRjtFaUY1OXBCQTtJQUNFO0VqRjg5cEJGO0FBQ0Y7QWlGMzlwQkE7RUFFRTtBakY2OXBCRjs7QWlGejlwQkE7Ozs7Q0FBQTtBQUtBO0VBRUU7QWpGNDlwQkY7QWlGNzhwQkE7RUFDRTtJQUVFO0VqRjA5cEJGO0VpRnY5cEJBO0lBRUU7RWpGeTlwQkY7QUFDRjtBaUZ0OXBCQTs7OztDQUFBO0FBS0E7RUFFRTtBakZ3OXBCRjs7QWlGcjlwQkE7QUFhQTtFQUNFO0lBRUU7RWpGczlwQkY7RWlGbjlwQkE7SUFFRTtFakZxOXBCRjtBQUNGO0FpRmw5cEJBOzs7O0NBQUE7QUFLQTtFQUVFO0FqRm85cEJGOztBaUZqOXBCQTtBQWFBO0VBQ0U7SUFFRTtFakZrOXBCRjtFaUYvOHBCQTtJQUVFO0VqRmk5cEJGO0FBQ0Y7QWlGOThwQkE7Ozs7Q0FBQTtBQUtBO0VBRUU7QWpGZzlwQkY7O0FpRjc4cEJBO0FBYUE7RUFDRTtJQUVFO0VqRjg4cEJGO0VpRjM4cEJBO0lBRUU7RWpGNjhwQkY7QUFDRjtBaUYxOHBCQTtFQUdFO0VBR0E7RUFHQTtFQUVBO0FqRjQ4cEJGOztBaUZ6OHBCQTtFQUdFO0VBRUE7QWpGNDhwQkY7O0FpRnY4cEJBO0VBQ0U7RUFDQTtBakYwOHBCRjs7QWlGdjhwQkE7RUFDRTtJQUNFO0VqRjA4cEJGO0VpRnY4cEJBO0lBRUU7RWpGdzhwQkY7QUFDRjtBaUZyOHBCQTtFQUNFO0VBQ0E7QWpGdThwQkY7O0FpRnA4cEJBO0VBQ0U7QWpGdThwQkY7O0FpRnA4cEJBO0VBQ0U7SUFDRTtFakZ1OHBCRjtFaUZwOHBCQTtJQUVFO0lBQ0E7RWpGcThwQkY7QUFDRjtBaUZsOHBCQTtFQUVFO0lBRUU7RWpGazhwQkY7RWlGLzdwQkE7SUFFRTtFakZnOHBCRjtBQUNGO0FpRjU3cEJFO0VBQ0U7RUFDQTtBakY4N3BCSjs7QWlGaDhwQkU7RUFDRTtFQUNBO0FqRm04cEJKOztBaUZyOHBCRTtFQUNFO0VBQ0E7QWpGdzhwQko7O0FpRjE4cEJFO0VBQ0U7RUFDQTtBakY2OHBCSjs7QWlGeDhwQkU7RUFDRTtBakYyOHBCSjs7QWlGeDhwQkU7RUFDRTtBakYyOHBCSjs7QWlGeDhwQkU7RUFDRTtBakYyOHBCSjs7QWlGeDhwQkU7RUFDRTtBakYyOHBCSjs7QWlGeDlwQkU7RUFDRTtBakYyOXBCSjs7QWlGeDlwQkU7RUFDRTtBakYyOXBCSjs7QWlGeDlwQkU7RUFDRTtBakYyOXBCSjs7QWlGeDlwQkU7RUFDRTtBakYyOXBCSjs7QWlGeCtwQkU7RUFDRTtBakYyK3BCSjs7QWlGeCtwQkU7RUFDRTtBakYyK3BCSjs7QWlGeCtwQkU7RUFDRTtBakYyK3BCSjs7QWlGeCtwQkU7RUFDRTtBakYyK3BCSjs7QWlGeC9wQkU7RUFDRTtBakYyL3BCSjs7QWlGeC9wQkU7RUFDRTtBakYyL3BCSjs7QWlGeC9wQkU7RUFDRTtBakYyL3BCSjs7QWlGeC9wQkU7RUFDRTtBakYyL3BCSjs7QWlGeGdxQkU7RUFDRTtBakYyZ3FCSjs7QWlGeGdxQkU7RUFDRTtBakYyZ3FCSjs7QWlGeGdxQkU7RUFDRTtBakYyZ3FCSjs7QWlGeGdxQkU7RUFDRTtBakYyZ3FCSjs7QWlGeGhxQkU7RUFDRTtBakYyaHFCSjs7QWlGeGhxQkU7RUFDRTtBakYyaHFCSjs7QWlGeGhxQkU7RUFDRTtBakYyaHFCSjs7QWlGeGhxQkU7RUFDRTtBakYyaHFCSjs7QWlGeGlxQkU7RUFDRTtBakYyaXFCSjs7QWlGeGlxQkU7RUFDRTtBakYyaXFCSjs7QWlGeGlxQkU7RUFDRTtBakYyaXFCSjs7QWlGeGlxQkU7RUFDRTtBakYyaXFCSjs7QWlGeGpxQkU7RUFDRTtBakYyanFCSjs7QWlGeGpxQkU7RUFDRTtBakYyanFCSjs7QWlGeGpxQkU7RUFDRTtBakYyanFCSjs7QWlGeGpxQkU7RUFDRTtBakYyanFCSjs7QWlGeGtxQkU7RUFDRTtBakYya3FCSjs7QWlGeGtxQkU7RUFDRTtBakYya3FCSjs7QWlGeGtxQkU7RUFDRTtBakYya3FCSjs7QWlGeGtxQkU7RUFDRTtBakYya3FCSjs7QWlGeGxxQkU7RUFDRTtBakYybHFCSjs7QWlGeGxxQkU7RUFDRTtBakYybHFCSjs7QWlGeGxxQkU7RUFDRTtBakYybHFCSjs7QWlGeGxxQkU7RUFDRTtBakYybHFCSjs7QWlGeG1xQkU7RUFDRTtBakYybXFCSjs7QWlGeG1xQkU7RUFDRTtBakYybXFCSjs7QWlGeG1xQkU7RUFDRTtBakYybXFCSjs7QWlGeG1xQkU7RUFDRTtBakYybXFCSjs7QWlGeG5xQkU7RUFDRTtBakYybnFCSjs7QWlGeG5xQkU7RUFDRTtBakYybnFCSjs7QWlGeG5xQkU7RUFDRTtBakYybnFCSjs7QWlGeG5xQkU7RUFDRTtBakYybnFCSjs7QWlGeG9xQkU7RUFDRTtBakYyb3FCSjs7QWlGeG9xQkU7RUFDRTtBakYyb3FCSjs7QWlGeG9xQkU7RUFDRTtBakYyb3FCSjs7QWlGeG9xQkU7RUFDRTtBakYyb3FCSjs7QWlGeHBxQkU7RUFDRTtBakYycHFCSjs7QWlGeHBxQkU7RUFDRTtBakYycHFCSjs7QWlGeHBxQkU7RUFDRTtBakYycHFCSjs7QWlGeHBxQkU7RUFDRTtBakYycHFCSjs7QWlGeHFxQkU7RUFDRTtBakYycXFCSjs7QWlGeHFxQkU7RUFDRTtBakYycXFCSjs7QWlGeHFxQkU7RUFDRTtBakYycXFCSjs7QWlGeHFxQkU7RUFDRTtBakYycXFCSjs7QWlGeHJxQkU7RUFDRTtBakYycnFCSjs7QWlGeHJxQkU7RUFDRTtBakYycnFCSjs7QWlGeHJxQkU7RUFDRTtBakYycnFCSjs7QWlGeHJxQkU7RUFDRTtBakYycnFCSjs7QWlGeHNxQkU7RUFDRTtBakYyc3FCSjs7QWlGeHNxQkU7RUFDRTtBakYyc3FCSjs7QWlGeHNxQkU7RUFDRTtBakYyc3FCSjs7QWlGeHNxQkU7RUFDRTtBakYyc3FCSjs7QWlGeHRxQkU7RUFDRTtBakYydHFCSjs7QWlGeHRxQkU7RUFDRTtBakYydHFCSjs7QWlGeHRxQkU7RUFDRTtBakYydHFCSjs7QWlGeHRxQkU7RUFDRTtBakYydHFCSjs7QWlGeHVxQkU7RUFDRTtBakYydXFCSjs7QWlGeHVxQkU7RUFDRTtBakYydXFCSjs7QWlGeHVxQkU7RUFDRTtBakYydXFCSjs7QWlGeHVxQkU7RUFDRTtBakYydXFCSjs7QWlGdnVxQkE7RUFFRTtJQUVFO0VqRnd1cUJGO0VpRnJ1cUJBO0lBRUU7RWpGc3VxQkY7QUFDRjtBaUZudXFCQTtFQUVFO0lBRUU7SUFDQTtFakZtdXFCRjtFaUZodXFCQTtJQUVFO0lBQ0E7RWpGaXVxQkY7RWlGOXRxQkE7SUFDRTtJQUNBO0VqRmd1cUJGO0FBQ0Y7QWlGNXRxQkU7RUFDRTtBakY4dHFCSjs7QWlGL3RxQkU7RUFDRTtBakZrdXFCSjs7QWlGbnVxQkU7RUFDRTtBakZzdXFCSjs7QWlGdnVxQkU7RUFDRTtBakYwdXFCSjs7QWlGM3VxQkU7RUFDRTtBakY4dXFCSjs7QWlGL3VxQkU7RUFDRTtBakZrdnFCSjs7QWlGbnZxQkU7RUFDRTtBakZzdnFCSjs7QWlGdnZxQkU7RUFDRTtBakYwdnFCSjs7QWlGM3ZxQkU7RUFDRTtBakY4dnFCSjs7QWlGL3ZxQkU7RUFDRTtBakZrd3FCSjs7QWlGbndxQkU7RUFDRTtBakZzd3FCSjs7QWlGdndxQkU7RUFDRTtBakYwd3FCSjs7QWlGM3dxQkU7RUFDRTtBakY4d3FCSjs7QWlGL3dxQkU7RUFDRTtBakZreHFCSjs7QWlGbnhxQkU7RUFDRTtBakZzeHFCSjs7QWlGdnhxQkU7RUFDRTtBakYweHFCSjs7QWlGM3hxQkU7RUFDRTtBakY4eHFCSjs7QWlGL3hxQkU7RUFDRTtBakZreXFCSjs7QWlGbnlxQkU7RUFDRTtBakZzeXFCSjs7QWlGdnlxQkU7RUFDRTtBakYweXFCSjs7QWlGM3lxQkU7RUFDRTtBakY4eXFCSjs7QWlGMXlxQkE7RUFDRTtJQUNFO0VqRjZ5cUJGO0FBQ0Y7QWlGenlxQkU7RUFDRTtBakYyeXFCSjs7QWlGdnlxQkU7RUFDRTtBakYweXFCSjs7QWlGdHlxQkU7RUFDRTtBakZ5eXFCSjs7QWlGcHpxQkU7RUFDRTtBakZ1enFCSjs7QWlGbnpxQkU7RUFDRTtBakZzenFCSjs7QWlGbHpxQkU7RUFDRTtBakZxenFCSjs7QWlGaDBxQkU7RUFDRTtBakZtMHFCSjs7QWlGL3pxQkU7RUFDRTtBakZrMHFCSjs7QWlGOXpxQkU7RUFDRTtBakZpMHFCSjs7QWlGNTBxQkU7RUFDRTtBakYrMHFCSjs7QWlGMzBxQkU7RUFDRTtBakY4MHFCSjs7QWlGMTBxQkU7RUFDRTtBakY2MHFCSjs7QWlGeDFxQkU7RUFDRTtBakYyMXFCSjs7QWlGdjFxQkU7RUFDRTtBakYwMXFCSjs7QWlGdDFxQkU7RUFDRTtBakZ5MXFCSjs7QWlGcDJxQkU7RUFDRTtBakZ1MnFCSjs7QWlGbjJxQkU7RUFDRTtBakZzMnFCSjs7QWlGbDJxQkU7RUFDRTtBakZxMnFCSjs7QWlGaDNxQkU7RUFDRTtBakZtM3FCSjs7QWlGLzJxQkU7RUFDRTtBakZrM3FCSjs7QWlGOTJxQkU7RUFDRTtBakZpM3FCSjs7QWlGNTNxQkU7RUFDRTtBakYrM3FCSjs7QWlGMzNxQkU7RUFDRTtBakY4M3FCSjs7QWlGMTNxQkU7RUFDRTtBakY2M3FCSjs7QWlGeDRxQkU7RUFDRTtBakYyNHFCSjs7QWlGdjRxQkU7RUFDRTtBakYwNHFCSjs7QWlGdDRxQkU7RUFDRTtBakZ5NHFCSjs7QWlGcDVxQkU7RUFDRTtBakZ1NXFCSjs7QWlGbjVxQkU7RUFDRTtBakZzNXFCSjs7QWlGbDVxQkU7RUFDRTtBakZxNXFCSjs7QWlGaDZxQkU7RUFDRTtBakZtNnFCSjs7QWlGLzVxQkU7RUFDRTtBakZrNnFCSjs7QWlGOTVxQkU7RUFDRTtBakZpNnFCSjs7QWlGNTZxQkU7RUFDRTtBakYrNnFCSjs7QWlGMzZxQkU7RUFDRTtBakY4NnFCSjs7QWlGMTZxQkU7RUFDRTtBakY2NnFCSjs7QWlGdjZxQkE7RUFFRTtJQUVFO0VqRnc2cUJGO0FBQ0Y7QWlGcjZxQkE7RUFFRTtJQUVFO0VqRnE2cUJGO0VpRmw2cUJBO0lBQ0U7RWpGbzZxQkY7QUFDRjtBaUZqNnFCQTtFQUNFO0FqRm02cUJGOztBaUYvNXFCRTtFQUNFO0FqRms2cUJKOztBaUZuNnFCRTtFQUNFO0FqRnM2cUJKOztBaUZ2NnFCRTtFQUNFO0FqRjA2cUJKOztBaUZyNnFCRTtFQUNFO0FqRnc2cUJKOztBaUZ6NnFCRTtFQUNFO0FqRjQ2cUJKOztBaUY3NnFCRTtFQUNFO0FqRmc3cUJKOztBaUYzNnFCRTtFQUNFO0FqRjg2cUJKOztBaUYvNnFCRTtFQUNFO0FqRms3cUJKOztBaUZuN3FCRTtFQUNFO0FqRnM3cUJKOztBaUZ2N3FCRTtFQUNFO0FqRjA3cUJKOztBaUYzN3FCRTtFQUNFO0FqRjg3cUJKOztBaUYvN3FCRTtFQUNFO0FqRms4cUJKOztBaUZuOHFCRTtFQUNFO0FqRnM4cUJKOztBaUZ2OHFCRTtFQUNFO0FqRjA4cUJKOztBaUYzOHFCRTtFQUNFO0FqRjg4cUJKOztBaUYvOHFCRTtFQUNFO0FqRms5cUJKOztBaUZuOXFCRTtFQUNFO0FqRnM5cUJKOztBaUZ2OXFCRTtFQUNFO0FqRjA5cUJKOztBaUYzOXFCRTtFQUNFO0FqRjg5cUJKOztBaUYvOXFCRTtFQUNFO0FqRmsrcUJKOztBaUZuK3FCRTtFQUNFO0FqRnMrcUJKOztBaUZ2K3FCRTtFQUNFO0FqRjArcUJKOztBaUYzK3FCRTtFQUNFO0FqRjgrcUJKOztBaUYvK3FCRTtFQUNFO0FqRmsvcUJKOztBaUZuL3FCRTtFQUNFO0FqRnMvcUJKOztBaUZqL3FCRTtFQUNFO0FqRm8vcUJKOztBaUZyL3FCRTtFQUNFO0FqRncvcUJKOztBaUZ6L3FCRTtFQUNFO0FqRjQvcUJKOztBaUY3L3FCRTtFQUNFO0FqRmdnckJKOztBaUZqZ3JCRTtFQUNFO0FqRm9nckJKOztBaUZyZ3JCRTtFQUNFO0FqRndnckJKOztBaUZ6Z3JCRTtFQUNFO0FqRjRnckJKOztBaUY3Z3JCRTtFQUNFO0FqRmdockJKOztBaUZqaHJCRTtFQUNFO0FqRm9ockJKOztBaUZyaHJCRTtFQUNFO0FqRndockJKOztBaUZ6aHJCRTtFQUNFO0FqRjRockJKOztBaUY3aHJCRTtFQUNFO0FqRmdpckJKOztBaUZqaXJCRTtFQUNFO0FqRm9pckJKOztBaUZyaXJCRTtFQUNFO0FqRndpckJKOztBaUZ6aXJCRTtFQUNFO0FqRjRpckJKOztBaUY3aXJCRTtFQUNFO0FqRmdqckJKOztBaUZqanJCRTtFQUNFO0FqRm9qckJKOztBaUZyanJCRTtFQUNFO0FqRndqckJKOztBaUZ6anJCRTtFQUNFO0FqRjRqckJKOztBaUZ2anJCQTtFQUNFO0lBQ0U7RWpGMGpyQkY7QUFDRjtBaUZ2anJCQTtFQUNFO0FqRnlqckJGOztBaUZ0anJCQTtFQUNFO0lBQ0U7RWpGeWpyQkY7QUFDRjtBaUZ0anJCQTtFQUNFO0FqRndqckJGOztBaUZyanJCQTtFQUNFO0lBQ0U7RWpGd2pyQkY7QUFDRjtBaUZyanJCQTtFQUNFO0FqRnVqckJGOztBa0YvdHlCQTtFQUNJO0lBQ0k7RWxGa3V5Qk47RWtGL3R5QkU7SUFDSTtFbEZpdXlCTjtFa0Y5dHlCRTtJQUNJO0VsRmd1eUJOO0FBQ0Y7QWtGNXR5QkE7RUFDSTtFQUNBO0FsRjh0eUJKO0FrRjV0eUJJO0VBQ0k7RUFDQTtBbEY4dHlCUjtBa0Y1dHlCUTtFQUpKO0lBS1E7SUFDQTtFbEYrdHlCVjtBQUNGOztBa0YzdHlCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEY4dHlCSjtBa0Y1dHlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGOHR5QlI7QWtGM3R5Qkk7RUFDSTtFQUNBO0VBQ0E7QWxGNnR5QlI7O0FrRnp0eUJBO0VOREU7QTVFOHR5QkY7QTRFNXR5QkU7RU1ERjtJTkVJO0U1RSt0eUJGO0FBQ0Y7QWtGL3R5Qkk7RUFDSTtFQUNBO0VBQ0E7QWxGaXV5QlI7QWtGL3R5QlE7RUFMSjtJQU1RO0lBQ0E7RWxGa3V5QlY7QUFDRjs7QWtGOXR5QkE7RU5oQkU7QTVFa3Z5QkY7QTRFaHZ5QkU7RU1jRjtJTmJJO0U1RW12eUJGO0FBQ0Y7QWtGdnV5QkE7RUFFSTtBbEZ3dXlCSjtBa0Z0dXlCSTtFQUpKO0lBS1E7RWxGeXV5Qk47QUFDRjtBa0YvdXlCQTtFQVFJO0FsRjB1eUJKOztBa0ZudXlCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZzdXlCSjtBa0ZwdXlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGc3V5QlI7O0FrRmx1eUJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGcXV5Qko7QWtGbnV5Qkk7RUFDSTtFQUNBO0VBQ0E7QWxGcXV5QlI7QWtGbnV5QlE7RUFDSTtFQUNBO0VBQ0E7QWxGcXV5Qlo7QWtGanV5Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRm11eUJSO0FrRmh1eUJJO0VBdENKO0lBdUNRO0VsRm11eUJOO0FBQ0Y7O0FrRmh1eUJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRm11eUJKO0FrRmp1eUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGbXV5QlI7QWtGaHV5Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRmt1eUJSO0FrRi90eUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxGaXV5QlI7QWtGOXR5Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbEZndXlCUjtBa0Y3dHlCSTtFQUNJO0VBQ0E7RUFDQTtBbEYrdHlCUjtBa0Y3dHlCUTtFQUNJO0VBQ0E7QWxGK3R5Qlo7QWtGNXR5QlE7RUFDSTtFQUNBO0VBQ0E7QWxGOHR5Qlo7QWtGM3R5QlE7RUFDSTtBbEY2dHlCWjtBa0Z4dHlCUTtFQURKO0lBRVE7SUFDQTtJQUNBO0VsRjJ0eUJWO0VrRnp0eUJVO0lBQ0k7RWxGMnR5QmQ7RWtGeHR5QlU7SUFDSTtFbEYwdHlCZDtFa0Z2dHlCVTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0VsRnl0eUJkO0FBQ0Y7O0FrRnB0eUJBO0VON01FO0E1RXE2eUJGO0E0RW42eUJFO0VNMk1GO0lOMU1JO0U1RXM2eUJGO0FBQ0Y7O0FrRnp0eUJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGNHR5Qko7QWtGMXR5Qkk7RUFaSjtJQWFRO0VsRjZ0eUJOO0FBQ0Y7QWtGM3R5Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRjZ0eUJSO0FrRjF0eUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxGNHR5QlI7QWtGenR5Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFNQSxzR0FDSTtFQUVKO0VBQ0E7RUFDQTtFQUNBO0FsRm90eUJSO0FrRmp0eUJJO0VBQ0k7RUFDQTtFQUNBO0FsRm10eUJSO0FrRmp0eUJRO0VBQ0k7RUFDQTtFQUNBO0FsRm10eUJaO0FrRmp0eUJnQjtFQUNJO0FsRm10eUJwQjtBa0Y5c3lCUTtFQUNJO0FsRmd0eUJaOztBa0Yzc3lCQTtFQUNJO0VBQ0E7RU5uU0Y7QTVFay95QkY7QTRFaC95QkU7RU0rUkY7SU45Ukk7RTVFbS95QkY7QUFDRjtBa0ZodHlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBS0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEY4c3lCUjtBa0Y1c3lCUTtFQUNJO0FsRjhzeUJaO0FrRnpzeUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7QWxGdXN5QlI7QWtGcnN5QlE7RUFoQko7SUFpQlE7RWxGd3N5QlY7QUFDRjtBa0Zyc3lCSTtFQUNJO0VBQ0E7RUFDQTtBbEZ1c3lCUjtBa0Zuc3lCSTtFQUNJO0VBQ0E7RUFDQTtBbEZxc3lCUjtBa0Zqc3lCSTtFQUNJO0FsRm1zeUJSO0FrRmpzeUJRO0VBQ0k7RUFDQTtFQUNBO0FsRm1zeUJaO0FrRmhzeUJRO0VBQ0k7RUFDQTtBbEZrc3lCWjtBa0Y1cnlCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsRjhyeUJaO0FrRjNyeUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRjZyeUJaO0FrRjFyeUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEY0cnlCWjtBa0YxcnlCWTtFQVBKO0lBUVE7RWxGNnJ5QmQ7QUFDRjtBa0YxcnlCUTtFQUNJO0VBQ0E7RUFDQTtBbEY0cnlCWjtBa0Z2cnlCSTtFQUNJO0VBQ0E7RUFDQTtBbEZ5cnlCUjtBa0Z2cnlCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFLQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGcXJ5Qlo7QWtGbnJ5Qlk7RUFDSTtFQUNBO0FsRnFyeUJoQjtBa0ZscnlCWTtFQUNJO0VBQ0E7RUFDQTtBbEZvcnlCaEI7QWtGOXF5Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbEZncnlCUjtBa0Y3cXlCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsK0VBQ0k7RUFFSjtFQUNBO0FsRjZxeUJaO0FrRjNxeUJZO0VBQ0k7RUFFQTtBbEY0cXlCaEI7QWtGenF5Qlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbEYycXlCaEI7QWtGenF5QmdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxGMnF5QnBCO0FrRnpxeUJvQjtFQUNJO0FsRjJxeUJ4QjtBa0Z4cXlCb0I7RUFDSTtBbEYwcXlCeEI7QWtGdnF5Qm9CO0VBQ0k7QWxGeXF5QnhCO0FrRnBxeUJZO0VBQ0k7RUFDQTtBbEZzcXlCaEI7QWtGanF5QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRm1xeUJaO0FrRmpxeUJZO0VBQ0k7RUFFQTtBbEZrcXlCaEI7QWtGL3B5Qlk7RUFDSTtFQUNBO0VBQ0E7QWxGaXF5QmhCO0FrRjNweUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxGNnB5QlI7QWtGM3B5QlE7RUFOSjtJQU9RO0VsRjhweUJWO0FBQ0Y7QWtGM3B5Qkk7RUFDSTtFQUNBO0VBQ0E7QWxGNnB5QlI7QWtGenB5Qkk7RUFDSTtJQUNJO0VsRjJweUJWO0VrRnhweUJNO0lBQ0k7RWxGMHB5QlY7RWtGdHB5QlU7O0lBRUk7RWxGd3B5QmQ7RWtGcHB5Qk07SUFDSTtFbEZzcHlCVjtBQUNGOztBa0ZscHlCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsRnFweUJKO0FrRm5weUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRnFweUJSO0FrRm5weUJRO0VBWEo7SUFZUTtJQUNBO0lBQ0E7RWxGc3B5QlY7QUFDRjtBa0ZucHlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsRnFweUJSO0FrRm5weUJRO0VBTko7SUFPUTtJQUNBO0lBQ0E7RWxGc3B5QlY7QUFDRjtBa0ZwcHlCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZzcHlCWjtBa0ZscHlCSTtFQUNJO0FsRm9weUJSO0FrRmxweUJRO0VBQ0k7RUFDQTtBbEZvcHlCWjtBa0ZscHlCWTtFQUpKO0lBS1E7RWxGcXB5QmQ7QUFDRjtBa0ZqcHlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRm1weUJSO0FrRmhweUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZrcHlCUjtBa0Yvb3lCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsRmlweUJSO0FrRjlveUJJO0VBQ0k7RUFDQTtFQUNBO0FsRmdweUJSO0FrRjlveUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGZ3B5Qlo7QWtGNW95Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbEY4b3lCUjtBa0Y1b3lCUTtFQUNJO0FsRjhveUJaO0FrRjNveUJRO0VBQ0k7RUFDQTtBbEY2b3lCWjs7QWtGeG95QkE7RUFDSTtFQUNBO0VBQ0E7QWxGMm95Qko7QWtGem95Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBS0E7RUFDQTtBbEZ1b3lCUjtBa0Zwb3lCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsRnNveUJSO0FrRnBveUJRO0VBQ0k7RUFDQTtBbEZzb3lCWjtBa0Zqb3lCUTtFQUNJO0VBQ0E7RUFDQTtBbEZtb3lCWjs7QWtGOW55QkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRmlveUJKO0FrRi9ueUJJO0VBUEo7SUFRUTtFbEZrb3lCTjtBQUNGO0FrRmhveUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRmtveUJSO0FrRmhveUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZrb3lCWjtBa0YvbnlCUTtFQUNJO0VBQ0E7QWxGaW95Qlo7QWtGL255Qlk7RUFDSTtFQUNBO0FsRmlveUJoQjs7QWtGM255QkE7RU45d0JFO0E1RTY0ekJGO0E0RTM0ekJFO0VNNHdCRjtJTjN3Qkk7RTVFODR6QkY7QUFDRjtBa0Zqb3lCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsRm1veUJSO0FrRmpveUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRm1veUJaO0FrRmpveUJZO0VBWEo7SUFZUTtFbEZvb3lCZDtBQUNGO0FrRmxveUJZO0VBZko7SUFnQlE7RWxGcW95QmQ7QUFDRjtBa0Zsb3lCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZvb3lCWjtBa0Zsb3lCWTtFQVhKO0lBWVE7RWxGcW95QmQ7QUFDRjtBa0Zub3lCWTtFQWZKO0lBZ0JRO0VsRnNveUJkO0FBQ0Y7QWtGbm95QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGcW95Qlo7QWtGbm95Qlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbEZxb3lCaEI7QWtGbm95QmdCO0VBQ0k7QWxGcW95QnBCO0FrRmxveUJnQjtFQVZKO0lBV1E7SUFDQTtJQUNBO0VsRnFveUJsQjtFa0Zub3lCa0I7SUFDSTtJQUNBO0VsRnFveUJ0QjtBQUNGO0FrRmxveUJnQjtFQXJCSjtJQXNCUTtJQUNBO0VsRnFveUJsQjtFa0Zub3lCa0I7SUFDSTtJQUNBO0VsRnFveUJ0QjtBQUNGO0FrRmpveUJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxGbW95QmhCO0FrRmpveUJnQjtFQUNJO0FsRm1veUJwQjtBa0Zob3lCZ0I7RUFWSjtJQVdRO0lBQ0E7RWxGbW95QmxCO0VrRmpveUJrQjtJQUNJO0lBQ0E7RWxGbW95QnRCO0FBQ0Y7QWtGaG95QmdCO0VBcEJKO0lBcUJRO0lBQ0E7RWxGbW95QmxCO0VrRmpveUJrQjtJQUNJO0lBQ0E7RWxGbW95QnRCO0FBQ0Y7QWtGL255Qlk7RUFDSTtFQUNBO0FsRmlveUJoQjtBa0YvbnlCZ0I7RUFDSTtFQUNBO0VBQ0EscUVBQ0k7QWxGZ295QnhCO0FrRjVueUJnQjtFQVpKO0lBYVE7RWxGK255QmxCO0FBQ0Y7QWtGNW55Qlk7RUFDSTtBbEY4bnlCaEI7QWtGM255Qlk7RUE1Rko7SUE2RlE7RWxGOG55QmQ7RWtGNW55QmM7SUFDSTtFbEY4bnlCbEI7QUFDRjtBa0YzbnlCWTtFQUNJO0lBQ0k7RWxGNm55QmxCO0FBQ0Y7O0FrRnZueUJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRjBueUJKO0FrRnhueUJJO0VBQ0k7QWxGMG55QlI7QWtGeG55QlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbEYwbnlCWjtBa0Z4bnlCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsRjBueUJoQjtBa0ZybnlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRnVueUJSO0FrRnBueUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZzbnlCWjtBa0ZwbnlCWTtFQWhCSjtJQWlCUTtFbEZ1bnlCZDtBQUNGO0FrRm5ueUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxGcW55QlI7QWtGbG55Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbEZvbnlCUjs7QWtGaG55QkE7RUFDSTtBbEZtbnlCSjtBa0ZqbnlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRm1ueUJSO0FrRmpueUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0EscUVBQ0k7QWxGa255QmhCO0FrRjdteUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEYrbXlCUjtBa0Y1bXlCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsRjhteUJSOztBa0YxbXlCQTtFQUNJO0FsRjZteUJKOztBa0YxbXlCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEY2bXlCSjtBa0YzbXlCSTtFQUNJO0VBQ0E7RUFDQTtBbEY2bXlCUjtBa0YzbXlCUTtFQUNJO0VBQ0E7QWxGNm15Qlo7QWtGem15Qkk7RUFDSTtFQUNBO0VBQ0E7QWxGMm15QlI7QWtGeG15Qkk7RUFDSTtFQUNBO0FsRjBteUJSOztBa0Z0bXlCQTtFQUNJO0lBQ0k7RWxGeW15Qk47RWtGdG15QkU7SUFDSTtFbEZ3bXlCTjtFa0ZubXlCVTtJQUNJO0VsRnFteUJkO0FBQ0Y7QWtGaG15QkE7RU5ybUNFO0E1RXdzMEJGO0E0RXRzMEJFO0VNbW1DRjtJTmxtQ0k7RTVFeXMwQkY7QUFDRjtBa0Z4bXlCQTtFQUVJO0FsRnlteUJKO0FrRnRteUJRO0VBQ0k7QWxGd215Qlo7O0FrRm5teUJBO0VOeG1DRTtBNUUrczBCRjtBNEU3czBCRTtFTXNtQ0Y7SU5ybUNJO0U1RWd0MEJGO0FBQ0Y7QWtGNW15QkE7RUFFSTtFQUNBO0VBQ0E7RU41bUNGO0E1RTB0MEJGO0E0RXh0MEJFO0VNc21DRjtJTnJtQ0k7RTVFMnQwQkY7QUFDRjtBa0ZobnlCSTtFQVBKO0lBUVE7RWxGbW55Qk47QUFDRjtBa0ZqbnlCSTtFQVhKO0lBWVE7SUFDQTtJQUNBO0VsRm9ueUJOO0FBQ0Y7QWtGbm95QkE7RUFpQkk7RUFDQTtBbEZxbnlCSjs7QWtGN215QkE7RU4xb0NFO0E1RTJ2MEJGO0E0RXp2MEJFO0VNd29DRjtJTnZvQ0k7RTVFNHYwQkY7QUFDRjtBa0Z0bnlCQTtFQUVJO0FsRnVueUJKO0FrRnBueUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRnNueUJSO0FrRnBueUJRO0VBUko7SUFTUTtFbEZ1bnlCVjtBQUNGO0FrRnBueUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRnNueUJSO0FrRnBueUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZzbnlCWjtBa0ZubnlCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FsRnFueUJaO0FrRmhueUJJO0VBQ0k7RUFDQTtFQUNBO0FsRmtueUJSO0FrRjlteUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRmdueUJaO0FrRjVteUJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRjhteUJSO0FrRjVteUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRjhteUJaO0FrRjVteUJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGOG15QmhCO0FrRnpteUJZO0VBQ0k7RUFDQTtBbEYybXlCaEI7QWtGcG15QlE7RUFDSTtBbEZzbXlCWjtBa0ZwbXlCWTtFQUNJO0VBQ0E7RUFDQTtFQUtBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGa215QmhCO0FrRi9seUJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWxGaW15QmhCO0FrRjdseUJRO0VBQ0k7RUFDQTtFQUNBO0FsRitseUJaO0FrRjdseUJZO0VBTEo7SUFNUTtFbEZnbXlCZDtBQUNGO0FrRjlseUJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRmdteUJoQjtBa0Y5bHlCZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbEZnbXlCcEI7QWtGN2x5QmdCO0VBQ0k7RUFDQTtFQUNBO0FsRitseUJwQjtBa0Y1bHlCZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbEY4bHlCcEI7QWtGM2x5QmdCO0VBQ0k7QWxGNmx5QnBCO0FrRjFseUJnQjtFQUNJO0FsRjRseUJwQjtBa0Z6bHlCZ0I7RUFDSTtBbEYybHlCcEI7QWtGeGx5QmdCO0VBQ0k7QWxGMGx5QnBCO0FrRnBseUJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEZzbHlCaEI7QWtGcGx5QmdCO0VBQ0k7QWxGc2x5QnBCO0FrRm5seUJnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsRnFseUJwQjtBa0ZsbHlCZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxGb2x5QnBCO0FrRmxseUJvQjtFQUNJO0FsRm9seUJ4Qjs7QW1GNSswQkE7RUFDSTtFQUNBO0VBQ0E7RUFDQSxzSEFDSTtFQUVKO0VBQ0E7RUFDQTtFQUNBO0FuRjYrMEJKO0FtRjMrMEJJO0VBWko7SUFhUTtFbkY4KzBCTjtBQUNGOztBbUYzKzBCQTtFQUNJO0FuRjgrMEJKO0FtRjUrMEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GOCswQlI7QW1GNSswQlE7RUFaSjtJQWFRO0lBQ0E7SUFDQTtJQUNBO0VuRisrMEJWO0FBQ0Y7QW1GNyswQlE7RUFDSTtBbkYrKzBCWjtBbUY1KzBCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkY4KzBCWjtBbUY1KzBCWTtFQWRKO0lBZVE7RW5GKyswQmQ7QUFDRjtBbUY3KzBCWTtFQWxCSjtJQW1CUTtJQUNBO0lBQ0E7SUFDQTtFbkZnLzBCZDtBQUNGO0FtRjkrMEJZO0VBRUk7RUFDQTtFQUNBO0VBQ0E7QW5GKyswQmhCOztBbUZ6KzBCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FuRjQrMEJKO0FtRnYrMEJZO0VBQ0k7RUFDQTtBbkZ5KzBCaEI7QW1GdCswQlk7RUFDSTtFQUNBO0FuRncrMEJoQjtBbUZuKzBCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZxKzBCUjtBbUZuKzBCUTtFQUNJO0VBQ0E7RUFDQTtLQUFBO0VBQ0E7QW5GcSswQlo7QW1GbCswQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRm8rMEJaO0FtRmorMEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRm0rMEJaO0FtRmorMEJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GbSswQmhCO0FtRmorMEJnQjtFQUNJO0VBQ0E7QW5GbSswQnBCO0FtRmorMEJvQjtFQUNJO0VBQ0E7RUFDQTtBbkZtKzBCeEI7QW1GNzkwQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRis5MEJaO0FtRjc5MEJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GKzkwQmhCO0FtRjE5MEJJO0VBQ0k7RUFDQTtFQUNBO0FuRjQ5MEJSO0FtRng5MEJJO0VBQ0k7QW5GMDkwQlI7QW1GeDkwQlE7RUFDSTtFQUNBO0FuRjA5MEJaO0FtRng5MEJZO0VBQ0k7RUFDQTtFQUNBO0FuRjA5MEJoQjtBbUZ4OTBCZ0I7RUFDSTtBbkYwOTBCcEI7QW1GcjkwQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZ1OTBCWjtBbUZwOTBCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GczkwQlo7QW1GcDkwQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GczkwQmhCO0FtRnA5MEJnQjtFQUNJO0VBQ0E7QW5GczkwQnBCO0FtRmg5MEJnQjtFQUNJO0FuRms5MEJwQjtBbUZoOTBCb0I7RUFDSTtBbkZrOTBCeEI7O0FtRng4MEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QW5GMjgwQko7QW1GejgwQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GMjgwQlI7O0FtRnY4MEJBO0VQbE9FO0E1RTZxMUJGO0E0RTNxMUJFO0VPZ09GO0lQL05JO0U1RThxMUJGO0FBQ0Y7QW1GNzgwQkk7RUFDSTtBbkYrODBCUjtBbUYzODBCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GNjgwQlo7QW1GMzgwQlk7RUFQSjtJQVFRO0VuRjg4MEJkO0FBQ0Y7QW1GNTgwQlk7RUFDSTtBbkY4ODBCaEI7QW1GMzgwQlk7RUFDSTtBbkY2ODBCaEI7QW1GMTgwQlk7RUFDSTtBbkY0ODBCaEI7QW1GMTgwQmdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GNDgwQnBCO0FtRjE4MEJvQjtFQUNJO0VBQ0E7QW5GNDgwQnhCO0FtRnI4MEJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZ1ODBCaEI7QW1GcjgwQmdCO0VBQ0k7QW5GdTgwQnBCO0FtRnA4MEJnQjtFQUNJO0FuRnM4MEJwQjtBbUZuODBCZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZxODBCcEI7QW1GbjgwQm9CO0VBQ0k7RUFDQTtBbkZxODBCeEI7QW1GbDgwQm9CO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GbzgwQnhCO0FtRmo4MEJvQjtFQUNJO0VBQ0E7QW5GbTgwQnhCO0FtRmo4MEJ3QjtFQUNJO0FuRm04MEI1QjtBbUZoODBCd0I7RUFDSTtBbkZrODBCNUI7QW1GOTcwQm9CO0VBQ0k7RUFDQTtBbkZnODBCeEI7QW1GMzcwQlk7RUFDSTtBbkY2NzBCaEI7QW1GMTcwQm9CO0VBQ0k7RUFDQTtFQUNBO0FuRjQ3MEJ4QjtBbUYxNzBCd0I7RUFDSTtFQUNBO0FuRjQ3MEI1QjtBbUZ2NzBCd0I7RUFDSTtBbkZ5NzBCNUI7QW1GdDcwQmdDO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRnc3MEJwQztBbUZwNzBCb0M7RUFDSTtBbkZzNzBCeEM7QW1GMzYwQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbkY2NjBCaEI7QW1GMzYwQmdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRjY2MEJwQjtBbUYzNjBCb0I7RUFDSTtFQUNBO0VBQ0E7QW5GNjYwQnhCO0FtRjE2MEJvQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FuRjQ2MEJ4QjtBbUZ6NjBCb0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBbkYyNjBCeEI7QW1GeDYwQm9CO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QW5GMDYwQnhCOztBbUZsNjBCQTtFQUNJO0FuRnE2MEJKO0FtRm42MEJJO0VBQ0k7QW5GcTYwQlI7QW1GbDYwQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRm82MEJSO0FtRmw2MEJRO0VBQ0k7RUFDQTtFQUNBO0FuRm82MEJaO0FtRmo2MEJRO0VBQ0k7QW5GbTYwQlo7QW1GLzUwQkk7RUFDSTtFQUNBO0FuRmk2MEJSO0FtRi81MEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZpNjBCWjtBbUYvNTBCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZpNjBCaEI7QW1GOTUwQlk7RUFDSTtFQUNBO0VBQ0E7QW5GZzYwQmhCOztBbUYxNTBCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FuRjY1MEJKO0FtRjM1MEJJOzs7Ozs7Ozs7OztFQU1JO0VBQ0E7RUFDQTtFQUNBO0FuRms2MEJSO0FtRi81MEJJO0VBQ0k7QW5GaTYwQlI7QW1GOTUwQkk7O0VBRUk7RUFDQTtBbkZnNjBCUjtBbUY5NTBCUTs7RUFDSTtBbkZpNjBCWjtBbUY3NTBCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkYrNTBCUjtBbUY1NTBCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRjg1MEJSO0FtRjM1MEJJO0VBQ0k7RUFDQTtFQUNBO0FuRjY1MEJSO0FtRjM1MEJROztFQUVJO0VBQ0E7QW5GNjUwQlo7QW1GMTUwQlE7RUFDSTtFQUNBO0FuRjQ1MEJaOztBbUZ0NTBCSTtFQUNJO0FuRnk1MEJSO0FtRnY1MEJRO0VBQ0k7RUFDQTtBbkZ5NTBCWjtBbUZyNTBCSTtFQUNJO0VBQ0E7QW5GdTUwQlI7QW1GbjUwQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRnE1MEJaO0FtRm41MEJZO0VBUEo7SUFRUTtJQUNBO0VuRnM1MEJkO0FBQ0Y7QW1GcDUwQlk7RUFDSTtBbkZzNTBCaEI7QW1GbDUwQmdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRm81MEJwQjtBbUZsNTBCb0I7RUFSSjtJQVNRO0lBQ0E7RW5GcTUwQnRCO0FBQ0Y7QW1GbjUwQm9CO0VBYko7SUFjUTtJQUNBO0VuRnM1MEJ0QjtBQUNGO0FtRnA1MEJvQjtFQUNJO0VBQ0E7RUFDQTtBbkZzNTBCeEI7QW1GbjUwQm9CO0VBQ0k7RUFDQTtFQUNBO0FuRnE1MEJ4QjtBbUZuNTBCd0I7RUFMSjtJQU1RO0lBQ0E7SUFDQTtFbkZzNTBCMUI7QUFDRjtBbUZqNTBCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FuRm01MEJoQjtBbUZqNTBCZ0I7RUFOSjtJQU9RO0lBQ0E7RW5GbzUwQmxCO0FBQ0Y7QW1GbDUwQmdCO0VBWEo7SUFZUTtJQUNBO0VuRnE1MEJsQjtBQUNGOztBbUYvNDBCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZrNTBCSjtBbUZoNTBCSTtFQVJKO0lBU1E7RW5GbTUwQk47QUFDRjtBbUZqNTBCSTtFQVpKO0lBYVE7RW5GbzUwQk47QUFDRjtBbUZsNTBCSTtFQUNJO0VBQ0E7RUFDQTtBbkZvNTBCUjtBbUZqNTBCSTtFQUNJO0VBQ0E7RUFDQTtBbkZtNTBCUjtBbUZqNTBCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRm01MEJaO0FtRmo1MEJZO0VBVEo7SUFVUTtJQUNBO0VuRm81MEJkO0FBQ0Y7QW1GbDUwQlk7RUFDSTtBbkZvNTBCaEI7QW1GajUwQlk7RUFDSTtFQUNBO0FuRm01MEJoQjtBbUZoNTBCWTtFQUNJO0VBQ0E7QW5GazUwQmhCO0FtRmg1MEJnQjtFQUpKO0lBS1E7RW5GbTUwQmxCO0FBQ0Y7O0FtRjc0MEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZnNTBCSjtBbUY5NDBCSTtFQUNJO0FuRmc1MEJSO0FtRjk0MEJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QW5GZzUwQlo7QW1GOTQwQlk7RUFDSTtBbkZnNTBCaEI7QW1GOTQwQmdCO0VBQ0k7RUFDQTtBbkZnNTBCcEI7QW1GOTQwQm9CO0VBQ0k7RUFDQTtBbkZnNTBCeEI7QW1GOTQwQndCO0VBQ0k7RUFDQTtFQUNBO0FuRmc1MEI1QjtBbUYxNDBCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRjQ0MEJoQjtBbUYxNDBCZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRjQ0MEJwQjtBbUYxNDBCb0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuRjQ0MEJ4QjtBbUZ4NDBCZ0I7RUFDSTtBbkYwNDBCcEI7QW1GeDQwQm9CO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkYwNDBCeEI7QW1GdjQwQm9CO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QW5GeTQwQnhCO0FtRnI0MEJnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZ1NDBCcEI7QW1GbjQwQlk7RUFDSTtBbkZxNDBCaEI7QW1GaDQwQkk7RUFDSTtFQUNBO0VBQ0E7QW5GazQwQlI7QW1GaDQwQlE7RUFDSTtBbkZrNDBCWjtBbUY5MzBCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkZnNDBCUjtBbUY3MzBCSTtFQUNJO0VBQ0E7RUFDQTtBbkYrMzBCUjtBbUY3MzBCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5GKzMwQlo7QW1GNzMwQlk7RUFDSTtBbkYrMzBCaEI7QW1GNTMwQlk7RUFDSTtBbkY4MzBCaEI7QW1GMzMwQlk7RUFDSTtFQUNBO0FuRjYzMEJoQjs7QW9GangyQkE7RUFDSTtFQUNBO0FwRm94MkJKO0FvRmx4MkJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXBGb3gyQlI7QW9GangyQkk7RUFDSTtBcEZteDJCUjtBb0ZqeDJCUTtFQUNJO0FwRm14MkJaO0FvRmp4MkJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGbXgyQmhCO0FvRjl3MkJZO0VBQ0k7RUFDQTtBcEZneDJCaEI7QW9GOXcyQmdCO0VBQ0k7QXBGZ3gyQnBCO0FvRjd3MkJnQjtFQUNJO0FwRit3MkJwQjtBb0YzdzJCWTtFQUNJO0VBQ0E7RUFDQTtBcEY2dzJCaEI7QW9GM3cyQmdCO0VBTEo7SUFNUTtFcEY4dzJCbEI7QUFDRjtBb0Z6dzJCSTtFQUNJO0VBQ0E7RUFDQTtBcEYydzJCUjtBb0Z6dzJCUTtFQUxKO0lBTVE7SUFDQTtFcEY0dzJCVjtBQUNGO0FvRjF3MkJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGNHcyQlo7QW9GMXcyQlk7RUFDSTtFQUNBO0VBQ0E7S0FBQTtBcEY0dzJCaEI7QW9GdncyQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEZ5dzJCaEI7QW9GdncyQmdCO0VBQ0k7QXBGeXcyQnBCO0FvRnJ3MkJZO0VBQ0k7RUFDQTtFQUNBO0FwRnV3MkJoQjtBb0ZsdzJCSTtFQUNJO0VBQ0E7RUFDQTtBcEZvdzJCUjtBb0ZqdzJCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGbXcyQlI7QW9GancyQlE7RUFDSTtFQUNBO0FwRm13MkJaO0FvRmh3MkJRO0VBQ0k7RUFDQTtFQUNBO0FwRmt3MkJaO0FvRmh3MkJZO0VBQ0k7QXBGa3cyQmhCO0FvRjd2MkJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEYrdjJCUjtBb0Y3djJCUTtFQUNJO0FwRit2MkJaO0FvRjV2MkJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXBGOHYyQlo7QW9GNzUyQkE7RUFtS0k7QXBGNnYyQko7QW9GNXYyQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGOHYyQlI7QW9GNXYyQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBGOHYyQlo7QW9GNXYyQlk7RUFDSTtBcEY4djJCaEI7QW9GMXYyQlE7RUFDSTtFQUNBO0VBQ0E7QXBGNHYyQlo7QW9GMXYyQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRjR2MkJoQjtBb0YxdjJCZ0I7RUFDSTtFQUNBO0FwRjR2MkJwQjtBb0Z6djJCZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRjJ2MkJwQjtBb0Z6djJCb0I7RUFDSTtBcEYydjJCeEI7QW9GeHYyQm9CO0VBQ0k7RUFDQTtBcEYwdjJCeEI7QW9GcHYyQlE7RUFDSTtBcEZzdjJCWjtBb0ZwdjJCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEZzdjJCaEI7O0FvRmh2MkJBO0VBQ0k7RUFDQTtBcEZtdjJCSjs7QW9GN3UyQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBcEZndjJCUjtBb0Y5dTJCUTtFQU5KO0lBT1E7RXBGaXYyQlY7QUFDRjtBb0YvdTJCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRml2MkJaO0FvRi91MkJZO0VBQ0k7QXBGaXYyQmhCO0FvRjV1MkJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXBGOHUyQlI7QW9GM3UyQkk7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtBcEY0dTJCUjtBb0YxdTJCUTs7RUFDSTtFQUNBO0VBQ0E7QXBGNnUyQlo7QW9GMXUyQlE7O0VBQ0k7RUFDQTtBcEY2dTJCWjtBb0Z6dTJCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FwRjJ1MkJSO0FvRjF5MkJBO0VBa0VJO0FwRjJ1MkJKO0FvRjF1MkJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEY0dTJCUjtBb0Z6dTJCSTtFQUNJO0VBQ0E7RUFDQTtBcEYydTJCUjtBb0Z6dTJCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FwRjJ1MkJaO0FvRnp1MkJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0FwRjJ1MkJoQjtBb0Z4dTJCWTtFQUNJO0FwRjB1MkJoQjtBb0Z4dTJCZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwRjB1MkJwQjtBb0Z0dTJCWTtFQUNJO0VBQ0E7RUFDQTtBcEZ3dTJCaEI7O0FvRmx1MkJBO0VBQ0k7QXBGcXUyQko7QW9GbnUyQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEZxdTJCUjtBb0ZudTJCUTtFQUNJO0VBQ0E7QXBGcXUyQlo7QW9GbHUyQlE7RUFDSTtBcEZvdTJCWjtBb0ZodTJCSTtFQUNJO0VBQ0E7RUFDQTtBcEZrdTJCUjtBb0YvdDJCSTtFQUNJO0VBQ0E7RUFDQTtBcEZpdTJCUjtBb0Y5dDJCSTtFQUNJO0VBQ0E7RUFDQTtBcEZndTJCUjs7QW9GMXQyQkk7RUFFSTtBcEY0dDJCUjs7QW9GeHQyQkE7RUFDSTtJQUNJO0VwRjJ0MkJOO0VvRnp0MkJNO0lBQ0k7SUFDQTtFcEYydDJCVjtBQUNGO0FvRnZ0MkJBO0VBRVE7SUFDSTtFcEZ3dDJCVjtFb0Z0dDJCVTtJQUNJO0VwRnd0MkJkO0VvRnJ0MkJVOzs7OztJQUdJO0lBQ0E7RXBGeXQyQmQ7RW9GdHQyQlU7SUFDSTtFcEZ3dDJCZDtFb0ZydDJCVTtJQUNJO0lBQ0E7RXBGdXQyQmQ7RW9GcnQyQmM7SUFDSTtJQUNBO0lBQ0E7RXBGdXQyQmxCO0VvRnJ0MkJrQjtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXBGdXQyQnRCO0VvRmh0MkJVO0lBQ0k7SUFDQTtFcEZrdDJCZDtFb0YvczJCVTtJQUNJO0VwRml0MkJkO0FBQ0Y7QXFGdnEzQkE7QUFDQTtFQUNJO0VBQ0E7QXJGeXEzQko7QXFGdnEzQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRnlxM0JSO0FxRnZxM0JRO0VBUEo7SUFRUTtFckYwcTNCVjtBQUNGO0FxRnhxM0JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGMHEzQlo7QXFGeHEzQlk7RUFDSTtBckYwcTNCaEI7QXFGbnMzQkE7RUE4Qkk7QXJGd3EzQko7QXFGdnEzQkk7RUFDSTtFQUNBO0FyRnlxM0JSO0FxRnZxM0JRO0VBQ0k7QXJGeXEzQlo7QXFGdnEzQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckZ5cTNCaEI7QXFGcHEzQlk7RUFDSTtFQUNBO0FyRnNxM0JoQjtBcUZwcTNCZ0I7RUFDSTtBckZzcTNCcEI7QXFGbnEzQmdCO0VBQ0k7QXJGcXEzQnBCO0FxRmpxM0JZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckZtcTNCaEI7QXFGanEzQmdCO0VBQ0k7RUFDQTtBckZtcTNCcEI7QXFGaHEzQmdCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckZrcTNCcEI7QXFGaHEzQm9CO0VBQ0k7RUFDQTtBckZrcTNCeEI7QXFGL3AzQm9CO0VBQ0k7RUFDQTtBckZpcTNCeEI7QXFGOXAzQm9CO0VBQ0k7RUFDQTtBckZncTNCeEI7O0FxRnhwM0JBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBckYycDNCSjtBcUZ6cDNCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckYycDNCUjtBcUZ4cDNCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGMHAzQlI7O0FxRnRwM0JBO0FBRUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBckZ3cDNCUjtBcUZ0cDNCUTtFQUNJO0VBQ0E7QXJGd3AzQlo7QXFGcHAzQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyRnNwM0JSO0FxRnBwM0JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXJGc3AzQlo7QXFGbnAzQlE7RUFDSTtFQUNBO0FyRnFwM0JaO0FxRnZwM0JRO0VBQ0k7RUFDQTtBckZxcDNCWjtBcUZscDNCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJGb3AzQlo7O0FzRm4wM0JBO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esb0tBQ0k7RUFLSjtFQUNBLG1DQUNJO0VBRUo7RUFDQTtFQUNBO0VBQ0E7QXRGK3ozQko7QXNGN3ozQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUtBO0VBQ0E7QXRGMnozQlI7QXNGeHozQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUtBO0VBQ0E7QXRGc3ozQlI7QXNGbnozQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEZxejNCUjtBc0ZuejNCUTtFQUNJO0VBQ0E7QXRGcXozQlo7QXNGbnozQlk7RUFDSTtFQUNBO0F0RnF6M0JoQjtBc0ZsejNCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0Rm96M0JoQjtBc0ZqejNCWTtFQUNJO0VBQ0E7QXRGbXozQmhCO0FzRi95M0JRO0VBQ0k7QXRGaXozQlo7QXNGL3kzQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdEZpejNCaEI7QXNGOXkzQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0Rmd6M0JoQjtBc0Y5eTNCZ0I7RUFDSTtFQUNBO0VBQ0E7QXRGZ3ozQnBCO0FzRjV5M0JZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEY4eTNCaEI7QXNGM3kzQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRGNnkzQmhCO0FzRjN5M0JnQjtFQUVJO0VBQ0E7RUFDQTtBdEY0eTNCcEI7QXNGenkzQmdCO0VBQ0k7QXRGMnkzQnBCO0FzRnZ5M0JZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0Rnl5M0JoQjtBc0Z2eTNCZ0I7RUFDSTtFQUNBO0F0Rnl5M0JwQjtBc0Z0eTNCZ0I7RUFDSTtBdEZ3eTNCcEI7QXNGcHkzQlk7RUFDSTtFQUNBO0VBQ0E7QXRGc3kzQmhCO0FzRnB5M0JnQjtFQUNJO0VBQ0E7RUFDQTtBdEZzeTNCcEI7QXNGcHkzQm9CO0VBQ0k7QXRGc3kzQnhCOztBc0Y5eDNCQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRGaXkzQko7QXNGL3gzQkk7RUFDSTtBdEZpeTNCUjs7QXNGN3gzQkE7RUFDSTtJQUNJO0V0Rmd5M0JOO0VzRjd4M0JVO0lBQ0k7RXRGK3gzQmQ7RXNGNXgzQlU7SUFDSTtFdEY4eDNCZDtBQUNGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdGlueS1zbGlkZXIvZGlzdC9zb3VyY2VtYXBzL3Rpbnktc2xpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Rpbnktc2xpZGVyL2Rpc3QvdGlueS1zbGlkZXIuY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9vd2wuY2Fyb3VzZWwvZGlzdC9hc3NldHMvb3dsLmNhcm91c2VsLmNzcyIsIndlYnBhY2s6Ly8vLi9wdWJsaWMvYmFja2VuZC9wbHVnaW5zL3RvYXN0ci90b2FzdHIubWluLmNzcyIsIndlYnBhY2s6Ly8vLi9wdWJsaWMvZnJvbnQvc2Nzcy9tYWluLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFubmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yb290LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY29sb3ItbW9kZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcmVib290LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190eXBlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2ltYWdlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2ltYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jb250YWluZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY29udGFpbmVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190YWJsZS12YXJpYW50cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fbGFiZWxzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tY29udHJvbC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tc2VsZWN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLWNoZWNrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXJhbmdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mbG9hdGluZy1sYWJlbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZHJvcGRvd24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdmJhci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWNjb3JkaW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYmFkZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FsZXJ0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RvYXN0cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWNrZHJvcC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BvcG92ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nhcm91c2VsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3NwaW5uZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19vZmZjYW52YXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BsYWNlaG9sZGVycy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19jb2xvci1iZy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19jb2xvcmVkLWxpbmtzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX2ZvY3VzLXJpbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9faWNvbi1saW5rLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3JhdGlvLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3Bvc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3N0YWNrcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fc3RyZXRjaGVkLWxpbmsuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdGV4dC10cnVuY2F0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL192ci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3V0aWxpdGllcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FwaS5zY3NzIiwid2VicGFjazovLy8uL3B1YmxpYy9mcm9udC9zY3NzL2dsb2JhbC9fZm9udHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9wdWJsaWMvZnJvbnQvc2Nzcy9nbG9iYWwvX3RoZW1lcy5zY3NzIiwid2VicGFjazovLy8uL3B1YmxpYy9mcm9udC9zY3NzL2dsb2JhbC9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcHVibGljL2Zyb250L3Njc3MvZ2xvYmFsL19nZW5lcmFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcHVibGljL2Zyb250L3Njc3MvYm9vdHN0cmFwL19jdXN0b20uc2NzcyIsIndlYnBhY2s6Ly8vLi9wdWJsaWMvZnJvbnQvc2Nzcy9nbG9iYWwvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL3B1YmxpYy9mcm9udC9zY3NzL2dlbmVyaWMvX2hlbHBlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9wdWJsaWMvZnJvbnQvc2Nzcy9nZW5lcmljL19hbmltYXRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcHVibGljL2Zyb250L3Njc3MvcGFnZXMvX3BvcnRmb2xpby5zY3NzIiwid2VicGFjazovLy8uL3B1YmxpYy9mcm9udC9zY3NzL3BhZ2VzL190ZW1wbGF0ZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9wdWJsaWMvZnJvbnQvc2Nzcy9wYWdlcy9fc2hvcC5zY3NzIiwid2VicGFjazovLy8uL3B1YmxpYy9mcm9udC9zY3NzL3BhZ2VzL19jdXN0b21lci5zY3NzIiwid2VicGFjazovLy8uL3B1YmxpYy9mcm9udC9zY3NzL3BhZ2VzL19hdXRoLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVmVyc2lvbjogMi45LjNcblxuLnRucy1vdXRlciB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgLy8gcmVtb3ZlIHBhZGRpbmc6IGNsaWVudFdpZHRoID0gd2lkdGggKyBwYWRkaW5nICgwKSA9IHdpZHRoXG4gIFtoaWRkZW5dIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIFthcmlhLWNvbnRyb2xzXSwgW2RhdGEtYWN0aW9uXSB7IGN1cnNvcjogcG9pbnRlcjsgfVxufVxuLnRucy1zbGlkZXIge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMHM7XG4gIHRyYW5zaXRpb246IGFsbCAwcztcbiAgPiAudG5zLWl0ZW0ge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxufVxuXG4udG5zLWhvcml6b250YWwge1xuICAmLnRucy1zdWJwaXhlbCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICA+IC50bnMtaXRlbSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICB9XG4gIH1cbiAgJi50bnMtbm8tc3VicGl4ZWwge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICA+IC50bnMtaXRlbSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cbiAgJi50bnMtY2Fyb3VzZWwge1xuICAgICYudG5zLW5vLXN1YnBpeGVsIHtcbiAgICAgID4gLnRucy1pdGVtIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi50bnMtbm8tY2FsYyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbn1cbi50bnMtZ2FsbGVyeSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgbWluLWhlaWdodDogMXB4OyAvLyBtYWtlIHN1cmUgc2xpZGVyIGNvbnRhaW5lciBpcyB2aXNpYmxlXG4gIC8vIG92ZXJmbG93OiBoaWRkZW47XG4gID4gLnRucy1pdGVtIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTEwMCU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMsIG9wYWNpdHkgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMsIG9wYWNpdHkgMHM7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzLCBvcGFjaXR5IDBzO1xuICB9XG4gID4gLnRucy1zbGlkZS1hY3RpdmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgPiAudG5zLW1vdmluZyB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4yNXM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4yNXM7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzO1xuICB9XG59XG4udG5zLWF1dG93aWR0aCB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuLnRucy1sYXp5LWltZyB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC42cztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzO1xuICBvcGFjaXR5OiAwLjY7XG4gICYudG5zLWNvbXBsZXRlIHsgb3BhY2l0eTogMTsgfVxufVxuLnRucy1haCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogaGVpZ2h0IDBzO1xuICAtbW96LXRyYW5zaXRpb246IGhlaWdodCAwcztcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDBzO1xufVxuLnRucy1vdmggeyBvdmVyZmxvdzogaGlkZGVuOyB9XG4udG5zLXZpc3VhbGx5LWhpZGRlbiB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogLTEwMDAwZW07IH1cbi50bnMtdHJhbnNwYXJlbnQgeyBvcGFjaXR5OiAwOyB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnRucy1mYWRlSW4ge1xuICBvcGFjaXR5OiAxO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTtcbiAgei1pbmRleDogMDtcbn1cbi50bnMtbm9ybWFsLCAudG5zLWZhZGVPdXQge1xuICBvcGFjaXR5OiAwO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG4gIHotaW5kZXg6IC0xO1xufVxuXG5cbi8vICoqKiBGaXggYSB2aWV3cG9ydCBpc3N1ZSBpbiBpbml0aWFsaXphdGlvblxuLnRucy12cGZpeCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gID4gZGl2LCA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8gKioqIERldGVjdGluZyBicm93c2VyIGNhcGFiaWxpdHkgKioqXG4kd2lkdGg6IDMxMHB4O1xuJGhlaWdodDogMTBweDtcbiRjb3VudDogNzA7XG4kcGVycGFnZTogMztcblxuLnRucy10IHtcbiAgJi1zdWJwMiB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgJi1jdCB7XG4gICAgd2lkdGg6ICgxMDAlICogJGNvdW50IC8gJHBlcnBhZ2UpO1xuICAgIHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwJSAqICN7JGNvdW50fSAvICN7JHBlcnBhZ2V9KTtcbiAgICB3aWR0aDogLW1vei1jYWxjKDEwMCUgKiAjeyRjb3VudH0gLyAjeyRwZXJwYWdlfSk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAqICN7JGNvdW50fSAvICN7JHBlcnBhZ2V9KTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICAgID4gZGl2IHtcbiAgICAgIHdpZHRoOiAoMTAwJSAvICRjb3VudCk7XG4gICAgICB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgLyAjeyRjb3VudH0pO1xuICAgICAgd2lkdGg6IC1tb3otY2FsYygxMDAlIC8gI3skY291bnR9KTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAjeyRjb3VudH0pO1xuICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICB9XG59XG4iLCIudG5zLW91dGVye3BhZGRpbmc6MCAhaW1wb3J0YW50fS50bnMtb3V0ZXIgW2hpZGRlbl17ZGlzcGxheTpub25lICFpbXBvcnRhbnR9LnRucy1vdXRlciBbYXJpYS1jb250cm9sc10sLnRucy1vdXRlciBbZGF0YS1hY3Rpb25de2N1cnNvcjpwb2ludGVyfS50bnMtc2xpZGVyey13ZWJraXQtdHJhbnNpdGlvbjphbGwgMHM7LW1vei10cmFuc2l0aW9uOmFsbCAwczt0cmFuc2l0aW9uOmFsbCAwc30udG5zLXNsaWRlcj4udG5zLWl0ZW17LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS50bnMtaG9yaXpvbnRhbC50bnMtc3VicGl4ZWx7d2hpdGUtc3BhY2U6bm93cmFwfS50bnMtaG9yaXpvbnRhbC50bnMtc3VicGl4ZWw+LnRucy1pdGVte2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOnRvcDt3aGl0ZS1zcGFjZTpub3JtYWx9LnRucy1ob3Jpem9udGFsLnRucy1uby1zdWJwaXhlbDphZnRlcntjb250ZW50OicnO2Rpc3BsYXk6dGFibGU7Y2xlYXI6Ym90aH0udG5zLWhvcml6b250YWwudG5zLW5vLXN1YnBpeGVsPi50bnMtaXRlbXtmbG9hdDpsZWZ0fS50bnMtaG9yaXpvbnRhbC50bnMtY2Fyb3VzZWwudG5zLW5vLXN1YnBpeGVsPi50bnMtaXRlbXttYXJnaW4tcmlnaHQ6LTEwMCV9LnRucy1uby1jYWxje3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MH0udG5zLWdhbGxlcnl7cG9zaXRpb246cmVsYXRpdmU7bGVmdDowO21pbi1oZWlnaHQ6MXB4fS50bnMtZ2FsbGVyeT4udG5zLWl0ZW17cG9zaXRpb246YWJzb2x1dGU7bGVmdDotMTAwJTstd2Via2l0LXRyYW5zaXRpb246dHJhbnNmb3JtIDBzLCBvcGFjaXR5IDBzOy1tb3otdHJhbnNpdGlvbjp0cmFuc2Zvcm0gMHMsIG9wYWNpdHkgMHM7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMHMsIG9wYWNpdHkgMHN9LnRucy1nYWxsZXJ5Pi50bnMtc2xpZGUtYWN0aXZle3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6YXV0byAhaW1wb3J0YW50fS50bnMtZ2FsbGVyeT4udG5zLW1vdmluZ3std2Via2l0LXRyYW5zaXRpb246YWxsIDAuMjVzOy1tb3otdHJhbnNpdGlvbjphbGwgMC4yNXM7dHJhbnNpdGlvbjphbGwgMC4yNXN9LnRucy1hdXRvd2lkdGh7ZGlzcGxheTppbmxpbmUtYmxvY2t9LnRucy1sYXp5LWltZ3std2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAwLjZzOy1tb3otdHJhbnNpdGlvbjpvcGFjaXR5IDAuNnM7dHJhbnNpdGlvbjpvcGFjaXR5IDAuNnM7b3BhY2l0eTowLjZ9LnRucy1sYXp5LWltZy50bnMtY29tcGxldGV7b3BhY2l0eToxfS50bnMtYWh7LXdlYmtpdC10cmFuc2l0aW9uOmhlaWdodCAwczstbW96LXRyYW5zaXRpb246aGVpZ2h0IDBzO3RyYW5zaXRpb246aGVpZ2h0IDBzfS50bnMtb3Zoe292ZXJmbG93OmhpZGRlbn0udG5zLXZpc3VhbGx5LWhpZGRlbntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xMDAwMGVtfS50bnMtdHJhbnNwYXJlbnR7b3BhY2l0eTowO3Zpc2liaWxpdHk6aGlkZGVufS50bnMtZmFkZUlue29wYWNpdHk6MTtmaWx0ZXI6YWxwaGEob3BhY2l0eT0xMDApO3otaW5kZXg6MH0udG5zLW5vcm1hbCwudG5zLWZhZGVPdXR7b3BhY2l0eTowO2ZpbHRlcjphbHBoYShvcGFjaXR5PTApO3otaW5kZXg6LTF9LnRucy12cGZpeHt3aGl0ZS1zcGFjZTpub3dyYXB9LnRucy12cGZpeD5kaXYsLnRucy12cGZpeD5saXtkaXNwbGF5OmlubGluZS1ibG9ja30udG5zLXQtc3VicDJ7bWFyZ2luOjAgYXV0bzt3aWR0aDozMTBweDtwb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6MTBweDtvdmVyZmxvdzpoaWRkZW59LnRucy10LWN0e3dpZHRoOjIzMzMuMzMzMzMzMyU7d2lkdGg6LXdlYmtpdC1jYWxjKDEwMCUgKiA3MCAvIDMpO3dpZHRoOi1tb3otY2FsYygxMDAlICogNzAgLyAzKTt3aWR0aDpjYWxjKDEwMCUgKiA3MCAvIDMpO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjB9LnRucy10LWN0OmFmdGVye2NvbnRlbnQ6Jyc7ZGlzcGxheTp0YWJsZTtjbGVhcjpib3RofS50bnMtdC1jdD5kaXZ7d2lkdGg6MS40Mjg1NzE0JTt3aWR0aDotd2Via2l0LWNhbGMoMTAwJSAvIDcwKTt3aWR0aDotbW96LWNhbGMoMTAwJSAvIDcwKTt3aWR0aDpjYWxjKDEwMCUgLyA3MCk7aGVpZ2h0OjEwcHg7ZmxvYXQ6bGVmdH1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9c291cmNlbWFwcy90aW55LXNsaWRlci5jc3MubWFwICovXG4iLCIvKipcbiAqIE93bCBDYXJvdXNlbCB2Mi4zLjRcbiAqIENvcHlyaWdodCAyMDEzLTIwMTggRGF2aWQgRGV1dHNjaFxuICogTGljZW5zZWQgdW5kZXI6IFNFRSBMSUNFTlNFIElOIGh0dHBzOi8vZ2l0aHViLmNvbS9Pd2xDYXJvdXNlbDIvT3dsQ2Fyb3VzZWwyL2Jsb2IvbWFzdGVyL0xJQ0VOU0VcbiAqL1xuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBDb3JlXG4gKi9cbi5vd2wtY2Fyb3VzZWwge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogcG9zaXRpb24gcmVsYXRpdmUgYW5kIHotaW5kZXggZml4IHdlYmtpdCByZW5kZXJpbmcgZm9udHMgaXNzdWUgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi1ZO1xuICAgIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC8qIGZpeCBmaXJlZm94IGFuaW1hdGlvbiBnbGl0Y2ggKi8gfVxuICAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2U6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiLlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBoZWlnaHQ6IDA7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvKiBmaXggZm9yIGZsYXNoaW5nIGJhY2tncm91bmQgKi9cbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXIsXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2LmRpc2FibGVkLFxuICAub3dsLWNhcm91c2VsIC5vd2wtZG90cy5kaXNhYmxlZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtcHJldixcbiAgLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLW5leHQsXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1kb3Qge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IGJ1dHRvbi5vd2wtcHJldixcbiAgLm93bC1jYXJvdXNlbCAub3dsLW5hdiBidXR0b24ub3dsLW5leHQsXG4gIC5vd2wtY2Fyb3VzZWwgYnV0dG9uLm93bC1kb3Qge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBmb250OiBpbmhlcml0OyB9XG4gIC5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtbG9hZGluZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAub3dsLWNhcm91c2VsLm93bC1oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtcmVmcmVzaCAub3dsLWl0ZW0ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub3dsLWNhcm91c2VsLm93bC1kcmFnIC5vd2wtaXRlbSB7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAub3dsLWNhcm91c2VsLm93bC1ncmFiIHtcbiAgICBjdXJzb3I6IG1vdmU7XG4gICAgY3Vyc29yOiBncmFiOyB9XG4gIC5vd2wtY2Fyb3VzZWwub3dsLXJ0bCB7XG4gICAgZGlyZWN0aW9uOiBydGw7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtcnRsIC5vd2wtaXRlbSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi8qIE5vIEpzICovXG4ubm8tanMgLm93bC1jYXJvdXNlbCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQW5pbWF0ZSBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbCAuYW5pbWF0ZWQge1xuICBhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtYW5pbWF0ZWQtaW4ge1xuICB6LWluZGV4OiAwOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1vdXQge1xuICB6LWluZGV4OiAxOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLmZhZGVPdXQge1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dDsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLypcbiAqIFx0T3dsIENhcm91c2VsIC0gQXV0byBIZWlnaHQgUGx1Z2luXG4gKi9cbi5vd2wtaGVpZ2h0IHtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0OyB9XG5cbi8qXG4gKiBcdE93bCBDYXJvdXNlbCAtIExhenkgTG9hZCBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICAvKipcblx0XHRcdFRoaXMgaXMgaW50cm9kdWNlZCBkdWUgdG8gYSBidWcgaW4gSUUxMSB3aGVyZSBsYXp5IGxvYWRpbmcgY29tYmluZWQgd2l0aCBhdXRvaGVpZ2h0IHBsdWdpbiBjYXVzZXMgYSB3cm9uZ1xuXHRcdFx0Y2FsY3VsYXRpb24gb2YgdGhlIGhlaWdodCBvZiB0aGUgb3dsLWl0ZW0gdGhhdCBicmVha3MgcGFnZSBsYXlvdXRzXG5cdFx0ICovIH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gLm93bC1sYXp5IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenlbc3JjXj1cIlwiXSwgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gLm93bC1sYXp5Om5vdChbc3JjXSkge1xuICAgIG1heC1oZWlnaHQ6IDA7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nLm93bC1sYXp5IHtcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyB9XG5cbi8qXG4gKiBcdE93bCBDYXJvdXNlbCAtIFZpZGVvIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogODBweDtcbiAgd2lkdGg6IDgwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNDBweDtcbiAgbWFyZ2luLXRvcDogLTQwcHg7XG4gIGJhY2tncm91bmQ6IHVybChcIm93bC52aWRlby5wbGF5LnBuZ1wiKSBuby1yZXBlYXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogMTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMDBtcyBlYXNlOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb246aG92ZXIge1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjMsIDEuMyk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXRuLFxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby1wbGF5LWljb24ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby10biB7XG4gIG9wYWNpdHk6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLWZyYW1lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlOyB9XG4iLCIudG9hc3QtdGl0bGV7Zm9udC13ZWlnaHQ6NzAwfS50b2FzdC1tZXNzYWdley1tcy13b3JkLXdyYXA6YnJlYWstd29yZDt3b3JkLXdyYXA6YnJlYWstd29yZH0udG9hc3QtbWVzc2FnZSBhLC50b2FzdC1tZXNzYWdlIGxhYmVse2NvbG9yOiNGRkZ9LnRvYXN0LW1lc3NhZ2UgYTpob3Zlcntjb2xvcjojQ0NDO3RleHQtZGVjb3JhdGlvbjpub25lfS50b2FzdC1jbG9zZS1idXR0b257cG9zaXRpb246cmVsYXRpdmU7cmlnaHQ6LS4zZW07dG9wOi0uM2VtO2Zsb2F0OnJpZ2h0O2ZvbnQtc2l6ZToyMHB4O2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojRkZGOy13ZWJraXQtdGV4dC1zaGFkb3c6MCAxcHggMCAjZmZmO3RleHQtc2hhZG93OjAgMXB4IDAgI2ZmZjtvcGFjaXR5Oi44Oy1tcy1maWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9ODApO2ZpbHRlcjphbHBoYShvcGFjaXR5PTgwKTtsaW5lLWhlaWdodDoxfS50b2FzdC1jbG9zZS1idXR0b246Zm9jdXMsLnRvYXN0LWNsb3NlLWJ1dHRvbjpob3Zlcntjb2xvcjojMDAwO3RleHQtZGVjb3JhdGlvbjpub25lO2N1cnNvcjpwb2ludGVyO29wYWNpdHk6LjQ7LW1zLWZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT00MCk7ZmlsdGVyOmFscGhhKG9wYWNpdHk9NDApfS5ydGwgLnRvYXN0LWNsb3NlLWJ1dHRvbntsZWZ0Oi0uM2VtO2Zsb2F0OmxlZnQ7cmlnaHQ6LjNlbX1idXR0b24udG9hc3QtY2xvc2UtYnV0dG9ue3BhZGRpbmc6MDtjdXJzb3I6cG9pbnRlcjtiYWNrZ3JvdW5kOjAgMDtib3JkZXI6MDstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX0udG9hc3QtdG9wLWNlbnRlcnt0b3A6MDtyaWdodDowO3dpZHRoOjEwMCV9LnRvYXN0LWJvdHRvbS1jZW50ZXJ7Ym90dG9tOjA7cmlnaHQ6MDt3aWR0aDoxMDAlfS50b2FzdC10b3AtZnVsbC13aWR0aHt0b3A6MDtyaWdodDowO3dpZHRoOjEwMCV9LnRvYXN0LWJvdHRvbS1mdWxsLXdpZHRoe2JvdHRvbTowO3JpZ2h0OjA7d2lkdGg6MTAwJX0udG9hc3QtdG9wLWxlZnR7dG9wOjEycHg7bGVmdDoxMnB4fS50b2FzdC10b3AtcmlnaHR7dG9wOjEycHg7cmlnaHQ6MTJweH0udG9hc3QtYm90dG9tLXJpZ2h0e3JpZ2h0OjEycHg7Ym90dG9tOjEycHh9LnRvYXN0LWJvdHRvbS1sZWZ0e2JvdHRvbToxMnB4O2xlZnQ6MTJweH0jdG9hc3QtY29udGFpbmVye3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6OTk5OTk5O3BvaW50ZXItZXZlbnRzOm5vbmV9I3RvYXN0LWNvbnRhaW5lciAqey1tb3otYm94LXNpemluZzpib3JkZXItYm94Oy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0jdG9hc3QtY29udGFpbmVyPmRpdntwb3NpdGlvbjpyZWxhdGl2ZTtwb2ludGVyLWV2ZW50czphdXRvO292ZXJmbG93OmhpZGRlbjttYXJnaW46MCAwIDZweDtwYWRkaW5nOjE1cHggMTVweCAxNXB4IDUwcHg7d2lkdGg6MzAwcHg7LW1vei1ib3JkZXItcmFkaXVzOjNweDstd2Via2l0LWJvcmRlci1yYWRpdXM6M3B4O2JvcmRlci1yYWRpdXM6M3B4O2JhY2tncm91bmQtcG9zaXRpb246MTVweCBjZW50ZXI7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0Oy1tb3otYm94LXNoYWRvdzowIDAgMTJweCAjOTk5Oy13ZWJraXQtYm94LXNoYWRvdzowIDAgMTJweCAjOTk5O2JveC1zaGFkb3c6MCAwIDEycHggIzk5OTtjb2xvcjojRkZGO29wYWNpdHk6Ljg7LW1zLWZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT04MCk7ZmlsdGVyOmFscGhhKG9wYWNpdHk9ODApfSN0b2FzdC1jb250YWluZXI+ZGl2LnJ0bHtkaXJlY3Rpb246cnRsO3BhZGRpbmc6MTVweCA1MHB4IDE1cHggMTVweDtiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IDE1cHggY2VudGVyfSN0b2FzdC1jb250YWluZXI+ZGl2OmhvdmVyey1tb3otYm94LXNoYWRvdzowIDAgMTJweCAjMDAwOy13ZWJraXQtYm94LXNoYWRvdzowIDAgMTJweCAjMDAwO2JveC1zaGFkb3c6MCAwIDEycHggIzAwMDtvcGFjaXR5OjE7LW1zLWZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0xMDApO2ZpbHRlcjphbHBoYShvcGFjaXR5PTEwMCk7Y3Vyc29yOnBvaW50ZXJ9I3RvYXN0LWNvbnRhaW5lcj4udG9hc3QtaW5mb3tiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJnQUFBQVlDQVlBQUFEZ2R6MzRBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNNQUFBN0RBY2R2cUdRQUFBR3dTVVJCVkVoTHRaYTlTZ05CRU1jOXNVeHhSY29VS1N6U1dJaFhwRk1oaFlXRmhhQmc0eVBZaVdDWFp4QkxFUnNMUlMzRVFrRWZ3Q0tkaldKQXdTS0Nnb0tDY3VkdjRPNVlMcnQ3RXpnWGhpVTMvNCtiMmNrbXdWakpTcEtrUTZ3QWk0Z3doVCt6M3dSQmNFejB5alNzZVVUcmNSeWZzSHNYbUQwQW1iSE9DOUlpOFZJbW51WEJQZ2xIcFE1d3dTVk03c05uVEc3WmE0SndEZENqeHlBaUgzbnlBMm10YVRKdWZpRFo1ZENhcWxJdElMaDFOSGF0Zk41c2t2ang5WjM4bTY5Q2d6dVhtWmdWclBJR0U3NjNKeDlxS3NSb3pXWXc2eE9IZEVSK25uMktrTytCYitVVjVDQk42V0M2UXRCZ2JSVm96cmFoQWJtbTZIdFVzZ3RQQzE5dEZkeFhaWUJPZmtibUZKMVZhSEExVkFIamQwcHA3MG9UWnp2UitFVnJ4MllnZmRzcTZldTU1QkhZUjhobGNraStuK2tFUlVGRzhCckEwQndqZUF2Mk04V0xRQnRjeStTRDZmTnNtbkIzQWxCTHJnVHRWVzFjMlFONGJWV0xBVGFJUzYwSjJEdTV5MVRpSmdqU0J2RlZaZ1Rtd0NVK2RBWkZvUHhHRUVzOG55SEM5QndlMkd2RUp2MldYWmIwdmpkeUZUNEN4azNlL2tJcWxPR29WTHd3UGV2cFlIVCswMFQraFd3WERmNEFKQU9VcVdjRGhid0FBQUFBU1VWT1JLNUNZSUk9KSFpbXBvcnRhbnR9I3RvYXN0LWNvbnRhaW5lcj4udG9hc3QtZXJyb3J7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCZ0FBQUFZQ0FZQUFBRGdkejM0QUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzTUFBQTdEQWNkdnFHUUFBQUhPU1VSQlZFaExyWmEvU2dOQkVNWnpoMFdLQ0NsU0NLYUlZT0VEK0FBS2VRUUxHOEhXenRMQ0ltQnJZYWRnSWRZK2dJS05Za0JGU3d1N0NBb3FDZ2trb0dCSS9FMjhQZGJMWm1lRExnelp6Y3g4My96WjJTU1hDMWo5ZnIrSTFIcTkzZzJ5eEg0aXdNMXZrb0JXQWR4Q21welR4ZmtOMlJjeVpOYUhGSWtTbzEwKzhrZ3hrWElVUlY1SEd4VG1GdWM3NUIyUmZRa3B4SEc4YUFnYUFGYTB0QUhxWUZmUTdJd2UyeWhPRGs4K0o0Qzd5QW9SVFdJM3cvNGtsR1JnUjRsTzdScG45K2d2TXlXcCt1eEZoOCtIK0FSbGdOMW5KdUp1UUFZdk5rRW53R0ZjazE4RXI0cTNlZ0VjL29PK21oTGRLZ1J5aGRORmlhY0MwcmxPQ2JoTlZ6NEg5Rm5BWWdEQnZVM1FJaW9abEpGTEp0c29IWVJEZmlab1V5SXhxQ3RScFZsQU5xMEVVNGRBcGpydGdlelBGYWQ1UzE5V2dqa2MwaE5WbnVGNEhqVkE2QzdRclNJYnlsQitvWmUzYUhnQnNxbE5xS1lINDhqWHlKS011QWJpeVZKOEt6YUIzZVJjMHBnOVZ3UTRuaUZyeUk2OHFpT2kzQWJqd2RzZm5BdGswYkNqVExKS3I2bXJEOWc4aXEvUy9CODFoZ3VPTWxRVG5WeUc0MHdBY2pubWdzQ05FU0Ryam1lN3dmZnRQNFA3U1A0TjNDSlpkdnpvTnlHcTJjL0hXT1hKR3N2VmcrUkEvazJNQy93TjZJMllBMlB0OEdrQUFBQUFTVVZPUks1Q1lJST0pIWltcG9ydGFudH0jdG9hc3QtY29udGFpbmVyPi50b2FzdC1zdWNjZXNze2JhY2tncm91bmQtaW1hZ2U6dXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQmdBQUFBWUNBWUFBQURnZHozNEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc01BQUE3REFjZHZxR1FBQUFEc1NVUkJWRWhMWTJBWUJmUU1nZi8vLzNQOCsvZXZBSWd2QS9Gc0lGK0JhdllERFdNQkdyb2FTTU1CaUU4VkM3QVpEcklGYU1GbmlpM0FaVGpVZ3NVVVdVREE4T2RBSDZpUWJRRWh3NEh5R3NQRWNLQlhCSUM0QVJoZXg0RzRCc2ptd2VVMXNvSUZhR2cvV3RvRlpSSVpkRXZJTWh4a0NDalhJVnNBVFY2Z0ZHQUNzNFJzdzBFR2dJSUgzUUpZSmdIU0FSUVpEcldBQitqYXd6Z3MrUTJVTzQ5RDdqblJTUkdvRUZSSUxjZG1FTVdHSTBjbTBKSjJRcFlBMVJEdmNtekpFV2hBQmhEL3BxckwwUzBDV3VBQktnblJraTlsTHNlUzdnMkFscXdIV1FTS0g0b0tMcklMcFJHaEVRQ3cyTGlSVUlhNGx3QUFBQUJKUlU1RXJrSmdnZz09KSFpbXBvcnRhbnR9I3RvYXN0LWNvbnRhaW5lcj4udG9hc3Qtd2FybmluZ3tiYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJnQUFBQVlDQVlBQUFEZ2R6MzRBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNNQUFBN0RBY2R2cUdRQUFBR1lTVVJCVkVoTDVaU3ZUc05RRk1iWFpHSUNNWUdZbUpoQVFJSkFJQ1lRUEFBQ2lTREI4QWlJQ1FRSlQ0Q3FRRXdnSnZZQVNBUUNpWmlZbUpoQUlCQVRDQVJKeSs5clRzbGRkOHNLdTFNMCtkTGIwNTd2Ni9sYnEvMnJLMG1TL1RSTmo5Y1dOQUtQWUlKSUk3Z0l4Q2NRNTFjdnFJRCtHSUVYOEFTRzRCMWJLNWdJWkZlUWZvSmRFWE9mZ1g0UUFRZzdrSDJBNjV5UTg3bHl4YjI3c2dna0F6QXVGaGJiZzFLMmtnQ2tCMWJWd3lJUjltMkw3UFJQSWhEVUlYZ0d0eUt3NTc1eXozbFROczZYNEpYbmpWK0xLTS9tM015ZG5UYnRPS0lqdHo2VmhDQnE0dlNtM25jZHJEMmxrMFZnVVhTVktqVkRKWEp6aWpXMVJRZHNVN0Y3N0hlOHU2OGtvTlpUejhPejV5R2E2SjNIM2xaMHhZZ1hCSzJReW1sV1dBK1JXblloc2tMQnYydm1FK2hCTUN0YkE3S1g1ZHJXeVJULzJKc3FaMkl2ZkI5WTRiV0ROTUZiSlJGbUM5RTc0U29TMENxdWx3amtDMCs1YnBjVjFDWjhOTWVqNHBqeTBVK2RvRFFzR3lvMWh6Vkp0dElqaFE3R25CdFJGTjFVYXJVbEg4RjN4aWN0K0hZMDdyRXpvVUdQbFdjalJGUnI0L2dDaFpnYzNaTDJkOG9BQUFBQVNVVk9SSzVDWUlJPSkhaW1wb3J0YW50fSN0b2FzdC1jb250YWluZXIudG9hc3QtYm90dG9tLWNlbnRlcj5kaXYsI3RvYXN0LWNvbnRhaW5lci50b2FzdC10b3AtY2VudGVyPmRpdnt3aWR0aDozMDBweDttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvfSN0b2FzdC1jb250YWluZXIudG9hc3QtYm90dG9tLWZ1bGwtd2lkdGg+ZGl2LCN0b2FzdC1jb250YWluZXIudG9hc3QtdG9wLWZ1bGwtd2lkdGg+ZGl2e3dpZHRoOjk2JTttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvfS50b2FzdHtiYWNrZ3JvdW5kLWNvbG9yOiMwMzAzMDN9LnRvYXN0LXN1Y2Nlc3N7YmFja2dyb3VuZC1jb2xvcjojNTFBMzUxfS50b2FzdC1lcnJvcntiYWNrZ3JvdW5kLWNvbG9yOiNCRDM2MkZ9LnRvYXN0LWluZm97YmFja2dyb3VuZC1jb2xvcjojMkY5NkI0fS50b2FzdC13YXJuaW5ne2JhY2tncm91bmQtY29sb3I6I0Y4OTQwNn0udG9hc3QtcHJvZ3Jlc3N7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO2JvdHRvbTowO2hlaWdodDo0cHg7YmFja2dyb3VuZC1jb2xvcjojMDAwO29wYWNpdHk6LjQ7LW1zLWZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT00MCk7ZmlsdGVyOmFscGhhKG9wYWNpdHk9NDApfUBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6MjQwcHgpeyN0b2FzdC1jb250YWluZXI+ZGl2e3BhZGRpbmc6OHB4IDhweCA4cHggNTBweDt3aWR0aDoxMWVtfSN0b2FzdC1jb250YWluZXI+ZGl2LnJ0bHtwYWRkaW5nOjhweCA1MHB4IDhweCA4cHh9I3RvYXN0LWNvbnRhaW5lciAudG9hc3QtY2xvc2UtYnV0dG9ue3JpZ2h0Oi0uMmVtO3RvcDotLjJlbX0jdG9hc3QtY29udGFpbmVyIC5ydGwgLnRvYXN0LWNsb3NlLWJ1dHRvbntsZWZ0Oi0uMmVtO3JpZ2h0Oi4yZW19fUBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6MjQxcHgpIGFuZCAobWF4LXdpZHRoOjQ4MHB4KXsjdG9hc3QtY29udGFpbmVyPmRpdntwYWRkaW5nOjhweCA4cHggOHB4IDUwcHg7d2lkdGg6MThlbX0jdG9hc3QtY29udGFpbmVyPmRpdi5ydGx7cGFkZGluZzo4cHggNTBweCA4cHggOHB4fSN0b2FzdC1jb250YWluZXIgLnRvYXN0LWNsb3NlLWJ1dHRvbntyaWdodDotLjJlbTt0b3A6LS4yZW19I3RvYXN0LWNvbnRhaW5lciAucnRsIC50b2FzdC1jbG9zZS1idXR0b257bGVmdDotLjJlbTtyaWdodDouMmVtfX1AbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOjQ4MXB4KSBhbmQgKG1heC13aWR0aDo3NjhweCl7I3RvYXN0LWNvbnRhaW5lcj5kaXZ7cGFkZGluZzoxNXB4IDE1cHggMTVweCA1MHB4O3dpZHRoOjI1ZW19I3RvYXN0LWNvbnRhaW5lcj5kaXYucnRse3BhZGRpbmc6MTVweCA1MHB4IDE1cHggMTVweH19IiwiQGltcG9ydCBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9ib290c3RyYXAuc2Nzc1wiO1xyXG5AaW1wb3J0IFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Rpbnktc2xpZGVyL2Rpc3QvdGlueS1zbGlkZXIuY3NzXCI7XHJcbkBpbXBvcnQgXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvb3dsLmNhcm91c2VsL2Rpc3QvYXNzZXRzL293bC5jYXJvdXNlbC5jc3NcIjtcclxuXHJcbi8qIEdsb2JhbCAqL1xyXG5AaW1wb3J0IFwiLi4vc2Nzcy9nbG9iYWwvZm9udHNcIjtcclxuQGltcG9ydCBcIi4uL3Njc3MvZ2xvYmFsL3RoZW1lc1wiO1xyXG5AaW1wb3J0IFwiLi4vc2Nzcy9nbG9iYWwvdmFyaWFibGVzXCI7XHJcbkBpbXBvcnQgXCIuLi9zY3NzL2dsb2JhbC9taXhpbnNcIjtcclxuQGltcG9ydCBcIi4uL3Njc3MvZ2xvYmFsL2dlbmVyYWxcIjtcclxuXHJcbi8qIEN1c3RvbSBCb290c3RyYXAgQ29tcG9uZW50cyAqL1xyXG5AaW1wb3J0IFwiLi4vc2Nzcy9ib290c3RyYXAvY3VzdG9tXCI7XHJcblxyXG4vKiBHZW5lcmljICovXHJcbkBpbXBvcnQgXCIuLi9zY3NzL2dlbmVyaWMvaGVscGVyc1wiO1xyXG5AaW1wb3J0IFwiLi4vc2Nzcy9nZW5lcmljL2FuaW1hdGVcIjtcclxuQGltcG9ydCBcIi4uL3Njc3MvcGFnZXMvcG9ydGZvbGlvXCI7XHJcbkBpbXBvcnQgXCIuLi9zY3NzL3BhZ2VzL3RlbXBsYXRlc1wiO1xyXG5AaW1wb3J0IFwiLi4vc2Nzcy9wYWdlcy9zaG9wXCI7XHJcbkBpbXBvcnQgXCIuLi9zY3NzL3BhZ2VzL2N1c3RvbWVyXCI7XHJcbkBpbXBvcnQgXCIuLi9zY3NzL3BhZ2VzL2F1dGhcIjtcclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYWNrZW5kL3BsdWdpbnMvdG9hc3RyL3RvYXN0ci5taW4uY3NzXCI7IiwiQG1peGluIGJzQmFubmVyKCRmaWxlKSB7XG4gIC8qIVxuICAgKiBCb290c3RyYXAgI3skZmlsZX0gdjUuMy44IChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxuICAgKiBDb3B5cmlnaHQgMjAxMS0yMDI1IFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICAgKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21haW4vTElDRU5TRSlcbiAgICovXG59XG4iLCI6cm9vdCxcbltkYXRhLWJzLXRoZW1lPVwibGlnaHRcIl0ge1xuICAvLyBOb3RlOiBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cblxuICAvLyBDb2xvcnNcbiAgLy9cbiAgLy8gR2VuZXJhdGUgcGFsZXR0ZXMgZm9yIGZ1bGwgY29sb3JzLCBncmF5cywgYW5kIHRoZW1lIGNvbG9ycy5cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRncmF5cyB7XG4gICAgLS0jeyRwcmVmaXh9Z3JheS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1yZ2Ige1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1yZ2I6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtdGV4dCB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LXRleHQtZW1waGFzaXM6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYmctc3VidGxlIHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYmctc3VidGxlOiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLWJvcmRlci1zdWJ0bGUge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1ib3JkZXItc3VidGxlOiAjeyR2YWx1ZX07XG4gIH1cblxuICAtLSN7JHByZWZpeH13aGl0ZS1yZ2I6ICN7dG8tcmdiKCR3aGl0ZSl9O1xuICAtLSN7JHByZWZpeH1ibGFjay1yZ2I6ICN7dG8tcmdiKCRibGFjayl9O1xuXG4gIC8vIEZvbnRzXG5cbiAgLy8gTm90ZTogVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tI3skcHJlZml4fWZvbnQtc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XG4gIC0tI3skcHJlZml4fWZvbnQtbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xuICAtLSN7JHByZWZpeH1ncmFkaWVudDogI3skZ3JhZGllbnR9O1xuXG4gIC8vIFJvb3QgYW5kIGJvZHlcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtYm9keS12YXJpYWJsZXNcbiAgQGlmICRmb250LXNpemUtcm9vdCAhPSBudWxsIHtcbiAgICAtLSN7JHByZWZpeH1yb290LWZvbnQtc2l6ZTogI3skZm9udC1zaXplLXJvb3R9O1xuICB9XG4gIC0tI3skcHJlZml4fWJvZHktZm9udC1mYW1pbHk6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktYmFzZSl9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZS1iYXNlLCAtLSN7JHByZWZpeH1ib2R5LWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJvZHktZm9udC13ZWlnaHQ6ICN7JGZvbnQtd2VpZ2h0LWJhc2V9O1xuICAtLSN7JHByZWZpeH1ib2R5LWxpbmUtaGVpZ2h0OiAjeyRsaW5lLWhlaWdodC1iYXNlfTtcbiAgQGlmICRib2R5LXRleHQtYWxpZ24gIT0gbnVsbCB7XG4gICAgLS0jeyRwcmVmaXh9Ym9keS10ZXh0LWFsaWduOiAjeyRib2R5LXRleHQtYWxpZ259O1xuICB9XG5cbiAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvcjogI3skYm9keS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1ib2R5LWJnOiAjeyRib2R5LWJnfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LWJnKX07XG5cbiAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3I6ICN7JGJvZHktZW1waGFzaXMtY29sb3J9O1xuICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWVtcGhhc2lzLWNvbG9yKX07XG5cbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yOiAjeyRib2R5LXNlY29uZGFyeS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmc6ICN7JGJvZHktc2Vjb25kYXJ5LWJnfTtcbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWJnKX07XG5cbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3I6ICN7JGJvZHktdGVydGlhcnktY29sb3J9O1xuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnOiAjeyRib2R5LXRlcnRpYXJ5LWJnfTtcbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1iZyl9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtYm9keS12YXJpYWJsZXNcblxuICAtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yOiAjeyRoZWFkaW5ncy1jb2xvcn07XG5cbiAgLS0jeyRwcmVmaXh9bGluay1jb2xvcjogI3skbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1jb2xvcil9O1xuICAtLSN7JHByZWZpeH1saW5rLWRlY29yYXRpb246ICN7JGxpbmstZGVjb3JhdGlvbn07XG5cbiAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcjogI3skbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1ob3Zlci1jb2xvcil9O1xuXG4gIEBpZiAkbGluay1ob3Zlci1kZWNvcmF0aW9uICE9IG51bGwge1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItZGVjb3JhdGlvbjogI3skbGluay1ob3Zlci1kZWNvcmF0aW9ufTtcbiAgfVxuXG4gIC0tI3skcHJlZml4fWNvZGUtY29sb3I6ICN7JGNvZGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1oaWdobGlnaHQtY29sb3I6ICN7JG1hcmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1oaWdobGlnaHQtYmc6ICN7JG1hcmstYmd9O1xuXG4gIC8vIHNjc3MtZG9jcy1zdGFydCByb290LWJvcmRlci12YXJcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoOiAjeyRib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItc3R5bGU6ICN7JGJvcmRlci1zdHlsZX07XG4gIC0tI3skcHJlZml4fWJvcmRlci1jb2xvcjogI3skYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAjeyRib3JkZXItY29sb3ItdHJhbnNsdWNlbnR9O1xuXG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtOiAjeyRib3JkZXItcmFkaXVzLXNtfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZzogI3skYm9yZGVyLXJhZGl1cy1sZ307XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteGw6ICN7JGJvcmRlci1yYWRpdXMteGx9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXh4bDogI3skYm9yZGVyLXJhZGl1cy14eGx9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLTJ4bDogdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsKTsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjAgZm9yIGNvbnNpc3RlbmN5XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtcGlsbDogI3skYm9yZGVyLXJhZGl1cy1waWxsfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWJvcmRlci12YXJcblxuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93OiAjeyRib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1zbTogI3skYm94LXNoYWRvdy1zbX07XG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3ctbGc6ICN7JGJveC1zaGFkb3ctbGd9O1xuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0OiAjeyRib3gtc2hhZG93LWluc2V0fTtcblxuICAvLyBGb2N1cyBzdHlsZXNcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZm9jdXMtdmFyaWFibGVzXG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctd2lkdGg6ICN7JGZvY3VzLXJpbmctd2lkdGh9O1xuICAtLSN7JHByZWZpeH1mb2N1cy1yaW5nLW9wYWNpdHk6ICN7JGZvY3VzLXJpbmctb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctY29sb3I6ICN7JGZvY3VzLXJpbmctY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtZm9jdXMtdmFyaWFibGVzXG5cbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZm9ybS12YWxpZGF0aW9uLXZhcmlhYmxlc1xuICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCByb290LWZvcm0tdmFsaWRhdGlvbi12YXJpYWJsZXNcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrLCB0cnVlKSB7XG4gICAgY29sb3Itc2NoZW1lOiBkYXJrO1xuXG4gICAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtZGFyay1tb2RlLXZhcnNcbiAgICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yOiAjeyRib2R5LWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9Ym9keS1iZzogI3skYm9keS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1ib2R5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktYmctZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3I6ICN7JGJvZHktZW1waGFzaXMtY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS1lbXBoYXNpcy1jb2xvci1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3I6ICN7JGJvZHktc2Vjb25kYXJ5LWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnOiAjeyRib2R5LXNlY29uZGFyeS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktYmctZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3I6ICN7JGJvZHktdGVydGlhcnktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3ItcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1jb2xvci1kYXJrKX07XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmc6ICN7JGJvZHktdGVydGlhcnktYmctZGFya307XG4gICAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS10ZXJ0aWFyeS1iZy1kYXJrKX07XG5cbiAgICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLXRleHQtZGFyayB7XG4gICAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tdGV4dC1lbXBoYXNpczogI3skdmFsdWV9O1xuICAgIH1cblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYmctc3VidGxlLWRhcmsge1xuICAgICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJnLXN1YnRsZTogI3skdmFsdWV9O1xuICAgIH1cblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZS1kYXJrIHtcbiAgICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1ib3JkZXItc3VidGxlOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgLS0jeyRwcmVmaXh9aGVhZGluZy1jb2xvcjogI3skaGVhZGluZ3MtY29sb3ItZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1saW5rLWNvbG9yOiAjeyRsaW5rLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3I6ICN7JGxpbmstaG92ZXItY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstaG92ZXItY29sb3ItZGFyayl9O1xuXG4gICAgLS0jeyRwcmVmaXh9Y29kZS1jb2xvcjogI3skY29kZS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1oaWdobGlnaHQtY29sb3I6ICN7JG1hcmstY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWJnOiAjeyRtYXJrLWJnLWRhcmt9O1xuXG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yOiAjeyRib3JkZXItY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAjeyRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQtZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWJvcmRlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3I6ICN7JGZvcm0taW52YWxpZC1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yLWRhcmt9O1xuICAgIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1kYXJrLW1vZGUtdmFyc1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2RpbWVuc2lvbi1uby1ub24tbnVtZXJpYy12YWx1ZXNcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL21haW4vTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIHZhbHVlXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgdmFsdWVzIHN0YXJ0IGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIHZhbHVlcyBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IG51bWJlciBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFwibWluLW1lZGlhLXF1ZXJ5XCIsIFwibWF4LW1lZGlhLXF1ZXJ5XCJcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmZzIHRvIGZhbHNlXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLXZhbHVlIHVuaXRcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLXZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgJHJmcy1iYXNlLXZhbHVlICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcmVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIG1lZGlhIHF1ZXJ5IHZhbHVlXG4kcmZzLW1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcbiRyZnMtbXEtcHJvcGVydHktaGVpZ2h0OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtaGVpZ2h0LCBtaW4taGVpZ2h0KTtcblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSksICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtcnVsZSB7XG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAuZW5hYmxlLXJmcyAmLFxuICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG5cbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5ICgpIHtcbiAgICAgIC5lbmFibGUtcmZzICYsXG4gICAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgLmRpc2FibGUtcmZzICYsXG4gICAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkgKCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGZvcm1hdHRlZCBub24tcmVzcG9uc2l2ZSB2YWx1ZVxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICBAaWYgJHVuaXQgPT0gcHgge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHJlbSBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgJHJmcy1yZW0tdmFsdWUpfXJlbSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICR1bml0ID09IHJlbSB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcHggaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSBweCwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgMSkgKiAkcmZzLXJlbS12YWx1ZX1weCwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xuQGZ1bmN0aW9uIHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICBAaWYgbm90ICR1bml0IG9yICR1bml0ICE9IHB4IGFuZCAkdW5pdCAhPSByZW0ge1xuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyAkdmFsdWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuICAgICAgICAkdmFsdWU6IGRpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyBpZigkdW5pdCA9PSBweCwgMSwgZGl2aWRlKDEsICRyZnMtcmVtLXZhbHVlKSkpO1xuXG4gICAgICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgIEBpZiBhYnMoJHZhbHVlKSA8PSAkcmZzLWJhc2UtdmFsdWUgb3Igbm90ICRlbmFibGUtcmZzIHtcbiAgICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlfXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLW1pbjogJHJmcy1iYXNlLXZhbHVlICsgZGl2aWRlKGFicygkdmFsdWUpIC0gJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xuXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWUtbWlufXB4KTtcblxuICAgICAgICAgIC8vIFVzZSBuZWdhdGl2ZSB2YWx1ZSBpZiBuZWVkZWRcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkdmFsdWUgPCAwLCAtJG1pbi13aWR0aCwgJG1pbi13aWR0aCk7XG5cbiAgICAgICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkdmFsdWUtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxuICAgICAgICAgICR2YWw6ICR2YWwgKyBcIiBjYWxjKFwiICsgJG1pbi13aWR0aCArIGlmKCR2YWx1ZSA8IDAsIFwiIC0gXCIsIFwiICsgXCIpICsgJHZhcmlhYmxlLXdpZHRoICsgXCIpXCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIFJGUyBtaXhpblxuQG1peGluIHJmcygkdmFsdWVzLCAkcHJvcGVydHk6IGZvbnQtc2l6ZSkge1xuICBAaWYgJHZhbHVlcyAhPSBudWxsIHtcbiAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlcyk7XG4gICAgJGZsdWlkLXZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xuXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgIEBpZiAkdmFsID09ICRmbHVpZC12YWwge1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBfcmZzLXJ1bGUgKCkge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICR2YWwsICRmbHVpZC12YWwpO1xuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeS1ydWxlICgpIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkZmx1aWQtdmFsLCAkdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcbkBtaXhpbiBmb250LXNpemUoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xufVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy10b3ApO1xufVxuXG5AbWl4aW4gcGFkZGluZy1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xufVxuXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWxlZnQpO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xufVxuXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1yaWdodCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcbn1cblxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItbW9kZS1taXhpblxuQG1peGluIGNvbG9yLW1vZGUoJG1vZGU6IGxpZ2h0LCAkcm9vdDogZmFsc2UpIHtcbiAgQGlmICRjb2xvci1tb2RlLXR5cGUgPT0gXCJtZWRpYS1xdWVyeVwiIHtcbiAgICBAaWYgJHJvb3QgPT0gdHJ1ZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiAkbW9kZSkge1xuICAgICAgICA6cm9vdCB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICRtb2RlKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgW2RhdGEtYnMtdGhlbWU9XCIjeyRtb2RlfVwiXSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItbW9kZS1taXhpblxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5cbi8vIFJvb3Rcbi8vXG4vLyBBYmlsaXR5IHRvIHRoZSB2YWx1ZSBvZiB0aGUgcm9vdCBmb250IHNpemVzLCBhZmZlY3RpbmcgdGhlIHZhbHVlIG9mIGByZW1gLlxuLy8gbnVsbCBieSBkZWZhdWx0LCB0aHVzIG5vdGhpbmcgaXMgZ2VuZXJhdGVkLlxuXG46cm9vdCB7XG4gIEBpZiAkZm9udC1zaXplLXJvb3QgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1yb290LWZvbnQtc2l6ZSkpO1xuICB9XG5cbiAgQGlmICRlbmFibGUtc21vb3RoLXNjcm9sbCB7XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4vLyA0LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlYm9vdC1ib2R5LXJ1bGVzXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LWZhbWlseSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogdmFyKC0tI3skcHJlZml4fWJvZHktdGV4dC1hbGlnbik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKTsgLy8gMlxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDNcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDRcbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVib290LWJvZHktcnVsZXNcblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gUmVzZXQgRmlyZWZveCdzIGdyYXkgY29sb3JcblxuaHIge1xuICBtYXJnaW46ICRoci1tYXJnaW4teSAwO1xuICBjb2xvcjogJGhyLWNvbG9yOyAvLyAxXG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcbn1cblxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gMS4gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vICAgIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyAgICBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG5cbiVoZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC1zdHlsZTogJGhlYWRpbmdzLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9aGVhZGluZy1jb2xvcik7XG59XG5cbmgxIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xufVxuXG5oMiB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbn1cblxuaDMge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG59XG5cbmg0IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpO1xufVxuXG5oNSB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbn1cblxuaDYge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAyLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyAzLiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0ge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDFcbiAgY3Vyc29yOiBoZWxwOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gM1xufVxuXG5cbi8vIEFkZHJlc3NcblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cblxuLy8gTGlzdHNcblxub2wsXG51bCB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIDEuIFVuZG8gYnJvd3NlciBkZWZhdWx0XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyAxXG59XG5cblxuLy8gQmxvY2txdW90ZVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vLyBTdHJvbmdcbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjtcbn1cblxuXG4vLyBTbWFsbFxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG5cbnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzbWFsbC1mb250LXNpemUpO1xufVxuXG5cbi8vIE1hcmtcblxubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9aGlnaGxpZ2h0LWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWhpZ2hsaWdodC1iZyk7XG59XG5cblxuLy8gU3ViIGFuZCBTdXBcbi8vXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbi8vIGFsbCBicm93c2Vycy5cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHN1Yi1zdXAtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vLyBMaW5rc1xuXG5hIHtcbiAgY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgJjpob3ZlciB7XG4gICAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6IHZhcigtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yLXJnYik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcbiAgJixcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gQ29kZVxuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktY29kZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxuLy8gMS4gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4vLyAyLiBSZXNldCBicm93c2VyIGRlZmF1bHQgb2YgYDFlbWAgdG8gdXNlIGByZW1gc1xuLy8gMy4gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG5cbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwOyAvLyAxXG4gIG1hcmdpbi1ib3R0b206IDFyZW07IC8vIDJcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIDNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkcHJlLWNvbG9yO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIH1cbn1cblxuY29kZSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNvZGUtY29sb3IpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG5rYmQge1xuICBwYWRkaW5nOiAka2JkLXBhZGRpbmcteSAka2JkLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cblxuXG4vLyBGaWd1cmVzXG4vL1xuLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vIEltYWdlcyBhbmQgY29udGVudFxuXG5pbWcsXG5zdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcblxudGFibGUge1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cbnRoZWFkLFxudGJvZHksXG50Zm9vdCxcbnRyLFxudGQsXG50aCB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xufVxuXG5cbi8vIEZvcm1zXG4vL1xuLy8gMS4gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbn1cblxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcblxuYnV0dG9uIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBFeHBsaWNpdGx5IHJlbW92ZSBmb2N1cyBvdXRsaW5lIGluIENocm9taXVtIHdoZW4gaXQgc2hvdWxkbid0IGJlXG4vLyB2aXNpYmxlIChlLmcuIGFzIHJlc3VsdCBvZiBtb3VzZSBjbGljayBvciB0b3VjaCB0YXApLiBJdCBhbHJlYWR5XG4vLyBzaG91bGQgYmUgZG9pbmcgdGhpcyBhdXRvbWF0aWNhbGx5LCBidXQgc2VlbXMgdG8gY3VycmVudGx5IGJlXG4vLyBjb25mdXNlZCBhbmQgYXBwbGllcyBpdHMgdmVyeSB2aXNpYmxlIHR3by10b25lIG91dGxpbmUgYW55d2F5LlxuXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzA1NjJcbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5zZWxlY3Qge1xuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuXG4gIC8vIFVuZG8gdGhlIG9wYWNpdHkgY2hhbmdlIGZyb20gQ2hyb21lXG4gICY6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLy8gUmVtb3ZlIHRoZSBkcm9wZG93biBhcnJvdyBvbmx5IGZyb20gdGV4dCB0eXBlIGlucHV0cyBidWlsdCB3aXRoIGRhdGFsaXN0cyBpbiBDaHJvbWUuXG4vLyBTZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzU0OTk3MTE4XG5cbltsaXN0XTpub3QoW3R5cGU9XCJkYXRlXCJdKTpub3QoW3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSk6bm90KFt0eXBlPVwibW9udGhcIl0pOm5vdChbdHlwZT1cIndlZWtcIl0pOm5vdChbdHlwZT1cInRpbWVcIl0pOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDMuIE9waW5pb25hdGVkOiBhZGQgXCJoYW5kXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCBidXR0b24gZWxlbWVudHMuXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxuXG4gIEBpZiAkZW5hYmxlLWJ1dHRvbi1wb2ludGVycyB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxuXG46Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8vIDEuIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsOyAvLyAxXG59XG5cbi8vIDEuIEJyb3dzZXJzIHNldCBhIGRlZmF1bHQgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4vLyAgICB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbi8vICAgIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbi8vICAgIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5XG4vLyAgICBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4vLyAyLiBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cblxuZmllbGRzZXQge1xuICBtaW4td2lkdGg6IDA7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gMlxuICBtYXJnaW46IDA7IC8vIDJcbiAgYm9yZGVyOiAwOyAvLyAyXG59XG5cbi8vIDEuIEJ5IHVzaW5nIGBmbG9hdDogbGVmdGAsIHRoZSBsZWdlbmQgd2lsbCBiZWhhdmUgbGlrZSBhIGJsb2NrIGVsZW1lbnQuXG4vLyAgICBUaGlzIHdheSB0aGUgYm9yZGVyIG9mIGEgZmllbGRzZXQgd3JhcHMgYXJvdW5kIHRoZSBsZWdlbmQgaWYgcHJlc2VudC5cbi8vIDIuIEZpeCB3cmFwcGluZyBidWcuXG4vLyAgICBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yOTcxMlxuXG5sZWdlbmQge1xuICBmbG9hdDogbGVmdDsgLy8gMVxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGxlZ2VuZC1tYXJnaW4tYm90dG9tO1xuICBmb250LXdlaWdodDogJGxlZ2VuZC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVnZW5kLWZvbnQtc2l6ZSk7XG5cbiAgKyAqIHtcbiAgICBjbGVhcjogbGVmdDsgLy8gMlxuICB9XG59XG5cbi8vIEZpeCBoZWlnaHQgb2YgaW5wdXRzIHdpdGggYSB0eXBlIG9mIGRhdGV0aW1lLWxvY2FsLCBkYXRlLCBtb250aCwgd2Vlaywgb3IgdGltZVxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTg4NDJcblxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZmllbGRzLXdyYXBwZXIsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC10ZXh0LFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtaG91ci1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxkLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gMS4gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gICAgYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyAgICBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyAgICBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcblxuICAvLyAzLiBCZXR0ZXIgYWZmb3JkYW5jZSBhbmQgY29uc2lzdGVudCBhcHBlYXJhbmNlIGZvciBzZWFyY2ggY2FuY2VsIGJ1dHRvblxuICAmOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZmlsdGVyOiBncmF5c2NhbGUoMSk7XG4gIH1cbn1cblxuLy8gMS4gQSBmZXcgaW5wdXQgdHlwZXMgc2hvdWxkIHN0YXkgTFRSXG4vLyBTZWUgaHR0cHM6Ly9ydGxzdHlsaW5nLmNvbS9wb3N0cy9ydGwtc3R5bGluZyNmb3JtLWlucHV0c1xuLy8gMi4gUlRMIG9ubHkgb3V0cHV0XG4vLyBTZWUgaHR0cHM6Ly9ydGxjc3MuY29tL2xlYXJuL3VzYWdlLWd1aWRlL2NvbnRyb2wtZGlyZWN0aXZlcy8jcmF3XG5cbi8qIHJ0bDpyYXc6XG5bdHlwZT1cInRlbFwiXSxcblt0eXBlPVwidXJsXCJdLFxuW3R5cGU9XCJlbWFpbFwiXSxcblt0eXBlPVwibnVtYmVyXCJdIHtcbiAgZGlyZWN0aW9uOiBsdHI7XG59XG4qL1xuXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG5cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy8gUmVtb3ZlIHBhZGRpbmcgYXJvdW5kIGNvbG9yIHBpY2tlcnMgaW4gd2Via2l0IGJyb3dzZXJzXG5cbjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gtd3JhcHBlciB7XG4gIHBhZGRpbmc6IDA7XG59XG5cblxuLy8gMS4gSW5oZXJpdCBmb250IGZhbWlseSBhbmQgbGluZSBoZWlnaHQgZm9yIGZpbGUgaW5wdXQgYnV0dG9uc1xuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDFcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG5cbm91dHB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLy8gUmVtb3ZlIGJvcmRlciBmcm9tIGlmcmFtZVxuXG5pZnJhbWUge1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFN1bW1hcnlcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gMVxuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuLy8gUHJvZ3Jlc3Ncbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuXG4vLyBIaWRkZW4gYXR0cmlidXRlXG4vL1xuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZS5cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3ItdmFyaWFibGVzXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3ItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3JzLW1hcFxuJGdyYXlzOiAoXG4gIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgXCIyMDBcIjogJGdyYXktMjAwLFxuICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgXCI1MDBcIjogJGdyYXktNTAwLFxuICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgXCI4MDBcIjogJGdyYXktODAwLFxuICBcIjkwMFwiOiAkZ3JheS05MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3JzLW1hcFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9yLXZhcmlhYmxlc1xuJGJsdWU6ICAgICMwZDZlZmQgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNkNjMzODQgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzE5ODc1NCAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMwZGNhZjAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3JzLW1hcFxuJGNvbG9yczogKFxuICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgXCJibGFja1wiOiAgICAgICRibGFjayxcbiAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3JzLW1hcFxuXG4vLyBUaGUgY29udHJhc3QgcmF0aW8gdG8gcmVhY2ggYWdhaW5zdCB3aGl0ZSwgdG8gZGV0ZXJtaW5lIGlmIGNvbG9yIGNoYW5nZXMgZnJvbSBcImxpZ2h0XCIgdG8gXCJkYXJrXCIuIEFjY2VwdGFibGUgdmFsdWVzIGZvciBXQ0FHIDIuMiBhcmUgMywgNC41IGFuZCA3LlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHLyNjb250cmFzdC1taW5pbXVtXG4kbWluLWNvbnRyYXN0LXJhdGlvOiAgIDQuNSAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiRjb2xvci1jb250cmFzdC1kYXJrOiAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjb2xvci1jb250cmFzdC1saWdodDogICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kYmx1ZS0xMDA6IHRpbnQtY29sb3IoJGJsdWUsIDgwJSkgIWRlZmF1bHQ7XG4kYmx1ZS0yMDA6IHRpbnQtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS0zMDA6IHRpbnQtY29sb3IoJGJsdWUsIDQwJSkgIWRlZmF1bHQ7XG4kYmx1ZS00MDA6IHRpbnQtY29sb3IoJGJsdWUsIDIwJSkgIWRlZmF1bHQ7XG4kYmx1ZS01MDA6ICRibHVlICFkZWZhdWx0O1xuJGJsdWUtNjAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTcwMDogc2hhZGUtY29sb3IoJGJsdWUsIDQwJSkgIWRlZmF1bHQ7XG4kYmx1ZS04MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA2MCUpICFkZWZhdWx0O1xuJGJsdWUtOTAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcblxuJGluZGlnby0xMDA6IHRpbnQtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMjAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTMwMDogdGludC1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby00MDA6IHRpbnQtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNTAwOiAkaW5kaWdvICFkZWZhdWx0O1xuJGluZGlnby02MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDIwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTcwMDogc2hhZGUtY29sb3IoJGluZGlnbywgNDAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tODAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA2MCUpICFkZWZhdWx0O1xuJGluZGlnby05MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDgwJSkgIWRlZmF1bHQ7XG5cbiRwdXJwbGUtMTAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTIwMDogdGludC1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS0zMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNDAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTUwMDogJHB1cnBsZSAhZGVmYXVsdDtcbiRwdXJwbGUtNjAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCAyMCUpICFkZWZhdWx0O1xuJHB1cnBsZS03MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDQwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTgwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtOTAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA4MCUpICFkZWZhdWx0O1xuXG4kcGluay0xMDA6IHRpbnQtY29sb3IoJHBpbmssIDgwJSkgIWRlZmF1bHQ7XG4kcGluay0yMDA6IHRpbnQtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay0zMDA6IHRpbnQtY29sb3IoJHBpbmssIDQwJSkgIWRlZmF1bHQ7XG4kcGluay00MDA6IHRpbnQtY29sb3IoJHBpbmssIDIwJSkgIWRlZmF1bHQ7XG4kcGluay01MDA6ICRwaW5rICFkZWZhdWx0O1xuJHBpbmstNjAwOiBzaGFkZS1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTcwMDogc2hhZGUtY29sb3IoJHBpbmssIDQwJSkgIWRlZmF1bHQ7XG4kcGluay04MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA2MCUpICFkZWZhdWx0O1xuJHBpbmstOTAwOiBzaGFkZS1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcblxuJHJlZC0xMDA6IHRpbnQtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcbiRyZWQtMjAwOiB0aW50LWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTMwMDogdGludC1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC00MDA6IHRpbnQtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNTAwOiAkcmVkICFkZWZhdWx0O1xuJHJlZC02MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDIwJSkgIWRlZmF1bHQ7XG4kcmVkLTcwMDogc2hhZGUtY29sb3IoJHJlZCwgNDAlKSAhZGVmYXVsdDtcbiRyZWQtODAwOiBzaGFkZS1jb2xvcigkcmVkLCA2MCUpICFkZWZhdWx0O1xuJHJlZC05MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDgwJSkgIWRlZmF1bHQ7XG5cbiRvcmFuZ2UtMTAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTIwMDogdGludC1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS0zMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNDAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTUwMDogJG9yYW5nZSAhZGVmYXVsdDtcbiRvcmFuZ2UtNjAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCAyMCUpICFkZWZhdWx0O1xuJG9yYW5nZS03MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDQwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTgwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtOTAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA4MCUpICFkZWZhdWx0O1xuXG4keWVsbG93LTEwMDogdGludC1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuJHllbGxvdy0yMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctMzAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTQwMDogdGludC1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy01MDA6ICR5ZWxsb3cgIWRlZmF1bHQ7XG4keWVsbG93LTYwMDogc2hhZGUtY29sb3IoJHllbGxvdywgMjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNzAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA0MCUpICFkZWZhdWx0O1xuJHllbGxvdy04MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDYwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTkwMDogc2hhZGUtY29sb3IoJHllbGxvdywgODAlKSAhZGVmYXVsdDtcblxuJGdyZWVuLTEwMDogdGludC1jb2xvcigkZ3JlZW4sIDgwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tMjAwOiB0aW50LWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi0zMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA0MCUpICFkZWZhdWx0O1xuJGdyZWVuLTQwMDogdGludC1jb2xvcigkZ3JlZW4sIDIwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNTAwOiAkZ3JlZW4gIWRlZmF1bHQ7XG4kZ3JlZW4tNjAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDIwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNzAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tODAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDYwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tOTAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDgwJSkgIWRlZmF1bHQ7XG5cbiR0ZWFsLTEwMDogdGludC1jb2xvcigkdGVhbCwgODAlKSAhZGVmYXVsdDtcbiR0ZWFsLTIwMDogdGludC1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTMwMDogdGludC1jb2xvcigkdGVhbCwgNDAlKSAhZGVmYXVsdDtcbiR0ZWFsLTQwMDogdGludC1jb2xvcigkdGVhbCwgMjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTUwMDogJHRlYWwgIWRlZmF1bHQ7XG4kdGVhbC02MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNzAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNDAlKSAhZGVmYXVsdDtcbiR0ZWFsLTgwMDogc2hhZGUtY29sb3IoJHRlYWwsIDYwJSkgIWRlZmF1bHQ7XG4kdGVhbC05MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuXG4kY3lhbi0xMDA6IHRpbnQtY29sb3IoJGN5YW4sIDgwJSkgIWRlZmF1bHQ7XG4kY3lhbi0yMDA6IHRpbnQtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi0zMDA6IHRpbnQtY29sb3IoJGN5YW4sIDQwJSkgIWRlZmF1bHQ7XG4kY3lhbi00MDA6IHRpbnQtY29sb3IoJGN5YW4sIDIwJSkgIWRlZmF1bHQ7XG4kY3lhbi01MDA6ICRjeWFuICFkZWZhdWx0O1xuJGN5YW4tNjAwOiBzaGFkZS1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTcwMDogc2hhZGUtY29sb3IoJGN5YW4sIDQwJSkgIWRlZmF1bHQ7XG4kY3lhbi04MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA2MCUpICFkZWZhdWx0O1xuJGN5YW4tOTAwOiBzaGFkZS1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcblxuJGJsdWVzOiAoXG4gIFwiYmx1ZS0xMDBcIjogJGJsdWUtMTAwLFxuICBcImJsdWUtMjAwXCI6ICRibHVlLTIwMCxcbiAgXCJibHVlLTMwMFwiOiAkYmx1ZS0zMDAsXG4gIFwiYmx1ZS00MDBcIjogJGJsdWUtNDAwLFxuICBcImJsdWUtNTAwXCI6ICRibHVlLTUwMCxcbiAgXCJibHVlLTYwMFwiOiAkYmx1ZS02MDAsXG4gIFwiYmx1ZS03MDBcIjogJGJsdWUtNzAwLFxuICBcImJsdWUtODAwXCI6ICRibHVlLTgwMCxcbiAgXCJibHVlLTkwMFwiOiAkYmx1ZS05MDBcbikgIWRlZmF1bHQ7XG5cbiRpbmRpZ29zOiAoXG4gIFwiaW5kaWdvLTEwMFwiOiAkaW5kaWdvLTEwMCxcbiAgXCJpbmRpZ28tMjAwXCI6ICRpbmRpZ28tMjAwLFxuICBcImluZGlnby0zMDBcIjogJGluZGlnby0zMDAsXG4gIFwiaW5kaWdvLTQwMFwiOiAkaW5kaWdvLTQwMCxcbiAgXCJpbmRpZ28tNTAwXCI6ICRpbmRpZ28tNTAwLFxuICBcImluZGlnby02MDBcIjogJGluZGlnby02MDAsXG4gIFwiaW5kaWdvLTcwMFwiOiAkaW5kaWdvLTcwMCxcbiAgXCJpbmRpZ28tODAwXCI6ICRpbmRpZ28tODAwLFxuICBcImluZGlnby05MDBcIjogJGluZGlnby05MDBcbikgIWRlZmF1bHQ7XG5cbiRwdXJwbGVzOiAoXG4gIFwicHVycGxlLTEwMFwiOiAkcHVycGxlLTEwMCxcbiAgXCJwdXJwbGUtMjAwXCI6ICRwdXJwbGUtMjAwLFxuICBcInB1cnBsZS0zMDBcIjogJHB1cnBsZS0zMDAsXG4gIFwicHVycGxlLTQwMFwiOiAkcHVycGxlLTQwMCxcbiAgXCJwdXJwbGUtNTAwXCI6ICRwdXJwbGUtNTAwLFxuICBcInB1cnBsZS02MDBcIjogJHB1cnBsZS02MDAsXG4gIFwicHVycGxlLTcwMFwiOiAkcHVycGxlLTcwMCxcbiAgXCJwdXJwbGUtODAwXCI6ICRwdXJwbGUtODAwLFxuICBcInB1cnBsZS05MDBcIjogJHB1cnBsZS05MDBcbikgIWRlZmF1bHQ7XG5cbiRwaW5rczogKFxuICBcInBpbmstMTAwXCI6ICRwaW5rLTEwMCxcbiAgXCJwaW5rLTIwMFwiOiAkcGluay0yMDAsXG4gIFwicGluay0zMDBcIjogJHBpbmstMzAwLFxuICBcInBpbmstNDAwXCI6ICRwaW5rLTQwMCxcbiAgXCJwaW5rLTUwMFwiOiAkcGluay01MDAsXG4gIFwicGluay02MDBcIjogJHBpbmstNjAwLFxuICBcInBpbmstNzAwXCI6ICRwaW5rLTcwMCxcbiAgXCJwaW5rLTgwMFwiOiAkcGluay04MDAsXG4gIFwicGluay05MDBcIjogJHBpbmstOTAwXG4pICFkZWZhdWx0O1xuXG4kcmVkczogKFxuICBcInJlZC0xMDBcIjogJHJlZC0xMDAsXG4gIFwicmVkLTIwMFwiOiAkcmVkLTIwMCxcbiAgXCJyZWQtMzAwXCI6ICRyZWQtMzAwLFxuICBcInJlZC00MDBcIjogJHJlZC00MDAsXG4gIFwicmVkLTUwMFwiOiAkcmVkLTUwMCxcbiAgXCJyZWQtNjAwXCI6ICRyZWQtNjAwLFxuICBcInJlZC03MDBcIjogJHJlZC03MDAsXG4gIFwicmVkLTgwMFwiOiAkcmVkLTgwMCxcbiAgXCJyZWQtOTAwXCI6ICRyZWQtOTAwXG4pICFkZWZhdWx0O1xuXG4kb3JhbmdlczogKFxuICBcIm9yYW5nZS0xMDBcIjogJG9yYW5nZS0xMDAsXG4gIFwib3JhbmdlLTIwMFwiOiAkb3JhbmdlLTIwMCxcbiAgXCJvcmFuZ2UtMzAwXCI6ICRvcmFuZ2UtMzAwLFxuICBcIm9yYW5nZS00MDBcIjogJG9yYW5nZS00MDAsXG4gIFwib3JhbmdlLTUwMFwiOiAkb3JhbmdlLTUwMCxcbiAgXCJvcmFuZ2UtNjAwXCI6ICRvcmFuZ2UtNjAwLFxuICBcIm9yYW5nZS03MDBcIjogJG9yYW5nZS03MDAsXG4gIFwib3JhbmdlLTgwMFwiOiAkb3JhbmdlLTgwMCxcbiAgXCJvcmFuZ2UtOTAwXCI6ICRvcmFuZ2UtOTAwXG4pICFkZWZhdWx0O1xuXG4keWVsbG93czogKFxuICBcInllbGxvdy0xMDBcIjogJHllbGxvdy0xMDAsXG4gIFwieWVsbG93LTIwMFwiOiAkeWVsbG93LTIwMCxcbiAgXCJ5ZWxsb3ctMzAwXCI6ICR5ZWxsb3ctMzAwLFxuICBcInllbGxvdy00MDBcIjogJHllbGxvdy00MDAsXG4gIFwieWVsbG93LTUwMFwiOiAkeWVsbG93LTUwMCxcbiAgXCJ5ZWxsb3ctNjAwXCI6ICR5ZWxsb3ctNjAwLFxuICBcInllbGxvdy03MDBcIjogJHllbGxvdy03MDAsXG4gIFwieWVsbG93LTgwMFwiOiAkeWVsbG93LTgwMCxcbiAgXCJ5ZWxsb3ctOTAwXCI6ICR5ZWxsb3ctOTAwXG4pICFkZWZhdWx0O1xuXG4kZ3JlZW5zOiAoXG4gIFwiZ3JlZW4tMTAwXCI6ICRncmVlbi0xMDAsXG4gIFwiZ3JlZW4tMjAwXCI6ICRncmVlbi0yMDAsXG4gIFwiZ3JlZW4tMzAwXCI6ICRncmVlbi0zMDAsXG4gIFwiZ3JlZW4tNDAwXCI6ICRncmVlbi00MDAsXG4gIFwiZ3JlZW4tNTAwXCI6ICRncmVlbi01MDAsXG4gIFwiZ3JlZW4tNjAwXCI6ICRncmVlbi02MDAsXG4gIFwiZ3JlZW4tNzAwXCI6ICRncmVlbi03MDAsXG4gIFwiZ3JlZW4tODAwXCI6ICRncmVlbi04MDAsXG4gIFwiZ3JlZW4tOTAwXCI6ICRncmVlbi05MDBcbikgIWRlZmF1bHQ7XG5cbiR0ZWFsczogKFxuICBcInRlYWwtMTAwXCI6ICR0ZWFsLTEwMCxcbiAgXCJ0ZWFsLTIwMFwiOiAkdGVhbC0yMDAsXG4gIFwidGVhbC0zMDBcIjogJHRlYWwtMzAwLFxuICBcInRlYWwtNDAwXCI6ICR0ZWFsLTQwMCxcbiAgXCJ0ZWFsLTUwMFwiOiAkdGVhbC01MDAsXG4gIFwidGVhbC02MDBcIjogJHRlYWwtNjAwLFxuICBcInRlYWwtNzAwXCI6ICR0ZWFsLTcwMCxcbiAgXCJ0ZWFsLTgwMFwiOiAkdGVhbC04MDAsXG4gIFwidGVhbC05MDBcIjogJHRlYWwtOTAwXG4pICFkZWZhdWx0O1xuXG4kY3lhbnM6IChcbiAgXCJjeWFuLTEwMFwiOiAkY3lhbi0xMDAsXG4gIFwiY3lhbi0yMDBcIjogJGN5YW4tMjAwLFxuICBcImN5YW4tMzAwXCI6ICRjeWFuLTMwMCxcbiAgXCJjeWFuLTQwMFwiOiAkY3lhbi00MDAsXG4gIFwiY3lhbi01MDBcIjogJGN5YW4tNTAwLFxuICBcImN5YW4tNjAwXCI6ICRjeWFuLTYwMCxcbiAgXCJjeWFuLTcwMFwiOiAkY3lhbi03MDAsXG4gIFwiY3lhbi04MDBcIjogJGN5YW4tODAwLFxuICBcImN5YW4tOTAwXCI6ICRjeWFuLTkwMFxuKSAhZGVmYXVsdDtcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvci12YXJpYWJsZXNcbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9ycy1tYXBcbiR0aGVtZS1jb2xvcnM6IChcbiAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICBcImluZm9cIjogICAgICAgJGluZm8sXG4gIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gIFwiZGFya1wiOiAgICAgICAkZGFya1xuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3JzLW1hcFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtdGV4dC12YXJpYWJsZXNcbiRwcmltYXJ5LXRleHQtZW1waGFzaXM6ICAgc2hhZGUtY29sb3IoJHByaW1hcnksIDYwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LXRleHQtZW1waGFzaXM6IHNoYWRlLWNvbG9yKCRzZWNvbmRhcnksIDYwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy10ZXh0LWVtcGhhc2lzOiAgIHNoYWRlLWNvbG9yKCRzdWNjZXNzLCA2MCUpICFkZWZhdWx0O1xuJGluZm8tdGV4dC1lbXBoYXNpczogICAgICBzaGFkZS1jb2xvcigkaW5mbywgNjAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLXRleHQtZW1waGFzaXM6ICAgc2hhZGUtY29sb3IoJHdhcm5pbmcsIDYwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLXRleHQtZW1waGFzaXM6ICAgIHNoYWRlLWNvbG9yKCRkYW5nZXIsIDYwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtdGV4dC1lbXBoYXNpczogICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRkYXJrLXRleHQtZW1waGFzaXM6ICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS10ZXh0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYmctc3VidGxlLXZhcmlhYmxlc1xuJHByaW1hcnktYmctc3VidGxlOiAgICAgICB0aW50LWNvbG9yKCRwcmltYXJ5LCA4MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1iZy1zdWJ0bGU6ICAgICB0aW50LWNvbG9yKCRzZWNvbmRhcnksIDgwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy1iZy1zdWJ0bGU6ICAgICAgIHRpbnQtY29sb3IoJHN1Y2Nlc3MsIDgwJSkgIWRlZmF1bHQ7XG4kaW5mby1iZy1zdWJ0bGU6ICAgICAgICAgIHRpbnQtY29sb3IoJGluZm8sIDgwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy1iZy1zdWJ0bGU6ICAgICAgIHRpbnQtY29sb3IoJHdhcm5pbmcsIDgwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLWJnLXN1YnRsZTogICAgICAgIHRpbnQtY29sb3IoJGRhbmdlciwgODAlKSAhZGVmYXVsdDtcbiRsaWdodC1iZy1zdWJ0bGU6ICAgICAgICAgbWl4KCRncmF5LTEwMCwgJHdoaXRlKSAhZGVmYXVsdDtcbiRkYXJrLWJnLXN1YnRsZTogICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1iZy1zdWJ0bGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1ib3JkZXItc3VidGxlLXZhcmlhYmxlc1xuJHByaW1hcnktYm9yZGVyLXN1YnRsZTogICB0aW50LWNvbG9yKCRwcmltYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1ib3JkZXItc3VidGxlOiB0aW50LWNvbG9yKCRzZWNvbmRhcnksIDYwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy1ib3JkZXItc3VidGxlOiAgIHRpbnQtY29sb3IoJHN1Y2Nlc3MsIDYwJSkgIWRlZmF1bHQ7XG4kaW5mby1ib3JkZXItc3VidGxlOiAgICAgIHRpbnQtY29sb3IoJGluZm8sIDYwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy1ib3JkZXItc3VidGxlOiAgIHRpbnQtY29sb3IoJHdhcm5pbmcsIDYwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLWJvcmRlci1zdWJ0bGU6ICAgIHRpbnQtY29sb3IoJGRhbmdlciwgNjAlKSAhZGVmYXVsdDtcbiRsaWdodC1ib3JkZXItc3VidGxlOiAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRhcmstYm9yZGVyLXN1YnRsZTogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJvcmRlci1zdWJ0bGUtdmFyaWFibGVzXG5cbi8vIENoYXJhY3RlcnMgd2hpY2ggYXJlIGVzY2FwZWQgYnkgdGhlIGVzY2FwZS1zdmcgZnVuY3Rpb25cbiRlc2NhcGVkLWNoYXJhY3RlcnM6IChcbiAgKFwiPFwiLCBcIiUzY1wiKSxcbiAgKFwiPlwiLCBcIiUzZVwiKSxcbiAgKFwiI1wiLCBcIiUyM1wiKSxcbiAgKFwiKFwiLCBcIiUyOFwiKSxcbiAgKFwiKVwiLCBcIiUyOVwiKSxcbikgIWRlZmF1bHQ7XG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlZHVjZWQtbW90aW9uOiAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zbW9vdGgtc2Nyb2xsOiAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWNvbnRhaW5lci1jbGFzc2VzOiAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1jc3NncmlkOiAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWJ1dHRvbi1wb2ludGVyczogICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZnM6ICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLW5lZ2F0aXZlLW1hcmdpbnM6ICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6IHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXM6ICB0cnVlICFkZWZhdWx0O1xuXG4kZW5hYmxlLWRhcmstbW9kZTogICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGNvbG9yLW1vZGUtdHlwZTogICAgICAgICAgICAgZGF0YSAhZGVmYXVsdDsgLy8gYGRhdGFgIG9yIGBtZWRpYS1xdWVyeWBcblxuLy8gUHJlZml4IGZvciA6cm9vdCBDU1MgdmFyaWFibGVzXG5cbiR2YXJpYWJsZS1wcmVmaXg6ICAgICAgICAgICAgIGJzLSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAgZm9yIHRoZSBzaG9ydGVyIGAkcHJlZml4YFxuJHByZWZpeDogICAgICAgICAgICAgICAgICAgICAgJHZhcmlhYmxlLXByZWZpeCAhZGVmYXVsdDtcblxuLy8gR3JhZGllbnRcbi8vXG4vLyBUaGUgZ3JhZGllbnQgd2hpY2ggaXMgYWRkZWQgdG8gY29tcG9uZW50cyBpZiBgJGVuYWJsZS1ncmFkaWVudHNgIGlzIGB0cnVlYFxuLy8gVGhpcyBncmFkaWVudCBpcyBhbHNvIGFkZGVkIHRvIGVsZW1lbnRzIHdpdGggYC5iZy1ncmFkaWVudGBcbi8vIHNjc3MtZG9jcy1zdGFydCB2YXJpYWJsZS1ncmFkaWVudFxuJGdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKCR3aGl0ZSwgLjE1KSwgcmdiYSgkd2hpdGUsIDApKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdmFyaWFibGUtZ3JhZGllbnRcblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGFjZXItdmFyaWFibGVzLW1hcHNcbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKFxuICAwOiAwLFxuICAxOiAkc3BhY2VyICogLjI1LFxuICAyOiAkc3BhY2VyICogLjUsXG4gIDM6ICRzcGFjZXIsXG4gIDQ6ICRzcGFjZXIgKiAxLjUsXG4gIDU6ICRzcGFjZXIgKiAzLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3BhY2VyLXZhcmlhYmxlcy1tYXBzXG5cbi8vIFBvc2l0aW9uXG4vL1xuLy8gRGVmaW5lIHRoZSBlZGdlIHBvc2l0aW9uaW5nIGFuY2hvcnMgb2YgdGhlIHBvc2l0aW9uIHV0aWxpdGllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvc2l0aW9uLW1hcFxuJHBvc2l0aW9uLXZhbHVlczogKFxuICAwOiAwLFxuICA1MDogNTAlLFxuICAxMDA6IDEwMCVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvc2l0aW9uLW1hcFxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS10ZXh0LWFsaWduOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kYm9keS1zZWNvbmRhcnktY29sb3I6ICAgICAgcmdiYSgkYm9keS1jb2xvciwgLjc1KSAhZGVmYXVsdDtcbiRib2R5LXNlY29uZGFyeS1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRib2R5LXRlcnRpYXJ5LWNvbG9yOiAgICAgICByZ2JhKCRib2R5LWNvbG9yLCAuNSkgIWRlZmF1bHQ7XG4kYm9keS10ZXJ0aWFyeS1iZzogICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kYm9keS1lbXBoYXNpcy1jb2xvcjogICAgICAgJGJsYWNrICFkZWZhdWx0O1xuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4kbGluay1zaGFkZS1wZXJjZW50YWdlOiAgICAgICAgICAgICAgICAgICAyMCUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBzaGlmdC1jb2xvcigkbGluay1jb2xvciwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kc3RyZXRjaGVkLWxpbmstcHNldWRvLWVsZW1lbnQ6ICAgICAgICAgICBhZnRlciAhZGVmYXVsdDtcbiRzdHJldGNoZWQtbGluay16LWluZGV4OiAgICAgICAgICAgICAgICAgIDEgIWRlZmF1bHQ7XG5cbi8vIEljb24gbGlua3Ncbi8vIHNjc3MtZG9jcy1zdGFydCBpY29uLWxpbmstdmFyaWFibGVzXG4kaWNvbi1saW5rLWdhcDogICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGljb24tbGluay11bmRlcmxpbmUtb2Zmc2V0OiAgLjI1ZW0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWljb24tc2l6ZTogICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWljb24tdHJhbnNpdGlvbjogICAuMnMgZWFzZS1pbi1vdXQgdHJhbnNmb3JtICFkZWZhdWx0O1xuJGljb24tbGluay1pY29uLXRyYW5zZm9ybTogICAgdHJhbnNsYXRlM2QoLjI1ZW0sIDAsIDApICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBpY29uLWxpbmstdmFyaWFibGVzXG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyaWQtYnJlYWtwb2ludHNcbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4LFxuICB4eGw6IDE0MDBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JpZC1icmVha3BvaW50c1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbnRhaW5lci1tYXgtd2lkdGhzXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweCxcbiAgeHhsOiAxMzIwcHhcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbnRhaW5lci1tYXgtd2lkdGhzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuLy8gQ29udGFpbmVyIHBhZGRpbmdcblxuJGNvbnRhaW5lci1wYWRkaW5nLXg6ICRncmlkLWd1dHRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXZhcmlhYmxlc1xuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aHM6IChcbiAgMTogMXB4LFxuICAyOiAycHgsXG4gIDM6IDNweCxcbiAgNDogNHB4LFxuICA1OiA1cHhcbikgIWRlZmF1bHQ7XG4kYm9yZGVyLXN0eWxlOiAgICAgICAgICAgICAgICBzb2xpZCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6ICAgIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXhsOiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy14eGw6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtcGlsbDogICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci1yYWRpdXMtdmFyaWFibGVzXG4vLyBmdXN2LWRpc2FibGVcbiRib3JkZXItcmFkaXVzLTJ4bDogICAgICAgICAgICRib3JkZXItcmFkaXVzLXh4bCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3gtc2hhZG93LXZhcmlhYmxlc1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1pbnNldDogICAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3gtc2hhZG93LXZhcmlhYmxlc1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvY3VzLXJpbmctdmFyaWFibGVzXG4kZm9jdXMtcmluZy13aWR0aDogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1vcGFjaXR5OiAgICAuMjUgIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1jb2xvcjogICAgICByZ2JhKCRwcmltYXJ5LCAkZm9jdXMtcmluZy1vcGFjaXR5KSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWJsdXI6ICAgICAgIDAgIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1ib3gtc2hhZG93OiAwIDAgJGZvY3VzLXJpbmctYmx1ciAkZm9jdXMtcmluZy13aWR0aCAkZm9jdXMtcmluZy1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9jdXMtcmluZy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmV0LXZhcmlhYmxlc1xuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcbiRjYXJldC12ZXJ0aWNhbC1hbGlnbjogICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbiRjYXJldC1zcGFjaW5nOiAgICAgICAgICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZXQtdmFyaWFibGVzXG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbGxhcHNlLXRyYW5zaXRpb25cbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aDogICB3aWR0aCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbGxhcHNlLXRyYW5zaXRpb25cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4vLyBzY3NzLWRvY3Mtc3RhcnQgYXNwZWN0LXJhdGlvc1xuJGFzcGVjdC1yYXRpb3M6IChcbiAgXCIxeDFcIjogMTAwJSxcbiAgXCI0eDNcIjogY2FsYygzIC8gNCAqIDEwMCUpLFxuICBcIjE2eDlcIjogY2FsYyg5IC8gMTYgKiAxMDAlKSxcbiAgXCIyMXg5XCI6IGNhbGMoOSAvIDIxICogMTAwJSlcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFzcGVjdC1yYXRpb3Ncbi8vIHN0eWxlbGludC1lbmFibGUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvbnQtdmFyaWFibGVzXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgQXJpYWwsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWZvbnQtc2Fucy1zZXJpZikgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktY29kZTogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Zm9udC1tb25vc3BhY2UpICFkZWZhdWx0O1xuXG4vLyAkZm9udC1zaXplLXJvb3QgYWZmZWN0cyB0aGUgdmFsdWUgb2YgYHJlbWAsIHdoaWNoIGlzIHVzZWQgZm9yIGFzIHdlbGwgZm9udCBzaXplcywgcGFkZGluZ3MsIGFuZCBtYXJnaW5zXG4vLyAkZm9udC1zaXplLWJhc2UgYWZmZWN0cyB0aGUgZm9udCBzaXplIG9mIHRoZSBib2R5IHRleHRcbiRmb250LXNpemUtcm9vdDogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW1lZGl1bTogICAgICAgICAgNTAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LXNlbWlib2xkOiAgICAgICAgNjAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMiAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb250LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9udC1zaXplc1xuJGZvbnQtc2l6ZXM6IChcbiAgMTogJGgxLWZvbnQtc2l6ZSxcbiAgMjogJGgyLWZvbnQtc2l6ZSxcbiAgMzogJGgzLWZvbnQtc2l6ZSxcbiAgNDogJGg0LWZvbnQtc2l6ZSxcbiAgNTogJGg1LWZvbnQtc2l6ZSxcbiAgNjogJGg2LWZvbnQtc2l6ZVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9udC1zaXplc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaGVhZGluZ3MtdmFyaWFibGVzXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtc3R5bGU6ICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGhlYWRpbmdzLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZGlzcGxheS1oZWFkaW5nc1xuJGRpc3BsYXktZm9udC1zaXplczogKFxuICAxOiA1cmVtLFxuICAyOiA0LjVyZW0sXG4gIDM6IDRyZW0sXG4gIDQ6IDMuNXJlbSxcbiAgNTogM3JlbSxcbiAgNjogMi41cmVtXG4pICFkZWZhdWx0O1xuXG4kZGlzcGxheS1mb250LWZhbWlseTogbnVsbCAhZGVmYXVsdDtcbiRkaXNwbGF5LWZvbnQtc3R5bGU6ICBudWxsICFkZWZhdWx0O1xuJGRpc3BsYXktZm9udC13ZWlnaHQ6IDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGRpc3BsYXktaGVhZGluZ3NcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHR5cGUtdmFyaWFibGVzXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAuODc1ZW0gIWRlZmF1bHQ7XG5cbiRzdWItc3VwLWZvbnQtc2l6ZTogICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIDUuMy4wXG4vLyBmdXN2LWVuYWJsZVxuXG4kaW5pdGlhbGlzbS1mb250LXNpemU6ICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1tYXJnaW4teTogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kaHItY29sb3I6ICAgICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRoci1iZy1jb2xvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4kaHItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMFxuLy8gZnVzdi1lbmFibGVcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gQWxsb3dzIGZvciBpbmhlcml0ZWQgY29sb3JzXG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRoci1vcGFjaXR5OiAgICAgICAgICAgICAgICAgIC4yNSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHZyLXZhcmlhYmxlc1xuJHZyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHZyLXZhcmlhYmxlc1xuXG4kbGVnZW5kLW1hcmdpbi1ib3R0b206ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC1zaXplOiAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC13ZWlnaHQ6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjE4NzVlbSAhZGVmYXVsdDtcbiRtYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgJHllbGxvdy0xMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHR5cGUtdmFyaWFibGVzXG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtdmFyaWFibGVzXG4kdGFibGUtY2VsbC1wYWRkaW5nLXk6ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteDogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy15LXNtOiAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy14LXNtOiAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kdGFibGUtY2VsbC12ZXJ0aWNhbC1hbGlnbjogICB0b3AgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtY29sb3I6ICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yOiAgICAgLjA1ICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmc6ICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3I6ICAgICAgLjEgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZy1mYWN0b3I6ICAgICAgIC4wNzUgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAkdGFibGUtaG92ZXItYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci1mYWN0b3I6ICAgICAgICAgLjIgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1jb2x1bW5zLW9yZGVyOiBldmVuICFkZWZhdWx0O1xuXG4kdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOiBjdXJyZW50Y29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYmctc2NhbGU6ICAgICAgICAgICAgICAtODAlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLWxvb3BcbiR0YWJsZS12YXJpYW50czogKFxuICBcInByaW1hcnlcIjogICAgc2hpZnQtY29sb3IoJHByaW1hcnksICR0YWJsZS1iZy1zY2FsZSksXG4gIFwic2Vjb25kYXJ5XCI6ICBzaGlmdC1jb2xvcigkc2Vjb25kYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInN1Y2Nlc3NcIjogICAgc2hpZnQtY29sb3IoJHN1Y2Nlc3MsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwiaW5mb1wiOiAgICAgICBzaGlmdC1jb2xvcigkaW5mbywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJ3YXJuaW5nXCI6ICAgIHNoaWZ0LWNvbG9yKCR3YXJuaW5nLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImRhbmdlclwiOiAgICAgc2hpZnQtY29sb3IoJGRhbmdlciwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtbG9vcFxuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgICAkZm9jdXMtcmluZy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eTogJGZvY3VzLXJpbmctb3BhY2l0eSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgICAgJGZvY3VzLXJpbmctY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJsdXI6ICAgICAgICAgICRmb2N1cy1yaW5nLWJsdXIgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWJ0bi12YXJpYWJsZXNcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFibGVzXG4kYnRuLWNvbG9yOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstaG92ZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZm9jdXMtc2hhZG93LXJnYjogICB0by1yZ2IobWl4KGNvbG9yLWNvbnRyYXN0KCRsaW5rLWNvbG9yKSwgJGxpbmstY29sb3IsIDE1JSkpICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSkgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQ6ICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYmctdGludC1hbW91bnQ6ICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQ6ICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQ6ICAgIDEwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudDogICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudDogICAgICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudDogIDI1JSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudDogICAxMCUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYWJsZXNcblxuXG4vLyBGb3Jtc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS10ZXh0LXZhcmlhYmxlc1xuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS10ZXh0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1sYWJlbC12YXJpYWJsZXNcbiRmb3JtLWxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zdHlsZTogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1pbnB1dC12YXJpYWJsZXNcbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldCkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA1MCUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtYm9yZGVyLXdpZHRofSAqIDIpICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAuNSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLWNvbG9yLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAzcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1jaGVjay12YXJpYWJsZXNcbiRmb3JtLWNoZWNrLWlucHV0LXdpZHRoOiAgICAgICAgICAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDogICAgICAgICAgICAgICAgJGZvcm0tY2hlY2staW5wdXQtd2lkdGggKyAuNWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtYWN0aXZlLWZpbHRlcjogICAgICAgICAgYnJpZ2h0bmVzcyg5MCUpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyOiAgICAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J202IDEwIDMgMyA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPScyJyBmaWxsPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICAgJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGg4Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjUgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWJ0bi1jaGVjay1kaXNhYmxlZC1vcGFjaXR5OiAgICAkYnRuLWRpc2FibGVkLW9wYWNpdHkgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kOiAgICAxcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWNoZWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG4kZm9ybS1zd2l0Y2gtY29sb3I6ICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgMmVtICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYmctaW1hZ2U6ICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXM6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC10cmFuc2l0aW9uOiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcjogICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2U6ICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb246IHJpZ2h0IGNlbnRlciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBpbnB1dC1ncm91cC12YXJpYWJsZXNcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWdyb3VwLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgICAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICogMyAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyBmb3IgYmFja2dyb3VuZC1pbWFnZVxuJGZvcm0tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmctcG9zaXRpb246ICAgICAgICAgICByaWdodCAkZm9ybS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICAgIDE2cHggMTJweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J20yIDUgNiA2IDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAyLjUgKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgY2VudGVyIHJpZ2h0ICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0KSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRmb3JtLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1zbTogICAgJGlucHV0LWJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLWxnOiAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXRyYW5zaXRpb246ICAgICAgICAgICRpbnB1dC10cmFuc2l0aW9uICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tcmFuZ2UtdmFyaWFibGVzXG4kZm9ybS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQpICFkZWZhdWx0O1xuXG4kZm9ybS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkZm9ybS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gRWRnZVxuJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDcwJSkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1maWxlLXZhcmlhYmxlc1xuJGZvcm0tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZpbGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuJGZvcm0tZmxvYXRpbmctaGVpZ2h0OiAgICAgICAgICAgICAgICAgIGFkZCgzLjVyZW0sICRpbnB1dC1oZWlnaHQtYm9yZGVyKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDogICAgICAgICAxLjYyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjogICAgICAgICAuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtaGVpZ2h0OiAgICAgICAgICAgIDEuNWVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eTogICAgICAgICAgIC42NSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTogICAgICAgICBzY2FsZSguODUpIHRyYW5zbGF0ZVkoLS41cmVtKSB0cmFuc2xhdGVYKC4xNXJlbSkgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctdHJhbnNpdGlvbjogICAgICAgICAgICAgIG9wYWNpdHkgLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gLjFzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmVlZGJhY2stdmFyaWFibGVzXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkZm9ybS10ZXh0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc3R5bGU6ICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zdHlsZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgICRzdWNjZXNzICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgJGRhbmdlciAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43My42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEyIDEyJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9Jz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLWNvbG9yc1xuJGZvcm0tdmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWludmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcjogICAgICAgICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tY29sb3JzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKFxuICBcInZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yKSxcbiAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZCxcbiAgICBcInRvb2x0aXAtY29sb3JcIjogI2ZmZixcbiAgICBcInRvb2x0aXAtYmctY29sb3JcIjogdmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MpLFxuICAgIFwiZm9jdXMtYm94LXNoYWRvd1wiOiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKHZhcigtLSN7JHByZWZpeH1zdWNjZXNzLXJnYiksICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSksXG4gICAgXCJib3JkZXItY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yKSxcbiAgKSxcbiAgXCJpbnZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3IpLFxuICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQsXG4gICAgXCJ0b29sdGlwLWNvbG9yXCI6ICNmZmYsXG4gICAgXCJ0b29sdGlwLWJnLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXIpLFxuICAgIFwiZm9jdXMtYm94LXNoYWRvd1wiOiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKHZhcigtLSN7JHByZWZpeH1kYW5nZXItcmdiKSwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSxcbiAgICBcImJvcmRlci1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvciksXG4gIClcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgemluZGV4LXN0YWNrXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhcy1iYWNrZHJvcDogICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1vZmZjYW52YXM6ICAgICAgICAgICAgICAgICAgMTA0NSAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDU1ICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwODAgIWRlZmF1bHQ7XG4kemluZGV4LXRvYXN0OiAgICAgICAgICAgICAgICAgICAgICAxMDkwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB6aW5kZXgtc3RhY2tcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1sZXZlbHMtbWFwXG4kemluZGV4LWxldmVsczogKFxuICBuMTogLTEsXG4gIDA6IDAsXG4gIDE6IDEsXG4gIDI6IDIsXG4gIDM6IDNcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1sZXZlbHMtbWFwXG5cblxuLy8gTmF2c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXZhcmlhYmxlc1xuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbmF2LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstdHJhbnNpdGlvbjogICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtdW5kZXJsaW5lLWdhcDogICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGg6ICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJG5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3I6ICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2LXZhcmlhYmxlc1xuXG5cbi8vIE5hdmJhclxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLXZhcmlhYmxlc1xuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtbWFyZ2luLWVuZDogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGg6ICAgICAgICAkYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXRyYW5zaXRpb246ICAgICAgICAgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuNjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgLjgpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWljb24tY29sb3I6ICAgICAgICAgICByZ2JhKCRib2R5LWNvbG9yLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIC4xNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZGFyay12YXJpYWJsZXNcbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNTUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1pY29uLWNvbG9yOiAgICAgICAgICAgICRuYXZiYXItZGFyay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWRhcmstdmFyaWFibGVzXG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tdmFyaWFibGVzXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgY2FsYygjeyRkcm9wZG93bi1ib3JkZXItcmFkaXVzfSAtICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH0pICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJGRyb3Bkb3duLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3IpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXkgJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4vLyBmdXN2LWVuYWJsZVxuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLWRhcmstdmFyaWFibGVzXG4kZHJvcGRvd24tZGFyay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1iZzogICAgICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3JkZXItY29sb3I6ICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZzogICAgICAgICAgJGRyb3Bkb3duLWRpdmlkZXItYmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3gtc2hhZG93OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1jb2xvcjogICAgICAgICAgJGRyb3Bkb3duLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yOiAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnOiAgICAgICByZ2JhKCR3aGl0ZSwgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yOiAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWJnOiAgICAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWhlYWRlci1jb2xvcjogICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcblxuXG4vLyBQYWdpbmF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0OiAgICAgICAgICAgY2FsYygtMSAqICN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0OyAvLyBUb2RvIGluIHY2OiByZW1vdmUgdGhpcz9cblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi12YXJpYWJsZXNcblxuXG4vLyBQbGFjZWhvbGRlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBsYWNlaG9sZGVyc1xuJHBsYWNlaG9sZGVyLW9wYWNpdHktbWF4OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kcGxhY2Vob2xkZXItb3BhY2l0eS1taW46ICAgICAgICAgICAuMiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGxhY2Vob2xkZXJzXG5cbi8vIENhcmRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJkLXZhcmlhYmxlc1xuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1zcGFjZXIteTogICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtc3VidGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kY2FyZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICogLjUgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteCAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiKSwgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZC12YXJpYWJsZXNcblxuLy8gQWNjb3JkaW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhY2NvcmRpb24tdmFyaWFibGVzXG4kYWNjb3JkaW9uLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICBzdWJ0cmFjdCgkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMsICRhY2NvcmRpb24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15OiAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYmcpICFkZWZhdWx0O1xuJGFjY29yZGlvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uLCBib3JkZXItcmFkaXVzIC4xNXMgZWFzZSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LWJnLXN1YnRsZSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9cHJpbWFyeS10ZXh0LWVtcGhhc2lzKSAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuM1xuLy8gZnVzdi1lbmFibGVcbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRidG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgJHByaW1hcnktdGV4dC1lbXBoYXNpcyAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtOiAgICAgICAgICAgICAgICByb3RhdGUoLTE4MGRlZykgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLWljb246ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skYWNjb3JkaW9uLWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnPjxwYXRoIGQ9J20yIDUgNiA2IDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uOiAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cGF0aCBkPSdtMiA1IDYgNiA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFjY29yZGlvbi12YXJpYWJsZXNcblxuLy8gVG9vbHRpcHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtdmFyaWFibGVzXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gVE9ETzogcmVtb3ZlIHRoaXMgaW4gdjZcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiBCb290c3RyYXAgNS4yLjAgZm9yIENTUyB2YXJpYWJsZXNcbi8vIGZ1c3YtZW5hYmxlXG4vLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtdmFyaWFibGVzXG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICBudWxsICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG5cbi8vIFBvcG92ZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3BvdmVyLXZhcmlhYmxlc1xuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIGNhbGMoI3skcG9wb3Zlci1ib3JkZXItcmFkaXVzfSAtICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdykgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3BvdmVyLXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbi8vIERlcHJlY2F0ZWQgaW4gQm9vdHN0cmFwIDUuMi4wIGZvciBDU1MgdmFyaWFibGVzXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuXG4vLyBUb2FzdHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvYXN0LXZhcmlhYmxlc1xuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2IpLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcbiR0b2FzdC1zcGFjaW5nOiAgICAgICAgICAgICAgICAgICAgICRjb250YWluZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktYmctcmdiKSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICR0b2FzdC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvYXN0LXZhcmlhYmxlc1xuXG5cbi8vIEJhZGdlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYmFkZ2UtdmFyaWFibGVzXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjM1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYmFkZ2UtdmFyaWFibGVzXG5cblxuLy8gTW9kYWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC12YXJpYWJsZXNcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG5cbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC1mb290ZXItYmc6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC12YXJpYWJsZXNcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LXZhcmlhYmxlc1xuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI6ICAgJGFsZXJ0LXBhZGRpbmcteCAqIDMgIWRlZmF1bHQ7IC8vIDN4IGNvdmVycyB3aWR0aCBvZiB4IHBsdXMgZGVmYXVsdCBwYWRkaW5nIG9uIGVpdGhlciBzaWRlXG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbiRhbGVydC1iZy1zY2FsZTogICAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHRvIGJlIHJlbW92ZWQgaW4gdjZcbiRhbGVydC1ib3JkZXItc2NhbGU6ICAgICAgICAgICAgLTcwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHRvIGJlIHJlbW92ZWQgaW4gdjZcbiRhbGVydC1jb2xvci1zY2FsZTogICAgICAgICAgICAgNDAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgdG8gYmUgcmVtb3ZlZCBpbiB2NlxuLy8gZnVzdi1lbmFibGVcblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3MtdmFyaWFibGVzXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldCkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy12YXJpYWJsZXNcblxuXG4vLyBMaXN0IGdyb3VwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJGxpc3QtZ3JvdXAtaXRlbS1iZy1zY2FsZTogICAgICAgICAgLTgwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjBcbiRsaXN0LWdyb3VwLWl0ZW0tY29sb3Itc2NhbGU6ICAgICAgIDQwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRodW1ibmFpbC12YXJpYWJsZXNcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1zbSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRodW1ibmFpbC12YXJpYWJsZXNcblxuXG4vLyBGaWd1cmVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmaWd1cmUtdmFyaWFibGVzXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZpZ3VyZS12YXJpYWJsZXNcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnJlYWRjcnVtYi12YXJpYWJsZXNcbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkOiAgICAgICAgJGJyZWFkY3J1bWItZGl2aWRlciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItdmFyaWFibGVzXG5cbi8vIENhcm91c2VsXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJvdXNlbC12YXJpYWJsZXNcbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi1maWx0ZXI6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTogICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5OiAgMSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyOiAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAycmVtICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9Jz48cGF0aCBkPSdNMTEuMzU0IDEuNjQ2YS41LjUgMCAwIDEgMCAuNzA4TDUuNzA3IDhsNS42NDcgNS42NDZhLjUuNSAwIDAgMS0uNzA4LjcwOGwtNi02YS41LjUgMCAwIDEgMC0uNzA4bDYtNmEuNS41IDAgMCAxIC43MDggMCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J000LjY0NiAxLjY0NmEuNS41IDAgMCAxIC43MDggMGw2IDZhLjUuNSAwIDAgMSAwIC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDgtLjcwOEwxMC4yOTMgOCA0LjY0NiAyLjM1NGEuNS41IDAgMCAxIDAtLjcwOCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2Fyb3VzZWwtZGFyay12YXJpYWJsZXNcbiRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc6ICAkYmxhY2sgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy40XG4kY2Fyb3VzZWwtZGFyay1jYXB0aW9uLWNvbG9yOiAgICAgICAgJGJsYWNrICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuNFxuJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjogIGludmVydCgxKSBncmF5c2NhbGUoMTAwKSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjRcbi8vIHNjc3MtZG9jcy1lbmQgY2Fyb3VzZWwtZGFyay12YXJpYWJsZXNcblxuXG4vLyBTcGlubmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci12YXJpYWJsZXNcbiRzcGlubmVyLXdpZHRoOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogIC0uMTI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAgIC4yNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAuNzVzICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLXZhcmlhYmxlc1xuXG5cbi8vIENsb3NlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjbG9zZS12YXJpYWJsZXNcbiRidG4tY2xvc2Utd2lkdGg6ICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1oZWlnaHQ6ICAgICAgICAgICAkYnRuLWNsb3NlLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1wYWRkaW5nLXg6ICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtcGFkZGluZy15OiAgICAgICAgJGJ0bi1jbG9zZS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWNvbG9yOiAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRidG4tY2xvc2UtYmc6ICAgICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGJ0bi1jbG9zZS1jb2xvcn0nPjxwYXRoIGQ9J00uMjkzLjI5M2ExIDEgMCAwIDEgMS40MTQgMEw4IDYuNTg2IDE0LjI5My4yOTNhMSAxIDAgMSAxIDEuNDE0IDEuNDE0TDkuNDE0IDhsNi4yOTMgNi4yOTNhMSAxIDAgMCAxLTEuNDE0IDEuNDE0TDggOS40MTRsLTYuMjkzIDYuMjkzYTEgMSAwIDAgMS0xLjQxNC0xLjQxNEw2LjU4NiA4IC4yOTMgMS43MDdhMSAxIDAgMCAxIDAtMS40MTQnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLXNoYWRvdzogICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLW9wYWNpdHk6ICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAgICAuNzUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHk6ICAgIDEgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZmlsdGVyOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRidG4tY2xvc2Utd2hpdGUtZmlsdGVyOiAgICAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDAlKSBicmlnaHRuZXNzKDIwMCUpICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuNFxuLy8gc2Nzcy1kb2NzLWVuZCBjbG9zZS12YXJpYWJsZXNcblxuXG4vLyBPZmZjYW52YXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG9mZmNhbnZhcy12YXJpYWJsZXNcbiRvZmZjYW52YXMtcGFkZGluZy15OiAgICAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGg6ICAgICAgICA0MDBweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0OiAgICAgICAgIDMwdmggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAuM3MgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci13aWR0aDogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJnLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWNvbG9yOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYWNrZHJvcC1iZzogICAgICAgICAgICAgJG1vZGFsLWJhY2tkcm9wLWJnICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG9mZmNhbnZhcy12YXJpYWJsZXNcblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4xODc1cmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCByZW1vdmluZyBpbiB2NlxuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG5AaW1wb3J0IFwidmFyaWFibGVzLWRhcmtcIjsgLy8gVE9ETzogY2FuIGJlIHJlbW92ZWQgc2FmZWx5IGluIHY2LCBvbmx5IGhlcmUgdG8gYXZvaWQgYnJlYWtpbmcgY2hhbmdlcyBpbiB2NS4zXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlcGxhY2UgbmVnYXRpdmUgdmFsdWVzIHdpdGggMFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XG4gICRyZXR1cm46ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHJhZGl1cyB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItcmFkaXVzLW1peGluc1xuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci1yYWRpdXMtbWl4aW5zXG4iLCIvL1xuLy8gSGVhZGluZ3Ncbi8vXG4uaDEge1xuICBAZXh0ZW5kIGgxO1xufVxuXG4uaDIge1xuICBAZXh0ZW5kIGgyO1xufVxuXG4uaDMge1xuICBAZXh0ZW5kIGgzO1xufVxuXG4uaDQge1xuICBAZXh0ZW5kIGg0O1xufVxuXG4uaDUge1xuICBAZXh0ZW5kIGg1O1xufVxuXG4uaDYge1xuICBAZXh0ZW5kIGg2O1xufVxuXG5cbi5sZWFkIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWFkLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcbn1cblxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcbkBlYWNoICRkaXNwbGF5LCAkZm9udC1zaXplIGluICRkaXNwbGF5LWZvbnQtc2l6ZXMge1xuICAuZGlzcGxheS0jeyRkaXNwbGF5fSB7XG4gICAgZm9udC1mYW1pbHk6ICRkaXNwbGF5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRkaXNwbGF5LWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5LWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gIH1cbn1cblxuLy9cbi8vIEVtcGhhc2lzXG4vL1xuLnNtYWxsIHtcbiAgQGV4dGVuZCBzbWFsbDtcbn1cblxuLm1hcmsge1xuICBAZXh0ZW5kIG1hcms7XG59XG5cbi8vXG4vLyBMaXN0c1xuLy9cblxuLmxpc3QtdW5zdHlsZWQge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG5cbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXG4ubGlzdC1pbmxpbmUge1xuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XG59XG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQnVpbGRzIG9uIGBhYmJyYFxuLmluaXRpYWxpc20ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGluaXRpYWxpc20tZm9udC1zaXplKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbi5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogLSRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBtYXJnaW4tYm90dG9tOiAkYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemUpO1xuICBjb2xvcjogJGJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIwMTRcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG4iLCIvLyBMaXN0c1xuXG4vLyBVbnN0eWxlZCBrZWVwcyBsaXN0IGl0ZW1zIGJsb2NrIGxldmVsLCBqdXN0IHJlbW92ZXMgZGVmYXVsdCBicm93c2VyIHBhZGRpbmcgYW5kIGxpc3Qtc3R5bGVcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXG4vL1xuLy8gVGhpcyBpcyBwdXJwb3NlZnVsbHkgb3B0LWluIHZpYSBhbiBleHBsaWNpdCBjbGFzcyByYXRoZXIgdGhhbiBiZWluZyB0aGUgZGVmYXVsdCBmb3IgYWxsIGA8aW1nPmBzLlxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXCJpbWFnZXMgYXJlIHJlc3BvbnNpdmUgYnkgZGVmYXVsdFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2Mixcbi8vIGFuZCBhYmFuZG9uZWQgaXQgaW4gQm9vdHN0cmFwIHYzIGJlY2F1c2UgaXQgYnJlYWtzIGxvdHMgb2YgdGhpcmQtcGFydHkgd2lkZ2V0cyAoaW5jbHVkaW5nIEdvb2dsZSBNYXBzKVxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XG4uaW1nLWZsdWlkIHtcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXItd2lkdGggc29saWQgJHRodW1ibmFpbC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xuXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbi5maWd1cmUge1xuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZpZ3VyZS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyICogLjU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZmlndXJlLWNhcHRpb24tY29sb3I7XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG4iLCIvLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG5AaWYgJGVuYWJsZS1jb250YWluZXItY2xhc3NlcyB7XG4gIC8vIFNpbmdsZSBjb250YWluZXIgY2xhc3Mgd2l0aCBicmVha3BvaW50IG1heC13aWR0aHNcbiAgLmNvbnRhaW5lcixcbiAgLy8gMTAwJSB3aWRlIGNvbnRhaW5lciBhdCBhbGwgYnJlYWtwb2ludHNcbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgY29udGFpbmVycyB0aGF0IGFyZSAxMDAlIHdpZGUgdW50aWwgYSBicmVha3BvaW50XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xuICAgIC5jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgQGV4dGVuZCAuY29udGFpbmVyLWZsdWlkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xuICAgICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgICAgfVxuXG4gICAgICAvLyBFeHRlbmQgZWFjaCBicmVha3BvaW50IHdoaWNoIGlzIHNtYWxsZXIgb3IgZXF1YWwgdG8gdGhlIGN1cnJlbnQgYnJlYWtwb2ludFxuICAgICAgJGV4dGVuZC1icmVha3BvaW50OiB0cnVlO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHdpZHRoIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAgICAgQGlmICgkZXh0ZW5kLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRuYW1lLCAkZ3JpZC1icmVha3BvaW50cyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIE9uY2UgdGhlIGN1cnJlbnQgYnJlYWtwb2ludCBpcyByZWFjaGVkLCBzdG9wIGV4dGVuZGluZ1xuICAgICAgICAgIEBpZiAoJGJyZWFrcG9pbnQgPT0gJG5hbWUpIHtcbiAgICAgICAgICAgICRleHRlbmQtYnJlYWtwb2ludDogZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBDb250YWluZXIgbWl4aW5zXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkY29udGFpbmVyLXBhZGRpbmcteCkge1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skZ3V0dGVyfTtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXk6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwgeHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmIG5vdCAkbiB7XG4gICAgQGVycm9yIFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFwiO1xuICB9XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIHJlZHVjZWQgYnkgMC4wMnB4IHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZlxuLy8gYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChtZCwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1heCBhbmQgJG1heCA+IDAsICRtYXggLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46ICBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogIGJyZWFrcG9pbnQtbWF4KCRuZXh0LCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiB5b3VyIGNvbHVtbnMuXG5cbjpyb290IHtcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgLS0jeyRwcmVmaXh9YnJlYWtwb2ludC0jeyRuYW1lfTogI3skdmFsdWV9O1xuICB9XG59XG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG5cbiAgICA+ICoge1xuICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtcmVhZHkoKTtcbiAgICB9XG4gIH1cbn1cblxuQGlmICRlbmFibGUtY3NzZ3JpZCB7XG4gIC5ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KHZhcigtLSN7JHByZWZpeH1yb3dzLCAxKSwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCh2YXIoLS0jeyRwcmVmaXh9Y29sdW1ucywgI3skZ3JpZC1jb2x1bW5zfSksIDFmcik7XG4gICAgZ2FwOiB2YXIoLS0jeyRwcmVmaXh9Z2FwLCAjeyRncmlkLWd1dHRlci13aWR0aH0pO1xuXG4gICAgQGluY2x1ZGUgbWFrZS1jc3NncmlkKCk7XG4gIH1cbn1cblxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucygpO1xufVxuIiwiLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JGd1dHRlcn07XG4gIC0tI3skcHJlZml4fWd1dHRlci15OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC8vIFRPRE86IFJldmlzaXQgY2FsYyBvcmRlciBhZnRlciBodHRwczovL2dpdGh1Yi5jb20vcmVhY3QtYm9vdHN0cmFwL3JlYWN0LWJvb3RzdHJhcC9pc3N1ZXMvNjAzOSBpcyBmaXhlZFxuICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWd1dHRlci15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fWd1dHRlci14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgpIHtcbiAgLy8gQWRkIGJveCBzaXppbmcgaWYgb25seSB0aGUgZ3JpZCBpcyBsb2FkZWRcbiAgYm94LXNpemluZzogaWYodmFyaWFibGUtZXhpc3RzKGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcpIGFuZCAkaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZywgYm9yZGVyLWJveCwgbnVsbCk7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSBzZXQgdGhlIHdpZHRoXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFByZXZlbnQgYC5jb2wtYXV0b2AsIGAuY29sYCAoJiByZXNwb25zaXZlIHZhcmlhbnRzKSBmcm9tIGJyZWFraW5nIG91dCB0aGUgZ3JpZFxuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tdG9wOiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXkpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemU6IGZhbHNlLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBAaWYgJHNpemUge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpKTtcblxuICB9IEBlbHNlIHtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogZGl2aWRlKCRzaXplLCAkY29sdW1ucyk7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyIG9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoMSwgJGNvdW50KSk7XG4gIH1cbn1cblxuLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXg6IDEgMCAwO1xuICAgICAgfVxuXG4gICAgICAucm93LWNvbHMjeyRpbmZpeH0tYXV0byA+ICoge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZ3JpZC1yb3ctY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcbiAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcm93LWNvbHMoJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEd1dHRlcnNcbiAgICAgIC8vXG4gICAgICAvLyBNYWtlIHVzZSBvZiBgLmctKmAsIGAuZ3gtKmAgb3IgYC5neS0qYCB1dGlsaXRpZXMgdG8gY2hhbmdlIHNwYWNpbmcgYmV0d2VlbiB0aGUgY29sdW1ucy5cbiAgICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkZ3V0dGVycyB7XG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neCN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skdmFsdWV9O1xuICAgICAgICB9XG5cbiAgICAgICAgLmcjeyRpbmZpeH0tI3ska2V5fSxcbiAgICAgICAgLmd5I3skaW5maXh9LSN7JGtleX0ge1xuICAgICAgICAgIC0tI3skcHJlZml4fWd1dHRlci15OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY3NzZ3JpZCgkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuZy1jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0YXJ0IHdpdGggYDFgIGJlY2F1c2UgYDBgIGlzIGFuIGludmFsaWQgdmFsdWUuXG4gICAgICAgIC8vIEVuZHMgd2l0aCBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGUuXG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIC5nLXN0YXJ0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNpYyBCb290c3RyYXAgdGFibGVcbi8vXG5cbi50YWJsZSB7XG4gIC8vIFJlc2V0IG5lZWRlZCBmb3IgbmVzdGluZyB0YWJsZXNcbiAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3ItdHlwZTogaW5pdGlhbDtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZTogaW5pdGlhbDtcbiAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3Itc3RhdGU6IGluaXRpYWw7XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlOiBpbml0aWFsO1xuICAvLyBFbmQgb2YgcmVzZXRcbiAgLS0jeyRwcmVmaXh9dGFibGUtY29sb3I6ICN7JHRhYmxlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmc6ICN7JHRhYmxlLWJnfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYm9yZGVyLWNvbG9yOiAjeyR0YWJsZS1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1hY2NlbnQtYmc6ICN7JHRhYmxlLWFjY2VudC1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtY29sb3I6ICN7JHRhYmxlLXN0cmlwZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyR0YWJsZS1zdHJpcGVkLWJnfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yOiAjeyR0YWJsZS1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtYmc6ICN7JHRhYmxlLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yOiAjeyR0YWJsZS1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnOiAjeyR0YWJsZS1ob3Zlci1iZ307XG5cbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIHZlcnRpY2FsLWFsaWduOiAkdGFibGUtY2VsbC12ZXJ0aWNhbC1hbGlnbjtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYm9yZGVyLWNvbG9yKTtcblxuICAvLyBUYXJnZXQgdGggJiB0ZFxuICAvLyBXZSBuZWVkIHRoZSBjaGlsZCBjb21iaW5hdG9yIHRvIHByZXZlbnQgc3R5bGVzIGxlYWtpbmcgdG8gbmVzdGVkIHRhYmxlcyB3aGljaCBkb2Vzbid0IGhhdmUgYSBgLnRhYmxlYCBjbGFzcy5cbiAgLy8gV2UgdXNlIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3JzIGhlcmUgdG8gc2ltcGxpZnkgdGhlIHNlbGVjdG9yIChlbHNlIHdlIHdvdWxkIG5lZWQgNiBkaWZmZXJlbnQgc2VsZWN0b3JzKS5cbiAgLy8gQW5vdGhlciBhZHZhbnRhZ2UgaXMgdGhhdCB0aGlzIGdlbmVyYXRlcyBsZXNzIGNvZGUgYW5kIG1ha2VzIHRoZSBzZWxlY3RvciBsZXNzIHNwZWNpZmljIG1ha2luZyBpdCBlYXNpZXIgdG8gb3ZlcnJpZGUuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXkgJHRhYmxlLWNlbGwtcGFkZGluZy14O1xuICAgIC8vIEZvbGxvd2luZyB0aGUgcHJlY2VwdCBvZiBjYXNjYWRlczogaHR0cHM6Ly9jb2RlcGVuLmlvL21pcmlhbXN1emFubmUvZnVsbC92WU5nb2RiXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZSwgdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1jb2xvcikpKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYmcpO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHZhcigtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZSwgdmFyKC0tI3skcHJlZml4fXRhYmxlLWJnLXR5cGUsIHZhcigtLSN7JHByZWZpeH10YWJsZS1hY2NlbnQtYmcpKSk7XG4gIH1cblxuICA+IHRib2R5IHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbiAgfVxuXG4gID4gdGhlYWQge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIH1cbn1cblxuLnRhYmxlLWdyb3VwLWRpdmlkZXIge1xuICBib3JkZXItdG9wOiBjYWxjKCN7JHRhYmxlLWJvcmRlci13aWR0aH0gKiAyKSBzb2xpZCAkdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG4vL1xuLy8gQ2hhbmdlIHBsYWNlbWVudCBvZiBjYXB0aW9ucyB3aXRoIGEgY2xhc3Ncbi8vXG5cbi5jYXB0aW9uLXRvcCB7XG4gIGNhcHRpb24tc2lkZTogdG9wO1xufVxuXG5cbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy15LXNtICR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG4vL1xuLy8gV2hlbiBib3JkZXJzIGFyZSBhZGRlZCBvbiBhbGwgc2lkZXMgb2YgdGhlIGNlbGxzLCB0aGUgY29ybmVycyBjYW4gcmVuZGVyIG9kZCB3aGVuXG4vLyB0aGVzZSBib3JkZXJzIGRvIG5vdCBoYXZlIHRoZSBzYW1lIGNvbG9yIG9yIGlmIHRoZXkgYXJlIHNlbWktdHJhbnNwYXJlbnQuXG4vLyBUaGVyZWZvcmUgd2UgYWRkIHRvcCBhbmQgYm9yZGVyIGJvdHRvbXMgdG8gdGhlIGB0cmBzIGFuZCBsZWZ0IGFuZCByaWdodCBib3JkZXJzXG4vLyB0byB0aGUgYHRkYHMgb3IgYHRoYHNcblxuLnRhYmxlLWJvcmRlcmVkIHtcbiAgPiA6bm90KGNhcHRpb24pID4gKiB7XG4gICAgYm9yZGVyLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoIDA7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICAgID4gKiB7XG4gICAgICBib3JkZXItd2lkdGg6IDAgJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWJvcmRlcmxlc3Mge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgfVxuXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICB9XG59XG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLy8gRm9yIHJvd3Ncbi50YWJsZS1zdHJpcGVkIHtcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSA+ICoge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gIH1cbn1cblxuLy8gRm9yIGNvbHVtbnNcbi50YWJsZS1zdHJpcGVkLWNvbHVtbnMge1xuICA+IDpub3QoY2FwdGlvbikgPiB0ciA+IDpudGgtY2hpbGQoI3skdGFibGUtc3RyaXBlZC1jb2x1bW5zLW9yZGVyfSkge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXR5cGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XG4gIH1cbn1cblxuLy8gQWN0aXZlIHRhYmxlXG4vL1xuLy8gVGhlIGAudGFibGUtYWN0aXZlYCBjbGFzcyBjYW4gYmUgYWRkZWQgdG8gaGlnaGxpZ2h0IHJvd3Mgb3IgY2VsbHNcblxuLnRhYmxlLWFjdGl2ZSB7XG4gIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGU6IHZhcigtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtYmcpO1xufVxuXG4vLyBIb3ZlciBlZmZlY3Rcbi8vXG4vLyBQbGFjZWQgaGVyZSBzaW5jZSBpdCBoYXMgdG8gY29tZSBhZnRlciB0aGUgcG90ZW50aWFsIHplYnJhIHN0cmlwaW5nXG5cbi50YWJsZS1ob3ZlciB7XG4gID4gdGJvZHkgPiB0cjpob3ZlciA+ICoge1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3IpO1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmcpO1xuICB9XG59XG5cblxuLy8gVGFibGUgdmFyaWFudHNcbi8vXG4vLyBUYWJsZSB2YXJpYW50cyBzZXQgdGhlIHRhYmxlIGNlbGwgYmFja2dyb3VuZHMsIGJvcmRlciBjb2xvcnNcbi8vIGFuZCB0aGUgY29sb3JzIG9mIHRoZSBzdHJpcGVkLCBob3ZlcmVkICYgYWN0aXZlIHRhYmxlc1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGFibGUtdmFyaWFudHMge1xuICBAaW5jbHVkZSB0YWJsZS12YXJpYW50KCRjb2xvciwgJHZhbHVlKTtcbn1cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi8vXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC50YWJsZS1yZXNwb25zaXZlLSpgIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBzY3JlZW5cbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAudGFibGUtcmVzcG9uc2l2ZSN7JGluZml4fSB7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhbnRcbkBtaXhpbiB0YWJsZS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgJGNvbG9yOiBjb2xvci1jb250cmFzdChvcGFxdWUoJGJvZHktYmcsICRiYWNrZ3JvdW5kKSk7XG4gICAgJGhvdmVyLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtaG92ZXItYmctZmFjdG9yKSk7XG4gICAgJHN0cmlwZWQtYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikpO1xuICAgICRhY3RpdmUtYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSk7XG4gICAgJHRhYmxlLWJvcmRlci1jb2xvcjogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWJvcmRlci1mYWN0b3IpKTtcblxuICAgIC0tI3skcHJlZml4fXRhYmxlLWNvbG9yOiAjeyRjb2xvcn07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmc6ICN7JGJhY2tncm91bmR9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcjogI3skdGFibGUtYm9yZGVyLWNvbG9yfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyRzdHJpcGVkLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRzdHJpcGVkLWJnKX07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmd9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkYWN0aXZlLWJnKX07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmc6ICN7JGhvdmVyLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkaG92ZXItYmcpfTtcblxuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3IpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWJvcmRlci1jb2xvcik7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFudFxuIiwiLy9cbi8vIExhYmVsc1xuLy9cblxuLmZvcm0tbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1sYWJlbC1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tbGFiZWwtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXG4uY29sLWZvcm0tbGFiZWwge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBmb250LXN0eWxlOiAkZm9ybS1sYWJlbC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtc20ge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG59XG4iLCIvL1xuLy8gRm9ybSB0ZXh0XG4vL1xuXG4uZm9ybS10ZXh0IHtcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tdGV4dC1mb250LXNpemUpO1xuICBmb250LXN0eWxlOiAkZm9ybS10ZXh0LWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS10ZXh0LWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGZvcm0tdGV4dC1jb2xvcjtcbn1cbiIsIi8vXG4vLyBHZW5lcmFsIGZvcm0gY29udHJvbHMgKHBsdXMgYSBmZXcgc3BlY2lmaWMgaGlnaC1sZXZlbCBpbnRlcnZlbnRpb25zKVxuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IC8vIEZpeCBhcHBlYXJhbmNlIGZvciBkYXRlIGlucHV0cyBpbiBTYWZhcmlcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcblxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMsIDApO1xuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcblxuICAmW3R5cGU9XCJmaWxlXCJdIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvLyBwcmV2ZW50IHBzZXVkbyBlbGVtZW50IGJ1dHRvbiBvdmVybGFwXG5cbiAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSB7XG4gICAgLy8gT24gQW5kcm9pZCBDaHJvbWUsIGZvcm0tY29udHJvbCdzIFwid2lkdGg6IDEwMCVcIiBtYWtlcyB0aGUgaW5wdXQgd2lkdGggdG9vIHNtYWxsXG4gICAgLy8gVGVzdGVkIHVuZGVyIEFuZHJvaWQgMTEgLyBDaHJvbWUgODksIEFuZHJvaWQgMTIgLyBDaHJvbWUgMTAwLCBBbmRyb2lkIDEzIC8gQ2hyb21lIDEwOVxuICAgIC8vXG4gICAgLy8gT24gaU9TIFNhZmFyaSwgZm9ybS1jb250cm9sJ3MgXCJhcHBlYXJhbmNlOiBub25lXCIgKyBcIndpZHRoOiAxMDAlXCIgbWFrZXMgdGhlIGlucHV0IHdpZHRoIHRvbyBzbWFsbFxuICAgIC8vIFRlc3RlZCB1bmRlciBpT1MgMTYuMiAvIFNhZmFyaSAxNi4yXG4gICAgbWluLXdpZHRoOiA4NXB4OyAvLyBTZWVtcyB0byBiZSBhIGdvb2QgbWluaW11bSBzYWZlIHdpZHRoXG5cbiAgICAvLyBBZGQgc29tZSBoZWlnaHQgdG8gZGF0ZSBpbnB1dHMgb24gaU9TXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yMzMwN1xuICAgIC8vIFRPRE86IHdlIGNhbiByZW1vdmUgdGhpcyB3b3JrYXJvdW5kIG9uY2UgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODk1OSBpcyByZXNvbHZlZFxuICAgIC8vIE11bHRpcGx5IGxpbmUtaGVpZ2h0IGJ5IDFlbSBpZiBpdCBoYXMgbm8gdW5pdFxuICAgIGhlaWdodDogaWYodW5pdCgkaW5wdXQtbGluZS1oZWlnaHQpID09IFwiXCIsICRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LWxpbmUtaGVpZ2h0KTtcblxuICAgIC8vIEFuZHJvaWQgQ2hyb21lIHR5cGU9XCJkYXRlXCIgaXMgdGFsbGVyIHRoYW4gdGhlIG90aGVyIGlucHV0c1xuICAgIC8vIGJlY2F1c2Ugb2YgXCJtYXJnaW46IDFweCAyNHB4IDFweCA0cHhcIiBpbnNpZGUgdGhlIHNoYWRvdyBET01cbiAgICAvLyBUZXN0ZWQgdW5kZXIgQW5kcm9pZCAxMSAvIENocm9tZSA4OSwgQW5kcm9pZCAxMiAvIENocm9tZSAxMDAsIEFuZHJvaWQgMTMgLyBDaHJvbWUgMTA5XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gUHJldmVudCBleGNlc3NpdmUgZGF0ZSBpbnB1dCBoZWlnaHQgaW4gV2Via2l0XG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMzQ0MzNcbiAgJjo6LXdlYmtpdC1kYXRldGltZS1lZGl0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBGaWxlIGlucHV0IGJ1dHRvbnMgdGhlbWluZ1xuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15KSAoLSRpbnB1dC1wYWRkaW5nLXgpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14O1xuICAgIGNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1maWxlLWJ1dHRvbi1iZyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuICB9XG5cbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZztcbiAgfVxufVxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1wbGFpbnRleHQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggMDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG5cbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1zbSkgKC0kaW5wdXQtcGFkZGluZy14LXNtKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgfVxufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xuXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktbGcpICgtJGlucHV0LXBhZGRpbmcteC1sZyk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIH1cbn1cblxuLy8gTWFrZSBzdXJlIHRleHRhcmVhcyBkb24ndCBzaHJpbmsgdG9vIG11Y2ggd2hlbiByZXNpemVkXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yOTEyNFxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG50ZXh0YXJlYSB7XG4gICYuZm9ybS1jb250cm9sIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20ge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgfVxufVxuLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLmZvcm0tY29udHJvbC1jb2xvciB7XG4gIHdpZHRoOiAkZm9ybS1jb2xvci13aWR0aDtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15O1xuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmOjotbW96LWNvbG9yLXN3YXRjaCB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmLmZvcm0tY29udHJvbC1zbSB7IGhlaWdodDogJGlucHV0LWhlaWdodC1zbTsgfVxuICAmLmZvcm0tY29udHJvbC1sZyB7IGhlaWdodDogJGlucHV0LWhlaWdodC1sZzsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgfVxuXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XG4gICAgQGVhY2ggJHZhbHVlIGluICR0cmFuc2l0aW9uIHtcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XG4gICAgICAgIEB3YXJuIFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24gYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LWJnLW1peGluXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yOiBudWxsKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtYmctbWl4aW5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LW1peGluc1xuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IG51bGwsICRlbmQtcGVyY2VudDogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG59XG5cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBncmFkaWVudC1taXhpbnNcbiIsIi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG5cbi5mb3JtLXNlbGVjdCB7XG4gIC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWltZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXNlbGVjdC1pbmRpY2F0b3IpfTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICRmb3JtLXNlbGVjdC1wYWRkaW5nLXkgJGZvcm0tc2VsZWN0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRmb3JtLXNlbGVjdC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGZvcm0tc2VsZWN0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tc2VsZWN0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tc2VsZWN0LWNvbG9yO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1zZWxlY3QtYmc7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pbWcpLCB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaWNvbiwgbm9uZSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXNlbGVjdC1iZy1wb3NpdGlvbjtcbiAgYmFja2dyb3VuZC1zaXplOiAkZm9ybS1zZWxlY3QtYmctc2l6ZTtcbiAgYm9yZGVyOiAkZm9ybS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkICRmb3JtLXNlbGVjdC1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMsIDApO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXNlbGVjdC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1zZWxlY3QtdHJhbnNpdGlvbik7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXNlbGVjdC1ib3gtc2hhZG93LCAkZm9ybS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkZm9ybS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmW211bHRpcGxlXSxcbiAgJltzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gUmVtb3ZlIG91dGxpbmUgZnJvbSBzZWxlY3QgYm94IGluIEZGXG4gICY6LW1vei1mb2N1c3Jpbmcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDAgJGZvcm0tc2VsZWN0LWNvbG9yO1xuICB9XG59XG5cbi5mb3JtLXNlbGVjdC1zbSB7XG4gIHBhZGRpbmctdG9wOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1zZWxlY3QtbGcge1xuICBwYWRkaW5nLXRvcDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZztcbiAgcGFkZGluZy1ib3R0b206ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUtbGcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmZvcm0tc2VsZWN0IHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWltZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItZGFyayl9O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENoZWNrL3JhZGlvXG4vL1xuXG4uZm9ybS1jaGVjayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9ybS1jaGVjay1taW4taGVpZ2h0O1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b207XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2stcmV2ZXJzZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQgKiAtMTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmc6ICN7JGZvcm0tY2hlY2staW5wdXQtYmd9O1xuXG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIGhlaWdodDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtYmFzZSAtICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoKSAqIC41OyAvLyBsaW5lLWhlaWdodCBtaW51cyBjaGVjayBoZWlnaHRcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmcpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBib3JkZXI6ICRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjtcbiAgcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDsgLy8gS2VlcCB0aGVtZWQgYXBwZWFyYW5jZSBmb3IgcHJpbnRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1jaGVjay10cmFuc2l0aW9uKTtcblxuICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBmaWx0ZXI6ICRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJvcmRlcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAmOmNoZWNrZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjtcblxuICAgICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2UpfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZSl9LCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlKX07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJlt0eXBlPVwiY2hlY2tib3hcIl06aW5kZXRlcm1pbmF0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZSl9O1xuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGZpbHRlcjogbm9uZTtcbiAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5O1xuICB9XG5cbiAgLy8gVXNlIGRpc2FibGVkIGF0dHJpYnV0ZSBpbiBhZGRpdGlvbiBvZiA6ZGlzYWJsZWQgcHNldWRvLWNsYXNzXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIGNvbG9yOiAkZm9ybS1jaGVjay1sYWJlbC1jb2xvcjtcbiAgY3Vyc29yOiAkZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I7XG59XG5cbi8vXG4vLyBTd2l0Y2hcbi8vXG5cbi5mb3JtLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ7XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWJnLWltYWdlKX07XG5cbiAgICB3aWR0aDogJGZvcm0tc3dpdGNoLXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydCAqIC0xO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zd2l0Y2gtYm9yZGVyLXJhZGl1cywgMCk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1zd2l0Y2gtdHJhbnNpdGlvbik7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlKX07XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLXBvc2l0aW9uO1xuXG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZSl9O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZm9ybS1jaGVjay1yZXZlcnNlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kO1xufVxuXG4uYnRuLWNoZWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgKyAuYnRuIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgZmlsdGVyOiBub25lO1xuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dDpub3QoOmNoZWNrZWQpOm5vdCg6Zm9jdXMpIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWJnLWltYWdlLWRhcmspfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmZvcm0tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhZGQoJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0LCAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogKCRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodCAtICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCkgKiAuNTsgLy8gV2Via2l0IHNwZWNpZmljXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tcmFuZ2UtdGh1bWItdHJhbnNpdGlvbik7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tcmFuZ2UtdGh1bWItdHJhbnNpdGlvbik7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG4iLCIuZm9ybS1mbG9hdGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICBoZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWhlaWdodDtcbiAgICBtaW4taGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgPiBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgLy8gYWxsb3cgdGV4dGFyZWFzXG4gICAgcGFkZGluZzogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yLXJnYiksICN7JGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eX0pO1xuICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyBSZXF1aXJlZCBmb3IgYWxpZ25pbmcgbGFiZWwncyB0ZXh0IHdpdGggdGhlIGlucHV0IGFzIGl0IGFmZmVjdHMgaW5uZXIgYm94IG1vZGVsXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tZmxvYXRpbmctdHJhbnNpdGlvbik7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgIHBhZGRpbmc6ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteSAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICAgIH1cbiAgICAvLyBEdXBsaWNhdGVkIGJlY2F1c2UgYDotd2Via2l0LWF1dG9maWxsYCBpbnZhbGlkYXRlcyBvdGhlciBzZWxlY3RvcnMgd2hlbiBncm91cGVkXG4gICAgJjotd2Via2l0LWF1dG9maWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xuICAgIH1cbiAgfVxuXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xuICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gID4gLmZvcm0tY29udHJvbDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuZm9ybS1zZWxlY3Qge1xuICAgIH4gbGFiZWwge1xuICAgICAgdHJhbnNmb3JtOiAkZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm07XG4gICAgfVxuICB9XG4gIC8vIER1cGxpY2F0ZWQgYmVjYXVzZSBgOi13ZWJraXQtYXV0b2ZpbGxgIGludmFsaWRhdGVzIG90aGVyIHNlbGVjdG9ycyB3aGVuIGdyb3VwZWRcbiAgPiAuZm9ybS1jb250cm9sOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgIH4gbGFiZWwge1xuICAgICAgdHJhbnNmb3JtOiAkZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm07XG4gICAgfVxuICB9XG4gID4gdGV4dGFyZWE6Zm9jdXMsXG4gID4gdGV4dGFyZWE6bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xuICAgIH4gbGFiZWw6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGluc2V0OiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgKCRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteCAqIC41KTtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgaGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1sYWJlbC1oZWlnaHQ7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG4gID4gdGV4dGFyZWE6ZGlzYWJsZWQgfiBsYWJlbDo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgIH4gbGFiZWwge1xuICAgICAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7IC8vIFJlcXVpcmVkIHRvIHByb3Blcmx5IHBvc2l0aW9uIGxhYmVsIHRleHQgLSBhcyBleHBsYWluZWQgYWJvdmVcbiAgICB9XG4gIH1cblxuICA+IDpkaXNhYmxlZCB+IGxhYmVsLFxuICA+IC5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQgfiBsYWJlbCB7IC8vIFJlcXVpcmVkIGZvciBgLmZvcm0tY29udHJvbGBzIGJlY2F1c2Ugb2Ygc3BlY2lmaWNpdHlcbiAgICBjb2xvcjogJGZvcm0tZmxvYXRpbmctbGFiZWwtZGlzYWJsZWQtY29sb3I7XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1zZWxlY3QsXG4gID4gLmZvcm0tZmxvYXRpbmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHdpZHRoOiAxJTtcbiAgICBtaW4td2lkdGg6IDA7IC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM2MjQ3MTQwL3doeS1kb250LWZsZXgtaXRlbXMtc2hyaW5rLXBhc3QtY29udGVudC1zaXplXG4gIH1cblxuICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBmb3JtIGNvbnRyb2wgdG8gdGhlIHRvcCBvZiBzdXJyb3VuZGluZyBlbGVtZW50c1xuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gID4gLmZvcm0tc2VsZWN0OmZvY3VzLFxuICA+IC5mb3JtLWZsb2F0aW5nOmZvY3VzLXdpdGhpbiB7XG4gICAgei1pbmRleDogNTtcbiAgfVxuXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcbiAgLy8gYXMgb3VyIGlucHV0cy5cbiAgLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDU7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVGV4dHVhbCBhZGRvbnNcbi8vXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcbi8vIHRvIHByZXBlbmQgb3IgYXBwZW5kIHRvIGFuIGlucHV0LlxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXkgJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpOyAvLyBNYXRjaCBpbnB1dHNcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG59XG5cblxuLy8gUm91bmRlZCBjb3JuZXJzXG4vL1xuLy8gVGhlc2UgcnVsZXNldHMgbXVzdCBjb21lIGFmdGVyIHRoZSBzaXppbmcgb25lcyB0byBwcm9wZXJseSBvdmVycmlkZSBzbSBhbmQgbGdcbi8vIGJvcmRlci1yYWRpdXMgdmFsdWVzIHdoZW4gZXh0ZW5kaW5nLiBUaGV5J3JlIG1vcmUgc3BlY2lmaWMgdGhhbiB3ZSdkIGxpa2Vcbi8vIHdpdGggdGhlIGAuaW5wdXQtZ3JvdXAgPmAgcGFydCwgYnV0IHdpdGhvdXQgaXQsIHdlIGNhbm5vdCBvdmVycmlkZSB0aGUgc2l6aW5nLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmlucHV0LWdyb3VwIHtcbiAgJjpub3QoLmhhcy12YWxpZGF0aW9uKSB7XG4gICAgPiA6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KTpub3QoLmZvcm0tZmxvYXRpbmcpLFxuICAgID4gLmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuICsgMyksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmxhc3QtY2hpbGQpID4gLmZvcm0tY29udHJvbCxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6bGFzdC1jaGlsZCkgPiAuZm9ybS1zZWxlY3Qge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgJi5oYXMtdmFsaWRhdGlvbiB7XG4gICAgPiA6bnRoLWxhc3QtY2hpbGQobiArIDMpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoLmRyb3Bkb3duLW1lbnUpOm5vdCguZm9ybS1mbG9hdGluZyksXG4gICAgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4gKyA0KSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5mb3JtLWNvbnRyb2wsXG4gICAgPiAuZm9ybS1mbG9hdGluZzpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuZm9ybS1zZWxlY3Qge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgJHZhbGlkYXRpb24tbWVzc2FnZXM6IFwiXCI7XG4gIEBlYWNoICRzdGF0ZSBpbiBtYXAta2V5cygkZm9ybS12YWxpZGF0aW9uLXN0YXRlcykge1xuICAgICR2YWxpZGF0aW9uLW1lc3NhZ2VzOiAkdmFsaWRhdGlvbi1tZXNzYWdlcyArIFwiOm5vdCguXCIgKyB1bnF1b3RlKCRzdGF0ZSkgKyBcIi10b29sdGlwKVwiICsgXCI6bm90KC5cIiArIHVucXVvdGUoJHN0YXRlKSArIFwiLWZlZWRiYWNrKVwiO1xuICB9XG5cbiAgPiA6bm90KDpmaXJzdC1jaGlsZCk6bm90KC5kcm9wZG93bi1tZW51KSN7JHZhbGlkYXRpb24tbWVzc2FnZXN9IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtMSAqICN7JGlucHV0LWJvcmRlci13aWR0aH0pOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZpcnN0LWNoaWxkKSA+IC5mb3JtLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcbiAgfVxufVxuIiwiLy8gVGhpcyBtaXhpbiB1c2VzIGFuIGBpZigpYCB0ZWNobmlxdWUgdG8gYmUgY29tcGF0aWJsZSB3aXRoIERhcnQgU2Fzc1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzE4NzMjaXNzdWVjb21tZW50LTE1MjI5MzcyNSBmb3IgbW9yZSBkZXRhaWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tbWl4aW5zXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICBAaWYgKCRzdGF0ZSA9PSBcInZhbGlkXCIgb3IgJHN0YXRlID09IFwiaW52YWxpZFwiKSB7XG4gICAgLndhcy12YWxpZGF0ZWQgI3tpZigmLCBcIiZcIiwgXCJcIil9OiN7JHN0YXRlfSxcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZShcbiAgJHN0YXRlLFxuICAkY29sb3IsXG4gICRpY29uLFxuICAkdG9vbHRpcC1jb2xvcjogY29sb3ItY29udHJhc3QoJGNvbG9yKSxcbiAgJHRvb2x0aXAtYmctY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpLFxuICAkZm9jdXMtYm94LXNoYWRvdzogMCAwICRpbnB1dC1idG4tZm9jdXMtYmx1ciAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSksXG4gICRib3JkZXItY29sb3I6ICRjb2xvclxuKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBmb250LXN0eWxlOiAkZm9ybS1mZWVkYmFjay1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdywgJGZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgJjpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksXG4gICAgICAgICY6bm90KFttdWx0aXBsZV0pW3NpemU9XCIxXCJdIHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pY29uOiAje2VzY2FwZS1zdmcoJGljb24pfTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb24sICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemUsICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdywgJGZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sLWNvbG9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgd2lkdGg6IGFkZCgkZm9ybS1jb2xvci13aWR0aCwgJGlucHV0LWhlaWdodC1pbm5lcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG5cbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgICBtYXJnaW4tbGVmdDogLjVlbTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAge1xuICAgID4gLmZvcm0tY29udHJvbDpub3QoOmZvY3VzKSxcbiAgICA+IC5mb3JtLXNlbGVjdDpub3QoOmZvY3VzKSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICAgIEBpZiAkc3RhdGUgPT0gXCJ2YWxpZFwiIHtcbiAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICB9IEBlbHNlIGlmICRzdGF0ZSA9PSBcImludmFsaWRcIiB7XG4gICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tbWl4aW5zXG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXg6ICN7JGJ0bi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy15OiAjeyRidG4tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvbnQtZmFtaWx5OiAjeyRidG4tZm9udC1mYW1pbHl9O1xuICBAaW5jbHVkZSByZnMoJGJ0bi1mb250LXNpemUsIC0tI3skcHJlZml4fWJ0bi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1idG4tZm9udC13ZWlnaHQ6ICN7JGJ0bi1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fWJ0bi1saW5lLWhlaWdodDogI3skYnRuLWxpbmUtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRidG4tY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLXdpZHRoOiAjeyRidG4tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzOiAjeyRidG4tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdzogI3skYnRuLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtb3BhY2l0eTogI3skYnRuLWRpc2FibGVkLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdzogMCAwIDAgI3skYnRuLWZvY3VzLXdpZHRofSByZ2JhKHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYiksIC41KTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBidG4tY3NzLXZhcnNcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1idG4tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvbnQtZmFtaWx5KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1idG4tbGluZS1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogJGJ0bi13aGl0ZS1zcGFjZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBpZigkZW5hYmxlLWJ1dHRvbi1wb2ludGVycywgcG9pbnRlciwgbnVsbCk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1idG4tYmcpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5idG4tY2hlY2sgKyAmOmhvdmVyIHtcbiAgICAvLyBvdmVycmlkZSBmb3IgdGhlIGNoZWNrYm94L3JhZGlvIGJ1dHRvbnNcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJnKSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gICAgb3V0bGluZTogMDtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAuYnRuLWNoZWNrOmZvY3VzLXZpc2libGUgKyAmIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdyksIHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tY2hlY2s6Y2hlY2tlZCArICYsXG4gIDpub3QoLmJ0bi1jaGVjaykgKyAmOmFjdGl2ZSxcbiAgJjpmaXJzdC1jaGlsZDphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAmLnNob3cge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYmcpO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcik7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3cpKTtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5idG4tY2hlY2s6Y2hlY2tlZDpmb2N1cy12aXNpYmxlICsgJiB7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXQ6ZGlzYWJsZWQgJiB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmcpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLW9wYWNpdHkpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFudC1sb29wc1xuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tI3skY29sb3J9IHtcbiAgICBAaWYgJGNvbG9yID09IFwibGlnaHRcIiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudChcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICRob3Zlci1iYWNrZ3JvdW5kOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYmctc2hhZGUtYW1vdW50KSxcbiAgICAgICAgJGhvdmVyLWJvcmRlcjogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJhY2tncm91bmQ6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1ib3JkZXI6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudClcbiAgICAgICk7XG4gICAgfSBAZWxzZSBpZiAkY29sb3IgPT0gXCJkYXJrXCIge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkaG92ZXItYmFja2dyb3VuZDogdGludC1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYmctdGludC1hbW91bnQpLFxuICAgICAgICAkaG92ZXItYm9yZGVyOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJhY2tncm91bmQ6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYm9yZGVyOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50KVxuICAgICAgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5idG4tb3V0bGluZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1sb29wc1xuXG5cbi8vXG4vLyBMaW5rIGJ1dHRvbnNcbi8vXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICAtLSN7JHByZWZpeH1idG4tZm9udC13ZWlnaHQ6ICN7JGZvbnQtd2VpZ2h0LW5vcm1hbH07XG4gIC0tI3skcHJlZml4fWJ0bi1jb2xvcjogI3skYnRuLWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRidG4tbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRidG4tbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yOiAjeyRidG4tbGluay1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm94LXNoYWRvdzogMCAwIDAgIzAwMDsgLy8gQ2FuJ3QgdXNlIGBub25lYCBhcyBrZXl3b3JkIG5lZ2F0ZXMgYWxsIHZhbHVlcyB3aGVuIHVzZWQgd2l0aCBtdWx0aXBsZSBzaGFkb3dzXG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAjeyRidG4tbGluay1mb2N1cy1zaGFkb3ctcmdifTtcblxuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1jb2xvcik7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcik7XG4gIH1cblxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxufVxuXG5cbi8vXG4vLyBCdXR0b24gU2l6ZXNcbi8vXG5cbi5idG4tbGcge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRidG4tZm9udC1zaXplLWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkYnRuLWZvbnQtc2l6ZS1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXZhcmlhbnQtbWl4aW5cbkBtaXhpbiBidXR0b24tdmFyaWFudChcbiAgJGJhY2tncm91bmQsXG4gICRib3JkZXIsXG4gICRjb2xvcjogY29sb3ItY29udHJhc3QoJGJhY2tncm91bmQpLFxuICAkaG92ZXItYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCkpLFxuICAkaG92ZXItYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRob3Zlci1jb2xvcjogY29sb3ItY29udHJhc3QoJGhvdmVyLWJhY2tncm91bmQpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50KSksXG4gICRhY3RpdmUtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmFja2dyb3VuZCksXG4gICRkaXNhYmxlZC1iYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCxcbiAgJGRpc2FibGVkLWJvcmRlcjogJGJvcmRlcixcbiAgJGRpc2FibGVkLWNvbG9yOiBjb2xvci1jb250cmFzdCgkZGlzYWJsZWQtYmFja2dyb3VuZClcbikge1xuICAtLSN7JHByZWZpeH1idG4tY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1jb2xvcjogI3skYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skaG92ZXItYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3I6ICN7JGhvdmVyLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYihtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpKX07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGFjdGl2ZS1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdzogI3skYnRuLWFjdGl2ZS1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWNvbG9yOiAjeyRkaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZzogI3skZGlzYWJsZWQtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JGRpc2FibGVkLWJvcmRlcn07XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudChcbiAgJGNvbG9yLFxuICAkY29sb3ItaG92ZXI6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXG4gICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLFxuICAkYWN0aXZlLWJvcmRlcjogJGNvbG9yLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpXG4pIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWNvbG9yOiAjeyRjb2xvci1ob3Zlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2I6ICN7dG8tcmdiKCRjb2xvcil9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRhY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3c6ICN7JGJ0bi1hY3RpdmUtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiBub25lO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tb3V0bGluZS12YXJpYW50LW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tc2l6ZS1taXhpblxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXk6ICN7JHBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLCAtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tc2l6ZS1taXhpblxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sbGFwc2UtY2xhc3Nlc1xuLmNvbGxhcHNlIHtcbiAgJjpub3QoLnNob3cpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcblxuICAmLmNvbGxhcHNlLWhvcml6b250YWwge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xsYXBzZS1jbGFzc2VzXG4iLCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcbi5kcm9wdXAsXG4uZHJvcGVuZCxcbi5kcm9wZG93bixcbi5kcm9wc3RhcnQsXG4uZHJvcHVwLWNlbnRlcixcbi5kcm9wZG93bi1jZW50ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XG4gIEBpbmNsdWRlIGNhcmV0KCk7XG59XG5cbi8vIFRoZSBkcm9wZG93biBtZW51XG4uZHJvcGRvd24tbWVudSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi16aW5kZXg6ICN7JHppbmRleC1kcm9wZG93bn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLW1pbi13aWR0aDogI3skZHJvcGRvd24tbWluLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy14OiAjeyRkcm9wZG93bi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXk6ICN7JGRyb3Bkb3duLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcjogI3skZHJvcGRvd24tc3BhY2VyfTtcbiAgQGluY2x1ZGUgcmZzKCRkcm9wZG93bi1mb250LXNpemUsIC0tI3skcHJlZml4fWRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yOiAjeyRkcm9wZG93bi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJnOiAjeyRkcm9wZG93bi1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1jb2xvcjogI3skZHJvcGRvd24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLXJhZGl1czogI3skZHJvcGRvd24tYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci13aWR0aDogI3skZHJvcGRvd24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogI3skZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmc6ICN7JGRyb3Bkb3duLWRpdmlkZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAjeyRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdzogI3skZHJvcGRvd24tYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3I6ICN7JGRyb3Bkb3duLWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZzogI3skZHJvcGRvd24tbGluay1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAjeyRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteDogI3skZHJvcGRvd24taXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteTogI3skZHJvcGRvd24taXRlbS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3I6ICN7JGRyb3Bkb3duLWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXg6ICN7JGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15OiAjeyRkcm9wZG93bi1oZWFkZXItcGFkZGluZy15fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1jc3MtdmFyc1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXppbmRleCk7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIG1pbi13aWR0aDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLW1pbi13aWR0aCk7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1wYWRkaW5nLXgpO1xuICBtYXJnaW46IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgbWFyZ2luIG9mIHVsXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdykpO1xuXG4gICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIEBpZiAkZHJvcGRvd24tcGFkZGluZy15ID09IDAge1xuICAgID4gLmRyb3Bkb3duLWl0ZW06Zmlyc3QtY2hpbGQsXG4gICAgPiBsaTpmaXJzdC1jaGlsZCAuZHJvcGRvd24taXRlbSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgICA+IC5kcm9wZG93bi1pdGVtOmxhc3QtY2hpbGQsXG4gICAgPiBsaTpsYXN0LWNoaWxkIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuXG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlc3BvbnNpdmUtYnJlYWtwb2ludHNcbi8vIFdlIGRlbGliZXJhdGVseSBoYXJkY29kZSB0aGUgYGJzLWAgcHJlZml4IGJlY2F1c2Ugd2UgY2hlY2tcbi8vIHRoaXMgY3VzdG9tIHByb3BlcnR5IGluIEpTIHRvIGRldGVybWluZSBQb3BwZXIncyBwb3NpdGlvbmluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1zdGFydCB7XG4gICAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1lbmQge1xuICAgICAgLS1icy1wb3NpdGlvbjogZW5kO1xuXG4gICAgICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXIpO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgY2FyZXQodXApO1xuICB9XG59XG5cbi5kcm9wZW5kIHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KGVuZCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wc3RhcnQge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHN0YXJ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBgPGhyPmApIHdpdGhpbiB0aGUgZHJvcGRvd25cbi5kcm9wZG93bi1kaXZpZGVyIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15KSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmcpO1xuICBvcGFjaXR5OiAxOyAvLyBSZXZpc2l0IGluIHY2IHRvIGRlLWR1cGUgc3R5bGVzIHRoYXQgY29uZmxpY3Qgd2l0aCA8aHI+IGVsZW1lbnRcbn1cblxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxuLy9cbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXG4uZHJvcGRvd24taXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14KTtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3IpO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLWJvcmRlci1yYWRpdXMsIDApKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWJnKSk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtYmcpKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXG4uZHJvcGRvd24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3IpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3IpO1xufVxuXG4vLyBEYXJrIGRyb3Bkb3duc1xuLmRyb3Bkb3duLW1lbnUtZGFyayB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bi1kYXJrLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYmc6ICN7JGRyb3Bkb3duLWRhcmstYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm94LXNoYWRvdzogI3skZHJvcGRvd24tZGFyay1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1jb2xvcjogI3skZHJvcGRvd24tZGFyay1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogI3skZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1iZzogI3skZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZzogI3skZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogI3skZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1jb2xvcjogI3skZHJvcGRvd24tZGFyay1oZWFkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLWRhcmstY3NzLXZhcnNcbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjYXJldC1taXhpbnNcbkBtaXhpbiBjYXJldC1kb3duKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtZW5kKCR3aWR0aDogJGNhcmV0LXdpZHRoKSB7XG4gIGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1zdGFydCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldChcbiAgJGRpcmVjdGlvbjogZG93bixcbiAgJHdpZHRoOiAkY2FyZXQtd2lkdGgsXG4gICRzcGFjaW5nOiAkY2FyZXQtc3BhY2luZyxcbiAgJHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ25cbikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICR2ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigkd2lkdGgpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoJHdpZHRoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBlbmQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1lbmQoJHdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBzdGFydCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICR2ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtc3RhcnQoJHdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmVtcHR5OjphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY2FyZXQtbWl4aW5zXG4iLCIvLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4sXG4gID4gLmJ0bi1jaGVjazpmb2N1cyArIC5idG4sXG4gID4gLmJ0bjpob3ZlcixcbiAgPiAuYnRuOmZvY3VzLFxuICA+IC5idG46YWN0aXZlLFxuICA+IC5idG4uYWN0aXZlIHtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzIHdoZW4gYnV0dG9ucyBhcmUgbmV4dCB0byBlYWNoIG90aGVyXG4gID4gOm5vdCguYnRuLWNoZWNrOmZpcnN0LWNoaWxkKSArIC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiAjeyRidG4tYm9yZGVyLXdpZHRofSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0OmZpcnN0LWNoaWxkLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuICB9XG5cbiAgLy8gVGhlIGxlZnQgcmFkaXVzIHNob3VsZCBiZSAwIGlmIHRoZSBidXR0b24gaXM6XG4gIC8vIC0gdGhlIFwidGhpcmQgb3IgbW9yZVwiIGNoaWxkXG4gIC8vIC0gdGhlIHNlY29uZCBjaGlsZCBhbmQgdGhlIHByZXZpb3VzIGVsZW1lbnQgaXNuJ3QgYC5idG4tY2hlY2tgIChtYWtpbmcgaXQgdGhlIGZpcnN0IGNoaWxkIHZpc3VhbGx5KVxuICAvLyAtIHBhcnQgb2YgYSBidG4tZ3JvdXAgd2hpY2ggaXNuJ3QgdGhlIGZpcnN0IGNoaWxkXG4gID4gLmJ0bjpudGgtY2hpbGQobiArIDMpLFxuICA+IDpub3QoLmJ0bi1jaGVjaykgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGJ1dHRvbiBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXIgbWFuaXB1bGF0aW9uLlxuXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxuLmJ0bi1ncm91cC1sZyA+IC5idG4geyBAZXh0ZW5kIC5idG4tbGc7IH1cblxuXG4vL1xuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xuLy9cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyLFxuICAuZHJvcHVwICY6OmFmdGVyLFxuICAuZHJvcGVuZCAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcHN0YXJ0ICY6OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG5cbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxuICAmLmJ0bi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG59XG5cblxuLy9cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vXG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoLTEgKiAjeyRidG4tYm9yZGVyLXdpZHRofSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG5cbiAgLy8gVGhlIHRvcCByYWRpdXMgc2hvdWxkIGJlIDAgaWYgdGhlIGJ1dHRvbiBpczpcbiAgLy8gLSB0aGUgXCJ0aGlyZCBvciBtb3JlXCIgY2hpbGRcbiAgLy8gLSB0aGUgc2Vjb25kIGNoaWxkIGFuZCB0aGUgcHJldmlvdXMgZWxlbWVudCBpc24ndCBgLmJ0bi1jaGVja2AgKG1ha2luZyBpdCB0aGUgZmlyc3QgY2hpbGQgdmlzdWFsbHkpXG4gIC8vIC0gcGFydCBvZiBhIGJ0bi1ncm91cCB3aGljaCBpc24ndCB0aGUgZmlyc3QgY2hpbGRcbiAgPiAuYnRuOm50aC1jaGlsZChuICsgMyksXG4gID4gOm5vdCguYnRuLWNoZWNrKSArIC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy14OiAjeyRuYXYtbGluay1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXk6ICN7JG5hdi1saW5rLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkbmF2LWxpbmstZm9udC1zaXplLCAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXdlaWdodDogI3skbmF2LWxpbmstZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1jb2xvcjogI3skbmF2LWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1ob3Zlci1jb2xvcjogI3skbmF2LWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogI3skbmF2LWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC13ZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJG5hdi1saW5rLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRuYXYtbGluay1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdGFicy1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGg6ICN7JG5hdi10YWJzLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXJhZGl1czogI3skbmF2LXRhYnMtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAjeyRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAjeyRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtdGFicy1jc3MtdmFyc1xuXG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItY29sb3IpO1xuXG4gIC5uYXYtbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gUHJldmVudHMgYWN0aXZlIC5uYXYtbGluayB0YWIgb3ZlcmxhcHBpbmcgZm9jdXMgb3V0bGluZSBvZiBwcmV2aW91cy9uZXh0IC5uYXYtbGlua1xuICAgICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICAgIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtcGlsbHMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICN7JG5hdi1waWxscy1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICN7JG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZ307XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2LXBpbGxzLWNzcy12YXJzXG5cbiAgLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1uYXYtcGlsbHMtYm9yZGVyLXJhZGl1cykpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnKSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVW5kZXJsaW5lXG4vL1xuXG4ubmF2LXVuZGVybGluZSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdW5kZXJsaW5lLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtZ2FwOiAjeyRuYXYtdW5kZXJsaW5lLWdhcH07XG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoOiAjeyRuYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3I6ICN7JG5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi11bmRlcmxpbmUtY3NzLXZhcnNcblxuICBnYXA6IHZhcigtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWdhcCk7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGgpIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogY3VycmVudGNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtZmlsbCxcbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gICAgd2lkdGg6IDEwMCU7IC8vIE1ha2Ugc3VyZSBidXR0b24gd2lsbCBncm93XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXBhZGRpbmcteDogI3tpZigkbmF2YmFyLXBhZGRpbmcteCA9PSBudWxsLCAwLCAkbmF2YmFyLXBhZGRpbmcteCl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy15OiAjeyRuYXZiYXItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItaG92ZXItY29sb3I6ICN7JG5hdmJhci1saWdodC1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1kaXNhYmxlZC1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWFjdGl2ZS1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICN7JG5hdmJhci1icmFuZC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtbWFyZ2luLWVuZDogI3skbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmR9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtZm9udC1zaXplOiAjeyRuYXZiYXItYnJhbmQtZm9udC1zaXplfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtaG92ZXItY29sb3I6ICN7JG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICN7JG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICN7JG5hdmJhci10b2dnbGVyLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogI3skbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAjeyRuYXZiYXItdG9nZ2xlci1mb250LXNpemV9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1pY29uLWJnOiAje2VzY2FwZS1zdmcoJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmcpfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAjeyRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGg6ICN7JG5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbjogI3skbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWNzcy12YXJzXG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCk7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICAvLyBUaGUgYGZsZXgtd3JhcGAgcHJvcGVydHkgaXMgaW5oZXJpdGVkIHRvIHNpbXBsaWZ5IHRoZSBleHBhbmRlZCBuYXZiYXJzXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gID4gLmNvbnRhaW5lcixcbiAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtcGFkZGluZy15KTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtcGFkZGluZy15KTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1mb250LXNpemUpKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdlxuLy9cbi8vIEN1c3RvbSBuYXZiYXIgbmF2aWdhdGlvbiAoZG9lc24ndCByZXF1aXJlIGAubmF2YCwgYnV0IGRvZXMgbWFrZSB1c2Ugb2YgYC5uYXYtbGlua2ApLlxuXG4ubmF2YmFyLW5hdiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItbmF2LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteDogMDtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy15OiAjeyRuYXYtbGluay1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJG5hdi1saW5rLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC13ZWlnaHQ6ICN7JG5hdi1saW5rLWZvbnQtd2VpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItY29sb3IpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1ob3Zlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1ob3Zlci1jb2xvcik7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWRpc2FibGVkLWNvbG9yKTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItbmF2LWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgICYuYWN0aXZlLFxuICAgICYuc2hvdyB7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIHRleHRcbi8vXG4vL1xuXG4ubmF2YmFyLXRleHQge1xuICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yKTtcblxuICBhLFxuICBhOmhvdmVyLFxuICBhOmZvY3VzICB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYWN0aXZlLWNvbG9yKTtcbiAgfVxufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50LlxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgLy8gRm9yIGFsd2F5cyBleHBhbmRlZCBvciBleHRyYSBmdWxsIG5hdmJhcnMsIGVuc3VyZSBjb250ZW50IGFsaWducyBpdHNlbGZcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZSkpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1jb2xvcik7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXRyYW5zaXRpb24pKTtcblxuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGgpO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmcpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbn1cblxuLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgbWF4LWhlaWdodDogdmFyKC0tI3skcHJlZml4fXNjcm9sbC1oZWlnaHQsIDc1dmgpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLWV4cGFuZC1sb29wXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItZXhwYW5kIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9zZWxlY3Rvci1uby11bmlvbi1jbGFzcy1uYW1lXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vZmZjYW52YXMge1xuICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgei1pbmRleDogYXV0bztcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24obm9uZSk7XG4gICAgICAgICAgLy8gc3R5bGVsaW50LWVuYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWV4cGFuZC1sb29wXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi5uYXZiYXItbGlnaHQge1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgLm5hdmJhci1saWdodGBcIiwgXCJ2NS4yLjBcIiwgXCJ2Ni4wLjBcIiwgdHJ1ZSk7XG59XG5cbi5uYXZiYXItZGFyayxcbi5uYXZiYXJbZGF0YS1icy10aGVtZT1cImRhcmtcIl0ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLWRhcmstY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yOiAjeyRuYXZiYXItZGFyay1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWRhcmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItZGlzYWJsZWQtY29sb3I6ICN7JG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWFjdGl2ZS1jb2xvcjogI3skbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWNvbG9yOiAjeyRuYXZiYXItZGFyay1icmFuZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3I6ICN7JG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZzogI3tlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItZGFyay1jc3MtdmFyc1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1pY29uLWJnOiAje2VzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyl9O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBjYXJkLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXk6ICN7JGNhcmQtc3BhY2VyLXl9O1xuICAtLSN7JHByZWZpeH1jYXJkLXNwYWNlci14OiAjeyRjYXJkLXNwYWNlci14fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteTogI3skY2FyZC10aXRsZS1zcGFjZXIteX07XG4gIC0tI3skcHJlZml4fWNhcmQtdGl0bGUtY29sb3I6ICN7JGNhcmQtdGl0bGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLXN1YnRpdGxlLWNvbG9yOiAjeyRjYXJkLXN1YnRpdGxlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGg6ICN7JGNhcmQtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3I6ICN7JGNhcmQtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItcmFkaXVzOiAjeyRjYXJkLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJveC1zaGFkb3c6ICN7JGNhcmQtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogI3skY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15OiAjeyRjYXJkLWNhcC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXg6ICN7JGNhcmQtY2FwLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLWJnOiAjeyRjYXJkLWNhcC1iZ307XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLWNvbG9yOiAjeyRjYXJkLWNhcC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtaGVpZ2h0OiAjeyRjYXJkLWhlaWdodH07XG4gIC0tI3skcHJlZml4fWNhcmQtY29sb3I6ICN7JGNhcmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJnOiAjeyRjYXJkLWJnfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAjeyRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmd9O1xuICAtLSN7JHByZWZpeH1jYXJkLWdyb3VwLW1hcmdpbjogI3skY2FyZC1ncm91cC1tYXJnaW59O1xuICAvLyBzY3NzLWRvY3MtZW5kIGNhcmQtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzIyNzQwI2lzc3VlY29tbWVudC0zMDU4NjgxMDZcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWNhcmQtYm94LXNoYWRvdykpO1xuXG4gID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXAge1xuICAgIGJvcmRlci10b3A6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWJvdHRvbTogaW5oZXJpdDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRHVlIHRvIHNwZWNpZmljaXR5IG9mIHRoZSBhYm92ZSBzZWxlY3RvciAoYC5jYXJkID4gLmxpc3QtZ3JvdXBgKSwgd2UgbXVzdFxuICAvLyB1c2UgYSBjaGlsZCBzZWxlY3RvciBoZXJlIHRvIHByZXZlbnQgZG91YmxlIGJvcmRlcnMuXG4gID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4gID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXkpIHZhcigtLSN7JHByZWZpeH1jYXJkLXNwYWNlci14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNvbG9yKTtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1jb2xvcik7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtc3VidGl0bGUtY29sb3IpO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rIHtcbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteCk7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtYmcpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcik7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSAwIDApO1xuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWJnKTtcbiAgYm9yZGVyLXRvcDogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3IpO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgdmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykgdmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1iZyk7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYmcpO1xuICB9XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtaW1nLW92ZXJsYXktcGFkZGluZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG59XG5cblxuLy9cbi8vIENhcmQgZ3JvdXBzXG4vL1xuXG4uY2FyZC1ncm91cCB7XG4gIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgPiAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWNhcmQtZ3JvdXAtbWFyZ2luKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICBmbGV4OiAxIDAgMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgPiAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgID4gLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgPiAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcblxuICAgICAgICAgID4gLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICA+IC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgPiAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmFjY29yZGlvbiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBhY2NvcmRpb24tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWNvbG9yOiAjeyRhY2NvcmRpb24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYmc6ICN7JGFjY29yZGlvbi1iZ307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi10cmFuc2l0aW9uOiAjeyRhY2NvcmRpb24tdHJhbnNpdGlvbn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItY29sb3I6ICN7JGFjY29yZGlvbi1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXdpZHRoOiAjeyRhY2NvcmRpb24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1yYWRpdXM6ICN7JGFjY29yZGlvbi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JGFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXg6ICN7JGFjY29yZGlvbi1idXR0b24tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXk6ICN7JGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1jb2xvcjogI3skYWNjb3JkaW9uLWJ1dHRvbi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYmc6ICN7JGFjY29yZGlvbi1idXR0b24tYmd9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb246ICN7ZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1pY29uKX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aDogI3skYWNjb3JkaW9uLWljb24td2lkdGh9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNmb3JtOiAjeyRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm19O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNpdGlvbjogI3skYWNjb3JkaW9uLWljb24tdHJhbnNpdGlvbn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYWN0aXZlLWljb246ICN7ZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbil9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWZvY3VzLWJveC1zaGFkb3c6ICN7JGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib2R5LXBhZGRpbmcteDogI3skYWNjb3JkaW9uLWJvZHktcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy15OiAjeyRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWNvbG9yOiAjeyRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtYmc6ICN7JGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBhY2NvcmRpb24tY3NzLXZhcnNcbn1cblxuLmFjY29yZGlvbi1idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBSZXNldCBidXR0b24gc3R5bGVcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYmcpO1xuICBib3JkZXI6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gIG92ZXJmbG93LWFuY2hvcjogbm9uZTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLXRyYW5zaXRpb24pKTtcblxuICAmOm5vdCguY29sbGFwc2VkKSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1iZyk7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItd2lkdGgpKSAwIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uKTtcbiAgICAgIHRyYW5zZm9ybTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi10cmFuc2Zvcm0pO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFjY29yZGlvbiBpY29uXG4gICY6OmFmdGVyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoKTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24pO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24tdHJhbnNpdGlvbikpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgfVxufVxuXG4uYWNjb3JkaW9uLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5hY2NvcmRpb24taXRlbSB7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1iZyk7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgPiAuYWNjb3JkaW9uLWhlYWRlciAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cblxuICAvLyBPbmx5IHNldCBhIGJvcmRlci1yYWRpdXMgb24gdGhlIGxhc3QgaXRlbSBpZiB0aGUgYWNjb3JkaW9uIGlzIGNvbGxhcHNlZFxuICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICA+IC5hY2NvcmRpb24taGVhZGVyIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgICYuY29sbGFwc2VkIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgfVxufVxuXG4uYWNjb3JkaW9uLWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy14KTtcbn1cblxuXG4vLyBGbHVzaCBhY2NvcmRpb24gaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGFjY29yZGlvbiBpdGVtcyBlZGdlLXRvLWVkZ2UuXG5cbi5hY2NvcmRpb24tZmx1c2gge1xuICA+IC5hY2NvcmRpb24taXRlbSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHsgYm9yZGVyLXRvcDogMDsgfVxuICAgICY6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDA7IH1cblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1jbGFzc1xuICAgID4gLmFjY29yZGlvbi1jb2xsYXBzZSxcbiAgICA+IC5hY2NvcmRpb24taGVhZGVyIC5hY2NvcmRpb24tYnV0dG9uLFxuICAgID4gLmFjY29yZGlvbi1oZWFkZXIgLmFjY29yZGlvbi1idXR0b24uY29sbGFwc2VkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgfVxuICAgIC8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItbWF4LWNsYXNzXG4gIH1cbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmFjY29yZGlvbi1idXR0b246OmFmdGVyIHtcbiAgICAgIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbjogI3tlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWljb24tZGFyayl9O1xuICAgICAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbjogI3tlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uLWRhcmspfTtcbiAgICB9XG4gIH1cbn1cbiIsIi5icmVhZGNydW1iIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGJyZWFkY3J1bWItY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1wYWRkaW5nLXg6ICN7JGJyZWFkY3J1bWItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1wYWRkaW5nLXk6ICN7JGJyZWFkY3J1bWItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAjeyRicmVhZGNydW1iLW1hcmdpbi1ib3R0b219O1xuICBAaW5jbHVkZSByZnMoJGJyZWFkY3J1bWItZm9udC1zaXplLCAtLSN7JHByZWZpeH1icmVhZGNydW1iLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItYmc6ICN7JGJyZWFkY3J1bWItYmd9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICN7JGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogI3skYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteDogI3skYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3I6ICN7JGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBicmVhZGNydW1iLWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLW1hcmdpbi1ib3R0b20pO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItZm9udC1zaXplKSk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWJnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICAvLyBUaGUgc2VwYXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYnMgKGJ5IGRlZmF1bHQsIGEgZm9yd2FyZC1zbGFzaDogXCIvXCIpXG4gICsgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIFN1cHByZXNzIGlubGluZSBzcGFjaW5ncyBhbmQgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvclxuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXgpO1xuICAgICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXItY29sb3IpO1xuICAgICAgY29udGVudDogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlciwgZXNjYXBlLXN2ZygkYnJlYWRjcnVtYi1kaXZpZGVyKSkgI3tcIi8qIHJ0bDpcIn0gdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlciwgZXNjYXBlLXN2ZygkYnJlYWRjcnVtYi1kaXZpZGVyLWZsaXBwZWQpKSAje1wiKi9cIn07XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLWFjdGl2ZS1jb2xvcik7XG4gIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXg6ICN7JHBhZ2luYXRpb24tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXk6ICN7JHBhZ2luYXRpb24tcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRwYWdpbmF0aW9uLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1iZzogI3skcGFnaW5hdGlvbi1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAjeyRwYWdpbmF0aW9uLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogI3skcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogI3skcGFnaW5hdGlvbi1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYmc6ICN7JHBhZ2luYXRpb24taG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogI3skcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWZvY3VzLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1iZzogI3skcGFnaW5hdGlvbi1mb2N1cy1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogI3skcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICN7JHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYmc6ICN7JHBhZ2luYXRpb24tYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogI3skcGFnaW5hdGlvbi1kaXNhYmxlZC1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJnKTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHBhZ2luYXRpb24tdHJhbnNpdGlvbik7XG5cbiAgJjpob3ZlciB7XG4gICAgei1pbmRleDogMjtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWJnKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtYmcpO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdyk7XG4gIH1cblxuICAmLmFjdGl2ZSxcbiAgLmFjdGl2ZSA+ICYge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcik7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWJnKSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gIC5kaXNhYmxlZCA+ICYge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpub3QoOmZpcnN0LWNoaWxkKSAucGFnZS1saW5rIHtcbiAgICBtYXJnaW4tbGVmdDogJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0O1xuICB9XG5cbiAgQGlmICRwYWdpbmF0aW9uLW1hcmdpbi1zdGFydCA9PSBjYWxjKC0xICogI3skcGFnaW5hdGlvbi1ib3JkZXItd2lkdGh9KSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzKSk7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBBZGQgYm9yZGVyLXJhZGl1cyB0byBhbGwgcGFnZUxpbmtzIGluIGNhc2UgdGhleSBoYXZlIGxlZnQgbWFyZ2luXG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gU2l6aW5nXG4vL1xuXG4ucGFnaW5hdGlvbi1sZyB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcsICRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZywgJGZvbnQtc2l6ZS1sZywgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tbWl4aW5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXg6ICN7JHBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15OiAjeyRwYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICN7JGJvcmRlci1yYWRpdXN9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLW1peGluXG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYmFkZ2UtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy14OiAjeyRiYWRnZS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1iYWRnZS1wYWRkaW5nLXk6ICN7JGJhZGdlLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkYmFkZ2UtZm9udC1zaXplLCAtLSN7JHByZWZpeH1iYWRnZS1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1iYWRnZS1mb250LXdlaWdodDogI3skYmFkZ2UtZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1iYWRnZS1jb2xvcjogI3skYmFkZ2UtY29sb3J9O1xuICAtLSN7JHByZWZpeH1iYWRnZS1ib3JkZXItcmFkaXVzOiAjeyRiYWRnZS1ib3JkZXItcmFkaXVzfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBiYWRnZS1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWJhZGdlLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWJhZGdlLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtZm9udC13ZWlnaHQpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1iYWRnZS1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1iYWRnZS1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCk7XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHlcbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXG4uYnRuIC5iYWRnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYmc6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXg6ICN7JGFsZXJ0LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWFsZXJ0LXBhZGRpbmcteTogI3skYWxlcnQtcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtbWFyZ2luLWJvdHRvbTogI3skYWxlcnQtbWFyZ2luLWJvdHRvbX07XG4gIC0tI3skcHJlZml4fWFsZXJ0LWNvbG9yOiBpbmhlcml0O1xuICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXI6ICN7JGFsZXJ0LWJvcmRlci13aWR0aH0gc29saWQgdmFyKC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1jb2xvcik7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1yYWRpdXM6ICN7JGFsZXJ0LWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1hbGVydC1saW5rLWNvbG9yOiBpbmhlcml0O1xuICAvLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LWNzcy12YXJzXG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWFsZXJ0LW1hcmdpbi1ib3R0b20pO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFsZXJ0LWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFsZXJ0LWJnKTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLXJhZGl1cykpO1xufVxuXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xuLmFsZXJ0LWhlYWRpbmcge1xuICAvLyBTcGVjaWZpZWQgdG8gcHJldmVudCBjb25mbGljdHMgb2YgY2hhbmdpbmcgJGhlYWRpbmdzLWNvbG9yXG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtbGluay1jb2xvcik7XG59XG5cblxuLy8gRGlzbWlzc2libGUgYWxlcnRzXG4vL1xuLy8gRXhwYW5kIHRoZSByaWdodCBwYWRkaW5nIGFuZCBhY2NvdW50IGZvciB0aGUgY2xvc2UgYnV0dG9uJ3MgcG9zaXRpb25pbmcuXG5cbi5hbGVydC1kaXNtaXNzaWJsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAkc3RyZXRjaGVkLWxpbmstei1pbmRleCArIDE7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAqIDEuMjUgJGFsZXJ0LXBhZGRpbmcteDtcbiAgfVxufVxuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1tb2RpZmllcnNcbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnRcbkBlYWNoICRzdGF0ZSBpbiBtYXAta2V5cygkdGhlbWUtY29sb3JzKSB7XG4gIC5hbGVydC0jeyRzdGF0ZX0ge1xuICAgIC0tI3skcHJlZml4fWFsZXJ0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICAgIC0tI3skcHJlZml4fWFsZXJ0LWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJnLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJvcmRlci1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWFsZXJ0LWxpbmstY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tdGV4dC1lbXBoYXNpcyk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtbW9kaWZpZXJzXG4iLCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLWtleWZyYW1lc1xuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICBAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcbiAgICAwJSB7IGJhY2tncm91bmQtcG9zaXRpb24teDogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCk7IH1cbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy1rZXlmcmFtZXNcblxuLnByb2dyZXNzLFxuLnByb2dyZXNzLXN0YWNrZWQge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3MtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtaGVpZ2h0OiAjeyRwcm9ncmVzcy1oZWlnaHR9O1xuICBAaW5jbHVkZSByZnMoJHByb2dyZXNzLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmc6ICN7JHByb2dyZXNzLWJnfTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogI3skcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJveC1zaGFkb3c6ICN7JHByb2dyZXNzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItY29sb3I6ICN7JHByb2dyZXNzLWJhci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJhci1iZzogI3skcHJvZ3Jlc3MtYmFyLWJnfTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICN7JHByb2dyZXNzLWJhci10cmFuc2l0aW9ufTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCk7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGZvcmNlIHJvdW5kZWQgY29ybmVycyBieSBjcm9wcGluZyBpdFxuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWZvbnQtc2l6ZSkpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJveC1zaGFkb3cpKTtcbn1cblxuLnByb2dyZXNzLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJhci1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJhci1iZyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJhci10cmFuc2l0aW9uKSk7XG59XG5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQoKTtcbiAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtaGVpZ2h0KSB2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtaGVpZ2h0KTtcbn1cblxuLnByb2dyZXNzLXN0YWNrZWQgPiAucHJvZ3Jlc3Mge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnByb2dyZXNzLXN0YWNrZWQgPiAucHJvZ3Jlc3MgPiAucHJvZ3Jlc3MtYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uOiAkcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmcgcHJvZ3Jlc3MtYmFyLXN0cmlwZXM7XG5cbiAgICBAaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1iZzogI3skbGlzdC1ncm91cC1iZ307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAjeyRsaXN0LWdyb3VwLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogI3skbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogI3skbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICN7JGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogI3skbGlzdC1ncm91cC1hY3Rpb24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogI3skbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1iZzogI3skbGlzdC1ncm91cC1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogI3skbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAjeyRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1kaXNhYmxlZC1iZzogI3skbGlzdC1ncm91cC1kaXNhYmxlZC1iZ307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAjeyRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAjeyRsaXN0LWdyb3VwLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogI3skbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmxpc3QtZ3JvdXAtbnVtYmVyZWQge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGNvdW50ZXItcmVzZXQ6IHNlY3Rpb247XG5cbiAgPiAubGlzdC1ncm91cC1pdGVtOjpiZWZvcmUge1xuICAgIC8vIEluY3JlbWVudHMgb25seSB0aGlzIGluc3RhbmNlIG9mIHRoZSBzZWN0aW9uIGNvdW50ZXJcbiAgICBjb250ZW50OiBjb3VudGVycyhzZWN0aW9uLCBcIi5cIikgXCIuIFwiO1xuICAgIGNvdW50ZXItaW5jcmVtZW50OiBzZWN0aW9uO1xuICB9XG59XG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWRpc2FibGVkLWJnKTtcbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXJlZHVuZGFudC1uZXN0aW5nLXNlbGVjdG9yXG4gICYgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJhY3RpdmUgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxuLy8gbGlzdCBpdGVtcy4gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzZWxlY3RlZCBpdGVtcy5cblxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGJlY29tZSAxMDAlIGJ5IGRlZmF1bHQgdGhvdWdoKVxuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgJjpub3QoLmFjdGl2ZSkge1xuICAgIC8vIEhvdmVyIHN0YXRlXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2ZvY3VzIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3IpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWJnKTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLWVuZC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtZW5kLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKSk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci13aWR0aDogMCAwIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC1tb2RpZmllcnNcbi8vIExpc3QgZ3JvdXAgY29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJHRoZW1lLWNvbG9ycykge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJnLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1ib3JkZXItc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1iZy1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xuIiwiLy8gVHJhbnNwYXJlbnQgYmFja2dyb3VuZCBhbmQgYm9yZGVyIHByb3BlcnRpZXMgaW5jbHVkZWQgZm9yIGJ1dHRvbiB2ZXJzaW9uLlxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG4uYnRuLWNsb3NlIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsb3NlLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1jb2xvcjogI3skYnRuLWNsb3NlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWJnOiAjeyBlc2NhcGUtc3ZnKCRidG4tY2xvc2UtYmcpIH07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1vcGFjaXR5OiAjeyRidG4tY2xvc2Utb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAjeyRidG4tY2xvc2UtaG92ZXItb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c6ICN7JGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogI3skYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTogI3skYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHl9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGNsb3NlLWNzcy12YXJzXG5cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIHdpZHRoOiAkYnRuLWNsb3NlLXdpZHRoO1xuICBoZWlnaHQ6ICRidG4tY2xvc2UtaGVpZ2h0O1xuICBwYWRkaW5nOiAkYnRuLWNsb3NlLXBhZGRpbmcteSAkYnRuLWNsb3NlLXBhZGRpbmcteDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtY29sb3IpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWJnKSBjZW50ZXIgLyAkYnRuLWNsb3NlLXdpZHRoIGF1dG8gbm8tcmVwZWF0OyAvLyBpbmNsdWRlIHRyYW5zcGFyZW50IGZvciBidXR0b24gZWxlbWVudHNcbiAgZmlsdGVyOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZpbHRlcik7XG4gIGJvcmRlcjogMDsgLy8gZm9yIGJ1dHRvbiBlbGVtZW50c1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG4gIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2Utb3BhY2l0eSk7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWhvdmVyLW9wYWNpdHkpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLXNoYWRvdyk7XG4gICAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eSk7XG4gIH1cbn1cblxuQG1peGluIGJ0bi1jbG9zZS13aGl0ZSgpIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZpbHRlcjogI3skYnRuLWNsb3NlLWZpbHRlci1kYXJrfTtcbn1cblxuLmJ0bi1jbG9zZS13aGl0ZSB7XG4gIEBpbmNsdWRlIGJ0bi1jbG9zZS13aGl0ZSgpO1xufVxuXG46cm9vdCxcbltkYXRhLWJzLXRoZW1lPVwibGlnaHRcIl0ge1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZmlsdGVyOiAjeyRidG4tY2xvc2UtZmlsdGVyfTtcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrLCB0cnVlKSB7XG4gICAgQGluY2x1ZGUgYnRuLWNsb3NlLXdoaXRlKCk7XG4gIH1cbn1cbiIsIi50b2FzdCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH10b2FzdC16aW5kZXg6ICN7JHppbmRleC10b2FzdH07XG4gIC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteDogI3skdG9hc3QtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy15OiAjeyR0b2FzdC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH10b2FzdC1zcGFjaW5nOiAjeyR0b2FzdC1zcGFjaW5nfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtbWF4LXdpZHRoOiAjeyR0b2FzdC1tYXgtd2lkdGh9O1xuICBAaW5jbHVkZSByZnMoJHRvYXN0LWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9dG9hc3QtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtY29sb3I6ICN7JHRvYXN0LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYmc6ICN7JHRvYXN0LWJhY2tncm91bmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItd2lkdGg6ICN7JHRvYXN0LWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1jb2xvcjogI3skdG9hc3QtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1czogI3skdG9hc3QtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXRvYXN0LWJveC1zaGFkb3c6ICN7JHRvYXN0LWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItY29sb3I6ICN7JHRvYXN0LWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1iZzogI3skdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAjeyR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCB0b2FzdC1jc3MtdmFyc1xuXG4gIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtbWF4LXdpZHRoKTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXRvYXN0LWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWNvbG9yKTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1jb2xvcik7XG4gIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1cykpO1xuXG4gICYuc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udG9hc3QtY29udGFpbmVyIHtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtemluZGV4OiAjeyR6aW5kZXgtdG9hc3R9O1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fXRvYXN0LXppbmRleCk7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICA+IDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3Qtc3BhY2luZyk7XG4gIH1cbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGNhbGModmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aCkpKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14KTtcbiAgfVxufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bW9kYWwtemluZGV4OiAjeyR6aW5kZXgtbW9kYWx9O1xuICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtbWR9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1wYWRkaW5nOiAjeyRtb2RhbC1pbm5lci1wYWRkaW5nfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luOiAjeyRtb2RhbC1kaWFsb2ctbWFyZ2lufTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtY29sb3I6ICN7JG1vZGFsLWNvbnRlbnQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1iZzogI3skbW9kYWwtY29udGVudC1iZ307XG4gIC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1jb2xvcjogI3skbW9kYWwtY29udGVudC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItd2lkdGg6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXJhZGl1czogI3skbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdzogI3skbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1czogI3skbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteDogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZzogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmd9OyAvLyBUb2RvIGluIHY2OiBTcGxpdCB0aGlzIHBhZGRpbmcgaW50byB4IGFuZCB5XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICN7JG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAjeyRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICN7JG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcDogI3skbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVufTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJnOiAjeyRtb2RhbC1mb290ZXItYmd9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAjeyRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogI3skbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXppbmRleCk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbik7XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbikgKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW4pICogMik7XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWNvbG9yKTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdykpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtYmFja2Ryb3AtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YmFja2Ryb3AtemluZGV4OiAjeyR6aW5kZXgtbW9kYWwtYmFja2Ryb3B9O1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC1iZzogI3skbW9kYWwtYmFja2Ryb3AtYmd9O1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC1vcGFjaXR5OiAjeyRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1iYWNrZHJvcC1jc3MtdmFyc1xuXG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AodmFyKC0tI3skcHJlZml4fWJhY2tkcm9wLXppbmRleCksIHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC1iZyksIHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC1vcGFjaXR5KSk7XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1tb2RhbC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG5cbiAgLmJ0bi1jbG9zZSB7XG4gICAgcGFkZGluZzogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteSkgKiAuNSkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteCkgKiAuNSk7XG4gICAgLy8gU3BsaXQgcHJvcGVydGllcyB0byBhdm9pZCBpbnZhbGlkIGNhbGMoKSBmdW5jdGlvbiBpZiB2YWx1ZSBpcyAwXG4gICAgbWFyZ2luLXRvcDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteSkpO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteCkpO1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpKTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtdGl0bGUtbGluZS1oZWlnaHQpO1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1wYWRkaW5nKTtcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcbiAgcGFkZGluZzogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZykgLSB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcCkgKiAuNSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYmcpO1xuICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICA+ICoge1xuICAgIG1hcmdpbjogY2FsYyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcCkgKiAuNSk7IC8vIFRvZG8gaW4gdjY6IHJlcGxhY2Ugd2l0aCBnYXAgb24gcGFyZW50IGNsYXNzXG4gIH1cbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIC5tb2RhbCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luOiAjeyRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXB9O1xuICAgIC0tI3skcHJlZml4fW1vZGFsLWJveC1zaGFkb3c6ICN7JG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cH07XG4gIH1cblxuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXdpZHRoKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAubW9kYWwtc20ge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1zbX07XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLWxnfTtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIC5tb2RhbC14bCB7XG4gICAgLS0jeyRwcmVmaXh9bW9kYWwtd2lkdGg6ICN7JG1vZGFsLXhsfTtcbiAgfVxufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtZnVsbHNjcmVlbi1sb29wXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgJHBvc3RmaXg6IGlmKCRpbmZpeCAhPSBcIlwiLCAkaW5maXggKyBcIi1kb3duXCIsIFwiXCIpO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgIC5tb2RhbC1mdWxsc2NyZWVuI3skcG9zdGZpeH0ge1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtaGVhZGVyLFxuICAgICAgLm1vZGFsLWZvb3RlciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtZnVsbHNjcmVlbi1sb29wXG4iLCIvLyBTaGFyZWQgYmV0d2VlbiBtb2RhbHMgYW5kIG9mZmNhbnZhc2VzXG5AbWl4aW4gb3ZlcmxheS1iYWNrZHJvcCgkemluZGV4LCAkYmFja2Ryb3AtYmcsICRiYWNrZHJvcC1vcGFjaXR5KSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4O1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZHJvcC1iZztcblxuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XG4gICYuc2hvdyB7IG9wYWNpdHk6ICRiYWNrZHJvcC1vcGFjaXR5OyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXRvb2x0aXAtemluZGV4OiAjeyR6aW5kZXgtdG9vbHRpcH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtbWF4LXdpZHRoOiAjeyR0b29sdGlwLW1heC13aWR0aH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy14OiAjeyR0b29sdGlwLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy15OiAjeyR0b29sdGlwLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtbWFyZ2luOiAjeyR0b29sdGlwLW1hcmdpbn07XG4gIEBpbmNsdWRlIHJmcygkdG9vbHRpcC1mb250LXNpemUsIC0tI3skcHJlZml4fXRvb2x0aXAtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1jb2xvcjogI3skdG9vbHRpcC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYmc6ICN7JHRvb2x0aXAtYmd9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWJvcmRlci1yYWRpdXM6ICN7JHRvb2x0aXAtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtb3BhY2l0eTogI3skdG9vbHRpcC1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aDogI3skdG9vbHRpcC1hcnJvdy13aWR0aH07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAjeyR0b29sdGlwLWFycm93LWhlaWdodH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgdG9vbHRpcC1jc3MtdmFyc1xuXG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLXppbmRleCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW1hcmdpbik7XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImAkdG9vbHRpcC1tYXJnaW5gXCIsIFwidjVcIiwgXCJ2NS54XCIsIHRydWUpO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWZvbnQtc2l6ZSkpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5zaG93IHsgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtb3BhY2l0eSk7IH1cblxuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtdG9vbHRpcC10b3AgLnRvb2x0aXAtYXJyb3cge1xuICBib3R0b206IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAmOjpiZWZvcmUge1xuICAgIHRvcDogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXRvb2x0aXAtZW5kIC50b29sdGlwLWFycm93IHtcbiAgbGVmdDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCk7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICByaWdodDogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWJnKTtcbiAgfVxufVxuXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xuXG4uYnMtdG9vbHRpcC1ib3R0b20gLnRvb2x0aXAtYXJyb3cge1xuICB0b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAmOjpiZWZvcmUge1xuICAgIGJvdHRvbTogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXRvb2x0aXAtc3RhcnQgLnRvb2x0aXAtYXJyb3cge1xuICByaWdodDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTtcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCk7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBsZWZ0OiAtMXB4O1xuICAgIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgMCBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXRvb2x0aXAtYXV0byB7XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtZW5kO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1zdGFydDtcbiAgfVxufVxuXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtbWF4LXdpZHRoKTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWJnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1ib3JkZXItcmFkaXVzKSk7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igb3ZlcmZsb3ctd3JhcCAvIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi5wb3BvdmVyIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvcG92ZXItY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci16aW5kZXg6ICN7JHppbmRleC1wb3BvdmVyfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1tYXgtd2lkdGg6ICN7JHBvcG92ZXItbWF4LXdpZHRofTtcbiAgQGluY2x1ZGUgcmZzKCRwb3BvdmVyLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cG9wb3Zlci1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJnOiAjeyRwb3BvdmVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGg6ICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3I6ICN7JHBvcG92ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItcmFkaXVzOiAjeyRwb3BvdmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm94LXNoYWRvdzogI3skcG9wb3Zlci1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAjeyRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICN7JHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkcG9wb3Zlci1oZWFkZXItZm9udC1zaXplLCAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1jb2xvcjogI3skcG9wb3Zlci1oZWFkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1iZzogI3skcG9wb3Zlci1oZWFkZXItYmd9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy14OiAjeyRwb3BvdmVyLWJvZHktcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteTogI3skcG9wb3Zlci1ib2R5LXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1jb2xvcjogI3skcG9wb3Zlci1ib2R5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aDogI3skcG9wb3Zlci1hcnJvdy13aWR0aH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0OiAjeyRwb3BvdmVyLWFycm93LWhlaWdodH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3IpO1xuICAvLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXItY3NzLXZhcnNcblxuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci16aW5kZXgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1tYXgtd2lkdGgpO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWZvbnQtc2l6ZSkpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJveC1zaGFkb3cpKTtcblxuICAucG9wb3Zlci1hcnJvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG5cbi5icy1wb3BvdmVyLXRvcCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIGJvdHRvbTogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXBvcG92ZXItZW5kIHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgbGVmdDogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXBvcG92ZXItYm90dG9tIHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgdG9wOiBjYWxjKC0xICogKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkpIC0gdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYmcpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xuLmJzLXBvcG92ZXItc3RhcnQge1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICByaWdodDogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xuICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgMCBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci10b3A7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItZW5kO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1zdGFydDtcbiAgfVxufVxuXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbi5wb3BvdmVyLWhlYWRlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLWJnKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktY29sb3IpO1xufVxuIiwiLy8gTm90ZXMgb24gdGhlIGNsYXNzZXM6XG4vL1xuLy8gMS4gLmNhcm91c2VsLnBvaW50ZXItZXZlbnQgc2hvdWxkIGlkZWFsbHkgYmUgcGFuLXkgKHRvIGFsbG93IGZvciB1c2VycyB0byBzY3JvbGwgdmVydGljYWxseSlcbi8vICAgIGV2ZW4gd2hlbiB0aGVpciBzY3JvbGwgYWN0aW9uIHN0YXJ0ZWQgb24gYSBjYXJvdXNlbCwgYnV0IGZvciBjb21wYXRpYmlsaXR5ICh3aXRoIEZpcmVmb3gpXG4vLyAgICB3ZSdyZSBwcmV2ZW50aW5nIGFsbCBhY3Rpb25zIGluc3RlYWRcbi8vIDIuIFRoZSAuY2Fyb3VzZWwtaXRlbS1zdGFydCBhbmQgLmNhcm91c2VsLWl0ZW0tZW5kIGlzIHVzZWQgdG8gaW5kaWNhdGUgd2hlcmVcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cbi8vIDQuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCBhbmQgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCBpcyB0aGUgY3VycmVudFxuLy8gICAgc2xpZGUgaW4gaXRzIGluLXRyYW5zaXRpb24gc3RhdGUuIE9ubHkgb25lIG9mIHRoZXNlIG9jY3VycyBhdCBhIHRpbWUuXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmRcbi8vICAgIGlzIHRoZSB1cGNvbWluZyBzbGlkZSBpbiB0cmFuc2l0aW9uLlxuXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC10cmFuc2l0aW9uKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tc3RhcnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tZW5kKSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSB0cmFuc2l0aW9uc1xuLy9cblxuLmNhcm91c2VsLWZhZGUge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLXN0YXJ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICAgIHotaW5kZXg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMHMgJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24pO1xuICB9XG59XG5cblxuLy9cbi8vIExlZnQvcmlnaHQgY29udHJvbHMgZm9yIG5hdlxuLy9cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xuICAvLyBVc2UgZmxleCBmb3IgYWxpZ25tZW50ICgxLTMpXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyAvLyAzLiBob3Jpem9udGFsbHkgY2VudGVyIGNvbnRlbnRzXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGZpbHRlcjogdmFyKC0tI3skcHJlZml4fWNhcm91c2VsLWNvbnRyb2wtaWNvbi1maWx0ZXIpO1xuICBib3JkZXI6IDA7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKSwgbnVsbCk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKSwgbnVsbCk7XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cblxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmcpICN7XCIvKnJ0bDpcIiArIGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKSArIFwiKi9cIn07XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZykgI3tcIi8qcnRsOlwiICsgZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmcpICsgXCIqL1wifTtcbn1cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHMvY29udHJvbHNcbi8vXG4vLyBBZGQgYSBjb250YWluZXIgKHN1Y2ggYXMgYSBsaXN0KSB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhbiBpdGVtIChpZGVhbGx5IGEgZm9jdXNhYmxlIGNvbnRyb2wsXG4vLyBsaWtlIGEgYnV0dG9uKSB3aXRoIGRhdGEtYnMtdGFyZ2V0IGZvciBlYWNoIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcblxuICBbZGF0YS1icy10YXJnZXRdIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmcpO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgYm9yZGVyOiAwO1xuICAgIC8vIFVzZSB0cmFuc3BhcmVudCBib3JkZXJzIHRvIGluY3JlYXNlIHRoZSBoaXQgYXJlYSBieSAxMHB4IG9uIHRvcCBhbmQgYm90dG9tLlxuICAgIGJvcmRlci10b3A6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5O1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIGJvdHRvbTogJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyO1xuICBsZWZ0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAqIC41O1xuICBwYWRkaW5nLXRvcDogJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15O1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcm91c2VsLWNhcHRpb24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8vIERhcmsgbW9kZSBjYXJvdXNlbFxuXG5AbWl4aW4gY2Fyb3VzZWwtZGFyaygpIHtcbiAgLS0jeyRwcmVmaXh9Y2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogI3skY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZy1kYXJrfTtcbiAgLS0jeyRwcmVmaXh9Y2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogI3skY2Fyb3VzZWwtY2FwdGlvbi1jb2xvci1kYXJrfTtcbiAgLS0jeyRwcmVmaXh9Y2Fyb3VzZWwtY29udHJvbC1pY29uLWZpbHRlcjogI3skY2Fyb3VzZWwtY29udHJvbC1pY29uLWZpbHRlci1kYXJrfTtcbn1cblxuLmNhcm91c2VsLWRhcmsge1xuICBAaW5jbHVkZSBjYXJvdXNlbC1kYXJrKCk7XG59XG5cbjpyb290LFxuW2RhdGEtYnMtdGhlbWU9XCJsaWdodFwiXSB7XG4gIC0tI3skcHJlZml4fWNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICN7JGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1jYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAjeyRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2Fyb3VzZWwtY29udHJvbC1pY29uLWZpbHRlcjogI3skY2Fyb3VzZWwtY29udHJvbC1pY29uLWZpbHRlcn07XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaywgdHJ1ZSkge1xuICAgIEBpbmNsdWRlIGNhcm91c2VsLWRhcmsoKTtcbiAgfVxufVxuIiwiLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNsZWFyZml4XG4iLCIvL1xuLy8gUm90YXRpbmcgYm9yZGVyXG4vL1xuXG4uc3Bpbm5lci1ncm93LFxuLnNwaW5uZXItYm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoKTtcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogdmFyKC0tI3skcHJlZml4fXNwaW5uZXItdmVydGljYWwtYWxpZ24pO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQpIGxpbmVhciBpbmZpbml0ZSB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZSk7XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWJvcmRlci1rZXlmcmFtZXNcbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZykgI3tcIi8qIHJ0bDppZ25vcmUgKi9cIn07IH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ib3JkZXIta2V5ZnJhbWVzXG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWJvcmRlci1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoOiAjeyRzcGlubmVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQ6ICN7JHNwaW5uZXItaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogI3skc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbn07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYm9yZGVyLXdpZHRoOiAjeyRzcGlubmVyLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAjeyRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLW5hbWU6IHNwaW5uZXItYm9yZGVyO1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItYm9yZGVyLWNzcy12YXJzXG5cbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1ib3JkZXItd2lkdGgpIHNvbGlkIGN1cnJlbnRjb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLXNtLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGgtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHQtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWJvcmRlci13aWR0aDogI3skc3Bpbm5lci1ib3JkZXItd2lkdGgtc219O1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItYm9yZGVyLXNtLWNzcy12YXJzXG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItZ3Jvdy1rZXlmcmFtZXNcbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWdyb3cta2V5ZnJhbWVzXG5cbi5zcGlubmVyLWdyb3cge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ncm93LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXZlcnRpY2FsLWFsaWduOiAjeyRzcGlubmVyLXZlcnRpY2FsLWFsaWdufTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkfTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZTogc3Bpbm5lci1ncm93O1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItZ3Jvdy1jc3MtdmFyc1xuXG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW5uZXItZ3Jvdy1zbSB7XG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGgtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHQtc219O1xufVxuXG5AaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiB7XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLnNwaW5uZXItYm9yZGVyLFxuICAgIC5zcGlubmVyLWdyb3cge1xuICAgICAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkICogMn07XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuJW9mZmNhbnZhcy1jc3MtdmFycyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBvZmZjYW52YXMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXppbmRleDogI3skemluZGV4LW9mZmNhbnZhc307XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aDogI3skb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGh9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0OiAjeyRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteDogI3skb2ZmY2FudmFzLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXk6ICN7JG9mZmNhbnZhcy1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtY29sb3I6ICN7JG9mZmNhbnZhcy1jb2xvcn07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1iZzogI3skb2ZmY2FudmFzLWJnLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aDogI3skb2ZmY2FudmFzLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3I6ICN7JG9mZmNhbnZhcy1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm94LXNoYWRvdzogI3skb2ZmY2FudmFzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtdHJhbnNpdGlvbjogI3t0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAjeyRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHR9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG9mZmNhbnZhcy1jc3MtdmFyc1xufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIC5vZmZjYW52YXMjeyRpbmZpeH0ge1xuICAgIEBleHRlbmQgJW9mZmNhbnZhcy1jc3MtdmFycztcbiAgfVxufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIC5vZmZjYW52YXMjeyRpbmZpeH0ge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy16aW5kZXgpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1jb2xvcik7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJnKTtcbiAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJveC1zaGFkb3cpKTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy10cmFuc2l0aW9uKSk7XG5cbiAgICAgICYub2ZmY2FudmFzLXN0YXJ0IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aCk7XG4gICAgICAgIGJvcmRlci1yaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtZW5kIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtd2lkdGgpO1xuICAgICAgICBib3JkZXItbGVmdDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy10b3Age1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0KTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtYm90dG9tIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQpO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICB9XG5cbiAgICAgICYuc2hvd2luZyxcbiAgICAgICYuc2hvdzpub3QoLmhpZGluZykge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYuc2hvd2luZyxcbiAgICAgICYuaGlkaW5nLFxuICAgICAgJi5zaG93IHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIikge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICAtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0OiBhdXRvO1xuICAgICAgICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICAgICAgLy8gUmVzZXQgYGJhY2tncm91bmQtY29sb3JgIGluIGNhc2UgYC5iZy0qYCBjbGFzc2VzIGFyZSB1c2VkIGluIG9mZmNhbnZhc1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm9mZmNhbnZhcy1iYWNrZHJvcCB7XG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AoJHppbmRleC1vZmZjYW52YXMtYmFja2Ryb3AsICRvZmZjYW52YXMtYmFja2Ryb3AtYmcsICRvZmZjYW52YXMtYmFja2Ryb3Atb3BhY2l0eSk7XG59XG5cbi5vZmZjYW52YXMtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14KTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBwYWRkaW5nOiBjYWxjKHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSAqIC41KSBjYWxjKHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14KSAqIC41KTtcbiAgICAvLyBTcGxpdCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGludmFsaWQgY2FsYygpIGZ1bmN0aW9uIGlmIHZhbHVlIGlzIDBcbiAgICBtYXJnaW4tdG9wOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14KSk7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkpO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG59XG5cbi5vZmZjYW52YXMtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy10aXRsZS1saW5lLWhlaWdodCk7XG59XG5cbi5vZmZjYW52YXMtYm9keSB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy14KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cbiIsIi5wbGFjZWhvbGRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLWhlaWdodDogMWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHdhaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgb3BhY2l0eTogJHBsYWNlaG9sZGVyLW9wYWNpdHktbWF4O1xuXG4gICYuYnRuOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG5cbi8vIFNpemluZ1xuLnBsYWNlaG9sZGVyLXhzIHtcbiAgbWluLWhlaWdodDogLjZlbTtcbn1cblxuLnBsYWNlaG9sZGVyLXNtIHtcbiAgbWluLWhlaWdodDogLjhlbTtcbn1cblxuLnBsYWNlaG9sZGVyLWxnIHtcbiAgbWluLWhlaWdodDogMS4yZW07XG59XG5cbi8vIEFuaW1hdGlvblxuLnBsYWNlaG9sZGVyLWdsb3cge1xuICAucGxhY2Vob2xkZXIge1xuICAgIGFuaW1hdGlvbjogcGxhY2Vob2xkZXItZ2xvdyAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHBsYWNlaG9sZGVyLWdsb3cge1xuICA1MCUge1xuICAgIG9wYWNpdHk6ICRwbGFjZWhvbGRlci1vcGFjaXR5LW1pbjtcbiAgfVxufVxuXG4ucGxhY2Vob2xkZXItd2F2ZSB7XG4gIG1hc2staW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMzBkZWcsICRibGFjayA1NSUsIHJnYmEoMCwgMCwgMCwgKDEgLSAkcGxhY2Vob2xkZXItb3BhY2l0eS1taW4pKSA3NSUsICRibGFjayA5NSUpO1xuICBtYXNrLXNpemU6IDIwMCUgMTAwJTtcbiAgYW5pbWF0aW9uOiBwbGFjZWhvbGRlci13YXZlIDJzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBwbGFjZWhvbGRlci13YXZlIHtcbiAgMTAwJSB7XG4gICAgbWFzay1wb3NpdGlvbjogLTIwMCUgMCU7XG4gIH1cbn1cbiIsIi8vIEFsbC1jYXBzIGBSR0JBKClgIGZ1bmN0aW9uIHVzZWQgYmVjYXVzZSBvZiB0aGlzIFNhc3MgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9ub2RlLXNhc3MvaXNzdWVzLzIyNTFcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAudGV4dC1iZy0jeyRjb2xvcn0ge1xuICAgIGNvbG9yOiBjb2xvci1jb250cmFzdCgkdmFsdWUpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogUkdCQSh2YXIoLS0jeyRwcmVmaXh9I3skY29sb3J9LXJnYiksIHZhcigtLSN7JHByZWZpeH1iZy1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgfVxufVxuIiwiLy8gQWxsLWNhcHMgYFJHQkEoKWAgZnVuY3Rpb24gdXNlZCBiZWNhdXNlIG9mIHRoaXMgU2FzcyBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL25vZGUtc2Fzcy9pc3N1ZXMvMjI1MVxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5saW5rLSN7JGNvbG9yfSB7XG4gICAgY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fSN7JGNvbG9yfS1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fSN7JGNvbG9yfS1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgICBAaWYgJGxpbmstc2hhZGUtcGVyY2VudGFnZSAhPSAwIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgJGhvdmVyLWNvbG9yOiBpZihjb2xvci1jb250cmFzdCgkdmFsdWUpID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJHZhbHVlLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSwgdGludC1jb2xvcigkdmFsdWUsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpKTtcbiAgICAgICAgY29sb3I6IFJHQkEoI3t0by1yZ2IoJGhvdmVyLWNvbG9yKX0sIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodG8tcmdiKCRob3Zlci1jb2xvciksIHZhcigtLSN7JHByZWZpeH1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gT25lLW9mZiBzcGVjaWFsIGxpbmsgaGVscGVyIGFzIGEgYnJpZGdlIHVudGlsIHY2XG4ubGluay1ib2R5LWVtcGhhc2lzIHtcbiAgY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcblxuICBAaWYgJGxpbmstc2hhZGUtcGVyY2VudGFnZSAhPSAwIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIC43NSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IFJHQkEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLXVuZGVybGluZS1vcGFjaXR5LCAuNzUpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgIH1cbiAgfVxufVxuIiwiLmZvY3VzLXJpbmc6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICAvLyBCeSBkZWZhdWx0LCB0aGVyZSBpcyBubyBgLS1icy1mb2N1cy1yaW5nLXhgLCBgLS1icy1mb2N1cy1yaW5nLXlgLCBvciBgLS1icy1mb2N1cy1yaW5nLWJsdXJgLCBidXQgd2UgcHJvdmlkZSBDU1MgdmFyaWFibGVzIHdpdGggZmFsbGJhY2tzIHRvIGluaXRpYWwgYDBgIHZhbHVlc1xuICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy14LCAwKSB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy15LCAwKSB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy1ibHVyLCAwKSB2YXIoLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy13aWR0aCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmctY29sb3IpO1xufVxuIiwiLmljb24tbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBnYXA6ICRpY29uLWxpbmstZ2FwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgLjUpKTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAkaWNvbi1saW5rLXVuZGVybGluZS1vZmZzZXQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICA+IC5iaSB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6ICRpY29uLWxpbmstaWNvbi1zaXplO1xuICAgIGhlaWdodDogJGljb24tbGluay1pY29uLXNpemU7XG4gICAgZmlsbDogY3VycmVudGNvbG9yO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGljb24tbGluay1pY29uLXRyYW5zaXRpb24pO1xuICB9XG59XG5cbi5pY29uLWxpbmstaG92ZXIge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLXZpc2libGUge1xuICAgID4gLmJpIHtcbiAgICAgIHRyYW5zZm9ybTogdmFyKC0tI3skcHJlZml4fWljb24tbGluay10cmFuc2Zvcm0sICRpY29uLWxpbmstaWNvbi10cmFuc2Zvcm0pO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5yYXRpbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tI3skcHJlZml4fWFzcGVjdC1yYXRpbyk7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gID4gKiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AZWFjaCAka2V5LCAkcmF0aW8gaW4gJGFzcGVjdC1yYXRpb3Mge1xuICAucmF0aW8tI3ska2V5fSB7XG4gICAgLS0jeyRwcmVmaXh9YXNwZWN0LXJhdGlvOiAjeyRyYXRpb307XG4gIH1cbn1cbiIsIi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4vLyBSZXNwb25zaXZlIHN0aWNreSB0b3AgYW5kIGJvdHRvbVxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnN0aWNreSN7JGluZml4fS10b3Age1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICAgIH1cblxuICAgIC5zdGlja3kjeyRpbmZpeH0tYm90dG9tIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICBib3R0b206IDA7XG4gICAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBzdGFja3Ncbi5oc3RhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuXG4udnN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMSAxIGF1dG87XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG4vLyBzY3NzLWRvY3MtZW5kIHN0YWNrc1xuIiwiLy9cbi8vIFZpc3VhbGx5IGhpZGRlblxuLy9cblxuLnZpc3VhbGx5LWhpZGRlbixcbi52aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEhpZGUgY29udGVudCB2aXN1YWxseSB3aGlsZSBrZWVwaW5nIGl0IGFjY2Vzc2libGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuKCkge1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7IC8vIEZpeCBmb3IgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTY4NlxuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcblxuICAvLyBGaXggZm9yIHBvc2l0aW9uZWQgdGFibGUgY2FwdGlvbiB0aGF0IGNvdWxkIGJlY29tZSBhbm9ueW1vdXMgY2VsbHNcbiAgJjpub3QoY2FwdGlvbikge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gRml4IHRvIHByZXZlbnQgb3ZlcmZsb3dpbmcgY2hpbGRyZW4gdG8gYmVjb21lIGZvY3VzYWJsZVxuICAqIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gVXNlIHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLCBvciBvbmUgb2YgaXRzIGNoaWxkIGVsZW1lbnRzIGlzIGZvY3VzZWRcbi8vIChpLmUuIHdoZW4gZm9jdXMgaXMgd2l0aGluIHRoZSBlbGVtZW50L2NvbnRhaW5lciB0aGF0IHRoZSBjbGFzcyB3YXMgYXBwbGllZCB0bylcbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9XQUkvV0NBRzIyL1RlY2huaXF1ZXMvZ2VuZXJhbC9HMS5odG1sXG5cbkBtaXhpbiB2aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlKCkge1xuICAmOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gICAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuKCk7XG4gIH1cbn1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6I3skc3RyZXRjaGVkLWxpbmstcHNldWRvLWVsZW1lbnR9IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICRzdHJldGNoZWQtbGluay16LWluZGV4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vXG4vLyBUZXh0IHRydW5jYXRpb25cbi8vXG5cbi50ZXh0LXRydW5jYXRlIHtcbiAgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZSgpO1xufVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIudnIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIHdpZHRoOiAkdnItYm9yZGVyLXdpZHRoO1xuICBtaW4taGVpZ2h0OiAxZW07XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgb3BhY2l0eTogJGhyLW9wYWNpdHk7XG59XG4iLCIvLyBVdGlsaXR5IGdlbmVyYXRvclxuLy8gVXNlZCB0byBnZW5lcmF0ZSB1dGlsaXRpZXMgJiBwcmludCB1dGlsaXRpZXNcbkBtaXhpbiBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXg6IFwiXCIsICRpcy1yZnMtbWVkaWEtcXVlcnk6IGZhbHNlKSB7XG4gICR2YWx1ZXM6IG1hcC1nZXQoJHV0aWxpdHksIHZhbHVlcyk7XG5cbiAgLy8gSWYgdGhlIHZhbHVlcyBhcmUgYSBsaXN0IG9yIHN0cmluZywgY29udmVydCBpdCBpbnRvIGEgbWFwXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZXMpID09IFwic3RyaW5nXCIgb3IgdHlwZS1vZihudGgoJHZhbHVlcywgMSkpICE9IFwibGlzdFwiIHtcbiAgICAkdmFsdWVzOiB6aXAoJHZhbHVlcywgJHZhbHVlcyk7XG4gIH1cblxuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgJHByb3BlcnRpZXM6IG1hcC1nZXQoJHV0aWxpdHksIHByb3BlcnR5KTtcblxuICAgIC8vIE11bHRpcGxlIHByb3BlcnRpZXMgYXJlIHBvc3NpYmxlLCBmb3IgZXhhbXBsZSB3aXRoIHZlcnRpY2FsIG9yIGhvcml6b250YWwgbWFyZ2lucyBvciBwYWRkaW5nc1xuICAgIEBpZiB0eXBlLW9mKCRwcm9wZXJ0aWVzKSA9PSBcInN0cmluZ1wiIHtcbiAgICAgICRwcm9wZXJ0aWVzOiBhcHBlbmQoKCksICRwcm9wZXJ0aWVzKTtcbiAgICB9XG5cbiAgICAvLyBVc2UgY3VzdG9tIGNsYXNzIGlmIHByZXNlbnRcbiAgICAkcHJvcGVydHktY2xhc3M6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjbGFzcyksIG1hcC1nZXQoJHV0aWxpdHksIGNsYXNzKSwgbnRoKCRwcm9wZXJ0aWVzLCAxKSk7XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZigkcHJvcGVydHktY2xhc3MgPT0gbnVsbCwgXCJcIiwgJHByb3BlcnR5LWNsYXNzKTtcblxuICAgIC8vIFVzZSBjdXN0b20gQ1NTIHZhcmlhYmxlIG5hbWUgaWYgcHJlc2VudCwgb3RoZXJ3aXNlIGRlZmF1bHQgdG8gYGNsYXNzYFxuICAgICRjc3MtdmFyaWFibGUtbmFtZTogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIGNzcy12YXJpYWJsZS1uYW1lKSwgbWFwLWdldCgkdXRpbGl0eSwgY3NzLXZhcmlhYmxlLW5hbWUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcykpO1xuXG4gICAgLy8gU3RhdGUgcGFyYW1zIHRvIGdlbmVyYXRlIHBzZXVkby1jbGFzc2VzXG4gICAgJHN0YXRlOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgc3RhdGUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBzdGF0ZSksICgpKTtcblxuICAgICRpbmZpeDogaWYoJHByb3BlcnR5LWNsYXNzID09IFwiXCIgYW5kIHN0ci1zbGljZSgkaW5maXgsIDEsIDEpID09IFwiLVwiLCBzdHItc2xpY2UoJGluZml4LCAyKSwgJGluZml4KTtcblxuICAgIC8vIERvbid0IHByZWZpeCBpZiB2YWx1ZSBrZXkgaXMgbnVsbCAoZS5nLiB3aXRoIHNoYWRvdyBjbGFzcylcbiAgICAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXI6IGlmKCRrZXksIGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCAkaW5maXggPT0gXCJcIiwgXCJcIiwgXCItXCIpICsgJGtleSwgXCJcIik7XG5cbiAgICBAaWYgbWFwLWdldCgkdXRpbGl0eSwgcmZzKSB7XG4gICAgICAvLyBJbnNpZGUgdGhlIG1lZGlhIHF1ZXJ5XG4gICAgICBAaWYgJGlzLXJmcy1tZWRpYS1xdWVyeSB7XG4gICAgICAgICR2YWw6IHJmcy12YWx1ZSgkdmFsdWUpO1xuXG4gICAgICAgIC8vIERvIG5vdCByZW5kZXIgYW55dGhpbmcgaWYgZmx1aWQgYW5kIG5vbiBmbHVpZCB2YWx1ZXMgYXJlIHRoZSBzYW1lXG4gICAgICAgICR2YWx1ZTogaWYoJHZhbCA9PSByZnMtZmx1aWQtdmFsdWUoJHZhbHVlKSwgbnVsbCwgJHZhbCk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICR2YWx1ZTogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGlzLWNzcy12YXI6IG1hcC1nZXQoJHV0aWxpdHksIGNzcy12YXIpO1xuICAgICRpcy1sb2NhbC12YXJzOiBtYXAtZ2V0KCR1dGlsaXR5LCBsb2NhbC12YXJzKTtcbiAgICAkaXMtcnRsOiBtYXAtZ2V0KCR1dGlsaXR5LCBydGwpO1xuXG4gICAgQGlmICR2YWx1ZSAhPSBudWxsIHtcbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmJlZ2luOnJlbW92ZSAqL1xuICAgICAgfVxuXG4gICAgICBAaWYgJGlzLWNzcy12YXIge1xuICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH0jeyRjc3MtdmFyaWFibGUtbmFtZX06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRjc3MtdmFyaWFibGUtbmFtZX06ICN7JHZhbHVlfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9IHtcbiAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgQGlmICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgQGVhY2ggJGxvY2FsLXZhciwgJHZhcmlhYmxlIGluICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRsb2NhbC12YXJ9OiAjeyR2YXJpYWJsZX07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHBzZXVkbyBpbiAkc3RhdGUge1xuICAgICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0tI3skcHNldWRvfTojeyRwc2V1ZG99IHtcbiAgICAgICAgICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XG4gICAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgQGVhY2ggJGxvY2FsLXZhciwgJHZhcmlhYmxlIGluICRpcy1sb2NhbC12YXJzIHtcbiAgICAgICAgICAgICAgICAgIC0tI3skcHJlZml4fSN7JGxvY2FsLXZhcn06ICN7JHZhcmlhYmxlfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWUgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1ydGwgPT0gZmFsc2Uge1xuICAgICAgICAvKiBydGw6ZW5kOnJlbW92ZSAqL1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTG9vcCBvdmVyIGVhY2ggYnJlYWtwb2ludFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcblxuICAvLyBHZW5lcmF0ZSBtZWRpYSBxdWVyeSBpZiBuZWVkZWRcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxuICAgIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XG4gICAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgKG1hcC1nZXQoJHV0aWxpdHksIHJlc3BvbnNpdmUpIG9yICRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFJGUyByZXNjYWxpbmdcbkBtZWRpYSAobWluLXdpZHRoOiAkcmZzLW1xLXZhbHVlKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAaWYgKG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50KSA8ICRyZnMtYnJlYWtwb2ludCkge1xuICAgICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxuICAgICAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XG4gICAgICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcIm1hcFwiIGFuZCBtYXAtZ2V0KCR1dGlsaXR5LCByZnMpIGFuZCAobWFwLWdldCgkdXRpbGl0eSwgcmVzcG9uc2l2ZSkgb3IgJGluZml4ID09IFwiXCIpIHtcbiAgICAgICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgsIHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUHJpbnQgdXRpbGl0aWVzXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgLy8gVGhlbiBjaGVjayBpZiB0aGUgdXRpbGl0eSBuZWVkcyBwcmludCBzdHlsZXNcbiAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgbWFwLWdldCgkdXRpbGl0eSwgcHJpbnQpID09IHRydWUge1xuICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgXCItcHJpbnRcIik7XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVBvcHBpbnM6MzAwLDQwMCw1MDAsNjAwLDcwMCw4MDAsOTAwJmRpc3BsYXk9c3dhcFwiO1xyXG5cclxuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUNhdmVhdDp3Z2h0QDQwMC4uNzAwJmZhbWlseT1GaXJhK01vbm86d2dodEA0MDA7NTAwOzcwMCZmYW1pbHk9RnJhdW5jZXM6aXRhbCxvcHN6LHdnaHRAMCw5Li4xNDQsMTAwLi45MDA7MSw5Li4xNDQsMTAwLi45MDAmZmFtaWx5PUlCTStQbGV4K01vbm86aXRhbCx3Z2h0QDAsMTAwOzAsMjAwOzAsMzAwOzAsNDAwOzAsNTAwOzAsNjAwOzAsNzAwOzEsMTAwOzEsMjAwOzEsMzAwOzEsNDAwOzEsNTAwOzEsNjAwOzEsNzAwJmZhbWlseT1MZXhlbmQ6d2dodEAxMDAuLjkwMCZmYW1pbHk9UG9wcGluczppdGFsLHdnaHRAMCwxMDA7MCwyMDA7MCwzMDA7MCw0MDA7MCw1MDA7MCw2MDA7MCw3MDA7MCw4MDA7MCw5MDA7MSwxMDA7MSwyMDA7MSwzMDA7MSw0MDA7MSw1MDA7MSw2MDA7MSw3MDA7MSw4MDA7MSw5MDAmZmFtaWx5PVNwYWNlK01vbm86aXRhbCx3Z2h0QDAsNDAwOzAsNzAwOzEsNDAwOzEsNzAwJmZhbWlseT1VYnVudHU6aXRhbCx3Z2h0QDAsMzAwOzAsNDAwOzAsNTAwOzAsNzAwOzEsMzAwOzEsNDAwOzEsNTAwOzEsNzAwJmZhbWlseT1Xb3JrK1NhbnM6aXRhbCx3Z2h0QDAsMTAwLi45MDA7MSwxMDAuLjkwMCZkaXNwbGF5PXN3YXBcIik7XHJcblxyXG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Q2F2ZWF0OndnaHRANDAwLi43MDAmZmFtaWx5PUZpcmErTW9ubzp3Z2h0QDQwMDs1MDA7NzAwJmZhbWlseT1GcmF1bmNlczppdGFsLG9wc3osd2dodEAwLDkuLjE0NCwxMDAuLjkwMDsxLDkuLjE0NCwxMDAuLjkwMCZmYW1pbHk9R29yZGl0YXM6d2dodEA0MDA7NzAwJmZhbWlseT1JQk0rUGxleCtNb25vOml0YWwsd2dodEAwLDEwMDswLDIwMDswLDMwMDswLDQwMDswLDUwMDswLDYwMDswLDcwMDsxLDEwMDsxLDIwMDsxLDMwMDsxLDQwMDsxLDUwMDsxLDYwMDsxLDcwMCZmYW1pbHk9TGV4ZW5kOndnaHRAMTAwLi45MDAmZmFtaWx5PVBvcHBpbnM6aXRhbCx3Z2h0QDAsMTAwOzAsMjAwOzAsMzAwOzAsNDAwOzAsNTAwOzAsNjAwOzAsNzAwOzAsODAwOzAsOTAwOzEsMTAwOzEsMjAwOzEsMzAwOzEsNDAwOzEsNTAwOzEsNjAwOzEsNzAwOzEsODAwOzEsOTAwJmZhbWlseT1TcGFjZStNb25vOml0YWwsd2dodEAwLDQwMDswLDcwMDsxLDQwMDsxLDcwMCZmYW1pbHk9VWJ1bnR1Oml0YWwsd2dodEAwLDMwMDswLDQwMDswLDUwMDswLDcwMDsxLDMwMDsxLDQwMDsxLDUwMDsxLDcwMCZmYW1pbHk9V29yaytTYW5zOml0YWwsd2dodEAwLDEwMC4uOTAwOzEsMTAwLi45MDAmZGlzcGxheT1zd2FwXCIpO1xyXG5cclxuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUNhdmVhdDp3Z2h0QDQwMC4uNzAwJmZhbWlseT1GaXJhK01vbm86d2dodEA0MDA7NTAwOzcwMCZmYW1pbHk9RnJhdW5jZXM6aXRhbCxvcHN6LHdnaHRAMCw5Li4xNDQsMTAwLi45MDA7MSw5Li4xNDQsMTAwLi45MDAmZmFtaWx5PUdvcmRpdGFzOndnaHRANDAwOzcwMCZmYW1pbHk9SUJNK1BsZXgrTW9ubzppdGFsLHdnaHRAMCwxMDA7MCwyMDA7MCwzMDA7MCw0MDA7MCw1MDA7MCw2MDA7MCw3MDA7MSwxMDA7MSwyMDA7MSwzMDA7MSw0MDA7MSw1MDA7MSw2MDA7MSw3MDAmZmFtaWx5PUxhdG86aXRhbCx3Z2h0QDAsMTAwOzAsMzAwOzAsNDAwOzAsNzAwOzAsOTAwOzEsMTAwOzEsMzAwOzEsNDAwOzEsNzAwOzEsOTAwJmZhbWlseT1MZXhlbmQ6d2dodEAxMDAuLjkwMCZmYW1pbHk9UG9wcGluczppdGFsLHdnaHRAMCwxMDA7MCwyMDA7MCwzMDA7MCw0MDA7MCw1MDA7MCw2MDA7MCw3MDA7MCw4MDA7MCw5MDA7MSwxMDA7MSwyMDA7MSwzMDA7MSw0MDA7MSw1MDA7MSw2MDA7MSw3MDA7MSw4MDA7MSw5MDAmZmFtaWx5PVNwYWNlK01vbm86aXRhbCx3Z2h0QDAsNDAwOzAsNzAwOzEsNDAwOzEsNzAwJmZhbWlseT1VYnVudHU6aXRhbCx3Z2h0QDAsMzAwOzAsNDAwOzAsNTAwOzAsNzAwOzEsMzAwOzEsNDAwOzEsNTAwOzEsNzAwJmZhbWlseT1Xb3JrK1NhbnM6aXRhbCx3Z2h0QDAsMTAwLi45MDA7MSwxMDAuLjkwMCZkaXNwbGF5PXN3YXBcIik7XHJcblxyXG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Q2F2ZWF0OndnaHRANDAwLi43MDAmZmFtaWx5PUV4bzppdGFsLHdnaHRAMCwxMDAuLjkwMDsxLDEwMC4uOTAwJmZhbWlseT1GaXJhK01vbm86d2dodEA0MDA7NTAwOzcwMCZmYW1pbHk9RnJhdW5jZXM6aXRhbCxvcHN6LHdnaHRAMCw5Li4xNDQsMTAwLi45MDA7MSw5Li4xNDQsMTAwLi45MDAmZmFtaWx5PUdvcmRpdGFzOndnaHRANDAwOzcwMCZmYW1pbHk9SUJNK1BsZXgrTW9ubzppdGFsLHdnaHRAMCwxMDA7MCwyMDA7MCwzMDA7MCw0MDA7MCw1MDA7MCw2MDA7MCw3MDA7MSwxMDA7MSwyMDA7MSwzMDA7MSw0MDA7MSw1MDA7MSw2MDA7MSw3MDAmZmFtaWx5PUxhdG86aXRhbCx3Z2h0QDAsMTAwOzAsMzAwOzAsNDAwOzAsNzAwOzAsOTAwOzEsMTAwOzEsMzAwOzEsNDAwOzEsNzAwOzEsOTAwJmZhbWlseT1MZXhlbmQ6d2dodEAxMDAuLjkwMCZmYW1pbHk9UG9wcGluczppdGFsLHdnaHRAMCwxMDA7MCwyMDA7MCwzMDA7MCw0MDA7MCw1MDA7MCw2MDA7MCw3MDA7MCw4MDA7MCw5MDA7MSwxMDA7MSwyMDA7MSwzMDA7MSw0MDA7MSw1MDA7MSw2MDA7MSw3MDA7MSw4MDA7MSw5MDAmZmFtaWx5PVNwYWNlK01vbm86aXRhbCx3Z2h0QDAsNDAwOzAsNzAwOzEsNDAwOzEsNzAwJmZhbWlseT1VYnVudHU6aXRhbCx3Z2h0QDAsMzAwOzAsNDAwOzAsNTAwOzAsNzAwOzEsMzAwOzEsNDAwOzEsNTAwOzEsNzAwJmZhbWlseT1Xb3JrK1NhbnM6aXRhbCx3Z2h0QDAsMTAwLi45MDA7MSwxMDAuLjkwMCZkaXNwbGF5PXN3YXBcIik7XHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5MaW5lSWNvbnMgRnJlZSBXZWIgRm9udFxyXG5BdXRob3I6IGxpbmVpY29ucy5jb21cclxuXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIkxpbmVJY29uc1wiO1xyXG4gICAgc3JjOiB1cmwoXCIuLi8uLi9mb250cy9MaW5lSWNvbnMuZW90XCIpO1xyXG4gICAgc3JjOlxyXG4gICAgICAgIHVybChcIi4uLy4uL2ZvbnRzL0xpbmVJY29ucy5lb3RcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXHJcbiAgICAgICAgdXJsKFwiLi4vLi4vZm9udHMvTGluZUljb25zLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxyXG4gICAgICAgIHVybChcIi4uLy4uL2ZvbnRzL0xpbmVJY29ucy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXHJcbiAgICAgICAgdXJsKFwiLi4vLi4vZm9udHMvTGluZUljb25zLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSxcclxuICAgICAgICB1cmwoXCIuLi8uLi9mb250cy9MaW5lSWNvbnMuc3ZnXCIpIGZvcm1hdChcInN2Z1wiKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbn1cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgICAgYmFzZSBjbGFzcyBkZWZpbml0aW9uXHJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5sbmkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMWVtLzEgXCJMaW5lSWNvbnNcIjtcclxuICAgIHNwZWFrOiBub25lO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgKi9cclxuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxufVxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgY2hhbmdlIGljb24gc2l6ZVxyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKiByZWxhdGl2ZSB1bml0cyAqL1xyXG4ubG5pLXNtIHtcclxuICAgIGZvbnQtc2l6ZTogMC44ZW07XHJcbn1cclxuLmxuaS1sZyB7XHJcbiAgICBmb250LXNpemU6IDEuMmVtO1xyXG59XHJcbi8qIGFic29sdXRlIHVuaXRzICovXHJcbi5sbmktMTYge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG59XHJcbi5sbmktMzIge1xyXG4gICAgZm9udC1zaXplOiAzMnB4O1xyXG59XHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgYWRkIGEgc3F1YXJlL2NpcmNsZSBiYWNrZ3JvdW5kXHJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4ubG5pLWJnLXNxdWFyZSxcclxuLmxuaS1iZy1jaXJjbGUge1xyXG4gICAgcGFkZGluZzogMC4zNWVtO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcclxufVxyXG4ubG5pLWJnLWNpcmNsZSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbn1cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIHVzZSBpY29ucyBhcyBsaXN0IGl0ZW0gbWFya2Vyc1xyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4ubG5pLXVsIHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxufVxyXG4ubG5pLXVsID4gbGkge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG4ubG5pLXVsID4gbGkgPiAubG5pIHtcclxuICAgIG1hcmdpbi1yaWdodDogMC40ZW07XHJcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxufVxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgc3Bpbm5pbmcgaWNvbnNcclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLmxuaS1pcy1zcGlubmluZyB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogbG5pLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xyXG4gICAgLW1vei1hbmltYXRpb246IGxuaS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjtcclxuICAgIGFuaW1hdGlvbjogbG5pLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyBsbmktc3BpbiB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICAgIH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgbG5pLXNwaW4ge1xyXG4gICAgMCUge1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbiAgICB9XHJcbn1cclxuQGtleWZyYW1lcyBsbmktc3BpbiB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gICAgfVxyXG59XHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICByb3RhdGVkL2ZsaXBwZWQgaWNvbnNcclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLmxuaS1yb3RhdGUtOTAge1xyXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0xKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG59XHJcbi5sbmktcm90YXRlLTE4MCB7XHJcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIpO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxufVxyXG4ubG5pLXJvdGF0ZS0yNzAge1xyXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0zKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xyXG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XHJcbn1cclxuLmxuaS1mbGlwLXkge1xyXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0wKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xyXG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcclxufVxyXG4ubG5pLWZsaXAteCB7XHJcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIpO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XHJcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xyXG59XHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAgIGljb25zXHJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4ubG5pLTUwMHB4OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMDJcIjtcclxufVxyXG5cclxuLmxuaS1hZGQtZmlsZXM6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEwM1wiO1xyXG59XHJcblxyXG4ubG5pLWFsYXJtLWNsb2NrOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMDRcIjtcclxufVxyXG5cclxuLmxuaS1hbGFybTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTA1XCI7XHJcbn1cclxuXHJcbi5sbmktYWlyYm5iOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMDZcIjtcclxufVxyXG5cclxuLmxuaS1hZG9iZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTA3XCI7XHJcbn1cclxuXHJcbi5sbmktYW1hem9uLXBheTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTA4XCI7XHJcbn1cclxuXHJcbi5sbmktYW1hem9uOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMDlcIjtcclxufVxyXG5cclxuLmxuaS1hbWV4OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMGFcIjtcclxufVxyXG5cclxuLmxuaS1hbmNob3I6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEwYlwiO1xyXG59XHJcblxyXG4ubG5pLWFtYXpvbi1vcmlnaW5hbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTBjXCI7XHJcbn1cclxuXHJcbi5sbmktYW5kcm9pZC1vcmlnaW5hbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTBkXCI7XHJcbn1cclxuXHJcbi5sbmktYW5kcm9pZDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTBlXCI7XHJcbn1cclxuXHJcbi5sbmktYW5nZWxsaXN0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMGZcIjtcclxufVxyXG5cclxuLmxuaS1hbmdsZS1kb3VibGUtZG93bjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTEwXCI7XHJcbn1cclxuXHJcbi5sbmktYW5nbGUtZG91YmxlLWxlZnQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWExMVwiO1xyXG59XHJcblxyXG4ubG5pLWFuZ2xlLWRvdWJsZS1yaWdodDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTEyXCI7XHJcbn1cclxuXHJcbi5sbmktYW5nbGUtZG91YmxlLXVwOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMTNcIjtcclxufVxyXG5cclxuLmxuaS1hbmd1bGFyOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMTRcIjtcclxufVxyXG5cclxuLmxuaS1hcGFydG1lbnQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWExNVwiO1xyXG59XHJcblxyXG4ubG5pLWFwcC1zdG9yZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTE2XCI7XHJcbn1cclxuXHJcbi5sbmktYXBwbGUtcGF5OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMTdcIjtcclxufVxyXG5cclxuLmxuaS1hcHBsZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTE4XCI7XHJcbn1cclxuXHJcbi5sbmktYXJjaGl2ZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTE5XCI7XHJcbn1cclxuXHJcbi5sbmktYXJyb3ctZG93bi1jaXJjbGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWExYVwiO1xyXG59XHJcblxyXG4ubG5pLWFycm93LWxlZnQtY2lyY2xlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMWJcIjtcclxufVxyXG5cclxuLmxuaS1hcnJvdy1sZWZ0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMWNcIjtcclxufVxyXG5cclxuLmxuaS1hcnJvdy1yaWdodC1jaXJjbGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWExZFwiO1xyXG59XHJcblxyXG4ubG5pLWFycm93LXJpZ2h0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMWVcIjtcclxufVxyXG5cclxuLmxuaS1hcnJvdy10b3AtbGVmdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTFmXCI7XHJcbn1cclxuXHJcbi5sbmktYXJyb3ctdG9wLXJpZ2h0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMjBcIjtcclxufVxyXG5cclxuLmxuaS1hcnJvdy11cC1jaXJjbGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEyMVwiO1xyXG59XHJcblxyXG4ubG5pLWFycm93LXVwOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMjJcIjtcclxufVxyXG5cclxuLmxuaS1hcnJvd3MtaG9yaXpvbnRhbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTIzXCI7XHJcbn1cclxuXHJcbi5sbmktYXJyb3dzLXZlcnRpY2FsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMjRcIjtcclxufVxyXG5cclxuLmxuaS1hdGxhc3NpYW46OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEyNVwiO1xyXG59XHJcblxyXG4ubG5pLWF3czo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTI2XCI7XHJcbn1cclxuXHJcbi5sbmktYXJyb3ctZG93bjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTI3XCI7XHJcbn1cclxuXHJcbi5sbmktYW1idWxhbmNlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMjhcIjtcclxufVxyXG5cclxuLmxuaS1hZ2VuZGE6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEyOVwiO1xyXG59XHJcblxyXG4ubG5pLWJhY2t3YXJkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMmFcIjtcclxufVxyXG5cclxuLmxuaS1iYWxvb246OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEyYlwiO1xyXG59XHJcblxyXG4ubG5pLWJhbjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTJjXCI7XHJcbn1cclxuXHJcbi5sbmktYmFyLWNoYXJ0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMmRcIjtcclxufVxyXG5cclxuLmxuaS1iZWhhbmNlLW9yaWdpbmFsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhMmVcIjtcclxufVxyXG5cclxuLmxuaS1iaXRidWNrZXQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEyZlwiO1xyXG59XHJcblxyXG4ubG5pLWJpdGNvaW46OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEzMFwiO1xyXG59XHJcblxyXG4ubG5pLWJsYWNrYm9hcmQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEzMVwiO1xyXG59XHJcblxyXG4ubG5pLWJsb2dnZXI6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEzMlwiO1xyXG59XHJcblxyXG4ubG5pLWJsdWV0b290aDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTMzXCI7XHJcbn1cclxuXHJcbi5sbmktYm9sZDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTM0XCI7XHJcbn1cclxuXHJcbi5sbmktYm9sdC1hbHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEzNVwiO1xyXG59XHJcblxyXG4ubG5pLWJvbHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEzNlwiO1xyXG59XHJcblxyXG4ubG5pLWJvb2s6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEzN1wiO1xyXG59XHJcblxyXG4ubG5pLWJvb2ttYXJrLWFsdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTM4XCI7XHJcbn1cclxuXHJcbi5sbmktYm9va21hcms6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEzOVwiO1xyXG59XHJcblxyXG4ubG5pLWJvb3RzdHJhcDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTNhXCI7XHJcbn1cclxuXHJcbi5sbmktYnJpY2tzOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhM2JcIjtcclxufVxyXG5cclxuLmxuaS1icmlkZ2U6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWEzY1wiO1xyXG59XHJcblxyXG4ubG5pLWJyaWVmY2FzZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTNkXCI7XHJcbn1cclxuXHJcbi5sbmktYnJ1c2gtYWx0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhM2VcIjtcclxufVxyXG5cclxuLmxuaS1icnVzaDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTNmXCI7XHJcbn1cclxuXHJcbi5sbmktYnViYmxlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNDBcIjtcclxufVxyXG5cclxuLmxuaS1idWc6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE0MVwiO1xyXG59XHJcblxyXG4ubG5pLWJ1bGI6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE0MlwiO1xyXG59XHJcblxyXG4ubG5pLWJ1bGxob3JuOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNDNcIjtcclxufVxyXG5cclxuLmxuaS1idXJnZXI6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE0NFwiO1xyXG59XHJcblxyXG4ubG5pLWJ1czo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTQ1XCI7XHJcbn1cclxuXHJcbi5sbmktY2FrZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTQ2XCI7XHJcbn1cclxuXHJcbi5sbmktY2FsY3VsYXRvcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTQ3XCI7XHJcbn1cclxuXHJcbi5sbmktY2FsZW5kYXI6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE0OFwiO1xyXG59XHJcblxyXG4ubG5pLWNhbWVyYTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTQ5XCI7XHJcbn1cclxuXHJcbi5sbmktY2FuZHktY2FuZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTRhXCI7XHJcbn1cclxuXHJcbi5sbmktY2FuZHk6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE0YlwiO1xyXG59XHJcblxyXG4ubG5pLWNhcHN1bGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE0Y1wiO1xyXG59XHJcblxyXG4ubG5pLWNhci1hbHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE0ZFwiO1xyXG59XHJcblxyXG4ubG5pLWNhcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTRlXCI7XHJcbn1cclxuXHJcbi5sbmktY2FyYXZhbjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTRmXCI7XHJcbn1cclxuXHJcbi5sbmktY2FydC1mdWxsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNTBcIjtcclxufVxyXG5cclxuLmxuaS1jYXJ0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNTFcIjtcclxufVxyXG5cclxuLmxuaS1jZXJ0aWZpY2F0ZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTUyXCI7XHJcbn1cclxuXHJcbi5sbmktY2hlY2tib3g6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE1M1wiO1xyXG59XHJcblxyXG4ubG5pLWNoZWNrbWFyay1jaXJjbGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE1NFwiO1xyXG59XHJcblxyXG4ubG5pLWNoZWNrbWFyazo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTU1XCI7XHJcbn1cclxuXHJcbi5sbmktY2hlZi1oYXQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE1NlwiO1xyXG59XHJcblxyXG4ubG5pLWNoZXZyb24tZG93bi1jaXJjbGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE1N1wiO1xyXG59XHJcblxyXG4ubG5pLWNoZXZyb24tZG93bjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTU4XCI7XHJcbn1cclxuXHJcbi5sbmktY2hldnJvbi1sZWZ0LWNpcmNsZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTU5XCI7XHJcbn1cclxuXHJcbi5sbmktY2hldnJvbi1sZWZ0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNWFcIjtcclxufVxyXG5cclxuLmxuaS1jaGV2cm9uLXJpZ2h0LWNpcmNsZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTViXCI7XHJcbn1cclxuXHJcbi5sbmktY2hldnJvbi1yaWdodDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTVjXCI7XHJcbn1cclxuXHJcbi5sbmktY2hldnJvbi11cC1jaXJjbGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE1ZFwiO1xyXG59XHJcblxyXG4ubG5pLWNoZXZyb24tdXA6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE1ZVwiO1xyXG59XHJcblxyXG4ubG5pLWNocm9tZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTVmXCI7XHJcbn1cclxuXHJcbi5sbmktY2lyY2xlLW1pbnVzOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNjBcIjtcclxufVxyXG5cclxuLmxuaS1jaXJjbGUtcGx1czo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTYxXCI7XHJcbn1cclxuXHJcbi5sbmktY2xpcGJvYXJkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNjJcIjtcclxufVxyXG5cclxuLmxuaS1jbG9zZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTYzXCI7XHJcbn1cclxuXHJcbi5sbmktY2xvdWQtY2hlY2s6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE2NFwiO1xyXG59XHJcblxyXG4ubG5pLWNsb3VkLWRvd25sb2FkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNjVcIjtcclxufVxyXG5cclxuLmxuaS1jbG91ZC1uZXR3b3JrOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNjZcIjtcclxufVxyXG5cclxuLmxuaS1jbG91ZC1zeW5jOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNjdcIjtcclxufVxyXG5cclxuLmxuaS1jbG91ZC11cGxvYWQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE2OFwiO1xyXG59XHJcblxyXG4ubG5pLWNsb3VkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNjlcIjtcclxufVxyXG5cclxuLmxuaS1jbG91ZHktc3VuOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNmFcIjtcclxufVxyXG5cclxuLmxuaS1jb2RlLWFsdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTZiXCI7XHJcbn1cclxuXHJcbi5sbmktY29kZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTZjXCI7XHJcbn1cclxuXHJcbi5sbmktY29kZXBlbjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTZkXCI7XHJcbn1cclxuXHJcbi5sbmktY29mZmVlLWN1cDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTZlXCI7XHJcbn1cclxuXHJcbi5sbmktY29nOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNmZcIjtcclxufVxyXG5cclxuLmxuaS1jb2dzOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNzBcIjtcclxufVxyXG5cclxuLmxuaS1jb2luOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNzFcIjtcclxufVxyXG5cclxuLmxuaS1jb21tZW50cy1hbHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE3MlwiO1xyXG59XHJcblxyXG4ubG5pLWNvbW1lbnRzLXJlcGx5OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNzNcIjtcclxufVxyXG5cclxuLmxuaS1jb21tZW50czo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTc0XCI7XHJcbn1cclxuXHJcbi5sbmktY29tcGFzczo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTc1XCI7XHJcbn1cclxuXHJcbi5sbmktY29uc3RydWN0aW9uLWhhbW1lcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTc2XCI7XHJcbn1cclxuXHJcbi5sbmktY29uc3RydWN0aW9uOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNzdcIjtcclxufVxyXG5cclxuLmxuaS1jb25zdWx0aW5nOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNzhcIjtcclxufVxyXG5cclxuLmxuaS1jb250cm9sLXBhbmVsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhNzlcIjtcclxufVxyXG5cclxuLmxuaS1jcGFuZWw6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE3YVwiO1xyXG59XHJcblxyXG4ubG5pLWNyZWF0aXZlLWNvbW1vbnM6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE3YlwiO1xyXG59XHJcblxyXG4ubG5pLWNyZWRpdC1jYXJkczo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTdjXCI7XHJcbn1cclxuXHJcbi5sbmktY3JvcDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTdkXCI7XHJcbn1cclxuXHJcbi5sbmktY3Jvc3MtY2lyY2xlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhN2VcIjtcclxufVxyXG5cclxuLmxuaS1jcm93bjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTdmXCI7XHJcbn1cclxuXHJcbi5sbmktY3NzMzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTgwXCI7XHJcbn1cclxuXHJcbi5sbmktY3VwOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhODFcIjtcclxufVxyXG5cclxuLmxuaS1jdXN0b21lcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTgyXCI7XHJcbn1cclxuXHJcbi5sbmktY3V0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhODNcIjtcclxufVxyXG5cclxuLmxuaS1kYXNoYm9hcmQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE4NFwiO1xyXG59XHJcblxyXG4ubG5pLWRhdGFiYXNlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhODVcIjtcclxufVxyXG5cclxuLmxuaS1kZWxpdmVyeTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTg2XCI7XHJcbn1cclxuXHJcbi5sbmktZGV2OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhODdcIjtcclxufVxyXG5cclxuLmxuaS1kaWFtb25kLWFsdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTg4XCI7XHJcbn1cclxuXHJcbi5sbmktZGlhbW9uZDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTg5XCI7XHJcbn1cclxuXHJcbi5sbmktZGluZXJzLWNsdWI6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE4YVwiO1xyXG59XHJcblxyXG4ubG5pLWRpbm5lcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYThiXCI7XHJcbn1cclxuXHJcbi5sbmktZGlyZWN0aW9uLWFsdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYThjXCI7XHJcbn1cclxuXHJcbi5sbmktZGlyZWN0aW9uLWx0cjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYThkXCI7XHJcbn1cclxuXHJcbi5sbmktZGlyZWN0aW9uLXJ0bDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYThlXCI7XHJcbn1cclxuXHJcbi5sbmktZGlyZWN0aW9uOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhOGZcIjtcclxufVxyXG5cclxuLmxuaS1kaXNjb3JkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhOTBcIjtcclxufVxyXG5cclxuLmxuaS1kaXNjb3Zlcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTkxXCI7XHJcbn1cclxuXHJcbi5sbmktZGlzcGxheS1hbHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE5MlwiO1xyXG59XHJcblxyXG4ubG5pLWRpc3BsYXk6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE5M1wiO1xyXG59XHJcblxyXG4ubG5pLWRvY2tlcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTk0XCI7XHJcbn1cclxuXHJcbi5sbmktZG9sbGFyOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhOTVcIjtcclxufVxyXG5cclxuLmxuaS1kb21haW46OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE5NlwiO1xyXG59XHJcblxyXG4ubG5pLWRvd25sb2FkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhOTdcIjtcclxufVxyXG5cclxuLmxuaS1kcmliYmJsZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTk4XCI7XHJcbn1cclxuXHJcbi5sbmktZHJvcDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTk5XCI7XHJcbn1cclxuXHJcbi5sbmktZHJvcGJveC1vcmlnaW5hbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTlhXCI7XHJcbn1cclxuXHJcbi5sbmktZHJvcGJveDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYTliXCI7XHJcbn1cclxuXHJcbi5sbmktZHJ1cGFsLW9yaWdpbmFsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhOWNcIjtcclxufVxyXG5cclxuLmxuaS1kcnVwYWw6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWE5ZFwiO1xyXG59XHJcblxyXG4ubG5pLWR1bWJiZWxsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhOWVcIjtcclxufVxyXG5cclxuLmxuaS1lZGdlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhOWZcIjtcclxufVxyXG5cclxuLmxuaS1lbW9qaS1jb29sOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhYTBcIjtcclxufVxyXG5cclxuLmxuaS1lbW9qaS1mcmllbmRseTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWExXCI7XHJcbn1cclxuXHJcbi5sbmktZW1vamktaGFwcHk6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFhMlwiO1xyXG59XHJcblxyXG4ubG5pLWVtb2ppLXNhZDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWEzXCI7XHJcbn1cclxuXHJcbi5sbmktZW1vamktc21pbGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFhNFwiO1xyXG59XHJcblxyXG4ubG5pLWVtb2ppLXNwZWVjaGxlc3M6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFhNVwiO1xyXG59XHJcblxyXG4ubG5pLWVtb2ppLXN1c3BlY3Q6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFhNlwiO1xyXG59XHJcblxyXG4ubG5pLWVtb2ppLXRvdW5nZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWE3XCI7XHJcbn1cclxuXHJcbi5sbmktZW1wdHktZmlsZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWE4XCI7XHJcbn1cclxuXHJcbi5sbmktZW50ZXI6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFhOVwiO1xyXG59XHJcblxyXG4ubG5pLWVudmF0bzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWFhXCI7XHJcbn1cclxuXHJcbi5sbmktZW52ZWxvcGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFhYlwiO1xyXG59XHJcblxyXG4ubG5pLWVyYXNlcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWFjXCI7XHJcbn1cclxuXHJcbi5sbmktZXVybzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWFkXCI7XHJcbn1cclxuXHJcbi5sbmktZXhpdC1kb3duOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhYWVcIjtcclxufVxyXG5cclxuLmxuaS1leGl0LXVwOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhYWZcIjtcclxufVxyXG5cclxuLmxuaS1leGl0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhYjBcIjtcclxufVxyXG5cclxuLmxuaS1leWU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFiMVwiO1xyXG59XHJcblxyXG4ubG5pLWZhY2Vib29rLWZpbGxlZDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWIyXCI7XHJcbn1cclxuXHJcbi5sbmktZmFjZWJvb2stbWVzc2VuZ2VyOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhYjNcIjtcclxufVxyXG5cclxuLmxuaS1mYWNlYm9vay1vcmlnaW5hbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWI0XCI7XHJcbn1cclxuXHJcbi5sbmktZmFjZWJvb2stb3ZhbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWI1XCI7XHJcbn1cclxuXHJcbi5sbmktZmFjZWJvb2s6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFiNlwiO1xyXG59XHJcblxyXG4ubG5pLWZpZ21hOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhYjdcIjtcclxufVxyXG5cclxuLmxuaS1maWxlczo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWI4XCI7XHJcbn1cclxuXHJcbi5sbmktZmlyZWZveC1vcmlnaW5hbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWI5XCI7XHJcbn1cclxuXHJcbi5sbmktZmlyZWZveDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWJhXCI7XHJcbn1cclxuXHJcbi5sbmktZmlyZXdvcmtzOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhYmJcIjtcclxufVxyXG5cclxuLmxuaS1maXJzdC1haWQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFiY1wiO1xyXG59XHJcblxyXG4ubG5pLWZsYWctYWx0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhYmRcIjtcclxufVxyXG5cclxuLmxuaS1mbGFnOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhYmVcIjtcclxufVxyXG5cclxuLmxuaS1mbGFnczo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWJmXCI7XHJcbn1cclxuXHJcbi5sbmktZmxpY2tyOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhYzBcIjtcclxufVxyXG5cclxuLmxuaS1iYXNrZXRiYWxsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhYzFcIjtcclxufVxyXG5cclxuLmxuaS1iZWhhbmNlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhYzJcIjtcclxufVxyXG5cclxuLmxuaS1mb3J3YXJkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhYzNcIjtcclxufVxyXG5cclxuLmxuaS1mcmFtZS1leHBhbmQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFjNFwiO1xyXG59XHJcblxyXG4ubG5pLWZsb3dlcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWM1XCI7XHJcbn1cclxuXHJcbi5sbmktZnVsbC1zY3JlZW46OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFjNlwiO1xyXG59XHJcblxyXG4ubG5pLWZ1bm5lbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWM3XCI7XHJcbn1cclxuXHJcbi5sbmktZ2FsbGVyeTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWM4XCI7XHJcbn1cclxuXHJcbi5sbmktZ2FtZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWM5XCI7XHJcbn1cclxuXHJcbi5sbmktZ2lmdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWNhXCI7XHJcbn1cclxuXHJcbi5sbmktZ2l0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhY2JcIjtcclxufVxyXG5cclxuLmxuaS1naXRodWItb3JpZ2luYWw6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFjY1wiO1xyXG59XHJcblxyXG4ubG5pLWdpdGh1Yjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWNkXCI7XHJcbn1cclxuXHJcbi5sbmktZ29vZHJlYWRzOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhY2VcIjtcclxufVxyXG5cclxuLmxuaS1nb29nbGUtZHJpdmU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFjZlwiO1xyXG59XHJcblxyXG4ubG5pLWdvb2dsZS1wYXk6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFkMFwiO1xyXG59XHJcblxyXG4ubG5pLWZyZXNoLWp1aWNlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZDFcIjtcclxufVxyXG5cclxuLmxuaS1mb2xkZXI6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFkMlwiO1xyXG59XHJcblxyXG4ubG5pLWJpLWN5Y2xlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZDNcIjtcclxufVxyXG5cclxuLmxuaS1ncmFwaDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWQ0XCI7XHJcbn1cclxuXHJcbi5sbmktZ3JpZC1hbHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFkNVwiO1xyXG59XHJcblxyXG4ubG5pLWdyaWQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFkNlwiO1xyXG59XHJcblxyXG4ubG5pLWdvb2dsZS13YWxsZXQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFkN1wiO1xyXG59XHJcblxyXG4ubG5pLWdyb3c6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFkOFwiO1xyXG59XHJcblxyXG4ubG5pLWhhbW1lcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWQ5XCI7XHJcbn1cclxuXHJcbi5sbmktaGFuZDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWRhXCI7XHJcbn1cclxuXHJcbi5sbmktaGFuZHNoYWtlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZGJcIjtcclxufVxyXG5cclxuLmxuaS1oYXJkZHJpdmU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFkY1wiO1xyXG59XHJcblxyXG4ubG5pLWhlYWRwaG9uZS1hbHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFkZFwiO1xyXG59XHJcblxyXG4ubG5pLWhlYWRwaG9uZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWRlXCI7XHJcbn1cclxuXHJcbi5sbmktaGVhcnQtZmlsbGVkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZGZcIjtcclxufVxyXG5cclxuLmxuaS1oZWFydC1tb25pdG9yOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZTBcIjtcclxufVxyXG5cclxuLmxuaS1oZWFydDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWUxXCI7XHJcbn1cclxuXHJcbi5sbmktaGVsaWNvcHRlcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWUyXCI7XHJcbn1cclxuXHJcbi5sbmktaGVsbWV0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZTNcIjtcclxufVxyXG5cclxuLmxuaS1oZWxwOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZTRcIjtcclxufVxyXG5cclxuLmxuaS1oaWdobGlnaHQtYWx0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZTVcIjtcclxufVxyXG5cclxuLmxuaS1oaWdobGlnaHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFlNlwiO1xyXG59XHJcblxyXG4ubG5pLWhvbWU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFlN1wiO1xyXG59XHJcblxyXG4ubG5pLWhvc3BpdGFsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZThcIjtcclxufVxyXG5cclxuLmxuaS1ob3VyZ2xhc3M6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFlOVwiO1xyXG59XHJcblxyXG4ubG5pLWh0bWw1OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZWFcIjtcclxufVxyXG5cclxuLmxuaS1pbWFnZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWViXCI7XHJcbn1cclxuXHJcbi5sbmktaW5ib3g6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFlY1wiO1xyXG59XHJcblxyXG4ubG5pLWluZGVudC1kZWNyZWFzZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWVkXCI7XHJcbn1cclxuXHJcbi5sbmktaW5kZW50LWluY3JlYXNlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZWVcIjtcclxufVxyXG5cclxuLmxuaS1pbmZpbml0ZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWVmXCI7XHJcbn1cclxuXHJcbi5sbmktaW5mb3JtYXRpb246OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFmMFwiO1xyXG59XHJcblxyXG4ubG5pLWluc3RhZ3JhbS1maWxsZWQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFmMVwiO1xyXG59XHJcblxyXG4ubG5pLWluc3RhZ3JhbS1vcmlnaW5hbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWYyXCI7XHJcbn1cclxuXHJcbi5sbmktaW5zdGFncmFtOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZjNcIjtcclxufVxyXG5cclxuLmxuaS1pbnZlbnRpb246OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFmNFwiO1xyXG59XHJcblxyXG4ubG5pLWdyYWR1YXRpb246OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFmNVwiO1xyXG59XHJcblxyXG4ubG5pLWludmVzdC1tb25pdG9yOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZjZcIjtcclxufVxyXG5cclxuLmxuaS1pc2xhbmQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFmN1wiO1xyXG59XHJcblxyXG4ubG5pLWl0YWxpYzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWY4XCI7XHJcbn1cclxuXHJcbi5sbmktamF2YTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWY5XCI7XHJcbn1cclxuXHJcbi5sbmktamF2YXNjcmlwdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWZhXCI7XHJcbn1cclxuXHJcbi5sbmktamNiOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZmJcIjtcclxufVxyXG5cclxuLmxuaS1qb29tbGEtb3JpZ2luYWw6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFmY1wiO1xyXG59XHJcblxyXG4ubG5pLWpvb21sYTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYWZkXCI7XHJcbn1cclxuXHJcbi5sbmktanNmaWRkbGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWFmZVwiO1xyXG59XHJcblxyXG4ubG5pLWp1aWNlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVhZmZcIjtcclxufVxyXG5cclxuLmxuaS1rZXk6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIwMFwiO1xyXG59XHJcblxyXG4ubG5pLWtleWJvYXJkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMDFcIjtcclxufVxyXG5cclxuLmxuaS1rZXl3b3JkLXJlc2VhcmNoOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMDJcIjtcclxufVxyXG5cclxuLmxuaS1oYWNrZXItbmV3czo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjAzXCI7XHJcbn1cclxuXHJcbi5sbmktZ29vZ2xlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMDRcIjtcclxufVxyXG5cclxuLmxuaS1sYXJhdmVsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMDVcIjtcclxufVxyXG5cclxuLmxuaS1sYXllcnM6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIwNlwiO1xyXG59XHJcblxyXG4ubG5pLWxheW91dDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjA3XCI7XHJcbn1cclxuXHJcbi5sbmktbGVhZjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjA4XCI7XHJcbn1cclxuXHJcbi5sbmktbGlicmFyeTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjA5XCI7XHJcbn1cclxuXHJcbi5sbmktbGljZW5jc2U6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIwYVwiO1xyXG59XHJcblxyXG4ubG5pLWxpZmUtcmluZzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjBiXCI7XHJcbn1cclxuXHJcbi5sbmktbGluZS1kYXNoZWQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIwY1wiO1xyXG59XHJcblxyXG4ubG5pLWxpbmUtZG90dGVkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMGRcIjtcclxufVxyXG5cclxuLmxuaS1saW5lLWRvdWJsZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjBlXCI7XHJcbn1cclxuXHJcbi5sbmktbGluZS1zcGFjaW5nOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMGZcIjtcclxufVxyXG5cclxuLmxuaS1saW5lOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMTBcIjtcclxufVxyXG5cclxuLmxuaS1saW5laWNvbnMtYWx0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMTFcIjtcclxufVxyXG5cclxuLmxuaS1saW5laWNvbnM6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIxMlwiO1xyXG59XHJcblxyXG4ubG5pLWxpbms6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIxM1wiO1xyXG59XHJcblxyXG4ubG5pLWxpbmtlZGluLW9yaWdpbmFsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMTRcIjtcclxufVxyXG5cclxuLmxuaS1saW5rZWRpbjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjE1XCI7XHJcbn1cclxuXHJcbi5sbmktbGlzdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjE2XCI7XHJcbn1cclxuXHJcbi5sbmktbG9jay1hbHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIxN1wiO1xyXG59XHJcblxyXG4ubG5pLWxvY2s6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIxOFwiO1xyXG59XHJcblxyXG4ubG5pLW1hZ25ldDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjE5XCI7XHJcbn1cclxuXHJcbi5sbmktbWFnbmlmaWVyOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMWFcIjtcclxufVxyXG5cclxuLmxuaS1tYWlsY2hpbXA6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIxYlwiO1xyXG59XHJcblxyXG4ubG5pLW1hcC1tYXJrZXI6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIxY1wiO1xyXG59XHJcblxyXG4ubG5pLW1hcDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjFkXCI7XHJcbn1cclxuXHJcbi5sbmktbWFzaHJvb206OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIxZVwiO1xyXG59XHJcblxyXG4ubG5pLW1hc3RlcmNhcmQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIxZlwiO1xyXG59XHJcblxyXG4ubG5pLW1lZGFsbC1hbHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIyMFwiO1xyXG59XHJcblxyXG4ubG5pLW1lZGFsbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjIxXCI7XHJcbn1cclxuXHJcbi5sbmktbWVkaXVtOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMjJcIjtcclxufVxyXG5cclxuLmxuaS1sYXB0b3A6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIyM1wiO1xyXG59XHJcblxyXG4ubG5pLWludmVzdG1lbnQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIyNFwiO1xyXG59XHJcblxyXG4ubG5pLWxhcHRvcC1waG9uZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjI1XCI7XHJcbn1cclxuXHJcbi5sbmktbWVnZW50bzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjI2XCI7XHJcbn1cclxuXHJcbi5sbmktbWljOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMjdcIjtcclxufVxyXG5cclxuLmxuaS1taWNyb3Bob25lOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMjhcIjtcclxufVxyXG5cclxuLmxuaS1tZW51OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMjlcIjtcclxufVxyXG5cclxuLmxuaS1taWNyb3Njb3BlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMmFcIjtcclxufVxyXG5cclxuLmxuaS1tb25leS1sb2NhdGlvbjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjJiXCI7XHJcbn1cclxuXHJcbi5sbmktbWludXM6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIyY1wiO1xyXG59XHJcblxyXG4ubG5pLW1vYmlsZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjJkXCI7XHJcbn1cclxuXHJcbi5sbmktbW9yZS1hbHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIyZVwiO1xyXG59XHJcblxyXG4ubG5pLW1vdXNlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMmZcIjtcclxufVxyXG5cclxuLmxuaS1tb3ZlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMzBcIjtcclxufVxyXG5cclxuLmxuaS1tdXNpYzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjMxXCI7XHJcbn1cclxuXHJcbi5sbmktbmV0d29yazo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjMyXCI7XHJcbn1cclxuXHJcbi5sbmktbmlnaHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIzM1wiO1xyXG59XHJcblxyXG4ubG5pLW5vZGVqcy1hbHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIzNFwiO1xyXG59XHJcblxyXG4ubG5pLW5vZGVqczo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjM1XCI7XHJcbn1cclxuXHJcbi5sbmktbm90ZXBhZDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjM2XCI7XHJcbn1cclxuXHJcbi5sbmktbnBtOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViMzdcIjtcclxufVxyXG5cclxuLmxuaS1vZmZlcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjM4XCI7XHJcbn1cclxuXHJcbi5sbmktb3BlcmE6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIzOVwiO1xyXG59XHJcblxyXG4ubG5pLXBhY2thZ2U6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIzYVwiO1xyXG59XHJcblxyXG4ubG5pLXBhZ2UtYnJlYWs6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIzYlwiO1xyXG59XHJcblxyXG4ubG5pLXBhZ2luYXRpb246OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIzY1wiO1xyXG59XHJcblxyXG4ubG5pLXBhaW50LWJ1Y2tldDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjNkXCI7XHJcbn1cclxuXHJcbi5sbmktcGFpbnQtcm9sbGVyOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViM2VcIjtcclxufVxyXG5cclxuLmxuaS1wYWxsZXQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWIzZlwiO1xyXG59XHJcblxyXG4ubG5pLXBhcGVyY2xpcDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjQwXCI7XHJcbn1cclxuXHJcbi5sbmktbW9yZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjQxXCI7XHJcbn1cclxuXHJcbi5sbmktcGF1c2U6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI0MlwiO1xyXG59XHJcblxyXG4ubG5pLXBheXBhbC1vcmlnaW5hbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjQzXCI7XHJcbn1cclxuXHJcbi5sbmktbWljcm9zb2Z0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNDRcIjtcclxufVxyXG5cclxuLmxuaS1tb25leS1wcm90ZWN0aW9uOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNDVcIjtcclxufVxyXG5cclxuLmxuaS1wZW5jaWw6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI0NlwiO1xyXG59XHJcblxyXG4ubG5pLXBheXBhbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjQ3XCI7XHJcbn1cclxuXHJcbi5sbmktcGVuY2lsLWFsdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjQ4XCI7XHJcbn1cclxuXHJcbi5sbmktcGF0cmVvbjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjQ5XCI7XHJcbn1cclxuXHJcbi5sbmktcGhvbmUtc2V0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNGFcIjtcclxufVxyXG5cclxuLmxuaS1waG9uZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjRiXCI7XHJcbn1cclxuXHJcbi5sbmktcGluOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNGNcIjtcclxufVxyXG5cclxuLmxuaS1waW50ZXJlc3Q6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI0ZFwiO1xyXG59XHJcblxyXG4ubG5pLXBpZS1jaGFydDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjRlXCI7XHJcbn1cclxuXHJcbi5sbmktcGlsY3Jvdzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjRmXCI7XHJcbn1cclxuXHJcbi5sbmktcGxhbmU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI1MFwiO1xyXG59XHJcblxyXG4ubG5pLXBsYXk6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI1MVwiO1xyXG59XHJcblxyXG4ubG5pLXBsdWc6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI1MlwiO1xyXG59XHJcblxyXG4ubG5pLXBsdXM6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI1M1wiO1xyXG59XHJcblxyXG4ubG5pLXBvaW50ZXItZG93bjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjU0XCI7XHJcbn1cclxuXHJcbi5sbmktcG9pbnRlci1sZWZ0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNTVcIjtcclxufVxyXG5cclxuLmxuaS1wb2ludGVyLXJpZ2h0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNTZcIjtcclxufVxyXG5cclxuLmxuaS1wb2ludGVyLXVwOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNTdcIjtcclxufVxyXG5cclxuLmxuaS1wbGF5LXN0b3JlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNThcIjtcclxufVxyXG5cclxuLmxuaS1waXp6YTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjU5XCI7XHJcbn1cclxuXHJcbi5sbmktcG9zdGNhcmQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI1YVwiO1xyXG59XHJcblxyXG4ubG5pLXBvdW5kOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNWJcIjtcclxufVxyXG5cclxuLmxuaS1wb3dlci1zd2l0Y2g6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI1Y1wiO1xyXG59XHJcblxyXG4ubG5pLXByaW50ZXI6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI1ZFwiO1xyXG59XHJcblxyXG4ubG5pLXByb2R1Y3RodW50OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNWVcIjtcclxufVxyXG5cclxuLmxuaS1wcm90ZWN0aW9uOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNWZcIjtcclxufVxyXG5cclxuLmxuaS1wdWxzZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjYwXCI7XHJcbn1cclxuXHJcbi5sbmktcHlyYW1pZHM6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI2MVwiO1xyXG59XHJcblxyXG4ubG5pLXB5dGhvbjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjYyXCI7XHJcbn1cclxuXHJcbi5sbmktcG9pbnRlcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjYzXCI7XHJcbn1cclxuXHJcbi5sbmktcG9wdXA6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI2NFwiO1xyXG59XHJcblxyXG4ubG5pLXF1b3RhdGlvbjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjY1XCI7XHJcbn1cclxuXHJcbi5sbmktcmFkaW8tYnV0dG9uOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNjZcIjtcclxufVxyXG5cclxuLmxuaS1yYWluOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNjdcIjtcclxufVxyXG5cclxuLmxuaS1xdW9yYTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjY4XCI7XHJcbn1cclxuXHJcbi5sbmktcmVhY3Q6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI2OVwiO1xyXG59XHJcblxyXG4ubG5pLXF1ZXN0aW9uLWNpcmNsZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjZhXCI7XHJcbn1cclxuXHJcbi5sbmktcGhwOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNmJcIjtcclxufVxyXG5cclxuLmxuaS1yZWRkaXQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI2Y1wiO1xyXG59XHJcblxyXG4ubG5pLXJlbG9hZDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjZkXCI7XHJcbn1cclxuXHJcbi5sbmktcmVzdGF1cmFudDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjZlXCI7XHJcbn1cclxuXHJcbi5sbmktcm9hZDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjZmXCI7XHJcbn1cclxuXHJcbi5sbmktcm9ja2V0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNzBcIjtcclxufVxyXG5cclxuLmxuaS1yc3MtZmVlZDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjcxXCI7XHJcbn1cclxuXHJcbi5sbmktcnVsZXItYWx0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNzJcIjtcclxufVxyXG5cclxuLmxuaS1ydWxlci1wZW5jaWw6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI3M1wiO1xyXG59XHJcblxyXG4ubG5pLXJ1bGVyOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNzRcIjtcclxufVxyXG5cclxuLmxuaS1ydXBlZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjc1XCI7XHJcbn1cclxuXHJcbi5sbmktc2F2ZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjc2XCI7XHJcbn1cclxuXHJcbi5sbmktc2Nob29sLWJlbmNoLWFsdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjc3XCI7XHJcbn1cclxuXHJcbi5sbmktc2Nob29sLWJlbmNoOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNzhcIjtcclxufVxyXG5cclxuLmxuaS1zY29vdGVyOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViNzlcIjtcclxufVxyXG5cclxuLmxuaS1zY3JvbGwtZG93bjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjdhXCI7XHJcbn1cclxuXHJcbi5sbmktc2VhcmNoLWFsdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjdiXCI7XHJcbn1cclxuXHJcbi5sbmktc2VhcmNoOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViN2NcIjtcclxufVxyXG5cclxuLmxuaS1zZWxlY3Q6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI3ZFwiO1xyXG59XHJcblxyXG4ubG5pLXNlbzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjdlXCI7XHJcbn1cclxuXHJcbi5sbmktc2VydmljZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjdmXCI7XHJcbn1cclxuXHJcbi5sbmktc2hhcmUtYWx0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViODBcIjtcclxufVxyXG5cclxuLmxuaS1zaGFyZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjgxXCI7XHJcbn1cclxuXHJcbi5sbmktc2hpZWxkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViODJcIjtcclxufVxyXG5cclxuLmxuaS1zaGlmdC1sZWZ0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViODNcIjtcclxufVxyXG5cclxuLmxuaS1zaGlmdC1yaWdodDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjg0XCI7XHJcbn1cclxuXHJcbi5sbmktc2hpcDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjg1XCI7XHJcbn1cclxuXHJcbi5sbmktc2hvcGlmeTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjg2XCI7XHJcbn1cclxuXHJcbi5sbmktc2hvcHBpbmctYmFza2V0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViODdcIjtcclxufVxyXG5cclxuLmxuaS1zaG9ydGNvZGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI4OFwiO1xyXG59XHJcblxyXG4ubG5pLXNob3ZlbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjg5XCI7XHJcbn1cclxuXHJcbi5sbmktc2h1ZmZsZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjhhXCI7XHJcbn1cclxuXHJcbi5sbmktc2lnbmFsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViOGJcIjtcclxufVxyXG5cclxuLmxuaS1za2V0Y2g6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI4Y1wiO1xyXG59XHJcblxyXG4ubG5pLXNraXBwaW5nLXJvcGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI4ZFwiO1xyXG59XHJcblxyXG4ubG5pLXNreXBlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViOGVcIjtcclxufVxyXG5cclxuLmxuaS1taWNyb3NvZnQtdGVhbXMge1xyXG4gICAgY29udGVudDogXCJcXGU5MGFcIjtcclxufVxyXG5cclxuLmxuaS1zbGFjazo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjhmXCI7XHJcbn1cclxuXHJcbi5sbmktc2xpY2U6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI5MFwiO1xyXG59XHJcblxyXG4ubG5pLXNsaWRlc2hhcmU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI5MVwiO1xyXG59XHJcblxyXG4ubG5pLXNsaW06OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI5MlwiO1xyXG59XHJcblxyXG4ubG5pLXJlcGx5OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViOTNcIjtcclxufVxyXG5cclxuLmxuaS1zb3J0LWFscGhhLWFzYzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjk0XCI7XHJcbn1cclxuXHJcbi5sbmktcmVtb3ZlLWZpbGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI5NVwiO1xyXG59XHJcblxyXG4ubG5pLXNvcnQtYW1vdW50LWRzYzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjk2XCI7XHJcbn1cclxuXHJcbi5sbmktc29ydC1hbW91bnQtYXNjOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViOTdcIjtcclxufVxyXG5cclxuLmxuaS1zb3VuZGNsb3VkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViOThcIjtcclxufVxyXG5cclxuLmxuaS1zb3VuY2xvdWQtb3JpZ2luYWw6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI5OVwiO1xyXG59XHJcblxyXG4ubG5pLXNwaW5lci1zb2xpZDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjlhXCI7XHJcbn1cclxuXHJcbi5sbmktcmV2ZW51ZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjliXCI7XHJcbn1cclxuXHJcbi5sbmktc3Bpbm5lcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjljXCI7XHJcbn1cclxuXHJcbi5sbmktc3BlbGxjaGVjazo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjlkXCI7XHJcbn1cclxuXHJcbi5sbmktc3BvdGlmeTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYjllXCI7XHJcbn1cclxuXHJcbi5sbmktc3ByYXk6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWI5ZlwiO1xyXG59XHJcblxyXG4ubG5pLXNwcm91dDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmEwXCI7XHJcbn1cclxuXHJcbi5sbmktc25hcGNoYXQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJhMVwiO1xyXG59XHJcblxyXG4ubG5pLXN0YW1wOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYTJcIjtcclxufVxyXG5cclxuLmxuaS1zdGFyLWVtcHR5OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYTNcIjtcclxufVxyXG5cclxuLmxuaS1zdGFyLWZpbGxlZDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmE0XCI7XHJcbn1cclxuXHJcbi5sbmktc3Rhci1oYWxmOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYTVcIjtcclxufVxyXG5cclxuLmxuaS1zdGFyOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYTZcIjtcclxufVxyXG5cclxuLmxuaS1zdGF0cy1kb3duOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYTdcIjtcclxufVxyXG5cclxuLmxuaS1zcGlubmVyLWFycm93OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYThcIjtcclxufVxyXG5cclxuLmxuaS1zdGVhbTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmE5XCI7XHJcbn1cclxuXHJcbi5sbmktc3RhY2tvdmVyZmxvdzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmFhXCI7XHJcbn1cclxuXHJcbi5sbmktc3RvcDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmFiXCI7XHJcbn1cclxuXHJcbi5sbmktc3RyaWtldGhyb3VnaDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmFjXCI7XHJcbn1cclxuXHJcbi5sbmktc3RoZXRob3Njb3BlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYWRcIjtcclxufVxyXG5cclxuLmxuaS1zdHVtYmxldXBvbjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmFlXCI7XHJcbn1cclxuXHJcbi5sbmktc3VuOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYWZcIjtcclxufVxyXG5cclxuLmxuaS1zdXBwb3J0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYjBcIjtcclxufVxyXG5cclxuLmxuaS1zdXJmLWJvYXJkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYjFcIjtcclxufVxyXG5cclxuLmxuaS1zd2lmdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmIyXCI7XHJcbn1cclxuXHJcbi5sbmktc3lyaW5nZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmIzXCI7XHJcbn1cclxuXHJcbi5sbmktdGFiOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYjRcIjtcclxufVxyXG5cclxuLmxuaS10YWc6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJiNVwiO1xyXG59XHJcblxyXG4ubG5pLXRhcmdldC1jdXN0b21lcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmI2XCI7XHJcbn1cclxuXHJcbi5sbmktdGFyZ2V0LXJldmVudWU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJiN1wiO1xyXG59XHJcblxyXG4ubG5pLXRhcmdldDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmI4XCI7XHJcbn1cclxuXHJcbi5sbmktdGF4aTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmI5XCI7XHJcbn1cclxuXHJcbi5sbmktc3RhdHMtdXA6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJiYVwiO1xyXG59XHJcblxyXG4ubG5pLXRlbGVncmFtLW9yaWdpbmFsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYmJcIjtcclxufVxyXG5cclxuLmxuaS10ZWxlZ3JhbTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmJjXCI7XHJcbn1cclxuXHJcbi5sbmktdGV4dC1hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJiZFwiO1xyXG59XHJcblxyXG4ubG5pLXRleHQtYWxpZ24tanVzdGlmeTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmJlXCI7XHJcbn1cclxuXHJcbi5sbmktdGV4dC1hbGlnbi1sZWZ0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYmZcIjtcclxufVxyXG5cclxuLmxuaS10ZXh0LWZvcm1hdC1yZW1vdmU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJjMFwiO1xyXG59XHJcblxyXG4ubG5pLXRleHQtYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJjMVwiO1xyXG59XHJcblxyXG4ubG5pLXRleHQtZm9ybWF0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYzJcIjtcclxufVxyXG5cclxuLmxuaS10aG91Z2h0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYzNcIjtcclxufVxyXG5cclxuLmxuaS10aHVtYnMtZG93bjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmM0XCI7XHJcbn1cclxuXHJcbi5sbmktdGh1bWJzLXVwOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYzVcIjtcclxufVxyXG5cclxuLmxuaS10aHVuZGVyLWFsdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmM2XCI7XHJcbn1cclxuXHJcbi5sbmktdGh1bmRlcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmM3XCI7XHJcbn1cclxuXHJcbi5sbmktdGlja2V0LWFsdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmM4XCI7XHJcbn1cclxuXHJcbi5sbmktdGlja2V0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViYzlcIjtcclxufVxyXG5cclxuLmxuaS10aW1lcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmNhXCI7XHJcbn1cclxuXHJcbi5sbmktdHJhaW4tYWx0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViY2JcIjtcclxufVxyXG5cclxuLmxuaS10cmFpbjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmNjXCI7XHJcbn1cclxuXHJcbi5sbmktdHJhc2g6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJjZFwiO1xyXG59XHJcblxyXG4ubG5pLXRyYXZlbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmNlXCI7XHJcbn1cclxuXHJcbi5sbmktdHJlZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmNmXCI7XHJcbn1cclxuXHJcbi5sbmktdHJlZXM6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJkMFwiO1xyXG59XHJcblxyXG4ubG5pLXRyZWxsbzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmQxXCI7XHJcbn1cclxuXHJcbi5sbmktdHJvd2VsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViZDJcIjtcclxufVxyXG5cclxuLmxuaS10c2hpcnQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJkM1wiO1xyXG59XHJcblxyXG4ubG5pLXR1bWJscjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmQ0XCI7XHJcbn1cclxuXHJcbi5sbmktdHdpdGNoOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViZDVcIjtcclxufVxyXG5cclxuLmxuaS10d2l0dGVyLWZpbGxlZDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmQ2XCI7XHJcbn1cclxuXHJcbi5sbmktdHdpdHRlci1vcmlnaW5hbDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmQ3XCI7XHJcbn1cclxuXHJcbi5sbmktdHdpdHRlcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmQ4XCI7XHJcbn1cclxuXHJcbi5sbmktdWJ1bnR1OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViZDlcIjtcclxufVxyXG5cclxuLmxuaS11bmRlcmxpbmU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJkYVwiO1xyXG59XHJcblxyXG4ubG5pLXVubGluazo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmRiXCI7XHJcbn1cclxuXHJcbi5sbmktdW5sb2NrOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViZGNcIjtcclxufVxyXG5cclxuLmxuaS11cGxvYWQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJkZFwiO1xyXG59XHJcblxyXG4ubG5pLXVzZXI6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJkZVwiO1xyXG59XHJcblxyXG4ubG5pLXVzZXJzOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViZGZcIjtcclxufVxyXG5cclxuLmxuaS11eDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmUwXCI7XHJcbn1cclxuXHJcbi5sbmktdmVjdG9yOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViZTFcIjtcclxufVxyXG5cclxuLmxuaS12aWRlbzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmUyXCI7XHJcbn1cclxuXHJcbi5sbmktdmltZW86OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJlM1wiO1xyXG59XHJcblxyXG4ubG5pLXZpc2E6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJlNFwiO1xyXG59XHJcblxyXG4ubG5pLXZrOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViZTVcIjtcclxufVxyXG5cclxuLmxuaS12b2x1bWUtaGlnaDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmU2XCI7XHJcbn1cclxuXHJcbi5sbmktdm9sdW1lLWxvdzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmU3XCI7XHJcbn1cclxuXHJcbi5sbmktdm9sdW1lLW1lZGl1bTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmU4XCI7XHJcbn1cclxuXHJcbi5sbmktdm9sdW1lLW11dGU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJlOVwiO1xyXG59XHJcblxyXG4ubG5pLXZvbHVtZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmVhXCI7XHJcbn1cclxuXHJcbi5sbmktd2FsbGV0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViZWJcIjtcclxufVxyXG5cclxuLmxuaS13YXJuaW5nOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViZWNcIjtcclxufVxyXG5cclxuLmxuaS13ZWJzaXRlLWFsdDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmVkXCI7XHJcbn1cclxuXHJcbi5sbmktd2Vic2l0ZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmVlXCI7XHJcbn1cclxuXHJcbi5sbmktd2VjaGF0OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViZWZcIjtcclxufVxyXG5cclxuLmxuaS13ZWlnaHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJmMFwiO1xyXG59XHJcblxyXG4ubG5pLXdoYXRzYXBwOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViZjFcIjtcclxufVxyXG5cclxuLmxuaS13aGVlbGJhcnJvdzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmYyXCI7XHJcbn1cclxuXHJcbi5sbmktd2hlZWxjaGFpcjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmYzXCI7XHJcbn1cclxuXHJcbi5sbmktd2luZG93czo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmY0XCI7XHJcbn1cclxuXHJcbi5sbmktd29yZHByZXNzLWZpbGxlZDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmY1XCI7XHJcbn1cclxuXHJcbi5sbmktd29yZHByZXNzOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViZjZcIjtcclxufVxyXG5cclxuLmxuaS13b3JsZC1hbHQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJmN1wiO1xyXG59XHJcblxyXG4ubG5pLXdvcmxkOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViZjhcIjtcclxufVxyXG5cclxuLmxuaS13cml0ZTo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmY5XCI7XHJcbn1cclxuXHJcbi5sbmkteWFob286OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJmYVwiO1xyXG59XHJcblxyXG4ubG5pLXljb21iaW5hdG9yOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGViZmJcIjtcclxufVxyXG5cclxuLmxuaS15ZW46OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJmY1wiO1xyXG59XHJcblxyXG4ubG5pLXlvdXR1YmU6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWJmZFwiO1xyXG59XHJcblxyXG4ubG5pLXppcDo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmZlXCI7XHJcbn1cclxuXHJcbi5sbmktem9vbS1pbjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYmZmXCI7XHJcbn1cclxuXHJcbi5sbmktem9vbS1vdXQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlxcZWMwMFwiO1xyXG59XHJcblxyXG4ubG5pLXRlYWJhZzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXFxlYzAxXCI7XHJcbn1cclxuXHJcbi5sbmktc3RyaXBlOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVjMDJcIjtcclxufVxyXG5cclxuLmxuaS1zcG90aWZ5LW9yaWdpbmFsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcXGVjMDNcIjtcclxufVxyXG5cclxuLmZvbnQtcG9wcGlucyB7XHJcbiAgICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmZvbnQtbGV4ZW5kIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIkxleGVuZFwiLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5mb250LWdvcmRpdGEge1xyXG4gICAgZm9udC1mYW1pbHk6IFwiR29yZGl0YVwiLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5mb250LWxhdG8ge1xyXG4gICAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5mb250LWV4byB7XHJcbiAgICBmb250LWZhbWlseTogXCJFeG9cIiwgc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xyXG59XHJcbiIsIi8qXG4qIEFkbWluIExheW91dCAoUGl4ZWx3aWJlcylcbiogQGF1dGhvcjogUGl4ZWx3aWJlc1xuKiBAZGVzaWduIGJ5OiBQaXhlbHdpYmVzLlxuKiBAZXZlbnQtbmFtZXNwYWNlOiBQaXhlbHdpYmVzXG4qIENvcHlyaWdodCAyMDIxIFBpeGVsd2liZXNcbiovXG5cbjpyb290IHtcbiAgICAtLWRhcmstY29sb3I6ICMzMjNhNDU7XG5cbiAgICAvKiBOZXV0cmFsIHNjYWxlIChrZXB0IHNhbWUgbmFtaW5nKSAqL1xuICAgIC0tY29sb3ItZmZmOiAjZmZmZmZmO1xuICAgIC0tY29sb3ItMTAwOiAjZjlmYmZkO1xuICAgIC0tY29sb3ItMjAwOiAjZjFmM2Y2O1xuICAgIC0tY29sb3ItMzAwOiAjZTVlN2ViO1xuICAgIC0tY29sb3ItNDAwOiAjYzdjY2Q2O1xuICAgIC0tY29sb3ItNTAwOiAjNmE3YzkyO1xuICAgIC0tY29sb3ItNjAwOiAjNTU2MTc4O1xuICAgIC0tY29sb3ItNzAwOiAjM2U0YTYzO1xuICAgIC0tY29sb3ItODAwOiAjMWYyOTM3O1xuICAgIC0tY29sb3ItOTAwOiAjMTExODI3O1xuICAgIC0tY29sb3ItMDAwOiAjMDAwMDAwO1xuICAgIC0tY29sb3ItZjhmOGY4OiAjZjhmOGY4O1xuICAgIC0tY29sb3ItZjZmNmY2OiAjZjZmNmY2O1xuICAgIC0tY29sb3ItNTE1MTUxOiAjNTE1MTUxO1xuICAgIC0tY29sb3ItZTAzNDU3OiAjZTAzNDU3O1xuICAgIC0tY29sb3ItZWNmOWY0OiAjZWNmOWY0O1xuICAgIC0tY29sb3ItZjVmNmZmOiAjZjVmNmZmO1xuICAgIC0tY29sb3ItZGZlMWZmOiAjZGZlMWZmO1xuICAgIC0tY29sb3ItMzQ3OUUwOiAjMzQ3OWUwO1xuICAgIC0tY29sb3ItNEU1NEE1OiAjNGU1NGE1O1xuICAgIC0tY29sb3ItMzdBMkM4OiAjMzdhMmM4O1xuICAgIC0tY29sb3ItODA1MEUxOiAjODA1MGUxO1xuXG4gICAgLS1jb2xvci01MTUxNTEtcmdiOiA1MSwgNTEsIDUxO1xuICAgIC0tY29sb3ItMzQ3OUUwLXJnYjogNTIsIDEyMSwgMjI0O1xuXG4gICAgLS10aXRsZS1mb250LWZyYXVuY2VzOiBcIkZyYXVuY2VzXCIsIHNlcmlmO1xuXG4gICAgLyogTGF5b3V0ICovXG4gICAgLS1ib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNik7XG4gICAgLS1jYXJkLWNvbG9yOiAjZmZmZmZmO1xuICAgIC0tYm9keS1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcbiAgICAtLXdoaXRlLWNvbG9yOiAjZmZmZmZmO1xuICAgIC0tc2lkZWJhci1jb2xvcjogI2ZjZmNmZjtcblxuICAgIC8qIFR5cG9ncmFwaHkgKi9cbiAgICAtLXRleHQtY29sb3I6ICMzMzMzMzM7XG4gICAgLS1zZWNjb25kLXRleHQtY29sb3I6ICM2NjY2NjY7XG4gICAgLS10aXRsZS1jb2xvcjogcmdiYSg3OCwgODQsIDE2NSwgMSk7XG5cbiAgICAvKiBJY29ucyAqL1xuICAgIC0tc3ZnLWNvbG9yOiAjNmM2M2ZmO1xuXG4gICAgLyogSGlnaGxpZ2h0IGNhcmQgKi9cbiAgICAtLWhjLWZvbnQtY29sb3I6ICM0YjU1NjM7XG4gICAgLS1oYy1iZy1jb2xvcjogI2YzZjRmZjtcblxuICAgIC8qIEJvcmRlcnMgKi9cbiAgICAtLWJvcmRlckNvbG9yMDg6IHJnYmEoMCwgMCwgMCwgMC4wNCk7XG4gICAgLS1ib3JkZXJDb2xvcjAzOiByZ2JhKDAsIDAsIDAsIDAuMDIpO1xuICAgIC0tYm9yZGVyQ29sb3IxOiByZ2JhKDAsIDAsIDAsIDAuMDYpO1xuICAgIC0tYm9yZGVyQ29sb3I0OiByZ2JhKDAsIDAsIDAsIDAuMTgpO1xuXG4gICAgLyogQnJhbmQgKi9cbiAgICAtLXByaW1hcnktY29sb3I6ICM2YzYzZmY7XG4gICAgLS1wcmltYXJ5LXJnYjogNzgsIDg0LCAxNjU7XG5cbiAgICAvKiBQdXJwbGUgKi9cbiAgICAtLXNlY29uZGFyeS1jb2xvcjogI2YyNjY5YTtcbiAgICAtLXNlY29uZGFyeS1yZ2I6IDI0MiwgMTAyLCAxNTQ7XG5cbiAgICAvKiBQaW5rICovXG4gICAgLS1zZWNvbmQtY29sb3I6ICNmZjhmYjE7XG4gICAgLS1zZWNvbmQtcmdiOiAyNTUsIDE0MywgMTc3O1xuXG4gICAgLyogQWNjZW50IG9wdGlvbnMgKi9cbiAgICAtLW9wdGlvbi1jb2xvcjE6ICNmZjhiNzg7XG4gICAgLS1vcHRpb24tY29sb3IyOiAjZmZjMDYwO1xuICAgIC0tb3B0aW9uLWNvbG9yMzogIzVkNWE4ZTtcbiAgICAtLW9wdGlvbi1jb2xvcjQ6ICMzYjUzNzY7XG4gICAgLS1vcHRpb24tY29sb3I1OiAjZDE2MTQ0O1xuICAgIC0tb3B0aW9uLWNvbG9yNjogIzVkNWE4ZTtcbiAgICAtLW9wdGlvbi1jb2xvcjc6ICNiZWE1YTk7XG5cbiAgICAtLXNvZnQtcm9zZTogMjU1LCAyMTksIDIyNztcbiAgICAtLWljZS1ibHVlOiAxOTEsIDIzOCwgMjU1O1xuICAgIC0tdmlvbGV0LWNsb3VkOiAyMzMsIDIyMiwgMjU1O1xuXG4gICAgLS1taW50LWxpZ2h0OiAyMzYsIDI0OSwgMjQ0O1xuICAgIC0tdmFuaWxsYS1saWdodDogMjU0LCAyNTIsIDI0MTtcbiAgICAtLWN5YW4taWNlOiAyNDEsIDI1NCwgMjUyO1xuICAgIC0tbGF2ZW5kZXItbWlzdDogMjQ0LCAyNDEsIDI1NDtcbiAgICAtLWNlcnVsZWFuLWJsdWU6IDI1LCAxNDIsIDE3ODtcblxuICAgIC0tZ2xhc3MtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42NSk7XG5cbiAgICAtLWJsdXNoLXBpbms6IDI1NSwgMTk1LCAyMTA7XG4gICAgLS1za3ktYmx1ZTogMTU3LCAyMzAsIDI1NTtcbiAgICAtLWxhdmVuZGVyOiAyMDksIDE4OCwgMjU1O1xuXG4gICAgLyogR3JhZGllbnQgKi9cbiAgICAtLXByaW1hcnktZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgOTBkZWcsXG4gICAgICAgIHZhcigtLXByaW1hcnktY29sb3IpLFxuICAgICAgICB2YXIoLS1zZWNvbmRhcnktY29sb3IpXG4gICAgKTtcblxuICAgIC0tc29mdC1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjOGI4NGZmLCAjZjI2NjlhKTtcblxuICAgIC0tc2Vjb25kLXByaW1hcnktZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgOTBkZWcsXG4gICAgICAgIHZhcigtLWNvbG9yLTM0NzlFMCkgMCUsXG4gICAgICAgICM0ZTU0YTUgMTAwJVxuICAgICk7XG5cbiAgICAtLXRhYi1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAxODBkZWcsXG4gICAgICAgIHJnYmEoMjQ1LCA2MywgMTAwLCAwLjMpIDAlLFxuICAgICAgICByZ2JhKDI1MCwgMTE5LCAxNDUsIDAuMykgMTAwJVxuICAgICk7XG5cbiAgICAtLWdyYWRpZW50LWNvbG9yOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgIDkwZGVnLFxuICAgICAgICByZ2JhKDIyNCwgNTIsIDg3LCAxKSxcbiAgICAgICAgcmdiYSg3OCwgODQsIDE2NSwgMSlcbiAgICApO1xuXG4gICAgLS1ibHVzaC1waW5rLWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgIDE4MGRlZyxcbiAgICAgICAgcmdiYSh2YXIoLS1ibHVzaC1waW5rKSwgMC40KSAwJSxcbiAgICAgICAgcmdiYSgyMDksIDE4OCwgMjU1LCAwKSAxMDAlXG4gICAgKTtcblxuICAgIC0tc2t5LWJsdWUtZmFkZS1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAxODBkZWcsXG4gICAgICAgIHJnYmEodmFyKC0tc2t5LWJsdWUpLCAwLjQpIDAlLFxuICAgICAgICByZ2JhKDIwOSwgMTg4LCAyNTUsIDApIDEwMCVcbiAgICApO1xuXG4gICAgLS1sYXZlbmRlci1mYWRlLWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgIDE4MGRlZyxcbiAgICAgICAgcmdiYSh2YXIoLS1sYXZlbmRlciksIDAuNCkgMCUsXG4gICAgICAgIHJnYmEoMjA5LCAxODgsIDI1NSwgMCkgMTAwJVxuICAgICk7XG5cbiAgICAuYmctMSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZjZjE7XG4gICAgfVxuXG4gICAgLmJnLTIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmZWZjO1xuICAgIH1cblxuICAgIC5iZy0zIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjFmZTtcbiAgICB9XG59XG5cbltkYXRhLXRoZW1lPVwiZGFya1wiXSB7XG4gICAgLS1kYXJrLWNvbG9yOiAjMGYxMjIwO1xuXG4gICAgLS1jb2xvci1mZmY6ICMwZjEyMjA7XG4gICAgLS1jb2xvci0xMDA6ICMxNDE4MmI7XG4gICAgLS1jb2xvci0yMDA6ICMxYjIwMzg7XG4gICAgLS1jb2xvci0zMDA6ICMyYTJmNGE7XG4gICAgLS1jb2xvci00MDA6ICMzYTNmNWM7XG4gICAgLS1jb2xvci01MDA6ICM4YTkwYjI7XG4gICAgLS1jb2xvci02MDA6ICNhZWI0ZDY7XG4gICAgLS1jb2xvci03MDA6ICNkMWQ2ZjA7XG4gICAgLS1jb2xvci04MDA6ICNlZWYwZmY7XG4gICAgLS1jb2xvci05MDA6ICNmOGY5ZmY7XG4gICAgLS1jb2xvci0wMDA6ICNmZmZmZmY7XG5cbiAgICAtLWJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbiAgICAtLWNhcmQtY29sb3I6ICMxNjFhMzM7XG4gICAgLS1ib2R5LWNvbG9yOiAjMGYxMjIwO1xuICAgIC0td2hpdGUtY29sb3I6ICNmZmZmZmY7XG4gICAgLS1zaWRlYmFyLWNvbG9yOiAjMTYxYTMzO1xuXG4gICAgLS10ZXh0LWNvbG9yOiAjYzdjYmU2O1xuICAgIC0tdGl0bGUtY29sb3I6ICNmZmZmZmY7XG5cbiAgICAtLXN2Zy1jb2xvcjogI2YyNjY5YTtcbiAgICAtLXdoaXRlYmctdGV4dDogIzFjMjA0MDtcblxuICAgIC0taGMtZm9udC1jb2xvcjogI2M3Y2JlNjtcbiAgICAtLWhjLWJnLWNvbG9yOiAjMWMyMTQwO1xuXG4gICAgLS1ib3JkZXJDb2xvcjA4OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpO1xuICAgIC0tYm9yZGVyQ29sb3IwMzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKTtcbiAgICAtLWJvcmRlckNvbG9yMTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbiAgICAtLWJvcmRlckNvbG9yNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuXG4gICAgLS1wcmltYXJ5LWNvbG9yOiAjOGI4NGZmO1xuICAgIC0tc2Vjb25kYXJ5LWNvbG9yOiAjZjI2NjlhO1xuICAgIC0tc2Vjb25kLWNvbG9yOiAjZmY4ZmIxO1xuXG4gICAgLS1vcHRpb24tY29sb3IxOiAjZmY4Yjc4O1xuICAgIC0tb3B0aW9uLWNvbG9yMjogI2ZmYzA2MDtcbiAgICAtLW9wdGlvbi1jb2xvcjM6ICMxNjFhMzM7XG4gICAgLS1vcHRpb24tY29sb3I0OiAjM2I1Mzc2O1xuICAgIC0tb3B0aW9uLWNvbG9yNTogI2QxNjE0NDtcbiAgICAtLW9wdGlvbi1jb2xvcjY6ICM1ZDVhOGU7XG4gICAgLS1vcHRpb24tY29sb3I3OiAjYmVhNWE5O1xuXG4gICAgLS1nbGFzcy1jb2xvcjogcmdiYSg3MywgNzMsIDczLCAwLjY1KTtcblxuICAgIC0tcHJpbWFyeS1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICA5MGRlZyxcbiAgICAgICAgdmFyKC0tcHJpbWFyeS1jb2xvciksXG4gICAgICAgIHZhcigtLXNlY29uZGFyeS1jb2xvcilcbiAgICApO1xuXG4gICAgLS1zb2Z0LWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICM4Yjg0ZmYsICNmMjY2OWEpO1xuXG4gICAgLS1wcmltYXJ5LWdyYWRpZW50LW1lbnU6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgIzJhMmY2YiwgIzNiMmY0YSk7XG59XG5cbi8vIDpyb290IHtcbi8vIFx0LS1kYXJrLWNvbG9yOiAjMzIzQTQ1O1xuXG4vLyBcdC0tY29sb3ItZmZmOiAjRkZGRkZGO1xuLy8gXHQtLWNvbG9yLTEwMDogI0YwRjBGMDtcbi8vIFx0LS1jb2xvci0yMDA6ICNFRUVFRUU7XG4vLyBcdC0tY29sb3ItMzAwOiAjRTBFMEUwO1xuLy8gXHQtLWNvbG9yLTQwMDogI0JEQkRCRDtcbi8vIFx0LS1jb2xvci01MDA6ICM1NTU1NTU7XG4vLyBcdC0tY29sb3ItNjAwOiAjNzU3NTc1O1xuLy8gXHQtLWNvbG9yLTcwMDogIzYxNjE2MTtcbi8vIFx0LS1jb2xvci04MDA6ICM0MjQyNDI7XG4vLyBcdC0tY29sb3ItOTAwOiAjMjEyMTIxO1xuLy8gXHQtLWNvbG9yLTAwMDogIzAwMDAwMDtcblxuLy8gXHQtLWJvcmRlci1jb2xvcjogI2Y0ZWVmYjtcbi8vIFx0LS1jYXJkLWNvbG9yOiAjZmZmZmZmO1xuLy8gXHQtLWJvZHktY29sb3I6ICNmOWZiZmQ7XG4vLyBcdC0td2hpdGUtY29sb3I6ICNmZmZmZmY7XG4vLyBcdC0tc2lkZWJhci1jb2xvcjogI2ZjZmNmYztcbi8vIFx0LS10ZXh0LWNvbG9yOiAjMDAwMDAwO1xuLy8gXHQtLXRpdGxlLWNvbG9yOiAjMDAwMDAwO1xuLy8gXHQvLy0tdGV4dC1jb2xvcjogICAgICM2YTdjOTI7XG4vLyBcdC8vLS10aXRsZS1jb2xvcjogXHQjMDUxNDQxO1xuLy8gXHQvLy0tc3ZnLWNvbG9yOiBcdFx0Izc2ODA4Rjtcbi8vIFx0LS1zdmctY29sb3I6ICNFQTUwMzk7XG5cbi8vIFx0LS1oYy1mb250LWNvbG9yOiAjNTU1NTU1O1xuLy8gXHQtLWhjLWJnLWNvbG9yOiAjZjBmMGYwO1xuXG4vLyBcdC0tYm9yZGVyQ29sb3IwODogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbi8vIFx0LS1ib3JkZXJDb2xvcjAzOiByZ2JhKDAsIDAsIDAsIDAuMDIpO1xuLy8gXHQtLWJvcmRlckNvbG9yMTogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbi8vIFx0LS1ib3JkZXJDb2xvcjQ6IHJnYmEoMCwgMCwgMCwgMC4yKTtcblxuLy8gXHQtLXByaW1hcnktY29sb3I6ICNFMDM0NTc7XG4vLyBcdC0tc2Vjb25kYXJ5LWNvbG9yOiAjNEU1NEE1O1xuLy8gXHQtLXNlY29uZC1jb2xvcjogI0YyNjY5QTtcbi8vIFx0LS1vcHRpb24tY29sb3IxOiAjRkY4Qjc4O1xuLy8gXHQtLW9wdGlvbi1jb2xvcjI6ICNGRkMwNjA7XG4vLyBcdC0tb3B0aW9uLWNvbG9yMzogIzVENUE4RTtcbi8vIFx0LS1vcHRpb24tY29sb3I0OiAjM0I1Mzc2O1xuLy8gXHQtLW9wdGlvbi1jb2xvcjU6ICNEMTYxNDQ7XG4vLyBcdC0tcHJpbWFyeS1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE0NWRlZywgdmFyKC0tcHJpbWFyeS1jb2xvciksIHZhcigtLXNlY29uZGFyeS1jb2xvcikpO1xuXG4vLyB9XG5cbi8vIFtkYXRhLXRoZW1lPVwiZGFya1wiXSB7XG4vLyBcdC0tZGFyay1jb2xvcjogXHRcdCMzMjNBNDU7XG5cbi8vIFx0LS1jb2xvci1mZmY6XHRcdCMxMTE0MWU7XG4vLyBcdC0tY29sb3ItMTAwOlx0XHQjMjEyMTIxO1xuLy8gXHQtLWNvbG9yLTIwMDpcdFx0IzQyNDI0Mjtcbi8vIFx0LS1jb2xvci0zMDA6XHRcdCM2MTYxNjE7XG4vLyBcdC0tY29sb3ItNDAwOlx0XHQjNzU3NTc1O1xuLy8gXHQtLWNvbG9yLTUwMDpcdFx0IzhmOGY4Zjtcbi8vIFx0LS1jb2xvci02MDA6XHRcdCNCREJEQkQ7XG4vLyBcdC0tY29sb3ItNzAwOlx0XHQjRTBFMEUwO1xuLy8gXHQtLWNvbG9yLTgwMDpcdFx0I0VFRUVFRTtcbi8vIFx0LS1jb2xvci05MDA6XHRcdCNGMEYwRjA7XG4vLyBcdC0tY29sb3ItMDAwOlx0XHQjRkZGRkZGO1xuXG4vLyBcdC0tYm9yZGVyLWNvbG9yOlx0XHQjMmEyYzNlO1xuLy8gXHQtLWNhcmQtY29sb3I6IFx0XHQjMWExZDJhO1xuLy8gXHQtLWJvZHktY29sb3I6IFx0XHQjMTExNDFlO1xuLy8gXHQtLXdoaXRlLWNvbG9yOiBcdFx0I2ZmZmZmZjtcbi8vIFx0LS1zaWRlYmFyLWNvbG9yOlx0I2ZjZmNmYztcbi8vIFx0LS10ZXh0LWNvbG9yOiAgICAgICAjZGRkZGRkO1xuLy8gXHQtLXRpdGxlLWNvbG9yOiBcdFx0I2YxZjFmMTtcbi8vIFx0LS1zdmctY29sb3I6IFx0XHQjZjI2NjlhO1xuLy8gXHQtLXdoaXRlYmctdGV4dDogICAgICMyMTI4NDA7XG5cbi8vIFx0LS1oYy1mb250LWNvbG9yOlx0IzU1NTU1NTtcbi8vIFx0LS1oYy1iZy1jb2xvcjpcdFx0I2YwZjBmMDtcblxuLy8gXHQtLWJvcmRlckNvbG9yMDggOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpO1xuLy8gICAgIC0tYm9yZGVyQ29sb3IwMyA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMik7XG4vLyAgICAgLS1ib3JkZXJDb2xvcjEgOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuLy8gICAgIC0tYm9yZGVyQ29sb3I0IDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuXG4vLyBcdC8vIC0tcHJpbWFyeS1jb2xvcjogXHQjRUE1MDM5O1xuLy8gXHQtLXByaW1hcnktY29sb3I6IFx0I2U4NTc4MDtcbi8vIFx0LS1zZWNvbmRhcnktY29sb3I6IFx0IzM1NUFCMztcbi8vIFx0LS1zZWNvbmQtY29sb3I6IFx0I0YyNjY5QTtcbi8vIFx0LS1vcHRpb24tY29sb3IxOlx0I0ZGOEI3ODtcbi8vIFx0LS1vcHRpb24tY29sb3IyOiBcdCNGRkMwNjA7XG4vLyBcdC0tb3B0aW9uLWNvbG9yMzogXHQjMWExZDJhO1xuLy8gXHQtLW9wdGlvbi1jb2xvcjQ6IFx0IzNCNTM3Njtcbi8vIFx0LS1vcHRpb24tY29sb3I1OiBcdCNEMTYxNDQ7XG4vLyBcdC0tb3B0aW9uLWNvbG9yNjogXHQjNUQ1QThFO1xuLy8gXHQtLW9wdGlvbi1jb2xvcjc6IFx0I0JFQTVBOTtcbi8vIFx0LS1wcmltYXJ5LWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCB2YXIoLS1wcmltYXJ5LWNvbG9yKSwgdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKSk7XG4vLyBcdC0tcHJpbWFyeS1ncmFkaWVudC1tZW51OiBsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCNmNWUxZTcsI2QxZGVmZik7XG4vLyB9XG4iLCJAbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbikge1xuICAtbW96LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAtby10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG59XG5cbkBtaXhpbiBvdmVyZmxvdygkc2Nyb2xsKSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAvLyBGaXJlZm94XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgLy8gSUUgMTArXG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIC8vIFdlYktpdCBcbiAgICB3aWR0aDogMDtcbiAgICAvL2JhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLTIwMClcbiAgfVxuXG4gIC8vICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgLy8gICAvL2JhY2tncm91bmQ6IHZhcigtLWNvbG9yLTIwMClcbiAgLy8gfVxufVxuXG5AbWl4aW4gcGFkZGluZygkcGFkZGluZykge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbn1cblxuQG1peGluIG1hcmdpbigkbWFyZ2luKSB7XG4gIG1hcmdpbjogJG1hcmdpbjtcbn1cblxuQG1peGluIHBhZGRpbmctdG9wKCRwYWRkaW5nLXRvcCkge1xuICBwYWRkaW5nLXRvcDogJHBhZGRpbmctdG9wO1xufVxuXG5AbWl4aW4gcGFkZGluZy1ib3R0b20oJHBhZGRpbmctYm90dG9tKSB7XG4gIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZy1ib3R0b207XG59XG5cbkBtaXhpbiBtYXJnaW4tdG9wKCRtYXJnaW4tdG9wKSB7XG4gIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xufVxuXG5AbWl4aW4gbWFyZ2luLWJvdHRvbSgkbWFyZ2luLWJvdHRvbSkge1xuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcbn1cblxuQG1peGluIHNlY3Rpb25fcGFkZGluZyB7XG4gIHBhZGRpbmctYm90dG9tOiA5MHB4O1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG59XG5cbkBtaXhpbiBzZWN0aW9uX21hcmdpbiB7XG4gIG1hcmdpbi1ib3R0b206IDkwcHg7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgfVxufVxuXG4kbWF4OiAyMjU7XG4kb2Zmc2V0OiA1O1xuJHVuaXQ6ICdweCc7IC8vIEZlZWwgZnJlZSB0byBjaGFuZ2UgdGhlIHVuaXQuXG5cbkBtaXhpbiBsaXN0LWxvb3AoJGNsYXNzTmFtZSwgJHN0eWxlTmFtZSkge1xuICAkaTogMDtcblxuICBAd2hpbGUgJGkgPD0kbWF4IHtcbiAgICAjeyRjbGFzc05hbWUgKyAkaX0ge1xuICAgICAgI3skc3R5bGVOYW1lfTogI3skaSArICR1bml0fTtcbiAgICB9XG5cbiAgICAkaTogJGkgKyAkb2Zmc2V0O1xuICB9XG59XG5cbkBpbmNsdWRlIGxpc3QtbG9vcCgnLm10LScsICdtYXJnaW4tdG9wJyk7XG5AaW5jbHVkZSBsaXN0LWxvb3AoJy5tYi0nLCAnbWFyZ2luLWJvdHRvbScpO1xuQGluY2x1ZGUgbGlzdC1sb29wKCcucHQtJywgJ3BhZGRpbmctdG9wJyk7XG5AaW5jbHVkZSBsaXN0LWxvb3AoJy5wYi0nLCAncGFkZGluZy1ib3R0b20nKTtcblxuQG1peGluIGJnLWVmZmVjdC1pbWFnZSgkYmctY29sb3ItbmFtZSwgJHRleHQtY29sb3ItbmFtZSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL2JnLWVmZmVjdC9iZy1lZmZlY3QtI3skYmctY29sb3ItbmFtZX0uc3ZnKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGNvbG9yOiAkdGV4dC1jb2xvci1uYW1lLCAkYWxwaGE6IDAuMSk7XG5cbiAgLmVmZmVjdC10aXRsZSB7XG5cbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3ItbmFtZTtcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgd2lkdGg6IDMwcHg7XG5cbiAgICAgICYuYXJyb3cge1xuICAgICAgICB3aWR0aDogMjZweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG5cbiAgICAgIHBhdGgge1xuICAgICAgICBmaWxsOiAkdGV4dC1jb2xvci1uYW1lO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBzdmcge1xuICAgICAgICAmLmFycm93IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0M2RlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGN1c3RvbS1hY2NvcmRpb24oJGJvcmRlci1jb2xvciwgJHRpdGxlLWNvbG9yLCAkYm9keS1jb2xvciwgJGFjdGl2ZS1jb2xvciwgJGljb24tY2xvc2U6IFwiLi4vLi4vaW1hZ2VzL2Fycm93LWRvd24uc3ZnXCIsICRpY29uLW9wZW46IG51bGwsICRpY29uLXNpemU6IDE2cHgpIHtcbiAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkdGl0bGUtY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgjeyRpY29uLWNsb3NlfSk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgd2lkdGg6ICRpY29uLXNpemU7XG4gICAgICBoZWlnaHQ6ICRpY29uLXNpemU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxuXG4gICAgJjpub3QoLmNvbGxhcHNlZCkge1xuICAgICAgY29sb3I6ICRhY3RpdmUtY29sb3I7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgQGlmICRpY29uLW9wZW4gIT1udWxsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoI3skaWNvbi1vcGVufSk7XG4gICAgICAgIH1cblxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYWNjb3JkaW9uLWJvZHkge1xuICAgIHBhZGRpbmc6IDAgMCAyMHB4IDA7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxODAlO1xuICB9XG59IiwiQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PVdvcmsrU2FuczppdGFsLHdnaHRAMCwxMDAuLjkwMDsxLDEwMC4uOTAwJmRpc3BsYXk9c3dhcFwiKTtcclxuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUZyYXVuY2VzOml0YWwsb3Bzeix3Z2h0QDAsOS4uMTQ0LDEwMC4uOTAwOzEsOS4uMTQ0LDEwMC4uOTAwXCIpO1xyXG5cclxuQGtleWZyYW1lcyBhbmltYXRpb24xIHtcclxuICAgIDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcclxuICAgICAgICBvcGFjaXR5OiAwLjI5O1xyXG4gICAgfVxyXG5cclxuICAgIDUwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03MDBweCk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuXHJcbiAgICAxMDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNwaW5uZXItbGluc3BpbiB7XHJcbiAgICB0byB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzcGlubmVyLWVhc2VzcGluIHtcclxuICAgIDEyLjUlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xyXG4gICAgfVxyXG5cclxuICAgIDI1JSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcclxuICAgIH1cclxuXHJcbiAgICAzNy41JSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDA1ZGVnKTtcclxuICAgIH1cclxuXHJcbiAgICA1MCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDU0MGRlZyk7XHJcbiAgICB9XHJcblxyXG4gICAgNjIuNSUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDY3NWRlZyk7XHJcbiAgICB9XHJcblxyXG4gICAgNzUlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg4MTBkZWcpO1xyXG4gICAgfVxyXG5cclxuICAgIDg3LjUlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5NDVkZWcpO1xyXG4gICAgfVxyXG5cclxuICAgIHRvIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMDgwZGVnKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzcGlubmVyLWxlZnQtc3BpbiB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTMwZGVnKTtcclxuICAgIH1cclxuXHJcbiAgICA1MCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTtcclxuICAgIH1cclxuXHJcbiAgICB0byB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTMwZGVnKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyByaWdodC1zcGluIHtcclxuICAgIDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTMwZGVnKTtcclxuICAgIH1cclxuXHJcbiAgICA1MCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDVkZWcpO1xyXG4gICAgfVxyXG5cclxuICAgIHRvIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTMwZGVnKTtcclxuICAgIH1cclxufVxyXG5cclxuaHRtbCB7XHJcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcclxufVxyXG5cclxuYm9keSB7XHJcbiAgICBmb250LWZhbWlseTogXCJXb3JrIFNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ib2R5LWNvbG9yKTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuXHJcbiAgICBhIHtcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQgMHM7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIHVsIHtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC50aXRsZS1mb250IHtcclxuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tdGl0bGUtZm9udC1mcmF1bmNlcykgIWltcG9ydGFudDtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogc3RhcnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiA2MHB4O1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5ibG9nLWRldGFpbC10aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDBweCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PSBkZXNrdG9wIHZpZXcgPT09PT09PT09PT09ICovXHJcbkBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcbiAgICAubmF2YmFyIC5oYXMtbWVnYW1lbnUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAubmF2YmFyIC5tZWdhbWVudSB7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLnB0LTEzMCB7XHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDgwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wYi0xMzAge1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ubXQtMTMwIHtcclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMDBweDtcclxuICAgIH1cclxufVxyXG5cclxuLnBiLTExMCB7XHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDgwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wdC04NyB7XHJcbiAgICBwYWRkaW5nLXRvcDogODdweDtcclxufVxyXG5cclxuLyoqKioqKioqKioqKjQwNC1wYWdlKioqKioqKioqKiovXHJcblxyXG4ucGFnZS1lcnJvciB7XHJcbiAgICBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMjBweDtcclxuICAgICAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10aXRsZS1jb2xvcik7XHJcbiAgICB9XHJcblxyXG4gICAgaDQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKioqKioqKioqKipIZWFkaW5nLXRpdGxlKioqKioqKioqKiovXHJcbi5oZWFkaW5nLXRpdGxlIHtcclxuICAgIHNwYW4ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGgyIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogNTZweDtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRpdGxlLWNvbG9yKTtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMzcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKioqKioqKioqKipQYWdlLWxvYWRlcioqKioqKioqKioqL1xyXG4ucHJlbG9hZGVyIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUtY29sb3IpO1xyXG4gICAgei1pbmRleDogOTk5OTk7XHJcblxyXG4gICAgLmxvYWRlciB7XHJcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgLnNwaW5uZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2NHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTMycHg7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE4O1xyXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHJcbiAgICAgICAgICAgIC5zcGlubmVyLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01MCU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTUwJTtcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogc3Bpbm5lci1saW5zcGluIDE1NjguMjM1M21zIGxpbmVhciBpbmZpbml0ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAuc3Bpbm5lci1yb3RhdG9yIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogc3Bpbm5lci1lYXNlc3BpbiA1MzMybXNcclxuICAgICAgICAgICAgICAgICAgICAgICAgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAuc3Bpbm5lci1sZWZ0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5zcGlubmVyLXJpZ2h0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zcGlubmVyLWNpcmNsZSB7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgd2lkdGg6IDIwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKSB2YXIoLS1wcmltYXJ5LWNvbG9yKVxyXG4gICAgICAgICAgICAgICAgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDZweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zcGlubmVyLWxlZnQge1xyXG4gICAgICAgICAgICAuc3Bpbm5lci1jaXJjbGUge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTAwJTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogc3Bpbm5lci1sZWZ0LXNwaW4gMTMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSlcclxuICAgICAgICAgICAgICAgICAgICBpbmZpbml0ZSBib3RoO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3Bpbm5lci1yaWdodCB7XHJcbiAgICAgICAgICAgIC5zcGlubmVyLWNpcmNsZSB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMTAwJTtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBhbmltYXRpb246IHJpZ2h0LXNwaW4gMTMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSlcclxuICAgICAgICAgICAgICAgICAgICBpbmZpbml0ZSBib3RoO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKioqKioqKioqKioqTmF2YmFyKioqKioqKioqKiovXHJcbi5uYXZiYXItdG9nZ2xlciB7XHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgLnRvZ2dsZXItaWNvbiB7XHJcbiAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAycHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItMDAwKTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IDVweCAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dCAwcztcclxuICAgIH1cclxufVxyXG5cclxuLm5hdmJhci1jb2xsYXBzZSB7XHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHotaW5kZXg6IDk5OTk7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDEycHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5uYXZiYXIge1xyXG4gICAgcGFkZGluZzogNnB4IDQwcHg7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDZweCAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnN1Yi1tZW51IHtcclxuICAgICAgICBwYWRkaW5nOiAxLjVyZW07XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcikgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgLmNvbC1tZWdhbWVudSB7XHJcbiAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogN3B4IDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItMDAwKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKioqKioqKioqKipOYXYtc3R5bGUqKioqKioqKioqKi9cclxuLm5hdi1jb250YWluZXIge1xyXG4gICAgYm9yZGVyLXJhZGl1czogNjBweDtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2xhc3MtY29sb3IpO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQgMHM7XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5uYXZiYXItbmF2ID4gLm5hdi1pdGVtIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLm5hdi1saW5rIHtcclxuICAgIHBhZGRpbmc6IDIwcHggMTZweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItOTAwKTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gISohIE1lbnUgQmFyIFN0eWxlcyAtIFtIZWFkZXIgTWVudSBCYXJdXHJcbi5oZWFkZXItbWVudWJhciB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCk7XHJcbiAgICB0cmFuc2l0aW9uOlxyXG4gICAgICAgIG9wYWNpdHkgMC4zcyBlYXNlLFxyXG4gICAgICAgIHRyYW5zZm9ybSAwLjNzIGVhc2UsXHJcbiAgICAgICAgdmlzaWJpbGl0eSAwLjNzIGVhc2U7XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZzogNnB4IDA7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLTAwMCk7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2U7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tZWdhLWNvbnRlbnQge1xyXG4gICAgcGFkZGluZzogMzJweCA0MHB4O1xyXG4gICAgbWluLWhlaWdodDogMjIwcHg7XHJcbn1cclxuXHJcbi5jb2wtbWVnYW1lbnUge1xyXG4gICAgYSB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA5MDBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTQwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDc4MHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0NzBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogYXV0bztcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdWItbWVudVtkYXRhLW1lZ2EtcGFuZWxdIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpO1xyXG4gICAgdHJhbnNpdGlvbjpcclxuICAgICAgICBvcGFjaXR5IDAuMjVzIGVhc2UsXHJcbiAgICAgICAgdHJhbnNmb3JtIDAuMjVzIGVhc2U7XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubmF2YmFyLWFyZWEge1xyXG4gICAgei1pbmRleDogOTk5O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQgMHM7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cclxuICAgIC5uYXZiYXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgLkNvbW1hbi1idG4ge1xyXG4gICAgICAgICAgICAmLkNvbW1vbi1idG4tMiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTdweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItOTAwKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTdweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItOTAwKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzOTlweCkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNjaGVkdWxlLWNhbGwtYnRuIHtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyID4gaW1nIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQzZGVnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4IDdweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5uYXZiYXItYnJhbmQge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzc1cHgpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc1cHg7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDU1cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzc1cHgpIHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNDhweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzc1cHgpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5uYXZiYXItdG9nZ2xlci5hY3RpdmUge1xyXG4gICAgICAgIC50b2dnbGVyLWljb24ge1xyXG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDEpIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICAgICAgICAgIHRvcDogN3B4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDIpIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMykge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcclxuICAgICAgICAgICAgICAgIHRvcDogLTdweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubmF2YmFyLW5hdiB7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTFweCkge1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm5hdi1pdGVtIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBhLFxyXG4gICAgICAgICAgICAgICAgc3BhbltkYXRhLW1lZ2EtbGlua10ge1xyXG4gICAgICAgICAgICAgICAgICAgICYucHctbWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktY29sb3IpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBhLFxyXG4gICAgICAgICAgICBzcGFuW2RhdGEtbWVnYS1saW5rXSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dCAwcztcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjgwcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTRweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGEuYWN0aXZlLFxyXG4gICAgICAgICAgICBzcGFuW2RhdGEtbWVnYS1saW5rXS5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGEucHctbWVudSxcclxuICAgICAgICAgICAgc3BhbltkYXRhLW1lZ2EtbGlua10ucHctbWVudSB7XHJcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVlbTtcclxuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGVhNWVcIjtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkxpbmVJY29uc1wiO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM5OTk5OTk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zdWItbWVudSB7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDIwMHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAxMTAlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dCAwcztcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogN3B4IDE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgID4gbGkuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zdWItbWVudS5sZWZ0LW1lbnUge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogLTEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zdWItbWVudS5jb2xsYXBzZSB7XHJcbiAgICAgICAgICAgICAgICAmOm5vdCguc2hvdykge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLmhlYWRlci11c2VyLXByb2ZpbGUge1xyXG4gICAgICAgICAgICAgICAgLnN1Yi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA0JTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA0JTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5uYXYtbWVudS1oZWFkZXIge1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2xhc3MtY29sb3IpO1xyXG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDMwcHggdmFyKC0tY29sb3ItMjAwKTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0IDBzO1xyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAyNHB4KTtcclxuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAycHggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vICEqISBlbmQgb2YgSGVhZGVyIE1lbnUgQmFyXHJcblxyXG4vKioqKioqKioqKioqSGVyb2Jhbm5lci1zdHlsZSoqKioqKioqKioqL1xyXG4uYmctcmFkaWFsIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgb3ZlcmZsb3c6IGNsaXA7XHJcbn1cclxuXHJcbi5zdGlja3kteGwtdG9wLFxyXG4uc3RpY2t5LWxnLXRvcCxcclxuLnN0aWNreS1tZC10b3AsXHJcbi5zdGlja3ktc20tdG9wLFxyXG4uc3RpY2t5LXRvcCB7XHJcbiAgICB6LWluZGV4OiA5NjAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmhlcm8tc2VjdGlvbiB7XHJcbiAgICBwYWRkaW5nOiAxMDBweCAwcHggNzBweCAwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBoZWlnaHQ6IDc1MnB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL2hlcm8vaGVyby1iZy1lZmZlY3QucG5nKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTI4MHB4KSB7XHJcbiAgICAgICAgaGVpZ2h0OiA2NDNweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gICAgICAgIGhlaWdodDogNTAzcHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBwYWRkaW5nOiAxMzBweCAwcHggNTBweCAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICB3aWR0aDogMTEwMHB4O1xyXG4gICAgICAgIGhlaWdodDogODg4cHg7XHJcbiAgICAgICAgdG9wOiA4N3B4O1xyXG4gICAgICAgIGxlZnQ6IC0zOTdweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoXHJcbiAgICAgICAgICAgIDUwJSA1MCUgYXQgNTAlIDUwJSxcclxuICAgICAgICAgICAgcmdiYSg3OCwgODQsIDE2NSwgMSkgMCUsXHJcbiAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgb3BhY2l0eTogMC4yO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4NzVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA4ODhweDtcclxuICAgICAgICAgICAgdG9wOiAyOHB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAtMjAxcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDUwMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwMHB4O1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IC0yMDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICB3aWR0aDogODc1cHg7XHJcbiAgICAgICAgaGVpZ2h0OiA4ODhweDtcclxuICAgICAgICB0b3A6IDI4cHg7XHJcbiAgICAgICAgcmlnaHQ6IC0yNzlweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoXHJcbiAgICAgICAgICAgIDUwJSA1MCUgYXQgNTAlIDUwJSxcclxuICAgICAgICAgICAgcmdiYSgyNDEsIDM0LCA4NiwgMC45MTEpIDAlLFxyXG4gICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCVcclxuICAgICAgICApO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuMTU7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDg3NXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDg4OHB4O1xyXG4gICAgICAgICAgICB0b3A6IC00OHB4O1xyXG4gICAgICAgICAgICByaWdodDogLTI3MnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcclxuICAgICAgICAgICAgICAgIDUwJSA1MCUgYXQgNTAlIDUwJSxcclxuICAgICAgICAgICAgICAgIHJnYigyNDEgMzQgODYgLyA3OSUpIDAlLFxyXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MDBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA1MDBweDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVyby1jb250ZW50LXdyYXBwZXIge1xyXG4gICAgICAgIGgxIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLTAwMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVyby10aXRsZSB7XHJcbiAgICAgICAgJi50aXRsZS1mb250IHtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLXRpdGxlLWZvbnQtZnJhdW5jZXMpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA5M3B4O1xyXG5cclxuICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNTBweCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjFweCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucGFnZS10aXRsZSB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKioqKioqKioqKioqQ2xpZW50bG9nby1zdHlsZSoqKioqKioqKioqL1xyXG4uY2xpZW50LWxvZ28tc2VjdGlvbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICB3aWR0aDogOTIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMjEycHg7XHJcbiAgICAgICAgdG9wOiAtNTAwcHg7XHJcbiAgICAgICAgbGVmdDogMzUlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoXHJcbiAgICAgICAgICAgIDUwJSA1MCUgYXQgNTAlIDUwJSxcclxuICAgICAgICAgICAgcmdiKDI0MSwgMzQsIDg2KSAwJSxcclxuICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlXHJcbiAgICAgICAgKTtcclxuICAgICAgICBvcGFjaXR5OiAwLjE1O1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MDBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA2MDBweDtcclxuICAgICAgICAgICAgdG9wOiAtMjM1cHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDM1JTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNTAwcHg7XHJcbiAgICAgICAgICAgIHRvcDogLTE2N3B4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY2xpZW50LWxvZ28td3JhcHBlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xyXG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgICAgICBwYWRkaW5nOiAwcHggMzBweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAxNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNsaWVudC1sb2dvLWNhcm91c2VsIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XHJcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG5cclxuICAgICAgICAgICAgLmNsaWVudC1sb2dvIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XHJcblxyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0IDBzO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IGdyYWI7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudG5zLWNvbnRyb2xzIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKioqKioqKioqKioqU2VydmljZS1zdHlsZSoqKioqKioqKioqL1xyXG4uc2VydmljZS1zZWN0aW9uIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDUwcHgpO1xyXG4gICAgbWFyZ2luOiAwcHggYXV0bztcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fbWFyZ2luO1xyXG4gICAgcGFkZGluZzogNzBweCAwIDEwMHB4IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgIDE4MGRlZyxcclxuICAgICAgICByZ2JhKHZhcigtLXNlY29uZGFyeS1yZ2IpLCAwLjE1KSAwJSxcclxuICAgICAgICByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4xNSkgMTAwJVxyXG4gICAgKTtcclxuICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDMwcHgpO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDQycHggMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwdnc7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlcnZpY2UtYm94IHtcclxuICAgICAgICAuYm94LWNvbnRlbnQtc3R5bGUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL2JnLWVmZmVjdC9zZXJ2aWNlLWNhcmQtYmcuc3ZnKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VydmljZS1jb250ZW50IHtcclxuICAgICAgICAgICAgaDUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLTAwMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNlcnZpY2UtYm90dG9tIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAtMjFweDtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2VydmljZS1mdWxsLWluZm9yYW10aW9uIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAuc2VydmljZS1pbm5lciB7XHJcbiAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNlcnZpY2UtcHJvdmlkZWQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI2MHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zb2Z0LWdyYWRpZW50KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgdG9wOiAwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9zZXJ2aWNlLWNpcmNsZS5wbmcpO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG87XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNDtcclxuICAgIH1cclxufVxyXG5cclxuLyoqKioqKioqKioqKiBvdXItcHJvZHVjdHMgKioqKioqKioqKiovXHJcbi5vdXItd29ya3Mge1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9wYWRkaW5nO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMTtcclxuXHJcbiAgICAud29ya3MtYm94IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICAud29ya3MtbmFtZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweCA0MHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbGFzcy1jb2xvcik7XHJcbiAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcblxyXG4gICAgICAgICAgICBoNSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItMDAwKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICB3aWR0aDogMTEwMHB4O1xyXG4gICAgICAgIGhlaWdodDogODg4cHg7XHJcbiAgICAgICAgYm90dG9tOiAtMzAwcHg7XHJcbiAgICAgICAgbGVmdDogLTM5N3B4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcclxuICAgICAgICAgICAgNTAlIDUwJSBhdCA1MCUgNTAlLFxyXG4gICAgICAgICAgICByZ2JhKDc4LCA4NCwgMTY1LCAxKSAwJSxcclxuICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlXHJcbiAgICAgICAgKTtcclxuICAgICAgICBvcGFjaXR5OiAwLjI7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDg3NXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDg4OHB4O1xyXG4gICAgICAgICAgICB0b3A6IDI4cHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IC0yMDFweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNTAwcHg7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogLTIwMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgIHdpZHRoOiA4NzVweDtcclxuICAgICAgICBoZWlnaHQ6IDg4OHB4O1xyXG4gICAgICAgIHRvcDogLTM1MHB4O1xyXG4gICAgICAgIHJpZ2h0OiAtMzQ5cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KFxyXG4gICAgICAgICAgICA1MCUgNTAlIGF0IDUwJSA1MCUsXHJcbiAgICAgICAgICAgIHJnYmEoMjQxLCAzNCwgODYsIDAuOTExKSAwJSxcclxuICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlXHJcbiAgICAgICAgKTtcclxuICAgICAgICBvcGFjaXR5OiAwLjE1O1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4NzVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA4ODhweDtcclxuICAgICAgICAgICAgdG9wOiAtNDhweDtcclxuICAgICAgICAgICAgcmlnaHQ6IC0yNzJweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoXHJcbiAgICAgICAgICAgICAgICA1MCUgNTAlIGF0IDUwJSA1MCUsXHJcbiAgICAgICAgICAgICAgICByZ2IoMjQxIDM0IDg2IC8gNzklKSAwJSxcclxuICAgICAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB3aWR0aDogNTAwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNTAwcHg7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKioqKioqKioqKipIb21lIGN0YSoqKioqKioqKioqL1xyXG4uY3RhIHtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fcGFkZGluZztcclxuXHJcbiAgICAuY3RhLWJveCB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgcGFkZGluZzogMTAwcHggOTBweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItMDAwKTtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNzBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcGFkZGluZzogNTBweCAyMHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgICAgICB3aWR0aDogNTAwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNTAwcHg7XHJcbiAgICAgICAgICAgIHRvcDogMzlweDtcclxuICAgICAgICAgICAgbGVmdDogLTMwMHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoXHJcbiAgICAgICAgICAgICAgICA1MCUgNTAlIGF0IDUwJSA1MCUsXHJcbiAgICAgICAgICAgICAgICByZ2IoNzgsIDg0LCAxNjUpIDAlLFxyXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMjtcclxuICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICAgICAgd2lkdGg6IDE2MDBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA4ODhweDtcclxuICAgICAgICAgICAgdG9wOiAtMzAwcHg7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAtMzAwcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcclxuICAgICAgICAgICAgICAgIDUwJSA1MCUgYXQgNTAlIDUwJSxcclxuICAgICAgICAgICAgICAgIHJnYmEoMjQxLCAzNCwgODYsIDAuOTExKSAwJSxcclxuICAgICAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjE1O1xyXG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5zdWJzY3JpYmUtYm94IHtcclxuICAgICAgICAuY3RhLWJveCxcclxuICAgICAgICAuY3RhLWNvbW1vbi1ib3gge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA2MHB4IDkwcHg7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyoqKioqKioqKioqKkNvbW1vbiBjdGEqKioqKioqKioqKi9cclxuLmN0YS1jb21tb24tYm94IHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgIHBhZGRpbmc6IDEwMHB4IDcwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG5cclxuICAgIGgzIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItMDAwKTtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDQzcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcGFkZGluZzogNTBweCAyMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICB3aWR0aDogNTAwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA1MDBweDtcclxuICAgICAgICB0b3A6IDM5cHg7XHJcbiAgICAgICAgbGVmdDogLTMwMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcclxuICAgICAgICAgICAgNTAlIDUwJSBhdCA1MCUgNTAlLFxyXG4gICAgICAgICAgICByZ2IoNzgsIDg0LCAxNjUpIDAlLFxyXG4gICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCVcclxuICAgICAgICApO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuMjtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgd2lkdGg6IDE2MDBweDtcclxuICAgICAgICBoZWlnaHQ6IDg4OHB4O1xyXG4gICAgICAgIHRvcDogLTMwMHB4O1xyXG4gICAgICAgIHJpZ2h0OiAtMzAwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KFxyXG4gICAgICAgICAgICA1MCUgNTAlIGF0IDUwJSA1MCUsXHJcbiAgICAgICAgICAgIHJnYmEoMjQxLCAzNCwgODYsIDAuOTExKSAwJSxcclxuICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlXHJcbiAgICAgICAgKTtcclxuICAgICAgICBvcGFjaXR5OiAwLjE1O1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKioqKioqKioqKioqc2VydmljZS1zZWN0aW9uKioqKioqKioqKiovXHJcbi5vdXItcHJvZHVjdHMge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gNTBweCk7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHBhZGRpbmc6IDcwcHggMCAxMDBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vaW1hZ2VzL3Byb2R1Y3RzLWJnLnN2ZykgY2VudGVyIHJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fbWFyZ2luO1xyXG5cclxuICAgIC5wcm9kdWN0LWJvdHRvbSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICBib3R0b206IC0yMXB4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gMzBweCk7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogNDJweCAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDB2dztcclxuICAgIH1cclxuXHJcbiAgICAuaXRlbSB7XHJcbiAgICAgICAgLnByb2R1Y3QtY29udGVudCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCAwIDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5wcm9kdWN0LXRpdGxlLFxyXG4gICAgICAgICAgICAucHJvZHVjdC10YWdzIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnByb2R1Y3QtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjNweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnByb2R1Y3QtdGFncyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIGdhcDogMjNweDtcclxuXHJcbiAgICAgICAgICAgICAgICAucHJvZHVjdC10YWcge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBnYXA6IDE1cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGdhcDogMTVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnByb2R1Y3QtZGVzY3JpcHRpb24ge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm93bC1jYXJvdXNlbCB7XHJcbiAgICAgICAgY2xpcC1wYXRoOiBpbnNldCgwcHggLTEwMHZ3IDBweCAwcHgpO1xyXG5cclxuICAgICAgICAub3dsLXN0YWdlLW91dGVyIHtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5vd2wtaXRlbSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuXHJcbiAgICAgICAgICAgICAgICAmIH4gLm93bC1pdGVtIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjQ7XHJcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcclxuXHJcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB+IC5vd2wtaXRlbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm93bC1kb3RzIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG5cclxuICAgICAgICAgICAgLm93bC1kb3Qge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZDRkNGQ0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2U7XHJcblxyXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktY29sb3IpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5iZy13YXZlcyB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vaW1hZ2VzL3Byb2R1Y3RzLWJnLnN2ZykgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbn1cclxuXHJcbi8qKioqKioqKioqKip0ZXN0aW1vbmlhbC1zdHlsZSoqKioqKioqKioqL1xyXG4udGVzdGltb25pYWwtc2VjdGlvbiB7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSA1MHB4KTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9tYXJnaW47XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gICAgcGFkZGluZzogNzBweCAwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLW1pbnQtbGlnaHQpLCAxKTtcclxuXHJcbiAgICAudGVzdGltb25pYWwtYm94IHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci00MDApO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuXHJcbiAgICAgICAgLnRlc3RpbW9uaWFsLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcblxyXG4gICAgICAgICAgICAudGVzdGltb25pYWwtZGVzY3JpcHRpb24ge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAudGVzdGltb25pYWwtaW5mbyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cclxuICAgICAgICAgICAgICAgIGg1IHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGVzdGltb25pYWwtaW1hZ2Uge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTc1LjgycHg7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI0MHB4O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMjAwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaDIge1xyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDQycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAzMHB4KTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiA0MnB4IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMHZ3O1xyXG4gICAgfVxyXG59XHJcblxyXG4uYmctdmFuaWxsYS1saWdodCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tdmFuaWxsYS1saWdodCkpO1xyXG59XHJcblxyXG4uYmctY3lhbi1pY2Uge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLWN5YW4taWNlKSk7XHJcbn1cclxuXHJcbi5iZy1sYXZlbmRlci1taXN0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1sYXZlbmRlci1taXN0KSk7XHJcbn1cclxuXHJcbi8qKioqKioqKioqKipJbmR1c3RyeSBFeHBlcnRpc2UqKioqKioqKioqKi9cclxuLmluZHVzdHJ5LWV4cGVydGlzZSB7XHJcbiAgICBAaW5jbHVkZSBzZWN0aW9uX3BhZGRpbmc7XHJcblxyXG4gICAgLm1vcmUtZXhwZXJ0aXNlLXRpdGxlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItNzAwKTtcclxuICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmluZHVzdHJ5LWV4cGVydGlzZS1jb250ZW50IHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nOiAyNXB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcblxyXG4gICAgICAgIC5pbmR1c3RyeS1leHBlcnRpc2UtdGl0bGUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIGdhcDogMTBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHVsLFxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IGluc2lkZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB1bC5saXN0LXVuc3R5bGVkIHtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKioqKioqKioqKioqVGVjaCBTdGFjayoqKioqKioqKioqL1xyXG4udGVjaC1zdGFjayB7XHJcbiAgICBAaW5jbHVkZSBzZWN0aW9uX3BhZGRpbmc7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiA1O1xyXG5cclxuICAgIC5uYXYtdGFicyB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgIC5uYXYtbGluayB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItMzAwKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcclxuXHJcbiAgICAgICAgICAgICYuYWN0aXZlLFxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRhYi1ncmFkaWVudCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItOTAwKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSBhbmQgKG1pbi13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50YWItY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItMzAwKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50ZWNoLXN0YWNrLWNvbCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLTIwMCk7XHJcbiAgICAgICAgICAgIGdhcDogMTBweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci03MDApO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKioqKioqKioqKipmYXEqKioqKioqKioqKi9cclxuLmZhcS1zZWN0aW9uIHtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fcGFkZGluZztcclxuICAgIEBpbmNsdWRlIGN1c3RvbS1hY2NvcmRpb24oXHJcbiAgICAgICAgdmFyKC0tY29sb3ItMjAwKSxcclxuICAgICAgICB2YXIoLS1jb2xvci04MDApLFxyXG4gICAgICAgIHZhcigtLWNvbG9yLTUwMCksXHJcbiAgICAgICAgdmFyKC0tY29sb3ItOTAwKVxyXG4gICAgKTtcclxufVxyXG5cclxuLyoqKioqKioqKioqKkhpcmluZy1tb2RlbHMtc2VjdGlvbioqKioqKioqKioqL1xyXG4uaGlyaW5nLW1vZGVscy1zZWN0aW9uIHtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fcGFkZGluZztcclxuXHJcbiAgICBoNSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG5cclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmhpcmUtbW9kZWwtYm94IHtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDI0cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubW9kZWwtZGV0YWlscyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGdhcDogNHB4O1xyXG5cclxuICAgICAgICAgICAgLmRldGFpbC1yb3cge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAuZGV0YWlsLWxhYmVsLFxyXG4gICAgICAgICAgICAgICAgLmRldGFpbC12YWx1ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTJweCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogNTBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCA4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmRldGFpbC1sYWJlbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmRldGFpbC12YWx1ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJnLWJsdXNoLXBpbmstZ3JhZGllbnQge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmx1c2gtcGluay1ncmFkaWVudCk7XHJcblxyXG4gICAgLmRldGFpbC12YWx1ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiKHZhcigtLWJsdXNoLXBpbmspKTtcclxuICAgIH1cclxuXHJcbiAgICAuZGV0YWlsLWxhYmVsIHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2IodmFyKC0tYmx1c2gtcGluaykpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYmctYmx1c2gtcGluayB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWJsdXNoLXBpbmspLCAwLjMpO1xyXG5cclxuICAgICYuYm9yZGVyLWNvbG9yIHtcclxuICAgICAgICBib3JkZXItY29sb3I6IDFweCBzb2xpZCByZ2JhKHZhcigtLWJsdXNoLXBpbmspLCAxKTtcclxuICAgIH1cclxufVxyXG5cclxuLmJnLXNreS1ibHVlLWZhZGUtZ3JhZGllbnQge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2t5LWJsdWUtZmFkZS1ncmFkaWVudCk7XHJcblxyXG4gICAgLmRldGFpbC12YWx1ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiKHZhcigtLXNreS1ibHVlKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLmRldGFpbC1sYWJlbCB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiKHZhcigtLXNreS1ibHVlKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5iZy1sYXZlbmRlci1mYWRlLWdyYWRpZW50IHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWxhdmVuZGVyLWZhZGUtZ3JhZGllbnQpO1xyXG5cclxuICAgIC5kZXRhaWwtdmFsdWUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYih2YXIoLS1sYXZlbmRlcikpO1xyXG4gICAgfVxyXG5cclxuICAgIC5kZXRhaWwtbGFiZWwge1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYih2YXIoLS1sYXZlbmRlcikpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYmctYmx1c2gtbGF2ZW5kZXIge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS1sYXZlbmRlciksIDAuMyk7XHJcblxyXG4gICAgJi5ib3JkZXItY29sb3Ige1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogMXB4IHNvbGlkIHJnYmEodmFyKC0tbGF2ZW5kZXIpLCAxKTtcclxuICAgIH1cclxufVxyXG5cclxuLyoqKioqKioqKioqKm91ciBwaWxsYXIqKioqKioqKioqKi9cclxuLm91ci1waWxsYXIge1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9wYWRkaW5nO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogNTtcclxuXHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgIHdpZHRoOiA5MjBweDtcclxuICAgICAgICBoZWlnaHQ6IDEyMTJweDtcclxuICAgICAgICB0b3A6IC01MDBweDtcclxuICAgICAgICBsZWZ0OiAzNSU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcclxuICAgICAgICAgICAgNTAlIDUwJSBhdCA1MCUgNTAlLFxyXG4gICAgICAgICAgICByZ2IoMjQxLCAzNCwgODYpIDAlLFxyXG4gICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCVcclxuICAgICAgICApO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuMTU7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDUwMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDYwMHB4O1xyXG4gICAgICAgICAgICB0b3A6IC0yMzVweDtcclxuICAgICAgICAgICAgbGVmdDogMzUlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MDBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA1MDBweDtcclxuICAgICAgICAgICAgdG9wOiAtMTY3cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkLWJveCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA5MHB4O1xyXG5cclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jYXJkLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDExMHB4IDMwcHggMzBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDQwcHggNDBweDtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDMwcHggMzBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBSZXNwb25zaXZlIEZpeCAqL1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgLmNhcmQtYm94IHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDcwcHg7XHJcblxyXG4gICAgICAgICAgICAuY2FyZC1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDkwcHggMjBweCAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKioqKioqKioqKioqVGVhbS1zdHlsZSoqKioqKioqKioqL1xyXG4udGVhbS1zZWN0aW9uIHtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fcGFkZGluZztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgLnNpbmdsZS10ZWFtIHtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDEycHggcmdiYSgxMTAsIDg5LCAxNjIsIDAuMTYpO1xyXG5cclxuICAgICAgICAudGVhbS1pbWcge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50ZWFtLWluZm8ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDE2cHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuICAgICAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsYXNzLWNvbG9yKTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAyNXB4IDI1cHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG5cclxuICAgICAgICAgICAgaDQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyoqKioqKioqKioqKkJveC1zdHlsZSoqKioqKioqKioqL1xyXG4ucHctYm94IHtcclxuICAgIHBhZGRpbmc6IDQwcHggMzBweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgaGVpZ2h0OiAzNTBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dCAwcztcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDEycHggcmdiYSgxMTAsIDg5LCAxNjIsIDAuMTYpO1xyXG5cclxuICAgICAgICAuYm94LWljb24tc3R5bGUge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUtY29sb3IpO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAgICAgICB2YXIoLS1wcmltYXJ5LWNvbG9yKSAwJSxcclxuICAgICAgICAgICAgICAgIHZhcigtLXNlY29uZC1jb2xvcikgMTAwJVxyXG4gICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJveC1pY29uLXN0eWxlIHtcclxuICAgICAgICB3aWR0aDogNzhweDtcclxuICAgICAgICBoZWlnaHQ6IDc4cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUtY29sb3IpO1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0IDBzO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAgICAgICB2YXIoLS1wcmltYXJ5LWNvbG9yKSAwJSxcclxuICAgICAgICAgICAgICAgIHZhcigtLXNlY29uZC1jb2xvcikgMTAwJVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dCAwcztcclxuICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ib3gtY29udGVudC1zdHlsZSB7XHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jaGVja3NlcnZpY2Uge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBnYXA6IDEwcHg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgJiA+IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgICAgICAgaGVpZ2h0OiAwZW07XHJcbiAgICAgICAgd2lkdGg6IDBlbTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAmOmNoZWNrZWQsXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICYgKyBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLTkwMCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zZWNvbmRhcnktY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYgPiBsYWJlbCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItMjAwKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItNzAwKTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyMXB4O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgcGFkZGluZzogOHB4IDEycHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE3cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jb250YWN0LW9wdGlvbiB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tdG9wOiA0NHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci05MDApO1xyXG59XHJcblxyXG4uY29udGFjdC1vdGhlciB7XHJcbiAgICAubWktY29udGFjdCB7XHJcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XHJcbiAgICAgICAgcGFkZGluZzogMThweCAyMHB4O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBpbnNldDogMDtcclxuICAgICAgICAgICAgcGFkZGluZzogMnB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAgICAgICA5NS4yOGRlZyxcclxuICAgICAgICAgICAgICAgIHJnYmEodmFyKC0tc2Vjb25kYXJ5LXJnYiksIDEpIDAlLFxyXG4gICAgICAgICAgICAgICAgcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDEpIDEwMCVcclxuICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgIC13ZWJraXQtbWFzazpcclxuICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgjZmZmIDAgMCkgY29udGVudC1ib3gsXHJcbiAgICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApO1xyXG4gICAgICAgICAgICAtd2Via2l0LW1hc2stY29tcG9zaXRlOiBleGNsdWRlO1xyXG4gICAgICAgICAgICBtYXNrLWNvbXBvc2l0ZTogZXhjbHVkZTtcclxuXHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbnRhY3QtaWNvbiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcclxuXHJcbiAgICAgICAgICAgIGksXHJcbiAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItNzAwKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMjZweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyNnB4O1xyXG5cclxuICAgICAgICAgICAgICAgIHBhdGgge1xyXG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWNvbG9yLTcwMCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb250YWN0LWRldGFpbHMge1xyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci03MDApO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmZvbGxvd3MtYnRuIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB3aWR0aDogMjAwcHg7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItMjAwKTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQgMHM7XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBpbnNldDogMDtcclxuICAgICAgICBwYWRkaW5nOiAycHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAgIDk1LjI4ZGVnLFxyXG4gICAgICAgICAgICByZ2JhKHZhcigtLXNlY29uZGFyeS1yZ2IpLCAxKSAwJSxcclxuICAgICAgICAgICAgcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDEpIDEwMCVcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICAtd2Via2l0LW1hc2s6XHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgjZmZmIDAgMCkgY29udGVudC1ib3gsXHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgjZmZmIDAgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1tYXNrLWNvbXBvc2l0ZTogZXhjbHVkZTtcclxuICAgICAgICBtYXNrLWNvbXBvc2l0ZTogZXhjbHVkZTtcclxuXHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgd2lkdGg6IDI1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0NTBweCkge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcblxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItOTAwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZvbGxvdy1saW5rIHtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgICAgICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZzogMTRweCAxNXB4O1xyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMXB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci03MDApO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0NTBweCkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmNlbnRlci1ibG9jayB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY29udGFjdC1ibG9jayB7XHJcbiAgICBoMyxcclxuICAgIGgyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnB0LTEzMCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5pbnF1aXJlcy1mb3JtIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcclxuICAgIH1cclxufVxyXG5cclxuLyoqKioqKioqKioqKmNvbm5lY3QgZm9ybSoqKioqKioqKiovXHJcbi5sZXRzLWNvbm5lY3Qge1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gNTBweCk7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHBhZGRpbmc6IDkwcHggMDtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fbWFyZ2luO1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAzMHB4KTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiA0MnB4IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMHZ3O1xyXG4gICAgfVxyXG5cclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAxODBkZWcsXHJcbiAgICAgICAgcmdiYSh2YXIoLS1zZWNvbmRhcnktcmdiKSwgMC4xNSkgMCUsXHJcbiAgICAgICAgcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMTUpIDEwMCVcclxuICAgICk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG5cclxuICAgICYuY29udGFjdC11cyB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY29udGFjdC1oZXJvIHtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTFweCkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxODBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGFjdC11cyB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDU7XHJcblxyXG4gICAgICAgIC5oZWFkaW5nLXRpdGxlIHtcclxuICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRpdGxlLWNvbG9yKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgICAgIHdpZHRoOiA5MjBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMjEycHg7XHJcbiAgICAgICAgICAgIHRvcDogNTklO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC00MCUpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoXHJcbiAgICAgICAgICAgICAgICA1MCUgNTAlIGF0IDUwJSA1MCUsXHJcbiAgICAgICAgICAgICAgICByZ2IoMjQxLCAzNCwgODYpIDAlLFxyXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMTU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MDBweDtcclxuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTQwJSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MDBweDtcclxuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTQwJSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKioqKioqKioqKiogQWJvdXQgcGFnZSAqKioqKioqKioqL1xyXG4uYWJvdXQtaGVyby1zZWN0aW9uIHtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG5cclxuICAgIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogNTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAyNHB4IDEwMHB4IDBweCByZ2JhKHZhcigtLXNlY29uZGFyeS1yZ2IpLCAwLjMpO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxNTBweDtcclxuXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hYm91dC1jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fcGFkZGluZztcclxuICAgIHBhZGRpbmctdG9wOiA5MHB4O1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgb3BhY2l0eTogMC4xO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnRpdGxlLWZvbnQge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci0wMDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY29tcGFueS1vdmVydmlldyB7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSA1MHB4KTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgcGFkZGluZzogOTBweCAwO1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9tYXJnaW47XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDMwcHgpO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDQycHggMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwdnc7XHJcbiAgICB9XHJcblxyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZjZmNmY2KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcblxyXG4gICAgLmJveC1jb250ZW50LXN0eWxlIHtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcblxyXG4gICAgICAgIGg0IHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLTAwMCk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYm94LWljb24ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJnLXNvZnQtcm9zZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2IodmFyKC0tc29mdC1yb3NlKSk7XHJcblxyXG4gICAgLmJveC1pY29uIHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLXNvZnQtcm9zZSksIDAuMjIpO1xyXG5cclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICBwYXRoIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWNvbG9yLWUwMzQ1NykgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJnLWljZS1ibHVlIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYih2YXIoLS1pY2UtYmx1ZSkpO1xyXG5cclxuICAgIC5ib3gtaWNvbiB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS1pY2UtYmx1ZSksIDAuMjIpO1xyXG5cclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICBwYXRoIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWNvbG9yLTM3QTJDOCkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJnLXZpb2xldC1jbG91ZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2IodmFyKC0tdmlvbGV0LWNsb3VkKSk7XHJcblxyXG4gICAgLmJveC1pY29uIHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLXZpb2xldC1jbG91ZCksIDAuMjIpO1xyXG5cclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICBwYXRoIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWNvbG9yLTgwNTBFMSkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyoqKioqKioqKioqKndvcmstcHJvY2VzcyoqKioqKioqKioqL1xyXG4ud29yay1wcm9jZXNzIHtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fcGFkZGluZztcclxuXHJcbiAgICAud29yay1wcm9jZXNzLXdyYXAge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4IDA7XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDUyLjglO1xyXG4gICAgICAgICAgICBsZWZ0OiAzMHB4O1xyXG4gICAgICAgICAgICByaWdodDogMjBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWUwMzQ1Nyk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTIuOCU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1lMDM0NTcpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRpbWVsaW5lLWNvbnRlbnQge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWUwMzQ1Nyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci0wMDApO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS43O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJveC1pY29uLXN0eWxlIHtcclxuICAgICAgICAgICAgd2lkdGg6IDQ0cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDRweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZTAzNDU3KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1zb2Z0LXJvc2UpLCAwLjMpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZTAzNDU3KTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiA1O1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxMHB4IHJnYmEodmFyKC0tc29mdC1yb3NlKSwgMC4zKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWUwMzQ1Nyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgei1pbmRleDogMztcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IC03cHg7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiA1cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWUwMzQ1Nyk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgPiAuYm94LWljb24tc3R5bGUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZTAzNDU3KTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTBweCByZ2JhKHZhcigtLXNvZnQtcm9zZSksIDAuOSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN0ZXAtdG9wIHtcclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMjZweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMzk5cHgpIHtcclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAzNXB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG5cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWUwMzQ1Nyk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zdGVwLWJvdHRvbSB7XHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDc4cHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1heC13aWR0aDogMTM5OXB4KSB7XHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlICsgODdweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcclxuXHJcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1lMDM0NTcpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMzBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyoqKioqKioqKioqKmJlaGluZCBUZWFtKioqKioqKioqKiovXHJcbi5iZWhpbmQtdGVhbSB7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSA1MHB4KTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgcGFkZGluZzogOTBweCAwO1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9tYXJnaW47XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDMwcHgpO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDQycHggMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwdnc7XHJcbiAgICB9XHJcblxyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZWNmOWY0KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbn1cclxuXHJcbi8qKioqKioqKioqKiphYm91dC1zdHlsZSoqKioqKioqKioqL1xyXG4uYWJvdXQtc2VjdGlvbiB7XHJcbiAgICBAaW5jbHVkZSBzZWN0aW9uX3BhZGRpbmc7XHJcbiAgICBwYWRkaW5nLXRvcDogMTUwcHg7XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5hYm91dC1pbWctd3JhcHBlciB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY2FyZC5ib3JkZXItZ3JhZGllbnQsXHJcbi5jYXJkLmJvcmRlci1ncmFkaWVudC1kYXNoZWQge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MXB4KSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogMTYwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtdGl0bGUge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS10aXRsZS1mb250LWZyYXVuY2VzKSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgZm9udC1zaXplOiA1OXB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci0wMDApO1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJkLWJvZHkge1xyXG4gICAgICAgIHBhZGRpbmc6IDI1cHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgICAgIC5jYXJkLXRleHQge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItMDAwKTtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNlcnZpY2UtZGV0YWlscy1zZWN0aW9uIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fcGFkZGluZztcclxuICAgIHBhZGRpbmctdG9wOiA5MHB4O1xyXG4gICAgei1pbmRleDogNTtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNjBweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcclxuICAgIH1cclxufVxyXG5cclxuLmRlZGljYXRlLWhpcmUtc2VjdGlvbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSA1MHB4KTtcclxuICAgIG1hcmdpbjogOTBweCBhdXRvIGF1dG8gYXV0bztcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fbWFyZ2luO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZjZmNmY2KTtcclxuICAgIHBhZGRpbmc6IDgwcHggMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICB6LWluZGV4OiA1MDtcclxuXHJcbiAgICBoNSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDMwcHgpO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDQycHggMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwdnc7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgIH1cclxuXHJcbiAgICAubmF2LXRhYnMgLm5hdi1saW5rIHtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHg7XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDNweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JhZGllbnQtY29sb3IpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY2FyZCB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xyXG5cclxuICAgICAgICAuY2FyZC1ib2R5IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jYXJkLWZvb3RlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5idG4tcGl4ZWwtb3V0bGluZSB7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAxMnB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktY29sb3IpO1xyXG5cclxuICAgICAgICAgICAgc3ZnLFxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZykgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmluZHVzdHJpZXMtYm94IHtcclxuICAgICAgICAuY2FyZCB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXNlY29uZGFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDEycHggMHB4IHJnYmEodmFyKC0tc2Vjb25kYXJ5LXJnYiksIDAuMTUpXHJcbiAgICAgICAgICAgICAgICAgICAgaW5zZXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi50aXRsZS1zdHlsZSB7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcclxuXHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDUwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzcHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmFkaWVudC1jb2xvcik7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKioqKioqKioqKlByb2Nlc3MgU3R5bGUqKioqKioqKioqKi9cclxuLnByb2Nlc3Mtc2VjdGlvbiB7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSA1MHB4KTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgcGFkZGluZzogOTBweCAwO1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9tYXJnaW47XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDMwcHgpO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDQycHggMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwdnc7XHJcbiAgICB9XHJcblxyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgIDE4MGRlZyxcclxuICAgICAgICByZ2JhKHZhcigtLXNlY29uZGFyeS1yZ2IpLCAwLjE1KSAwJSxcclxuICAgICAgICByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4xNSkgMTAwJVxyXG4gICAgKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbn1cclxuXHJcbi8qKioqKioqKip3aHktc2VjdGlvbioqKioqKioqKi9cclxuLndoeS1zZWN0aW9uIHtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fcGFkZGluZztcclxufVxyXG5cclxuLyoqKioqKipTdGF0cy1TZWN0aW9uKioqKioqL1xyXG4uc3RhdHMtc2VjdGlvbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSA1MHB4KTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgcGFkZGluZzogOTBweCAwO1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9tYXJnaW47XHJcbiAgICB6LWluZGV4OiA1O1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAzMHB4KTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiA0MnB4IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMHZ3O1xyXG4gICAgfVxyXG5cclxuICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tY29sb3ItNTE1MTUxLXJnYiksIDAuMDcpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuXHJcbiAgICAuc3RhdHMtbGlzdCB7XHJcbiAgICAgICAgLnN0YXRzLWJveCB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9iZy1lZmZlY3Qvc2VydmljZS1jYXJkLWJnLnN2Zyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG5cclxuICAgICAgICAgICAgLnN0YXRzLXRleHQge1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMjVweCBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLmJnLXdoaXRlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN0YXRzLWJvdHRvbSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTogLTIxcHg7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgIH1cclxufVxyXG5cclxuLmNhbi10cnVzdC1zZWN0aW9uIHtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fcGFkZGluZztcclxuXHJcbiAgICAudGl0bGUtc3R5bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyoqKioqKipIb3JpemFudGFsLVRpbWVsaW5lKioqKioqL1xyXG4uaG9yLXRpbWVsaW5lLXN0ZXBzIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAuaG9yLXRpbWVsaW5lLXN0ZXAge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXJnaW46IDFyZW07XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcclxuICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDAuMjVyZW0gZG90dGVkIHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDMuNDZyZW07XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA3LjVyZW07XHJcbiAgICAgICAgICAgICAgICB0b3A6IDAuMzEyNXJlbTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKTpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMC4yNXJlbSBkb3R0ZWQgdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTEuNDZyZW07XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICByaWdodDogNy41cmVtO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwLjMxMjVyZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50aW1lbGluZS1jb250ZW50IHtcclxuICAgICAgICAgICAgd2lkdGg6IDE0cmVtO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAuaW5uZXItY2lyY2xlIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEuNXJlbTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMXJlbTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxcmVtO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzcmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzcmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogM3JlbTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2LjI1cmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyoqKioqKioqKioqKnBvcnRmb2xpby1zdHlsZSoqKioqKioqKioqL1xyXG4ucG9ydGZvbGlvLXNlY3Rpb24ge1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9wYWRkaW5nO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogNTtcclxuXHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgIHdpZHRoOiA5MjBweDtcclxuICAgICAgICBoZWlnaHQ6IDEyMTJweDtcclxuICAgICAgICB0b3A6IC03MDBweDtcclxuICAgICAgICBsZWZ0OiAzNSU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcclxuICAgICAgICAgICAgNTAlIDUwJSBhdCA1MCUgNTAlLFxyXG4gICAgICAgICAgICByZ2IoMjQxLCAzNCwgODYpIDAlLFxyXG4gICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCVcclxuICAgICAgICApO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuMTU7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDUwMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDYwMHB4O1xyXG4gICAgICAgICAgICB0b3A6IC0yMzVweDtcclxuICAgICAgICAgICAgbGVmdDogMzUlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MDBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA1MDBweDtcclxuICAgICAgICAgICAgdG9wOiAtMTY3cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXRhYnMge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBnYXA6IDRweDtcclxuICAgIHBhZGRpbmc6IDZweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEodmFyKC0tc2Vjb25kYXJ5LXJnYiksIDAuMjUpO1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tdGFicyAubmF2LWl0ZW0ge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDQ4JTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS10YWJzIC5uYXYtbGluayB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gICAgcGFkZGluZzogNnB4IDIycHg7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItNTAwKTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcbn1cclxuXHJcbi5jdXN0b20tdGFicyAubmF2LWxpbms6aG92ZXIge1xyXG4gICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG59XHJcblxyXG4uY3VzdG9tLXRhYnMgLm5hdi1saW5rLmFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWNvbmQtcHJpbWFyeS1ncmFkaWVudCk7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxufVxyXG5cclxuLnNpbmdsZS1wb3J0Zm9saW8ge1xyXG4gICAgLnNpbmdsZS1wb3J0Zm9saW8taW1nIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnByb2plY3QtaW5mby1ib3gge1xyXG4gICAgdWwge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG5cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5kZXN0aW5hdGlvbiB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRpdGxlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbWFsbC1pbWctYm94IHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJvZHktY29sb3IpO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICAuaW1nLWJveCB7XHJcbiAgICAgICAgaGVpZ2h0OiA2NTBweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHBpY3R1cmUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNHMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMC40cyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgd2lkdGg6IDY2M3B4O1xyXG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IGF1dG8gNjYzLzU1MDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDUwJSwgMCk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDUwJSwgMCk7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAgICAgICAgICAgMTgwZGVnLFxyXG4gICAgICAgICAgICAgICAgICAgIHJnYmEoMjEsIDIxLCAyMSwgMCkgMCxcclxuICAgICAgICAgICAgICAgICAgICByZ2JhKDIxLCAyMSwgMjEsIDAuOCkgNzUlXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAwLjRzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmltZy1kZXRhaWxzIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ib2R5LWNvbG9yKTtcclxuICAgICAgICBoZWlnaHQ6IDExMHB4O1xyXG4gICAgICAgIHotaW5kZXg6IDM7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMTEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5iaWctaW1nLWJveCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ib2R5LWNvbG9yKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4wNik7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMThweDtcclxuICAgIH1cclxuXHJcbiAgICAuaW1nLWJveCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgbWF4LWhlaWdodDogMzQ0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNDAwcHgpIHtcclxuICAgICAgICAgICAgbWF4LWhlaWdodDogMjkwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI0NHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIxOHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMzMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDE5MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogNjQ4LzQyNDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNnMgZWFzZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcclxuICAgICAgICAuaW1nLWJveDpob3ZlciB7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5pbWctZGV0YWlscyB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDM7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYm9keS1jb2xvcik7XHJcbiAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgNTBweCA1MHB4O1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDMwcHggMzBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxOHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMjBweCAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoNCxcclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLTAwMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYmFkZ2Uge1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRuLXBpeGVsLW91dGxpbmUge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEycHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogNDRweDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogNDRweDtcclxuICAgICAgICAgICAgd2lkdGg6IDQ0cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDRweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucHJvamVjdC1mZWF0dXJlcyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogdXJsKC4uLy4uL2ltYWdlcy9wb3J0Zm9saW8vZnMtYmcuc3ZnKSA1MCUgY2VudGVyIC8gY29udGFpblxyXG4gICAgICAgIG5vLXJlcGVhdDtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICBoZWlnaHQ6IDE3MHB4O1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgIGhlaWdodDogMTI1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmF2YXRhciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIHdpZHRoOiA4MHB4O1xyXG4gICAgICAgIGhlaWdodDogODBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zb2Z0LWdyYWRpZW50KTtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXNvZnQtZ3JhZGllbnQpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBtYXJnaW46IDBweCAyMHB4IDBweCA1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAucHJvamVjdC1mZWF0dXJlcy1kZXRhaWwge1xyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwcHggMjBweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmxlYWQge1xyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tYmFkZ2Uge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci0wMDApO1xyXG4gICAgcGFkZGluZzogOHB4IDEycHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItMzAwKTtcclxufVxyXG5cclxuLyoqKioqKioqKioqKkJsb2ctc3R5bGUqKioqKioqKioqKi9cclxuLnNpbmdsZS1ibG9nLWhlcm8ge1xyXG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiA1O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDI0cHggMTAwcHggMHB4IHJnYmEodmFyKC0tc2Vjb25kYXJ5LXJnYiksIDAuMyk7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDE1MHB4O1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJsb2ctc29jaWFsLWxpbmtzIHtcclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmQtdGV4dC1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAxMDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJsb2ctc2VjdGlvbiB7XHJcbiAgICBAaW5jbHVkZSBzZWN0aW9uX3BhZGRpbmc7XHJcblxyXG4gICAgLnNpbmdsZS1ibG9nLWltYWdlIHtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAyNHB4IDEwMHB4IDBweCByZ2JhKHZhcigtLXNlY29uZGFyeS1yZ2IpLCAwLjMpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYmxvZy1pbWcge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJsb2ctY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRhdGUtbWV0YSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMS4yNzVyZW0gKyAwLjN2dyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1lMDM0NTcpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL3RpdGxlLXBvaW50LXJlZC5zdmcpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYmxvY2txdW90ZSB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjVweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgICAgICAgICAgOTBkZWcsXHJcbiAgICAgICAgICAgICAgICByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4xKSxcclxuICAgICAgICAgICAgICAgIHJnYmEodmFyKC0tc2Vjb25kYXJ5LXJnYiksIDAuMSlcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRpdGxlLWNvbG9yKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCA1cHggNXB4IDA7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMC4xcHggc29saWQgcmdiYSh2YXIoLS1zZWNvbmRhcnktcmdiKSwgMC4yKTtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCByZ2JhKHZhcigtLXNlY29uZGFyeS1yZ2IpLCAwLjIpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucmVhZC1tb3JlLWJ0biB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBjb2xvcjogcmdiKHZhcigtLWNlcnVsZWFuLWJsdWUpKTtcclxuXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDJweDtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tY2VydWxlYW4tYmx1ZSkpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYih2YXIoLS1jZXJ1bGVhbi1ibHVlKSk7XHJcblxyXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICAgICAgICAgICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDExcHggMzBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA1MDtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgICAgICAgICAgICA5MGRlZyxcclxuICAgICAgICAgICAgICAgICAgICB2YXIoLS1jb2xvci0zNDc5RTApIDAlLFxyXG4gICAgICAgICAgICAgICAgICAgICM0ZTU0YTUgNTElLFxyXG4gICAgICAgICAgICAgICAgICAgIHZhcigtLWNvbG9yLTM0NzlFMCkgMTAwJVxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjAwJSBhdXRvO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlLWNvbG9yKTtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMjRweDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQzZGVnKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvdGl0bGUtcG9pbnQtcmVkLnN2Zyk7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgb2wge1xyXG4gICAgICAgICAgICBjb3VudGVyLXJlc2V0OiBsZWdhbC1jb3VudGVyO1xyXG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcblxyXG4gICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBsZWdhbC1jb3VudGVyO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuOTtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogY291bnRlcihsZWdhbC1jb3VudGVyKTtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDRweDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItMTAwKTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTRweDtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDg1MDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKC01ZGVnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNpbmdsZS1ibG9nIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQgMHM7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBib3gtc2hhZG93OiAwcHggNHB4IDhweCAwcHggIzAwMDAwMDI2O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDc7XHJcbiAgICB9XHJcblxyXG4gICAgLnB3LWJsb2ctZGVzaWduIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYmxvZy1pbWcge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYmxvZy1jb250ZW50IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAxLjI1cmVtICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaDEsXHJcbiAgICAgICAgICAgIGgyLFxyXG4gICAgICAgICAgICBoMyxcclxuICAgICAgICAgICAgaDQsXHJcbiAgICAgICAgICAgIGg1LFxyXG4gICAgICAgICAgICBoNixcclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGg0IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYmxvZy1tZXRhIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICAgICAgICAgIC5yZWFkLW1vcmUtYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc29mdC1ncmFkaWVudCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5jb21tZW50IHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucmVsYXRlZC1wb3N0IHtcclxuICAgICAgICAuc2luZ2xlLWJsb2cge1xyXG4gICAgICAgICAgICAucm93ID4gKiB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJsb2ctaW1nIHtcclxuICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJzLWJvcmRlci1yYWRpdXMpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi50aXRsZS1wb2ludCB7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZTAzNDU3KSAhaW1wb3J0YW50O1xyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL3RpdGxlLXBvaW50LXJlZC5zdmcpO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB3aWR0aDogMTVweDtcclxuICAgICAgICBoZWlnaHQ6IDE1cHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIH1cclxufVxyXG5cclxudWwubGlzdC10aXRsZS1wb2ludCxcclxub2wubGlzdC10aXRsZS1wb2ludCB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICA+IGxpIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL3RpdGxlLXBvaW50LXJlZC5zdmcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDE1cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTVweDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbnVsLmxpc3QtdGl0bGUtcG9pbnQtYmx1ZSxcclxub2wubGlzdC10aXRsZS1wb2ludC1ibHVlIHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgID4gbGkge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvdGl0bGUtcG9pbnQtYmx1ZS5zdmcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi50YWdzIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDk7XHJcbn1cclxuXHJcbi5ibG9nLWRldGFpbC10aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDQwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tb3JlLWJsb2dzIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDU7XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHdpZHRoOiA5MjBweDtcclxuICAgICAgICBoZWlnaHQ6IDEyMTJweDtcclxuICAgICAgICB0b3A6IC04MDBweDtcclxuICAgICAgICBsZWZ0OiAzNSU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcclxuICAgICAgICAgICAgNTAlIDUwJSBhdCA1MCUgNTAlLFxyXG4gICAgICAgICAgICByZ2IoMjQxLCAzNCwgODYpIDAlLFxyXG4gICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCVcclxuICAgICAgICApO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuMTU7XHJcbiAgICAgICAgei1pbmRleDogLTEwO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MDBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA2MDBweDtcclxuICAgICAgICAgICAgdG9wOiAtMjM1cHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDM1JTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNTAwcHg7XHJcbiAgICAgICAgICAgIHRvcDogLTE2N3B4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJsb2ctb3duZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZjVmNmZmKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWRmZTFmZik7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgcGFkZGluZzogMjRweDtcclxuXHJcbiAgICAuYXV0aG9yLWltZyB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgYm9yZGVyOiA0cHggc29saWQgdmFyKC0td2hpdGUtY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNlYXJjaC1ib3gge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWF4LXdpZHRoOiA0MTRweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB6LWluZGV4OiA5O1xyXG5cclxuICAgIGlucHV0IHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nOiAxM3B4IDE2cHggMTNweCA1MHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ib2R5LWNvbG9yKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGl0bGUtY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG5cclxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc3ZnIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMjBweDtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5iZy13aGl0ZSB7XHJcbiAgICAuZm9ybS1mbG9hdGluZyB7XHJcbiAgICAgICAgLmZvcm0tY29udHJvbCxcclxuICAgICAgICAuZm9ybS1zZWxlY3Qge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItNjAwKTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci02MDApO1xyXG5cclxuICAgICAgICAgICAgJjpwbGFjZWhvbGRlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItNjAwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItNjAwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZvcm0tY2hlY2stbGFiZWwsXHJcbiAgICAuZm9ybS1sYWJlbCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLTYwMCk7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQge1xyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLTYwMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5sZWZ0LXNpZGUtd3JhcHBlciB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zaWRlYmFyLXdyYXBwZXIge1xyXG4gICAgLnNpZGViYXItYm94IHtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEodmFyKC0tc2Vjb25kYXJ5LXJnYiksIDAuMTUpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQgMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMzBweCByZ2JhKDIxNSwgMjI0LCAyNTIsIDAuMTUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJveC10aXRsZS1oZWFkZXIge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LXJnYiksICRhbHBoYTogMC4xNSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYm94LWNvbnRlbnQtYm9keSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcblxyXG4gICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYucmVjZW50LWJsb2ctYm94IHtcclxuICAgICAgICAgICAgLnJlY2VudC1ibG9nLWl0ZW1zIHtcclxuICAgICAgICAgICAgICAgIC5yZWNlbnQtYmxvZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLnJlY2VudC1ibG9nLWltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogODBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogODBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLnJlY2VudC1ibG9nLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGg1IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmNhdGFnb3JpZXMtYm94IHtcclxuICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0IDBzO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi50YWdzLWJveCB7XHJcbiAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmNvbnRhY3Qtc2VjdGlvbiB7XHJcbiAgICAuZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMgfiBsYWJlbCxcclxuICAgIC5mb3JtLWZsb2F0aW5nID4gLmZvcm0tc2VsZWN0IH4gbGFiZWwge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvcm0tY29udHJvbCxcclxuICAgIC5mb3JtLXNlbGVjdCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItMDAwKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLTAwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jb250YWN0LWZvcm0ge1xyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTFweCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTAwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9ybS1jb250cm9sLFxyXG4gICAgICAgIC5mb3JtLXNlbGVjdCB7XHJcbiAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qKioqKioqKioqKipjYXJlZXItc2VjdGlvbioqKioqKioqKioqL1xyXG4uY2FyZWVycy1jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fcGFkZGluZztcclxuXHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiA5O1xyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgd2lkdGg6IDkyMHB4O1xyXG4gICAgICAgIGhlaWdodDogMTAwMHB4O1xyXG4gICAgICAgIHRvcDogLTU4MHB4O1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KFxyXG4gICAgICAgICAgICA1MCUgNTAlIGF0IDUwJSA1MCUsXHJcbiAgICAgICAgICAgIHJnYigyNDEsIDM0LCA4NikgMCUsXHJcbiAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgb3BhY2l0eTogMC4xNTtcclxuICAgICAgICB6LWluZGV4OiAtOTk5OTtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNjAwcHg7XHJcbiAgICAgICAgICAgIHRvcDogLTIzNXB4O1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDUwMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwMHB4O1xyXG4gICAgICAgICAgICB0b3A6IC0xNjdweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hYm91dC1jYXJlZXIge1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gNTBweCk7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHBhZGRpbmc6IDcwcHggMDtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fbWFyZ2luO1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAzMHB4KTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMHZ3O1xyXG4gICAgfVxyXG5cclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWVjZjlmNCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG59XHJcblxyXG4uYXBwbGljYXRpb24tcHJvY2VzcyB7XHJcbiAgICBAaW5jbHVkZSBzZWN0aW9uX3BhZGRpbmc7XHJcbiAgICBAaW5jbHVkZSBjdXN0b20tYWNjb3JkaW9uKFxyXG4gICAgICAgIHZhcigtLWNvbG9yLTIwMCksXHJcbiAgICAgICAgdmFyKC0tY29sb3ItODAwKSxcclxuICAgICAgICB2YXIoLS1jb2xvci01MDApLFxyXG4gICAgICAgIHZhcigtLWNvbG9yLTkwMCksXHJcbiAgICAgICAgXCIuLi8uLi9pbWFnZXMvcGx1cy5zdmdcIixcclxuICAgICAgICBcIi4uLy4uL2ltYWdlcy9taW51cy5zdmdcIlxyXG4gICAgKTtcclxufVxyXG5cclxuLm9wZW5pbmdzLXNlY3Rpb24ge1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9wYWRkaW5nO1xyXG5cclxuICAgIC5hcHBseS1saW5rcyB7XHJcbiAgICAgICAgLmJ0bi1waXhlbC1vdXRsaW5lIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTFweCAzOHB4O1xyXG5cclxuICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgIHBhdGgge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcikgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhdGgge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS13aGl0ZS1jb2xvcikgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaW1nLFxyXG4gICAgICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRuLXBpeGVsIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTFweCAyNHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgICAgIC5idG4tcGl4ZWwsXHJcbiAgICAgICAgICAgIC5idG4tcGl4ZWwtb3V0bGluZSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMXB4IDE5cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1vcmUtb3BlbmluZyB7XHJcbiAgICAgICAgZ2FwOiAxMHB4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgICAgLmV4cCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tYmx1c2gtcGluayksIDAuMik7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxNHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAub3BlbmluZy1pbm5lciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS1jb2xvci0zNDc5RTAtcmdiKSwgMC4xKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ucGhvdG8tZ3JpZCB7XHJcbiAgICBAaW5jbHVkZSBzZWN0aW9uX3BhZGRpbmc7XHJcblxyXG4gICAgLml0ZW0ge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKioqKioqKioqKioqQUkgTUwgU2VjdGlvbioqKioqKioqKioqL1xyXG4uYWltbC1jbGllbnQge1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9wYWRkaW5nO1xyXG59XHJcblxyXG4uaGVyby1zZWN0aW9uLmFpLW1sIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICAgIHBhZGRpbmc6IDEwMHB4IDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogODB2aDtcclxuICAgICAgICBwYWRkaW5nOiAxMjBweCAwIDgwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgICBwYWRkaW5nOiAxNDBweCAwIDYwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogMTIwcHggMCA2MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDEwMHB4IDAgNTBweDtcclxuICAgIH1cclxufVxyXG5cclxuLmJnLWFpLW1sIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ltYWdlcy9haS1tbC1iZy5wbmdcIik7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDUwJSBhdXRvO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxMDtcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHJpZ2h0OiAwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgd2lkdGg6IDYwMHB4O1xyXG4gICAgICAgIGhlaWdodDogNjAwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KFxyXG4gICAgICAgICAgICBjaXJjbGUsXHJcbiAgICAgICAgICAgIHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjEpIDAlLFxyXG4gICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDcwJVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogNDAwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDAwcHg7XHJcbiAgICAgICAgICAgIHRvcDogMjAlO1xyXG4gICAgICAgICAgICByaWdodDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC01MCUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTQwMHB4KSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA0NSUgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA0MCUgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDYwJSBhdXRvO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b207XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMDBweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDgwJSBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyNTBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzMjBweCkge1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2hvLXdlLWFyZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxMDtcclxufVxyXG5cclxuLndoby1ib3gge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWFnZXMvYmctZWZmZWN0LW9yYW5nZS5zdmdcIik7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktcmdiKSwgJGFscGhhOiAwLjEpO1xyXG5cclxuICAgIC5jYXJkLWJvZHkge1xyXG4gICAgICAgIHBhZGRpbmc6IDI0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmJveC1pY29ucyB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHJcbiAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICAgICBwYXRoIHtcclxuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXNlY29uZGFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAud2hvLWJveC1jb250ZW50IHtcclxuICAgICAgICBoNSB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vaW1hZ2VzL2JnLWVmZmVjdC1ibHVlLnN2Z1wiKTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRjb2xvcjogdmFyKC0tcHJpbWFyeS1yZ2IpLCAkYWxwaGE6IDAuMSk7XHJcblxyXG4gICAgICAgIC5ib3gtaWNvbnMge1xyXG4gICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgc2NhbGU6IDEuMTtcclxuXHJcbiAgICAgICAgICAgICAgICBwYXRoIHtcclxuICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLndoby1ib3gtY29udGVudCB7XHJcbiAgICAgICAgICAgIGg1IHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyoqKioqKioqKioqKlNpdGUgTWFwIFNlY3Rpb24qKioqKioqKioqKi9cclxuLnNpdGUtbWFwLXNlY3Rpb24ge1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9wYWRkaW5nO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC5zaXRlbWFwLXJvdyB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2l0ZW1hcC1oZWFkZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5udW1iZXItYm94IHtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogODlweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci00RTU0QTUpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zMyk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDc4LCA4NCwgMTY1LCAwLjE1KTtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDU7XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiA3MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzBweDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiA2MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC50aXRsZS13cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcclxuXHJcbiAgICAgICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci00RTU0QTUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjRweDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLnRpdGxlLWxpbmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDJweDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci00RTU0QTUpO1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci00RTU0QTUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiA4MCU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA3OXB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCB2YXIoLS1jb2xvci00RTU0QTUpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLTRFNTRBNSk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTVweDtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTBweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLTRFNTRBNSk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMTMuNXB4O1xyXG4gICAgICAgICAgICAgICAgdG9wOiAxMTklO1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zaXRlbWFwLWJvZHkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE0MHB4O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5jYXRlZ29yeS1ncm91cCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgICAgIC5jYXRlZ29yeS10aXRsZS13cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0zM3B4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLTRFNTRBNSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC42O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGg1IHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcikgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAudGFnLWNsb3VkIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgICAgICAgICBnYXA6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKioqKioqKioqKioqY2Fyb3VzZWwtc3R5bGUqKioqKioqKioqKi9cclxuLmNhcm91c2VsLXNlY3Rpb24td3JhcHBlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAzO1xyXG5cclxuICAgIC5jYXJvdXNlbC1zZWN0aW9uIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMztcclxuICAgIH1cclxuXHJcbiAgICAuY2Fyb3VzZWwtc2VjdGlvbi5jbGlwLWJnIHtcclxuICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAxMSUsIDEwMCUgMCwgMTAwJSAxMDAlLCAwIDg5JSk7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCUgOCUsIDEwMCUgMiUsIDEwMCUgOTglLCAwIDkyJSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc29mdC1ncmFkaWVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jYXJvdXNlbC1zZWN0aW9uLmNhcm91c2VsLWl0ZW0ge1xyXG4gICAgICAgIC5jYXJvdXNlbC1jb250ZW50IHtcclxuICAgICAgICAgICAgLmhlYWRpbmctdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJvcmRlci1idG4ge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUtY29sb3IpO1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY2Fyb3VzZWwtY29udHJvbCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc29mdC1ncmFkaWVudCk7XHJcbiAgICAgICAgd2lkdGg6IDUwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogMzBweDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgei1pbmRleDogOTk7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZS1jb2xvcik7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAwIDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgICAgIGJvdHRvbTogODBweDtcclxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDM3JTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xyXG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICByaWdodDogMzBweDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMjMlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZm9vdGVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNvZnQtZ3JhZGllbnQpO1xyXG5cclxuICAgIGg1LFxyXG4gICAgLmxvZ28tbGluayBzcGFuIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItOTAwKTtcclxuICAgIH1cclxuXHJcbiAgICBhLFxyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZC10ZXh0LWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICAuZm9vdGVyLWJvdHRvbSB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItOTAwKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLTQwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci05MDApO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHVsIHtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNvbmQtdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGFjaGlldmVtZW50c1xyXG4uYWNoaWV2ZW1lbnRzIHtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fbWFyZ2luO1xyXG4gICAgcGFkZGluZzogMjBweCAzMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLTQwMCk7XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKioqKioqKioqKipzdmctaWNvbi1Db2xvcioqKioqKioqKi9cclxuLnN0MCB7XHJcbiAgICBmaWxsOiB2YXIoLS1zdmctY29sb3IpO1xyXG59XHJcblxyXG4uc3QxIHtcclxuICAgIGZpbGw6IHVybCgjY3JwX3N2Zyk7XHJcbn1cclxuXHJcbi5zdDIge1xyXG4gICAgc3RvcC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbn1cclxuXHJcbi5zdDMge1xyXG4gICAgc3RvcC1jb2xvcjogdmFyKC0tY2hhcnQtY29sb3I0KTtcclxufVxyXG5cclxuLnN0NCB7XHJcbiAgICBmaWxsOiB2YXIoLS1jb2xvci0wMDApO1xyXG59XHJcblxyXG4vLyAuc3Q0e2ZpbGw6Izc3N2Q5MTt9XHJcblxyXG4uaWNvbl9ib3gge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDQ1cHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiA5OTtcclxuICAgIH1cclxuXHJcbiAgICAuaWNvbl9vdmVybGF5IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogLTEwcHg7XHJcbiAgICAgICAgdG9wOiAtMTBweDtcclxuICAgICAgICB6LWluZGV4OiA5O1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogc3BpbiAxMHMgbGluZWFyIGluZmluaXRlO1xyXG4gICAgICAgICAgICAtbW96LWFuaW1hdGlvbjogc3BpbiAxMHMgbGluZWFyIGluZmluaXRlO1xyXG4gICAgICAgICAgICBhbmltYXRpb246IHNwaW4gMTBzIGxpbmVhciBpbmZpbml0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc3BpbiB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKSBza2V3WSgwZGVnKSB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVkoLTEwcHgpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpIHNrZXdZKDBkZWcpIHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWSgtMTBweCk7XHJcbiAgICB9XHJcblxyXG4gICAgNTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDEuMykgc2tld1koLTIwZGVnKSB0cmFuc2xhdGVYKDI1cHgpXHJcbiAgICAgICAgICAgIHRyYW5zbGF0ZVkoMTVweCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMS4zKSBza2V3WSgtMjBkZWcpIHRyYW5zbGF0ZVgoMjVweCkgdHJhbnNsYXRlWSgxNXB4KTtcclxuICAgIH1cclxuXHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKSBza2V3WSgwZGVnKSB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVkoLTEwcHgpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpIHNrZXdZKDBkZWcpIHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWSgtMTBweCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wc3ctNSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDV2dztcclxufVxyXG5cclxuLnRlYW0tYmxvY2sge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYm9yZGVyOiAxMHB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICBoZWlnaHQ6IDQwMHB4O1xyXG5cclxuICAgIC52ci10ZXh0IHtcclxuICAgICAgICB3cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsO1xyXG4gICAgICAgIHRleHQtb3JpZW50YXRpb246IHVwcmlnaHQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jb3VudGVyLWxpc3Qge1xyXG4gICAgLmNvdW50ZXItdGl0bGUge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL2JnLWVmZmVjdC9zZXJ2aWNlLWNhcmQtYmcuc3ZnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICBwYWRkaW5nOiAyNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBPZmZlclxyXG4ub2ZmZXItc2VjdGlvbiB7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSA1MHB4KTtcclxuICAgIG1hcmdpbjogMTAwcHggYXV0byAyMDBweCBhdXRvO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgIHBhZGRpbmc6IDkwcHggMHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1zZWNvbmRhcnktcmdiKSwgMC4xNSk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgLm9mZmVyLXRpdGxlIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItOTAwKTtcclxuICAgIH1cclxuXHJcbiAgICAub2ZmZXItdGFnIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAxNXB4O1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMjhweDtcclxuICAgICAgICAgICAgZmlsdGVyOiBkcm9wLXNoYWRvdygwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItNzAwKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAub2ZmZXItaW1nLXBhcmVudCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogLTU1JTtcclxuICAgICAgICByaWdodDogMjBweDtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWN0LWltZyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzOTlweCkge1xyXG4gICAgICAgIC5vZmZlci1pbWctcGFyZW50IHtcclxuICAgICAgICAgICAgdG9wOiAtNTUlO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDMwcHgpO1xyXG4gICAgICAgIG1hcmdpbjogMTIwcHggYXV0byAxODFweCBhdXRvO1xyXG5cclxuICAgICAgICAub2ZmZXItaW1nLXBhcmVudCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucHJvZHVjdC1pbWcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICBtYXJnaW46IDgwcHggYXV0byAxODFweCBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHggMDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICBtYXJnaW46IDYwcHggYXV0byA1MHB4IGF1dG87XHJcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHggMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwdnc7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgNTBweCAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2VydmljZS1sYXllciB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAtNTAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICBtYXJnaW4tbGVmdDogMTAwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zb2Z0LWdyYWRpZW50KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDBweCAyMHB4IDIwcHggMHB4O1xyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIH1cclxufVxyXG5cclxuLnNlcnZpY2UtY2lyY2xlIHtcclxuICAgIHdpZHRoOiA4MHB4O1xyXG4gICAgaGVpZ2h0OiA4MHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmljb24tYmxvY2sge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDE1JTtcclxuICAgIGJvdHRvbTogLTI1JTtcclxuICAgIHdpZHRoOiAyNTBweDtcclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jaG9vc2UtdXMge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC5jaG9vc2UtdXMtaW1nIHtcclxuICAgICAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgLy8gbGVmdDogLTY1cHg7XHJcbiAgICAgICAgLy8gYm90dG9tOiAtMTUwcHg7XHJcbiAgICAgICAgLy8gd2lkdGg6IDYwJTtcclxuICAgICAgICBoZWlnaHQ6IDEyMCU7XHJcbiAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogcm90YXRlLWNlbnRlciAxMDBzIGxpbmVhciBpbmZpbml0ZSBib3RoO1xyXG4gICAgICAgIGFuaW1hdGlvbjogcm90YXRlLWNlbnRlciAxMDBzIGxpbmVhciBpbmZpbml0ZSBib3RoO1xyXG5cclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgICAgICAgICBhbmltYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNob29zZS11cy1icmFuZHMge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAvLyB3aWR0aDogNTAlO1xyXG4gICAgICAgIC1vLW9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogc2xpZGVfdXBfZG93biAycyBlYXNlLWluLW91dCBpbmZpbml0ZSBhbHRlcm5hdGUgYm90aDtcclxuICAgICAgICBhbmltYXRpb246IHNsaWRlX3VwX2Rvd24gMnMgZWFzZS1pbi1vdXQgaW5maW5pdGUgYWx0ZXJuYXRlIGJvdGg7XHJcbiAgICAgICAgei1pbmRleDogNTtcclxuICAgIH1cclxuXHJcbiAgICAuY2hvb3NlLXVzLWJ1YmJsZXMge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAvLyB3aWR0aDogNDUlO1xyXG4gICAgICAgIC1vLW9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogc2xpZGVfdXBfZG93biAycyBlYXNlLWluLW91dCBpbmZpbml0ZSBhbHRlcm5hdGUgYm90aDtcclxuICAgICAgICBhbmltYXRpb246IHNsaWRlX3VwX2Rvd24gMnMgZWFzZS1pbi1vdXQgaW5maW5pdGUgYWx0ZXJuYXRlIGJvdGg7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDFzO1xyXG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMXM7XHJcbiAgICAgICAgei1pbmRleDogMztcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jb250YWN0X2dsb2JlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGhlaWdodDogMTUwJTtcclxuICAgIG1heC1oZWlnaHQ6IG5vbmU7XHJcbiAgICB3aWR0aDogNjAlO1xyXG4gICAgdG9wOiAtMjUlO1xyXG4gICAgbGVmdDogMjAlO1xyXG4gICAgb3BhY2l0eTogMC4xNTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uOiByb3RhdGUtY2VudGVyIDEwMHMgbGluZWFyIGluZmluaXRlIGJvdGg7XHJcbiAgICBhbmltYXRpb246IHJvdGF0ZS1jZW50ZXIgMTAwcyBsaW5lYXIgaW5maW5pdGUgYm90aDtcclxuICAgIHotaW5kZXg6IC0xO1xyXG59XHJcblxyXG4ucm93LWRlY2sge1xyXG4gICAgPiAuY29sLFxyXG4gICAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuXHJcbiAgICAgICAgLmNhcmQge1xyXG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ib3JkZXItZ3JhZGllbnQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgei1pbmRleDogNztcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGluc2V0OiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDJweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgICAgOTUuMjhkZWcsXHJcbiAgICAgICAgICAgIHJnYmEodmFyKC0tc2Vjb25kYXJ5LXJnYiksIDAuOSksXHJcbiAgICAgICAgICAgIHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjkpXHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgLXdlYmtpdC1tYXNrOlxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApIGNvbnRlbnQtYm94LFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApO1xyXG4gICAgICAgIC13ZWJraXQtbWFzay1jb21wb3NpdGU6IHhvcjtcclxuICAgICAgICBtYXNrLWNvbXBvc2l0ZTogZXhjbHVkZTtcclxuICAgIH1cclxufVxyXG5cclxuLmJvcmRlci1ncmFkaWVudC1kYXNoZWQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgei1pbmRleDogNztcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGluc2V0OiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDJweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xyXG5cclxuICAgICAgICAvKiBzb2xpZCBncmFkaWVudCBmb3Igc2lkZXMgKi9cclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAgIDk1LjI4ZGVnLFxyXG4gICAgICAgICAgICByZ2JhKHZhcigtLXNlY29uZGFyeS1yZ2IpLCAwLjkpLFxyXG4gICAgICAgICAgICByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC45KVxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIC13ZWJraXQtbWFzazpcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KCNmZmYgMCAwKSBjb250ZW50LWJveCxcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KCNmZmYgMCAwKTtcclxuICAgICAgICAtd2Via2l0LW1hc2stY29tcG9zaXRlOiB4b3I7XHJcbiAgICAgICAgbWFzay1jb21wb3NpdGU6IGV4Y2x1ZGU7XHJcbiAgICB9XHJcblxyXG4gICAgLyogZGFzaGVkIHRvcCBib3JkZXIgKi9cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMTJweDtcclxuICAgICAgICByaWdodDogMTJweDtcclxuICAgICAgICBoZWlnaHQ6IDJweDtcclxuXHJcbiAgICAgICAgYmFja2dyb3VuZDogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgICAgdG8gcmlnaHQsXHJcbiAgICAgICAgICAgIHJnYmEodmFyKC0tc2Vjb25kYXJ5LXJnYiksIDAuOSkgMCAxMHB4LFxyXG4gICAgICAgICAgICB0cmFuc3BhcmVudCAxMHB4IDE4cHhcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLy8vL1Byb2R1Y3QvLy8vXHJcbi5wcm9kdWN0LWNhcmQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLW9wdGlvbi1jb2xvcjcpO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAucHJvZHVjdC1pbWcge1xyXG4gICAgICAgIHRyYW5zaXRpb246IGVhc2UtaW4tb3V0IDAuMnMgYWxsO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0b3A6IDA7XHJcblxyXG4gICAgICAgIC5idG4taG92ZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGVhc2UtaW4tb3V0IDAuMnMgYWxsO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBlYXNlLWluLW91dCAwLjJzIGFsbDtcclxuICAgICAgICAgICAgdG9wOiAtMTVweDtcclxuXHJcbiAgICAgICAgICAgIC5idG4taG92ZXIge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMTdweDtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBlYXNlLWluLW91dCAwLjJzIGFsbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnBlcnZpZXctYmxvY2sge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDExJTtcclxuICAgIGJvdHRvbTogLTEyJTtcclxuICAgIHdpZHRoOiAyNTBweDtcclxufVxyXG5cclxuLmFjY29yZGlvbi1pdGVtIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDdweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XHJcblxyXG4gICAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcclxuICAgIH1cclxufVxyXG5cclxuLnBsYW5zIHtcclxuICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDhweCAxMHB4IDBweCAjZDhkZmViO1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDhweCAxMHB4IDBweCAjZDhkZmViO1xyXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcclxuICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgLW1zLWZsZXgtd3JhcDogd3JhcDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAucGxhbiB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuXHJcbiAgICAgICAgICAgICY6Y2hlY2tlZCB7XHJcbiAgICAgICAgICAgICAgICArIHtcclxuICAgICAgICAgICAgICAgICAgICAucGxhbi1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZWJlODtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBlYXNlLWluIDAuM3M7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IGVhc2UtaW4gMC4zcztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogZWFzZS1pbiAwLjNzO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLnByaWNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnBsYW4tY29udGVudCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweDtcclxuICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZTFlMmU3O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtYm94LXNoYWRvdyAwLjRzO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAtd2Via2l0LWJveC1zaGFkb3cgMC40cztcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjRzO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNHM7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93IDAuNHMsXHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3cgMC40cztcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNzJweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnByaWNlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAzcHggNXB4IDBweCAjZThlOGU4O1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDNweCA1cHggMHB4ICNlOGU4ZTg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5wbGFuLWRldGFpbHMge1xyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzI1MmY0MjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzY0NmE3OTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY3RhLWJsb2NrIHtcclxuICAgIHBhZGRpbmc6IDEwMHB4IDBweDtcclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDUwcHggMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogNTBweCAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5oMSB7XHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgIC5wbGFucyB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDIwcHg7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcclxuICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHg7XHJcblxyXG4gICAgICAgIC5wbGFuIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICAucGxhbi1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIC5wbGFuLWRldGFpbHMge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xyXG4gICAgICAgICAgICAgICAgJjpjaGVja2VkIHtcclxuICAgICAgICAgICAgICAgICAgICArIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnBsYW4tY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDQ1JTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucGxhbi5jb21wbGV0ZS1wbGFuIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgLnBsYW5zIHtcclxuICAgICAgICAucGxhbiB7XHJcbiAgICAgICAgICAgIC5wbGFuLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgLnBsYW4tZGV0YWlscyB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU0MHB4KSB7XHJcbiAgICAucGxhbnMge1xyXG4gICAgICAgIC5wbGFuIHtcclxuICAgICAgICAgICAgLnBsYW4tY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1NnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogaGVpZ2h0IDAuNHM7XHJcbiAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogaGVpZ2h0IDAuNHM7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNHM7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLnBsYW4tZGV0YWlscyB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBiYXNlbGluZTtcclxuICAgICAgICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBiYXNlbGluZTtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcclxuICAgICAgICAgICAgICAgICY6Y2hlY2tlZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgKyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5wbGFuLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jaGstaW1nIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gICAgbGVmdDogMTVweDtcclxuICAgIHRvcDogMHB4O1xyXG59XHJcblxyXG4vLy9pZnJhbWUvLy8vXHJcblxyXG4uYXR0cmlidXRpb24ge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vL215LXByb2ZpbGVcclxuLy8gaW1nIHVwbG9hZFxyXG4uZmlsZS1pbnB1dCB7XHJcbiAgICBpbnB1dCB7XHJcbiAgICAgICAgd2lkdGg6IDAuMXB4O1xyXG4gICAgICAgIGhlaWdodDogMC4xcHg7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgIH1cclxuXHJcbiAgICBsYWJlbDpob3ZlciB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgIH1cclxufVxyXG5cclxuLmltYWdlLWlucHV0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cclxuICAgIC5hdmF0YXItd3JhcHBlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgICYuYXZhdGFyIHtcclxuICAgICAgICAmLnh4bCB7XHJcbiAgICAgICAgICAgIC5maWxlLWlucHV0IHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnhsIHtcclxuICAgICAgICAgICAgLmZpbGUtaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgICAgICByaWdodDogNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmxnIHtcclxuICAgICAgICAgICAgLmZpbGUtaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiAtNXB4O1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IC01cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZpbGUtaW5wdXQge1xyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc29mdC1ncmFkaWVudCk7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMjRweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYXZhdGFyIHtcclxuICAgICYueHhsIHtcclxuICAgICAgICB3aWR0aDogMTIwcHg7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxMjBweDtcclxuICAgICAgICBoZWlnaHQ6IDEyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uaGVhZGVyLXVzZXItcHJvZmlsZSB7XHJcbiAgICAudXNlci1pbWcge1xyXG4gICAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wdy1tZW51IHtcclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5saW5lLXN2Zy1hbmltYXRpb24ge1xyXG4gICAgZyAqIHtcclxuICAgICAgICBzdHJva2U6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgIHN0cm9rZS13aWR0aDogMjtcclxuICAgIH1cclxuXHJcbiAgICAuY29udHJvbHMge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ibG9ja2NoYWluLXdvcmtpbmcge1xyXG4gICAgaW1nIHtcclxuICAgICAgICAtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XHJcbiAgICAgICAgLW1zLWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xyXG4gICAgICAgIC1vLWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xyXG4gICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xyXG4gICAgfVxyXG5cclxuICAgIC5vcHRpb24tY29sb3IzIHtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIGZpbHRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pbnF1aXJ5LWNhcmQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICBwYWRkaW5nOiAzNXB4IDMwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiA1O1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDRweCAxMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDI1cHggMjBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5pbnF1aXJ5LWNhcmQtYm9keSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGdhcDogMTZweDtcclxuXHJcbiAgICAgICAgZm9ybSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICBnYXA6IDE2cHg7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICAgICAgICAgIGdhcDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgICAgIGdhcDogMTBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIGdhcDogMTBweDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDdweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItMDAwKTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsJTNDc3ZnJTIwd2lkdGglM0QlMjI2JTIyJTIwaGVpZ2h0JTNEJTIyMTElMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjA2JTIwMTElMjIlMjBmaWxsJTNEJTIybm9uZSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMC4yNTE5MDklMjAwLjI1MTkwOEMwLjQxOTg0OCUyMDAuMDgzOTY5MSUyMDAuNjMzNTg4JTIwMCUyMDAuODkzMTMlMjAwQzEuMTUyNjclMjAwJTIwMS4zNjY0MSUyMDAuMDgzOTY5MSUyMDEuNTM0MzUlMjAwLjI1MTkwOEw1Ljc0ODA5JTIwNC40NjU2NUM1LjgzOTclMjA0LjU1NzI1JTIwNS45MDQ0MyUyMDQuNjU2NDklMjA1Ljk0MjI5JTIwNC43NjMzNkM1Ljk4MDE1JTIwNC44NzAyMyUyMDUuOTk5MzklMjA0Ljk4NDczJTIwNiUyMDUuMTA2ODdDNiUyMDUuMjI5MDElMjA1Ljk3NzElMjA1LjM0NzQ4JTIwNS45MzEzJTIwNS40NjIyOUM1Ljg4NTUlMjA1LjU3NzElMjA1LjgyNDQzJTIwNS42NzIzNyUyMDUuNzQ4MDklMjA1Ljc0ODA5TDEuNTM0MzUlMjA5Ljk2MTgzQzEuMzY2NDElMjAxMC4xMjk4JTIwMS4xNTI2NyUyMDEwLjIxMzclMjAwLjg5MzEzJTIwMTAuMjEzN0MwLjYzMzU4OCUyMDEwLjIxMzclMjAwLjQxOTg0OCUyMDEwLjEyOTglMjAwLjI1MTkwOSUyMDkuOTYxODNDMC4wODM5Njk5JTIwOS43OTM4OSUyMC0xLjIxMDc1ZS0wNyUyMDkuNTgwMTUlMjAtMS4yMTA3NWUtMDclMjA5LjMyMDYxQy0xLjIxMDc1ZS0wNyUyMDkuMDYxMDclMjAwLjA4Mzk2OTklMjA4Ljg0NzMzJTIwMC4yNTE5MDklMjA4LjY3OTM5TDMuODI0NDMlMjA1LjEwNjg3TDAuMjUxOTA5JTIwMS41MzQzNUMwLjA4Mzk2OTklMjAxLjM2NjQxJTIwLTEuMjEwNzVlLTA3JTIwMS4xNTI2NyUyMC0xLjIxMDc1ZS0wNyUyMDAuODkzMTNDLTEuMjEwNzVlLTA3JTIwMC42MzM1ODglMjAwLjA4Mzk2OTklMjAwLjQxOTg0NyUyMDAuMjUxOTA5JTIwMC4yNTE5MDhaJTIyJTIwZmlsbCUzRCUyMmJsYWNrJTIyJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyNiUyMiUyMGhlaWdodCUzRCUyMjExJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwNiUyMDExJTIyJTIwZmlsbCUzRCUyMm5vbmUlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTAuMjUxOTA5JTIwMC4yNTE5MDhDMC40MTk4NDglMjAwLjA4Mzk2OTElMjAwLjYzMzU4OCUyMDAlMjAwLjg5MzEzJTIwMEMxLjE1MjY3JTIwMCUyMDEuMzY2NDElMjAwLjA4Mzk2OTElMjAxLjUzNDM1JTIwMC4yNTE5MDhMNS43NDgwOSUyMDQuNDY1NjVDNS44Mzk3JTIwNC41NTcyNSUyMDUuOTA0NDMlMjA0LjY1NjQ5JTIwNS45NDIyOSUyMDQuNzYzMzZDNS45ODAxNSUyMDQuODcwMjMlMjA1Ljk5OTM5JTIwNC45ODQ3MyUyMDYlMjA1LjEwNjg3QzYlMjA1LjIyOTAxJTIwNS45NzcxJTIwNS4zNDc0OCUyMDUuOTMxMyUyMDUuNDYyMjlDNS44ODU1JTIwNS41NzcxJTIwNS44MjQ0MyUyMDUuNjcyMzclMjA1Ljc0ODA5JTIwNS43NDgwOUwxLjUzNDM1JTIwOS45NjE4M0MxLjM2NjQxJTIwMTAuMTI5OCUyMDEuMTUyNjclMjAxMC4yMTM3JTIwMC44OTMxMyUyMDEwLjIxMzdDMC42MzM1ODglMjAxMC4yMTM3JTIwMC40MTk4NDglMjAxMC4xMjk4JTIwMC4yNTE5MDklMjA5Ljk2MTgzQzAuMDgzOTY5OSUyMDkuNzkzODklMjAtMS4yMTA3NWUtMDclMjA5LjU4MDE1JTIwLTEuMjEwNzVlLTA3JTIwOS4zMjA2MUMtMS4yMTA3NWUtMDclMjA5LjA2MTA3JTIwMC4wODM5Njk5JTIwOC44NDczMyUyMDAuMjUxOTA5JTIwOC42NzkzOUwzLjgyNDQzJTIwNS4xMDY4N0wwLjI1MTkwOSUyMDEuNTM0MzVDMC4wODM5Njk5JTIwMS4zNjY0MSUyMC0xLjIxMDc1ZS0wNyUyMDEuMTUyNjclMjAtMS4yMTA3NWUtMDclMjAwLjg5MzEzQy0xLjIxMDc1ZS0wNyUyMDAuNjMzNTg4JTIwMC4wODM5Njk5JTIwMC40MTk4NDclMjAwLjI1MTkwOSUyMDAuMjUxOTA4WiUyMiUyMGZpbGwlM0QlMjJibGFjayUyMiUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcclxuICAgICAgICAgICAgICAgICAgICBtYXNrLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTElO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mOGY4ZjgpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRuLXBpeGVsIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEzcHggMzBweDtcclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi50aGVtZS0yIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYWRpZW50LWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmluZHVzdHJ5LWJsb2NrIHtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fcGFkZGluZztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDU7XHJcblxyXG4gICAgLmluZHVzdHJ5LWJsb2NrLWJveCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9iZy1lZmZlY3Qvc2VydmljZS1jYXJkLWJnLnN2Zyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAwcHg7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuXHJcbiAgICAgICAgaDUge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgd2lkdGg6IDExMDBweDtcclxuICAgICAgICBoZWlnaHQ6IDg4OHB4O1xyXG4gICAgICAgIHRvcDogLTM1MHB4O1xyXG4gICAgICAgIGxlZnQ6IC0zOTdweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoXHJcbiAgICAgICAgICAgIDUwJSA1MCUgYXQgNTAlIDUwJSxcclxuICAgICAgICAgICAgcmdiYSg3OCwgODQsIDE2NSwgMSkgMCUsXHJcbiAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgb3BhY2l0eTogMC4yO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4NzVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA4ODhweDtcclxuICAgICAgICAgICAgdG9wOiAyOHB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAtMjAxcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDUwMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwMHB4O1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IC0yMDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICB3aWR0aDogODc1cHg7XHJcbiAgICAgICAgaGVpZ2h0OiA4ODhweDtcclxuICAgICAgICBib3R0b206IC0zMDBweDtcclxuICAgICAgICByaWdodDogLTM0OXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcclxuICAgICAgICAgICAgNTAlIDUwJSBhdCA1MCUgNTAlLFxyXG4gICAgICAgICAgICByZ2JhKDI0MSwgMzQsIDg2LCAwLjkxMSkgMCUsXHJcbiAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgb3BhY2l0eTogMC4xNTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogODc1cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogODg4cHg7XHJcbiAgICAgICAgICAgIHRvcDogLTQ4cHg7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAtMjcycHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KFxyXG4gICAgICAgICAgICAgICAgNTAlIDUwJSBhdCA1MCUgNTAlLFxyXG4gICAgICAgICAgICAgICAgcmdiKDI0MSAzNCA4NiAvIDc5JSkgMCUsXHJcbiAgICAgICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCVcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgd2lkdGg6IDUwMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwMHB4O1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4udG9wLTEwMHB4IHtcclxuICAgIHRvcDogMTAwcHg7XHJcbn1cclxuXHJcbi5tYi1pbnF1aXJlIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMTQwcHg7XHJcbiAgICByaWdodDogLTEwNnB4O1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xyXG4gICAgei1pbmRleDogMTtcclxuXHJcbiAgICAuaW5xdWlyZS1idG4ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNvZnQtZ3JhZGllbnQpO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHggMCAwIDIwcHg7XHJcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggMTVweDtcclxuICAgICAgICB3aWR0aDogMTUwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgcmlnaHQ6IC0xcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEdsb2JhbCBVdGlsaXRpZXMgKi9cclxuLnB5LTEwMCB7XHJcbiAgICBwYWRkaW5nLXRvcDogMTAwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDYwcHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mb250LWhlYWRpbmcge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXRpdGxlLWZvbnQtZnJhdW5jZXMpLCBzZXJpZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udGl0bGUtYWNjZW50IHtcclxuICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgaGVpZ2h0OiA0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcclxufVxyXG5cclxuLnNlY3Rpb24tcGFkZGluZyB7XHJcbiAgICBAaW5jbHVkZSBzZWN0aW9uX3BhZGRpbmc7XHJcbn1cclxuXHJcbi5zZWN0aW9uLW1hcmdpbiB7XHJcbiAgICBAaW5jbHVkZSBzZWN0aW9uX21hcmdpbjtcclxufVxyXG5cclxuLyoqKioqKioqKioqKiBMZWdhbCAmIFBvbGljeSBQYWdlcyAqKioqKioqKioqKi9cclxuLmxlZ2FsLXNlY3Rpb24ge1xyXG4gICAgcGFkZGluZy10b3A6IDUwcHg7XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDBweDtcclxuICAgIH1cclxuXHJcbiAgICAubGVnYWwtY2FyZCB7XHJcbiAgICAgICAgLmNvbnRlbnQtdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5sZWdhbC1saXN0IHtcclxuICAgICAgICBjb3VudGVyLXJlc2V0OiBsZWdhbC1jb3VudGVyO1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBsZWdhbC1jb3VudGVyO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNzBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMi44O1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuOTtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogY291bnRlcihsZWdhbC1jb3VudGVyKTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDRweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0NHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0NHB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItMTAwKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDg1MDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTVkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5tb3JlLWluZm8tYmxvY2sge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oZXJvLXZpc3VhbCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWluLWhlaWdodDogNDgwcHg7XHJcbiAgICBwZXJzcGVjdGl2ZTogMTAwMHB4O1xyXG5cclxuICAgIC5raW5ldGljLXdyYXBwZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xyXG4gICAgfVxyXG5cclxuICAgIC5vcmJpdC1yaW5nIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xyXG5cclxuICAgICAgICAmLnJpbmctMSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0NTBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0NTBweDtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS1zZWNvbmRhcnktcmdiKSwgMC4xNSk7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbjogcHVsc2UtcmluZyA4cyBlYXNlLWluLW91dCBpbmZpbml0ZTtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5yaW5nLTIge1xyXG4gICAgICAgICAgICB3aWR0aDogMzIwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzIwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjE1KTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uOiBwdWxzZS1yaW5nIDZzIGVhc2UtaW4tb3V0IGluZmluaXRlIHJldmVyc2U7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyMjBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMjIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYucmluZy0zIHtcclxuICAgICAgICAgICAgd2lkdGg6IDU1MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDU1MHB4O1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgcmdiYSh2YXIoLS1zZWNvbmRhcnktcmdiKSwgMC4xKTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uOiByb3RhdGUtc2xvdyAyMHMgbGluZWFyIGluZmluaXRlO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzgwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM4MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mbG9hdGluZy1zaGFwZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB6LWluZGV4OiAxMDtcclxuICAgICAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDAgMTBweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4xKSk7XHJcblxyXG4gICAgICAgICYuc2hhcGUtY2lyY2xlIHtcclxuICAgICAgICAgICAgd2lkdGg6IDI4cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjhweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgICAgICAgICAgMTM1ZGVnLFxyXG4gICAgICAgICAgICAgICAgdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKSxcclxuICAgICAgICAgICAgICAgIGRhcmtlbigjMWExYTFhLCA1JSlcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICBtYXJnaW46IC0xNHB4IDAgMCAtMTRweDtcclxuICAgICAgICAgICAgLS1vcmJpdC1yYWRpdXM6IDE2MHB4O1xyXG4gICAgICAgICAgICBhbmltYXRpb246IG9yYml0IDE0cyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNoYXBlLXNxdWFyZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgICAgICAgIDEzNWRlZyxcclxuICAgICAgICAgICAgICAgIHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjkpLFxyXG4gICAgICAgICAgICAgICAgcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMDUpXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig1cHgpO1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4zKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAtMjBweCAwIDAgLTIwcHg7XHJcbiAgICAgICAgICAgIC0tb3JiaXQtcmFkaXVzOiAyMzBweDtcclxuICAgICAgICAgICAgYW5pbWF0aW9uOiBvcmJpdC1yZXYgMjBzIGxpbmVhciBpbmZpbml0ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuc2hhcGUtdHJpYW5nbGUge1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMTVweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAyNnB4IHNvbGlkIHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogLTEzcHggMCAwIC0xNXB4O1xyXG4gICAgICAgICAgICAtLW9yYml0LXJhZGl1czogMTkwcHg7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbjogb3JiaXQgMThzIGxpbmVhciBpbmZpbml0ZSByZXZlcnNlOyAvLyBSZXZlcnNlIGRpcmVjdGlvbiBvZiBzdGFuZGFyZCBvcmJpdFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAua2luZXRpYy1ib3gge1xyXG4gICAgICAgIHdpZHRoOiAyMjBweDtcclxuICAgICAgICBoZWlnaHQ6IDIyMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgYW5pbWF0aW9uOiBib3gtaG92ZXIgNnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcbiAgICAgICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuXHJcbiAgICAgICAgLmdsYXNzLWxheWVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBpbnNldDogMDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNDBweDtcclxuICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDE2cHgpO1xyXG4gICAgICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxNnB4KTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAyNXB4IDUwcHggcmdiYSh2YXIoLS1zZWNvbmRhcnktcmdiKSwgMC4xNSk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5sYXllci0xIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgICAgICAgICAgMTM1ZGVnLFxyXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpLFxyXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigyMHB4KSByb3RhdGUoMTJkZWcpO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmxheWVyLTIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAgICAgICAxMzVkZWcsXHJcbiAgICAgICAgICAgICAgICByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4yKSxcclxuICAgICAgICAgICAgICAgIHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjA1KVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMTBweCkgcm90YXRlKC04ZGVnKSBzY2FsZSgwLjk1KTtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5sZXR0ZXJzIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA5MHB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWig0MHB4KTtcclxuXHJcbiAgICAgICAgICAgIC5sZXR0ZXItcCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgkY29sb3I6IHZhcigtLXNlY29uZGFyeS1yZ2IpLCAkYWxwaGE6IDEpO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgICAgIHRleHQtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKHZhcigtLXNlY29uZGFyeS1yZ2IpLCAwLjIpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAubGV0dGVyLXcge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGNvbG9yOiB2YXIoLS1wcmltYXJ5LXJnYiksICRhbHBoYTogMSk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTI4cHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGJveC1ob3ZlciB7XHJcbiAgICAwJSxcclxuICAgIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSByb3RhdGVYKDApIHJvdGF0ZVkoMCk7XHJcbiAgICB9XHJcblxyXG4gICAgNTAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpIHJvdGF0ZVgoMmRlZykgcm90YXRlWSgtMmRlZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgb3JiaXQge1xyXG4gICAgMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpIHRyYW5zbGF0ZVgodmFyKC0tb3JiaXQtcmFkaXVzKSkgcm90YXRlKDBkZWcpO1xyXG4gICAgfVxyXG5cclxuICAgIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZykgdHJhbnNsYXRlWCh2YXIoLS1vcmJpdC1yYWRpdXMpKVxyXG4gICAgICAgICAgICByb3RhdGUoLTM2MGRlZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgb3JiaXQtcmV2IHtcclxuICAgIDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIHRyYW5zbGF0ZVgodmFyKC0tb3JiaXQtcmFkaXVzKSlcclxuICAgICAgICAgICAgcm90YXRlKC0zNjBkZWcpO1xyXG4gICAgfVxyXG5cclxuICAgIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpIHRyYW5zbGF0ZVgodmFyKC0tb3JiaXQtcmFkaXVzKSkgcm90YXRlKDBkZWcpO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHB1bHNlLXJpbmcge1xyXG4gICAgMCUsXHJcbiAgICAxMDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG5cclxuICAgIDUwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4wNSk7XHJcbiAgICAgICAgb3BhY2l0eTogMC44O1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJvdGF0ZS1zbG93IHtcclxuICAgIDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMGRlZyk7XHJcbiAgICB9XHJcblxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDM2MGRlZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcHVsc2UtZ3JlZW4ge1xyXG4gICAgMCUge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSg0NiwgMjA0LCAxMTMsIDAuNCk7XHJcbiAgICB9XHJcblxyXG4gICAgNzAlIHtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA2cHggcmdiYSg0NiwgMjA0LCAxMTMsIDApO1xyXG4gICAgfVxyXG5cclxuICAgIDEwMCUge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSg0NiwgMjA0LCAxMTMsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4kZmFxLXRyYW5zaXRpb246IDAuNXMgZWFzZTtcclxuJGZhcS1tYXgtaGVpZ2h0OiA1MDBweDtcclxuXHJcbi5ob21lLWZhcS1zZWN0aW9uIHtcclxuICAgIC5ob21lLWZhcS1oaWRkZW4ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDA7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICAuaG9tZS1mYXEtdmlzaWJsZSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgbWF4LWhlaWdodDogJGZhcS1tYXgtaGVpZ2h0O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAkZmFxLXRyYW5zaXRpb247XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuIiwiKiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLy8gYm9vdHN0cmFwIGNsYXNzIG92ZXJ3cml0ZSBjc3Ncbi5ib3JkZXIsXG4uYm9yZGVyLXRvcCxcbi5ib3JkZXItcmlnaHQsXG4uYm9yZGVyLWVuZCxcbi5ib3JkZXItYm90dG9tLFxuLmJvcmRlci1sZWZ0LFxuLmJvcmRlci1zdGFydCxcbi5kcm9wZG93bi1kaXZpZGVyLFxuLmlucHV0LWdyb3VwLXRleHQge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yKSAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyIHtcbiAgICAmLmJvcmRlci1wcmltYXJ5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYuYm9yZGVyLXNlY29uZGFyeSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYuYm9yZGVyLXN1Y2Nlc3Mge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1zdWNjZXNzICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5ib3JkZXItZGFuZ2VyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItZGFuZ2VyICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5ib3JkZXItd2FybmluZyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXdhcm5pbmcgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLmJvcmRlci1pbmZvIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaW5mbyAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYuYm9yZGVyLWRhcmsge1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLTkwMCkgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLmJvcmRlci13aGl0ZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZmZmKSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLmNvbnRhaW5lci14eGwge1xuICAgIG1heC13aWR0aDogMTU2MHB4O1xufVxuXG4uZm9udC13ZWlnaHQtYm9sZCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi50YWJsZSA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XG4gICAgcGFkZGluZzogMC44cmVtIDAuOHJlbTtcbn1cblxuLnppbmRleC1maXhlZCB7XG4gICAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnppbmRleC1wb3BvdmVyIHtcbiAgICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG59XG5cbi56aW5kZXgtbW9kYWwge1xuICAgIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG59XG5cbi5zbWFsbC14cyB7XG4gICAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG59XG5cbi8vIC5mb3JtLWNvbnRyb2xcbi8vIGZvcm0tY29udHJvbFxuLmZvcm0tY29udHJvbCxcbi5mb3JtLXNlbGVjdCB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLTkwMCk7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItNDAwKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgkZGFyaywgMC4xNSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICAgIH1cblxuICAgICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICAgICAgbWluLWhlaWdodDogY2FsYygxLjVlbSArIDEuOHJlbSArIDJweCk7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxufVxuXG4uYnRuLWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcbiAgICB9XG59XG5cbi8vIGJ1dHRvblxuLmJ0biB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcblxuICAgICYuZm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG5cbiAgICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgICAgJjpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcbiAgICB9XG5cbiAgICAmLmJ0bi1wcmltYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYnRuLW91dGxpbmUtcHJpbWFyeSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlLWNvbG9yKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3IpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlY29uZGFyeS1jb2xvcik7XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYnRuLW91dGxpbmUtc3VjY2VzcyB7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itc3VjY2VzcztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itc3VjY2VzcztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYnRuLW91dGxpbmUtZGFuZ2VyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1kYW5nZXI7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWRhbmdlcjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kYW5nZXI7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idG4tb3V0bGluZS1pbmZvIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1pbmZvO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1pbmZvO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWluZm87XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idG4tZGFyayB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XG4gICAgfVxuXG4gICAgJi5idG4tc2Vjb25kYXJ5IHtcbiAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlLWNvbG9yKTtcbiAgICB9XG5cbiAgICAmLmJ0bi1sZyB7XG4gICAgICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICAgIH1cbn1cblxuLkNvbW1hbi1idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgcGFkZGluZzogMTBweCA0OHB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHotaW5kZXg6IDU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYWRpZW50LWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmJvcmRlci1idG4ge1xuICAgICAgICBwYWRkaW5nOiAxNHB4IDQwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICAgICAgYm9yZGVyOiAxLjVweCBzb2xpZCB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5wcm9maWxlLW1lbnUge1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMTJweCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC4xMikgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDUpICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiAyMjBweDtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MjBweCkge1xuICAgICAgICBtaW4td2lkdGg6IGNhbGMoMTAwdncgLSAxMTNweCkgIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG4gICAgICAgIGxlZnQ6IDBweCAhaW1wb3J0YW50O1xuICAgICAgICByaWdodDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRvcDogNjBweCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6ICM0OTUwNTc7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxMnB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmM2Y1O1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnRleHQtZGFuZ2VyOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY1ZjU7XG4gICAgICAgICAgICBjb2xvcjogI2UwMzEzMTtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZTAzMTMxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLWRpdmlkZXIge1xuICAgICAgICBtYXJnaW46IDhweCAwO1xuICAgICAgICBvcGFjaXR5OiAwLjE7XG4gICAgfVxufVxuXG4vLyBDYXJ0IERyb3Bkb3duIEN1c3RvbSBTdHlsaW5nXG4uY2FydC1kcm9wZG93bi1idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cblxuICAgIC5jYXJ0LWJhZGdlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC01cHg7XG4gICAgICAgIHJpZ2h0OiAtNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICB9XG59XG5cbi5kcm9wZG93bi1tZW51LmNhcnQtbWVudSB7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IDE1cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjEyKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wNSkgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IDMwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgbWluLXdpZHRoOiBjYWxjKDEwMHZ3IC0gMTEzcHgpICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICAgICAgICBsZWZ0OiAwcHggIWltcG9ydGFudDtcbiAgICAgICAgcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xuICAgICAgICB0b3A6IDUwcHggIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IDI1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAgICAgbGVmdDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHJpZ2h0OiAwcHggIWltcG9ydGFudDtcbiAgICAgICAgdG9wOiA2MHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmNhcnQtaGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICB9XG5cbiAgICAuY2FydC1pdGVtcy1saXN0IHtcbiAgICAgICAgbWF4LWhlaWdodDogMzUwcHg7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcblxuICAgICAgICAvKiBDdXN0b20gU2Nyb2xsYmFyICovXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FydC1pdGVtIHtcbiAgICAgICAgcGFkZGluZzogMTJweCAyMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDE1cHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjhmOWZhO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuaXRlbS1pbWcge1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlZWU7XG4gICAgICAgIH1cblxuICAgICAgICAuaXRlbS1pbmZvIHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAuaXRlbS1uYW1lIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaXRlbS1tZXRhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG5cbiAgICAgICAgICAgICAgICAuaXRlbS1wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMWYzZjU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FydC1mb290ZXIge1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuXG4gICAgICAgIC52aWV3LWFsbC1idG4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBQcmVtaXVtIEFuaW1hdGlvbnNcbkBrZXlmcmFtZXMgcnViYmVyQmFuZCB7XG4gICAgZnJvbSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB9XG4gICAgMzAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpO1xuICAgIH1cbiAgICA0MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XG4gICAgfVxuICAgIDUwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcbiAgICB9XG4gICAgNjUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTUsIDEuMDUsIDEpO1xuICAgIH1cbiAgICA3NSUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMC45NSwgMSk7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICAgIH1cbn1cblxuLmFuaW1hdGVfX3J1YmJlckJhbmQge1xuICAgIGFuaW1hdGlvbjogcnViYmVyQmFuZCAwLjhzO1xufVxuXG4vLyBwYWdpbmF0aW9uXG4ucGFnZS1pdGVtIHtcbiAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBhZ2UtbGluayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNhcmQtY29sb3IpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vL0hlYWRpbmdcbmgxIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiB2YXIoLS10aXRsZS1jb2xvcik7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogNTBweDtcblxuICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG59XG5cbmgyIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiB2YXIoLS10aXRsZS1jb2xvcik7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogNDBweDtcblxuICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAzMXB4O1xuICAgIH1cbn1cblxuaDMge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6IHZhcigtLXRpdGxlLWNvbG9yKTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbn1cblxuaDQge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6IHZhcigtLXRpdGxlLWNvbG9yKTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbn1cblxuaDUge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6IHZhcigtLXRpdGxlLWNvbG9yKTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbn1cblxuaDYge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6IHZhcigtLXRpdGxlLWNvbG9yKTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbn1cblxuLmhlcm8tc2VjdGlvbiB7XG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDYge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItOTAwKSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLmJnLXdoaXRlLFxuLmJsYWNrLWNvbG9yLFxuLnRleHQtZGFyayB7XG4gICAgY29sb3I6IHZhcigtLXdoaXRlYmctdGV4dCkgIWltcG9ydGFudDtcbn1cblxuLm1vZGFsIHtcbiAgICB6LWluZGV4OiA5OTk5O1xufVxuXG4vKiBDaHJvbWUsIFNhZmFyaSwgRWRnZSwgT3BlcmEgKi9cbmlucHV0Ojotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuaW5wdXQ6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG59XG5cbi8qIEZpcmVmb3ggKi9cbmlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xufVxuIiwiLy9Gb250cyBGYW1pbHlcbiRmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiRmb250LW9wZW5zYW5zOiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuJGZvbnQtcXVpY2tzYW5kOiBcIlF1aWNrc2FuZFwiLCBzYW5zLXNlcmlmO1xuJGZvbnQtbnVuaXRvOiBcIk51bml0b1wiLCBzYW5zLXNlcmlmO1xuJGZvbnQtcmFsZXdheTogXCJSYWxld2F5XCIsIHNhbnMtc2VyaWY7XG4kZm9udC1wb3BwaW5zOiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcblxuLy8gQm9vdHN0cmFwIGNvbG9yc1xuJGNvbG9yLXN1Y2Nlc3M6ICM0ZGNhODg7XG4kY29sb3ItZGFuZ2VyOiAjZmM1YTY5O1xuJGNvbG9yLXdhcm5pbmc6ICNmZmJhMzM7XG4kY29sb3ItaW5mbzogIzRmYjhjOTtcblxuLy8gRm9udHNcbiRmb250LXNpemU6IDE0cHg7XG5cbiR0cmFkZXdpbmQ6ICM2YWFiOWMgIWRlZmF1bHQ7XG4kbW9uYWxpc2E6ICNmZjdiODkgIWRlZmF1bHQ7XG4kaW5kaWdvczogIzQ4NGM3ZiAhZGVmYXVsdDtcbiRwdXJwbGVzOiAjNDg0YzdmICFkZWZhdWx0O1xuJG9yYW5nZXM6ICNmOGI1MDAgIWRlZmF1bHQ7XG4keWVsbG93OiAjZmZiYTMzICFkZWZhdWx0O1xuJGdyZWVuczogIzdlYjkzZiAhZGVmYXVsdDtcbiRibHVlczogIzBkNmVmZCAhZGVmYXVsdDtcbiRibHVzaDogI2VkNTc4MiAhZGVmYXVsdDtcbiRjeWFuczogIzAwYmRhYSAhZGVmYXVsdDtcbiRyZWRzOiAjZmYxODQzICFkZWZhdWx0O1xuJGluZm86ICM0ZmI4YzkgIWRlZmF1bHQ7XG4kd2hpdGU6ICNmZmZmZmYgIWRlZmF1bHQ7XG4kZGFyazogIzE5MTgxOCAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9ycy1tYXBcbiRjX2NvbG9yczogKFxuICAgIFwidHJhZGV3aW5kXCI6ICR0cmFkZXdpbmQsXG4gICAgXCJtb25hbGlzYVwiOiAkbW9uYWxpc2EsXG4gICAgXCJibHVlXCI6ICRibHVlcyxcbiAgICBcImJsdXNoXCI6ICRibHVzaCxcbiAgICBcImluZGlnb1wiOiAkaW5kaWdvcyxcbiAgICBcInB1cnBsZVwiOiAkcHVycGxlcyxcbiAgICBcInJlZFwiOiAkcmVkcyxcbiAgICBcIm9yYW5nZVwiOiAkb3JhbmdlcyxcbiAgICBcInllbGxvd1wiOiAkeWVsbG93LFxuICAgIFwiZ3JlZW5cIjogJGdyZWVucyxcbiAgICBcImN5YW5cIjogJGN5YW5zLFxuKSAhZGVmYXVsdDtcblxuJHNpZGViYXItd2lkdGg6IDI1MHB4O1xuJHJpZ2h0YmFyLXdpZHRoOiAyODBweDtcbiRzaWRlYmFyLWljb246IDUwcHg7XG5cbi8vIEJyZWFrcG9pbnRzXG4kYnJlYWsteHhzbWFsbDogMzkwcHg7XG4kYnJlYWsteHNtYWxsOiA2NDBweDtcbiRicmVhay1zbWFsbDogNzY4cHg7XG4kYnJlYWstbWVkaXVtOiA5OTJweDtcbiRicmVhay0xMDI0OiAxMDI0cHg7XG4kYnJlYWstbGFyZ2U6IDEyMDBweDtcbiRicmVhay0xMjgwOiAxMjgwcHg7XG4kYnJlYWsteGxhcmdlOiAxNDQwcHg7XG4iLCLvu78ubm8tcmVzaXplIHtcbiAgICByZXNpemU6IG5vbmU7XG59XG5cbi5iZy1ub25lIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXByaW1hcnkge1xuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1zZWNvbmRhcnkge1xuICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktY29sb3IpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LW11dGVkIHtcbiAgICBjb2xvcjogIzhjOWRiNSAhaW1wb3J0YW50O1xufVxuXG4uZnctZnJhdW5jZXMge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS10aXRsZS1mb250LWZyYXVuY2VzKTtcbn1cblxuLmJ0bi1waXhlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgcGFkZGluZzogMTFweCAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiA1MDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHZhcigtLWNvbG9yLTM0NzlFMCkgMCUsICM0RTU0QTUgNTElLCB2YXIoLS1jb2xvci0zNDc5RTApIDEwMCUpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjAwJSBhdXRvO1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgcGFkZGluZzogOHB4IDI0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZS1jb2xvcik7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQzZGVnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJ0bi1waXhlbC1vdXRsaW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMTFweCA0OHB4O1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwMzM7XG4gICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuICAgIHotaW5kZXg6IDUwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIGltZyxcbiAgICBzdmcge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgcGFkZGluZzogOHB4IDI0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogLTEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgdmFyKC0tY29sb3ItMzQ3OUUwKSAwJSwgIzRFNTRBNSA1MSUsIHZhcigtLWNvbG9yLTM0NzlFMCkgMTAwJSk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUtY29sb3IpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xuXG4gICAgICAgIGltZyxcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQzZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udGV4dC1ncmFkaWVudCB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDIxMWRlZywgdmFyKC0tcHJpbWFyeS1jb2xvciksIHZhcigtLXNlY29uZGFyeS1jb2xvcikpO1xuICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJnLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktY29sb3IpICFpbXBvcnRhbnQ7XG59XG5cbi5maWxsLXByaW1hcnkge1xuICAgIGZpbGw6IHZhcigtLXByaW1hcnktY29sb3IpICFpbXBvcnRhbnQ7XG59XG5cbi8vIC50ZXh0LXNlY29uZGFyeSB7XG4vLyAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDIxMWRlZywgdmFyKC0tcHJpbWFyeS1jb2xvciksIHZhcigtLXNlY29uZGFyeS1jb2xvcikpO1xuLy8gICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuLy8gICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbi8vIH1cblxuLmJnLXNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKSAhaW1wb3J0YW50O1xufVxuXG4uYmctcHJpbWFyeS1ncmFkaWVudCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc29mdC1ncmFkaWVudCkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJHdoaXRlO1xufVxuXG4ubGluay1zZWNvbmRhcnkge1xuICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktY29sb3IpICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWNvbG9yIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XG59XG5cbi5ib3JkZXItYm90dG9tLWRhc2hlZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCB2YXIoLS1wcmltYXJ5LWNvbG9yKSAhaW1wb3J0YW50O1xufVxuXG4uYnRuLXN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXN1Y2Nlc3M7XG59XG5cbi5idG4tZGFuZ2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGFuZ2VyO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWRhbmdlcjtcbn1cblxuLmJ0bi13YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2FybmluZztcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci13YXJuaW5nO1xufVxuXG4uYnRuLWluZm8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1pbmZvO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWluZm87XG59XG5cbi5vcHRpb24tY29sb3IxIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vcHRpb24tY29sb3IxKSAhaW1wb3J0YW50XG59XG5cbi5vcHRpb24tY29sb3IyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vcHRpb24tY29sb3IyKSAhaW1wb3J0YW50XG59XG5cbi5vcHRpb24tY29sb3IzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zb2Z0LWdyYWRpZW50KSAhaW1wb3J0YW50XG59XG5cbi5vcHRpb24tY29sb3I0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vcHRpb24tY29sb3I0KSAhaW1wb3J0YW50XG59XG5cbi5vcHRpb24tY29sb3I1IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vcHRpb24tY29sb3I1KSAhaW1wb3J0YW50XG59XG5cbi5vcHRpb24tY29sb3I2IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vcHRpb24tY29sb3I2KSAhaW1wb3J0YW50XG59XG5cbi5vcHRpb24tY29sb3I3IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vcHRpb24tY29sb3I3KSAhaW1wb3J0YW50XG59XG5cbi50ZXh0LWNvbG9yMSB7XG4gICAgY29sb3I6IHZhcigtLW9wdGlvbi1jb2xvcjEpICFpbXBvcnRhbnRcbn1cblxuLnRleHQtY29sb3IyIHtcbiAgICBjb2xvcjogdmFyKC0tb3B0aW9uLWNvbG9yMikgIWltcG9ydGFudFxufVxuXG4udGV4dC1jb2xvcjMge1xuICAgIGNvbG9yOiB2YXIoLS1zb2Z0LWdyYWRpZW50KSAhaW1wb3J0YW50XG59XG5cbi50ZXh0LWNvbG9yNCB7XG4gICAgY29sb3I6IHZhcigtLW9wdGlvbi1jb2xvcjQpICFpbXBvcnRhbnRcbn1cblxuLnRleHQtY29sb3I1IHtcbiAgICBjb2xvcjogdmFyKC0tb3B0aW9uLWNvbG9yNSkgIWltcG9ydGFudFxufVxuXG4udGV4dC1jb2xvcjYge1xuICAgIGNvbG9yOiB2YXIoLS1vcHRpb24tY29sb3I2KSAhaW1wb3J0YW50XG59XG5cbi50ZXh0LWNvbG9yNyB7XG4gICAgY29sb3I6IHZhcigtLW9wdGlvbi1jb2xvcjcpICFpbXBvcnRhbnRcbn1cblxuLmJvcmRlcixcbi5ib3JkZXItbGVmdCxcbi5ib3JkZXItdG9wLFxuLmJvcmRlci1yaWdodCxcbi5ib3JkZXItYm90dG9tIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvcikgIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKkN1c3RvbS1XaWR0aCoqKioqKioqKioqKiovXG4udmgxMDAge1xuICAgIGhlaWdodDogMTAwdmg7XG59XG5cbi53MzAge1xuICAgIHdpZHRoOiAzMHB4O1xufVxuXG4udzYwIHtcbiAgICB3aWR0aDogNjBweDtcbn1cblxuLnc5MCB7XG4gICAgd2lkdGg6IDkwcHg7XG59XG5cbi53MTIwIHtcbiAgICB3aWR0aDogMTIwcHg7XG59XG5cbi53MjIwIHtcbiAgICB3aWR0aDogMjIwcHg7XG59XG5cbi53MjQwIHtcbiAgICB3aWR0aDogMjQwcHg7XG59XG5cbi53MjgwIHtcbiAgICB3aWR0aDogMjgwcHg7XG59XG5cbi53MzgwIHtcbiAgICB3aWR0aDogMzgwcHg7XG59XG5cbi53LTMwIHtcbiAgICB3aWR0aDogMzAlO1xufVxuXG4ubXQtLTE2MCB7XG4gICAgbWFyZ2luLXRvcDogLTE2MHB4O1xufVxuXG4vKioqKioqKioqKioqdGhlbWUtdGV4dGNvbG9yKioqKioqKioqKioqKi9cbi5jb2xvci1mZmYge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xufVxuXG4uY29sb3ItMTAwIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItMTAwKTtcbn1cblxuLmNvbG9yLTIwMCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLTIwMCk7XG59XG5cbi5jb2xvci0zMDAge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci0zMDApO1xufVxuXG4uY29sb3ItNDAwIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItNDAwKTtcbn1cblxuLmNvbG9yLTYwMCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLTYwMCk7XG59XG5cbi5jb2xvci03MDAge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci03MDApO1xufVxuXG4uY29sb3ItODAwIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItODAwKTtcbn1cblxuLmNvbG9yLTkwMCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLTkwMCk7XG59XG5cbi5jb2xvci0wMDAge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci0wMDApO1xufVxuXG4udGl0bGUtY29sb3Ige1xuICAgIGNvbG9yOiB2YXIoLS10aXRsZS1jb2xvcik7XG59XG5cbi5ibGFjay1jb2xvciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XG59XG5cbi8qKioqKioqKioqKip0aGVtZS1iYWNncm91bmRjb2xvcioqKioqKioqKioqKiovXG4uY29sb3ItYmctZmZmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mZmYpICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xvci1iZy0xMDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLTEwMCkgIWltcG9ydGFudDtcbn1cblxuLmNvbG9yLWJnLTIwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItMjAwKSAhaW1wb3J0YW50O1xufVxuXG4uY29sb3ItYmctMzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci0zMDApICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xvci1iZy00MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLTQwMCkgIWltcG9ydGFudDtcbn1cblxuLmNvbG9yLWJnLTYwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItNjAwKSAhaW1wb3J0YW50O1xufVxuXG4uY29sb3ItYmctNzAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci03MDApICFpbXBvcnRhbnQ7XG59XG5cbi5jb2xvci1iZy04MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLTgwMCkgIWltcG9ydGFudDtcbn1cblxuLmNvbG9yLWJnLTkwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItOTAwKSAhaW1wb3J0YW50O1xufVxuXG4uY29sb3ItYmctMDAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci0wMDApICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1vcmFuZ2UtaW1hZ2Uge1xuICAgIEBpbmNsdWRlIGJnLWVmZmVjdC1pbWFnZSgnb3JhbmdlJywgI0UwMzQ1Nyk7XG59XG5cbi5iZy1jZXJ1bGVhbi1pbWFnZSB7XG4gICAgQGluY2x1ZGUgYmctZWZmZWN0LWltYWdlKCdjZXJ1bGVhbicsICMzN0EyQzgpO1xufVxuXG4uYmctYmx1ZS1pbWFnZSB7XG4gICAgQGluY2x1ZGUgYmctZWZmZWN0LWltYWdlKCdibHVlJywgIzUwNzlFOSk7XG59XG5cbi5iZy1wdXJwbGUtaW1hZ2Uge1xuICAgIEBpbmNsdWRlIGJnLWVmZmVjdC1pbWFnZSgncHVycGxlJywgIzgwNTBFMSk7XG59XG4iLCIvLyBkcm9wZG93bi1tZW51XG4uZHJvcGRvd24tYW5pbWF0aW9uIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1cHgpO1xuICAtd2Via2l0LWFuaW1hdGlvbjogZWxpbWVudC1hbmltYXRpb24gLjJzIGVhc2UtaW4tb3V0IC4zMzMzM3M7XG4gIGFuaW1hdGlvbjogZWxpbWVudC1hbmltYXRpb24gLjJzIGVhc2UtaW4tb3V0IC4zMzMzM3M7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLjA1cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuMDVzO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZWxpbWVudC1hbmltYXRpb24ge1xuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMClcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGVsaW1lbnQtYW5pbWF0aW9uIHtcbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApXG4gIH1cbn1cblxuQGtleWZyYW1lcyBwaW5nIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgyKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5saWZ0IHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuMjVzIGVhc2UsXG4gICAgdHJhbnNmb3JtIC4yNXMgZWFzZTtcblxuICAmOmZvY3VzLFxuICAmOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiAwIDZweCAxcmVtIHJnYmEoJGRhcmssIC4xKSwgMCAuNXJlbSAxcmVtIC0uNzVyZW0gcmdiYSgkZGFyaywgLjEpICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtM3B4LCAwKVxuICB9XG59XG5cbi5hbmltYXRlZCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xufVxuXG4uYW5pbWF0ZWQuaGluZ2Uge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMnM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMnM7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2Uge1xuXG4gIDAlLFxuICAyMCUsXG4gIDUwJSxcbiAgODAlLFxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNXB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZSB7XG5cbiAgMCUsXG4gIDIwJSxcbiAgNTAlLFxuICA4MCUsXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTVweCk7XG4gIH1cbn1cblxuLmJvdW5jZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZsYXNoIHtcblxuICAwJSxcbiAgNTAlLFxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMjUlLFxuICA3NSUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGFzaCB7XG5cbiAgMCUsXG4gIDUwJSxcbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDI1JSxcbiAgNzUlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5mbGFzaCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsYXNoO1xuICBhbmltYXRpb24tbmFtZTogZmxhc2g7XG59XG5cbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2Uge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcHVsc2Uge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuLnB1bHNlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcHVsc2U7XG4gIGFuaW1hdGlvbi1uYW1lOiBwdWxzZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNoYWtlIHtcblxuICAwJSxcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAlLFxuICAzMCUsXG4gIDUwJSxcbiAgNzAlLFxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICB9XG5cbiAgMjAlLFxuICA0MCUsXG4gIDYwJSxcbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzaGFrZSB7XG5cbiAgMCUsXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAlLFxuICAzMCUsXG4gIDUwJSxcbiAgNzAlLFxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICB9XG5cbiAgMjAlLFxuICA0MCUsXG4gIDYwJSxcbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgfVxufVxuXG4uc2hha2Uge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzaGFrZTtcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3dpbmcge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE1ZGVnKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzd2luZyB7XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxNWRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxNWRlZyk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTBkZWcpO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDVkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxufVxuXG4uc3dpbmcge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzd2luZztcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdGFkYSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDEwJSxcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KSByb3RhdGUoLTNkZWcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KSByb3RhdGUoLTNkZWcpO1xuICB9XG5cbiAgMzAlLFxuICA1MCUsXG4gIDcwJSxcbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoM2RlZyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgzZGVnKTtcbiAgfVxuXG4gIDQwJSxcbiAgNjAlLFxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgtM2RlZyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgtM2RlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgdGFkYSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDEwJSxcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KSByb3RhdGUoLTNkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuXG4gIDMwJSxcbiAgNTAlLFxuICA3MCUsXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDNkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDNkZWcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoM2RlZyk7XG4gIH1cblxuICA0MCUsXG4gIDYwJSxcbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTNkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKC0zZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDApO1xuICB9XG59XG5cbi50YWRhIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdGFkYTtcbiAgYW5pbWF0aW9uLW5hbWU6IHRhZGE7XG59XG5cbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgd29iYmxlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG5cbiAgMTUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUlKSByb3RhdGUoLTVkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUlKSByb3RhdGUoLTVkZWcpO1xuICB9XG5cbiAgMzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMCUpIHJvdGF0ZSgzZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAlKSByb3RhdGUoM2RlZyk7XG4gIH1cblxuICA0NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNSUpIHJvdGF0ZSgtM2RlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNSUpIHJvdGF0ZSgtM2RlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwJSkgcm90YXRlKDJkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpIHJvdGF0ZSgyZGVnKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUlKSByb3RhdGUoLTFkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNSUpIHJvdGF0ZSgtMWRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHdvYmJsZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxuXG4gIDE1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1JSkgcm90YXRlKC01ZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNSUpIHJvdGF0ZSgtNWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNSUpIHJvdGF0ZSgtNWRlZyk7XG4gIH1cblxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwJSkgcm90YXRlKDNkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAlKSByb3RhdGUoM2RlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwJSkgcm90YXRlKDNkZWcpO1xuICB9XG5cbiAgNDUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTUlKSByb3RhdGUoLTNkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE1JSkgcm90YXRlKC0zZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE1JSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAlKSByb3RhdGUoMmRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpIHJvdGF0ZSgyZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAlKSByb3RhdGUoMmRlZyk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01JSkgcm90YXRlKC0xZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01JSkgcm90YXRlKC0xZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUlKSByb3RhdGUoLTFkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cbn1cblxuLndvYmJsZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHdvYmJsZTtcbiAgYW5pbWF0aW9uLW5hbWU6IHdvYmJsZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC4zKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC45KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC45KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjMpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKC4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC4zKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC45KTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSguOSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSguOSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG4uYm91bmNlSW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbjtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5Eb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG4uYm91bmNlSW5Eb3duIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duO1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5MZWZ0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuXG4uYm91bmNlSW5MZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5MZWZ0O1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5MZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzBweCk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMHB4KTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuXG4uYm91bmNlSW5SaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5VcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluVXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG4uYm91bmNlSW5VcCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluVXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgMjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjk1KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC45NSk7XG4gIH1cblxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLjMpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlT3V0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgMjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjk1KTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSguOTUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLjk1KTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4zKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSguMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSguMyk7XG4gIH1cbn1cblxuLmJvdW5jZU91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dERvd24ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlT3V0RG93biB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gIH1cbn1cblxuLmJvdW5jZU91dERvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXREb3duO1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0RG93bjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dExlZnQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlT3V0TGVmdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cbn1cblxuLmJvdW5jZU91dExlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0O1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0TGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dFJpZ2h0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dFJpZ2h0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxufVxuXG4uYm91bmNlT3V0UmlnaHQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0VXAge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlT3V0VXAge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG59XG5cbi5ib3VuY2VPdXRVcCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFVwO1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0VXA7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmZhZGVJbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluRG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG4uZmFkZUluRG93biB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG4uZmFkZUluRG93bkJpZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25CaWc7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duQmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluTGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5MZWZ0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbi5mYWRlSW5MZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5MZWZ0QmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5MZWZ0QmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbi5mYWRlSW5MZWZ0QmlnIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdEJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRCaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5SaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuLmZhZGVJblJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0QmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuLmZhZGVJblJpZ2h0QmlnIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRCaWc7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodEJpZztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG4uZmFkZUluVXAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXBCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5VcEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG4uZmFkZUluVXBCaWcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcEJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwQmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmZhZGVPdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0RG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgfVxufVxuXG4uZmFkZU91dERvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bjtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0RG93bkJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgfVxufVxuXG4uZmFkZU91dERvd25CaWcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bkJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duQmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dExlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7XG4gIH1cbn1cblxuLmZhZGVPdXRMZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dExlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0TGVmdEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgfVxufVxuXG4uZmFkZU91dExlZnRCaWcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdEJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gIH1cbn1cblxuLmZhZGVPdXRSaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxufVxuXG4uZmFkZU91dFJpZ2h0QmlnIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnO1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRVcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgfVxufVxuXG4uZmFkZU91dFVwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFVwO1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0VXBCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cbn1cblxuLmZhZGVPdXRVcEJpZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcEJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcEJpZztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXAge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMCkgc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigwKSByb3RhdGVZKDApIHNjYWxlKDEpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgxNzBkZWcpIHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoMTcwZGVnKSBzY2FsZSgxKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoMTkwZGVnKSBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKDE5MGRlZykgc2NhbGUoMSk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigwKSByb3RhdGVZKDM2MGRlZykgc2NhbGUoLjk1KTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMzYwZGVnKSBzY2FsZSguOTUpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMzYwZGVnKSBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMzYwZGVnKSBzY2FsZSgxKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsaXAge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMCkgc2NhbGUoMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZVooMCkgcm90YXRlWSgwKSBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMCkgc2NhbGUoMSk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKDE3MGRlZykgc2NhbGUoMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoMTcwZGVnKSBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKDE3MGRlZykgc2NhbGUoMSk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKDE5MGRlZykgc2NhbGUoMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoMTkwZGVnKSBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKDE5MGRlZykgc2NhbGUoMSk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigwKSByb3RhdGVZKDM2MGRlZykgc2NhbGUoLjk1KTtcbiAgICAtbXMtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigwKSByb3RhdGVZKDM2MGRlZykgc2NhbGUoLjk1KTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMzYwZGVnKSBzY2FsZSguOTUpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDApIHJvdGF0ZVkoMzYwZGVnKSBzY2FsZSgxKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigwKSByb3RhdGVZKDM2MGRlZykgc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigwKSByb3RhdGVZKDM2MGRlZykgc2NhbGUoMSk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cbn1cblxuLmFuaW1hdGVkLmZsaXAge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwO1xuICBhbmltYXRpb24tbmFtZTogZmxpcDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblgge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTEwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC0xMGRlZyk7XG4gIH1cblxuICA3MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgxMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgxMGRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxpcEluWCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTEwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTEwZGVnKTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDEwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgxMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgxMGRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5mbGlwSW5YIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcEluWDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBJblg7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwSW5ZIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgtMTBkZWcpO1xuICB9XG5cbiAgNzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMTBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsaXBJblkge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xMGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTEwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xMGRlZyk7XG4gIH1cblxuICA3MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgxMGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMTBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uZmxpcEluWSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBJblk7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFgge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsaXBPdXRYIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5mbGlwT3V0WCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRYO1xuICBhbmltYXRpb24tbmFtZTogZmxpcE91dFg7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwT3V0WSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxpcE91dFkge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmZsaXBPdXRZIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcE91dFk7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSBza2V3WCgtMzBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSBza2V3WCgtMzBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMCUpIHNrZXdYKDMwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwJSkgc2tld1goMzBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSBza2V3WCgtMTVkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goLTE1ZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSBza2V3WCgtMzBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgc2tld1goLTMwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgc2tld1goLTMwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAlKSBza2V3WCgzMGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAlKSBza2V3WCgzMGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMCUpIHNrZXdYKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goLTE1ZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSBza2V3WCgtMTVkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goLTE1ZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ubGlnaHRTcGVlZEluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluO1xuICBhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluO1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHNrZXdYKC0zMGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHNrZXdYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHNrZXdYKC0zMGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSBza2V3WCgtMzBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSBza2V3WCgtMzBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmxpZ2h0U3BlZWRPdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0O1xuICBhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZE91dDtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMjAwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjAwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMjAwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTIwMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnJvdGF0ZUluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW47XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluRG93bkxlZnQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGVJbkRvd25MZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5yb3RhdGVJbkRvd25MZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93bkxlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJbkRvd25SaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnJvdGF0ZUluRG93blJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25SaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5yb3RhdGVJblVwTGVmdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBMZWZ0O1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5VcExlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJblVwUmlnaHQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5yb3RhdGVJblVwUmlnaHQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyMDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyMDBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgyMDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ucm90YXRlT3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0O1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLnJvdGF0ZU91dERvd25MZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0RG93bkxlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dERvd25SaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGVPdXREb3duUmlnaHQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLnJvdGF0ZU91dERvd25SaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25SaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25SaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ucm90YXRlT3V0VXBMZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBMZWZ0O1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBMZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ucm90YXRlT3V0VXBSaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcFJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZUluRG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuLnNsaWRlSW5Eb3duIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJbkRvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluRG93bjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5MZWZ0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbi5zbGlkZUluTGVmdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5MZWZ0O1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJbkxlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuXG4uc2xpZGVJblJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJblJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRMZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVPdXRMZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgfVxufVxuXG4uc2xpZGVPdXRMZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXRMZWZ0O1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRMZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRSaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZU91dFJpZ2h0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxufVxuXG4uc2xpZGVPdXRSaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0UmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRVcCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0VXAge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG59XG5cbi5zbGlkZU91dFVwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXRVcDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0VXA7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoaW5nZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgfVxuXG4gIDIwJSxcbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg4MGRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDYwZGVnKSB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDYwZGVnKSB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3MDBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGhpbmdlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICAyMCUsXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg4MGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg4MGRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZykgdHJhbnNsYXRlWSgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpIHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpIHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzAwcHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3MDBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uaGluZ2Uge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoaW5nZTtcbiAgYW5pbWF0aW9uLW5hbWU6IGhpbmdlO1xufVxuXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvbGxJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKSByb3RhdGUoLTEyMGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKSByb3RhdGUoLTEyMGRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvbGxJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKSByb3RhdGUoLTEyMGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgcm90YXRlKC0xMjBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgcm90YXRlKC0xMjBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgfVxufVxuXG4ucm9sbEluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm9sbEluO1xuICBhbmltYXRpb24tbmFtZTogcm9sbEluO1xufVxuXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvbGxPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KSByb3RhdGUoMGRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHJvdGF0ZSgxMjBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSByb3RhdGUoMTIwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvbGxPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgcm90YXRlKDEyMGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSByb3RhdGUoMTIwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgcm90YXRlKDEyMGRlZyk7XG4gIH1cbn1cblxuLnJvbGxPdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb2xsT3V0O1xuICBhbmltYXRpb24tbmFtZTogcm9sbE91dDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xuICB9XG5cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XG4gIH1cblxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnpvb21JbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21JbjtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21Jbjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JbkRvd24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbUluRG93biB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gIH1cbn1cblxuLnpvb21JbkRvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5Eb3duO1xuICBhbmltYXRpb24tbmFtZTogem9vbUluRG93bjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JbkxlZnQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbUluTGVmdCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gIH1cbn1cblxuLnpvb21JbkxlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5MZWZ0O1xuICBhbmltYXRpb24tbmFtZTogem9vbUluTGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JblJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHpvb21JblJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgfVxufVxuXG4uem9vbUluUmlnaHQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5SaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JblJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluVXAge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbUluVXAge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICB9XG59XG5cbi56b29tSW5VcCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21JblVwO1xuICBhbmltYXRpb24tbmFtZTogem9vbUluVXA7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHpvb21PdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi56b29tT3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0RG93biB7XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbU91dERvd24ge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgfVxufVxuXG4uem9vbU91dERvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0RG93bjtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dExlZnQge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbU91dExlZnQge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xuICB9XG59XG5cbi56b29tT3V0TGVmdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRMZWZ0O1xuICBhbmltYXRpb24tbmFtZTogem9vbU91dExlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0UmlnaHQge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB6b29tT3V0UmlnaHQge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG4gIH1cbn1cblxuLnpvb21PdXRSaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRSaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXRVcCB7XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbU91dFVwIHtcbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gIH1cbn1cblxuLnpvb21PdXRVcCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRVcDtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRVcDtcbn1cblxuLyoqKioqKioqKioqKipMb2FkZXIqKioqKioqKioqKioqKioqKiovXG4ubG9hZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMTYsIDExNCwgMTE0LCAwLjIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbGFzcy1jb2xvcik7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIHotaW5kZXg6IDk5OTk5OTk5O1xuICB0b3A6IDA7XG5cbiAgLmFuaW1hdGlvbi1sb2FkZXIge1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGZpbHRlcjogdXJsKCcjZ29vJyk7XG4gICAgYW5pbWF0aW9uOiByb3RhdGUtbW92ZSAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcblxuICAgIC5kb3Qge1xuICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgICAmLmRvdC0zIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U5NGEzZjtcbiAgICAgICAgYW5pbWF0aW9uOiBkb3QtMy1tb3ZlIDJzIGVhc2UgaW5maW5pdGUsIGluZGV4IDZzIGVhc2UgaW5maW5pdGU7XG4gICAgICB9XG5cbiAgICAgICYuZG90LTIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTBiZWFlO1xuICAgICAgICBhbmltYXRpb246IGRvdC0yLW1vdmUgMnMgZWFzZSBpbmZpbml0ZSwgaW5kZXggNnMgLTRzIGVhc2UgaW5maW5pdGU7XG4gICAgICB9XG5cbiAgICAgICYuZG90LTEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJhZTI0O1xuICAgICAgICBhbmltYXRpb246IGRvdC0xLW1vdmUgMnMgZWFzZSBpbmZpbml0ZSwgaW5kZXggNnMgLTJzIGVhc2UgaW5maW5pdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBrZXlmcmFtZXMgZG90LTMtbW92ZSB7XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKVxuICB9XG5cbiAgNDUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE4cHgpIHNjYWxlKC40NSlcbiAgfVxuXG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC05MHB4KSBzY2FsZSguNDUpXG4gIH1cblxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOTBweCkgc2NhbGUoLjQ1KVxuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCkgc2NhbGUoMSlcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGRvdC0yLW1vdmUge1xuICAyMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSlcbiAgfVxuXG4gIDQ1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTE2cHgsIDEycHgpIHNjYWxlKC40NSlcbiAgfVxuXG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTgwcHgsIDYwcHgpIHNjYWxlKC40NSlcbiAgfVxuXG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTgwcHgsIDYwcHgpIHNjYWxlKC40NSlcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpIHNjYWxlKDEpXG4gIH1cbn1cblxuQGtleWZyYW1lcyBkb3QtMS1tb3ZlIHtcbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpXG4gIH1cblxuICA0NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDE2cHgsIDEycHgpIHNjYWxlKC40NSlcbiAgfVxuXG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoODBweCwgNjBweCkgc2NhbGUoLjQ1KVxuICB9XG5cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg4MHB4LCA2MHB4KSBzY2FsZSguNDUpXG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KSBzY2FsZSgxKVxuICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlLW1vdmUge1xuICA1NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgwZGVnKVxuICB9XG5cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzYwZGVnKVxuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDM2MGRlZylcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGluZGV4IHtcblxuICAwJSxcbiAgMTAwJSB7XG4gICAgei1pbmRleDogM1xuICB9XG5cbiAgMzMuMyUge1xuICAgIHotaW5kZXg6IDJcbiAgfVxuXG4gIDY2LjYlIHtcbiAgICB6LWluZGV4OiAxXG4gIH1cbn1cblxuLmFuaW1hdGVkLmluZmluaXRlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG59XG5cblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBhbmltYXRpb24gcm90YXRlLWNlbnRlclxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5yb3RhdGUtY2VudGVyIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IHJvdGF0ZS1jZW50ZXIgMTAwcyBsaW5lYXIgaW5maW5pdGUgYm90aDtcbiAgYW5pbWF0aW9uOiByb3RhdGUtY2VudGVyIDEwMHMgbGluZWFyIGluZmluaXRlIGJvdGg7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGUtY2VudGVyIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZS1jZW50ZXIge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi8qKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogYW5pbWF0aW9uIHNsaWRlX3VwX2Rvd25cbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4uc2xpZGVfdXBfZG93biB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzbGlkZV91cF9kb3duIDEuN3MgZWFzZS1pbi1vdXQgaW5maW5pdGUgYWx0ZXJuYXRlIGJvdGg7XG4gIGFuaW1hdGlvbjogc2xpZGVfdXBfZG93biAxLjdzIGVhc2UtaW4tb3V0IGluZmluaXRlIGFsdGVybmF0ZSBib3RoO1xufVxuXG4vKiAtLS0tLS0tICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVfdXBfZG93biB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlX3VwX2Rvd24ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gIH1cbn1cblxuLyoqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBhbmltYXRpb24gd2F2ZVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi53YXZlIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IHdhdmUgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGUgYWx0ZXJuYXRlIGJvdGg7XG4gIGFuaW1hdGlvbjogd2F2ZSAycyBlYXNlLWluLW91dCBpbmZpbml0ZSBhbHRlcm5hdGUgYm90aDtcbn1cblxuLyogLS0tLS0tLSAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHdhdmUge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTFkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHdhdmUge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTFkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xZGVnKTtcbiAgfVxufVxuXG4vKipcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIGFuaW1hdGlvbiBzY2FsZV91cF9kb3duXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLnNjYWxlX3VwX2Rvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2NhbGVfdXBfZG93biAxcyBlYXNlLWluLW91dCBpbmZpbml0ZSBhbHRlcm5hdGUgYm90aDtcbiAgYW5pbWF0aW9uOiBzY2FsZV91cF9kb3duIDFzIGVhc2UtaW4tb3V0IGluZmluaXRlIGFsdGVybmF0ZSBib3RoO1xufVxuXG4vKiAtLS0tLS0tICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2NhbGVfdXBfZG93biB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNjYWxlX3VwX2Rvd24ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuLmxlZnRfdG9fcmlnaHRfYXBwZXJhbmNlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjhzIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBhbGwgLjhzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgLjhzIGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IC40cztcbiAgLW8tdHJhbnNpdGlvbi1kZWxheTogLjRzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAuNHM7XG4gIC13ZWJraXQtY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgMCAwLCAwIDEwMCUsIDAlIDEwMCUpO1xuICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAwIDAsIDAgMTAwJSwgMCUgMTAwJSk7XG59XG5cbi5sZWZ0X3RvX3JpZ2h0X2FwcGVyYW5jZS5hbmltYXRlZCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIC13ZWJraXQtY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgMTAwJSAwLCAxMDAlIDEwMCUsIDAlIDEwMCUpO1xuICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAxMDAlIDAsIDEwMCUgMTAwJSwgMCUgMTAwJSk7XG59XG5cbi8vL0Jsb2NoYWluIEFuaW1hdGlvbi8vLy8vIFxuXG4jcmVkYmxvY2tzPioge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDE2MHB4LCAtOTNweCwgMCk7XG4gIGFuaW1hdGlvbjogbW92ZWJsb2NrcyA0cyAxcyBlYXNlIGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIG1vdmVibG9ja3Mge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxNjBweCwgLTkzcHgsIDApO1xuICB9XG5cbiAgNTAlLFxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwKTtcbiAgfVxufVxuXG4jZmlyc3RCbG9jayB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTYwcHgsIC05M3B4LCAwKTtcbiAgYW5pbWF0aW9uOiBmaXJzdEJsb2NrIDRzIDFzIGVhc2UgaW5maW5pdGU7XG59XG5cbiNibG9ja2RpcyB7XG4gIGFuaW1hdGlvbjogYmxvY2tkaXMgNHMgMXMgZWFzZSBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBibG9ja2RpcyB7XG4gIDMwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDQwJSxcbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNjBweCwgOTNweCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmaXJzdEJsb2NrIHtcblxuICAwJSxcbiAgMTUlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNDAlLFxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBmb3IgJGkgZnJvbSAxIHRvIDUge1xuICAjcmVkYmxvY2tzcGFydGljbGVzIGc6bnRoLWNoaWxkKCN7JGl9KSBwb2x5Z29uIHtcbiAgICBvcGFjaXR5OiAwLjM1O1xuICAgIGFuaW1hdGlvbjogZ2xvdyA0cyAxcyBlYXNlIGluZmluaXRlO1xuICB9XG59XG5cbkBmb3IgJGkgZnJvbSAxIHRvIDIwIHtcbiAgI3JlZGJsb2Nrc3BhcnRpY2xlcyBnOm50aC1jaGlsZCgxKSBnIGNpcmNsZTpudGgtY2hpbGQoI3skaX0pIHtcbiAgICBhbmltYXRpb246IGRvdHMgNHMgI3sxMDAwKyRpKjUwfW1zIGVhc2UgaW5maW5pdGU7XG4gIH1cblxuICAjcmVkYmxvY2tzcGFydGljbGVzIGc6bnRoLWNoaWxkKDIpIGcgY2lyY2xlOm50aC1jaGlsZCgjeyRpfSkge1xuICAgIGFuaW1hdGlvbjogZG90cyA0cyAjezEwMDArJGkqNTB9bXMgZWFzZSBpbmZpbml0ZTtcbiAgfVxuXG4gICNyZWRibG9ja3NwYXJ0aWNsZXMgZzpudGgtY2hpbGQoMykgZyBjaXJjbGU6bnRoLWNoaWxkKCN7JGl9KSB7XG4gICAgYW5pbWF0aW9uOiBkb3RzIDRzICN7MTAwMCskaSo1MH1tcyBlYXNlIGluZmluaXRlO1xuICB9XG5cbiAgI3JlZGJsb2Nrc3BhcnRpY2xlcyBnOm50aC1jaGlsZCg0KSBnIGNpcmNsZTpudGgtY2hpbGQoI3skaX0pIHtcbiAgICBhbmltYXRpb246IGRvdHMgNHMgI3sxMDAwKyRpKjUwfW1zIGVhc2UgaW5maW5pdGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBnbG93IHtcblxuICAwJSxcbiAgNDUlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNjAlLFxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwLjM1O1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZG90cyB7XG5cbiAgMCUsXG4gIDM1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDYwJSxcbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1NXB4LCAtMzVweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDU1cHgsIC0zNXB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBmb3IgJGkgZnJvbSAxIHRvIDIyIHtcbiAgI3B1cnBsZWJnPiA6bnRoLWNoaWxkKCN7JGl9KSB7XG4gICAgYW5pbWF0aW9uOiB1cCAycyAjeyRpKiA1MDB9bXMgZWFzZSBpbmZpbml0ZSBhbHRlcm5hdGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB1cCB7XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMjVweCk7XG4gIH1cbn1cblxuQGZvciAkaSBmcm9tIDEgdG8gMTMge1xuICAjYm90dG9tcGFydGljbGVzPiA6bnRoLWNoaWxkKCN7JGl9KSB7XG4gICAgYW5pbWF0aW9uOiBwYXJ0aWNsZXMgNHMgI3skaSozMDB9bXMgZWFzZSBpbmZpbml0ZSBhbHRlcm5hdGUsXG4gICAgcCAycyBlYXNlIGluZmluaXRlIGFsdGVybmF0ZTtcbiAgfVxuXG4gICNib3R0b21wYXJ0aWNsZXMyPiA6bnRoLWNoaWxkKCN7JGl9KSB7XG4gICAgYW5pbWF0aW9uOiBwYXJ0aWNsZXMgNHMgI3skaSozMDB9bXMgZWFzZSBpbmZpbml0ZSBhbHRlcm5hdGUsXG4gICAgcCAycyBlYXNlIGluZmluaXRlIGFsdGVybmF0ZTtcbiAgfVxuXG4gICNyZWRnbG93cGFydGljbGVzPiA6bnRoLWNoaWxkKCN7JGl9KSB7XG4gICAgYW5pbWF0aW9uOiBwYXJ0aWNsZXMgNHMgI3skaSozMDB9bXMgZWFzZSBpbmZpbml0ZSBhbHRlcm5hdGUsXG4gICAgcCAycyBlYXNlIGluZmluaXRlIGFsdGVybmF0ZTtcbiAgfVxuXG59XG5cbkBrZXlmcmFtZXMgcCB7XG5cbiAgODUlLFxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcGFydGljbGVzIHtcblxuICAwJSxcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwcHgsIDE1cHgpO1xuICB9XG59XG5cbi5wYXJ0aWNsZXNwb2x5IHtcbiAgYW5pbWF0aW9uOiBwIDJzIGVhc2UgaW5maW5pdGUgYWx0ZXJuYXRlO1xufVxuXG5AZm9yICRpIGZyb20gMSB0byA0IHtcbiAgI2QtYXBwIGc6bnRoLWNoaWxkKCN7JGl9KSB7XG4gICAgYW5pbWF0aW9uOiB1cGRvd24gMnMgI3skaSoyMDB9bXMgZWFzZS1pbi1vdXQgaW5maW5pdGUgYWx0ZXJuYXRlO1xuICB9XG59XG5cbkBmb3IgJGkgZnJvbSAxIHRvIDQge1xuICAjZC1hcHBzMiBnOm50aC1jaGlsZCgjeyRpfSkge1xuICAgIGFuaW1hdGlvbjogdXBkb3duIDJzICN7JGkqMjAwfW1zIGVhc2UtaW4tb3V0IGluZmluaXRlIGFsdGVybmF0ZTtcbiAgfVxufVxuXG5AZm9yICRpIGZyb20gMSB0byAyMCB7XG4gICNkLWFwcHMyd3JhcHBlciBnOm50aC1jaGlsZCgzKSBnPmNpcmNsZTpudGgtY2hpbGQoI3skaX0pIHtcbiAgICBhbmltYXRpb246IHVwZG93biAycyAjeyRpKjUwfW1zIGVhc2UgaW5maW5pdGUgYWx0ZXJuYXRlO1xuICB9XG59XG5cbkBmb3IgJGkgZnJvbSAxIHRvIDIwIHtcbiAgI2QtYXBwc3dyYXBwZXIgZzpudGgtY2hpbGQoMikgZz5jaXJjbGU6bnRoLWNoaWxkKCN7JGl9KSB7XG4gICAgYW5pbWF0aW9uOiB1cGRvd24gMnMgI3skaSo1MH1tcyBlYXNlIGluZmluaXRlIGFsdGVybmF0ZTtcbiAgfVxufVxuXG5cbkBrZXlmcmFtZXMgdXBkb3duIHtcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTIwcHgpO1xuICB9XG59XG5cbiNMYXllcl8xPmc6bnRoLWNoaWxkKDIpPmc6bnRoLWNoaWxkKDE4KT5nOm50aC1jaGlsZCgxMikge1xuICBhbmltYXRpb246IGFycm93cyAxcyBlYXNlLWluLW91dCBpbmZpbml0ZSBhbHRlcm5hdGUsIHAgMnMgZWFzZSBpbmZpbml0ZSBhbHRlcm5hdGU7XG59XG5cbkBrZXlmcmFtZXMgYXJyb3dzIHtcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDI1cHgsIDI1cHgpO1xuICB9XG59XG5cbiNMYXllcl8xPmc6bnRoLWNoaWxkKDIpPmc6bnRoLWNoaWxkKDE3KT5nOm50aC1jaGlsZCgxMykge1xuICBhbmltYXRpb246IGFycm93czIgMXMgZWFzZS1pbi1vdXQgaW5maW5pdGUgYWx0ZXJuYXRlLCBwIDJzIGVhc2UgaW5maW5pdGUgYWx0ZXJuYXRlO1xufVxuXG5Aa2V5ZnJhbWVzIGFycm93czIge1xuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTI1cHgsIC0yNXB4KTtcbiAgfVxufVxuXG4jTGF5ZXJfMT5nOm50aC1jaGlsZCgyKT5nOm50aC1jaGlsZCgxNyk+ZzpudGgtY2hpbGQoMTIpIHtcbiAgYW5pbWF0aW9uOiBhcnJvd3MgMXMgZWFzZS1pbi1vdXQgaW5maW5pdGUgYWx0ZXJuYXRlLCBwIDJzIGVhc2UgaW5maW5pdGUgYWx0ZXJuYXRlO1xufSIsIlxyXG5cclxuQGtleWZyYW1lcyBwdWxzZS1wcmltYXJ5IHtcclxuICAgIDAlIHtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjQpO1xyXG4gICAgfVxyXG5cclxuICAgIDcwJSB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMTVweCByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMCk7XHJcbiAgICB9XHJcblxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uaGVyby1pbWFnZS13cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgIGJvcmRlcjogOHB4IHNvbGlkIHZhcigtLWNvbG9yLWZmZik7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDRweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnByb2plY3QtaW5mby1jYXJkIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAuaW5mby1sYWJlbCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcclxuICAgICAgICBvcGFjaXR5OiAwLjg7XHJcbiAgICB9XHJcblxyXG4gICAgLmluZm8tdmFsdWUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgIH1cclxufVxyXG5cclxuLnByb2R1Y3RzLXNlY3Rpb24ge1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9tYXJnaW47XHJcblxyXG4gICAgLmJnLXdhdmVzIHtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mZWF0dXJlLXNlY3Rpb24ge1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9tYXJnaW47XHJcbiAgICBwYWRkaW5nOiA5MHB4IDA7XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogNTBweCAwO1xyXG4gICAgfVxyXG5cclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAxODBkZWcsXHJcbiAgICAgICAgcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMDUpIDAlLFxyXG4gICAgICAgIHJnYmEodmFyKC0tc2Vjb25kYXJ5LXJnYiksIDAuMDUpIDEwMCVcclxuICAgICk7XHJcbn1cclxuXHJcbi5zZWN0aW9uLXN1YnRpdGxlIHtcclxuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1zaXplOiAwLjhyZW07XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICB3aWR0aDogMzVweDtcclxuICAgICAgICBoZWlnaHQ6IDJweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mZWF0dXJlLWNhcmQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2xhc3MtY29sb3IpO1xyXG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyNHB4O1xyXG4gICAgcGFkZGluZzogNDBweCAzMHB4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMjBweCA0MHB4IHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjA4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTdweCk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4yKTtcclxuXHJcbiAgICAgICAgLmljb24tYm94IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS1zZWNvbmRhcnktcmdiKSwgMC4yKTtcclxuICAgICAgICAgICAgY29sb3I6IHJnYmEodmFyKC0tc2Vjb25kYXJ5LXJnYiksIDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaWNvbi1ib3gge1xyXG4gICAgICAgIHdpZHRoOiA3MHB4O1xyXG4gICAgICAgIGhlaWdodDogNzBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci0xMDApO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC42cyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSk7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgIH1cclxufVxyXG5cclxuLmtleS1mZWF0dXJlLWNhcmQge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgcGFkZGluZzogNDBweDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgbWluLWhlaWdodDogMjgwcHg7XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtaW5kZXgpO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IC0xMHB4O1xyXG4gICAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTAwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgICAgICBjb2xvcjogcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMDMpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2U7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tYm94IHtcclxuICAgICAgICB3aWR0aDogNjBweDtcclxuICAgICAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMDUpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogYXV0bztcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlO1xyXG4gICAgfVxyXG5cclxuICAgIGg0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICBvcGFjaXR5OiAwLjg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDMwcHggNjBweCByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4xKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb2xvcjogcmdiYSh2YXIoLS1zZWNvbmRhcnktcmdiKSwgMC4wOCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTVkZWcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmljb24tYm94IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMDgpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoMTBkZWcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYubGFyZ2UtY2FyZCB7XHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA2MHB4O1xyXG5cclxuICAgICAgICAgICAgaDQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuaWNvbi1ib3gge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZmVhdHVyZS1waWxscyB7XHJcbiAgICBAaW5jbHVkZSBzZWN0aW9uX3BhZGRpbmc7XHJcbn1cclxuXHJcbi5waWxsLWZlYXR1cmUtY2FyZCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMjBweDtcclxuICAgIHBhZGRpbmc6IDIwcHggMzBweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4xKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTNweDtcclxuICAgIH1cclxuXHJcbiAgICAuaWNvbi13cmFwcGVyIHtcclxuICAgICAgICB3aWR0aDogNTBweDtcclxuICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgbWluLXdpZHRoOiA1MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjA1KTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuICAgIH1cclxuXHJcbiAgICBoNSB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10aXRsZS1jb2xvcik7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBpbnNldDogMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgICAgICBwYWRkaW5nOiAxcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgICAgICA5MGRlZyxcclxuICAgICAgICAgICAgdHJhbnNwYXJlbnQsXHJcbiAgICAgICAgICAgIHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjUpLFxyXG4gICAgICAgICAgICB0cmFuc3BhcmVudFxyXG4gICAgICAgICk7XHJcbiAgICAgICAgLXdlYmtpdC1tYXNrOlxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQodmFyKC0tY29sb3ItZmZmKSAwIDApIGNvbnRlbnQtYm94LFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQodmFyKC0tY29sb3ItZmZmKSAwIDApO1xyXG4gICAgICAgIC13ZWJraXQtbWFzay1jb21wb3NpdGU6IHhvcjtcclxuICAgICAgICBtYXNrLWNvbXBvc2l0ZTogZXhjbHVkZTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcblxyXG4gICAgICAgIC5pY29uLXdyYXBwZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoMTBkZWcpO1xyXG4gICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgcGF0aCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jbXMtc2hvd2Nhc2Utc2VjdGlvbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9wYWRkaW5nO1xyXG5cclxuICAgIC8vIFNlY3Rpb24gQmFkZ2VcclxuICAgIC5jbXMtYmFkZ2Uge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAyNHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgICAgMTM1ZGVnLFxyXG4gICAgICAgICAgICByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4xKSAwJSxcclxuICAgICAgICAgICAgcmdiYSh2YXIoLS1zZWNvbmRhcnktcmdiKSwgMC4xKSAxMDAlXHJcbiAgICAgICAgKTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4yKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcclxuICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcclxuXHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gTWFpbiBUaXRsZVxyXG4gICAgLmNtcy1tYWluLXRpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDMuNXJlbTtcclxuICAgICAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10aXRsZS1jb2xvcik7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTJweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgICAgMTM1ZGVnLFxyXG4gICAgICAgICAgICB2YXIoLS10aXRsZS1jb2xvcikgMCUsXHJcbiAgICAgICAgICAgIHZhcigtLXByaW1hcnktY29sb3IpIDEwMCVcclxuICAgICAgICApO1xyXG4gICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG4gICAgICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcclxuICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNtcy1zdWJ0aXRsZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgICAgICBsaW5lLWhlaWdodDogMS43O1xyXG4gICAgfVxyXG5cclxuICAgIC8vIE1vZHVsZXMgR3JpZCAodmVydGljYWwgbGF5b3V0KVxyXG4gICAgLmNtcy1tb2R1bGVzLWdyaWQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBnYXA6IDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gTW9kdWxlIEJsb2NrXHJcbiAgICAuY21zLW1vZHVsZS1ibG9jayB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAmLnJldmVhbCB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MHB4KTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuOHMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYucmV2ZWFsLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSW5mbyBDYXJkXHJcbiAgICAuY21zLWluZm8tY2FyZCB7XHJcbiAgICAgICAgLmluZm8tY2FyZC1oZWFkZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDE2cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubW9kdWxlLWxhYmVsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aXRsZS1jb2xvcik7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNzVyZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBGZWF0dXJlIFBpbGxzXHJcbiAgICAuZmVhdHVyZS1waWxscyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgZ2FwOiAxMnB4O1xyXG5cclxuICAgICAgICAucGlsbCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDhweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxOHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAgICAgICAxMzVkZWcsXHJcbiAgICAgICAgICAgICAgICByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4wNikgMCUsXHJcbiAgICAgICAgICAgICAgICByZ2JhKHZhcigtLXNlY29uZGFyeS1yZ2IpLCAwLjA2KSAxMDAlXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjEyKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG5cclxuICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzEwYjk4MTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4xKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDEycHggcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMTUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIE1vY2t1cCBTaG93Y2FzZVxyXG4gICAgLmNtcy1tb2NrdXAtc2hvd2Nhc2Uge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIC8vIEJyb3dzZXIgRnJhbWVcclxuICAgICAgICAuYnJvd3Nlci1mcmFtZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzpcclxuICAgICAgICAgICAgICAgIDAgMTBweCAzMHB4IHJnYmEoMCwgMCwgMCwgMC4wNSksXHJcbiAgICAgICAgICAgICAgICAwIDAgMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDEwMDBweCkgcm90YXRlWSgtNWRlZykgcm90YXRlWCgyZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNnMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKVxyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0ZVkoLTEwcHgpO1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAyMHB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJyb3dzZXItYmFyIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDhweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggMThweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLTIwMCk7XHJcblxyXG4gICAgICAgICAgICAgICAgLmJyb3dzZXItZG90IHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTJweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICM0NTQ3NWE7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2YzOGJhODtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y5ZTJhZjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2E2ZTNhMTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBQaG9uZSBGcmFtZVxyXG4gICAgICAgIC5waG9uZS1mcmFtZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTJweDtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxMHB4IDMwcHggcmdiYSgwLCAwLCAwLCAwLjA0KTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoNWRlZykgcm90YXRlWCgyZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNnMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxMDAwcHgpIHJvdGF0ZVkoMGRlZykgcm90YXRlWCgwZGVnKVxyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0ZVkoLTE1cHgpO1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAyMHB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjhweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIENUQSBUaXRsZVxyXG4gICAgLmNtcy1jdGEtdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcclxuICAgICAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10aXRsZS1jb2xvcik7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY21zLWN0YS1zdWJ0aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNjtcclxuICAgIH1cclxuXHJcbiAgICAvLyBSZXNwb25zaXZlXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICAuY21zLW1haW4tdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIuMjVyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY21zLXBhbmVsLWlubmVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogNDBweCAyNHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNtcy1tb2NrdXAtc2hvd2Nhc2Uge1xyXG4gICAgICAgICAgICAuYnJvd3Nlci1mcmFtZSxcclxuICAgICAgICAgICAgLnBob25lLWZyYW1lIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZsb2F0aW5nLXN0YXQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmNtcy1mZWF0dXJlLWJsb2NrIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZ2FwOiAwO1xyXG5cclxuICAgIC5jb250ZW50LXNpZGUge1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgcGFkZGluZzogNjBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XHJcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDMwcHgpO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNDBweDtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDQwcHggMTAwcHggcmdiYSgwLCAwLCAwLCAwLjA2KTtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnZpc3VhbC1zaWRlIHtcclxuICAgICAgICB3aWR0aDogNjAlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICBvcmRlcjogLTE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgaW5zZXQ6IC0yMHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4wMyk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnJldmVyc2Uge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuXHJcbiAgICAgICAgLnZpc3VhbC1zaWRlIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwJTtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5tb2R1bGUtdGFnIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjdyZW07XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMi43NXJlbTtcclxuICAgICAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGl0bGUtY29sb3IpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjE1cmVtO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgICAgICBsaW5lLWhlaWdodDogMS44O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZlYXR1cmUtdGFncyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgZ2FwOiAxMnB4O1xyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgcGFkZGluZzogOHB4IDIwcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmOGZhZmM7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY21zLW1vY2t1cCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDUwcHggMTAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xyXG5cclxuICAgICAgICAmLmlzb21ldHJpYyB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTAwMHB4KSByb3RhdGVZKC0xNWRlZykgcm90YXRlWCg1ZGVnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpIHNjYWxlKDEuMDIpO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tb2NrdXAtZGlzcGxheSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiA0MHB4O1xyXG4gICAgei1pbmRleDogMTtcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICB3aWR0aDogMTIwJTtcclxuICAgICAgICBoZWlnaHQ6IDEyMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KFxyXG4gICAgICAgICAgICBjaXJjbGUsXHJcbiAgICAgICAgICAgIHZhcigtLWdsb3ctY29sb3IsIHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjEpKSAwJSxcclxuICAgICAgICAgICAgdHJhbnNwYXJlbnQgNzAlXHJcbiAgICAgICAgKTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICBvcGFjaXR5OiAwLjY7XHJcbiAgICB9XHJcblxyXG4gICAgLmNtcy1tb2NrdXAge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCA1MHB4IDEwMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuOHMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCkgc2NhbGUoMS4wMik7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNjBweCAxMjBweCByZ2JhKDAsIDAsIDAsIDAuMTgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmFwcC12aWV3IHtcclxuICAgICAgICAuY21zLW1vY2t1cCB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMzIwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlcjogOHB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY2hlY2stbGlzdCB7XHJcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xyXG4gICAgZ2FwOiAxNXB4O1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgfVxyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAyMHB4IDE1cHggNTBweDtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGl0bGUtY29sb3IpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZWM2MVwiO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJMaW5lSWNvbnNcIiwgc2Fucy1zZXJpZjtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiAxNXB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMjZweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNnB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4wOCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpO1xyXG5cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi53b3JrZmxvdy1zZWN0aW9uIHtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fcGFkZGluZztcclxuXHJcbiAgICAud29ya2Zsb3ctdGltZWxpbmUge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMDBweDtcclxuICAgICAgICBtYXJnaW46IDQwcHggYXV0byAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMnB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4xKTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNSU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50aW1lbGluZS1wcm9ncmVzcyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAycHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTFweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4xcyBsaW5lYXI7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNSU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC53b3JrLXN0ZXAtaXRlbSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjZzIGN1YmljLWJlemllcigwLjI1LCAxLCAwLjUsIDEpO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyO1xyXG5cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00MHB4KTtcclxuXHJcbiAgICAgICAgICAgICAgICAud29yay1zdGVwIC5zdGVwLW51bWJlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC05NnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC53b3JrLXN0ZXAgLnN0ZXAtbnVtYmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTM1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBpbmhlcml0O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLndvcmstc3RlcCAuc3RlcC1udW1iZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDBweCk7XHJcblxyXG4gICAgICAgICAgICAgICAgLndvcmstc3RlcCAuc3RlcC1udW1iZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC05NnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAud29yay1zdGVwIC5zdGVwLW51bWJlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0zNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogaW5oZXJpdDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC53b3JrLXN0ZXAgLnN0ZXAtbnVtYmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGluaGVyaXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG5cclxuICAgICAgICAgICAgICAgIC53b3JrLXN0ZXAgLnN0ZXAtbnVtYmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAwIDAgMCA4cHggI2ZmZixcclxuICAgICAgICAgICAgICAgICAgICAgICAgMCAxMHB4IDIwcHggcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICAgICAgICAud29yay1zdGVwIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICAgICAgLndvcmstc3RlcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ud29yay1zdGVwLW9sZCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcclxuXHJcbiAgICAgICAgLnN0ZXAtbnVtYmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDE1cHggMzBweCByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4yKTtcclxuXHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN0ZXAtbnVtYmVyIHtcclxuICAgICAgICB3aWR0aDogNzBweDtcclxuICAgICAgICBoZWlnaHQ6IDcwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjRweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0byAzMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTtcclxuICAgICAgICBib3JkZXI6IDJweCBkYXNoZWQgcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMyk7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcclxuXHJcbiAgICAgICAgLy8gQ29ubmVjdG9yIEFycm93XHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZWE1Y1wiOyAvLyBsbmktYXJyb3ctcmlnaHRcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiTGluZUljb25zXCI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgcmlnaHQ6IC00MHB4O1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwcHgsIC01MCUpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcclxuICAgICAgICAgICAgY29sb3I6IHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjMpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaDUge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10aXRsZS1jb2xvcik7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4xNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XHJcbiAgICAgICAgb3BhY2l0eTogMC44O1xyXG4gICAgfVxyXG59XHJcblxyXG4ud29yay1zdGVwIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAuc3RlcC1udW1iZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDcwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA3MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcclxuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA4cHggI2ZmZjtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzpcclxuICAgICAgICAgICAgICAgIDAgMCAwIDhweCAjZmZmLFxyXG4gICAgICAgICAgICAgICAgMCAxMHB4IDIwcHggcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGg1IHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGl0bGUtY29sb3IpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjM1cmVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XHJcbiAgICAgICAgb3BhY2l0eTogMC44O1xyXG4gICAgfVxyXG59XHJcblxyXG4ud29ya2Zsb3ctdGltZWxpbmUgLndvcmstc3RlcC1pdGVtLmFjdGl2ZSAud29yay1zdGVwIC5zdGVwLW51bWJlciB7XHJcbiAgICBhbmltYXRpb246IHB1bHNlLXByaW1hcnkgMnMgaW5maW5pdGU7XHJcbn1cclxuXHJcbi5zZXJ2aWNlLWlubmVyLWNhcmQge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgcGFkZGluZzogMzBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDAsIDAsIDAsIDAuMDQpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XHJcblxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcikgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoNSB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRpdGxlLWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICBpIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG4gICAgICAgIGNvbG9yOiByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC41KSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgIC5jbXMtc2VjdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZzogODBweCAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5kaXNwbGF5LTQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5wb3J0Zm9saW8tc2VjdGlvbiB7XHJcbiAgICAgICAgLmhlcm8tc2VjdGlvbiB7XHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucmVsYXRlZC1wcm9qZWN0IHtcclxuICAgIEBpbmNsdWRlIHNlY3Rpb25fcGFkZGluZztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAuaW1nLWRldGFpbHMge1xyXG4gICAgICAgIGg0IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnByb2R1Y3QtbWFya2V0aW5nLXNlY3Rpb24ge1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9tYXJnaW47XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSA1MHB4KTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgcGFkZGluZzogOTBweCAwO1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9tYXJnaW47XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDMwcHgpO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDQycHggMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwdnc7XHJcbiAgICB9XHJcblxyXG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMClcclxuICAgICAgICBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAgIDIzMGRlZyxcclxuICAgICAgICAgICAgcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMykgMCUsXHJcbiAgICAgICAgICAgIHZhcigtLWNvbG9yLWZmZikgMTAwJVxyXG4gICAgICAgICk7XHJcbn1cclxuXHJcbi5kZXNpZ24tc3lzdGVtLXNlY3Rpb24ge1xyXG4gICAgQGluY2x1ZGUgc2VjdGlvbl9wYWRkaW5nO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC8vIFN5c3RlbSBDYXJkc1xyXG4gICAgLnN5c3RlbS1jYXJkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcbiAgICAgICAgcGFkZGluZzogMzVweDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcmQtaGVhZGVyLWN1c3RvbSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMTVweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG5cclxuICAgICAgICAuaWNvbi13cmFwcGVyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDQ4cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDhweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zeXN0ZW0tdGl0bGUge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIENvbG9yIFN5c3RlbVxyXG4gICAgLmNvbG9yLWdyaWQge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxNjBweCwgMWZyKSk7XHJcbiAgICAgICAgZ2FwOiAyNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb2xvci1zdGFjayB7XHJcbiAgICAgICAgLnN0YWNrLWxhYmVsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY29sb3ItY2FyZCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAyMDBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDMwcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC4zNCwgMS41NiwgMC42NCwgMSk7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgICAuc2hhZGUge1xyXG4gICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG5cclxuICAgICAgICAgICAgLmNvbG9yLWNvZGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNHB4IDEycHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcbiAgICAgICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAuY29sb3ItY29kZSB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFR5cG9ncmFwaHlcclxuICAgIC50eXBvZ3JhcGh5LXNob3djYXNlIHtcclxuICAgICAgICAuZm9udC1kaXNwbGF5IHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcclxuXHJcbiAgICAgICAgICAgIC5tYWluLWZvbnQtbmFtZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNsYW1wKDNyZW0sIDh2dywgNXJlbSk7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgICAgICAgICAgICAgIDEzNWRlZyxcclxuICAgICAgICAgICAgICAgICAgICB2YXIoLS1wcmltYXJ5LWNvbG9yKSAwJSxcclxuICAgICAgICAgICAgICAgICAgICB2YXIoLS1zZWNvbmRhcnktY29sb3IpIDEwMCVcclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XHJcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTJweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmZvbnQtZGVzY3JpcHRpb24ge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZvbnQtd2VpZ2h0cy1ncmlkIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMDBweCwgMWZyKSk7XHJcbiAgICAgICAgICAgIGdhcDogMTVweDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLndlaWdodC1pdGVtIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvcjogdmFyKC0tcHJpbWFyeS1yZ2IpLCAkYWxwaGE6IDAuMDYpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBnYXA6IDhweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvcjogdmFyKC0tcHJpbWFyeS1yZ2IpLCAkYWxwaGE6IDAuMDgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zcHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDIwcHggcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMTUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC53ZWlnaHQtbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAud2VpZ2h0LW5hbWUge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5mdy0zMDAge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5mdy00MDAge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5mdy02MDAge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5mdy03MDAge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jaGFyLXNldHMge1xyXG4gICAgICAgICAgICAuY2hhci1jYXRlZ29yeSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yOiB2YXIoLS1wcmltYXJ5LXJnYiksICRhbHBoYTogMC4wNik7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmNhdGVnb3J5LWxhYmVsIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMS41cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuY2hhci1saW5lIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNsYW1wKDAuOXJlbSwgMnZ3LCAxLjFyZW0pO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYubG93ZXJjYXNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi50ZW1wbGF0ZXMtaGVyby13cmFwIHtcclxuICAgIHBhZGRpbmc6IDkwcHggMCAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGNsaXA7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOlxyXG4gICAgICAgIHJhZGlhbC1ncmFkaWVudCgjZDFkNWRiIDEuMnB4LCB0cmFuc3BhcmVudCAxLjJweCksXHJcbiAgICAgICAgcmFkaWFsLWdyYWRpZW50KCNkMWQ1ZGIgMS4ycHgsIHRyYW5zcGFyZW50IDEuMnB4KTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMzBweCAzMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwLCAxNXB4IDE1cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDo3NjhweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDUwcHggMCAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4udGVtcGxhdGUtdGFicyB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgLm5hdi1waWxscyB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICBnYXA6IDEycHg7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgIHRvcDogYXV0bztcclxuICAgICAgICB6LWluZGV4OiBhdXRvO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogOHB4O1xyXG4gICAgICAgICAgICBnYXA6IDhweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubmF2LWl0ZW0ge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5uYXYtbGluayB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMjBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTRweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC42cyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMSk7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5hY3RpdmUsXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2Vjb25kLXByaW1hcnktZ3JhZGllbnQpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMTVweCByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnByb2R1Y3QtY2FyZCB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyNHB4O1xyXG4gICAgcGFkZGluZzogM3B4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRjb2xvcjogdmFyKC0tcHJpbWFyeS1yZ2IpLCAkYWxwaGE6IDAuMik7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcblxyXG4gICAgICAgIC5wcm9kdWN0LWltZy1ib3gge1xyXG4gICAgICAgICAgICAub3ZlcmxheSB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNiwgMzIsIDQ0LCAwLjQpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYWN0aW9uLWJ0bnMge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWN0LWltZy1ib3gge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxNi8xMTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZjhmYWZjO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjAyKTtcclxuXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyBlYXNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm92ZXJsYXkge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNiwgMzIsIDQ0LCAwKTtcclxuICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDJweCk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2U7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYWN0aW9uLWJ0bnMge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDAuOSk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGdhcDogMTVweDtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpO1xyXG5cclxuICAgICAgICAgICAgLmJ0bi1hY3Qge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICAgICAmLmJ0bi1kZXRhaWxzIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZC1wcmltYXJ5LWdyYWRpZW50KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5iYWRnZS1wYW5uZWwge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMTVweDtcclxuICAgICAgICAgICAgbGVmdDogMTVweDtcclxuICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgei1pbmRleDogMztcclxuXHJcbiAgICAgICAgICAgIC5wcmljZS10YWcge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxNXB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50eXBlLXRhZyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1Y3QtY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZzogMjBweDtcclxuXHJcbiAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3M7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGVzY3JpcHRpb24ge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC43NTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm1ldGEtYm90dG9tIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcblxyXG4gICAgICAgICAgICAuc2FsZXMge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDZweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcblxyXG4gICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLW9wdGlvbi1jb2xvcjIpO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnN0YXR1cyB7XHJcblxyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBUZW1wbGF0ZXMgRGV0aWFpbHMgUGFnZVxyXG5cclxuLm1ldGEtaW5mbyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTJweDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAubWV0YS1pdGVtIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogOHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDZweCAxNHB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjEpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAxMDtcclxuICAgIH1cclxufVxyXG5cclxuLnRlbXBsYXRlLWNvbnRlbnQtc2VjdGlvbiB7XHJcbiAgICBAaW5jbHVkZSBzZWN0aW9uX3BhZGRpbmc7XHJcblxyXG4gICAgLnRlbXBsYXRlLWNvbnRlbnQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsYXNzLWNvbG9yKSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5tYWluLWNvbnRlbnQtd3JhcCB7XHJcbiAgICAgICAgLmltYWdlLWdhbGxlcnktd3JhcCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMjBweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIGltZyB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDIwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTJweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDZweDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50ZW1wbGF0ZS10YWJzLXdyYXAge1xyXG4gICAgICAgICAgICAubmF2LXRhYnMge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xyXG4gICAgICAgICAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5uYXYtaXRlbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAubmF2LWxpbmsge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY2NvbmQtdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiA4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjc7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgZWFzZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3Zlcjpub3QoLmFjdGl2ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAudGFiLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgLnRhYi1wYW5lIHtcclxuICAgICAgICAgICAgICAgICAgICAmLmZhZGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTVweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlLCB0cmFuc2Zvcm0gMC40cyBlYXNlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5zaG93IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5jaGFuZ2Vsb2ctYm94IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnZlcnNpb24tdGltZWxpbmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnZlcnNpb24taXRlbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnZlcnNpb24tZG90IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMjRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4xKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC52ZXJzaW9uLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmRhc2hlZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItc3R5bGU6IGRhc2hlZCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGVzY3JpcHRpb24tYm94IHtcclxuICAgICAgICAgICAgLnNwZWMtZ3JpZCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxNDBweCwgMWZyKSk7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG5cclxuICAgICAgICAgICAgICAgIC5zcGVjLWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDAsIDAsIDAsIDAuMDQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGg2IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNjb25kLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDRweCAwIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY29udGVudC1zZWN0aW9uIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG5cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlY3Rpb24tdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICBtYXJnaW46IDE1cHggMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMTJweDtcclxuXHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciBpIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucHJlbWl1bS1saXN0IHtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwcHggMCAxMnB4IDM1cHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHJcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMTVweDtcclxuICAgICAgICAgICAgICAgIHRvcDogOXB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDhweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogOHB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4zKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmR5bmFtaWMtY29udGVudC13cmFwIHtcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICBsaW5lLWhlaWdodDogMS44O1xyXG4gICAgZm9udC1zaXplOiAxNXB4O1xyXG5cclxuICAgIGgxLFxyXG4gICAgaDIsXHJcbiAgICBoMyxcclxuICAgIGg0LFxyXG4gICAgaDUsXHJcbiAgICBoNiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgdWwsXHJcbiAgICBvbCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICAgICAgbWFyZ2luOiA0MHB4IDA7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAyMHB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgfVxyXG5cclxuICAgIGJsb2NrcXVvdGUge1xyXG4gICAgICAgIHBhZGRpbmc6IDMwcHggNDBweDtcclxuICAgICAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkIHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWY4KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDE2cHggMTZweCAwO1xyXG4gICAgICAgIG1hcmdpbjogNDBweCAwO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgICAgICBjb2xvcjogdmFyKC0tc2VjY29uZC10ZXh0LWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICB0YWJsZSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiA0MHB4IDA7XHJcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuXHJcbiAgICAgICAgdGgsXHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWY4KTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi50ZW1wbGF0ZS1mYXEge1xyXG4gICAgLmZhcS1oZWFkZXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaDMge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuYWNjb3JkaW9uIHtcclxuICAgICAgICAuYWNjb3JkaW9uLWl0ZW0ge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNnB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4yKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmFjY29yZGlvbi1oZWFkZXIge1xyXG4gICAgICAgICAgICAgICAgLmFjY29yZGlvbi1idXR0b24ge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDI0cHggMzBweDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjpub3QoLmNvbGxhcHNlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjAyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjA1KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEuMjVyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMS4yNXJlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxLjI1cmVtO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMXJlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMXJlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMXJlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmFjY29yZGlvbi1ib2R5IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2VjY29uZC10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAyNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubm90ZS1ib3gge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDI0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBoNiB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgZ2FwOiAxNXB4O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgZ2FwOiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAubGFiZWwge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY2NvbmQtdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnZhbHVlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucHJpY2luZy1jYXJkIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xyXG5cclxuICAgIC5wbGFuLW9wdGlvbnMge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcblxyXG4gICAgICAgIC5wbGFuLWxhYmVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpjaGVja2VkKy5wbGFuLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMDIpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAucmFkaW8tY2hlY2sge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5wbGFuLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1mZmYpO1xyXG5cclxuICAgICAgICAgICAgICAgIC5yYWRpby1jaGVjayB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLnBsYW4taW5mbyB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY2NvbmQtdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLnBsYW4tcHJpY2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4wNSk7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciAucGxhbi1jb250ZW50Om5vdChpbnB1dDpjaGVja2VkICsgLnBsYW4tY29udGVudCkge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYWN0aW9uLWJ1dHRvbnMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBnYXA6IDE1cHg7XHJcblxyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubGljZW5zZS1ub3RlIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc2VjY29uZC10ZXh0LWNvbG9yKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgfVxyXG5cclxuICAgIC5hZGRpdGlvbmFsLWluZm8ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgcGFkZGluZzogOHB4IDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG5cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5sYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tc2VjY29uZC10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnZhbHVlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIuY2FydC1zZWN0aW9uIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJvZHktY29sb3IpO1xyXG4gICAgcGFkZGluZzogODBweCAwO1xyXG5cclxuICAgIC5jYXJ0LWNhcmQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjRweDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcnQtdGFibGUge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgICAgIHRoZWFkIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItMjAwKTtcclxuXHJcbiAgICAgICAgICAgIHRoIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxOHB4IDI0cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItNTAwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGJvZHkge1xyXG4gICAgICAgICAgICB0ciB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycztcclxuXHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItMTAwKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjRweDtcclxuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jYXJ0LWl0ZW0taW5mbyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMjBweDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLml0ZW0taW1nLWJveCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA3MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci0yMDApO1xyXG5cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pdGVtLWRldGFpbHMge1xyXG4gICAgICAgICAgICAuaXRlbS1uYW1lIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLml0ZW0tY2F0ZWdvcnkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY2NvbmQtdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLml0ZW0tcHJpY2Uge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICAuYnRuLXJldHVybiB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMTJweCAyNHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLTIwMCk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcblxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XHJcblxyXG4gICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYnRuLXJlbW92ZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWUwMzQ1Nyk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMjQsIDUyLCA4NywgMC4wOCk7XHJcbiAgICAgICAgd2lkdGg6IDM4cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzOHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSk7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAgICAgICBpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWUwMzQ1Nyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDhkZWcpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoMjI0LCA1MiwgODcsIDAuMik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIE9yZGVyIFN1bW1hcnkgQ2FyZCAqL1xyXG4gICAgLnN1bW1hcnktY2FyZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyNHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDMycHg7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgICAgIHRvcDogMTIwcHg7XHJcblxyXG4gICAgICAgIGg1IHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDEwcHg7XHJcblxyXG4gICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnN1bW1hcnktbGlzdCB7XHJcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY2NvbmQtdGV4dC1jb2xvcik7XHJcblxyXG4gICAgICAgICAgICAgICAgLnZhbHVlIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmLnRvdGFsLXJvdyB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMjRweDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAycHggZGFzaGVkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLmxhYmVsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC52YWx1ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jaGVja291dC1hY3Rpb25zIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzJweDtcclxuXHJcbiAgICAgICAgICAgIC5idG4tY2hlY2tvdXQge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgZ2FwOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZm9ybS16LWluZGV4IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG59XHJcblxyXG4uY2hlY2tvdXQtc2VjdGlvbiB7XHJcbiAgICBAZXh0ZW5kIC5jYXJ0LXNlY3Rpb247XHJcblxyXG4gICAgLmNoZWNrb3V0LWZvcm0tYm94IHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4O1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zZWN0aW9uLXRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogODUwO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGdhcDogMTJweDtcclxuXHJcbiAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtLWxhYmVsIHtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtLWNvbnRyb2wsXHJcbiAgICAuZm9ybS1zZWxlY3Qge1xyXG4gICAgICAgIHBhZGRpbmc6IDEycHggMThweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xyXG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMnB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDEycHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItMTAwKTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG5cclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjEpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJltyZWFkb25seV0ge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci0xMDApO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci01MDApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIFN0cmlwZSBFbGVtZW50cyBzdHlsZSAqL1xyXG4gICAgLnBheW1lbnQtaW5wdXQtY29udGFpbmVyIHtcclxuICAgICAgICBwYWRkaW5nOiAxNHB4IDE4cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci0xMDApO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgbWluLWhlaWdodDogNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2hlY2tvdXQtaXRlbS1saXN0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xyXG5cclxuICAgICAgICAuY2hlY2tvdXQtaXRlbSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGdhcDogMTVweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuXHJcbiAgICAgICAgICAgIC5pdGVtLWltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLml0ZW0taW5mbyB7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xyXG5cclxuICAgICAgICAgICAgICAgIC5uYW1lIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnByaWNlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5lbXB0eS1jYXJ0LWNvbnRhaW5lciB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgLmVtcHR5LWlsbHVzdHJhdGlvbiB7XHJcbiAgICAgICAgd2lkdGg6IDE0MHB4O1xyXG4gICAgICAgIGhlaWdodDogMTQwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItMjAwKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXM7XHJcblxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDYwcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci00MDApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpIHNjYWxlKDEuMDUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoMiB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc2VjY29uZC10ZXh0LWNvbG9yKTtcclxuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0bi1zaG9wIHtcclxuICAgICAgICBwYWRkaW5nOiAxNHB4IDQwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ub3JkZXItaGlzdG9yeS1zZWN0aW9uIHtcclxuXHJcbiAgICAmOjpiZWZvcmUsXHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAuY2FydC1zZWN0aW9uIHtcclxuICAgICAgICBwYWRkaW5nOiA2MHB4IDA7XHJcblxyXG4gICAgICAgIC5zdW1tYXJ5LWNhcmQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAuY2FydC1zZWN0aW9uIHtcclxuICAgICAgICAuY2FydC10YWJsZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgdGhlYWQge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGJvZHksXHJcbiAgICAgICAgICAgIHRyLFxyXG4gICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0ciB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG5cclxuICAgICAgICAgICAgICAgICZbZGF0YS1sYWJlbF0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYWJlbCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLTUwMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2FydC1pdGVtLWluZm8ge1xyXG4gICAgICAgICAgICAuaXRlbS1pbWctYm94IHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuaXRlbS1kZXRhaWxzIC5pdGVtLW5hbWUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLyogQ3VzdG9tZXIgRGFzaGJvYXJkIFN0eWxlcyAoT3JkZXIgSGlzdG9yeSwgUHJvZmlsZSkgKi9cclxuLmN1c3RvbWVyLXNlY3Rpb24ge1xyXG4gICAgcGFkZGluZzogODBweCAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYm9keS1jb2xvcik7XHJcblxyXG4gICAgLmN1c3RvbWVyLWNhcmQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjRweDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDI0cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VjdGlvbi10aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDg1MDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDEycHg7XHJcblxyXG4gICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBPcmRlciBIaXN0b3J5IFRhYmxlICovXHJcbiAgICAub3JkZXItdGFibGUge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgICAgIHRoZWFkIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItMTAwKTtcclxuXHJcbiAgICAgICAgICAgIHRoIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxOHB4IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItNTAwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGJvZHkge1xyXG4gICAgICAgICAgICB0ciB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xyXG5cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci0xMDApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICAgICAub3JkZXItaWQge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5zdGF0dXMtYmFkZ2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJi5zdGF0dXMtcGVuZGluZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAxOTMsIDcsIDAuMTUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2IzODYwMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYuc3RhdHVzLWNvbXBsZXRlZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoNDAsIDE2NywgNjksIDAuMTUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzFlN2UzNDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYuc3RhdHVzLWNhbmNlbGxlZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjIwLCA1MywgNjksIDAuMTUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2JkMjEzMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFByb2ZpbGUgU3VtbWFyeSBTdHlsZXMgKi9cclxuLnByb2ZpbGUtc3VtbWFyeSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAucHJvZmlsZS1hdmF0YXIge1xyXG4gICAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLXByaW1hcnktY29sb3IpIDAlLCB2YXIoLS1zZWNvbmRhcnktY29sb3IpIDEwMCUpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgZm9udC1zaXplOiAzNnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMik7XHJcbiAgICAgICAgYm9yZGVyOiA0cHggc29saWQgdmFyKC0tY29sb3ItZmZmKTtcclxuICAgIH1cclxuXHJcbiAgICAuc3RhdC1pdGVtIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLTEwMCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxuICAgICAgICBtaW4td2lkdGg6IDEyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBQcm9maWxlIEZvcm0gU3R5bGVzICovXHJcbi5wcm9maWxlLWZvcm0ge1xyXG4gICAgLmZvcm0tbGFiZWwge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yKTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XHJcblxyXG4gICAgICAgIHNtYWxsIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLTUwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgIHBhZGRpbmc6IDE0cHggMjBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGl0bGUtY29sb3IpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XHJcblxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1mZmYpO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLTUwMCk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmW3JlYWRvbmx5XSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLTEwMCk7XHJcbiAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci01MDApO1xyXG4gICAgICAgICAgICBib3JkZXItc3R5bGU6IGRhc2hlZDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKiBBdXRoZW50aWNhdGlvbiBQYWdlcyAoTG9naW4sIFJlZ2lzdGVyLCBldGMuKSAqL1xyXG4uYXV0aC13cmFwcGVyIHtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDEyMHB4IDAgODBweDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6XHJcbiAgICAgICAgcmFkaWFsLWdyYWRpZW50KFxyXG4gICAgICAgICAgICByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4wOCkgMS41cHgsXHJcbiAgICAgICAgICAgIHRyYW5zcGFyZW50IDEuNXB4XHJcbiAgICAgICAgKSxcclxuICAgICAgICByYWRpYWwtZ3JhZGllbnQocmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMDgpIDEuNXB4LCB0cmFuc3BhcmVudCAxLjVweCk7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246XHJcbiAgICAgICAgMCAwLFxyXG4gICAgICAgIDIwcHggMjBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLTEwMCk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogLTEwJTtcclxuICAgICAgICByaWdodDogLTUlO1xyXG4gICAgICAgIHdpZHRoOiA0MDBweDtcclxuICAgICAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChcclxuICAgICAgICAgICAgY2lyY2xlLFxyXG4gICAgICAgICAgICByZ2JhKHZhcigtLXByaW1hcnktcmdiKSwgMC4wNSkgMCUsXHJcbiAgICAgICAgICAgIHRyYW5zcGFyZW50IDcwJVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTogLTUlO1xyXG4gICAgICAgIGxlZnQ6IC01JTtcclxuICAgICAgICB3aWR0aDogMzAwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzMDBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoXHJcbiAgICAgICAgICAgIGNpcmNsZSxcclxuICAgICAgICAgICAgcmdiYSh2YXIoLS1zZWNvbmRhcnktcmdiKSwgMC4wNSkgMCUsXHJcbiAgICAgICAgICAgIHRyYW5zcGFyZW50IDcwJVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmF1dGgtY2FyZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZmZmKTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMycHg7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAyNXB4IDUwcHggLTEycHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIG1heC13aWR0aDogNTUwcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgICAgIC5hdXRoLWhlYWRlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDQ4cHggNDhweCAwO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAuYnJhbmQtbG9nbyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY2NvbmQtdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hdXRoLWJvZHkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMnB4IDQ4cHggNDhweDtcclxuXHJcbiAgICAgICAgICAgIC5mb3JtLWxhYmVsIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTRweCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMnB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTJweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItMTAwKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG5cclxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWZmZik7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSh2YXIoLS1wcmltYXJ5LXJnYiksIDAuMSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLTEwMCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTRweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1zZWNjb25kLXRleHQtY29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYXV0aC1kaXZpZGVyIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyNHB4IDA7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItNDAwKTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUsXHJcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJ0bi1hdXRoIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTRweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGdhcDogMTBweDtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjIpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMTVweCAyNXB4IHJnYmEodmFyKC0tcHJpbWFyeS1yZ2IpLCAwLjI1KTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYXV0aC1mb290ZXIge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY2NvbmQtdGV4dC1jb2xvcik7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycztcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnBhc3N3b3JkLXRvZ2dsZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMTVweDtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLTQwMCk7XHJcbiAgICB6LWluZGV4OiAxMDtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIC5hdXRoLXdyYXBwZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDgwcHggMTVweCA0MHB4O1xyXG5cclxuICAgICAgICAuYXV0aC1jYXJkIHtcclxuICAgICAgICAgICAgLmF1dGgtaGVhZGVyIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMycHggMjRweCAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYXV0aC1ib2R5IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDI0cHggMjRweCAzMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/