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

.wc-atcp img {
	max-width: 100%;
}

.wc-atcp ::-webkit-scrollbar-track {
	border-radius: 4px;
	background-color: #f5f5f5;
}
.wc-atcp ::-webkit-scrollbar {
	width: 8px;
	background-color: #f5f5f5;
}
.wc-atcp ::-webkit-scrollbar-thumb {
	border-radius: 4px;
	background-color: #ccc;
}
.wc-atcp input::-webkit-outer-spin-button,
.wc-atcp input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
.wc-atcp {
	/* Firefox */
}
.wc-atcp input[type=number] {
	-moz-appearance: textfield;
}

body.wc-atcp-no-scrolling {
	overflow: hidden;
}

.wc-atcp-has-loader .wc-atcp-loader {
	position: absolute;
	left: 0;
	right: 0;
	z-index: 1;
	height: 100%;
	width: 100%;
	display: none;
	place-content: center;
	background: rgba(255, 255, 255, 0.5);
}
.wc-atcp-has-loader .wc-atcp-loader--show {
	display: grid;
}
.wc-atcp-has-loader .wc-atcp-loader .wc-atcp-loader-1__spinner {
	margin: 100px auto;
	width: 40px;
	height: 40px;
	position: relative;
	text-align: center;
	animation: atcp-loader-1-rotate 2s infinite linear;
}
.wc-atcp-has-loader .wc-atcp-loader .wc-atcp-loader-1__dot1, .wc-atcp-has-loader .wc-atcp-loader .wc-atcp-loader-1__dot2 {
	width: 60%;
	height: 60%;
	display: inline-block;
	position: absolute;
	top: 0;
	background-color: #2d2d2d;
	border-radius: 100%;
	animation: actp-loader-1-bounce 2s infinite ease-in-out;
}
.wc-atcp-has-loader .wc-atcp-loader .wc-atcp-loader-1__dot2 {
	top: auto;
	bottom: 0;
	animation-delay: -1s;
}
@keyframes atcp-loader-1-rotate {
	100% {
		transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
	}
}
@keyframes actp-loader-1-bounce {
	0%, 100% {
		transform: scale(0);
		-webkit-transform: scale(0);
	}
	50% {
		transform: scale(1);
		-webkit-transform: scale(1);
	}
}
.wc-atcp-has-loader .wc-atcp-loader .wc-atcp-loader-2__spinner {
	width: 40px;
	height: 40px;
	margin: 100px auto;
	background-color: #333;
	border-radius: 100%;
	animation: atcp-loader-2-scaleout 1s infinite ease-in-out;
}
@keyframes atcp-loader-2-scaleout {
	0% {
		transform: scale(0);
	}
	100% {
		transform: scale(1);
		opacity: 0;
	}
}

.wc-atcp-btn {
	height: 40px;
	border-radius: 4px;
	display: block;
	line-height: 40px;
	text-align: center;
	transition: all 200ms ease-in-out;
	text-decoration: none;
}
.wc-atcp-btn--primary {
	background-color: var(--atcp-primary-bg-color);
	color: var(--atcp-primary-text-color);
	flex: 1;
}
.wc-atcp-btn--primary:hover {
	box-shadow: 0 6px 20px -10px rgba(0, 0, 0, 0.5);
	color: var(--atcp-primary-text-color);
}
.wc-atcp-btn--secondary {
	background-color: var(--atcp-secondary-bg-color);
	color: var(--atcp-secondary-text-color);
	flex: 1;
}
.wc-atcp-btn--secondary:hover {
	box-shadow: 0 6px 20px -10px rgba(0, 0, 0, 0.5);
	color: var(--atcp-secondary-text-color);
}

.wc-atcp {
	display: none;
	justify-content: center;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 99999999999;
}
.wc-atcp--open {
	display: flex;
}

.wc-atcp-popup {
	position: relative;
	width: 900px;
	max-width: 94%;
	z-index: 99999;
	background-color: #fff;
	box-shadow: 0 4px 75px rgba(0, 0, 0, 0.3);
}
.wc-atcp-popup__body {
	overflow-y: auto;
	overflow-x: hidden;
	min-height: 100px;
	max-height: 80vh;
	margin: 15px 0;
}
.wc-atcp-popup-notice {
	display: flex;
	align-items: center;
}
.wc-atcp-popup-notice svg {
	color: var(--atcp-primary-bg-color);
	margin-right: 10px;
}
.wc-atcp-popup-notice span {
	color: #9f9f9f;
	font-size: 16px;
}
.wc-atcp-popup-close {
	background-color: var(--atcp-secondary-bg-color);
	color: var(--atcp-secondary-text-color);
	width: 34px;
	height: 34px;
	border-radius: 50%;
	position: absolute;
	right: -17px;
	top: -17px;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	z-index: 99999999;
	transform: scale(1);
	transition: all 300ms ease-in-out;
	-webkit-user-select: none;
	        user-select: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-tap-highlight-color: transparent;
}
.wc-atcp-popup-close:hover {
	box-shadow: 0 0 30px rgba(28, 28, 28, 0.25);
	border-color: transparent;
	transform: scale(1.3);
}
.wc-atcp-popup-close:active {
	transition: all 50ms ease-in-out;
	box-shadow: 0 0 10px rgba(28, 28, 28, 0.25);
}
.wc-atcp-popup-close svg,
.wc-atcp-popup-close img {
	width: 14px;
}

.wc-atcp-popup-errors {
	margin: 30px;
}

