body {
	font-family: 'Inter', sans-serif;
	font-size: 14px;
	font-weight: 400
}

h1 {
	font-size: calc(36px + (62 - 36) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(48px + (72 - 48) * ((100vw - 320px) / (1920 - 320)));
	font-weight: bold;
	margin: 0
}

h2 {
	font-size: calc(22px + (42 - 22) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(30px + (51 - 30) * ((100vw - 320px) / (1920 - 320)));
	font-weight: bold;
	margin: 0
}

h3 {
	font-size: calc(21px + (28 - 21) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(28px + (34 - 28) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 600;
	margin: 0
}

h4 {
	font-size: calc(16px + (20 - 16) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(20px + (24 - 20) * ((100vw - 320px) / (1920 - 320)));
	font-weight: bold;
	margin: 0
}

h5 {
	font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(18px + (21 - 18) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 600;
	margin: 0
}

h6 {
	font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(18px + (20 - 18) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 600;
	margin: 0
}

p {
	margin: 0
}

a {
	font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
	line-height: 1.27;
	color: #FB9929;
	text-decoration: none;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

a:hover {
	-webkit-transition: 0.5s;
	transition: 0.5s
}

ol,
ul {
	padding: 0;
	margin: 0
}

.gy-6 {
	margin: -18px
}

.gy-6>div {
	padding: 18px
}

.label {
	background: #262931;
	border-radius: 18px;
	padding: 7px calc(12px + (20 - 12) * ((100vw - 320px) / (1920 - 320)));
	display: block;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.label:hover {
	background: #FB9929;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.btn {
	font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(18px + (21 - 18) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 500;
	padding: 15px 40px;
	border-radius: 2rem;
	background: linear-gradient(177deg, #fd5f00 20%, #ea001b 70.5%);
}

.btn:hover,
.btn:focus,
.btn:active {
	-webkit-box-shadow: none;
	box-shadow: none
}

.btn:active:focus {
	-webkit-box-shadow: none;
	box-shadow: none
}

.btn-lg {
	font-size: calc(18px + (24 - 18) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(23px + (29 - 23) * ((100vw - 320px) / (1920 - 320)))
}

.btn-primary {
	background-color: #FB9929;
	border-color: #FB9929
}

.btn-primary:hover,
.btn-primary:focus {
	background: linear-gradient(10deg, #fd5f00 20%, #ea001b 80.5%);
	border-color: #fb941f
}

.card {
	background: #262931;
	border-radius: 10px;
	margin-bottom: 32px
}

@media only screen and (max-width: 575px) {
	.card {
		margin-bottom: 20px
	}
}

.card .card-body {
	padding: 30px
}

@media only screen and (max-width: 575px) {
	.card .card-body {
		padding: 20px
	}
}

.btn-close {
	position: absolute;
	right: 0;
	top: 0;
	width: 38px;
	height: 38px;
	border-radius: 100%;
	background: #1A1A1A;
	-webkit-box-shadow: 0px 3px 6px #0000004F;
	box-shadow: 0px 3px 6px #0000004F;
	color: #fff;
	right: -19px;
	top: -20px;
	opacity: 1;
	z-index: 1
}

.btn-close:focus,
.btn-close:hover {
	-webkit-box-shadow: none;
	box-shadow: none
}

.form-control {
	padding: 12px;
	border-radius: 5px;
	color: #1f2127
}

.form-control::-webkit-input-placeholder {
	color: #A5A5A5
}

.form-control::-moz-placeholder {
	color: #A5A5A5
}

.form-control:-ms-input-placeholder {
	color: #A5A5A5
}

.form-control::-ms-input-placeholder {
	color: #A5A5A5
}

.form-control::placeholder {
	color: #A5A5A5
}

@media only screen and (max-width: 575px) {
	.form-control {
		font-size: 14px
	}
}

.input-group .form-control {

}

.input-group-text {
	background: #fff;
	border-radius: 5px
}

.form-icon .form-control {
	padding-right: 40px
}

.form-icon .search-icon {
	position: absolute;
	right: 15px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 23px;
	height: 23px
}

.dropdown button,
.dropdown .dropdown-item {
	font-size: 14px;
	line-height: 17px;
	color: #fff
}

.dropdown button {
	padding: 0;
	font-weight: normal
}

.dropdown button:hover {
	color: #fff
}

.dropdown button::after {
	background-image: url(../images/icons/down-arrow.svg);
	background-size: cover;
	background-repeat: no-repeat;
	border: none;
	width: 9px;
	height: 5px;
	margin-left: 9px
}

.dropdown-item:hover {
	background: #1A1C24
}

.dropdown-menu {
	z-index: 2;
	background: #1A1C24;
	-webkit-box-shadow: 2px 3px 6px #2626266E;
	box-shadow: 2px 3px 6px #2626266E;
	border-radius: 10px
}

.dropdown-menu .dropdown-header {
	color: #fff;
	font-size: 14px;
	font-weight: normal
}

.dropdown-menu li {
	display: block
}

section {
	padding-top: calc(30px + (90 - 30) * ((100vw - 320px) / (1920 - 320)))
}

section .border-bottom {
	border-bottom: 1px solid #313337 !important
}

.section-b-space {
	padding-bottom: calc(30px + (78 - 30) * ((100vw - 320px) / (1920 - 320)))
}

.section-lg-space {
	padding: calc(30px + (140 - 30) * ((100vw - 320px) / (1920 - 320))) 0
}

.bg-dark {
	background: #191b1f !important
}

.bg-dark1 {
	background: #ffffff !important
}

.bg-dark,
.bg-dark1 {
	color: #000000;
}

.title {
	margin-bottom: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}

@media only screen and (max-width: 420px) {
	.title h3 {
		margin-bottom: 10px
	}
}

.title a {
	font-weight: 500;
	color: #fff;
	text-align: right;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

.title a img {
	-webkit-transition: 0.5s;
	transition: 0.5s;
	margin-left: 5px;
	margin-top: 1px;
	width: 13px;
	height: 13px
}

.title a:hover {
	font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(18px + (20 - 18) * ((100vw - 320px) / (1920 - 320)));
	color: #FB9929
}

.title a:hover img {
	width: 18px;
	height: 18px;
	margin-left: 8px;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.title-2 h2 {
	font-weight: 600;
	padding-bottom: 13px
}

.title-2 span {
	position: relative
}

.title-2 span::after {
	position: absolute;
	content: '';
	bottom: -13px;
	left: 0;
	width: 100%;
	border-bottom: 2px solid #FB9929
}

.was-validated .form-control:invalid,
.form-control.is-invalid {
	border-color: #dc3545 !important;
	padding-right: calc(1.5em + 0.75rem) !important;
	background-image: url(../images/icons/invalid.svg) !important;
	background-repeat: no-repeat !important;
	background-position: right calc(0.375em + 0.1875rem) center !important;
	background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) !important
}

@media (min-width: 1460px) {
	.container {
		max-width: 1430px
	}
}

@-webkit-keyframes searchanimation {
	0% {
		-webkit-transform: translateY(-40px);
		transform: translateY(-40px)
	}

	100% {
		-webkit-transform: translateY(0px);
		transform: translateY(0px)
	}
}

@keyframes searchanimation {
	0% {
		-webkit-transform: translateY(-40px);
		transform: translateY(-40px)
	}

	100% {
		-webkit-transform: translateY(0px);
		transform: translateY(0px)
	}
}

.nav .nav-link {
	color: #FB9929;
	font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
	line-height: 1.27;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	padding: 0 15px
}

@media only screen and (max-width: 991px) {
	.nav .nav-link {
		padding: 0 10px
	}
}

.nav .nav-link:hover {
	font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
	font-weight: bold;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.nav .text-white:hover {
	font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
	font-weight: normal;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.navbar {
	padding: 0
}

.navbar .navbar-nav {
	-webkit-box-orient: unset;
	-webkit-box-direction: unset;
	-ms-flex-direction: unset;
	flex-direction: unset;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap
}

.navbar .navbar-nav .nav-link {
	position: relative;
	color: #fff;
	padding: 15px 24px;
	text-align: center;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

@media only screen and (max-width: 767px) {
	.navbar .navbar-nav .nav-link {
		padding: 17px
	}
}

.navbar .navbar-nav .nav-link::after {
	position: absolute;
	content: '';
	width: 100%;
	height: 3px;
	background: #FB9929;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	border-radius: 50px;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.navbar .navbar-nav .nav-link.active,
.navbar .navbar-nav .nav-link:hover {
	font-weight: 600;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.navbar .navbar-nav .nav-link.active::after,
.navbar .navbar-nav .nav-link:hover::after {
	opacity: 1;
	visibility: visible;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link:focus {
	color: #fff
}

.navbar .navbar-nav .nav-item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap
}

header {
	color: #fff;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	background: #ffffff;
	border-bottom: 0.063rem solid #f2f2f2;
}

header>div,
header nav {
	background: #ffffff;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

header nav {
	opacity: 0;
	visibility: hidden;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

header .nav li:nth-child(2) .nav-link {
	width: 170px
}

@media only screen and (max-width: 767px) {
	header .nav li:nth-child(2) .nav-link {
		width: unset
	}
}

header .d-flex {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 0 70px
}

@media only screen and (max-width: 991px) {
	header .d-flex {
		padding: 0 27px
	}
}

@media only screen and (max-width: 767px) {
	header .d-flex {
		padding-right: 50px
	}
}

@media only screen and (max-width: 575px) {
	header .d-flex {
		padding: 0 36px 0 12px
	}
}

header .header-search {
	opacity: 0;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	width: 52%
}

@media only screen and (max-width: 1199px) {
	header .header-search {
		width: 40%
	}
}

@media only screen and (max-width: 767px) {
	header .header-search {
		width: 225px
	}
}

header .header-search .form-icon {
	position: relative
}

header .header-search .form-control {
	background: #242424;
	border-radius: 8px;
	border: none;
	color: #fff
}

header .header-search .form-control::-webkit-input-placeholder {
	color: rgba(255, 255, 255, 0.32)
}

header .header-search .form-control::-moz-placeholder {
	color: rgba(255, 255, 255, 0.32)
}

header .header-search .form-control:-ms-input-placeholder {
	color: rgba(255, 255, 255, 0.32)
}

header .header-search .form-control::-ms-input-placeholder {
	color: rgba(255, 255, 255, 0.32)
}

header .header-search .form-control::placeholder {
	color: rgba(255, 255, 255, 0.32)
}

header.fixed {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 3;
	-webkit-animation: searchanimation 0.5s forwards;
	animation: searchanimation 0.5s forwards
}

@media (min-width: 768px) {
	header.fixed .navbar .navbar-nav {
		height: 56px
	}

	header.fixed .navbar .navbar-nav .nav-link {
		color: #615B54;
		padding: 16px 21px
	}

	header.fixed .navbar .navbar-nav .nav-link:hover,
	header.fixed .navbar .navbar-nav .nav-link.active {
		color: #fff
	}
}

@media only screen and (min-width: 768px) and (max-width: 767px) {
	header.fixed .navbar .navbar-nav .nav-link {
		padding: 12px
	}
}

header.fixed .header-search {
	opacity: 1;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

header.fixed>div {
	background: #131313;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

header.fixed nav {
	background: #1A1A1A;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	opacity: 1;
	visibility: visible
}

.search-section .navbar-nav {
	height: 54px
}

@media only screen and (max-width: 767px) {
	.search-section .navbar-nav {
		height: 48px
	}
}

@media only screen and (max-width: 767px) {
	.search-section .navbar-nav {
		height: auto
	}
}

.bg-overlay.active {
	height: 100vh;
	width: 100vw;
	background-color: rgba(0, 0, 0, 0.2);
	position: fixed;
	z-index: 2;
	top: 0
}

.search-panel {
	margin-top: -26px;
	padding-top: 0;
	padding-bottom: calc(30px + (63 - 30) * ((100vw - 320px) / (1920 - 320)))
}

@media only screen and (max-width: 767px) {
	.search-panel {
		padding-top: 40px
	}
}

@media only screen and (max-width: 575px) {
	.search-panel {
		margin-top: 0;
		padding-top: 20px
	}
}

.search-panel p {
	font-size: calc(14px + (20 - 14) * ((100vw - 320px) / (1920 - 320)))
}

.search-panel form {
	margin-top: 36px
}

.search-panel form .input-group .input-group-text img {
	width: calc(20px + (26 - 20) * ((100vw - 320px) / (1920 - 320)));
	height: calc(20px + (26 - 20) * ((100vw - 320px) / (1920 - 320)))
}

@media only screen and (max-width: 1540px) {
	.arrow-slider {
		padding: 0 30px
	}
}

@media only screen and (max-width: 1540px) and (max-width: 575px) {
	.arrow-slider {
		padding: 0 20px
	}
}

.arrow-slider .swiper-button-prev {
	left: 0
}

.arrow-slider .swiper-button-next {
	right: 0
}

.arrow-slider.swiper_wrap {
	height: 100%;
	width: 100%;
	position: relative;
	display: block
}

.arrow-slider .swiper-button-next {
	margin-top: 0px;
	position: absolute;
	top: 40%;
	right: -35px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%)
}

@media only screen and (max-width: 1540px) {
	.arrow-slider .swiper-button-next {
		right: -6px
	}
}

@media (max-width: 320px) {
	.arrow-slider .swiper-button-next {
		top: 30%
	}
}

.arrow-slider .swiper-button-prev {
	position: absolute;
	top: 40%;
	left: -35px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	margin-top: 0px
}

@media only screen and (max-width: 1540px) {
	.arrow-slider .swiper-button-prev {
		left: -6px
	}
}

@media (max-width: 320px) {
	.arrow-slider .swiper-button-prev {
		top: 30%
	}
}

.swiper-pagination-bullet {
	width: 10px;
	height: 10px;
	background: #333741;
	opacity: 1
}

@media only screen and (max-width: 575px) {
	.swiper-pagination-bullet {
		width: 6px;
		height: 6px
	}
}

.swiper-pagination-bullet-active {
	width: 12px;
	height: 12px;
	background: #FB9929
}

@media only screen and (max-width: 575px) {
	.swiper-pagination-bullet-active {
		width: 8px;
		height: 8px
	}
}

.swiper {
	width: 100%;
	height: 100%
}

.swiper-slide {
	text-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

.swiper-slide>div {
	text-align: left;
	width: 100%
}

.swiper-slide img {
	display: block;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.swiper-button-next,
.swiper-button-prev {
	color: #FB9929;
	z-index: 2
}

.swiper-button-next::after,
.swiper-button-prev::after {
	font-size: 26px;
	font-weight: 900;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

@media only screen and (max-width: 575px) {

	.swiper-button-next::after,
	.swiper-button-prev::after {
		font-size: 16px
	}
}

.swiper-button-next:hover::after,
.swiper-button-prev:hover::after {
	font-size: 30px;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

@media only screen and (max-width: 575px) {

	.swiper-button-next:hover::after,
	.swiper-button-prev:hover::after {
		font-size: 18px
	}
}

.template-image {
	position: relative;
	border-radius: 8px;
	overflow: hidden;
	-webkit-transition: 0.9s;
	transition: 0.9s
}

.template-image>img {
	border-radius: 11px;
	width: 100%
}

.template-image .overlay {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	background: #34363a;
	padding: calc(8px + (24 - 8) * ((100vw - 320px) / (1920 - 320))) calc(10px + (30 - 10) * ((100vw - 320px) / (1920 - 320)));
	position: absolute;
	bottom: -90px;
	width: 100%;
	border-bottom-left-radius: 6px;
	border-bottom-right-radius: 6px;
	-webkit-transition: all 0.9s ease-in-out;
	transition: all 0.9s ease-in-out
}

@media only screen and (max-width: 1399px) {
	.template-image .overlay {
		padding: 18px
	}
}

@media only screen and (max-width: 991px) {
	.template-image .overlay {
		padding: 12px
	}
}

@media only screen and (max-width: 575px) {
	.template-image .overlay {
		padding: calc(8px + (24 - 8) * ((100vw - 320px) / (1920 - 320))) calc(10px + (30 - 10) * ((100vw - 320px) / (1920 - 320)))
	}
}

.template-image .overlay h6 {
	margin-bottom: -4px;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	overflow: hidden;
	-webkit-box-orient: vertical
}

.template-image .overlay span,
.template-image .overlay p {
	font-size: 10px;
	line-height: 12px
}

.template-image .overlay a {
	color: #fff;
	font-size: 12px;
	line-height: 15px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

@media only screen and (max-width: 1399px) {
	.template-image .overlay a {
		width: 122px
	}
}

@media only screen and (max-width: 575px) {
	.template-image .overlay a {
		margin-left: 6px
	}
}

.template-image .overlay a img {
	width: 20px;
	height: 20px;
	display: inline-block;
	margin-left: 10px
}

@media only screen and (max-width: 1399px) {
	.template-image .overlay a img {
		width: 16px;
		height: 16px;
		margin-left: 6px
	}
}

.template-image .overlay h6,
.template-image .overlay span,
.template-image .overlay a,
.template-image .overlay p {
	opacity: 0;
	visibility: hidden;
	-webkit-transition: 0.9s;
	transition: 0.9s
}

.template-image .overlay p {
	margin-top: 10px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	overflow: hidden;
	-webkit-box-orient: vertical
}

.template-image .overlay .flex-grow-1 {
	max-width: 50%
}

@media only screen and (max-width: 1399px) {
	.template-image .overlay .flex-grow-1 {
		max-width: 60%
	}
}

@media only screen and (max-width: 1199px) {
	.template-image .overlay .flex-grow-1 {
		max-width: 67%
	}
}

@media only screen and (max-width: 991px) {
	.template-image .overlay .flex-grow-1 {
		max-width: 56%
	}
}

@media only screen and (max-width: 767px) {
	.template-image .overlay .flex-grow-1 {
		max-width: 65%
	}
}

@media only screen and (max-width: 575px) {
	.template-image .overlay .flex-grow-1 {
		width: 45%;
		max-width: unset
	}
}

.template-image::before {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-box-shadow: inset 0 0 38px 9px rgba(0, 0, 0, 0.45);
	box-shadow: inset 0 0 38px 9px rgba(0, 0, 0, 0.45);
	opacity: 0;
	visibility: hidden;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.template-image:hover {
	-webkit-transition: 0.9s;
	transition: 0.9s
}

.template-image:hover::before {
	opacity: 1;
	visibility: visible;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.template-image:hover .overlay {
	bottom: -1px
}

.template-image:hover .overlay h6,
.template-image:hover .overlay span,
.template-image:hover .overlay p,
.template-image:hover .overlay a {
	opacity: 1;
	visibility: visible;
	-webkit-transition: 0.9s;
	transition: 0.9s
}

.template-content {
	padding-top: calc(15px + (26 - 15) * ((100vw - 320px) / (1920 - 320)))
}

.template-content h5 {
	margin-bottom: 2px
}

.template-content h4 {
	margin-bottom: 8px
}

.template-content h4 a {
	color: #fff
}

.theme-wrap .template-image .overlay {
	bottom: -100px
}

@media only screen and (max-width: 575px) {
	.theme-wrap .template-image .overlay .flex-grow-1 {
		max-width: unset;
		width: unset
	}
}

@media only screen and (max-width: 575px) {
	.theme-wrap .template-image .overlay a {
		min-width: 123px
	}
}

.theme-wrap .template-image::before {
	display: none
}

.theme-wrap .template-image:hover .overlay {
	bottom: 0
}

.video-section {
	padding-top: calc(50px + (100 - 50) * ((100vw - 320px) / (1920 - 320)))
}

.video-section .row {
	padding-bottom: calc(50px + (100 - 50) * ((100vw - 320px) / (1920 - 320)))
}

@media only screen and (max-width: 767px) {
	.video-section .row {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center
	}
}

.video-section .video-content h4 {
	opacity: 0.68;
	font-weight: normal;
	font-size: calc(16px + (22 - 16) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(20px + (26 - 20) * ((100vw - 320px) / (1920 - 320)))
}

.video-section .video-content p {
	font-size: calc(16px + (24 - 16) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(21px + (29 - 21) * ((100vw - 320px) / (1920 - 320)));
	margin: calc(20px + (42 - 20) * ((100vw - 320px) / (1920 - 320))) 0 calc(25px + (47 - 25) * ((100vw - 320px) / (1920 - 320)))
}

@media only screen and (max-width: 767px) {
	.video-section .video-content {
		text-align: center
	}

	.video-section .video-content .w-100 {
		width: auto !important
	}
}

@media only screen and (max-width: 575px) {
	.video-section .video-content .btn {
		font-size: 12px
	}
}

.video-section .video-image {
	position: relative
}

.video-section .video-image .video-icon {
	position: absolute;
	content: '';
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	left: 50%
}

.video-section .video-image .video-icon img {
	width: calc(50px + (117 - 50) * ((100vw - 320px) / (1920 - 320)));
	height: calc(47px + (114 - 47) * ((100vw - 320px) / (1920 - 320)))
}

.client-wrap {
	margin-top: calc(20px + (60 - 20) * ((100vw - 320px) / (1920 - 320)));
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

@media only screen and (max-width: 575px) {
	.client-wrap {
		margin-top: 0
	}
}

.client-wrap>div {
	text-align: center
}

.testimonial-section {
	padding-bottom: calc(50px + (82 - 50) * ((100vw - 320px) / (1920 - 320)))
}

.testimonial-slider {
	margin-top: 32px
}

@media only screen and (max-width: 991px) {
	.testimonial-slider {
		margin-top: 10px
	}
}

@media only screen and (max-width: 575px) {
	.testimonial-slider {
		margin-top: 0
	}
}

.testimonial-content {
	padding: calc(20px + (50 - 20) * ((100vw - 320px) / (1920 - 320))) calc(20px + (50 - 20) * ((100vw - 320px) / (1920 - 320))) calc(30px + (70 - 30) * ((100vw - 320px) / (1920 - 320)))
}

.testimonial-content .d-flex {
	margin-top: 33px;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end
}

.testimonial-content .d-flex>img {
	width: 58px;
	height: 40px;
	margin-right: 30px
}

.testimonial-content p {
	text-align: left;
	font-size: calc(13px + (16 - 13) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(17px + (20 - 17) * ((100vw - 320px) / (1920 - 320)))
}

.testimonial-content h6 {
	font-size: 14px;
	line-height: 17px;
	font-weight: normal;
	position: relative;
	padding-top: 11px
}

.testimonial-content h6::before {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 50px;
	height: 2px;
	border-radius: 50px;
	background: #FB9929
}

.testimonial-content span {
	font-size: 12px;
	line-height: 15px
}

@media only screen and (max-width: 575px) {
	.testimonial-content {
		background: #1B1D23;
		padding: 30px 42px;
		margin-bottom: 12px
	}
}

@media only screen and (max-width: 420px) {
	.testimonial-content {
		padding: 20px
	}
}

.blog-image {
	border-radius: 10px
}

.blog-image img {
	border-radius: 10px
}

.blog-content {
	padding-top: 28px;
	padding-left: 14px
}

@media only screen and (max-width: 1199px) {
	.blog-content {
		padding-top: 20px
	}
}

@media only screen and (max-width: 575px) {
	.blog-content {
		padding-left: 0
	}
}

.blog-content h4 {
	font-weight: 500;
	margin-bottom: 6px
}

.blog-content h4 a {
	color: #fff
}

.blog-content h4 a:hover {
	color: #FB9929
}

.blog-content p {
	width: 58%;
	font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(18px + (20 - 18) * ((100vw - 320px) / (1920 - 320)))
}

@media only screen and (max-width: 1399px) {
	.blog-content p {
		width: 73%
	}
}

@media only screen and (max-width: 1199px) {
	.blog-content p {
		width: 100%
	}
}

.arrow-white {
	position: relative
}

.arrow-white .swiper-button-next,
.arrow-white .swiper-button-prev {
	top: 34%;
	width: 46px;
	height: 46px;
	background: #fff;
	border-radius: 100%;
	z-index: 2
}

@media only screen and (max-width: 1399px) {

	.arrow-white .swiper-button-next,
	.arrow-white .swiper-button-prev {
		width: 36px;
		height: 36px
	}
}

@media only screen and (max-width: 575px) {

	.arrow-white .swiper-button-next,
	.arrow-white .swiper-button-prev {
		width: 25px;
		height: 25px
	}
}

.arrow-white .swiper-button-next::after,
.arrow-white .swiper-button-prev::after {
	font-size: 19px;
	margin-top: 1px
}

@media only screen and (max-width: 1399px) {

	.arrow-white .swiper-button-next::after,
	.arrow-white .swiper-button-prev::after {
		font-size: 16px
	}
}

@media only screen and (max-width: 575px) {

	.arrow-white .swiper-button-next::after,
	.arrow-white .swiper-button-prev::after {
		font-size: 12px
	}
}

.arrow-white .swiper-button-prev {
	left: -21px
}

.arrow-white .swiper-button-prev::after {
	margin-right: 4px
}

@media only screen and (max-width: 1399px) {
	.arrow-white .swiper-button-prev::after {
		margin-right: 2px
	}
}

@media only screen and (max-width: 575px) {
	.arrow-white .swiper-button-prev {
		left: -7px
	}
}

.arrow-white .swiper-button-next {
	right: -21px
}

.arrow-white .swiper-button-next::after {
	margin-left: 4px
}

@media only screen and (max-width: 1399px) {
	.arrow-white .swiper-button-next::after {
		margin-left: 2px
	}
}

@media only screen and (max-width: 575px) {
	.arrow-white .swiper-button-next {
		right: -7px
	}
}

footer {
	background: #1A1A1A;
	color: #161616;
	padding-top: calc(30px + (58 - 30) * ((100vw - 320px) / (1920 - 320)));
	padding-bottom: calc(30px + (40 - 30) * ((100vw - 320px) / (1920 - 320)))
}

footer .column-list {
	-webkit-column-count: 2;
	-moz-column-count: 2;
	column-count: 2;
	-webkit-column-gap: 16px;
	-moz-column-gap: 16px;
	column-gap: 16px
}

@media only screen and (max-width: 767px) {
	footer .column-list {
		-webkit-column-gap: 10px;
		-moz-column-gap: 10px;
		column-gap: 10px
	}
}

footer .main-footer {
	padding: 0 calc(30px + (78 - 30) * ((100vw - 320px) / (1920 - 320)));
	margin-bottom: calc(30px + (58 - 30) * ((100vw - 320px) / (1920 - 320)))
}

@media only screen and (max-width: 1199px) {
	footer .main-footer {
		padding: 0 20px
	}
}

@media only screen and (max-width: 767px) {
	footer .main-footer {
		padding: 0
	}
}

footer .main-footer .footer-logo {
	display: block
}

footer .main-footer .row {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

footer .main-footer ul li {
	display: block
}

footer .main-footer ul li a {
	font-size: 12px;
	line-height: 15px;
	color: #fff
}

footer .main-footer ul li a:hover {
	color: #FB9929
}

footer .main-footer .footer-details h5 {
	margin-bottom: 20px
}

@media only screen and (max-width: 767px) {
	footer .main-footer .footer-details h5 {
		margin-bottom: 6px
	}
}

footer .main-footer .footer-links li+li {
	margin-top: 4px
}

footer .sub-footer {
	border-top: 1px solid #fff;
	padding-top: 12px
}

@media only screen and (max-width: 575px) {
	footer .sub-footer {
		text-align: center;
		border-top: none
	}
}

footer .sub-footer .social-links {
	text-align: right
}

@media only screen and (max-width: 575px) {
	footer .sub-footer .social-links {
		text-align: center
	}
}

footer .sub-footer .social-links li+li {
	margin-left: 12px
}

@media only screen and (max-width: 575px) {
	footer .sub-footer .copyright {
		padding-top: 6px;
		margin-top: 12px;
		border-top: 1px solid #fff
	}
}

.inner-page {
	padding-top: 148px
}

@media only screen and (max-width: 1199px) {
	.inner-page {
		padding-top: 60px
	}
}

@media only screen and (max-width: 767px) {
	.inner-page {
		padding-top: 60px
	}
}

@media only screen and (max-width: 420px) {
	.inner-page {
		padding-top: 60px
	}
}

.breadcrumb-item a {
	font-size: 14px;
	line-height: 17px;
	color: #fff
}

.breadcrumb-item.active {
	color: #BBBABA
}

.breadcrumb-section {
	padding-top: 50px;
	padding-bottom: 11px;
	position: relative
}

@media only screen and (max-width: 575px) {
	.breadcrumb-section {
		padding-bottom: 0;
		padding-top: 30px
	}
}

.breadcrumb-section h3 {
	margin-bottom: 2px;
	font-weight: bold
}

.thumbnail-slider .swiper-slide,
.thumbnail-nav .swiper-slide {
	height: 552px
}

@media only screen and (max-width: 1399px) {

	.thumbnail-slider .swiper-slide,
	.thumbnail-nav .swiper-slide {
		height: 400px
	}
}

@media only screen and (max-width: 1199px) {

	.thumbnail-slider .swiper-slide,
	.thumbnail-nav .swiper-slide {
		height: 300px
	}
}

@media (max-width: 480px) {

	.thumbnail-slider .swiper-slide,
	.thumbnail-nav .swiper-slide {
		height: 210px
	}
}

@media only screen and (max-width: 420px) {

	.thumbnail-slider .swiper-slide,
	.thumbnail-nav .swiper-slide {
		height: 200px
	}
}

.thumbnail-slider .swiper-slide img,
.thumbnail-nav .swiper-slide img {
	border-radius: 10px
}

.thumbnail-nav {
	margin-top: calc(25px + (45 - 25) * ((100vw - 320px) / (1920 - 320)))
}

.thumbnail-nav .swiper-slide {
	height: 87px;
	opacity: 0.7;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

@media only screen and (max-width: 1399px) {
	.thumbnail-nav .swiper-slide {
		height: 65px
	}
}

.thumbnail-nav .swiper-slide img {
	border-radius: 7px
}

.thumbnail-nav .swiper-slide-thumb-active,
.thumbnail-nav .swiper-slide:hover {
	opacity: 1;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.product-arrow {
	position: relative
}

.product-arrow .swiper-button-next,
.product-arrow .swiper-button-prev {
	background: #fff;
	width: 34px;
	height: 34px;
	-webkit-box-shadow: 2px 1px 3px #FB99294D;
	box-shadow: 2px 1px 3px #FB99294D;
	border-radius: 100%;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

@media only screen and (max-width: 1199px) {

	.product-arrow .swiper-button-next,
	.product-arrow .swiper-button-prev {
		width: 28px;
		height: 28px
	}
}

@media only screen and (max-width: 575px) {

	.product-arrow .swiper-button-next,
	.product-arrow .swiper-button-prev {
		display: none
	}
}

.product-arrow .swiper-button-next::after,
.product-arrow .swiper-button-prev::after {
	font-size: 16px
}

@media only screen and (max-width: 1199px) {

	.product-arrow .swiper-button-next::after,
	.product-arrow .swiper-button-prev::after {
		font-size: 13px
	}
}

.product-arrow .swiper-button-prev {
	left: -16px
}

.product-arrow .swiper-button-prev::after {
	margin-right: 2px;
	margin-top: 3px
}

@media only screen and (max-width: 575px) {
	.product-arrow .swiper-button-prev {
		left: -6px
	}
}

.product-arrow .swiper-button-next {
	right: -16px
}

.product-arrow .swiper-button-next::after {
	margin-left: 2px;
	margin-top: 3px
}

@media only screen and (max-width: 575px) {
	.product-arrow .swiper-button-next {
		right: -6px
	}
}

.product-arrow:hover .swiper-button-next,
.product-arrow:hover .swiper-button-prev {
	opacity: 1;
	visibility: visible;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.download-fix {
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 3;
	background: #1A1A1A;
	padding: 14px 32px;
	width: 100%
}

.download-fix button {
	width: 100%;
	text-transform: capitalize;
	font-size: 18px;
	padding: 15px 20px
}

.share-icon {
	position: absolute;
	right: 32px;
	top: 35px;
	display: none
}

@media only screen and (max-width: 575px) {
	.share-icon {
		display: block
	}
}

.share-icon .dropdown-toggle::after {
	display: none
}

.share-icon .dropdown-menu {
	min-width: 110px;
	text-align: center;
	padding-top: 20px;
	padding-bottom: 20px
}

.share-icon .dropdown-menu a img {
	width: 35px;
	height: 35px
}

.share-icon .dropdown-menu li+li {
	margin-top: 12px
}

.share-icon>a img {
	height: 16px
}

@media only screen and (max-width: 575px) {
	.fix-bottom-space {
		padding-bottom: 90px
	}
}

.product-wrap {
	padding-right: 52px
}

@media only screen and (max-width: 1399px) {
	.product-wrap {
		padding-right: 20px
	}
}

@media only screen and (max-width: 991px) {
	.product-wrap {
		padding-right: 0
	}
}

@media only screen and (max-width: 575px) {
	.product-wrap .thumbnail-slider {
		padding-bottom: 28px
	}
}

.product-wrap .thumbnail-slider .swiper-pagination {
	display: none
}

@media only screen and (max-width: 575px) {
	.product-wrap .thumbnail-slider .swiper-pagination {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		bottom: 0
	}
}

@media only screen and (max-width: 1540px) {
	.product-wrap .arrow-slider {
		padding: 0
	}
}

@media only screen and (max-width: 575px) {
	.product-wrap .arrow-slider {
		padding: 0 12px;
		display: none
	}
}

.product-wrap .arrow-slider .swiper-button-prev,
.product-wrap .arrow-slider .swiper-button-next {
	top: 50%
}

.product-wrap .arrow-slider .swiper-button-prev:after,
.product-wrap .arrow-slider .swiper-button-next:after {
	font-size: 18px
}

@media only screen and (max-width: 1199px) {

	.product-wrap .arrow-slider .swiper-button-prev:after,
	.product-wrap .arrow-slider .swiper-button-next:after {
		font-size: 15px
	}
}

@media only screen and (max-width: 1540px) {
	.product-wrap .arrow-slider .swiper-button-prev {
		left: -25px
	}
}

@media only screen and (max-width: 767px) {
	.product-wrap .arrow-slider .swiper-button-prev {
		left: -20px
	}
}

@media only screen and (max-width: 575px) {
	.product-wrap .arrow-slider .swiper-button-prev {
		left: -12px
	}
}

@media only screen and (max-width: 1540px) {
	.product-wrap .arrow-slider .swiper-button-next {
		right: -25px
	}
}

@media only screen and (max-width: 767px) {
	.product-wrap .arrow-slider .swiper-button-next {
		right: -20px
	}
}

@media only screen and (max-width: 575px) {
	.product-wrap .arrow-slider .swiper-button-next {
		right: -12px
	}
}

.product-wrap .product-details {
	padding-top: calc(30px + (52 - 30) * ((100vw - 320px) / (1920 - 320)))
}

.product-wrap .product-details p {
	font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(23px + (25 - 23) * ((100vw - 320px) / (1920 - 320)));
	color: #C1C1C1;
	width: 97%
}

@media only screen and (max-width: 1199px) {
	.product-wrap .product-details p {
		width: 100%
	}
}

.product-wrap .product-details h5 {
	margin-top: calc(25px + (45 - 25) * ((100vw - 320px) / (1920 - 320)));
	margin-bottom: 18px
}

.product-wrap .product-details ul {
	margin: -5px calc(-6px + (-10 - -6) * ((100vw - 320px) / (1920 - 320)))
}

.product-wrap .product-details ul li {
	margin: 5px calc(6px + (10 - 6) * ((100vw - 320px) / (1920 - 320)))
}

.right-sidebar h4 {
	font-weight: 600
}

.right-sidebar .btn {
	font-weight: 600;
	font-size: calc(16px + (22 - 16) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(20px + (26 - 20) * ((100vw - 320px) / (1920 - 320)));
	margin-top: 17px
}

@media only screen and (max-width: 575px) {
	.right-sidebar .btn {
		margin-top: 12px
	}
}

.right-sidebar .sidebar-list li {
	display: block
}

.right-sidebar .sidebar-list li+li {
	margin-top: 21px
}

@media only screen and (max-width: 575px) {
	.right-sidebar .sidebar-list li+li {
		margin-top: 15px
	}
}

.right-sidebar .sidebar-list .d-flex {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start
}

.right-sidebar .sidebar-list .d-flex h5 {
	margin-bottom: 8px
}

@media only screen and (max-width: 575px) {
	.right-sidebar .sidebar-list .d-flex h5 {
		margin-bottom: 4px
	}
}

.right-sidebar .sidebar-list .d-flex img {
	margin-right: 20px;
	margin-top: 4px
}

.related-suggest .title h3 {
	font-weight: bold
}

.related-suggest .btn {
	font-weight: normal;
	padding-top: 18px;
	padding-bottom: 18px;
	margin-top: calc(0px + (19 - 0) * ((100vw - 320px) / (1920 - 320)))
}

@media only screen and (max-width: 991px) {
	.related-suggest .btn {
		padding-top: 16px;
		padding-bottom: 14px
	}
}

@media only screen and (max-width: 575px) {
	.modal-dialog {
		margin-left: 20px;
		margin-right: 20px
	}
}

.modal-content {
	background: #1A1A1A;
	-webkit-box-shadow: 0px 0px 14px #00000080;
	box-shadow: 0px 0px 14px #00000080;
	border-radius: 10px;
	border: none;
	color: #fff
}

.modal-body {
	padding: 0;
	border-radius: 10px
}

.signup-modal .modal-form {
	width: 64%;
	padding: 20px 0
}

@media only screen and (max-width: 1199px) {
	.signup-modal .modal-form {
		width: 72%
	}
}

.signup-modal .modal-form h3 {
	margin-bottom: 5px
}

.signup-modal .modal-form h5 {
	font-weight: normal
}

.signup-modal .modal-form form {
	margin-top: 48px
}

@media only screen and (max-width: 1199px) {
	.signup-modal .modal-form form {
		margin-top: 30px
	}
}

.signup-modal .modal-form form .form-control,
.signup-modal .modal-form form .input-group-text {
	border-radius: 4px;
	background: #353A48;
	border: none;
	color: #7B7B7B
}

.signup-modal .modal-form form .input-group-text {
	padding-left: 13px
}

@media only screen and (max-width: 767px) {
	.signup-modal .modal-form form .input-group-text img {
		height: 18px;
		width: 18px
	}
}

.signup-modal .modal-form form .form-control {
	padding: 18px 8px
}

@media only screen and (max-width: 767px) {
	.signup-modal .modal-form form .form-control {
		padding: 14px 8px
	}
}

.signup-modal .modal-form form .form-control::-webkit-input-placeholder {
	color: #7B7B7B
}

.signup-modal .modal-form form .form-control::-moz-placeholder {
	color: #7B7B7B
}

.signup-modal .modal-form form .form-control:-ms-input-placeholder {
	color: #7B7B7B
}

.signup-modal .modal-form form .form-control::-ms-input-placeholder {
	color: #7B7B7B
}

.signup-modal .modal-form form .form-control::placeholder {
	color: #7B7B7B
}

.signup-modal .modal-form form .form-control:focus {
	-webkit-box-shadow: none;
	box-shadow: none
}

.signup-modal .modal-form form .input-group {
	margin-bottom: 30px
}

@media only screen and (max-width: 767px) {
	.signup-modal .modal-form form .input-group {
		margin-bottom: 20px
	}
}

.signup-modal .modal-form form .link-text {
	margin-top: 13px;
	text-align: center
}

.signup-modal .modal-form form .link-text span {
	font-size: 12px;
	line-height: 17px
}

.signup-modal .modal-form form .link-text a {
	font-size: 14px;
	font-weight: 500
}

.signup-modal .modal-form form .link-text a:hover {
	color: #FB9929
}

.signup-modal .modal-right {
	height: 100%
}

.signup-modal .modal-right img {
	-o-object-fit: cover;
	object-fit: cover;
	height: 100%
}

.signup-modal .row>div {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center
}

.video-modal .modal-content {
	background: transparent;
	-webkit-box-shadow: none;
	box-shadow: none
}

.video-modal iframe {
	width: 100%
}

@media only screen and (max-width: 991px) {
	.video-modal iframe {
		height: 280px !important
	}
}

@media only screen and (max-width: 575px) {
	.video-modal iframe {
		height: calc(160px + (250 - 160) * ((100vw - 320px) / (575 - 320))) !important
	}
}

.category-wrapper p {
	font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(18px + (20 - 18) * ((100vw - 320px) / (1920 - 320)))
}

.category-content {
	margin-bottom: calc(20px + (53 - 20) * ((100vw - 320px) / (1920 - 320)))
}

.category-grid {
	margin-bottom: calc(40px + (90 - 40) * ((100vw - 320px) / (1920 - 320))) !important
}

@media only screen and (max-width: 575px) {
	.category-grid {
		margin-bottom: 0px !important
	}
}

.category-grid>div {
	margin-bottom: calc(20px + (43 - 20) * ((100vw - 320px) / (1920 - 320)))
}

@media only screen and (max-width: 575px) {
	.category-grid>div {
		margin-bottom: 20px
	}
}

.sort-option {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

.sort-option h4 {
	margin-right: 34px
}

@media only screen and (max-width: 575px) {
	.sort-option h4 {
		margin-right: 15px
	}
}

.sort-option .dropdown {
	margin-left: 15px
}

@media only screen and (max-width: 767px) {
	.sort-option .dropdown {
		margin-left: 0
	}
}

.sort-option .dropdown .dropdown-toggle {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

@media only screen and (max-width: 767px) {
	.sort-option .dropdown .dropdown-toggle::after {
		display: none
	}

	.sort-option .dropdown .dropdown-toggle h4 img {
		margin-left: 12px
	}
}

.sort-option .dropdown .dropdown-menu li a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}

.sort-option .dropdown .dropdown-menu li .dot {
	display: block;
	width: 5px;
	height: 5px;
	border-radius: 100%;
	background: #fff;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.sort-option .dropdown .dropdown-menu li.select .dot {
	opacity: 1;
	visibility: visible;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.filter-panel {
	margin-bottom: 34px
}

@media only screen and (max-width: 575px) {
	.filter-panel {
		margin-bottom: 20px
	}
}

.filter-panel h4 {
	font-weight: 500
}

.filter-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end
}

.filter-wrap h4 {
	margin-right: 30px
}

.filter-wrap h4 img {
	margin-left: 14px
}

.filter-wrap .color-dropdown {
	width: 205px
}

.filter-wrap .color-dropdown .dot {
	display: block;
	width: 5px;
	height: 5px;
	border-radius: 100%;
	background: #fff;
	margin-left: auto;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.filter-wrap .color-dropdown h6,
.filter-wrap .color-dropdown a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-item-align: center;
	align-self: center
}

.filter-wrap .color-dropdown h6 .dot {
	margin-top: 8px
}

.filter-wrap .dropdown .dropdown-toggle {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

.filter-wrap .dropdown .dropdown-toggle img {
	margin-right: 15px
}

.filter-wrap .dropdown .dropdown-menu li .dropdown-item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

.filter-wrap .dropdown .dropdown-menu li .dropdown-item .dot {
	opacity: 0;
	visibility: hidden;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.filter-wrap .dropdown .dropdown-menu li .dropdown-item:hover .dot {
	opacity: 1;
	visibility: visible;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.filter-wrap .dropdown .dropdown-menu li .color-box {
	display: inline-block;
	width: 17px;
	height: 17px;
	border-radius: 100%;
	border: 0.5px solid #707070;
	margin-right: 14px
}

.filter-wrap .dropdown .dropdown-menu li.blue .color-box {
	background: #3F51B4
}

.filter-wrap .dropdown .dropdown-menu li.blue:hover a {
	color: #3F51B4
}

.filter-wrap .dropdown .dropdown-menu li.blue:hover .dot {
	background: #3F51B4
}

.filter-wrap .dropdown .dropdown-menu li.yellow .color-box {
	background: #FB9929
}

.filter-wrap .dropdown .dropdown-menu li.yellow:hover a {
	color: #FB9929
}

.filter-wrap .dropdown .dropdown-menu li.yellow:hover .dot {
	background: #FB9929
}

.filter-wrap .dropdown .dropdown-menu li.purple .color-box {
	background: #7B1FA1
}

.filter-wrap .dropdown .dropdown-menu li.purple:hover a {
	color: #7B1FA1
}

.filter-wrap .dropdown .dropdown-menu li.purple:hover .dot {
	background: #7B1FA1
}

.filter-wrap .dropdown .dropdown-menu li.red .color-box {
	background: #F34336
}

.filter-wrap .dropdown .dropdown-menu li.red:hover a {
	color: #F34336
}

.filter-wrap .dropdown .dropdown-menu li.red:hover .dot {
	background: #F34336
}

.filter-wrap .dropdown .dropdown-menu li.green .color-box {
	background: #8AC24A
}

.filter-wrap .dropdown .dropdown-menu li.green:hover a {
	color: #8AC24A
}

.filter-wrap .dropdown .dropdown-menu li.green:hover .dot {
	background: #8AC24A
}

.filter-wrap .dropdown .dropdown-menu li.white .color-box {
	background: #fff
}

.filter-wrap .dropdown .dropdown-menu li.white:hover a {
	color: #fff
}

.filter-wrap .dropdown .dropdown-menu li.white:hover .dot {
	background: #fff
}

.filter-wrap .dropdown .dropdown-menu li.black .color-box {
	background: #000
}

.filter-wrap .dropdown .dropdown-menu li.black:hover a {
	color: #000
}

.filter-wrap .dropdown .dropdown-menu li.black:hover .dot {
	background: #000
}

.filter-wrap .filter-list {
	margin: -4px 0
}

.filter-wrap .filter-list>li {
	position: relative;
	padding: 0 8px;
	margin: 4px 0
}

.filter-wrap .filter-list>li+li::before {
	position: absolute;
	content: '';
	height: 100%;
	left: -2px;
	top: 0;
	width: 0.3px;
	background: #707070
}

.pagination-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center
}

.page-link {
	width: 34px;
	height: 34px;
	padding: 6px 11px;
	font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(18px + (20 - 18) * ((100vw - 320px) / (1920 - 320)));
	color: #D9D9D9;
	background: transparent;
	border: none;
	border-radius: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center
}

.page-link[aria-label="Previous"],
.page-link[aria-label="Next"] {
	width: auto;
	height: auto
}

.page-link:hover,
.page-link:focus {
	background: transparent;
	color: #D9D9D9;
	-webkit-box-shadow: none;
	box-shadow: none
}

.page-link:focus-visible {
	outline: none
}

@media only screen and (max-width: 575px) {
	.page-link {
		width: 28px;
		height: 28px;
		font-size: 13px
	}

	.page-link img {
		width: 13px;
		height: 13px
	}
}

.page-item.dots {
	color: #FB9929
}

.page-item.active .page-link {
	z-index: 1;
	font-weight: 600;
	background: #FB9929;
	font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(19px + (21 - 19) * ((100vw - 320px) / (1920 - 320)))
}

@media only screen and (max-width: 575px) {
	.page-item.active .page-link {
		font-size: 14px
	}
}

.page-item+.page-item {
	margin-left: 6px
}

@media only screen and (max-width: 575px) {
	.page-item+.page-item {
		margin-left: 2px
	}
}

.switch {
	position: relative;
	display: inline-block;
	width: 43px;
	height: 24px
}

.switch input {
	display: none
}

.switch input:checked+.switch-state:before {
	-webkit-transform: translateX(18px);
	transform: translateX(18px)
}

.switch-state {
	border-radius: 20px;
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #353A48;
	-webkit-transition: 0.4s;
	transition: 0.4s
}

.switch-state:before {
	position: absolute;
	content: "";
	height: 24px;
	width: 24px;
	left: 0;
	bottom: 0;
	background-color: #FB9929;
	-webkit-transition: 0.4s;
	transition: 0.4s;
	border-radius: 20px
}

.price-page {
	padding-top: 94px
}

@media only screen and (max-width: 1199px) {
	.price-page {
		padding-top: 84px
	}
}

@media only screen and (max-width: 575px) {
	.price-page {
		padding-top: 72px
	}
}

.price-page .plan-section {
	padding-top: calc(40px + (118 - 40) * ((100vw - 320px) / (1920 - 320)))
}

.price-page .plan-content {
	text-align: center
}

.price-page .plan-content h1 {
	font-size: calc(34px + (60 - 34) * ((100vw - 320px) / (1920 - 320)));
	margin-bottom: 20px
}

.price-page .plan-content p {
	font-size: calc(16px + (20 - 16) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(20px + (24 - 20) * ((100vw - 320px) / (1920 - 320)));
	width: 52%;
	margin: 0 auto
}

@media only screen and (max-width: 1199px) {
	.price-page .plan-content p {
		width: 70%
	}
}

@media only screen and (max-width: 991px) {
	.price-page .plan-content p {
		width: 100%
	}
}

.price-page .plan-content .price-data {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-bottom: 20px
}

@media only screen and (max-width: 767px) {
	.price-page .plan-content .price-data {
		margin-bottom: 15px
	}
}

.price-page .plan-content .price-data h1 {
	margin-bottom: 0;
	font-weight: 600
}

.price-page .plan-content .price-data span {
	margin-bottom: 10px
}

@media only screen and (max-width: 767px) {
	.price-page footer {
		background: #1A1A1A !important
	}

	.price-page footer .sub-footer {
		border-top: none;
		padding-top: 0
	}

	.price-page footer .sub-footer .copyright {
		padding-top: 6px;
		margin-top: 30px;
		border-top: 1px solid #fff
	}
}

.plan-box {
	text-align: left;
	padding-top: calc(40px + (100 - 40) * ((100vw - 320px) / (1920 - 320)))
}

.plan-box .plan-details {
	background: #1D1E23;
	padding: 15px;
	max-width: 962px;
	margin: 0 auto;
	border-radius: 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative
}

.plan-box .plan-details.month-plan {
	display: none
}

@media only screen and (max-width: 767px) {
	.plan-box .plan-details {
		padding: 0;
		max-width: unset;
		display: block
	}
}

.plan-box .plan-details>div {
	width: 100%
}

@media only screen and (max-width: 767px) {
	.plan-box .plan-details .row .order-first {
		padding-bottom: 0
	}
}

.plan-box .plan-details .row>div {
	padding: calc(15px + (55 - 15) * ((100vw - 320px) / (1920 - 320))) calc(25px + (65 - 25) * ((100vw - 320px) / (1920 - 320)))
}

@media only screen and (max-width: 767px) {
	.plan-box .plan-details .row>div {
		padding: 36px calc(20px + (57 - 20) * ((100vw - 320px) / (767 - 320)))
	}
}

@media only screen and (max-width: 420px) {
	.plan-box .plan-details .row>div {
		padding: 20px
	}
}

.plan-box .plan-details .row>div:last-child {
	border-left: 1px solid #2F3037
}

@media only screen and (max-width: 767px) {
	.plan-box .plan-details .row>div:last-child {
		border-left: none
	}
}

@media only screen and (max-width: 767px) {
	.plan-box .plan-list {
		text-align: center
	}
}

.plan-box .plan-list h5 {
	font-weight: bold
}

@media only screen and (max-width: 767px) {
	.plan-box .plan-list h5 {
		position: absolute;
		top: 36px;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		margin-left: -10px
	}
}

@media only screen and (max-width: 420px) {
	.plan-box .plan-list h5 {
		top: 20px
	}
}

.plan-box .plan-list ul {
	margin-top: 16px
}

@media only screen and (max-width: 767px) {
	.plan-box .plan-list ul {
		margin-top: 0;
		display: inline-block
	}
}

.plan-box .plan-list ul img {
	margin-right: 17px
}

@media only screen and (max-width: 420px) {
	.plan-box .plan-list ul img {
		margin-right: 10px;
		width: 15px;
		height: 15px
	}
}

.plan-box .plan-list ul li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

@media only screen and (max-width: 420px) {
	.plan-box .plan-list ul li {
		font-size: 12px
	}

	.plan-box .plan-list ul li span {
		margin-bottom: -2px
	}
}

.plan-box .plan-list ul li+li {
	margin-top: 10px
}

.plan-box .plan-subscribe {
	text-align: center
}

@media only screen and (max-width: 767px) {
	.plan-box .plan-subscribe {
		padding-top: 30px
	}
}

.plan-box .plan-subscribe .ribbon {
	width: 150px;
	height: 150px;
	overflow: hidden;
	position: absolute;
	top: 0;
	right: 0
}

@media only screen and (max-width: 767px) {
	.plan-box .plan-subscribe .ribbon {
		display: none
	}
}

.plan-box .plan-subscribe .ribbon::before,
.plan-box .plan-subscribe .ribbon::after {
	position: absolute;
	z-index: -1;
	content: '';
	display: block;
	border: 5px solid #FB9929;
	border-top-color: transparent;
	border-right-color: transparent
}

.plan-box .plan-subscribe .ribbon span {
	position: absolute;
	display: block;
	width: 225px;
	padding: 4px 0;
	background-color: #FB9929;
	color: #1D1E23;
	font-size: 12px;
	line-height: 15px;
	font-weight: 600;
	text-transform: capitalize;
	text-align: center;
	left: 0;
	top: 30px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg)
}

.plan-box .plan-subscribe .ribbon::before {
	top: 0;
	left: 0
}

.plan-box .plan-subscribe .ribbon::after {
	bottom: 0;
	right: 0
}

.plan-box .plan-subscribe .btn {
	padding: 19px 56px;
	margin-bottom: 13px
}

@media only screen and (max-width: 1199px) {
	.plan-box .plan-subscribe .btn {
		padding: 19px 35px
	}
}

@media only screen and (max-width: 575px) {
	.plan-box .plan-subscribe .btn {
		padding: 14px 52px
	}
}

.toogle-switch {
	margin-bottom: 39px
}

.toogle-switch .form-switch {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 0
}

.toogle-switch .form-switch .form-check-input {
	width: 43px;
	height: 24px;
	background: #353A48
}

.toogle-switch .form-check>span {
	margin-right: 50px;
	font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(18px + (21 - 18) * ((100vw - 320px) / (1920 - 320)));
	-webkit-transition: 0.5s;
	transition: 0.5s
}

@media only screen and (max-width: 767px) {
	.toogle-switch .form-check>span {
		margin-right: 35px
	}
}

.toogle-switch .form-check>span.active {
	font-size: calc(16px + (20 - 16) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(20px + (24 - 20) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 500;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

.toogle-switch .form-check>span~span {
	margin-right: 0 !important;
	margin-left: 50px
}

@media only screen and (max-width: 767px) {
	.toogle-switch .form-check>span~span {
		margin-left: 35px
	}
}

.toogle-switch .form-check .form-check-input {
	float: unset
}

.feature-section h3 {
	font-weight: 500
}

.feature-section .row {
	margin-top: calc(15px + (45 - 15) * ((100vw - 320px) / (1920 - 320)))
}

.feature-box {
	text-align: center;
	padding: calc(15px + (44 - 15) * ((100vw - 320px) / (1920 - 320))) calc(20px + (75 - 20) * ((100vw - 320px) / (1920 - 320)))
}

@media only screen and (max-width: 1399px) {
	.feature-box {
		padding: 30px
	}
}

@media only screen and (max-width: 1199px) {
	.feature-box {
		padding: 30px 16px
	}
}

.feature-box h5 {
	color: #FB9929;
	margin-top: 30px;
	margin-bottom: 9px
}

.feature-box p {
	font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(18px + (20 - 18) * ((100vw - 320px) / (1920 - 320)))
}

.accordion {
	margin-top: calc(20px + (83 - 20) * ((100vw - 320px) / (1920 - 320)))
}

.accordion .accordion-button {
	background: transparent;
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
	font-size: 18px;
	line-height: 21px;
	font-weight: 600;
	padding: 40px
}

@media only screen and (max-width: 991px) {
	.accordion .accordion-button {
		font-size: 16px;
		line-height: 19px;
		padding: 30px
	}
}

@media only screen and (max-width: 575px) {
	.accordion .accordion-button {
		padding: 30px 40px 30px 15px;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start
	}
}

.accordion .accordion-button::after {
	background-image: url(../images/icons/accordion-arrow.svg);
	margin-top: -6px
}

@media only screen and (max-width: 991px) {
	.accordion .accordion-button::after {
		width: 16px;
		height: 16px;
		background-size: contain
	}
}

@media only screen and (max-width: 575px) {
	.accordion .accordion-button::after {
		position: absolute;
		right: 15px;
		top: 50%;
		-webkit-transform: rotate(-180deg) translateY(-50%);
		transform: rotate(-180deg) translateY(-50%);
		margin-top: -19px
	}
}

.accordion .accordion-button.collapsed::after {
	margin-bottom: -9px;
	margin-top: 0
}

@media only screen and (max-width: 575px) {
	.accordion .accordion-button.collapsed::after {
		margin-bottom: 0;
		-webkit-transform: rotate(0) translateY(-50%);
		transform: rotate(0) translateY(-50%);
		margin-top: 4px
	}
}

.accordion .accordion-body {
	padding: 0 65px 30px;
	color: #E9E9E9;
	font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
	line-height: calc(18px + (20 - 18) * ((100vw - 320px) / (1920 - 320)))
}

@media only screen and (max-width: 991px) {
	.accordion .accordion-body {
		padding: 0 54px 30px
	}
}

@media only screen and (max-width: 575px) {
	.accordion .accordion-body {
		padding: 0 40px 30px
	}
}

.accordion .accordion-item {
	background: #262931;
	border: none;
	border-radius: 10px
}

.accordion .accordion-item.accordion-item {
	margin-top: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)))
}

@media only screen and (max-width: 767px) {
	.faq-section {
		padding-bottom: 53px
	}
}

.faq-section .see-link {
	text-align: center;
	margin-top: calc(30px + (56 - 30) * ((100vw - 320px) / (1920 - 320)))
}

.faq-section .see-link a {
	font-weight: 500
}

.faq-section .see-link a:hover {
	color: #FB9929
}

@media only screen and (max-width: 1199px) {
	.gy-6 {
		margin: -15px
	}

	.gy-6>div {
		padding: 15px
	}

	.navbar-brand img {
		width: 150px
	}
}

@media only screen and (max-width: 991px) {
	.gy-6 {
		margin: -10px
	}

	.gy-6>div {
		padding: 10px
	}

	.filter-wrap {
		position: relative
	}

	.filter-wrap h4 {
		margin-right: 0;
		cursor: pointer
	}

	.filter-wrap .filter-list {
		position: absolute;
		top: 20px;
		right: 0;
		opacity: 0;
		visibility: hidden;
		-webkit-transition: 0.5s;
		transition: 0.5s;
		z-index: 1;
		padding: 15px;
		background: #1A1C24;
		width: 150px
	}

	.filter-wrap .filter-list.open {
		top: 30px;
		opacity: 1;
		visibility: visible;
		-webkit-transition: 0.5s;
		transition: 0.5s
	}

	.filter-wrap .filter-list li {
		display: block;
		padding: 0
	}

	.filter-wrap .filter-list li+li::before {
		display: none
	}

	.filter-wrap .dropdown .dropdown-toggle::after {
		position: absolute;
		right: 0
	}
}

@media only screen and (max-width: 767px) {
	.btn {
		padding: 12px 20px
	}

	header nav {
		opacity: 1;
		visibility: visible
	}

	header .navbar-brand {
		margin: 0;
		padding: 0
	}

	header .navbar-toggler {
		position: absolute;
		right: 24px;
		top: -50px;
		padding: 0;
		border: none;
		color: #fff
	}

	header .navbar-toggler:focus-visible {
		outline: none
	}

	header .navbar-toggler:focus {
		-webkit-box-shadow: none;
		box-shadow: none
	}

	header .nav-pills .search-icon {
		margin-top: -5px
	}

	header .navbar-collapse {
		position: fixed;
		right: 0;
		top: 0;
		height: 100vh !important;
		background: #1A1A1A;
		-webkit-transition: 0.5s;
		transition: 0.5s;
		z-index: 8;
		width: 396px;
		-webkit-box-shadow: 0 -46px 6px #00000080;
		box-shadow: 0 -46px 6px #00000080;
		padding-left: 45px
	}

	header .navbar-collapse.show {
		z-index: 8
	}

	header .navbar-collapse .sidebar-logo {
		padding: 24px 30px 36px 0;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center
	}

	header .navbar-collapse .sidebar-logo .brand-logo img {
		height: 35px
	}

	header .navbar-collapse ul li {
		border-bottom: 1px solid #2d2f32
	}

	header .navbar-collapse .bottom-links {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		padding-right: 32px;
		padding-left: 0;
		margin-top: 24px
	}

	header .navbar-collapse .bottom-links .btn {
		font-size: 14px;
		line-height: 17px
	}

	header .navbar-collapse .bottom-links a {
		font-size: 16px;
		line-height: 20px;
		color: #fff
	}

	header.fixed .navbar-brand img {
		width: 45px
	}

	header.fixed .navbar-toggler {
		top: -56px
	}

	.navbar .navbar-nav {
		display: block
	}

	.navbar .navbar-nav li {
		display: block
	}

	.navbar .navbar-nav .nav-item {
		display: block;
		width: 100% !important
	}

	.navbar .navbar-nav .nav-link {
		text-align: left;
		padding-left: 0
	}

	.navbar .navbar-nav .nav-link::after {
		display: none
	}
}

@media only screen and (max-width: 575px) {
	header .nav {
		margin-right: 70px
	}

	header .navbar-toggler {
		right: 12px
	}

	header.fixed .navbar-toggler {
		top: -53px
	}

	.navbar-toggler-icon {
		width: 25px;
		height: 25px
	}

	.title-2 h2 {
		padding-bottom: 6px
	}

	.title-2 span::after {
		bottom: -6px
	}

	.container {
		padding-left: 32px;
		padding-right: 32px
	}

	.title h3 {
		font-size: 18px;
		line-height: 21px
	}

	.title a {
		font-size: 12px;
		line-height: 15px
	}

	.title a:hover {
		font-size: 12px;
		line-height: 15px
	}

	.title a:hover img {
		width: 13px;
		height: 13px;
		margin-left: 5px
	}

	.trending-section {
		overflow: hidden
	}

	.trending-section .arrow-slider {
		padding: 0;
		margin: 0 -32px 0 -32px;
		width: 100vw
	}

	.trending-section .arrow-slider .swiper-button-prev,
	.trending-section .arrow-slider .swiper-button-next {
		display: none
	}

	.arrow-white .swiper-button-prev,
	.arrow-white .swiper-button-next {
		display: none
	}

	.main-footer {
		text-align: center
	}

	.main-footer .row {
		margin: -20px 0
	}

	.main-footer .row>div {
		margin: 20px 0
	}

	.main-footer .col-lg-3 {
		display: none
	}
}

@media only screen and (max-width: 420px) {
	.container {
		padding-left: 25px;
		padding-right: 25px
	}

	.trending-section .arrow-slider {
		margin: 0 -25px 0 -20px
	}

	header .nav {
		margin-right: 0
	}

	header .navbar-collapse {
		width: 280px;
		padding-left: 25px
	}

	header .header-search {
		width: 175px
	}

	header.fixed .navbar-toggler {
		top: -50px
	}

	header.fixed .navbar-brand img {
		width: 35px
	}
}


.oauth-app {
    flex-direction: row;
    -ms-flex-align: stretch;
    align-items: stretch;
    height: 100%;
    overflow: hidden;
  background: white;
}


.art-wrapper {
    background-color: #f8fafb;
    height: 100%;
    overflow: hidden;
    position: relative;
}

.art-wrapper img {
    filter: brightness(80%);
    height: 100%;
    object-fit: cover;
    pointer-events: none;
    width: 100%;
}


.content-wrapper {
    align-items: center;
    justify-content: center;
    padding: 10px 10px;
    background-color: #fff;
    flex-direction: column;
    position: relative;
    height: 100%;
}

.content-wrapper .main-content {
    align-items: stretch;
    display: block;
    margin-top: 100px;
    justify-content: center;
    flex-direction: column;
    height: 100%;
    padding-bottom: 60px;
    position: relative;
 	padding: 0px 100px;
}

.main-logo {
    margin-bottom: 70px !important;
}
.main-logo {
    align-items: center;
    display: flex;
    justify-content: center;
    height: 22px;
}

.mb20{margin-bottom:20px;}
.mt20{margin-top:20px;}

.img-icon{width: 16px;}

.forgotten-password a {
    font-size: 14px;
    font-weight: bold;
    color: #336aea;
}

.have-account {
    font-size: 14px;
    font-weight: bold;
}

.base-layout {
    height: 55%;
}

.am-errors{margin-top: 15px!important;}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlL19jb21tb24uc2NzcyIsInN0eWxlL192YXJpYWJsZXMuc2NzcyIsInN0eWxlL19oZWFkZXIuc2NzcyIsInN0eWxlL19zdHlsZS5zY3NzIiwic3R5bGUvX3Jlc3BvbnNpdmUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxLQUNJLCtCQUFnQyxDQUNoQyxjQUFlLENBQ2YsZUFBZ0IsQ0FDbkIsR0FHRyxtRUFBb0UsQ0FDcEUscUVBQXNFLENBQ3RFLGdCQUFpQixDQUNqQixRQUFTLENBQ1osR0FHRyxtRUFBb0UsQ0FDcEUscUVBQXNFLENBQ3RFLGdCQUFpQixDQUNqQixRQUFTLENBQ1osR0FHRyxtRUFBb0UsQ0FDcEUscUVBQXNFLENBQ3RFLGVBQWdCLENBQ2hCLFFBQVMsQ0FDWixHQUdHLG1FQUFvRSxDQUNwRSxxRUFBc0UsQ0FDdEUsZ0JBQWlCLENBQ2pCLFFBQVMsQ0FDWixHQUdHLG1FQUFvRSxDQUNwRSxxRUFBc0UsQ0FDdEUsZUFBZ0IsQ0FDaEIsUUFBUyxDQUNaLEdBR0csbUVBQW9FLENBQ3BFLHFFQUFzRSxDQUN0RSxlQUFnQixDQUNoQixRQUFTLENBQ1osRUFHRyxRQUFTLENBQ1osRUFHRyxtRUFBb0UsQ0FDcEUsZ0JBQWlCLENBQ2pCLGFDckRtQixDRHNEbkIsb0JBQXFCLENBQ3JCLHVCQUFZLENBQVosZUFBZ0IsQ0FMcEIsUUFPUSx1QkFBWSxDQUFaLGVBQWdCLENBQ25CLE1BSUQsU0FBVSxDQUNWLFFBQVMsQ0FDWixHQUVHLG9CQUFxQixDQUN4QixNQUdHLFlBQWEsQ0FEakIsVUFHUSxZQUFhLENBQ2hCLE9BSUQsa0JDcEVhLENEcUViLGtCQUFtQixDQUNuQixxRUFBc0UsQ0FDdEUsYUFBYyxDQUNkLHVCQUFZLENBQVosZUFBZ0IsQ0FMcEIsYUFPUSxrQkNuRmUsQ0RvRmYsdUJBQVksQ0FBWixlQUFnQixDQUNuQixLQUlELG1FQUFvRSxDQUNwRSxxRUFBc0UsQ0FDdEUsZUFBZ0IsQ0FDaEIsaUJBQWtCLENBSnRCLGtD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QUlMLFVBQVcsQ0FDWCxXQUFZLENBQ2YsWUFHRyxrQkFBbUIsQ0FGdkIscUJBTVksV0FBWSxDQUNmLFdBSUwsaUJBQWtCLENBQ2xCLGtCQUFtQixDQUN0QixVQUdPLGNBQWUsQ0FDZixnQkFBaUIsQ0FIekIsU0FNUSxjQUFlLENBQ2YsZ0JBQWlCLENBUHpCLGVBU1ksY0FBZSxDQUNmLGdCQUFpQixDQVY3QixtQkFZZ0IsVUFBVyxDQUNYLFdBQVksQ0FDWixlQUFnQixDQUNuQixrQkFLVCxlQUFnQixDQURwQixnQ0FHUSxTQUFVLENBQ1Ysc0JBQXVCLENBQ3ZCLFdBQVksQ0FMcEIsd0dBUWdCLFlBQWEsQ0FDaEIsa0VBT0QsWUFBYSxDQUNoQixhQUlMLGlCQUFrQixDQUR0QixrQkFHUSxjQUFlLENBSHZCLHNCQUtZLGFBQWMsQ0FMMUIsdUJBU1EsWUFBYSxDQUNoQixDSDlNRCwwQ0dtTkosV0FDSSxpQkFBa0IsQ0FDbEIsa0JBQW1CLENBQ3RCLGdDQUdPLHNCQUF1QixDQUMxQixZQUlHLGNBQWUsQ0FGdkIsd0JBS1EsV0FBWSxDQUNaLGlCQUFrQixDQU4xQixzQkFTUSxXQUFZLENBVHBCLDZCQWFZLFNBQVUsQ0FidEIsK0JBaUJnQixVQUFXLENBQ2QiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXG5ib2R5IHtcbiAgICBmb250LWZhbWlseTogJ0ludGVyJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuaDEge1xuICAgIGZvbnQtc2l6ZTogY2FsYygzNnB4ICsgKDYyIC0gMzYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDQ4cHggKyAoNzIgLSA0OCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5oMiB7XG4gICAgZm9udC1zaXplOiBjYWxjKDIycHggKyAoNDIgLSAyMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoMzBweCArICg1MSAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW46IDA7XG59XG5cbmgzIHtcbiAgICBmb250LXNpemU6IGNhbGMoMjFweCArICgyOCAtIDIxKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBsaW5lLWhlaWdodDogY2FsYygyOHB4ICsgKDM0IC0gMjgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5oNCB7XG4gICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjAgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoMjBweCArICgyNCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW46IDA7XG59XG5cbmg1IHtcbiAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxOCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBsaW5lLWhlaWdodDogY2FsYygxOHB4ICsgKDIxIC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5oNiB7XG4gICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoMThweCArICgyMCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbjogMDtcbn1cblxucCB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5hIHtcbiAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxOCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBsaW5lLWhlaWdodDogMS4yNztcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgfVxufVxuXG5vbCwgdWwge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xufVxubGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmd5LTYge1xuICAgIG1hcmdpbjogLTE4cHg7XG4gICAgPiBkaXYge1xuICAgICAgICBwYWRkaW5nOiAxOHB4O1xuICAgIH1cbn1cblxuLmxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kOiAkY2FyZC1iZztcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICAgIHBhZGRpbmc6IDdweCBjYWxjKDEycHggKyAoMjAgLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgfVxufVxuXG4uYnRuIHtcbiAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxOCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBsaW5lLWhlaWdodDogY2FsYygxOHB4ICsgKDIxIC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgcGFkZGluZzogMTVweCA0MHB4O1xuICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gICAgJjphY3RpdmUge1xuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4uYnRuLWxnIHtcbiAgICBmb250LXNpemU6IGNhbGMoMThweCArICgyNCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBsaW5lLWhlaWdodDogY2FsYygyM3B4ICsgKDI5IC0gMjMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xufVxuLmJ0bi1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJHByaW1hcnktY29sb3IsIDIlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJHByaW1hcnktY29sb3IsIDIlKTtcbiAgICB9XG59XG5cbi5jYXJkIHtcbiAgICBiYWNrZ3JvdW5kOiAkY2FyZC1iZztcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgLmNhcmQtYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYnRuLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAzOHB4O1xuICAgIGhlaWdodDogMzhweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICRmb290ZXItYmc7XG4gICAgYm94LXNoYWRvdzogMHB4IDNweCA2cHggIzAwMDAwMDRGO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcmlnaHQ6IC0xOXB4O1xuICAgIHRvcDogLTIwcHg7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiAxO1xuICAgICY6Zm9jdXMsICY6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbn1cblxuLyogaW5wdXQgY3NzICovXG4uZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nOiAxMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgY29sb3I6ICRiZy1kYXJrLTUwO1xuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWxpZ2h0O1xuICAgIH1cbiAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxufVxuLmlucHV0LWdyb3VwIHtcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgIH1cbiAgICAmLXRleHQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgfVxufVxuXG4uZm9ybS1pY29uIHtcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICB9XG4gICAgLnNlYXJjaC1pY29uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDIzcHg7XG4gICAgICAgIGhlaWdodDogMjNweDtcbiAgICB9XG59XG5cbi8qIGRyb3Bkb3duIGNzcyAqL1xuLmRyb3Bkb3duIHtcbiAgICBidXR0b24sIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gICAgYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbnMvZG93bi1hcnJvdy5zdmcpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogOXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogOXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICYtaXRlbSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGRyb3Bkb3duLWJnO1xuICAgICAgICB9XG4gICAgfVxufVxuLmRyb3Bkb3duLW1lbnUge1xuICAgIHotaW5kZXg6IDI7XG4gICAgYmFja2dyb3VuZDogJGRyb3Bkb3duLWJnO1xuICAgIGJveC1zaGFkb3c6IDJweCAzcHggNnB4ICMyNjI2MjY2RTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4vKiBzZWN0aW9uIGNzcyAqL1xuc2VjdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMzBweCArICg5MCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAuYm9yZGVyLWJvdHRvbSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLnNlY3Rpb24tYi1zcGFjZSB7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoMzBweCArICg3OCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbn1cbi5zZWN0aW9uLWxnLXNwYWNlIHtcbiAgICBwYWRkaW5nOiBjYWxjKDMwcHggKyAoMTQwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDA7XG59XG5cbi5iZy1kYXJrIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctZGFyayAhaW1wb3J0YW50O1xufVxuLmJnLWRhcmsxIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctZGFyay01MCAhaW1wb3J0YW50O1xufVxuLmJnLWRhcmssIC5iZy1kYXJrMSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbn1cblxuLnRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgaDMge1xuICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZXNtKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXB4O1xuICAgICAgICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBmb250LXNpemU6ICBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogIGNhbGMoMThweCArICgyMCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi50aXRsZS0yIHtcbiAgICBoMiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxM3B4O1xuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGJvdHRvbTogLTEzcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZCwgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkIHtcbiAgICBib3JkZXItY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSkgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2ludmFsaWQuc3ZnKSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0NjBweCkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDE0MzBweDtcbiAgICB9XG59IiwiXG4kYmxhY2s6ICMwMDA7XG4kd2hpdGU6ICNmZmY7XG4kcHJpbWFyeS1jb2xvcjogI0ZCOTkyOTtcbiRiZy1kYXJrOiAjMTkxYjFmO1xuJGJnLWRhcmstNTA6ICMxZjIxMjc7XG4kYm9yZGVyLWNvbG9yOiAjMzEzMzM3O1xuJGJnLW92ZXJsYXk6ICMzNDM2M2E7XG4kdGV4dC1saWdodDogI0E1QTVBNTtcbiRzbGlkZXItYnVsbGV0LWJnOiAjMzMzNzQxO1xuJGZvb3Rlci1iZzogIzFBMUExQTtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogI0JCQkFCQTtcbiRjYXJkLWJnOiAjMjYyOTMxO1xuJGxpZ2h0LXRleHQtY29sb3I6ICNDMUMxQzE7XG4kaW5wdXQtYmctY29sb3I6ICMzNTNBNDg7XG4kaW5wdXQtdGV4dC1jb2xvcjogIzdCN0I3QjtcbiRkcm9wZG93bi1iZzogIzFBMUMyNDtcbiRwYWdpbmF0aW9uLXRleHQtY29sb3I6ICNEOUQ5RDk7XG4kcGxhbi1iZzogIzFEMUUyMztcblxuLy8gYnJlYWtwb2ludHMgXG5AbWl4aW4gcmVzcG9uZCAoJGJyZWFrcG9pbnQpIHtcbiAgICBAaWYgJGJyZWFrcG9pbnQ9PTE1NDAge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE1NDBweCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGlmICRicmVha3BvaW50PT1sYXB0b3Age1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzOTlweCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGlmICRicmVha3BvaW50PT1sYXB0b3AyIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpZiAkYnJlYWtwb2ludD09dGFibGV0IHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGlmICRicmVha3BvaW50PT1pcGFkIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGlmICRicmVha3BvaW50PT1tb2JpbGUge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaWYgJGJyZWFrcG9pbnQ9PW1vYmlsZXNtIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MjBweCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59IiwiXG4vKiBoZWFkZXIgY3NzIHN0YXJ0ICovXG5Aa2V5ZnJhbWVzIHNlYXJjaGFuaW1hdGlvbiB7XG4gICAgMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNDBweCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICB9XG59XG5cbi5uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI3O1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQodGFibGV0KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxOCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgfVxuICAgIH1cbiAgICAudGV4dC13aGl0ZSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgfVxuICAgIH1cbn1cbi5uYXZiYXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLm5hdmJhci1uYXYge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogdW5zZXQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAyNHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQoaXBhZCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE3cHg7XG4gICAgICAgICAgICB9IFxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmFjdGl2ZSwgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLy8gZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgLy8gbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubmF2LWl0ZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5oZWFkZXIge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgdHJhbnNpdGlvbjogMC41cztcbiAgICBiYWNrZ3JvdW5kOiAkYmctZGFyaztcbiAgICA+IGRpdiwgbmF2IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJnLWRhcms7XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgfVxuXG4gICAgbmF2IHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgIH1cbiAgICAubmF2IHtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNzBweDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChpcGFkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICBcbiAgICAuZC1mbGV4IHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMCA3MHB4O1xuICAgICAgICBAaW5jbHVkZSByZXNwb25kKHRhYmxldCkge1xuICAgICAgICAgICAgcGFkZGluZzogMCAyN3B4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQoaXBhZCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICAgICAgcGFkZGluZzogMCAzNnB4IDAgMTJweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyLXNlYXJjaCB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgIHdpZHRoOiA1MiU7XG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobGFwdG9wMikge1xuICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMjVweDtcbiAgICAgICAgfVxuICAgICAgICAuZm9ybS1pY29uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMyNDI0MjQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4zMik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5maXhlZCB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgYW5pbWF0aW9uOiBzZWFyY2hhbmltYXRpb24gMC41cyBmb3J3YXJkcztcbiAgICAgICAgLm5hdmJhciB7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTZweDtcbiAgICAgICAgICAgICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNjE1QjU0O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTZweCAyMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciwgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaGVhZGVyLXNlYXJjaCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgfVxuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMTMxMzEzO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgfVxuICAgICAgICBuYXYge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzFBMUExQTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5zZWFyY2gtc2VjdGlvbiB7XG4gICAgLm5hdmJhci1uYXYge1xuICAgICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQoaXBhZCkge1xuICAgICAgICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQoaXBhZCkge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuLmJnLW92ZXJsYXkge1xuICAgICYuYWN0aXZlIHtcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICB3aWR0aDogMTAwdnc7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC4yKTtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICB0b3A6IDA7XG4gICAgfVxufVxuLyogaGVhZGVyIGNzcyBlbmQgKi8iLCIvKiBzdHlsZSBjc3Mgc3RhcnQgKi9cbi5zZWFyY2gtcGFuZWwge1xuICAgIG1hcmdpbi10b3A6IC0yNnB4O1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDMwcHggKyAoNjMgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgQGluY2x1ZGUgcmVzcG9uZChpcGFkKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICB9XG4gICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDIwIC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIH1cbiAgICBmb3JtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzZweDtcbiAgICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygyMHB4ICsgKDI2IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMjBweCArICgyNiAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIHN3aXBlciBjc3MgKi9cbi5hcnJvdy1zbGlkZXIge1xuICAgIEBpbmNsdWRlIHJlc3BvbmQoMTU0MCkge1xuICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnN3aXBlciB7XG4gICAgICAgICYtYnV0dG9uIHtcbiAgICAgICAgICAgICYtcHJldiB7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtbmV4dCB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zd2lwZXJfd3JhcHtcbiAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAuc3dpcGVyLWJ1dHRvbi1uZXh0e1xuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA0MCU7XG4gICAgICAgIHJpZ2h0OiAtMzVweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBAaW5jbHVkZSByZXNwb25kKDE1NDApIHtcbiAgICAgICAgICAgIHJpZ2h0OiAtNnB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICAgICAgdG9wOiAzMCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnN3aXBlci1idXR0b24tcHJldntcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDQwJTtcbiAgICAgICAgbGVmdDogLTM1cHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICBAaW5jbHVkZSByZXNwb25kKDE1NDApIHtcbiAgICAgICAgICAgIGxlZnQ6IC02cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICAgICAgICB0b3A6IDMwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIHdpZHRoOiAxMHB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAkc2xpZGVyLWJ1bGxldC1iZztcbiAgICBvcGFjaXR5OiAxO1xuICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICAgIGhlaWdodDogNnB4O1xuICAgIH1cbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgfVxufVxuLnN3aXBlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgICYtc2xpZGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLWJ1dHRvbiB7XG4gICAgICAgICYtbmV4dCwgJi1wcmV2IHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4vKiBzdHlsZSBjc3MgZW5kICovXG5cbi8qIHRlbXBsYXRlIGJveCBjc3MgKi9cbi50ZW1wbGF0ZSB7XG4gICAgJi1pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjlzO1xuICAgICAgICA+IGltZyB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMXB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgLm92ZXJsYXkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRiZy1vdmVybGF5O1xuICAgICAgICAgICAgcGFkZGluZzogY2FsYyg4cHggKyAoMjQgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDEwcHggKyAoMzAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IC05MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNnB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuOXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGxhcHRvcCkge1xuICAgICAgICAgICAgICAgcGFkZGluZzogMThweDsgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKHRhYmxldCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDI0IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxMHB4ICsgKDMwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC00cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAxO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNwYW4scCAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGxhcHRvcCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTIycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobGFwdG9wKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoNiwgc3BhbiwgYSwgcCB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC45cztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5mbGV4LWdyb3ctMSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChsYXB0b3ApIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobGFwdG9wMikge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDY3JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZCh0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1NiU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQoaXBhZCkge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDY1JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDM4cHggOXB4IHJnYmEoJGJsYWNrLCAwLjQ1KTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC45cztcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAub3ZlcmxheSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICAgICAgICAgIGg2LCBzcGFuLHAsIGEge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjlzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXRvcDogY2FsYygxNXB4ICsgKDI2IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBoNSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICAgIH1cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi50aGVtZS13cmFwIHtcbiAgICAudGVtcGxhdGUge1xuICAgICAgICAmLWltYWdlIHtcbiAgICAgICAgICAgIC5vdmVybGF5IHtcbiAgICAgICAgICAgICAgICBib3R0b206IC0xMDBweDtcbiAgICAgICAgICAgICAgICAuZmxleC1ncm93LTEge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTIzcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIHsgXG4gICAgICAgICAgICAgICAgLm92ZXJsYXkge1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiB2aWRlbyBzZWN0aW9uIGNzcyAqL1xuLnZpZGVvLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKDUwcHggKyAoMTAwIC0gNTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIC5yb3cge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogY2FsYyg1MHB4ICsgKDEwMCAtIDUwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChpcGFkKSB7IFxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnZpZGVvIHtcbiAgICAgICAgJi1jb250ZW50IHtcbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjY4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjIgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMjBweCArICgyNiAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI0IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDIxcHggKyAoMjkgLSAyMSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBjYWxjKDIwcHggKyAoNDIgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMCBjYWxjKDI1cHggKyAoNDcgLSAyNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgLnctMTAwIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtaW1hZ2Uge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgLnZpZGVvLWljb24ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTBweCArICgxMTcgLSA1MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYyg0N3B4ICsgKDExNCAtIDQ3KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIGNsaWVudCBzZWN0aW9uIGNzcyAqL1xuLmNsaWVudC13cmFwIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDIwcHggKyAoNjAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICA+IGRpdiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG5cbi8qIHRlc3RpbW9uaWFsIHNlY3Rpb24gY3NzICovXG4udGVzdGltb25pYWwge1xuICAgICYtc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDUwcHggKyAoODIgLSA1MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgfVxuICAgICYtc2xpZGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzJweDtcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZCh0YWJsZXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogY2FsYygyMHB4ICsgKDUwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIFxuICAgICAgICAgICAgICAgICBjYWxjKDIwcHggKyAoNTAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgXG4gICAgICAgICAgICAgICAgIGNhbGMoMzBweCArICg3MCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgLmQtZmxleCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzM3B4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgID4gaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNThweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE2IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMTdweCArICgyMCAtIDE3KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuICAgICAgICBoNiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTFweDtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzFCMUQyMztcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggNDJweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGVzbSkge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogYmxvZyBzZWN0aW9uIGNzcyAqL1xuLmJsb2cge1xuICAgICYtaW1hZ2Uge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMjhweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNHB4O1xuICAgICAgICBAaW5jbHVkZSByZXNwb25kKGxhcHRvcDIpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7IFxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgd2lkdGg6IDU4JTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE2IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMThweCArICgyMCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobGFwdG9wKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDczJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobGFwdG9wMikge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLmFycm93LXdoaXRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLnN3aXBlci1idXR0b24ge1xuICAgICAgICAmLW5leHQsICYtcHJldiB7XG4gICAgICAgICAgICB0b3A6IDM0JTtcbiAgICAgICAgICAgIHdpZHRoOiA0NnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0NnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGxhcHRvcCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChsYXB0b3ApIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiAtMjFweDtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGxhcHRvcCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC03cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAtMjFweDtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobGFwdG9wKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICByaWdodDogLTdweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogZm9vdGVyIGNzcyAqL1xuZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkZm9vdGVyLWJnO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMzBweCArICg1OCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygzMHB4ICsgKDQwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgLmNvbHVtbi1saXN0IHtcbiAgICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgICAgICBjb2x1bW4tZ2FwOiAxNnB4O1xuICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHtcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm1haW4tZm9vdGVyIHtcbiAgICAgICAgcGFkZGluZzogMCBjYWxjKDMwcHggKyAoNzggLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMzBweCArICg1OCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChsYXB0b3AyKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChpcGFkKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5mb290ZXItbG9nbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZm9vdGVyIHtcbiAgICAgICAgICAgICYtZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtbGlua3Mge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgKyBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnN1Yi1mb290ZXIge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLnNvY2lhbC1saW5rcyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICsgbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvcHlyaWdodCB7XG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBpbm5lciBwYWdlIGNzcyAqL1xuLmlubmVyLXBhZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAxNDhweDtcbiAgICBAaW5jbHVkZSByZXNwb25kKGxhcHRvcDIpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDE0MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDg0cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlc20pIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDc2cHg7XG4gICAgfVxufVxuLmJyZWFkY3J1bWIge1xuICAgICYtaXRlbSB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udGh1bWJuYWlsIHtcbiAgICAmLXNsaWRlciwgJi1uYXYge1xuICAgICAgICAuc3dpcGVyIHtcbiAgICAgICAgICAgICYtc2xpZGUge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTUycHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChsYXB0b3ApIHsgXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobGFwdG9wMikge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGVzbSkge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLW5hdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMjVweCArICg0NSAtIDI1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgLnN3aXBlciB7XG4gICAgICAgICAgICYtc2xpZGUge1xuICAgICAgICAgICAgICAgIGhlaWdodDogODdweDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGxhcHRvcCkge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDY1cHg7IFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYtdGh1bWItYWN0aXZlLCAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5wcm9kdWN0LWFycm93IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLnN3aXBlci1idXR0b24ge1xuICAgICAgICAmLW5leHQsICYtcHJldiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICB3aWR0aDogMzRweDtcbiAgICAgICAgICAgIGhlaWdodDogMzRweDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDJweCAxcHggM3B4ICNGQjk5Mjk0RDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobGFwdG9wMikge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyOHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjhweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChsYXB0b3AyKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1wcmV2IHtcbiAgICAgICAgICAgIGxlZnQ6IC0xNnB4O1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogLTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLW5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IC0xNnB4O1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgICAgICAgIHJpZ2h0OiAtNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgICAuc3dpcGVyLWJ1dHRvbiB7XG4gICAgICAgICAgICAmLW5leHQsICYtcHJldiB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4uZG93bmxvYWQtZml4IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMztcbiAgICBiYWNrZ3JvdW5kOiAkZm9vdGVyLWJnO1xuICAgIHBhZGRpbmc6IDE0cHggMzJweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBidXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgIH1cbn1cbi5zaGFyZS1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDMycHg7XG4gICAgdG9wOiAzNXB4O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgbWluLXdpZHRoOiAxMTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgKyBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICA+IGEge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxufVxuLmZpeC1ib3R0b20tc3BhY2Uge1xuICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7IFxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogOTBweDtcbiAgICB9XG59XG4ucHJvZHVjdC13cmFwIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MnB4O1xuICAgIEBpbmNsdWRlIHJlc3BvbmQobGFwdG9wKSB7IFxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSByZXNwb25kKHRhYmxldCkgeyBcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gICAgLnRodW1ibmFpbC1zbGlkZXIge1xuICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkgeyBcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyOHB4O1xuICAgICAgICB9XG4gICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5hcnJvdy1zbGlkZXIge1xuICAgICAgICBAaW5jbHVkZSByZXNwb25kKDE1NDApIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHsgXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEycHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5zd2lwZXItYnV0dG9uIHtcbiAgICAgICAgICAgICYtcHJldiwgJi1uZXh0IHtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGxhcHRvcDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtcHJldiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZCgxNTQwKSB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHsgXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkgeyBcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTEycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi1uZXh0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKDE1NDApIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0yNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHsgXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHsgXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDMwcHggKyAoNTIgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogY2FsYygyM3B4ICsgKDI1IC0gMjMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodC10ZXh0LWNvbG9yO1xuICAgICAgICAgICAgd2lkdGg6IDk3JTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobGFwdG9wMikge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMjVweCArICg0NSAtIDI1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gICAgICAgIH1cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbWFyZ2luOiAtNXB4IGNhbGMoLTZweCArICgtMTAgLSAtNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggY2FsYyg2cHggKyAoMTAgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5yaWdodC1zaWRlYmFyIHtcbiAgICBoNCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuICAgIC5idG4ge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgyMiAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMjBweCArICgyNiAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgbWFyZ2luLXRvcDogMTdweDtcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnNpZGViYXItbGlzdCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgKyBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjFweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZC1mbGV4IHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLnJlbGF0ZWQtc3VnZ2VzdCB7XG4gICAgLnRpdGxlIHtcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJ0biB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxOHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMThweDtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYygwcHggKyAoMTkgLSAwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZCh0YWJsZXQpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE0cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIG1vZGFsIGNzcyAqL1xuLm1vZGFsIHtcbiAgICAmLWRpYWxvZyB7XG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7IFxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi1jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGZvb3Rlci1iZztcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAxNHB4ICMwMDAwMDA4MDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgICAmLWJvZHkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIH1cbn1cbi5zaWdudXAtbW9kYWwge1xuICAgIC5tb2RhbCB7XG4gICAgICAgICYtZm9ybSB7XG4gICAgICAgICAgICB3aWR0aDogNjQlO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChsYXB0b3AyKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDcyJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNDhweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGxhcHRvcDIpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmZvcm0tY29udHJvbCwgLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRpbnB1dC1iZy1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGlucHV0LXRleHQtY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHsgXG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMThweCA4cHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQoaXBhZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTRweCA4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRpbnB1dC10ZXh0LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmxpbmstdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1yaWdodCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAucm93IHtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cbi52aWRlby1tb2RhbCB7XG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gICAgaWZyYW1lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQodGFibGV0KSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDI4MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYygxNjBweCArICgyNTAgLSAxNjApICogKCgxMDB2dyAtIDMyMHB4KSAvICg1NzUgLSAzMjApKSkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogY2F0ZWdvcnkgcGFnZSBjc3MgKi9cbi5jYXRlZ29yeSB7XG4gICAgJi13cmFwcGVyIHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDE4cHggKyAoMjAgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygyMHB4ICsgKDUzIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIH1cbiAgICAmLWdyaWQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDQwcHggKyAoOTAgLSA0MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgIWltcG9ydGFudDtcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMjBweCArICg0MyAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5zb3J0LW9wdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGg0IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzNHB4O1xuICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5kcm9wZG93biB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHtcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuZG90IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5zZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICAuZG90IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5maWx0ZXItcGFuZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDM0cHg7XG4gICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgaDQge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbn1cbi5maWx0ZXItd3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGg0IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE0cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNvbG9yLWRyb3Bkb3duIHtcbiAgICAgICAgd2lkdGg6IDIwNXB4O1xuICAgICAgICAuZG90IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDVweDtcbiAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgfVxuICAgICAgICBoNiwgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgaDYge1xuICAgICAgICAgICAuZG90IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuZHJvcGRvd24ge1xuICAgICAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgLmRvdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kb3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jb2xvci1ib3gge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxN3B4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE3cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMC41cHggc29saWQgIzcwNzA3MDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLmJsdWUge1xuICAgICAgICAgICAgICAgICAgICAuY29sb3ItYm94IHsgXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjM0Y1MUI0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMzRjUxQjQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAuZG90IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjM0Y1MUI0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYueWVsbG93IHtcbiAgICAgICAgICAgICAgICAgICAgLmNvbG9yLWJveCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkI5OTI5O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGQjk5Mjk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAuZG90IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkI5OTI5O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYucHVycGxlIHtcbiAgICAgICAgICAgICAgICAgICAgLmNvbG9yLWJveCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjN0IxRkExO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM3QjFGQTE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAuZG90IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjN0IxRkExO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYucmVkIHtcbiAgICAgICAgICAgICAgICAgICAgLmNvbG9yLWJveCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRjM0MzM2O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGMzQzMzY7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAuZG90IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRjM0MzM2O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuZ3JlZW4ge1xuICAgICAgICAgICAgICAgICAgICAuY29sb3ItYm94IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICM4QUMyNEE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzhBQzI0QTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIC5kb3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICM4QUMyNEE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi53aGl0ZSB7XG4gICAgICAgICAgICAgICAgICAgIC5jb2xvci1ib3gge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIC5kb3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLmJsYWNrIHtcbiAgICAgICAgICAgICAgICAgICAgLmNvbG9yLWJveCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgLmRvdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5maWx0ZXItbGlzdCB7XG4gICAgICAgIG1hcmdpbjogLTRweCAwO1xuICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgOHB4O1xuICAgICAgICAgICAgbWFyZ2luOiA0cHggMDtcbiAgICAgICAgICAgICsgbGkge1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTJweDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMC4zcHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICM3MDcwNzA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLnBhZ2luYXRpb24ge1xuICAgICYtd3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbn1cbi5wYWdlLWxpbmsge1xuICAgIHdpZHRoOiAzNHB4O1xuICAgIGhlaWdodDogMzRweDtcbiAgICBwYWRkaW5nOiA2cHggMTFweDtcbiAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBsaW5lLWhlaWdodDogY2FsYygxOHB4ICsgKDIwIC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi10ZXh0LWNvbG9yO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAmW2FyaWEtbGFiZWw9XCJQcmV2aW91c1wiXSwgJlthcmlhLWxhYmVsPVwiTmV4dFwiXSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLXRleHQtY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgIHdpZHRoOiAyOHB4O1xuICAgICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICAgICB9XG4gICAgfVxufVxuLnBhZ2UtaXRlbSB7XG4gICAgJi5kb3RzIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDE4IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMTlweCArICgyMSAtIDE5KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7IFxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICArIC5wYWdlLWl0ZW0geyBcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIHByaWNlIHBhZ2UgY3NzICovXG4uc3dpdGNoIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiA0M3B4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBpbnB1dCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgJjpjaGVja2VkICsgLnN3aXRjaC1zdGF0ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMThweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnN3aXRjaC1zdGF0ZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmctY29sb3I7XG4gICAgdHJhbnNpdGlvbjogMC40cztcbiAgICAmOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICB0cmFuc2l0aW9uOiAwLjRzO1xuICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICB9XG4gIH1cbi5wcmljZS1wYWdlIHtcbiAgICBwYWRkaW5nLXRvcDogOTRweDtcbiAgICBAaW5jbHVkZSByZXNwb25kKGxhcHRvcDIpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDg0cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3MnB4O1xuICAgIH1cbiAgICAucGxhbiB7XG4gICAgICAgICYtc2VjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogY2FsYyg0MHB4ICsgKDExOCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuICAgICAgICAmLWNvbnRlbnQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygzNHB4ICsgKDYwIC0gMzQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgyMCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogY2FsYygyMHB4ICsgKDI0IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MiU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChsYXB0b3AyKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQodGFibGV0KSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wcmljZS1kYXRhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQoaXBhZCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBmb290ZXIge1xuICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRmb290ZXItYmcgIWltcG9ydGFudDtcbiAgICAgICAgICAgIC5zdWItZm9vdGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgIC5jb3B5cmlnaHQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNnB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5wbGFuLWJveCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nLXRvcDogY2FsYyg0MHB4ICsgKDEwMCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAucGxhbiB7XG4gICAgICAgICYtZGV0YWlscyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcGxhbi1iZztcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDk2MnB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICYubW9udGgtcGxhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQoaXBhZCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yb3cge1xuICAgICAgICAgICAgICAgIC5vcmRlci1maXJzdCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQoaXBhZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoNTUgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsYygyNXB4ICsgKDY1IC0gMjUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDM2cHggY2FsYygyMHB4ICsgKDU3IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICg3NjcgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIH0gICAgICAgXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH0gICAgIFxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMkYzMDM3O1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChpcGFkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1saXN0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQoaXBhZCkge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDM2cHg7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlc20pIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQoaXBhZCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTdweDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGVzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZXNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICsgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLXN1YnNjcmliZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yaWJib24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKGlwYWQpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgIGJvcmRlcjogNXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIyNXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0cHggMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcGxhbi1iZztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE5cHggNTZweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxM3B4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobGFwdG9wMikge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxOXB4IDM1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggNTJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4udG9vZ2xlLXN3aXRjaCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzlweDtcbiAgICAuZm9ybS1zd2l0Y2gge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgICAgICAgd2lkdGg6IDQzcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtYmctY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNTBweDsgXG4gICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTggLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMThweCArICgyMSAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQoaXBhZCkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzNXB4OyBcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjAgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogY2FsYygyMHB4ICsgKDI0IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgICAgfVxuICAgICAgICAgIH4gc3BhbiB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNTBweDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChpcGFkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDM1cHg7IFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgICAgIGZsb2F0OiB1bnNldDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZlYXR1cmUge1xuICAgICYtc2VjdGlvbiB7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDE1cHggKyAoNDUgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi1ib3gge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICg0NCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDIwcHggKyAoNzUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobGFwdG9wKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobGFwdG9wMikge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAxNnB4O1xuICAgICAgICB9XG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA5cHg7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDE4cHggKyAoMjAgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hY2NvcmRpb24ge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMjBweCArICg4MyAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAuYWNjb3JkaW9uIHtcbiAgICAgICAgJi1idXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKHRhYmxldCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTlweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDQwcHggMzBweCAxNXB4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbnMvYWNjb3JkaW9uLWFycm93LnN2Zyk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKHRhYmxldCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTlweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmNvbGxhcHNlZCB7XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtOXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1ib2R5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNjVweCAzMHB4O1xuICAgICAgICAgICAgY29sb3I6ICNFOUU5RTk7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKDE4cHggKyAoMjAgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kKHRhYmxldCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNTRweCAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZChtb2JpbGUpIHsgXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCA0MHB4IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1pdGVtIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjYXJkLWJnO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgICYuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5mYXEtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgcmVzcG9uZChpcGFkKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1M3B4O1xuICAgIH1cbiAgICAuc2VlLWxpbmsge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMzBweCArICg1NiAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qIFJlc3BvbnNpdmUgY3NzIHN0YXJ0ICovXG5AaW5jbHVkZSByZXNwb25kKGxhcHRvcDIpIHtcbiAgICAuZ3ktNiB7XG4gICAgICAgIG1hcmdpbjogLTE1cHg7XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm5hdmJhci1icmFuZCB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbmNsdWRlIHJlc3BvbmQodGFibGV0KSB7XG4gICAgLmd5LTYge1xuICAgICAgICBtYXJnaW46IC0xMHB4O1xuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5maWx0ZXItd3JhcCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaDQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgICAgIC5maWx0ZXItbGlzdCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd24tYmc7XG4gICAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICsgbGkge1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZHJvcGRvd24ge1xuICAgICAgICAgICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AaW5jbHVkZSByZXNwb25kKGlwYWQpIHsgXG4gICAgLmJ0biB7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMjBweDtcbiAgICB9XG4gICAgaGVhZGVyIHtcbiAgICAgICBuYXYge1xuICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgIH1cbiAgICAgICAubmF2YmFyLWJyYW5kIHtcbiAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgIH1cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgdG9wOiAtNTBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubmF2LXBpbGxzIHtcbiAgICAgICAgICAgIC5zZWFyY2gtaWNvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGZvb3Rlci1iZztcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgICAgICB6LWluZGV4OiA4O1xuICAgICAgICAgICAgd2lkdGg6IDM5NnB4O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAtNDZweCA2cHggIzAwMDAwMDgwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0NXB4O1xuICAgICAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgICAgICAvLyBhbmltYXRpb246IGZhZGVJbiAwLjNzIGxpbmVhcjtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNpZGViYXItbG9nbyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjRweCAzMHB4IDM2cHggMDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAuYnJhbmQtbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzJkMmYzMjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYm90dG9tLWxpbmtzIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMycHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gICAgICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmZpeGVkIHtcbiAgICAgICAgICAgIC5uYXZiYXItYnJhbmQge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAubmF2YmFyIHtcbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubmF2LWl0ZW0ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbmNsdWRlIHJlc3BvbmQobW9iaWxlKSB7XG4gICAgaGVhZGVyIHtcbiAgICAgICAgLm5hdiB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDcwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiAxMnB4O1xuICAgICAgICB9XG4gICAgICAgICYuZml4ZWQge1xuICAgICAgICAgICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgICAgICAgICB0b3A6IC01M3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICB9XG4gICAgLnRpdGxlLTIge1xuICAgICAgIGgyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDZweDtcbiAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogLTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMnB4O1xuICAgIH1cbiAgICAudGl0bGUge1xuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjFweDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC50cmVuZGluZy1zZWN0aW9uIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgLmFycm93LXNsaWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0zMnB4IDAgLTMycHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICAuc3dpcGVyLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgJi1wcmV2LCAmLW5leHQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuYXJyb3ctd2hpdGUge1xuICAgICAgICAuc3dpcGVyLWJ1dHRvbiB7XG4gICAgICAgICAgICAmLXByZXYsICYtbmV4dCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAubWFpbi1mb290ZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgbWFyZ2luOiAtMjBweCAwO1xuICAgICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb2wtbGctMyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AaW5jbHVkZSByZXNwb25kKG1vYmlsZXNtKSB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICB9XG4gICAgLnRyZW5kaW5nLXNlY3Rpb24ge1xuICAgICAgICAuYXJyb3ctc2xpZGVyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMjVweCAwIC0yMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIGhlYWRlciB7XG4gICAgICAgIC5uYXYge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgICAgd2lkdGg6IDI4MHB4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5oZWFkZXItc2VhcmNoIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNzVweDtcbiAgICAgICAgfVxuICAgICAgICAmLmZpeGVkIHtcbiAgICAgICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5uYXZiYXItYnJhbmQge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogUmVzcG9uc2l2ZSBjc3MgZW5kICovIl19 */
/*# sourceMappingURL=style.css.map */

@media only screen and (max-width: 600px) {
.art-wrapper{display:none;}
.oauth-app{overflow: auto;}  
.content-wrapper .main-content{padding: 0px 15px;}  
} 


@media only screen and (max-width: 768px) {
.art-wrapper{display:none;}
.oauth-app{overflow: auto;}  
} 


input.razorpay-payment-button {
    padding: 0.833rem 2.333rem;
    font-size: 1rem;
    line-height: 1.167rem;
    background-color: #fb9929;
    color: #ffffff;
    padding: 0.667rem 1.778rem;
    border-radius: 0.278rem;
    border: 0px;
}

.turnstile .form-control {
    border: 0px;
    text-align: center;
}


	/* ---- footer starts ---- */

	.sc-footer-section{
		padding: 6.25rem 0 1.5rem 0;
	}
	.sc-footer-content .sc-footer-widget{
		display: flex;
		gap: 13rem;
	}
	.sc-ft-logo{
		margin-top: 0.375rem;
	}
	.sc-ft-logo img{
		width: 10.875rem;
		height: 2.313rem;
	}
	.footer-widget-one{
		flex-basis: 48.813rem;
		margin-right: 52px;
	}
	.footer-widget-two{
		flex-basis: 48.813rem;
	}
	.footer-widget-one h2 {
		font-size: 3rem;
		line-height: 4rem;
		padding-bottom: 1.375rem;
	}
	.sc-footer-links-col {
		flex-direction: row;
		gap: 0rem;
	}
	.sc-ft-social-icon-grp {
		padding: 2rem 0 2.625rem;
	}
	.footer-widget-one p{
		font-size: 0.938rem;
		line-height: 1.5rem;
	}
	.sc-footer-links-col h3 {
		padding-bottom: 2rem;
		font-size: 1.5rem;
		line-height: 1.813rem;
	}
	.sc-footer-links-col li {
		padding-bottom: 1.625rem;
	}
	.sc-footer-links-col .wp-block-column:last-child h3 {
		padding-bottom: 2.175rem;
	}
	.sc-footer-links-col a {
		font-size: 1rem;
		line-height: 1.188rem;
		color:#848484;
	}
	.sc-footer-links-col p {
		padding-bottom: 1.625rem;
	}
	.sc-footer-links-col li:not(:last-child) {
		padding-bottom: 1.95rem;
	}
	
	/* ---- footer ends ---- */
	
	
	.divider {
    display: flex;
    align-items: center;
    text-align: center;
    color: #aaa;
  	margin-top:15px;
}

.divider::before,
.divider::after {
    content: '';
    flex: 1;
    border-bottom: 1px solid #aaa;
}

.divider:not(:empty)::before {
    margin-right: .5em;
}

.divider:not(:empty)::after {
    margin-left: .5em;
}

.divider span {
    padding: 0 10px;
    font-size: 14px;
    color: #aaa;
}

.button-container {
    display: flex;
    justify-content: center; /* Center horizontally */
    align-items: center; /* Align items vertically */
    gap: 10px; /* Space between the buttons */
    height: 100%; /* Adjust based on your container's height */
    width: 100%; /* Adjust based on your container's width */
    margin-top: 20px;
}

.google-button {
    display: flex;
    align-items: center;
    padding: 10px 20px;
    border: 1px solid #dadce0;
    border-radius: 5px;
    background-color: #fff;
    color: #5f6368;
    font-size: 16px;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.3s ease;
    font-family: Arial, sans-serif;
}

.google-button:hover {
    background-color: #f5f5f5;
}

.google-icon {
    width: 25px;
    height: 25px;
    margin-right: 10px;
}

/* Button styling for Facebook */
.facebook-button {
    display: flex;
    align-items: center;
    padding: 10px 20px;
    border: 1px solid #dadce0;
    border-radius: 5px;
    background-color: #fff;
    color: #5f6368;
    font-size: 16px;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.3s ease;
    font-family: Arial, sans-serif;
}

.facebook-button:hover {
    background-color: #e7f3ff; /* Light Facebook blue on hover */
}

.facebook-icon {
    width: 25px;
    height: 25px;
    margin-right: 10px;
}

.text-center{margin-top: 15px;}
.am-pass-indicator-wrap{display: block!important;}