@media (max-width: 768px) {
	.wc-atcp-popup {
		max-width: 90%;
	}
	.wc-atcp-popup__body {
		max-height: 84vh;
	}
}
.wc-atcp-product {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.wc-atcp-product__col1, .wc-atcp-product__col2 {
	flex: 1;
	padding: 15px;
	position: relative;
}
.wc-atcp-product__image {
	width: 100%;
	min-height: 276px;
	height: 100%;
	max-height: 600px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 4px;
	position: relative;
}
.wc-atcp-product__image a {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}
.wc-atcp-product__name {
	margin: 0;
	margin-top: 20px;
	font-size: 28px;
	position: relative;
}
.wc-atcp-product__name a {
	color: inherit;
	text-decoration: none;
}
.wc-atcp-product__price {
	font-size: 20px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 40px;
	margin-bottom: 20px;
}
.wc-atcp-product__qty {
	display: inline-flex;
	align-items: center;
	vertical-align: middle;
	margin-bottom: 20px;
}
.wc-atcp-product__qty-minus, .wc-atcp-product__qty-plus {
	width: 26px;
	height: 26px;
	border: 1px solid #9f9f9f;
	border-radius: 50%;
	font-size: 23px;
	line-height: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	transform: scale(1);
	transition: all 300ms ease-in-out;
	-webkit-user-select: none;
	        user-select: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-tap-highlight-color: transparent;
}
.wc-atcp-product__qty-minus:hover, .wc-atcp-product__qty-plus:hover {
	box-shadow: 0 0 30px rgba(28, 28, 28, 0.25);
	border-color: transparent;
	transform: scale(1.3);
}
.wc-atcp-product__qty-minus:active, .wc-atcp-product__qty-plus:active {
	transition: all 50ms ease-in-out;
	box-shadow: 0 0 10px rgba(28, 28, 28, 0.25);
}
.wc-atcp-product__qty-minus svg, .wc-atcp-product__qty-plus svg {
	width: 16px;
	height: 16px;
}
.wc-atcp-product__qty input {
	width: 40px !important;
	padding: 0 !important;
	margin: 0 10px !important;
	border: none !important;
	border-bottom: 1px solid transparent !important;
	box-shadow: none !important;
	background: transparent !important;
	text-align: center !important;
	outline: none !important;
}
.wc-atcp-product__qty input:focus {
	border-bottom: 1px solid #2d2d2d !important;
}

.wc-atcp-product-grid ul.products {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
	list-style: none !important;
}
.wc-atcp-product-grid--3 li.product,
.wc-atcp-product-grid--3 li.product.last {
	width: 27.32% !important;
	margin-top: 5px !important;
	margin-right: 3% !important;
	margin-bottom: 20px !important;
	margin-left: 3% !important;
}

@media (min-width: 768px) {
	.wc-atcp-product-grid--3 ul.products li.product.last {
		margin-right: 3% !important;
		margin-left: 3% !important;
	}
}
@media (max-width: 768px) {
	.wc-atcp-product__col1, .wc-atcp-product__col2 {
		flex: none;
		width: 100%;
	}
	.wc-atcp-product-grid ul.products {
		flex-wrap: wrap;
	}
	.wc-atcp-product-grid--3 li.product,
	.wc-atcp-product-grid--3 li.product.last {
		width: 94% !important;
		margin-top: 20px !important;
		margin-right: 3% !important;
		margin-bottom: 20px !important;
		margin-left: 3% !important;
	}
}
.wc-atcp-cart {
	box-shadow: 0 -15px 30px -22px rgba(0, 0, 0, 0.15);
	width: 100%;
	background-color: #fff;
}
.wc-atcp-cart__row {
	display: flex;
	align-items: center;
}
.wc-atcp-cart__row:first-child {
	padding-top: 20px;
}
.wc-atcp-cart__row:last-child {
	padding-bottom: 20px;
}
.wc-atcp-cart__label, .wc-atcp-cart__value {
	flex: 1;
}
.wc-atcp-cart__label {
	font-weight: 700;
}
.wc-atcp-cart__value {
	text-align: right;
}
.wc-atcp-cart__cta {
	display: flex;
	width: 100%;
}
.wc-atcp-cart__cta a:first-child {
	margin-right: 5px;
}
.wc-atcp-cart__cta a:last-child {
	margin-left: 5px;
}

@media (max-width: 768px) {
	.wc-atcp-cart {
		position: sticky;
		width: 100%;
	}
	.wc-atcp-cart__cta {
		position: sticky;
		width: 100%;
	}
}
.wc-atcp-dark-mode {
	--atcp-dark-bg-level-1: #222831;
	--atcp-dark-bg-level-2: #2a313c;
	--atcp-dark-text: #eee;
	--atcp-dark-text-dull: #8d8d8d;
	--atcp-dark-shadow: 0 30px 30px -30px rgba(0, 0, 0, 0.4);
	--atcp-dark-shadow-full: 0 0 30px rgba(0, 0, 0, 0.4);
}
.wc-atcp-dark-mode .wc-atcp-loader {
	background: rgba(0, 0, 0, 0.5);
}
.wc-atcp-dark-mode .wc-atcp-loader .wc-atcp-loader-1__dot1, .wc-atcp-dark-mode .wc-atcp-loader .wc-atcp-loader-1__dot2 {
	background-color: var(--atcp-dark-text-dull);
}
.wc-atcp-dark-mode .wc-atcp-loader .wc-atcp-loader-2__spinner {
	background-color: var(--atcp-dark-text-dull);
}
.wc-atcp-dark-mode .wc-atcp-cart,
.wc-atcp-dark-mode .wc-atcp-cart *,
.wc-atcp-dark-mode .wc-atcp-suggested-products *:not(a, button) {
	background-color: transparent;
	color: var(--atcp-dark-text);
}
.wc-atcp-dark-mode .wc-atcp-popup img {
	opacity: 0.6;
	transition: all 300ms ease-in-out;
}
.wc-atcp-dark-mode .wc-atcp-popup img:hover {
	opacity: 1;
}
.wc-atcp-dark-mode .wc-atcp-popup {
	background-color: var(--atcp-dark-bg-level-1);
	border-radius: 8px;
}
.wc-atcp-dark-mode .wc-atcp-popup__body {
	margin-top: 0;
}
.wc-atcp-dark-mode .wc-atcp-popup-notice span {
	color: var(--atcp-dark-text-dull);
}
.wc-atcp-dark-mode .wc-atcp-product__name, .wc-atcp-dark-mode .wc-atcp-product__price, .wc-atcp-dark-mode .wc-atcp-product__qty, .wc-atcp-dark-mode .wc-atcp-product__qty input {
	color: var(--atcp-dark-text);
}
.wc-atcp-dark-mode .wc-atcp-product__image {
	opacity: 0.6;
	transition: all 300ms ease-in-out;
}
.wc-atcp-dark-mode .wc-atcp-product__image:hover {
	opacity: 1;
}
.wc-atcp-dark-mode .wc-atcp-cart {
	box-shadow: 0 -15px 30px -22px rgba(0, 0, 0, 0.35);
}
.wc-atcp-dark-mode .wc-atcp-suggested-products {
	box-shadow: 0 -15px 30px -22px rgba(0, 0, 0, 0.35);
	margin-top: 10px;
	padding-top: 10px;
}
.wc-atcp-dark-mode .wc-atcp-suggested-products .products li {
	padding: 15px;
	background-color: var(--atcp-dark-bg-level-2);
	border-radius: 8px;
}

.wc-atcp-glass-mode {
	--atcp-glass-text: #333;
	--atcp-glass-text-dull: #555;
}
.wc-atcp-glass-mode .wc-atcp-popup {
	background-color: rgba(255, 255, 255, 0.55);
	backdrop-filter: saturate(200%) blur(10px) brightness(1.2);
}
.wc-atcp-glass-mode .wc-atcp-cart,
.wc-atcp-glass-mode .wc-atcp-cart *,
.wc-atcp-glass-mode .wc-atcp-suggested-products *:not(a, button) {
	background-color: transparent;
	color: var(--atcp-glass-text);
}
.wc-atcp-glass-mode .wc-atcp-popup-notice span {
	color: var(--atcp-glass-text-dull);
}
.wc-atcp-glass-mode .wc-atcp-product__name, .wc-atcp-glass-mode .wc-atcp-product__price, .wc-atcp-glass-mode .wc-atcp-product__qty, .wc-atcp-glass-mode .wc-atcp-product__qty input {
	color: var(--atcp-glass-text);
}
.wc-atcp-glass-mode .wc-atcp-cart {
	box-shadow: 0 -15px 30px -22px rgba(0, 0, 0, 0.2);
}
.wc-atcp-glass-mode .wc-atcp-suggested-products {
	box-shadow: 0 -15px 30px -22px rgba(0, 0, 0, 0.2);
	margin-top: 10px;
	padding-top: 10px;
}
.wc-atcp-glass-mode .wc-atcp-suggested-products .products li {
	padding: 15px;
	background-color: rgba(255, 255, 255, 0.4);
	border-radius: 8px;
	transition: all 300ms ease-in-out;
}
.wc-atcp-glass-mode .wc-atcp-suggested-products .products li:hover {
	background-color: rgba(255, 255, 255, 0.6);
}

body.rtl .wc-atcp-popup-close {
	right: auto;
	left: -17px;
}
body.rtl .wc-atcp-popup-notice svg {
	margin-right: 0;
	margin-left: 10px;
}
body.rtl .wc-atcp-product__price {
	margin-right: 0;
	margin-left: 40px;
}
body.rtl .wc-atcp-cart__value {
	text-align: left;
}
body.rtl .wc-atcp-cart__cta a:first-child {
	margin-right: 0;
	margin-left: 5px;
}

/*!
 * animate.css - https://animate.style/
 * Version - 4.1.1
 * Licensed under the MIT license - https://opensource.org/licenses/MIT
 *
 * Copyright (c) 2021 Animate.css
 */
:root {
	--animate-duration: 1s;
	--animate-delay: 1s;
	--animate-repeat: 1;
}

.animate__animated {
	animation-duration: 1s;
	animation-duration: var(--animate-duration);
	animation-fill-mode: both;
}

.animate__animated.animate__infinite {
	animation-iteration-count: infinite;
}

.animate__animated.animate__repeat-1 {
	animation-iteration-count: 1;
	animation-iteration-count: var(--animate-repeat);
}

.animate__animated.animate__repeat-2 {
	animation-iteration-count: 2;
	animation-iteration-count: calc(var(--animate-repeat) * 2);
}

.animate__animated.animate__repeat-3 {
	animation-iteration-count: 3;
	animation-iteration-count: calc(var(--animate-repeat) * 3);
}

.animate__animated.animate__delay-1s {
	animation-delay: 1s;
	animation-delay: var(--animate-delay);
}

.animate__animated.animate__delay-2s {
	animation-delay: 2s;
	animation-delay: calc(var(--animate-delay) * 2);
}

.animate__animated.animate__delay-3s {
	animation-delay: 3s;
	animation-delay: calc(var(--animate-delay) * 3);
}

.animate__animated.animate__delay-4s {
	animation-delay: 4s;
	animation-delay: calc(var(--animate-delay) * 4);
}

.animate__animated.animate__delay-5s {
	animation-delay: 5s;
	animation-delay: calc(var(--animate-delay) * 5);
}

.animate__animated.animate__faster {
	animation-duration: 0.5s;
	animation-duration: calc(var(--animate-duration) / 2);
}

.animate__animated.animate__fast {
	animation-duration: 0.8s;
	animation-duration: calc(var(--animate-duration) * 0.8);
}

.animate__animated.animate__slow {
	animation-duration: 2s;
	animation-duration: calc(var(--animate-duration) * 2);
}

.animate__animated.animate__slower {
	animation-duration: 3s;
	animation-duration: calc(var(--animate-duration) * 3);
}

@media print, (prefers-reduced-motion: reduce) {
	.animate__animated {
		animation-duration: 1ms !important;
		transition-duration: 1ms !important;
		animation-iteration-count: 1 !important;
	}
	.animate__animated[class*=Out] {
		opacity: 0;
	}
}
/* Attention seekers  */
@keyframes bounce {
	from, 20%, 53%, to {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		transform: translate3d(0, 0, 0);
	}
	40%, 43% {
		animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
		transform: translate3d(0, -30px, 0) scaleY(1.1);
	}
	70% {
		animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
		transform: translate3d(0, -15px, 0) scaleY(1.05);
	}
	80% {
		transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		transform: translate3d(0, 0, 0) scaleY(0.95);
	}
	90% {
		transform: translate3d(0, -4px, 0) scaleY(1.02);
	}
}
.animate__bounce {
	animation-name: bounce;
	transform-origin: center bottom;
}
@keyframes flash {
	from, 50%, to {
		opacity: 1;
	}
	25%, 75% {
		opacity: 0;
	}
}
.animate__flash {
	animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes pulse {
	from {
		transform: scale3d(1, 1, 1);
	}
	50% {
		transform: scale3d(1.05, 1.05, 1.05);
	}
	to {
		transform: scale3d(1, 1, 1);
	}
}
.animate__pulse {
	animation-name: pulse;
	animation-timing-function: ease-in-out;
}
@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-name: rubberBand;
}
@keyframes shakeX {
	from, to {
		transform: translate3d(0, 0, 0);
	}
	10%, 30%, 50%, 70%, 90% {
		transform: translate3d(-10px, 0, 0);
	}
	20%, 40%, 60%, 80% {
		transform: translate3d(10px, 0, 0);
	}
}
.animate__shakeX {
	animation-name: shakeX;
}
@keyframes shakeY {
	from, to {
		transform: translate3d(0, 0, 0);
	}
	10%, 30%, 50%, 70%, 90% {
		transform: translate3d(0, -10px, 0);
	}
	20%, 40%, 60%, 80% {
		transform: translate3d(0, 10px, 0);
	}
}
.animate__shakeY {
	animation-name: shakeY;
}
@keyframes headShake {
	0% {
		transform: translateX(0);
	}
	6.5% {
		transform: translateX(-6px) rotateY(-9deg);
	}
	18.5% {
		transform: translateX(5px) rotateY(7deg);
	}
	31.5% {
		transform: translateX(-3px) rotateY(-5deg);
	}
	43.5% {
		transform: translateX(2px) rotateY(3deg);
	}
	50% {
		transform: translateX(0);
	}
}
.animate__headShake {
	animation-timing-function: ease-in-out;
	animation-name: headShake;
}
@keyframes swing {
	20% {
		transform: rotate3d(0, 0, 1, 15deg);
	}
	40% {
		transform: rotate3d(0, 0, 1, -10deg);
	}
	60% {
		transform: rotate3d(0, 0, 1, 5deg);
	}
	80% {
		transform: rotate3d(0, 0, 1, -5deg);
	}
	to {
		transform: rotate3d(0, 0, 1, 0deg);
	}
}
.animate__swing {
	transform-origin: top center;
	animation-name: swing;
}
@keyframes tada {
	from {
		transform: scale3d(1, 1, 1);
	}
	10%, 20% {
		transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
	}
	30%, 50%, 70%, 90% {
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
	}
	40%, 60%, 80% {
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
	}
	to {
		transform: scale3d(1, 1, 1);
	}
}
.animate__tada {
	animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes wobble {
	from {
		transform: translate3d(0, 0, 0);
	}
	15% {
		transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
	}
	30% {
		transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
	}
	45% {
		transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
	}
	60% {
		transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
	}
	75% {
		transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}
.animate__wobble {
	animation-name: wobble;
}
@keyframes jello {
	from, 11.1%, to {
		transform: translate3d(0, 0, 0);
	}
	22.2% {
		transform: skewX(-12.5deg) skewY(-12.5deg);
	}
	33.3% {
		transform: skewX(6.25deg) skewY(6.25deg);
	}
	44.4% {
		transform: skewX(-3.125deg) skewY(-3.125deg);
	}
	55.5% {
		transform: skewX(1.5625deg) skewY(1.5625deg);
	}
	66.6% {
		transform: skewX(-0.78125deg) skewY(-0.78125deg);
	}
	77.7% {
		transform: skewX(0.390625deg) skewY(0.390625deg);
	}
	88.8% {
		transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
	}
}
.animate__jello {
	animation-name: jello;
	transform-origin: center;
}
@keyframes heartBeat {
	0% {
		transform: scale(1);
	}
	14% {
		transform: scale(1.3);
	}
	28% {
		transform: scale(1);
	}
	42% {
		transform: scale(1.3);
	}
	70% {
		transform: scale(1);
	}
}
.animate__heartBeat {
	animation-name: heartBeat;
	animation-duration: 1.3s;
	animation-duration: calc(var(--animate-duration) * 1.3);
	animation-timing-function: ease-in-out;
}

/* Back entrances */
@keyframes backInDown {
	0% {
		transform: translateY(-1200px) scale(0.7);
		opacity: 0.7;
	}
	80% {
		transform: translateY(0) scale(0.7);
		opacity: 0.7;
	}
	100% {
		transform: scale(1);
		opacity: 1;
	}
}
.animate__backInDown {
	animation-name: backInDown;
}
@keyframes backInLeft {
	0% {
		transform: translateX(-2000px) scale(0.7);
		opacity: 0.7;
	}
	80% {
		transform: translateX(0) scale(0.7);
		opacity: 0.7;
	}
	100% {
		transform: scale(1);
		opacity: 1;
	}
}
.animate__backInLeft {
	animation-name: backInLeft;
}
@keyframes backInRight {
	0% {
		transform: translateX(2000px) scale(0.7);
		opacity: 0.7;
	}
	80% {
		transform: translateX(0) scale(0.7);
		opacity: 0.7;
	}
	100% {
		transform: scale(1);
		opacity: 1;
	}
}
.animate__backInRight {
	animation-name: backInRight;
}
@keyframes backInUp {
	0% {
		transform: translateY(1200px) scale(0.7);
		opacity: 0.7;
	}
	80% {
		transform: translateY(0) scale(0.7);
		opacity: 0.7;
	}
	100% {
		transform: scale(1);
		opacity: 1;
	}
}
.animate__backInUp {
	animation-name: backInUp;
}

/* Back exits */
@keyframes backOutDown {
	0% {
		transform: scale(1);
		opacity: 1;
	}
	20% {
		transform: translateY(0) scale(0.7);
		opacity: 0.7;
	}
	100% {
		transform: translateY(700px) scale(0.7);
		opacity: 0.7;
	}
}
.animate__backOutDown {
	animation-name: backOutDown;
}
@keyframes backOutLeft {
	0% {
		transform: scale(1);
		opacity: 1;
	}
	20% {
		transform: translateX(0) scale(0.7);
		opacity: 0.7;
	}
	100% {
		transform: translateX(-2000px) scale(0.7);
		opacity: 0.7;
	}
}
.animate__backOutLeft {
	animation-name: backOutLeft;
}
@keyframes backOutRight {
	0% {
		transform: scale(1);
		opacity: 1;
	}
	20% {
		transform: translateX(0) scale(0.7);
		opacity: 0.7;
	}
	100% {
		transform: translateX(2000px) scale(0.7);
		opacity: 0.7;
	}
}
.animate__backOutRight {
	animation-name: backOutRight;
}
@keyframes backOutUp {
	0% {
		transform: scale(1);
		opacity: 1;
	}
	20% {
		transform: translateY(0) scale(0.7);
		opacity: 0.7;
	}
	100% {
		transform: translateY(-700px) scale(0.7);
		opacity: 0.7;
	}
}
.animate__backOutUp {
	animation-name: backOutUp;
}

/* Bouncing entrances  */
@keyframes bounceIn {
	from, 20%, 40%, 60%, 80%, to {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	0% {
		opacity: 0;
		transform: scale3d(0.3, 0.3, 0.3);
	}
	20% {
		transform: scale3d(1.1, 1.1, 1.1);
	}
	40% {
		transform: scale3d(0.9, 0.9, 0.9);
	}
	60% {
		opacity: 1;
		transform: scale3d(1.03, 1.03, 1.03);
	}
	80% {
		transform: scale3d(0.97, 0.97, 0.97);
	}
	to {
		opacity: 1;
		transform: scale3d(1, 1, 1);
	}
}
.animate__bounceIn {
	animation-duration: 0.75s;
	animation-duration: calc(var(--animate-duration) * 0.75);
	animation-name: bounceIn;
}
@keyframes bounceInDown {
	from, 60%, 75%, 90%, to {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	0% {
		opacity: 0;
		transform: translate3d(0, -3000px, 0) scaleY(3);
	}
	60% {
		opacity: 1;
		transform: translate3d(0, 25px, 0) scaleY(0.9);
	}
	75% {
		transform: translate3d(0, -10px, 0) scaleY(0.95);
	}
	90% {
		transform: translate3d(0, 5px, 0) scaleY(0.985);
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}
.animate__bounceInDown {
	animation-name: bounceInDown;
}
@keyframes bounceInLeft {
	from, 60%, 75%, 90%, to {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	0% {
		opacity: 0;
		transform: translate3d(-3000px, 0, 0) scaleX(3);
	}
	60% {
		opacity: 1;
		transform: translate3d(25px, 0, 0) scaleX(1);
	}
	75% {
		transform: translate3d(-10px, 0, 0) scaleX(0.98);
	}
	90% {
		transform: translate3d(5px, 0, 0) scaleX(0.995);
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}
.animate__bounceInLeft {
	animation-name: bounceInLeft;
}
@keyframes bounceInRight {
	from, 60%, 75%, 90%, to {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	from {
		opacity: 0;
		transform: translate3d(3000px, 0, 0) scaleX(3);
	}
	60% {
		opacity: 1;
		transform: translate3d(-25px, 0, 0) scaleX(1);
	}
	75% {
		transform: translate3d(10px, 0, 0) scaleX(0.98);
	}
	90% {
		transform: translate3d(-5px, 0, 0) scaleX(0.995);
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}
.animate__bounceInRight {
	animation-name: bounceInRight;
}
@keyframes bounceInUp {
	from, 60%, 75%, 90%, to {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	from {
		opacity: 0;
		transform: translate3d(0, 3000px, 0) scaleY(5);
	}
	60% {
		opacity: 1;
		transform: translate3d(0, -20px, 0) scaleY(0.9);
	}
	75% {
		transform: translate3d(0, 10px, 0) scaleY(0.95);
	}
	90% {
		transform: translate3d(0, -5px, 0) scaleY(0.985);
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}
.animate__bounceInUp {
	animation-name: bounceInUp;
}

/* Bouncing exits  */
@keyframes bounceOut {
	20% {
		transform: scale3d(0.9, 0.9, 0.9);
	}
	50%, 55% {
		opacity: 1;
		transform: scale3d(1.1, 1.1, 1.1);
	}
	to {
		opacity: 0;
		transform: scale3d(0.3, 0.3, 0.3);
	}
}
.animate__bounceOut {
	animation-duration: 0.75s;
	animation-duration: calc(var(--animate-duration) * 0.75);
	animation-name: bounceOut;
}
@keyframes bounceOutDown {
	20% {
		transform: translate3d(0, 10px, 0) scaleY(0.985);
	}
	40%, 45% {
		opacity: 1;
		transform: translate3d(0, -20px, 0) scaleY(0.9);
	}
	to {
		opacity: 0;
		transform: translate3d(0, 2000px, 0) scaleY(3);
	}
}
.animate__bounceOutDown {
	animation-name: bounceOutDown;
}
@keyframes bounceOutLeft {
	20% {
		opacity: 1;
		transform: translate3d(20px, 0, 0) scaleX(0.9);
	}
	to {
		opacity: 0;
		transform: translate3d(-2000px, 0, 0) scaleX(2);
	}
}
.animate__bounceOutLeft {
	animation-name: bounceOutLeft;
}
@keyframes bounceOutRight {
	20% {
		opacity: 1;
		transform: translate3d(-20px, 0, 0) scaleX(0.9);
	}
	to {
		opacity: 0;
		transform: translate3d(2000px, 0, 0) scaleX(2);
	}
}
.animate__bounceOutRight {
	animation-name: bounceOutRight;
}
@keyframes bounceOutUp {
	20% {
		transform: translate3d(0, -10px, 0) scaleY(0.985);
	}
	40%, 45% {
		opacity: 1;
		transform: translate3d(0, 20px, 0) scaleY(0.9);
	}
	to {
		opacity: 0;
		transform: translate3d(0, -2000px, 0) scaleY(3);
	}
}
.animate__bounceOutUp {
	animation-name: bounceOutUp;
}

/* Fading entrances  */
@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
.animate__fadeIn {
	animation-name: fadeIn;
}
@keyframes fadeInDown {
	from {
		opacity: 0;
		transform: translate3d(0, -100%, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.animate__fadeInDown {
	animation-name: fadeInDown;
}
@keyframes fadeInDownBig {
	from {
		opacity: 0;
		transform: translate3d(0, -2000px, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.animate__fadeInDownBig {
	animation-name: fadeInDownBig;
}
@keyframes fadeInLeft {
	from {
		opacity: 0;
		transform: translate3d(-100%, 0, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.animate__fadeInLeft {
	animation-name: fadeInLeft;
}
@keyframes fadeInLeftBig {
	from {
		opacity: 0;
		transform: translate3d(-2000px, 0, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.animate__fadeInLeftBig {
	animation-name: fadeInLeftBig;
}
@keyframes fadeInRight {
	from {
		opacity: 0;
		transform: translate3d(100%, 0, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.animate__fadeInRight {
	animation-name: fadeInRight;
}
@keyframes fadeInRightBig {
	from {
		opacity: 0;
		transform: translate3d(2000px, 0, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.animate__fadeInRightBig {
	animation-name: fadeInRightBig;
}
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translate3d(0, 100%, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.animate__fadeInUp {
	animation-name: fadeInUp;
}
@keyframes fadeInUpBig {
	from {
		opacity: 0;
		transform: translate3d(0, 2000px, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.animate__fadeInUpBig {
	animation-name: fadeInUpBig;
}
@keyframes fadeInTopLeft {
	from {
		opacity: 0;
		transform: translate3d(-100%, -100%, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.animate__fadeInTopLeft {
	animation-name: fadeInTopLeft;
}
@keyframes fadeInTopRight {
	from {
		opacity: 0;
		transform: translate3d(100%, -100%, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.animate__fadeInTopRight {
	animation-name: fadeInTopRight;
}
@keyframes fadeInBottomLeft {
	from {
		opacity: 0;
		transform: translate3d(-100%, 100%, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.animate__fadeInBottomLeft {
	animation-name: fadeInBottomLeft;
}
@keyframes fadeInBottomRight {
	from {
		opacity: 0;
		transform: translate3d(100%, 100%, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.animate__fadeInBottomRight {
	animation-name: fadeInBottomRight;
}

/* Fading exits */
@keyframes fadeOut {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}
.animate__fadeOut {
	animation-name: fadeOut;
}
@keyframes fadeOutDown {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
		transform: translate3d(0, 100%, 0);
	}
}
.animate__fadeOutDown {
	animation-name: fadeOutDown;
}
@keyframes fadeOutDownBig {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
		transform: translate3d(0, 2000px, 0);
	}
}
.animate__fadeOutDownBig {
	animation-name: fadeOutDownBig;
}
@keyframes fadeOutLeft {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
		transform: translate3d(-100%, 0, 0);
	}
}
.animate__fadeOutLeft {
	animation-name: fadeOutLeft;
}
@keyframes fadeOutLeftBig {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
		transform: translate3d(-2000px, 0, 0);
	}
}
.animate__fadeOutLeftBig {
	animation-name: fadeOutLeftBig;
}
@keyframes fadeOutRight {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
		transform: translate3d(100%, 0, 0);
	}
}
.animate__fadeOutRight {
	animation-name: fadeOutRight;
}
@keyframes fadeOutRightBig {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
		transform: translate3d(2000px, 0, 0);
	}
}
.animate__fadeOutRightBig {
	animation-name: fadeOutRightBig;
}
@keyframes fadeOutUp {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
		transform: translate3d(0, -100%, 0);
	}
}
.animate__fadeOutUp {
	animation-name: fadeOutUp;
}
@keyframes fadeOutUpBig {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
		transform: translate3d(0, -2000px, 0);
	}
}
.animate__fadeOutUpBig {
	animation-name: fadeOutUpBig;
}
@keyframes fadeOutTopLeft {
	from {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
	to {
		opacity: 0;
		transform: translate3d(-100%, -100%, 0);
	}
}
.animate__fadeOutTopLeft {
	animation-name: fadeOutTopLeft;
}
@keyframes fadeOutTopRight {
	from {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
	to {
		opacity: 0;
		transform: translate3d(100%, -100%, 0);
	}
}
.animate__fadeOutTopRight {
	animation-name: fadeOutTopRight;
}
@keyframes fadeOutBottomRight {
	from {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
	to {
		opacity: 0;
		transform: translate3d(100%, 100%, 0);
	}
}
.animate__fadeOutBottomRight {
	animation-name: fadeOutBottomRight;
}
@keyframes fadeOutBottomLeft {
	from {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
	to {
		opacity: 0;
		transform: translate3d(-100%, 100%, 0);
	}
}
.animate__fadeOutBottomLeft {
	animation-name: fadeOutBottomLeft;
}

/* Flippers */
@keyframes flip {
	from {
		transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
		animation-timing-function: ease-out;
	}
	40% {
		transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
		animation-timing-function: ease-out;
	}
	50% {
		transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
		animation-timing-function: ease-in;
	}
	80% {
		transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
		animation-timing-function: ease-in;
	}
	to {
		transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
		animation-timing-function: ease-in;
	}
}
.animate__animated.animate__flip {
	backface-visibility: visible;
	animation-name: flip;
}
@keyframes flipInX {
	from {
		transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
		animation-timing-function: ease-in;
		opacity: 0;
	}
	40% {
		transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
		animation-timing-function: ease-in;
	}
	60% {
		transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
		opacity: 1;
	}
	80% {
		transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
	}
	to {
		transform: perspective(400px);
	}
}
.animate__flipInX {
	backface-visibility: visible !important;
	animation-name: flipInX;
}
@keyframes flipInY {
	from {
		transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
		animation-timing-function: ease-in;
		opacity: 0;
	}
	40% {
		transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
		animation-timing-function: ease-in;
	}
	60% {
		transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
		opacity: 1;
	}
	80% {
		transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
	}
	to {
		transform: perspective(400px);
	}
}
.animate__flipInY {
	backface-visibility: visible !important;
	animation-name: flipInY;
}
@keyframes flipOutX {
	from {
		transform: perspective(400px);
	}
	30% {
		transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
		opacity: 1;
	}
	to {
		transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
		opacity: 0;
	}
}
.animate__flipOutX {
	animation-duration: 0.75s;
	animation-duration: calc(var(--animate-duration) * 0.75);
	animation-name: flipOutX;
	backface-visibility: visible !important;
}
@keyframes flipOutY {
	from {
		transform: perspective(400px);
	}
	30% {
		transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
		opacity: 1;
	}
	to {
		transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
		opacity: 0;
	}
}
.animate__flipOutY {
	animation-duration: 0.75s;
	animation-duration: calc(var(--animate-duration) * 0.75);
	backface-visibility: visible !important;
	animation-name: flipOutY;
}

/* Lightspeed */
@keyframes lightSpeedInRight {
	from {
		transform: translate3d(100%, 0, 0) skewX(-30deg);
		opacity: 0;
	}
	60% {
		transform: skewX(20deg);
		opacity: 1;
	}
	80% {
		transform: skewX(-5deg);
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}
.animate__lightSpeedInRight {
	animation-name: lightSpeedInRight;
	animation-timing-function: ease-out;
}
@keyframes lightSpeedInLeft {
	from {
		transform: translate3d(-100%, 0, 0) skewX(30deg);
		opacity: 0;
	}
	60% {
		transform: skewX(-20deg);
		opacity: 1;
	}
	80% {
		transform: skewX(5deg);
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}
.animate__lightSpeedInLeft {
	animation-name: lightSpeedInLeft;
	animation-timing-function: ease-out;
}
@keyframes lightSpeedOutRight {
	from {
		opacity: 1;
	}
	to {
		transform: translate3d(100%, 0, 0) skewX(30deg);
		opacity: 0;
	}
}
.animate__lightSpeedOutRight {
	animation-name: lightSpeedOutRight;
	animation-timing-function: ease-in;
}
@keyframes lightSpeedOutLeft {
	from {
		opacity: 1;
	}
	to {
		transform: translate3d(-100%, 0, 0) skewX(-30deg);
		opacity: 0;
	}
}
.animate__lightSpeedOutLeft {
	animation-name: lightSpeedOutLeft;
	animation-timing-function: ease-in;
}

/* Rotating entrances */
@keyframes rotateIn {
	from {
		transform: rotate3d(0, 0, 1, -200deg);
		opacity: 0;
	}
	to {
		transform: translate3d(0, 0, 0);
		opacity: 1;
	}
}
.animate__rotateIn {
	animation-name: rotateIn;
	transform-origin: center;
}
@keyframes rotateInDownLeft {
	from {
		transform: rotate3d(0, 0, 1, -45deg);
		opacity: 0;
	}
	to {
		transform: translate3d(0, 0, 0);
		opacity: 1;
	}
}
.animate__rotateInDownLeft {
	animation-name: rotateInDownLeft;
	transform-origin: left bottom;
}
@keyframes rotateInDownRight {
	from {
		transform: rotate3d(0, 0, 1, 45deg);
		opacity: 0;
	}
	to {
		transform: translate3d(0, 0, 0);
		opacity: 1;
	}
}
.animate__rotateInDownRight {
	animation-name: rotateInDownRight;
	transform-origin: right bottom;
}
@keyframes rotateInUpLeft {
	from {
		transform: rotate3d(0, 0, 1, 45deg);
		opacity: 0;
	}
	to {
		transform: translate3d(0, 0, 0);
		opacity: 1;
	}
}
.animate__rotateInUpLeft {
	animation-name: rotateInUpLeft;
	transform-origin: left bottom;
}
@keyframes rotateInUpRight {
	from {
		transform: rotate3d(0, 0, 1, -90deg);
		opacity: 0;
	}
	to {
		transform: translate3d(0, 0, 0);
		opacity: 1;
	}
}
.animate__rotateInUpRight {
	animation-name: rotateInUpRight;
	transform-origin: right bottom;
}

/* Rotating exits */
@keyframes rotateOut {
	from {
		opacity: 1;
	}
	to {
		transform: rotate3d(0, 0, 1, 200deg);
		opacity: 0;
	}
}
.animate__rotateOut {
	animation-name: rotateOut;
	transform-origin: center;
}
@keyframes rotateOutDownLeft {
	from {
		opacity: 1;
	}
	to {
		transform: rotate3d(0, 0, 1, 45deg);
		opacity: 0;
	}
}
.animate__rotateOutDownLeft {
	animation-name: rotateOutDownLeft;
	transform-origin: left bottom;
}
@keyframes rotateOutDownRight {
	from {
		opacity: 1;
	}
	to {
		transform: rotate3d(0, 0, 1, -45deg);
		opacity: 0;
	}
}
.animate__rotateOutDownRight {
	animation-name: rotateOutDownRight;
	transform-origin: right bottom;
}
@keyframes rotateOutUpLeft {
	from {
		opacity: 1;
	}
	to {
		transform: rotate3d(0, 0, 1, -45deg);
		opacity: 0;
	}
}
.animate__rotateOutUpLeft {
	animation-name: rotateOutUpLeft;
	transform-origin: left bottom;
}
@keyframes rotateOutUpRight {
	from {
		opacity: 1;
	}
	to {
		transform: rotate3d(0, 0, 1, 90deg);
		opacity: 0;
	}
}
.animate__rotateOutUpRight {
	animation-name: rotateOutUpRight;
	transform-origin: right bottom;
}

/* Specials */
@keyframes hinge {
	0% {
		animation-timing-function: ease-in-out;
	}
	20%, 60% {
		transform: rotate3d(0, 0, 1, 80deg);
		animation-timing-function: ease-in-out;
	}
	40%, 80% {
		transform: rotate3d(0, 0, 1, 60deg);
		animation-timing-function: ease-in-out;
		opacity: 1;
	}
	to {
		transform: translate3d(0, 700px, 0);
		opacity: 0;
	}
}
.animate__hinge {
	animation-duration: 2s;
	animation-duration: calc(var(--animate-duration) * 2);
	animation-name: hinge;
	transform-origin: top left;
}
@keyframes jackInTheBox {
	from {
		opacity: 0;
		transform: scale(0.1) rotate(30deg);
		transform-origin: center bottom;
	}
	50% {
		transform: rotate(-10deg);
	}
	70% {
		transform: rotate(3deg);
	}
	to {
		opacity: 1;
		transform: scale(1);
	}
}
.animate__jackInTheBox {
	animation-name: jackInTheBox;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes rollIn {
	from {
		opacity: 0;
		transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.animate__rollIn {
	animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes rollOut {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
		transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
	}
}
.animate__rollOut {
	animation-name: rollOut;
}

/* Zooming entrances */
@keyframes zoomIn {
	from {
		opacity: 0;
		transform: scale3d(0.3, 0.3, 0.3);
	}
	50% {
		opacity: 1;
	}
}
.animate__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);
	}
}
.animate__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);
	}
}
.animate__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);
	}
}
.animate__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);
	}
}
.animate__zoomInUp {
	animation-name: zoomInUp;
}

/* Zooming exits */
@keyframes zoomOut {
	from {
		opacity: 1;
	}
	50% {
		opacity: 0;
		transform: scale3d(0.3, 0.3, 0.3);
	}
	to {
		opacity: 0;
	}
}
.animate__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);
		animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
	}
}
.animate__zoomOutDown {
	animation-name: zoomOutDown;
	transform-origin: center bottom;
}
@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);
	}
}
.animate__zoomOutLeft {
	animation-name: zoomOutLeft;
	transform-origin: left center;
}
@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);
	}
}
.animate__zoomOutRight {
	animation-name: zoomOutRight;
	transform-origin: right center;
}
@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);
		animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
	}
}
.animate__zoomOutUp {
	animation-name: zoomOutUp;
	transform-origin: center bottom;
}

/* Sliding entrances */
@keyframes slideInDown {
	from {
		transform: translate3d(0, -100%, 0);
		visibility: visible;
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}
.animate__slideInDown {
	animation-name: slideInDown;
}
@keyframes slideInLeft {
	from {
		transform: translate3d(-100%, 0, 0);
		visibility: visible;
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}
.animate__slideInLeft {
	animation-name: slideInLeft;
}
@keyframes slideInRight {
	from {
		transform: translate3d(100%, 0, 0);
		visibility: visible;
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}
.animate__slideInRight {
	animation-name: slideInRight;
}
@keyframes slideInUp {
	from {
		transform: translate3d(0, 100%, 0);
		visibility: visible;
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}
.animate__slideInUp {
	animation-name: slideInUp;
}

/* Sliding exits */
@keyframes slideOutDown {
	from {
		transform: translate3d(0, 0, 0);
	}
	to {
		visibility: hidden;
		transform: translate3d(0, 100%, 0);
	}
}
.animate__slideOutDown {
	animation-name: slideOutDown;
}
@keyframes slideOutLeft {
	from {
		transform: translate3d(0, 0, 0);
	}
	to {
		visibility: hidden;
		transform: translate3d(-100%, 0, 0);
	}
}
.animate__slideOutLeft {
	animation-name: slideOutLeft;
}
@keyframes slideOutRight {
	from {
		transform: translate3d(0, 0, 0);
	}
	to {
		visibility: hidden;
		transform: translate3d(100%, 0, 0);
	}
}
.animate__slideOutRight {
	animation-name: slideOutRight;
}
@keyframes slideOutUp {
	from {
		transform: translate3d(0, 0, 0);
	}
	to {
		visibility: hidden;
		transform: translate3d(0, -100%, 0);
	}
}
.animate__slideOutUp {
	animation-name: slideOutUp;
}

.wc-atcp-product-grid .products > div {
	width: 27.32% !important;
	margin-top: 5px !important;
	margin-right: 3% !important;
	margin-bottom: 20px !important;
	margin-left: 3% !important;
}

@media (max-width: 768px) {
	.wc-atcp-product-grid .products > div {
		width: 94% !important;
		margin-top: 20px !important;
		margin-right: 3% !important;
		margin-bottom: 20px !important;
		margin-left: 3% !important;
	}
}
/*# sourceMappingURL=data:application/json;base64,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Q0Q7QUFDQTtDQUVDLDRCQUE0QjtBQUM3QjtBQWFBO0NBQ0M7RUFFQyxrQ0FBa0M7RUFDbEMsbUJBQW1CO0NBQ3BCO0NBQ0E7RUFFQywrQkFBK0I7Q0FDaEM7QUFDRDtBQUNBO0NBRUMseUJBQXlCO0FBQzFCOztBQUVBLGtCQUFrQjtBQVlsQjtDQUNDO0VBRUMsK0JBQStCO0NBQ2hDO0NBQ0E7RUFDQyxrQkFBa0I7RUFFbEIsa0NBQWtDO0NBQ25DO0FBQ0Q7QUFDQTtDQUVDLDRCQUE0QjtBQUM3QjtBQWFBO0NBQ0M7RUFFQywrQkFBK0I7Q0FDaEM7Q0FDQTtFQUNDLGtCQUFrQjtFQUVsQixtQ0FBbUM7Q0FDcEM7QUFDRDtBQUNBO0NBRUMsNEJBQTRCO0FBQzdCO0FBYUE7Q0FDQztFQUVDLCtCQUErQjtDQUNoQztDQUNBO0VBQ0Msa0JBQWtCO0VBRWxCLGtDQUFrQztDQUNuQztBQUNEO0FBQ0E7Q0FFQyw2QkFBNkI7QUFDOUI7QUFhQTtDQUNDO0VBRUMsK0JBQStCO0NBQ2hDO0NBQ0E7RUFDQyxrQkFBa0I7RUFFbEIsbUNBQW1DO0NBQ3BDO0FBQ0Q7QUFDQTtDQUVDLDBCQUEwQjtBQUMzQjs7QUFFQTtDQUNDLHdCQUF3QjtDQUN4QiwwQkFBMEI7Q0FDMUIsMkJBQTJCO0NBQzNCLDhCQUE4QjtDQUM5QiwwQkFBMEI7QUFDM0I7O0FBRUE7Q0FDQztFQUNDLHFCQUFxQjtFQUNyQiwyQkFBMkI7RUFDM0IsMkJBQTJCO0VBQzNCLDhCQUE4QjtFQUM5QiwwQkFBMEI7Q0FDM0I7QUFDRCIsImZpbGUiOiJhdGNwLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi53Yy1hdGNwICosXG4ud2MtYXRjcCAqOjpiZWZvcmUsXG4ud2MtYXRjcCAqOjphZnRlciB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi53Yy1hdGNwIGltZyB7XG5cdG1heC13aWR0aDogMTAwJTtcbn1cblxuLndjLWF0Y3AgOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0YmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbn1cbi53Yy1hdGNwIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuXHR3aWR0aDogOHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xufVxuLndjLWF0Y3AgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0YmFja2dyb3VuZC1jb2xvcjogI2NjYztcbn1cbi53Yy1hdGNwIGlucHV0Ojotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuLndjLWF0Y3AgaW5wdXQ6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cdG1hcmdpbjogMDtcbn1cbi53Yy1hdGNwIHtcblx0LyogRmlyZWZveCAqL1xufVxuLndjLWF0Y3AgaW5wdXRbdHlwZT1udW1iZXJdIHtcblx0LW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG59XG5cbmJvZHkud2MtYXRjcC1uby1zY3JvbGxpbmcge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ud2MtYXRjcC1oYXMtbG9hZGVyIC53Yy1hdGNwLWxvYWRlciB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogMDtcblx0cmlnaHQ6IDA7XG5cdHotaW5kZXg6IDE7XG5cdGhlaWdodDogMTAwJTtcblx0d2lkdGg6IDEwMCU7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdHBsYWNlLWNvbnRlbnQ6IGNlbnRlcjtcblx0YmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLndjLWF0Y3AtaGFzLWxvYWRlciAud2MtYXRjcC1sb2FkZXItLXNob3cge1xuXHRkaXNwbGF5OiBncmlkO1xufVxuLndjLWF0Y3AtaGFzLWxvYWRlciAud2MtYXRjcC1sb2FkZXIgLndjLWF0Y3AtbG9hZGVyLTFfX3NwaW5uZXIge1xuXHRtYXJnaW46IDEwMHB4IGF1dG87XG5cdHdpZHRoOiA0MHB4O1xuXHRoZWlnaHQ6IDQwcHg7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHQtd2Via2l0LWFuaW1hdGlvbjogYXRjcC1sb2FkZXItMS1yb3RhdGUgMnMgaW5maW5pdGUgbGluZWFyO1xuXHRhbmltYXRpb246IGF0Y3AtbG9hZGVyLTEtcm90YXRlIDJzIGluZmluaXRlIGxpbmVhcjtcbn1cbi53Yy1hdGNwLWhhcy1sb2FkZXIgLndjLWF0Y3AtbG9hZGVyIC53Yy1hdGNwLWxvYWRlci0xX19kb3QxLCAud2MtYXRjcC1oYXMtbG9hZGVyIC53Yy1hdGNwLWxvYWRlciAud2MtYXRjcC1sb2FkZXItMV9fZG90MiB7XG5cdHdpZHRoOiA2MCU7XG5cdGhlaWdodDogNjAlO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMmQyZDJkO1xuXHRib3JkZXItcmFkaXVzOiAxMDAlO1xuXHQtd2Via2l0LWFuaW1hdGlvbjogYWN0cC1sb2FkZXItMS1ib3VuY2UgMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG5cdGFuaW1hdGlvbjogYWN0cC1sb2FkZXItMS1ib3VuY2UgMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG59XG4ud2MtYXRjcC1oYXMtbG9hZGVyIC53Yy1hdGNwLWxvYWRlciAud2MtYXRjcC1sb2FkZXItMV9fZG90MiB7XG5cdHRvcDogYXV0bztcblx0Ym90dG9tOiAwO1xuXHQtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTFzO1xuXHRhbmltYXRpb24tZGVsYXk6IC0xcztcbn1cbkAtd2Via2l0LWtleWZyYW1lcyBhdGNwLWxvYWRlci0xLXJvdGF0ZSB7XG5cdDEwMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcblx0fVxufVxuQGtleWZyYW1lcyBhdGNwLWxvYWRlci0xLXJvdGF0ZSB7XG5cdDEwMCUge1xuXHRcdHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuXHR9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYWN0cC1sb2FkZXItMS1ib3VuY2Uge1xuXHQwJSwgMTAwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuXHR9XG5cdDUwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGFjdHAtbG9hZGVyLTEtYm91bmNlIHtcblx0MCUsIDEwMCUge1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMCk7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuXHR9XG5cdDUwJSB7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdH1cbn1cbi53Yy1hdGNwLWhhcy1sb2FkZXIgLndjLWF0Y3AtbG9hZGVyIC53Yy1hdGNwLWxvYWRlci0yX19zcGlubmVyIHtcblx0d2lkdGg6IDQwcHg7XG5cdGhlaWdodDogNDBweDtcblx0bWFyZ2luOiAxMDBweCBhdXRvO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuXHRib3JkZXItcmFkaXVzOiAxMDAlO1xuXHQtd2Via2l0LWFuaW1hdGlvbjogYXRjcC1sb2FkZXItMi1zY2FsZW91dCAxcyBpbmZpbml0ZSBlYXNlLWluLW91dDtcblx0YW5pbWF0aW9uOiBhdGNwLWxvYWRlci0yLXNjYWxlb3V0IDFzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xufVxuQC13ZWJraXQta2V5ZnJhbWVzIGF0Y3AtbG9hZGVyLTItc2NhbGVvdXQge1xuXHQwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuXHR9XG5cdDEwMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGF0Y3AtbG9hZGVyLTItc2NhbGVvdXQge1xuXHQwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMCk7XG5cdH1cblx0MTAwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuXG4ud2MtYXRjcC1idG4ge1xuXHRoZWlnaHQ6IDQwcHg7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGxpbmUtaGVpZ2h0OiA0MHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLndjLWF0Y3AtYnRuLS1wcmltYXJ5IHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYXRjcC1wcmltYXJ5LWJnLWNvbG9yKTtcblx0Y29sb3I6IHZhcigtLWF0Y3AtcHJpbWFyeS10ZXh0LWNvbG9yKTtcblx0ZmxleDogMTtcbn1cbi53Yy1hdGNwLWJ0bi0tcHJpbWFyeTpob3ZlciB7XG5cdGJveC1zaGFkb3c6IDAgNnB4IDIwcHggLTEwcHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuXHRjb2xvcjogdmFyKC0tYXRjcC1wcmltYXJ5LXRleHQtY29sb3IpO1xufVxuLndjLWF0Y3AtYnRuLS1zZWNvbmRhcnkge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hdGNwLXNlY29uZGFyeS1iZy1jb2xvcik7XG5cdGNvbG9yOiB2YXIoLS1hdGNwLXNlY29uZGFyeS10ZXh0LWNvbG9yKTtcblx0ZmxleDogMTtcbn1cbi53Yy1hdGNwLWJ0bi0tc2Vjb25kYXJ5OmhvdmVyIHtcblx0Ym94LXNoYWRvdzogMCA2cHggMjBweCAtMTBweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG5cdGNvbG9yOiB2YXIoLS1hdGNwLXNlY29uZGFyeS10ZXh0LWNvbG9yKTtcbn1cblxuLndjLWF0Y3Age1xuXHRkaXNwbGF5OiBub25lO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHotaW5kZXg6IDk5OTk5OTk5OTk5O1xufVxuLndjLWF0Y3AtLW9wZW4ge1xuXHRkaXNwbGF5OiBmbGV4O1xufVxuXG4ud2MtYXRjcC1wb3B1cCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDkwMHB4O1xuXHRtYXgtd2lkdGg6IDk0JTtcblx0ei1pbmRleDogOTk5OTk7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdGJveC1zaGFkb3c6IDAgNHB4IDc1cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuLndjLWF0Y3AtcG9wdXBfX2JvZHkge1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXHRvdmVyZmxvdy14OiBoaWRkZW47XG5cdG1pbi1oZWlnaHQ6IDEwMHB4O1xuXHRtYXgtaGVpZ2h0OiA4MHZoO1xuXHRtYXJnaW46IDE1cHggMDtcbn1cbi53Yy1hdGNwLXBvcHVwLW5vdGljZSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ud2MtYXRjcC1wb3B1cC1ub3RpY2Ugc3ZnIHtcblx0Y29sb3I6IHZhcigtLWF0Y3AtcHJpbWFyeS1iZy1jb2xvcik7XG5cdG1hcmdpbi1yaWdodDogMTBweDtcbn1cbi53Yy1hdGNwLXBvcHVwLW5vdGljZSBzcGFuIHtcblx0Y29sb3I6ICM5ZjlmOWY7XG5cdGZvbnQtc2l6ZTogMTZweDtcbn1cbi53Yy1hdGNwLXBvcHVwLWNsb3NlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYXRjcC1zZWNvbmRhcnktYmctY29sb3IpO1xuXHRjb2xvcjogdmFyKC0tYXRjcC1zZWNvbmRhcnktdGV4dC1jb2xvcik7XG5cdHdpZHRoOiAzNHB4O1xuXHRoZWlnaHQ6IDM0cHg7XG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRyaWdodDogLTE3cHg7XG5cdHRvcDogLTE3cHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHotaW5kZXg6IDk5OTk5OTk5O1xuXHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG5cdHVzZXItc2VsZWN0OiBub25lO1xuXHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ud2MtYXRjcC1wb3B1cC1jbG9zZTpob3ZlciB7XG5cdGJveC1zaGFkb3c6IDAgMCAzMHB4IHJnYmEoMjgsIDI4LCAyOCwgMC4yNSk7XG5cdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdHRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbn1cbi53Yy1hdGNwLXBvcHVwLWNsb3NlOmFjdGl2ZSB7XG5cdHRyYW5zaXRpb246IGFsbCA1MG1zIGVhc2UtaW4tb3V0O1xuXHRib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDI4LCAyOCwgMjgsIDAuMjUpO1xufVxuLndjLWF0Y3AtcG9wdXAtY2xvc2Ugc3ZnLFxuLndjLWF0Y3AtcG9wdXAtY2xvc2UgaW1nIHtcblx0d2lkdGg6IDE0cHg7XG59XG5cbi53Yy1hdGNwLXBvcHVwLWVycm9ycyB7XG5cdG1hcmdpbjogMzBweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG5cdC53Yy1hdGNwLXBvcHVwIHtcblx0XHRtYXgtd2lkdGg6IDkwJTtcblx0fVxuXHQud2MtYXRjcC1wb3B1cF9fYm9keSB7XG5cdFx0bWF4LWhlaWdodDogODR2aDtcblx0fVxufVxuLndjLWF0Y3AtcHJvZHVjdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0ZmxleC13cmFwOiB3cmFwO1xufVxuLndjLWF0Y3AtcHJvZHVjdF9fY29sMSwgLndjLWF0Y3AtcHJvZHVjdF9fY29sMiB7XG5cdGZsZXg6IDE7XG5cdHBhZGRpbmc6IDE1cHg7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53Yy1hdGNwLXByb2R1Y3RfX2ltYWdlIHtcblx0d2lkdGg6IDEwMCU7XG5cdG1pbi1oZWlnaHQ6IDI3NnB4O1xuXHRoZWlnaHQ6IDEwMCU7XG5cdG1heC1oZWlnaHQ6IDYwMHB4O1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud2MtYXRjcC1wcm9kdWN0X19pbWFnZSBhIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdGJvdHRvbTogMDtcblx0cmlnaHQ6IDA7XG59XG4ud2MtYXRjcC1wcm9kdWN0X19uYW1lIHtcblx0bWFyZ2luOiAwO1xuXHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRmb250LXNpemU6IDI4cHg7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53Yy1hdGNwLXByb2R1Y3RfX25hbWUgYSB7XG5cdGNvbG9yOiBpbmhlcml0O1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4ud2MtYXRjcC1wcm9kdWN0X19wcmljZSB7XG5cdGZvbnQtc2l6ZTogMjBweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRtYXJnaW4tcmlnaHQ6IDQwcHg7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4ud2MtYXRjcC1wcm9kdWN0X19xdHkge1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi53Yy1hdGNwLXByb2R1Y3RfX3F0eS1taW51cywgLndjLWF0Y3AtcHJvZHVjdF9fcXR5LXBsdXMge1xuXHR3aWR0aDogMjZweDtcblx0aGVpZ2h0OiAyNnB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCAjOWY5ZjlmO1xuXHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdGZvbnQtc2l6ZTogMjNweDtcblx0bGluZS1oZWlnaHQ6IDA7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi53Yy1hdGNwLXByb2R1Y3RfX3F0eS1taW51czpob3ZlciwgLndjLWF0Y3AtcHJvZHVjdF9fcXR5LXBsdXM6aG92ZXIge1xuXHRib3gtc2hhZG93OiAwIDAgMzBweCByZ2JhKDI4LCAyOCwgMjgsIDAuMjUpO1xuXHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXHR0cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG59XG4ud2MtYXRjcC1wcm9kdWN0X19xdHktbWludXM6YWN0aXZlLCAud2MtYXRjcC1wcm9kdWN0X19xdHktcGx1czphY3RpdmUge1xuXHR0cmFuc2l0aW9uOiBhbGwgNTBtcyBlYXNlLWluLW91dDtcblx0Ym94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgyOCwgMjgsIDI4LCAwLjI1KTtcbn1cbi53Yy1hdGNwLXByb2R1Y3RfX3F0eS1taW51cyBzdmcsIC53Yy1hdGNwLXByb2R1Y3RfX3F0eS1wbHVzIHN2ZyB7XG5cdHdpZHRoOiAxNnB4O1xuXHRoZWlnaHQ6IDE2cHg7XG59XG4ud2MtYXRjcC1wcm9kdWN0X19xdHkgaW5wdXQge1xuXHR3aWR0aDogNDBweCAhaW1wb3J0YW50O1xuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdG1hcmdpbjogMCAxMHB4ICFpbXBvcnRhbnQ7XG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblx0Ym94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcblx0b3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuLndjLWF0Y3AtcHJvZHVjdF9fcXR5IGlucHV0OmZvY3VzIHtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyZDJkMmQgIWltcG9ydGFudDtcbn1cblxuLndjLWF0Y3AtcHJvZHVjdC1ncmlkIHVsLnByb2R1Y3RzIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0cGFkZGluZzogMDtcblx0bWFyZ2luOiAwO1xuXHRsaXN0LXN0eWxlOiBub25lICFpbXBvcnRhbnQ7XG59XG4ud2MtYXRjcC1wcm9kdWN0LWdyaWQtLTMgbGkucHJvZHVjdCxcbi53Yy1hdGNwLXByb2R1Y3QtZ3JpZC0tMyBsaS5wcm9kdWN0Lmxhc3Qge1xuXHR3aWR0aDogMjcuMzIlICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi10b3A6IDVweCAhaW1wb3J0YW50O1xuXHRtYXJnaW4tcmlnaHQ6IDMlICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi1ib3R0b206IDIwcHggIWltcG9ydGFudDtcblx0bWFyZ2luLWxlZnQ6IDMlICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuXHQud2MtYXRjcC1wcm9kdWN0LWdyaWQtLTMgdWwucHJvZHVjdHMgbGkucHJvZHVjdC5sYXN0IHtcblx0XHRtYXJnaW4tcmlnaHQ6IDMlICFpbXBvcnRhbnQ7XG5cdFx0bWFyZ2luLWxlZnQ6IDMlICFpbXBvcnRhbnQ7XG5cdH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuXHQud2MtYXRjcC1wcm9kdWN0X19jb2wxLCAud2MtYXRjcC1wcm9kdWN0X19jb2wyIHtcblx0XHRmbGV4OiBub25lO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cdC53Yy1hdGNwLXByb2R1Y3QtZ3JpZCB1bC5wcm9kdWN0cyB7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHR9XG5cdC53Yy1hdGNwLXByb2R1Y3QtZ3JpZC0tMyBsaS5wcm9kdWN0LFxuXHQud2MtYXRjcC1wcm9kdWN0LWdyaWQtLTMgbGkucHJvZHVjdC5sYXN0IHtcblx0XHR3aWR0aDogOTQlICFpbXBvcnRhbnQ7XG5cdFx0bWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O1xuXHRcdG1hcmdpbi1yaWdodDogMyUgIWltcG9ydGFudDtcblx0XHRtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG5cdFx0bWFyZ2luLWxlZnQ6IDMlICFpbXBvcnRhbnQ7XG5cdH1cbn1cbi53Yy1hdGNwLWNhcnQge1xuXHRib3gtc2hhZG93OiAwIC0xNXB4IDMwcHggLTIycHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcblx0d2lkdGg6IDEwMCU7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG4ud2MtYXRjcC1jYXJ0X19yb3cge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLndjLWF0Y3AtY2FydF9fcm93OmZpcnN0LWNoaWxkIHtcblx0cGFkZGluZy10b3A6IDIwcHg7XG59XG4ud2MtYXRjcC1jYXJ0X19yb3c6bGFzdC1jaGlsZCB7XG5cdHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuLndjLWF0Y3AtY2FydF9fbGFiZWwsIC53Yy1hdGNwLWNhcnRfX3ZhbHVlIHtcblx0ZmxleDogMTtcbn1cbi53Yy1hdGNwLWNhcnRfX2xhYmVsIHtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcbn1cbi53Yy1hdGNwLWNhcnRfX3ZhbHVlIHtcblx0dGV4dC1hbGlnbjogcmlnaHQ7XG59XG4ud2MtYXRjcC1jYXJ0X19jdGEge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHR3aWR0aDogMTAwJTtcbn1cbi53Yy1hdGNwLWNhcnRfX2N0YSBhOmZpcnN0LWNoaWxkIHtcblx0bWFyZ2luLXJpZ2h0OiA1cHg7XG59XG4ud2MtYXRjcC1jYXJ0X19jdGEgYTpsYXN0LWNoaWxkIHtcblx0bWFyZ2luLWxlZnQ6IDVweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG5cdC53Yy1hdGNwLWNhcnQge1xuXHRcdHBvc2l0aW9uOiBzdGlja3k7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblx0LndjLWF0Y3AtY2FydF9fY3RhIHtcblx0XHRwb3NpdGlvbjogc3RpY2t5O1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG59XG4ud2MtYXRjcC1kYXJrLW1vZGUge1xuXHQtLWF0Y3AtZGFyay1iZy1sZXZlbC0xOiAjMjIyODMxO1xuXHQtLWF0Y3AtZGFyay1iZy1sZXZlbC0yOiAjMmEzMTNjO1xuXHQtLWF0Y3AtZGFyay10ZXh0OiAjZWVlO1xuXHQtLWF0Y3AtZGFyay10ZXh0LWR1bGw6ICM4ZDhkOGQ7XG5cdC0tYXRjcC1kYXJrLXNoYWRvdzogMCAzMHB4IDMwcHggLTMwcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuXHQtLWF0Y3AtZGFyay1zaGFkb3ctZnVsbDogMCAwIDMwcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuLndjLWF0Y3AtZGFyay1tb2RlIC53Yy1hdGNwLWxvYWRlciB7XG5cdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cbi53Yy1hdGNwLWRhcmstbW9kZSAud2MtYXRjcC1sb2FkZXIgLndjLWF0Y3AtbG9hZGVyLTFfX2RvdDEsIC53Yy1hdGNwLWRhcmstbW9kZSAud2MtYXRjcC1sb2FkZXIgLndjLWF0Y3AtbG9hZGVyLTFfX2RvdDIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hdGNwLWRhcmstdGV4dC1kdWxsKTtcbn1cbi53Yy1hdGNwLWRhcmstbW9kZSAud2MtYXRjcC1sb2FkZXIgLndjLWF0Y3AtbG9hZGVyLTJfX3NwaW5uZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hdGNwLWRhcmstdGV4dC1kdWxsKTtcbn1cbi53Yy1hdGNwLWRhcmstbW9kZSAud2MtYXRjcC1jYXJ0LFxuLndjLWF0Y3AtZGFyay1tb2RlIC53Yy1hdGNwLWNhcnQgKixcbi53Yy1hdGNwLWRhcmstbW9kZSAud2MtYXRjcC1zdWdnZXN0ZWQtcHJvZHVjdHMgKjpub3QoYSwgYnV0dG9uKSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRjb2xvcjogdmFyKC0tYXRjcC1kYXJrLXRleHQpO1xufVxuLndjLWF0Y3AtZGFyay1tb2RlIC53Yy1hdGNwLXBvcHVwIGltZyB7XG5cdG9wYWNpdHk6IDAuNjtcblx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xufVxuLndjLWF0Y3AtZGFyay1tb2RlIC53Yy1hdGNwLXBvcHVwIGltZzpob3ZlciB7XG5cdG9wYWNpdHk6IDE7XG59XG4ud2MtYXRjcC1kYXJrLW1vZGUgLndjLWF0Y3AtcG9wdXAge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hdGNwLWRhcmstYmctbGV2ZWwtMSk7XG5cdGJvcmRlci1yYWRpdXM6IDhweDtcbn1cbi53Yy1hdGNwLWRhcmstbW9kZSAud2MtYXRjcC1wb3B1cF9fYm9keSB7XG5cdG1hcmdpbi10b3A6IDA7XG59XG4ud2MtYXRjcC1kYXJrLW1vZGUgLndjLWF0Y3AtcG9wdXAtbm90aWNlIHNwYW4ge1xuXHRjb2xvcjogdmFyKC0tYXRjcC1kYXJrLXRleHQtZHVsbCk7XG59XG4ud2MtYXRjcC1kYXJrLW1vZGUgLndjLWF0Y3AtcHJvZHVjdF9fbmFtZSwgLndjLWF0Y3AtZGFyay1tb2RlIC53Yy1hdGNwLXByb2R1Y3RfX3ByaWNlLCAud2MtYXRjcC1kYXJrLW1vZGUgLndjLWF0Y3AtcHJvZHVjdF9fcXR5LCAud2MtYXRjcC1kYXJrLW1vZGUgLndjLWF0Y3AtcHJvZHVjdF9fcXR5IGlucHV0IHtcblx0Y29sb3I6IHZhcigtLWF0Y3AtZGFyay10ZXh0KTtcbn1cbi53Yy1hdGNwLWRhcmstbW9kZSAud2MtYXRjcC1wcm9kdWN0X19pbWFnZSB7XG5cdG9wYWNpdHk6IDAuNjtcblx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xufVxuLndjLWF0Y3AtZGFyay1tb2RlIC53Yy1hdGNwLXByb2R1Y3RfX2ltYWdlOmhvdmVyIHtcblx0b3BhY2l0eTogMTtcbn1cbi53Yy1hdGNwLWRhcmstbW9kZSAud2MtYXRjcC1jYXJ0IHtcblx0Ym94LXNoYWRvdzogMCAtMTVweCAzMHB4IC0yMnB4IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG59XG4ud2MtYXRjcC1kYXJrLW1vZGUgLndjLWF0Y3Atc3VnZ2VzdGVkLXByb2R1Y3RzIHtcblx0Ym94LXNoYWRvdzogMCAtMTVweCAzMHB4IC0yMnB4IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG5cdG1hcmdpbi10b3A6IDEwcHg7XG5cdHBhZGRpbmctdG9wOiAxMHB4O1xufVxuLndjLWF0Y3AtZGFyay1tb2RlIC53Yy1hdGNwLXN1Z2dlc3RlZC1wcm9kdWN0cyAucHJvZHVjdHMgbGkge1xuXHRwYWRkaW5nOiAxNXB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hdGNwLWRhcmstYmctbGV2ZWwtMik7XG5cdGJvcmRlci1yYWRpdXM6IDhweDtcbn1cblxuLndjLWF0Y3AtZ2xhc3MtbW9kZSB7XG5cdC0tYXRjcC1nbGFzcy10ZXh0OiAjMzMzO1xuXHQtLWF0Y3AtZ2xhc3MtdGV4dC1kdWxsOiAjNTU1O1xufVxuLndjLWF0Y3AtZ2xhc3MtbW9kZSAud2MtYXRjcC1wb3B1cCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSk7XG5cdGJhY2tkcm9wLWZpbHRlcjogc2F0dXJhdGUoMjAwJSkgYmx1cigxMHB4KSBicmlnaHRuZXNzKDEuMik7XG59XG4ud2MtYXRjcC1nbGFzcy1tb2RlIC53Yy1hdGNwLWNhcnQsXG4ud2MtYXRjcC1nbGFzcy1tb2RlIC53Yy1hdGNwLWNhcnQgKixcbi53Yy1hdGNwLWdsYXNzLW1vZGUgLndjLWF0Y3Atc3VnZ2VzdGVkLXByb2R1Y3RzICo6bm90KGEsIGJ1dHRvbikge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0Y29sb3I6IHZhcigtLWF0Y3AtZ2xhc3MtdGV4dCk7XG59XG4ud2MtYXRjcC1nbGFzcy1tb2RlIC53Yy1hdGNwLXBvcHVwLW5vdGljZSBzcGFuIHtcblx0Y29sb3I6IHZhcigtLWF0Y3AtZ2xhc3MtdGV4dC1kdWxsKTtcbn1cbi53Yy1hdGNwLWdsYXNzLW1vZGUgLndjLWF0Y3AtcHJvZHVjdF9fbmFtZSwgLndjLWF0Y3AtZ2xhc3MtbW9kZSAud2MtYXRjcC1wcm9kdWN0X19wcmljZSwgLndjLWF0Y3AtZ2xhc3MtbW9kZSAud2MtYXRjcC1wcm9kdWN0X19xdHksIC53Yy1hdGNwLWdsYXNzLW1vZGUgLndjLWF0Y3AtcHJvZHVjdF9fcXR5IGlucHV0IHtcblx0Y29sb3I6IHZhcigtLWF0Y3AtZ2xhc3MtdGV4dCk7XG59XG4ud2MtYXRjcC1nbGFzcy1tb2RlIC53Yy1hdGNwLWNhcnQge1xuXHRib3gtc2hhZG93OiAwIC0xNXB4IDMwcHggLTIycHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuLndjLWF0Y3AtZ2xhc3MtbW9kZSAud2MtYXRjcC1zdWdnZXN0ZWQtcHJvZHVjdHMge1xuXHRib3gtc2hhZG93OiAwIC0xNXB4IDMwcHggLTIycHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuXHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRwYWRkaW5nLXRvcDogMTBweDtcbn1cbi53Yy1hdGNwLWdsYXNzLW1vZGUgLndjLWF0Y3Atc3VnZ2VzdGVkLXByb2R1Y3RzIC5wcm9kdWN0cyBsaSB7XG5cdHBhZGRpbmc6IDE1cHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xuXHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG59XG4ud2MtYXRjcC1nbGFzcy1tb2RlIC53Yy1hdGNwLXN1Z2dlc3RlZC1wcm9kdWN0cyAucHJvZHVjdHMgbGk6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG59XG5cbmJvZHkucnRsIC53Yy1hdGNwLXBvcHVwLWNsb3NlIHtcblx0cmlnaHQ6IGF1dG87XG5cdGxlZnQ6IC0xN3B4O1xufVxuYm9keS5ydGwgLndjLWF0Y3AtcG9wdXAtbm90aWNlIHN2ZyB7XG5cdG1hcmdpbi1yaWdodDogMDtcblx0bWFyZ2luLWxlZnQ6IDEwcHg7XG59XG5ib2R5LnJ0bCAud2MtYXRjcC1wcm9kdWN0X19wcmljZSB7XG5cdG1hcmdpbi1yaWdodDogMDtcblx0bWFyZ2luLWxlZnQ6IDQwcHg7XG59XG5ib2R5LnJ0bCAud2MtYXRjcC1jYXJ0X192YWx1ZSB7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG59XG5ib2R5LnJ0bCAud2MtYXRjcC1jYXJ0X19jdGEgYTpmaXJzdC1jaGlsZCB7XG5cdG1hcmdpbi1yaWdodDogMDtcblx0bWFyZ2luLWxlZnQ6IDVweDtcbn1cblxuLyohXG4gKiBhbmltYXRlLmNzcyAtIGh0dHBzOi8vYW5pbWF0ZS5zdHlsZS9cbiAqIFZlcnNpb24gLSA0LjEuMVxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlIC0gaHR0cHM6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjEgQW5pbWF0ZS5jc3NcbiAqL1xuOnJvb3Qge1xuXHQtLWFuaW1hdGUtZHVyYXRpb246IDFzO1xuXHQtLWFuaW1hdGUtZGVsYXk6IDFzO1xuXHQtLWFuaW1hdGUtcmVwZWF0OiAxO1xufVxuXG4uYW5pbWF0ZV9fYW5pbWF0ZWQge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG5cdC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiB2YXIoLS1hbmltYXRlLWR1cmF0aW9uKTtcblx0YW5pbWF0aW9uLWR1cmF0aW9uOiB2YXIoLS1hbmltYXRlLWR1cmF0aW9uKTtcblx0LXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuXHRhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xufVxuXG4uYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9faW5maW5pdGUge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuXHRhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cblxuLmFuaW1hdGVfX2FuaW1hdGVkLmFuaW1hdGVfX3JlcGVhdC0xIHtcblx0LXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuXHRhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuXHQtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IHZhcigtLWFuaW1hdGUtcmVwZWF0KTtcblx0YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogdmFyKC0tYW5pbWF0ZS1yZXBlYXQpO1xufVxuXG4uYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fcmVwZWF0LTIge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDI7XG5cdGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDI7XG5cdC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogY2FsYyh2YXIoLS1hbmltYXRlLXJlcGVhdCkgKiAyKTtcblx0YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogY2FsYyh2YXIoLS1hbmltYXRlLXJlcGVhdCkgKiAyKTtcbn1cblxuLmFuaW1hdGVfX2FuaW1hdGVkLmFuaW1hdGVfX3JlcGVhdC0zIHtcblx0LXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAzO1xuXHRhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAzO1xuXHQtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGNhbGModmFyKC0tYW5pbWF0ZS1yZXBlYXQpICogMyk7XG5cdGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGNhbGModmFyKC0tYW5pbWF0ZS1yZXBlYXQpICogMyk7XG59XG5cbi5hbmltYXRlX19hbmltYXRlZC5hbmltYXRlX19kZWxheS0xcyB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAxcztcblx0YW5pbWF0aW9uLWRlbGF5OiAxcztcblx0LXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IHZhcigtLWFuaW1hdGUtZGVsYXkpO1xuXHRhbmltYXRpb24tZGVsYXk6IHZhcigtLWFuaW1hdGUtZGVsYXkpO1xufVxuXG4uYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fZGVsYXktMnMge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMnM7XG5cdGFuaW1hdGlvbi1kZWxheTogMnM7XG5cdC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiBjYWxjKHZhcigtLWFuaW1hdGUtZGVsYXkpICogMik7XG5cdGFuaW1hdGlvbi1kZWxheTogY2FsYyh2YXIoLS1hbmltYXRlLWRlbGF5KSAqIDIpO1xufVxuXG4uYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fZGVsYXktM3Mge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogM3M7XG5cdGFuaW1hdGlvbi1kZWxheTogM3M7XG5cdC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiBjYWxjKHZhcigtLWFuaW1hdGUtZGVsYXkpICogMyk7XG5cdGFuaW1hdGlvbi1kZWxheTogY2FsYyh2YXIoLS1hbmltYXRlLWRlbGF5KSAqIDMpO1xufVxuXG4uYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fZGVsYXktNHMge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogNHM7XG5cdGFuaW1hdGlvbi1kZWxheTogNHM7XG5cdC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiBjYWxjKHZhcigtLWFuaW1hdGUtZGVsYXkpICogNCk7XG5cdGFuaW1hdGlvbi1kZWxheTogY2FsYyh2YXIoLS1hbmltYXRlLWRlbGF5KSAqIDQpO1xufVxuXG4uYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fZGVsYXktNXMge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogNXM7XG5cdGFuaW1hdGlvbi1kZWxheTogNXM7XG5cdC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiBjYWxjKHZhcigtLWFuaW1hdGUtZGVsYXkpICogNSk7XG5cdGFuaW1hdGlvbi1kZWxheTogY2FsYyh2YXIoLS1hbmltYXRlLWRlbGF5KSAqIDUpO1xufVxuXG4uYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fZmFzdGVyIHtcblx0LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNXM7XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogMC41cztcblx0LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgLyAyKTtcblx0YW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pIC8gMik7XG59XG5cbi5hbmltYXRlX19hbmltYXRlZC5hbmltYXRlX19mYXN0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuOHM7XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogMC44cztcblx0LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgKiAwLjgpO1xuXHRhbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgKiAwLjgpO1xufVxuXG4uYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fc2xvdyB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcblx0YW5pbWF0aW9uLWR1cmF0aW9uOiAycztcblx0LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgKiAyKTtcblx0YW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pICogMik7XG59XG5cbi5hbmltYXRlX19hbmltYXRlZC5hbmltYXRlX19zbG93ZXIge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogM3M7XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogM3M7XG5cdC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pICogMyk7XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDMpO1xufVxuXG5AbWVkaWEgcHJpbnQsIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcblx0LmFuaW1hdGVfX2FuaW1hdGVkIHtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMW1zICFpbXBvcnRhbnQ7XG5cdFx0YW5pbWF0aW9uLWR1cmF0aW9uOiAxbXMgIWltcG9ydGFudDtcblx0XHQtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDFtcyAhaW1wb3J0YW50O1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDFtcyAhaW1wb3J0YW50O1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50O1xuXHRcdGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDtcblx0fVxuXHQuYW5pbWF0ZV9fYW5pbWF0ZWRbY2xhc3MqPU91dF0ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cbn1cbi8qIEF0dGVudGlvbiBzZWVrZXJzICAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZSB7XG5cdGZyb20sIDIwJSwgNTMlLCB0byB7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxuXHQ0MCUsIDQzJSB7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApIHNjYWxlWSgxLjEpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApIHNjYWxlWSgxLjEpO1xuXHR9XG5cdDcwJSB7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApIHNjYWxlWSgxLjA1KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNXB4LCAwKSBzY2FsZVkoMS4wNSk7XG5cdH1cblx0ODAlIHtcblx0XHQtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApIHNjYWxlWSgwLjk1KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApIHNjYWxlWSgwLjk1KTtcblx0fVxuXHQ5MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNHB4LCAwKSBzY2FsZVkoMS4wMik7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNHB4LCAwKSBzY2FsZVkoMS4wMik7XG5cdH1cbn1cbkBrZXlmcmFtZXMgYm91bmNlIHtcblx0ZnJvbSwgMjAlLCA1MyUsIHRvIHtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG5cdDQwJSwgNDMlIHtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCkgc2NhbGVZKDEuMSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCkgc2NhbGVZKDEuMSk7XG5cdH1cblx0NzAlIHtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCkgc2NhbGVZKDEuMDUpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApIHNjYWxlWSgxLjA1KTtcblx0fVxuXHQ4MCUge1xuXHRcdC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkgc2NhbGVZKDAuOTUpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkgc2NhbGVZKDAuOTUpO1xuXHR9XG5cdDkwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00cHgsIDApIHNjYWxlWSgxLjAyKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00cHgsIDApIHNjYWxlWSgxLjAyKTtcblx0fVxufVxuLmFuaW1hdGVfX2JvdW5jZSB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTtcblx0YW5pbWF0aW9uLW5hbWU6IGJvdW5jZTtcblx0LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuXHR0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxhc2gge1xuXHRmcm9tLCA1MCUsIHRvIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdDI1JSwgNzUlIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGZsYXNoIHtcblx0ZnJvbSwgNTAlLCB0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHQyNSUsIDc1JSB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuLmFuaW1hdGVfX2ZsYXNoIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxhc2g7XG5cdGFuaW1hdGlvbi1uYW1lOiBmbGFzaDtcbn1cblxuLyogb3JpZ2luYWxseSBhdXRob3JlZCBieSBOaWNrIFBldHRpdCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrcGV0dGl0L2dsaWRlICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2Uge1xuXHRmcm9tIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG5cdH1cblx0NTAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcblx0fVxufVxuQGtleWZyYW1lcyBwdWxzZSB7XG5cdGZyb20ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcblx0fVxuXHQ1MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuXHR9XG59XG4uYW5pbWF0ZV9fcHVsc2Uge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBwdWxzZTtcblx0YW5pbWF0aW9uLW5hbWU6IHB1bHNlO1xuXHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuXHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJ1YmJlckJhbmQge1xuXHRmcm9tIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG5cdH1cblx0MzAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XG5cdH1cblx0NDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XG5cdH1cblx0NTAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XG5cdH1cblx0NjUlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAxLjA1LCAxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMC45NSwgMS4wNSwgMSk7XG5cdH1cblx0NzUlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAwLjk1LCAxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMC45NSwgMSk7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcblx0fVxufVxuQGtleWZyYW1lcyBydWJiZXJCYW5kIHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuXHR9XG5cdDMwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpO1xuXHR9XG5cdDQwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xuXHR9XG5cdDUwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpO1xuXHR9XG5cdDY1JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45NSwgMS4wNSwgMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuOTUsIDEuMDUsIDEpO1xuXHR9XG5cdDc1JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMC45NSwgMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDAuOTUsIDEpO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG5cdH1cbn1cbi5hbmltYXRlX19ydWJiZXJCYW5kIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogcnViYmVyYmFuZDtcblx0YW5pbWF0aW9uLW5hbWU6IHJ1YmJlckJhbmQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzaGFrZVgge1xuXHRmcm9tLCB0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cblx0MTAlLCAzMCUsIDUwJSwgNzAlLCA5MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG5cdH1cblx0MjAlLCA0MCUsIDYwJSwgODAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcblx0fVxufVxuQGtleWZyYW1lcyBzaGFrZVgge1xuXHRmcm9tLCB0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cblx0MTAlLCAzMCUsIDUwJSwgNzAlLCA5MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG5cdH1cblx0MjAlLCA0MCUsIDYwJSwgODAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX3NoYWtlWCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNoYWtleDtcblx0YW5pbWF0aW9uLW5hbWU6IHNoYWtlWDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNoYWtlWSB7XG5cdGZyb20sIHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxuXHQxMCUsIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcblx0fVxuXHQyMCUsIDQwJSwgNjAlLCA4MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIHNoYWtlWSB7XG5cdGZyb20sIHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxuXHQxMCUsIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcblx0fVxuXHQyMCUsIDQwJSwgNjAlLCA4MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuXHR9XG59XG4uYW5pbWF0ZV9fc2hha2VZIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2hha2V5O1xuXHRhbmltYXRpb24tbmFtZTogc2hha2VZO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaGVhZFNoYWtlIHtcblx0MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblx0fVxuXHQ2LjUlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KSByb3RhdGVZKC05ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7XG5cdH1cblx0MTguNSUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlWSg3ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO1xuXHR9XG5cdDMxLjUlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGVZKC01ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyk7XG5cdH1cblx0NDMuNSUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGVZKDNkZWcpO1xuXHR9XG5cdDUwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGhlYWRTaGFrZSB7XG5cdDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cdH1cblx0Ni41JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpO1xuXHR9XG5cdDE4LjUlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZVkoN2RlZyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlWSg3ZGVnKTtcblx0fVxuXHQzMS41JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpO1xuXHR9XG5cdDQzLjUlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZVkoM2RlZyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTtcblx0fVxuXHQ1MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblx0fVxufVxuLmFuaW1hdGVfX2hlYWRTaGFrZSB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG5cdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoZWFkc2hha2U7XG5cdGFuaW1hdGlvbi1uYW1lOiBoZWFkU2hha2U7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzd2luZyB7XG5cdDIwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTtcblx0fVxuXHQ0MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTtcblx0fVxuXHQ2MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpO1xuXHR9XG5cdDgwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgc3dpbmcge1xuXHQyMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XG5cdH1cblx0NDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7XG5cdH1cblx0NjAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA1ZGVnKTtcblx0fVxuXHQ4MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpO1xuXHR9XG59XG4uYW5pbWF0ZV9fc3dpbmcge1xuXHQtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG5cdHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHN3aW5nO1xuXHRhbmltYXRpb24tbmFtZTogc3dpbmc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB0YWRhIHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuXHR9XG5cdDEwJSwgMjAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcblx0fVxuXHQzMCUsIDUwJSwgNzAlLCA5MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcblx0fVxuXHQ0MCUsIDYwJSwgODAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIHRhZGEge1xuXHRmcm9tIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG5cdH1cblx0MTAlLCAyMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xuXHR9XG5cdDMwJSwgNTAlLCA3MCUsIDkwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xuXHR9XG5cdDQwJSwgNjAlLCA4MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG5cdH1cbn1cbi5hbmltYXRlX190YWRhIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogdGFkYTtcblx0YW5pbWF0aW9uLW5hbWU6IHRhZGE7XG59XG5cbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHdvYmJsZSB7XG5cdGZyb20ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG5cdDE1JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcblx0fVxuXHQzMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcblx0fVxuXHQ0NSUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG5cdH1cblx0NjAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7XG5cdH1cblx0NzUlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgd29iYmxlIHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cblx0MTUlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xuXHR9XG5cdDMwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xuXHR9XG5cdDQ1JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcblx0fVxuXHQ2MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTtcblx0fVxuXHQ3NSUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTFkZWcpO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX3dvYmJsZSB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHdvYmJsZTtcblx0YW5pbWF0aW9uLW5hbWU6IHdvYmJsZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGplbGxvIHtcblx0ZnJvbSwgMTEuMSUsIHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxuXHQyMi4yJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7XG5cdFx0dHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xuXHR9XG5cdDMzLjMlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2tld1goNi4yNWRlZykgc2tld1koNi4yNWRlZyk7XG5cdFx0dHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTtcblx0fVxuXHQ0NC40JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcblx0fVxuXHQ1NS41JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcblx0fVxuXHQ2Ni42JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0wLjc4MTI1ZGVnKSBza2V3WSgtMC43ODEyNWRlZyk7XG5cdFx0dHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO1xuXHR9XG5cdDc3LjclIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNrZXdYKDAuMzkwNjI1ZGVnKSBza2V3WSgwLjM5MDYyNWRlZyk7XG5cdH1cblx0ODguOCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGplbGxvIHtcblx0ZnJvbSwgMTEuMSUsIHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxuXHQyMi4yJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7XG5cdFx0dHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xuXHR9XG5cdDMzLjMlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2tld1goNi4yNWRlZykgc2tld1koNi4yNWRlZyk7XG5cdFx0dHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTtcblx0fVxuXHQ0NC40JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcblx0fVxuXHQ1NS41JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcblx0fVxuXHQ2Ni42JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0wLjc4MTI1ZGVnKSBza2V3WSgtMC43ODEyNWRlZyk7XG5cdFx0dHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO1xuXHR9XG5cdDc3LjclIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNrZXdYKDAuMzkwNjI1ZGVnKSBza2V3WSgwLjM5MDYyNWRlZyk7XG5cdH1cblx0ODguOCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpO1xuXHR9XG59XG4uYW5pbWF0ZV9famVsbG8ge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBqZWxsbztcblx0YW5pbWF0aW9uLW5hbWU6IGplbGxvO1xuXHQtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcblx0dHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaGVhcnRCZWF0IHtcblx0MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHR9XG5cdDE0JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xuXHR9XG5cdDI4JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdH1cblx0NDIlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4zKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG5cdH1cblx0NzAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0fVxufVxuQGtleWZyYW1lcyBoZWFydEJlYXQge1xuXHQwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdH1cblx0MTQlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4zKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG5cdH1cblx0MjglIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0fVxuXHQ0MiUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMS4zKTtcblx0fVxuXHQ3MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHR9XG59XG4uYW5pbWF0ZV9faGVhcnRCZWF0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogaGVhcnRiZWF0O1xuXHRhbmltYXRpb24tbmFtZTogaGVhcnRCZWF0O1xuXHQtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMS4zcztcblx0YW5pbWF0aW9uLWR1cmF0aW9uOiAxLjNzO1xuXHQtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDEuMyk7XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDEuMyk7XG5cdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG5cdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xufVxuXG4vKiBCYWNrIGVudHJhbmNlcyAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGJhY2tJbkRvd24ge1xuXHQwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEyMDBweCkgc2NhbGUoMC43KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEyMDBweCkgc2NhbGUoMC43KTtcblx0XHRvcGFjaXR5OiAwLjc7XG5cdH1cblx0ODAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgwLjcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgwLjcpO1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxuXHQxMDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGJhY2tJbkRvd24ge1xuXHQwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEyMDBweCkgc2NhbGUoMC43KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEyMDBweCkgc2NhbGUoMC43KTtcblx0XHRvcGFjaXR5OiAwLjc7XG5cdH1cblx0ODAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgwLjcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgwLjcpO1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxuXHQxMDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG4uYW5pbWF0ZV9fYmFja0luRG93biB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJhY2tpbmRvd247XG5cdGFuaW1hdGlvbi1uYW1lOiBiYWNrSW5Eb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYmFja0luTGVmdCB7XG5cdDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSgwLjcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSgwLjcpO1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxuXHQ4MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuNyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuNyk7XG5cdFx0b3BhY2l0eTogMC43O1xuXHR9XG5cdDEwMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cbkBrZXlmcmFtZXMgYmFja0luTGVmdCB7XG5cdDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSgwLjcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSgwLjcpO1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxuXHQ4MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuNyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuNyk7XG5cdFx0b3BhY2l0eTogMC43O1xuXHR9XG5cdDEwMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cbi5hbmltYXRlX19iYWNrSW5MZWZ0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogYmFja2lubGVmdDtcblx0YW5pbWF0aW9uLW5hbWU6IGJhY2tJbkxlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBiYWNrSW5SaWdodCB7XG5cdDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpIHNjYWxlKDAuNyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCkgc2NhbGUoMC43KTtcblx0XHRvcGFjaXR5OiAwLjc7XG5cdH1cblx0ODAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSBzY2FsZSgwLjcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSBzY2FsZSgwLjcpO1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxuXHQxMDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGJhY2tJblJpZ2h0IHtcblx0MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCkgc2NhbGUoMC43KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KSBzY2FsZSgwLjcpO1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxuXHQ4MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuNyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuNyk7XG5cdFx0b3BhY2l0eTogMC43O1xuXHR9XG5cdDEwMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cbi5hbmltYXRlX19iYWNrSW5SaWdodCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJhY2tpbnJpZ2h0O1xuXHRhbmltYXRpb24tbmFtZTogYmFja0luUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBiYWNrSW5VcCB7XG5cdDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMjAwcHgpIHNjYWxlKDAuNyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEyMDBweCkgc2NhbGUoMC43KTtcblx0XHRvcGFjaXR5OiAwLjc7XG5cdH1cblx0ODAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgwLjcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgwLjcpO1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxuXHQxMDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGJhY2tJblVwIHtcblx0MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEyMDBweCkgc2NhbGUoMC43KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTIwMHB4KSBzY2FsZSgwLjcpO1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxuXHQ4MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDAuNyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDAuNyk7XG5cdFx0b3BhY2l0eTogMC43O1xuXHR9XG5cdDEwMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cbi5hbmltYXRlX19iYWNrSW5VcCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJhY2tpbnVwO1xuXHRhbmltYXRpb24tbmFtZTogYmFja0luVXA7XG59XG5cbi8qIEJhY2sgZXhpdHMgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBiYWNrT3V0RG93biB7XG5cdDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdDIwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMC43KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMC43KTtcblx0XHRvcGFjaXR5OiAwLjc7XG5cdH1cblx0MTAwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzAwcHgpIHNjYWxlKDAuNyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDcwMHB4KSBzY2FsZSgwLjcpO1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxufVxuQGtleWZyYW1lcyBiYWNrT3V0RG93biB7XG5cdDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdDIwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMC43KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMC43KTtcblx0XHRvcGFjaXR5OiAwLjc7XG5cdH1cblx0MTAwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzAwcHgpIHNjYWxlKDAuNyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDcwMHB4KSBzY2FsZSgwLjcpO1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxufVxuLmFuaW1hdGVfX2JhY2tPdXREb3duIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogYmFja291dGRvd247XG5cdGFuaW1hdGlvbi1uYW1lOiBiYWNrT3V0RG93bjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJhY2tPdXRMZWZ0IHtcblx0MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0MjAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSBzY2FsZSgwLjcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSBzY2FsZSgwLjcpO1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxuXHQxMDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSgwLjcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSgwLjcpO1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxufVxuQGtleWZyYW1lcyBiYWNrT3V0TGVmdCB7XG5cdDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdDIwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgc2NhbGUoMC43KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgc2NhbGUoMC43KTtcblx0XHRvcGFjaXR5OiAwLjc7XG5cdH1cblx0MTAwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCkgc2NhbGUoMC43KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCkgc2NhbGUoMC43KTtcblx0XHRvcGFjaXR5OiAwLjc7XG5cdH1cbn1cbi5hbmltYXRlX19iYWNrT3V0TGVmdCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJhY2tvdXRsZWZ0O1xuXHRhbmltYXRpb24tbmFtZTogYmFja091dExlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBiYWNrT3V0UmlnaHQge1xuXHQwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHQyMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuNyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuNyk7XG5cdFx0b3BhY2l0eTogMC43O1xuXHR9XG5cdDEwMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCkgc2NhbGUoMC43KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KSBzY2FsZSgwLjcpO1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxufVxuQGtleWZyYW1lcyBiYWNrT3V0UmlnaHQge1xuXHQwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHQyMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuNyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHNjYWxlKDAuNyk7XG5cdFx0b3BhY2l0eTogMC43O1xuXHR9XG5cdDEwMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCkgc2NhbGUoMC43KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KSBzY2FsZSgwLjcpO1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxufVxuLmFuaW1hdGVfX2JhY2tPdXRSaWdodCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJhY2tvdXRyaWdodDtcblx0YW5pbWF0aW9uLW5hbWU6IGJhY2tPdXRSaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJhY2tPdXRVcCB7XG5cdDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdDIwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMC43KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMC43KTtcblx0XHRvcGFjaXR5OiAwLjc7XG5cdH1cblx0MTAwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwMHB4KSBzY2FsZSgwLjcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzAwcHgpIHNjYWxlKDAuNyk7XG5cdFx0b3BhY2l0eTogMC43O1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGJhY2tPdXRVcCB7XG5cdDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdDIwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMC43KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMC43KTtcblx0XHRvcGFjaXR5OiAwLjc7XG5cdH1cblx0MTAwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwMHB4KSBzY2FsZSgwLjcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzAwcHgpIHNjYWxlKDAuNyk7XG5cdFx0b3BhY2l0eTogMC43O1xuXHR9XG59XG4uYW5pbWF0ZV9fYmFja091dFVwIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogYmFja291dHVwO1xuXHRhbmltYXRpb24tbmFtZTogYmFja091dFVwO1xufVxuXG4vKiBCb3VuY2luZyBlbnRyYW5jZXMgICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW4ge1xuXHRmcm9tLCAyMCUsIDQwJSwgNjAlLCA4MCUsIHRvIHtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXHR9XG5cdDAlIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcblx0fVxuXHQyMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcblx0fVxuXHQ0MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcblx0fVxuXHQ2MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xuXHR9XG5cdDgwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45NywgMC45NywgMC45Nyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuOTcsIDAuOTcsIDAuOTcpO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcblx0fVxufVxuQGtleWZyYW1lcyBib3VuY2VJbiB7XG5cdGZyb20sIDIwJSwgNDAlLCA2MCUsIDgwJSwgdG8ge1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdH1cblx0MCUge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuXHR9XG5cdDIwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuXHR9XG5cdDQwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xuXHR9XG5cdDYwJSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XG5cdH1cblx0ODAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjk3LCAwLjk3LCAwLjk3KTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMC45NywgMC45NywgMC45Nyk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuXHR9XG59XG4uYW5pbWF0ZV9fYm91bmNlSW4ge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7XG5cdC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pICogMC43NSk7XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDAuNzUpO1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2Vpbjtcblx0YW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5Eb3duIHtcblx0ZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdH1cblx0MCUge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApIHNjYWxlWSgzKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApIHNjYWxlWSgzKTtcblx0fVxuXHQ2MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApIHNjYWxlWSgwLjkpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCkgc2NhbGVZKDAuOSk7XG5cdH1cblx0NzUlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHNjYWxlWSgwLjk1KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKSBzY2FsZVkoMC45NSk7XG5cdH1cblx0OTAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKSBzY2FsZVkoMC45ODUpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKSBzY2FsZVkoMC45ODUpO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuQGtleWZyYW1lcyBib3VuY2VJbkRvd24ge1xuXHRmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0fVxuXHQwJSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCkgc2NhbGVZKDMpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCkgc2NhbGVZKDMpO1xuXHR9XG5cdDYwJSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCkgc2NhbGVZKDAuOSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKSBzY2FsZVkoMC45KTtcblx0fVxuXHQ3NSUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkgc2NhbGVZKDAuOTUpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHNjYWxlWSgwLjk1KTtcblx0fVxuXHQ5MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApIHNjYWxlWSgwLjk4NSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApIHNjYWxlWSgwLjk4NSk7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG4uYW5pbWF0ZV9fYm91bmNlSW5Eb3duIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlaW5kb3duO1xuXHRhbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5MZWZ0IHtcblx0ZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdH1cblx0MCUge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApIHNjYWxlWCgzKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApIHNjYWxlWCgzKTtcblx0fVxuXHQ2MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApIHNjYWxlWCgxKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApIHNjYWxlWCgxKTtcblx0fVxuXHQ3NSUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCkgc2NhbGVYKDAuOTgpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApIHNjYWxlWCgwLjk4KTtcblx0fVxuXHQ5MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApIHNjYWxlWCgwLjk5NSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApIHNjYWxlWCgwLjk5NSk7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7XG5cdGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXHR9XG5cdDAlIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKSBzY2FsZVgoMyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKSBzY2FsZVgoMyk7XG5cdH1cblx0NjAlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKSBzY2FsZVgoMSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKSBzY2FsZVgoMSk7XG5cdH1cblx0NzUlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApIHNjYWxlWCgwLjk4KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKSBzY2FsZVgoMC45OCk7XG5cdH1cblx0OTAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKSBzY2FsZVgoMC45OTUpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKSBzY2FsZVgoMC45OTUpO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2JvdW5jZUluTGVmdCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZWlubGVmdDtcblx0YW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluTGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQge1xuXHRmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0fVxuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApIHNjYWxlWCgzKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCkgc2NhbGVYKDMpO1xuXHR9XG5cdDYwJSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApIHNjYWxlWCgxKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKSBzY2FsZVgoMSk7XG5cdH1cblx0NzUlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCkgc2NhbGVYKDAuOTgpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCkgc2NhbGVYKDAuOTgpO1xuXHR9XG5cdDkwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApIHNjYWxlWCgwLjk5NSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKSBzY2FsZVgoMC45OTUpO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuQGtleWZyYW1lcyBib3VuY2VJblJpZ2h0IHtcblx0ZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdH1cblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKSBzY2FsZVgoMyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApIHNjYWxlWCgzKTtcblx0fVxuXHQ2MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKSBzY2FsZVgoMSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCkgc2NhbGVYKDEpO1xuXHR9XG5cdDc1JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApIHNjYWxlWCgwLjk4KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApIHNjYWxlWCgwLjk4KTtcblx0fVxuXHQ5MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKSBzY2FsZVgoMC45OTUpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCkgc2NhbGVYKDAuOTk1KTtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbi5hbmltYXRlX19ib3VuY2VJblJpZ2h0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlaW5yaWdodDtcblx0YW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJblVwIHtcblx0ZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdH1cblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKSBzY2FsZVkoNSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApIHNjYWxlWSg1KTtcblx0fVxuXHQ2MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKSBzY2FsZVkoMC45KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKSBzY2FsZVkoMC45KTtcblx0fVxuXHQ3NSUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSBzY2FsZVkoMC45NSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSBzY2FsZVkoMC45NSk7XG5cdH1cblx0OTAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCkgc2NhbGVZKDAuOTg1KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApIHNjYWxlWSgwLjk4NSk7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZUluVXAge1xuXHRmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0fVxuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApIHNjYWxlWSg1KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCkgc2NhbGVZKDUpO1xuXHR9XG5cdDYwJSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApIHNjYWxlWSgwLjkpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApIHNjYWxlWSgwLjkpO1xuXHR9XG5cdDc1JSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApIHNjYWxlWSgwLjk1KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApIHNjYWxlWSgwLjk1KTtcblx0fVxuXHQ5MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKSBzY2FsZVkoMC45ODUpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCkgc2NhbGVZKDAuOTg1KTtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbi5hbmltYXRlX19ib3VuY2VJblVwIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlaW51cDtcblx0YW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluVXA7XG59XG5cbi8qIEJvdW5jaW5nIGV4aXRzICAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dCB7XG5cdDIwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xuXHR9XG5cdDUwJSwgNTUlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgYm91bmNlT3V0IHtcblx0MjAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XG5cdH1cblx0NTAlLCA1NSUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcblx0fVxufVxuLmFuaW1hdGVfX2JvdW5jZU91dCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1cztcblx0YW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1cztcblx0LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgKiAwLjc1KTtcblx0YW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pICogMC43NSk7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZW91dDtcblx0YW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dERvd24ge1xuXHQyMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSBzY2FsZVkoMC45ODUpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgc2NhbGVZKDAuOTg1KTtcblx0fVxuXHQ0MCUsIDQ1JSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApIHNjYWxlWSgwLjkpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApIHNjYWxlWSgwLjkpO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApIHNjYWxlWSgzKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCkgc2NhbGVZKDMpO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZU91dERvd24ge1xuXHQyMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSBzY2FsZVkoMC45ODUpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgc2NhbGVZKDAuOTg1KTtcblx0fVxuXHQ0MCUsIDQ1JSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApIHNjYWxlWSgwLjkpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApIHNjYWxlWSgwLjkpO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApIHNjYWxlWSgzKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCkgc2NhbGVZKDMpO1xuXHR9XG59XG4uYW5pbWF0ZV9fYm91bmNlT3V0RG93biB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZW91dGRvd247XG5cdGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXREb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0TGVmdCB7XG5cdDIwJSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCkgc2NhbGVYKDAuOSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMHB4LCAwLCAwKSBzY2FsZVgoMC45KTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCkgc2NhbGVYKDIpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCkgc2NhbGVYKDIpO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZU91dExlZnQge1xuXHQyMCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApIHNjYWxlWCgwLjkpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCkgc2NhbGVYKDAuOSk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApIHNjYWxlWCgyKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApIHNjYWxlWCgyKTtcblx0fVxufVxuLmFuaW1hdGVfX2JvdW5jZU91dExlZnQge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VvdXRsZWZ0O1xuXHRhbmltYXRpb24tbmFtZTogYm91bmNlT3V0TGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dFJpZ2h0IHtcblx0MjAlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCkgc2NhbGVYKDAuOSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCkgc2NhbGVYKDAuOSk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCkgc2NhbGVYKDIpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKSBzY2FsZVgoMik7XG5cdH1cbn1cbkBrZXlmcmFtZXMgYm91bmNlT3V0UmlnaHQge1xuXHQyMCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKSBzY2FsZVgoMC45KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKSBzY2FsZVgoMC45KTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKSBzY2FsZVgoMik7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApIHNjYWxlWCgyKTtcblx0fVxufVxuLmFuaW1hdGVfX2JvdW5jZU91dFJpZ2h0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlb3V0cmlnaHQ7XG5cdGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRSaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dFVwIHtcblx0MjAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHNjYWxlWSgwLjk4NSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkgc2NhbGVZKDAuOTg1KTtcblx0fVxuXHQ0MCUsIDQ1JSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCkgc2NhbGVZKDAuOSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKSBzY2FsZVkoMC45KTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCkgc2NhbGVZKDMpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCkgc2NhbGVZKDMpO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZU91dFVwIHtcblx0MjAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHNjYWxlWSgwLjk4NSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkgc2NhbGVZKDAuOTg1KTtcblx0fVxuXHQ0MCUsIDQ1JSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCkgc2NhbGVZKDAuOSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKSBzY2FsZVkoMC45KTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCkgc2NhbGVZKDMpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCkgc2NhbGVZKDMpO1xuXHR9XG59XG4uYW5pbWF0ZV9fYm91bmNlT3V0VXAge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VvdXR1cDtcblx0YW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFVwO1xufVxuXG4vKiBGYWRpbmcgZW50cmFuY2VzICAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbiB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluIHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxufVxuLmFuaW1hdGVfX2ZhZGVJbiB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVpbjtcblx0YW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluRG93biB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2ZhZGVJbkRvd24ge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlaW5kb3duO1xuXHRhbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG4uYW5pbWF0ZV9fZmFkZUluRG93bkJpZyB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVpbmRvd25iaWc7XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duQmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluTGVmdCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuQGtleWZyYW1lcyBmYWRlSW5MZWZ0IHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG4uYW5pbWF0ZV9fZmFkZUluTGVmdCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVpbmxlZnQ7XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbi5hbmltYXRlX19mYWRlSW5MZWZ0QmlnIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZWlubGVmdGJpZztcblx0YW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRCaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5SaWdodCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG4uYW5pbWF0ZV9fZmFkZUluUmlnaHQge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlaW5yaWdodDtcblx0YW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuQGtleWZyYW1lcyBmYWRlSW5SaWdodEJpZyB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG4uYW5pbWF0ZV9fZmFkZUluUmlnaHRCaWcge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlaW5yaWdodGJpZztcblx0YW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0QmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXAge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJblVwIHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2ZhZGVJblVwIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZWludXA7XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblVwQmlnIHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluVXBCaWcge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2ZhZGVJblVwQmlnIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZWludXBiaWc7XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcEJpZztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblRvcExlZnQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgLTEwMCUsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIC0xMDAlLCAwKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuQGtleWZyYW1lcyBmYWRlSW5Ub3BMZWZ0IHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIC0xMDAlLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAtMTAwJSwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbi5hbmltYXRlX19mYWRlSW5Ub3BMZWZ0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZWludG9wbGVmdDtcblx0YW5pbWF0aW9uLW5hbWU6IGZhZGVJblRvcExlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Ub3BSaWdodCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIC0xMDAlLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIC0xMDAlLCAwKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuQGtleWZyYW1lcyBmYWRlSW5Ub3BSaWdodCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIC0xMDAlLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIC0xMDAlLCAwKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2ZhZGVJblRvcFJpZ2h0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZWludG9wcmlnaHQ7XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Ub3BSaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkJvdHRvbUxlZnQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMTAwJSwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMTAwJSwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluQm90dG9tTGVmdCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAxMDAlLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAxMDAlLCAwKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2ZhZGVJbkJvdHRvbUxlZnQge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlaW5ib3R0b21sZWZ0O1xuXHRhbmltYXRpb24tbmFtZTogZmFkZUluQm90dG9tTGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkJvdHRvbVJpZ2h0IHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMTAwJSwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAxMDAlLCAwKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuQGtleWZyYW1lcyBmYWRlSW5Cb3R0b21SaWdodCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDEwMCUsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMTAwJSwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbi5hbmltYXRlX19mYWRlSW5Cb3R0b21SaWdodCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVpbmJvdHRvbXJpZ2h0O1xuXHRhbmltYXRpb24tbmFtZTogZmFkZUluQm90dG9tUmlnaHQ7XG59XG5cbi8qIEZhZGluZyBleGl0cyAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG4uYW5pbWF0ZV9fZmFkZU91dCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVvdXQ7XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd24ge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2ZhZGVPdXREb3duIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZW91dGRvd247XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXREb3duQmlnIHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2ZhZGVPdXREb3duQmlnIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZW91dGRvd25iaWc7XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bkJpZztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuXHR9XG59XG4uYW5pbWF0ZV9fZmFkZU91dExlZnQge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlb3V0bGVmdDtcblx0YW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnRCaWcge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnIHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2ZhZGVPdXRMZWZ0QmlnIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZW91dGxlZnRiaWc7XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdEJpZztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRSaWdodCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2ZhZGVPdXRSaWdodCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVvdXRyaWdodDtcblx0YW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZyB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZyB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuXHR9XG59XG4uYW5pbWF0ZV9fZmFkZU91dFJpZ2h0QmlnIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZW91dHJpZ2h0YmlnO1xuXHRhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwIHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXRVcCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2ZhZGVPdXRVcCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVvdXR1cDtcblx0YW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRVcEJpZyB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2ZhZGVPdXRVcEJpZyB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVvdXR1cGJpZztcblx0YW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcEJpZztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRUb3BMZWZ0IHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIC0xMDAlLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAtMTAwJSwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dFRvcExlZnQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgLTEwMCUsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIC0xMDAlLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2ZhZGVPdXRUb3BMZWZ0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZW91dHRvcGxlZnQ7XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VG9wTGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRUb3BSaWdodCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIC0xMDAlLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIC0xMDAlLCAwKTtcblx0fVxufVxuQGtleWZyYW1lcyBmYWRlT3V0VG9wUmlnaHQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAtMTAwJSwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAtMTAwJSwgMCk7XG5cdH1cbn1cbi5hbmltYXRlX19mYWRlT3V0VG9wUmlnaHQge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlb3V0dG9wcmlnaHQ7XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VG9wUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0Qm90dG9tUmlnaHQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAxMDAlLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDEwMCUsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXRCb3R0b21SaWdodCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDEwMCUsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMTAwJSwgMCk7XG5cdH1cbn1cbi5hbmltYXRlX19mYWRlT3V0Qm90dG9tUmlnaHQge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlb3V0Ym90dG9tcmlnaHQ7XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0Qm90dG9tUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0Qm90dG9tTGVmdCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAxMDAlLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAxMDAlLCAwKTtcblx0fVxufVxuQGtleWZyYW1lcyBmYWRlT3V0Qm90dG9tTGVmdCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAxMDAlLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAxMDAlLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2ZhZGVPdXRCb3R0b21MZWZ0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZW91dGJvdHRvbWxlZnQ7XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0Qm90dG9tTGVmdDtcbn1cblxuLyogRmxpcHBlcnMgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwIHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDApIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcblx0fVxuXHQ0MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcblx0fVxuXHQ1MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG5cdH1cblx0ODAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMC45NSwgMC45NSwgMC45NSkgdHJhbnNsYXRlM2QoMCwgMCwgMCkgcm90YXRlM2QoMCwgMSwgMCwgMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgwLjk1LCAwLjk1LCAwLjk1KSB0cmFuc2xhdGUzZCgwLCAwLCAwKSByb3RhdGUzZCgwLCAxLCAwLCAwZGVnKTtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDApIHJvdGF0ZTNkKDAsIDEsIDAsIDBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMCkgcm90YXRlM2QoMCwgMSwgMCwgMGRlZyk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG5cdH1cbn1cbkBrZXlmcmFtZXMgZmxpcCB7XG5cdGZyb20ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAwKSByb3RhdGUzZCgwLCAxLCAwLCAtMzYwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDApIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG5cdH1cblx0NDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG5cdH1cblx0NTAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuXHR9XG5cdDgwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDAuOTUsIDAuOTUsIDAuOTUpIHRyYW5zbGF0ZTNkKDAsIDAsIDApIHJvdGF0ZTNkKDAsIDEsIDAsIDBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMC45NSwgMC45NSwgMC45NSkgdHJhbnNsYXRlM2QoMCwgMCwgMCkgcm90YXRlM2QoMCwgMSwgMCwgMGRlZyk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAwKSByb3RhdGUzZCgwLCAxLCAwLCAwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDApIHJvdGF0ZTNkKDAsIDEsIDAsIDBkZWcpO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuXHR9XG59XG4uYW5pbWF0ZV9fYW5pbWF0ZWQuYW5pbWF0ZV9fZmxpcCB7XG5cdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZTtcblx0YmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZTtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcDtcblx0YW5pbWF0aW9uLW5hbWU6IGZsaXA7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwSW5YIHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0NDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcblx0fVxuXHQ2MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDEwZGVnKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdDgwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuXHRcdHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGZsaXBJblgge1xuXHRmcm9tIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG5cdFx0b3BhY2l0eTogMDtcblx0fVxuXHQ0MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuXHR9XG5cdDYwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0ODAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC01ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG5cdH1cbn1cbi5hbmltYXRlX19mbGlwSW5YIHtcblx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG5cdGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcGlueDtcblx0YW5pbWF0aW9uLW5hbWU6IGZsaXBJblg7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwSW5ZIHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0NDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0yMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTIwZGVnKTtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcblx0fVxuXHQ2MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgMTBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdDgwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuXHRcdHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGZsaXBJblkge1xuXHRmcm9tIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG5cdFx0b3BhY2l0eTogMDtcblx0fVxuXHQ0MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTIwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuXHR9XG5cdDYwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgMTBkZWcpO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0ODAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC01ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG5cdH1cbn1cbi5hbmltYXRlX19mbGlwSW5ZIHtcblx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG5cdGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcGlueTtcblx0YW5pbWF0aW9uLW5hbWU6IGZsaXBJblk7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwT3V0WCB7XG5cdGZyb20ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG5cdH1cblx0MzAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuQGtleWZyYW1lcyBmbGlwT3V0WCB7XG5cdGZyb20ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG5cdH1cblx0MzAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuLmFuaW1hdGVfX2ZsaXBPdXRYIHtcblx0LXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNzVzO1xuXHRhbmltYXRpb24tZHVyYXRpb246IDAuNzVzO1xuXHQtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDAuNzUpO1xuXHRhbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgKiAwLjc1KTtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcG91dHg7XG5cdGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WDtcblx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG5cdGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBPdXRZIHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcblx0XHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcblx0fVxuXHQzMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGZsaXBPdXRZIHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcblx0XHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcblx0fVxuXHQzMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG4uYW5pbWF0ZV9fZmxpcE91dFkge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7XG5cdC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pICogMC43NSk7XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDAuNzUpO1xuXHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcblx0YmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwb3V0eTtcblx0YW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZO1xufVxuXG4vKiBMaWdodHNwZWVkICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZEluUmlnaHQge1xuXHRmcm9tIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxuXHQ2MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHQ4MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XG5cdFx0dHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRJblJpZ2h0IHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0NjAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xuXHRcdHRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0ODAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTVkZWcpO1xuXHRcdHRyYW5zZm9ybTogc2tld1goLTVkZWcpO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2xpZ2h0U3BlZWRJblJpZ2h0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRzcGVlZGlucmlnaHQ7XG5cdGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkSW5SaWdodDtcblx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcblx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkSW5MZWZ0IHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0NjAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTIwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNrZXdYKC0yMGRlZyk7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHQ4MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCg1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNrZXdYKDVkZWcpO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuQGtleWZyYW1lcyBsaWdodFNwZWVkSW5MZWZ0IHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0NjAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTIwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNrZXdYKC0yMGRlZyk7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHQ4MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCg1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNrZXdYKDVkZWcpO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX2xpZ2h0U3BlZWRJbkxlZnQge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBsaWdodHNwZWVkaW5sZWZ0O1xuXHRhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluTGVmdDtcblx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcblx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkT3V0UmlnaHQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cbn1cbkBrZXlmcmFtZXMgbGlnaHRTcGVlZE91dFJpZ2h0IHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG4uYW5pbWF0ZV9fbGlnaHRTcGVlZE91dFJpZ2h0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRzcGVlZG91dHJpZ2h0O1xuXHRhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZE91dFJpZ2h0O1xuXHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG5cdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkT3V0TGVmdCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cbn1cbkBrZXlmcmFtZXMgbGlnaHRTcGVlZE91dExlZnQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG4uYW5pbWF0ZV9fbGlnaHRTcGVlZE91dExlZnQge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBsaWdodHNwZWVkb3V0bGVmdDtcblx0YW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXRMZWZ0O1xuXHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG5cdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG59XG5cbi8qIFJvdGF0aW5nIGVudHJhbmNlcyAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluIHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0yMDBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxufVxuQGtleWZyYW1lcyByb3RhdGVJbiB7XG5cdGZyb20ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0yMDBkZWcpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cbi5hbmltYXRlX19yb3RhdGVJbiB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZWluO1xuXHRhbmltYXRpb24tbmFtZTogcm90YXRlSW47XG5cdC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuXHR0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJbkRvd25MZWZ0IHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cbkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7XG5cdGZyb20ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG4uYW5pbWF0ZV9fcm90YXRlSW5Eb3duTGVmdCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZWluZG93bmxlZnQ7XG5cdGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25MZWZ0O1xuXHQtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuXHR0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0IHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0IHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG4uYW5pbWF0ZV9fcm90YXRlSW5Eb3duUmlnaHQge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVpbmRvd25yaWdodDtcblx0YW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93blJpZ2h0O1xuXHQtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcblx0dHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5VcExlZnQge1xuXHRmcm9tIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cbkBrZXlmcmFtZXMgcm90YXRlSW5VcExlZnQge1xuXHRmcm9tIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cbi5hbmltYXRlX19yb3RhdGVJblVwTGVmdCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZWludXBsZWZ0O1xuXHRhbmltYXRpb24tbmFtZTogcm90YXRlSW5VcExlZnQ7XG5cdC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG5cdHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cbkBrZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cbi5hbmltYXRlX19yb3RhdGVJblVwUmlnaHQge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVpbnVwcmlnaHQ7XG5cdGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwUmlnaHQ7XG5cdC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuXHR0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG59XG5cbi8qIFJvdGF0aW5nIGV4aXRzICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0IHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAyMDBkZWcpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cbn1cbkBrZXlmcmFtZXMgcm90YXRlT3V0IHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAyMDBkZWcpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cbn1cbi5hbmltYXRlX19yb3RhdGVPdXQge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVvdXQ7XG5cdGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXQ7XG5cdC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuXHR0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXREb3duTGVmdCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuQGtleWZyYW1lcyByb3RhdGVPdXREb3duTGVmdCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuLmFuaW1hdGVfX3JvdGF0ZU91dERvd25MZWZ0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlb3V0ZG93bmxlZnQ7XG5cdGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDtcblx0LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcblx0dHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXREb3duUmlnaHQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuQGtleWZyYW1lcyByb3RhdGVPdXREb3duUmlnaHQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuLmFuaW1hdGVfX3JvdGF0ZU91dERvd25SaWdodCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZW91dGRvd25yaWdodDtcblx0YW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25SaWdodDtcblx0LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG5cdHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG4uYW5pbWF0ZV9fcm90YXRlT3V0VXBMZWZ0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlb3V0dXBsZWZ0O1xuXHRhbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBMZWZ0O1xuXHQtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuXHR0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dFVwUmlnaHQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cbn1cbkBrZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuLmFuaW1hdGVfX3JvdGF0ZU91dFVwUmlnaHQge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVvdXR1cHJpZ2h0O1xuXHRhbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDtcblx0LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG5cdHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbn1cblxuLyogU3BlY2lhbHMgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBoaW5nZSB7XG5cdDAlIHtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuXHR9XG5cdDIwJSwgNjAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgODBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgODBkZWcpO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG5cdH1cblx0NDAlLCA4MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA2MGRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA2MGRlZyk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cbn1cbkBrZXlmcmFtZXMgaGluZ2Uge1xuXHQwJSB7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcblx0fVxuXHQyMCUsIDYwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuXHR9XG5cdDQwJSwgODAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNjBkZWcpO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNjBkZWcpO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG4uYW5pbWF0ZV9faGluZ2Uge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMnM7XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogMnM7XG5cdC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pICogMik7XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDIpO1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoaW5nZTtcblx0YW5pbWF0aW9uLW5hbWU6IGhpbmdlO1xuXHQtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuXHR0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGphY2tJblRoZUJveCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMSkgcm90YXRlKDMwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDAuMSkgcm90YXRlKDMwZGVnKTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG5cdFx0dHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcblx0fVxuXHQ1MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtMTBkZWcpO1xuXHR9XG5cdDcwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0fVxufVxuQGtleWZyYW1lcyBqYWNrSW5UaGVCb3gge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHJvdGF0ZSgzMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgwLjEpIHJvdGF0ZSgzMGRlZyk7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuXHRcdHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG5cdH1cblx0NTAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcblx0fVxuXHQ3MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoM2RlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoM2RlZyk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdH1cbn1cbi5hbmltYXRlX19qYWNrSW5UaGVCb3gge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBqYWNraW50aGVib3g7XG5cdGFuaW1hdGlvbi1uYW1lOiBqYWNrSW5UaGVCb3g7XG59XG5cbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHJvbGxJbiB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuQGtleWZyYW1lcyByb2xsSW4ge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbi5hbmltYXRlX19yb2xsSW4ge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb2xsaW47XG5cdGFuaW1hdGlvbi1uYW1lOiByb2xsSW47XG59XG5cbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHJvbGxPdXQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTtcblx0fVxufVxuQGtleWZyYW1lcyByb2xsT3V0IHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7XG5cdH1cbn1cbi5hbmltYXRlX19yb2xsT3V0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm9sbG91dDtcblx0YW5pbWF0aW9uLW5hbWU6IHJvbGxPdXQ7XG59XG5cbi8qIFpvb21pbmcgZW50cmFuY2VzICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluIHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG5cdH1cblx0NTAlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIHpvb21JbiB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuXHR9XG5cdDUwJSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxufVxuLmFuaW1hdGVfX3pvb21JbiB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21pbjtcblx0YW5pbWF0aW9uLW5hbWU6IHpvb21Jbjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JbkRvd24ge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXHR9XG5cdDYwJSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcblx0fVxufVxuQGtleWZyYW1lcyB6b29tSW5Eb3duIHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblx0fVxuXHQ2MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG5cdH1cbn1cbi5hbmltYXRlX196b29tSW5Eb3duIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbWluZG93bjtcblx0YW5pbWF0aW9uLW5hbWU6IHpvb21JbkRvd247XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5MZWZ0IHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblx0fVxuXHQ2MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgem9vbUluTGVmdCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cdH1cblx0NjAlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuXHR9XG59XG4uYW5pbWF0ZV9fem9vbUluTGVmdCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21pbmxlZnQ7XG5cdGFuaW1hdGlvbi1uYW1lOiB6b29tSW5MZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluUmlnaHQge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDEwMDBweCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDEwMDBweCwgMCwgMCk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblx0fVxuXHQ2MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcblx0fVxufVxuQGtleWZyYW1lcyB6b29tSW5SaWdodCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXHR9XG5cdDYwJSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuXHR9XG59XG4uYW5pbWF0ZV9fem9vbUluUmlnaHQge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29taW5yaWdodDtcblx0YW5pbWF0aW9uLW5hbWU6IHpvb21JblJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluVXAge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblx0fVxuXHQ2MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcblx0fVxufVxuQGtleWZyYW1lcyB6b29tSW5VcCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXHR9XG5cdDYwJSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcblx0XHQtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xuXHR9XG59XG4uYW5pbWF0ZV9fem9vbUluVXAge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29taW51cDtcblx0YW5pbWF0aW9uLW5hbWU6IHpvb21JblVwO1xufVxuXG4vKiBab29taW5nIGV4aXRzICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dCB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0NTAlIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuQGtleWZyYW1lcyB6b29tT3V0IHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHQ1MCUge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG4uYW5pbWF0ZV9fem9vbU91dCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21vdXQ7XG5cdGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dERvd24ge1xuXHQ0MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgem9vbU91dERvd24ge1xuXHQ0MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG5cdH1cbn1cbi5hbmltYXRlX196b29tT3V0RG93biB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21vdXRkb3duO1xuXHRhbmltYXRpb24tbmFtZTogem9vbU91dERvd247XG5cdC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcblx0dHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXRMZWZ0IHtcblx0NDAlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgem9vbU91dExlZnQge1xuXHQ0MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX3pvb21PdXRMZWZ0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbW91dGxlZnQ7XG5cdGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0TGVmdDtcblx0LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcblx0dHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0UmlnaHQge1xuXHQ0MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcblx0fVxufVxuQGtleWZyYW1lcyB6b29tT3V0UmlnaHQge1xuXHQ0MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX3pvb21PdXRSaWdodCB7XG5cdC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21vdXRyaWdodDtcblx0YW5pbWF0aW9uLW5hbWU6IHpvb21PdXRSaWdodDtcblx0LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG5cdHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXRVcCB7XG5cdDQwJSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG5cdFx0LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcblx0XHRhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcblx0fVxufVxuQGtleWZyYW1lcyB6b29tT3V0VXAge1xuXHQ0MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XG5cdH1cbn1cbi5hbmltYXRlX196b29tT3V0VXAge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tb3V0dXA7XG5cdGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0VXA7XG5cdC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcblx0dHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbn1cblxuLyogU2xpZGluZyBlbnRyYW5jZXMgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluRG93biB7XG5cdGZyb20ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG5cdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgc2xpZGVJbkRvd24ge1xuXHRmcm9tIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuXHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG4uYW5pbWF0ZV9fc2xpZGVJbkRvd24ge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZWluZG93bjtcblx0YW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5Eb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJbkxlZnQge1xuXHRmcm9tIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuXHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIHNsaWRlSW5MZWZ0IHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcblx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHR9XG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxufVxuLmFuaW1hdGVfX3NsaWRlSW5MZWZ0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVpbmxlZnQ7XG5cdGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluTGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5SaWdodCB7XG5cdGZyb20ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuXHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIHNsaWRlSW5SaWdodCB7XG5cdGZyb20ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuXHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdH1cblx0dG8ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG4uYW5pbWF0ZV9fc2xpZGVJblJpZ2h0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVpbnJpZ2h0O1xuXHRhbmltYXRpb24tbmFtZTogc2xpZGVJblJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJblVwIHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG5cdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgc2xpZGVJblVwIHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG5cdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cbn1cbi5hbmltYXRlX19zbGlkZUluVXAge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZWludXA7XG5cdGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluVXA7XG59XG5cbi8qIFNsaWRpbmcgZXhpdHMgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dERvd24ge1xuXHRmcm9tIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxuXHR0byB7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIHNsaWRlT3V0RG93biB7XG5cdGZyb20ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG5cdHRvIHtcblx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG5cdH1cbn1cbi5hbmltYXRlX19zbGlkZU91dERvd24ge1xuXHQtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZW91dGRvd247XG5cdGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dERvd247XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dExlZnQge1xuXHRmcm9tIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxuXHR0byB7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgc2xpZGVPdXRMZWZ0IHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuXHR9XG59XG4uYW5pbWF0ZV9fc2xpZGVPdXRMZWZ0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVvdXRsZWZ0O1xuXHRhbmltYXRpb24tbmFtZTogc2xpZGVPdXRMZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRSaWdodCB7XG5cdGZyb20ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG5cdHRvIHtcblx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgc2xpZGVPdXRSaWdodCB7XG5cdGZyb20ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG5cdHRvIHtcblx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG5cdH1cbn1cbi5hbmltYXRlX19zbGlkZU91dFJpZ2h0IHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVvdXRyaWdodDtcblx0YW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0UmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dFVwIHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cblx0dG8ge1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIHNsaWRlT3V0VXAge1xuXHRmcm9tIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxuXHR0byB7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG5cdH1cbn1cbi5hbmltYXRlX19zbGlkZU91dFVwIHtcblx0LXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVvdXR1cDtcblx0YW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0VXA7XG59XG5cbi53Yy1hdGNwLXByb2R1Y3QtZ3JpZCAucHJvZHVjdHMgPiBkaXYge1xuXHR3aWR0aDogMjcuMzIlICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi10b3A6IDVweCAhaW1wb3J0YW50O1xuXHRtYXJnaW4tcmlnaHQ6IDMlICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi1ib3R0b206IDIwcHggIWltcG9ydGFudDtcblx0bWFyZ2luLWxlZnQ6IDMlICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuXHQud2MtYXRjcC1wcm9kdWN0LWdyaWQgLnByb2R1Y3RzID4gZGl2IHtcblx0XHR3aWR0aDogOTQlICFpbXBvcnRhbnQ7XG5cdFx0bWFyZ2luLXRvcDogMjBweCAhaW1wb3J0YW50O1xuXHRcdG1hcmdpbi1yaWdodDogMyUgIWltcG9ydGFudDtcblx0XHRtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG5cdFx0bWFyZ2luLWxlZnQ6IDMlICFpbXBvcnRhbnQ7XG5cdH1cbn0iXX0= */