/*@font-face {
    font-family: "Cairo";
    src: url("../assets/fonts/Cairo-Regular/Cairo-Regular.eot");
    src: url("../assets/fonts/Cairo-Regular/Cairo-Regular.eot?#iefix") format("embedded-opentype"), url("../assets/fonts/Cairo-Regular/Cairo-Regular.woff2") format("woff2"), url("../assets/fonts/Cairo-Regular/Cairo-Regular.woff") format("woff"), url("../assets/fonts/Cairo-Regular/Cairo-Regular.ttf") format("truetype"), url("../assets/fonts/Cairo-Regular/Cairo-Regular.svg#svgFontName") format("svg")
}*/

body {
    font-family: 'Cairo', sans-serif;
    direction: rtl;
    background-color: #fff
}

.element {
    font-family: 'Tajawal', sans-serif;
}

[type=email],
[type=number],
[type=tel],
[type=url] {
    direction: rtl
}

img {
    max-width: 100%;
    display: block
}

video {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

button:focus,
input:focus,
select:focus,
textarea:focus {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    outline: none !important;
    border-color: var(--main-color) !important
}

label {
    cursor: pointer
}

ul {
    list-style: none;
    padding: 0
}

::-webkit-scrollbar {
    width: 5px
}

::-webkit-scrollbar-track {
    background-color: #fff
}

::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, .15);
    border-radius: 3px
}

::-webkit-scrollbar-thumb:hover {
    background: var(--main-color)
}

@media(min-width: 991px) {
    .modal-backdrop {
        background-color: transparent !important
    }
}

.tooltip-inner {
    background-color: var(--main-color) !important
}

.tooltip.bs-tooltip-top .tooltip-arrow::before {
    border-top-color: var(--main-color) !important
}

.custom-control-input:checked~.custom-control-label:before {
    color: #fff;
    border-color: var(--main-color);
    background-color: var(--main-color)
}

.form-check-input:checked {
    color: #fff;
    border-color: var(--main-color);
    background-color: var(--main-color)
}

.nice-select {
    text-align: right !important;
    padding-right: 50px;
    padding-left: 30px;
    border-radius: 12px;
    height: 60px;
    line-height: 60px
}

.nice-select .list {
    width: 100%
}

.nice-select .option {
    text-align: right !important
}

.nice-select:active,
.nice-select.open,
.nice-select:focus {
    border-color: var(--main-color)
}

.nice-select:after {
    right: auto;
    left: 20px;
    height: 10px;
    width: 10px;
    margin-top: -8px
}

.nice-select .option:hover,
.nice-select .option.focus,
.nice-select .option.selected.focus {
    background-color: #fff
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.18;
    margin-bottom: 0
}

p {
    line-height: 1.67;
    margin-bottom: 0
}

a {
    text-decoration: none
}

.accordion-item {
    margin-bottom: 20px;
    border-radius: 15px;
    border: none;
    overflow: hidden
}

.accordion-button {
    background-color: #f9f9f9 !important;
    color: #333 !important
}

.accordion-button::after {
    -webkit-filter: brightness(0%);
    filter: brightness(0%)
}

.main-btn {
    color: #fff !important;
    text-align: center;
    border-radius: 15px;
    z-index: 2;
    min-width: 120px;
    padding: 5px 10px;
    min-height: 61px;
    position: relative;
    overflow: hidden;
    display: inline-block
}

.main-btn::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-color: var(--main-color);
    opacity: 60%;
    -webkit-transition: opacity .3s linear;
    transition: opacity .3s linear
}

.main-btn:hover::after {
    opacity: 100%
}

.owl-stage {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.owl-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: auto !important
}

.owl-item .item {
    width: 100% !important
}

.owl-theme .owl-nav.disabled+.owl-dots {
    margin-top: 40px
}

.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
    background: var(--main-color)
}

.owl-carousel .owl-nav button.owl-next,
.owl-carousel .owl-nav button.owl-prev {
    background-color: #fcfcfc;
    border-radius: 25px;
    padding: 5px 15px !important;
    -webkit-transition: background-color .3s;
    transition: background-color .3s;
    color: var(--sub-color);
    min-width: 80px;
    font-size: 14px
}

.owl-carousel .owl-nav button.owl-next:hover,
.owl-carousel .owl-nav button.owl-prev:hover {
    background-color: var(--sub-color);
    color: #fff
}

.navbar .nav-item .dropdown-menu {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    padding: 0;
    max-height: 400px;
    overflow-x: hidden;
    overflow-y: auto;
    direction: ltr;
    display: block;
    opacity: 0;
    -webkit-transition: opacity .3s linear;
    transition: opacity .3s linear;
    visibility: hidden;
    margin: 0;
    border: 0
}

@media(max-width: 991px) {
    .navbar .nav-item .dropdown-menu {
        position: absolute !important;
        max-width: 100%
    }
}

.navbar .nav-item .dropdown-menu .dropdown-item {
    padding: 11px 35px;
    white-space: unset
}

.navbar .nav-item .dropdown-menu .dropdown-item p {
    font-size: 18px
}

@media(max-width: 991px) {
    .navbar .nav-item .dropdown-menu .dropdown-item p {
        font-size: 16px
    }
}

.navbar .nav-item .dropdown-menu .dropdown-item:focus {
    background-color: var(--main-color) !important;
    color: #fff
}

.navbar .nav-item .dropdown-menu.show {
    opacity: 1;
    visibility: visible
}

.navbar .nav-item .dropdown-toggle {
    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
}

.navbar .nav-item .dropdown-toggle::after {
    content: "";
    font-family: "Font Awesome 5 Free";
    border: none;
    -webkit-transition: -webkit-transform .3s linear;
    transition: -webkit-transform .3s linear;
    transition: transform .3s linear;
    transition: transform .3s linear, -webkit-transform .3s linear;
    font-weight: 900
}

.navbar .nav-item .dropdown-toggle.show::after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.upper-navbar__logo {
    position: relative
}

.upper-navbar__logo__img {
    width: 52px;
    height: 52px;
    object-fit: contain;
}

.upper-navbar__logo__img.main-logo {
    height: 50px;
    width: 65px
}

.upper-navbar__logo__drop-icon {
    all: unset;
    width: 26px;
    display: block;
    height: 26px;
    line-height: 26px;
    text-align: center;
    position: absolute;
    left: -35px;
    bottom: -2px;
    color: var(--main-color);
    border-radius: 5px;
    overflow: hidden;
    cursor: pointer;
    z-index: 2
}

.upper-navbar__logo__drop-icon .fa-chevron-down {
    -webkit-transition: -webkit-transform .3s linear;
    transition: -webkit-transform .3s linear;
    transition: transform .3s linear;
    transition: transform .3s linear, -webkit-transform .3s linear
}

.upper-navbar__logo__drop-icon.show .fa-chevron-down {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

@media(max-width: 991px) {
    .upper-navbar__logo__drop-icon {
        left: 0px
    }
}

.upper-navbar__logo__drop-icon::after {
    all: unset;
    content: "";
    inset: 0;
    position: absolute;
    background-color: var(--main-color);
    z-index: -1;
    opacity: 10%
}

.upper-navbar__contcat__img {
    width: 51px
}

#modalNavbar .modal-body {
    padding: 0
}

@media(max-width: 991px) {
    #modalNavbar .modal-dialog {
        margin: 0 !important
    }
}

#modalNavbar .modal-content {
    border-radius: 18px;
    padding: 10px 0
}

@media(max-width: 991px) {
    #modalNavbar .modal-content {
        border-radius: 0
    }
}

#modalNavbar .modal-content .menu__item {
    background: #fff;
    padding: 25px 20px;
    border-radius: 12px;
    display: block;
    margin-bottom: 5px
}

@media(max-width: 991px) {
    #modalNavbar .modal-content .menu__item {
        padding: 10px;
        border-radius: 8px
    }
}

#modalNavbar .modal-content .menu__item:hover {
    -webkit-box-shadow: 0 0 10px 0 rgba(51, 51, 51, .1);
    box-shadow: 0 0 10px 0 rgba(51, 51, 51, .1)
}

#modalNavbar .modal-content .menu__item.active {
    border: 3px solid rgba(0, 0, 0, .08)
}

#modalNavbar .modal-content .menu__item__img {
    width: 60px;
    height: 60px;
    margin-left: 16px
}

#modalNavbar .modal-content .menu__item__text {
    color: #333
}

.navbar {
    background-color: var(--main-color)
}

@media(max-width: 991px) {
    .navbar {
        background-color: #fff;
        padding-bottom: 20px !important
    }
}

.navbar .navbar-brand {
    color: #fff;
    font-weight: bold
}

.navbar .navbar-toggler {
    color: #333;
    position: absolute;
    top: 10px;
    left: 10px;
    border: none !important
}

.navbar .nav-link {
    color: #fff;
    padding: 18px 20px
}

@media(max-width: 991px) {
    .navbar .nav-link {
        color: #333;
        text-align: center;
        position: relative;
        margin-bottom: 10px;
        font-weight: bold
    }
}

.navbar .nav-link.active,
.navbar .nav-link.show,
.navbar .nav-link:hover {
    color: var(--main-color);
    background-color: #fff
}

@media(max-width: 991px) {

    .navbar .nav-link.active::before,
    .navbar .nav-link.show::before,
    .navbar .nav-link:hover::before {
        content: "";
        position: absolute;
        inset: 0;
        background-color: var(--main-color);
        opacity: 15%
    }
}

.navbar__sochial__link {
    border: 1px solid rgba(255, 255, 255, .5);
    color: #fff;
    width: 48px;
    height: 48px;
    line-height: 48px;
    text-align: center;
    display: block;
    border-radius: 50%;
    -webkit-transition: background-color .3s linear;
    transition: background-color .3s linear
}

.navbar__sochial__link:hover {
    color: var(--main-color);
    background-color: #fff
}

@media(max-width: 991px) {
    .navbar-collapse {
        max-width: 100%;
        margin-top: 20px
    }
}

.header {
    z-index: 1;
    position: relative
}

@media(max-width: 991px) {
    .header {
        margin-bottom: 7rem;
    }
}

.header__silder__form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 999;
    width: 100%;
    max-width: 800px;
    margin: auto;
    margin-top: 11rem;
    margin-bottom: -5rem;
}

.header__silder__form .bg-white {
    border-radius: 15px
}

@media(max-width: 991px) {
    .header__silder__form {
        position: absolute;
        z-index: 2;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        width: 95%;
        top: 50%;
        margin-top: 1rem;
    }
}

.header__silder__form__content__img {
    width: 55px;
    height: 40px
}

.header__silder__form__item {
    position: relative
}

.header__silder__form__item::before {
    content: url("../assets/images/header/target.svg");
    position: absolute;
    z-index: 1;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    top: 50%;
    right: 20px;
    height: 20px;
    width: 20px;
    line-height: 20px;
    display: block
}

.header .owl-carousel .owl-stage {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important
}

.header .owl-carousel .owl-item img {
    width: 100% !important;
    min-height: 484px !important
}

@media(min-width: 991px) {
    .header .owl-carousel .owl-item img {
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center;
        object-position: center
    }
}

header .carousel-inner .survey-card {
    opacity: 0.7;
}

header .carousel-inner .survey-card .card-body {
    padding: 2rem;
    text-align: center;
    border: 0px !important;
    width: 30rem;
    opacity: 1;
}

header .carousel-inner .survey-card .card-body img {
    width: 100% !important;
    max-width: 8rem;
    ;
    min-height: 0px !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    display: block;
    margin: auto;
    margin-top: 1rem;
    margin-bottom: 1rem;
}

header .carousel-inner .survey-card .card-body h5 {
    font-size: 1.5rem;
    font-weight: bold;
}

header .carousel-inner .survey-card .card-body .btn {
    color: #fff;
    min-width: 10rem;
    border: 0px;
    border-radius: 4px;
    margin-top: 1rem;
    padding: 0.7rem;
}

.footer__form__btn {
    background-color: var(--main-color);
    color: #fff;
    min-width: 54px;
    height: 46px;
    border-radius: 4px
}

.footer__form__logo__img {
    width: 50px;
    height: 50px
}

.footer__list__icon {
    color: #333;
    -webkit-transition: color .3s linear;
    transition: color .3s linear;
    position: relative;
    right: 0;
    -webkit-transition: color .3s linear, right .3s linear;
    transition: color .3s linear, right .3s linear
}

.footer__list__link {
    color: #333;
    -webkit-transition: color .3s linear;
    transition: color .3s linear
}

li:hover .footer__list__link {
    color: var(--main-color)
}

li:hover .footer__list__icon {
    color: var(--main-color);
    right: 2px
}

.footer__logo img {
    margin: auto;
}

.footer .navbar__sochial {
    margin-top: 2rem;
}

.footer .navbar__sochial__link {
    color: var(--main-color);
    border: var(--main-color) 1px solid;
    -webkit-transition: color .3s linear;
    transition: color .3s linear
}

.footer .navbar__sochial__link:hover {
    color: #fff;
    background-color: var(--main-color)
}

.logo-keyframe {
    width: 130px
}

.banner {
    position: relative
}

.banner::before {
    content: "";
    height: 50%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    background-color: #fcfcfc;
    left: 0;
    right: 0;
    z-index: -1
}

.banner__content {
    -webkit-box-shadow: 0px 20px 90px rgba(0, 0, 0, .05);
    box-shadow: 0px 20px 90px rgba(0, 0, 0, .05);
    border-radius: 15px;
    overflow: hidden
}

.services__item {
    border-radius: 15px;
    border: 1px solid transparent;
    -webkit-transition: border .3s linear;
    transition: border .3s linear;
    min-height: 290px;
}

.services__item:hover {
    border: 1px solid rgba(51, 51, 51, .2)
}

.services__item__head {
    height: 90px;
}

.services__item__head__text {
    -webkit-transition: color .3s linear;
    transition: color .3s linear;
    font-size: 24px;
    font-weight: 700;
    line-height: 35px;
    text-align: right;
}

.services__item:hover .services__item__head__text {
    color: var(--main-color)
}

.services__item a.main-color {
    font-size: 24px;
    font-family: 'Tajawal';
}

.services__item a.main-color i {
    font-size: 15px;
}

.services__item.stores_download {
    padding: 2rem !important;
}

.services__item.stores_download .services__item__body {
    padding: 1.5rem;
}

.services__item.stores_download .services__item__body a {
    padding: 1rem;
    background: #fff;
    display: inline-block;
    border-radius: 4px;
}

.program {
    background-image: url("../assets/images/program/cover.png");
    background-size: cover;
    position: relative;
    min-height: 350px;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    overflow: hidden
}

.program::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--main-color);
    opacity: 50%;
    z-index: -2
}

.program::after {
    content: "";
    position: absolute;
    left: -12%;
    width: 50%;
    background-color: var(--main-color);
    opacity: 15%;
    z-index: -1;
    top: 0;
    bottom: 0;
    -webkit-transform: skewX(30deg);
    transform: skewX(30deg)
}

.news__silder__item {
    overflow: hidden;
    border-radius: 15px;
    height: 100%
}

.news__silder__item .news__silder__item__body__text {
    -webkit-transition: color .3s linear;
    transition: color .3s linear
}

.news__silder__item:hover .news__silder__item__body__text {
    color: var(--main-color)
}

.news__silder__item__head {
    position: relative
}

.news__silder__item__head__img {
    overflow: hidden
}

.news__silder__item__head__img img {
    height: 220px;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transition: opacity .3s linear, -webkit-transform .3s linear !important;
    transition: opacity .3s linear, -webkit-transform .3s linear !important;
    transition: transform .3s linear, opacity .3s linear !important;
    transition: transform .3s linear, opacity .3s linear, -webkit-transform .3s linear !important;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.news__silder__item__head__text {
    position: absolute;
    bottom: 0;
    padding-bottom: 15px;
    padding-top: 15px;
    width: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(51, 51, 51, 0.3)), to(#333333));
    background: linear-gradient(rgba(51, 51, 51, 0.3), #333333)
}

.news__silder__item:hover .news__silder__item__head img {
    -webkit-transform: scale(1.3);
    transform: scale(1.3)
}

.catgory {
    position: relative;
    background-color: #fcfcfc;
    z-index: 2;
    overflow: hidden
}

.catgory__img {
    border-radius: 15px;
    top: 33%;
    overflow: hidden;
    position: relative
}

.catgory__img__icon {
    position: absolute;
    display: block;
    width: 114px;
    height: 114px;
    line-height: 114px;
    text-align: center;
    z-index: 2;
    color: #fff;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-radius: 50%;
    overflow: hidden;
    cursor: pointer
}

.catgory__img__icon::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--main-color);
    opacity: .35;
    display: block;
    z-index: -1
}

/*.catgory::before {
    content: "";
    position: absolute;
    right: -25%;
    width: 50%;
    background-color: var(--main-color);
    z-index: -1;
    top: 0;
    bottom: 0;
    -webkit-transform: skewX(30deg);
    transform: skewX(30deg)
}*/

@media(max-width: 991px) {
    .catgory::before {
        right: 0;
        left: 0;
        bottom: auto;
        height: 50%;
        width: 100%;
        -webkit-transform: skewX(0) rotate(66deg) translateY(136px) scaleY(1.5);
        transform: skewX(0) rotate(66deg) translateY(136px) scaleY(1.5);
        top: -25%
    }
}

.catgory__item {
    border-radius: 29px;
    position: relative;
    margin: 0 10px
}

/*.catgory__item::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--main-color);
    opacity: .25;
    border-radius: 29px;
    z-index: -1;
    -webkit-transition: -webkit-transform .3s linear;
    transition: -webkit-transform .3s linear;
    transition: transform .3s linear;
    transition: transform .3s linear, -webkit-transform .3s linear;
    -webkit-transform: scale(0.9) rotate(-10deg) translateX(-20px) translateY(-20px);
    transform: scale(0.9) rotate(-10deg) translateX(-20px) translateY(-20px)
}*/

.catgory__item__icon {
    border-radius: 50%;
    background-color: #f9f9f9;
    height: 29px;
    width: 29px;
    line-height: 29px;
    text-align: center;
    display: block
}

.catgory__item__text {
    -webkit-transition: color .3s linear;
    transition: color .3s linear
}

.catgory__item:hover .catgory__item__text {
    color: var(--main-color)
}

.catgory__item:hover::before {
    -webkit-transform: scale(0.9) rotate(0) translateX(0px) translateY(0px);
    transform: scale(0.9) rotate(0) translateX(0px) translateY(0px)
}

#catgoryModal iframe {
    height: 400px
}

.main__header {
    height: 380px;
    background: radial-gradient(50% 50% at 89.48% 50%, #FFFFFF 0%, #F9F9F9 100%);
    position: relative
}

.main__header__img {
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    max-width: 380px
}

.service {
    background-color: #fbfbfb;
    position: relative;
    z-index: 2;
    overflow: hidden
}

.service::after,
.service::before {
    content: "";
    position: absolute;
    background-image: url("../assets/images/service/dots.svg");
    width: 200px;
    height: 200px;
    z-index: -1
}

.service::after {
    left: 0;
    bottom: 0
}

.service::before {
    right: 0;
    top: 40px
}

.service__tabs {
    max-height: 700px;
    overflow-y: auto;
    overflow-x: hidden;
    background-color: #fff;
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
    direction: ltr;
    text-align: right
}

.service__tabs__link {
    padding: 30px 20px;
    color: #333;
    position: relative;
    z-index: 1;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: end
}

.service__tabs__link:hover {
    color: #333
}

.service__tabs__link.active {
    color: #333 !important;
    background-color: #fff !important
}

.service__tabs__link.active::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    -webkit-box-shadow: inset -1px -1px 10px var(--main-color);
    box-shadow: inset -1px -1px 10px var(--main-color);
    opacity: .3
}

.service__tabs__link__img {
    width: 60px
}

.contact__form__label__span {
    font-size: 18px;
    color: #777
}

.contact__form__label__link {
    color: #000 !important
}

.contact textarea {
    min-height: 200px;
    font-size: 24px;
    background-color: #fcfcfc;
    border: none !important
}

.contact textarea::-webkit-input-placeholder {
    color: #9b9b9b
}

.contact textarea::-moz-placeholder {
    color: #9b9b9b
}

.contact textarea:-ms-input-placeholder {
    color: #9b9b9b
}

.contact textarea::-ms-input-placeholder {
    color: #9b9b9b
}

.contact textarea::placeholder {
    color: #9b9b9b
}

.contact label {
    font-size: 24px
}

.contact input {
    height: 76px;
    font-size: 24px;
    background-color: #fcfcfc;
    border: none !important
}

.contact input::-webkit-input-placeholder {
    color: #9b9b9b
}

.contact input::-moz-placeholder {
    color: #9b9b9b
}

.contact input:-ms-input-placeholder {
    color: #9b9b9b
}

.contact input::-ms-input-placeholder {
    color: #9b9b9b
}

.contact input::placeholder {
    color: #9b9b9b
}

.contact .nice-select {
    height: 76px;
    line-height: 76px;
    padding-right: 20px;
    font-size: 24px;
    background-color: #fcfcfc;
    border: none !important
}

.contact label.error {
    color: red;
    margin-bottom: 10px
}

.main-color {
    color: var(--main-color) !important
}

.sub-color {
    color: var(--sub-color)
}

.color-m1 {
    color: #ff007a
}

.color-m2 {
    color: #15b55f
}

.color-m3 {
    color: #7462ab
}

.color-m4 {
    color: #638aa7
}

.color-m5 {
    color: #f77e21
}

.color-m6 {
    color: #c6a25f
}

.color-m7 {
    color: #c2414c
}

.color-m8 {
    color: #ee0507
}

.color-m9 {
    color: #56659e
}

.color-m10 {
    color: #37988e
}

.color-m11 {
    color: #32a88a
}

.color-m12 {
    color: #f22f17
}

.main-bg {
    background-color: var(--main-color)
}

.main-title {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: auto
}

.main-title__text {
    color: #333;
    margin-bottom: 20px;
    font-size: 40px;
    font-family: Tajawal;
}

.main-title__dots {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px
}

.main-title__dots span {
    background-color: var(--main-color);
    height: 5px;
    display: block;
    width: 5px;
    border-radius: 50px
}

.main-title__dots span:nth-child(1) {
    width: 22px
}

.main-title__dots span:nth-child(2) {
    width: 10px
}

.main-title--start {
    margin: unset;
    margin-left: auto
}

.btn-top {
    position: absolute;
    right: 0
}

.btn-top a {
    border-radius: 4px;
    border: 1px solid #f7fafc;
    background-color: #f7fafc;
    color: #fff;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    display: block;
    -webkit-transition: background-color .4s, color, .4s;
    transition: background-color .4s, color, .4s
}

.btn-top:hover a {
    color: #f7fafc;
    background-color: #fff
}

#loader {
    background-color: #010338;
    position: fixed;
    z-index: 99;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    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
}

#loader .loader-img {
    width: 500px;
    max-width: 100%
}

.breadcrumb-item a {
    color: var(--main-color) !important
}

.bg-section {
    background-color: #f9f9f9
}

.logos__silder__item__img img {
    width: 74px !important;
    height: 74px;
    object-fit: contain;
    margin: auto;
}


/*** New Design Version ***/
.upper-navbar__logo a span,
.upper-navbar__logo div {
    font-size: 1.1rem;
}

.upper-navbar__logo img {
    width: auto;
    height: auto;
    max-width: 58px;
}

.upper-navbar__logo__img.main-logo {
    width: auto;
    height: auto;
    max-width: 100px;
    max-height: 66px;
}

#modalNavbar .modal-content {
    padding: 1rem;
    margin-top: 9rem;
}

#modalNavbar .modal-content h3 {
    font-size: 20px;
    font-weight: bold;
    line-height: 31px;
    letter-spacing: -0.04em;
    text-align: right;
    margin-bottom: 1rem;
}

#modalNavbar .modal-content .menu__item.active {
    border: none;
    box-shadow: 0px 2px 6px 0px #14142B0F;
    background: #FFFFFF;
    width: 100%;
    height: 85%;
    gap: 12px;
    padding: 1.5rem;
    border-radius: 12px;
    margin-bottom: 1.5rem;
}

#modalNavbar .modal-content .menu__item__img {
    width: 64px;
    height: auto;
    gap: 0px;
    width: 64px;
    height: auto;
    max-height: 64px;
}

#modalNavbar .modal-content .menu__item__text p {
    font-family: Cairo;
    font-size: 14px;
    font-weight: 500;
    line-height: 25px;
    text-align: right;

}


.navbar-expand-lg .navbar-nav .nav-link {
    position: relative;
    padding: 1rem;
}

/* Hover, active, and show states */
.navbar .nav-link.active,
.navbar .nav-link.show,
.navbar .nav-link:hover {
    color: #cfcfcf;
    background-color: var(--main-color);
}

/* Add the underline effect with ::after */
.navbar .nav-link::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 10px;
    height: 2px;
    /* Line thickness */
    width: 0;
    background-color: #fff;
    /* Color of the line */
    transition: width 0.3s ease;
    /* Smooth animation */
}

/* Animate the line on hover, active, and show states */
.navbar .nav-link.active::before,
.navbar .nav-link.show::before,
.navbar .nav-link:hover::before {
    width: 0%;
    /* Full-width underline on hover */
}

.navbar__sochial__link {
    width: 40px;
    height: 40px;
    line-height: 40px;
}

.carousel-item {
    height: auto;
}

.carousel-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.carousel-caption {
    background-color: rgba(0, 0, 0, 0.8);
    padding: 20px;
}

.carousel-caption {
    background-color: rgb(0 0 0 / 70%);
    padding: 20px;
    height: 100%;
    width: 100%;
    margin: 0;
    display: block !important;
    left: 0;
    right: 0;
    bottom: 0;

}

.carousel-caption img {
    width: 9rem !important;
    height: auto;
    display: inline-block;
    margin-top: 9rem;
    margin-bottom: 4rem;
}

.carousel-caption h5 {
    margin-bottom: 2rem;
    font-size: 2rem;
}

.carousel-caption p {
    width: 70%;
    display: block;
    text-align: center;
    margin: auto;
}

.carousel-control-prev,
.carousel-control-next {
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    border: 2px solid #fff;
    border-radius: 50%;
    padding: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0, 0, 0, 0.5);
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    width: 100%;
    height: 100%;
}

.carousel-control-prev:hover,
.carousel-control-next:hover {
    color: #000;
    background: #ffffff61;
}

.carousel-control-prev:hover span,
.carousel-control-next:hover span {
    color: #000;
}

.carousel-control-prev:focus,
.carousel-control-next:focus {
    border: 2px solid #fff !important;
    outline: none;
}

.carousel-control-prev {
    right: 3rem;
}

.carousel-control-next {
    left: 3rem;
}

.carousel-indicators [data-bs-target] {
    width: 12px;
    /* Set a custom width */
    height: 12px;
    /* Set a custom height */
    border-radius: 50%;
    /* Make it circular */
    background-color: #000;
}

.carousel-indicators [data-bs-target]:focus {
    outline: none;
    border-color: #ffffff00 !important;
}

.carousel-indicators .active {
    background-color: var(--main-color);
    /* Change the active state color */
}

#tenants .tenant-card-link {
    text-decoration: none;
    color: inherit;
    display: block;
    text-align: center;
}

#tenants .tenant-card {
    box-shadow: 0px 2px 12px 0px #14142B14;
    border: 1px solid #E6E8EA;
    background: #FAFAFB;
    border-radius: 12px !important;
    transition: all 0.3s ease;
}

#tenants .tenant-card:hover {
    background: #eeeeee;
    box-shadow: 0px 0px 0px 0px #14142B14;
}

#tenants .tenant-card img {
    margin: auto;
    width: 100%;
    max-width: 80px;
    margin-top: 1rem;
    min-height: 70px;
}

/*#tenants .tenant-card img[src$=".png"] {
    transition: filter 0.3s ease; 
}
  
#tenants .tenant-card:hover img[src$=".png"] {
    filter: brightness(0) invert(1);
}*/

#tenants .tenant-card p {
    margin-top: 1rem;
    min-height: 8rem;
}

#tenants .tenant-card p a {
    background: none;
    margin: auto;
    width: 100%;
    display: block;
    text-align: center;
    font-family: Cairo;
    font-size: 20px;
    font-weight: 700;
    line-height: 29px;
    text-align: center;

}

@media (max-width: 767px) {
    #tenants .tenant-card {
        margin: auto;
        margin-bottom: 1rem;
        width: 90%;
    }
}


.statistics .title-section__text {
    text-align: center;
}

.statistics {
    background: #f7f7f7;
    position: relative;
}

.statistics .top-left-svg,
.statistics .bottom-right-svg {
    position: absolute;
    opacity: 0.1;
}

.statistics .top-left-svg svg,
.statistics .bottom-right-svg svg {
    color: var(--main-color) !important;
}

.statistics .top-left-svg {
    top: 0;
    left: 0;
}

.statistics .bottom-right-svg {
    bottom: 0;
    right: 0;
}

.statistics .title-section__text {}

.statistics .title-section__text h4 {
    font-size: 1.5rem;
}

.statistics .title-section__text p {
    font-size: 1.1rem;
    margin-bottom: 3rem;
}

.statistics .stats-container {
    position: relative;
    /* Ensure the container is positioned relatively */
    width: 100%;
    /* Full width of the parent */
    text-align: center;
    /* Text alignment for inline elements */
    border-radius: 0.7rem;
    overflow: hidden;
    padding: 2rem 2rem;
    margin: auto;
    margin-bottom: 1rem;
    height: auto;
}

@media (max-width: 767px) {
    .statistics .stats-container {
        width: 90%;
    }
}

.stats-container .top-right-svg {
    position: absolute;
    top: 0;
    right: -2rem;
    color: var(--main-color) !important;
    opacity: 0.1;
}

.statistics .stats-container svg,
.statistics .stats-container i {
    color: var(--main-color) !important;
}

.statistics .stats-container:after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    opacity: 0.3;
    background: var(--main-color);
}

.statistics .stats-container img {
    padding: 1rem;
    background: #fff;
    z-index: 1;
    border-radius: 1rem;
    max-width: 75px;
    position: relative;
}

.statistics .stats-container svg,
.statistics .stats-container i {
    color: #000000ad;
    position: absolute;
    right: 2rem;
    font-size: 2.5rem;
    z-index: 1;
    width: auto;
    display: inline-block;
}

.statistics .stats-container h4 {
    width: 100%;
    text-align: center;
    color: #13412F;
    z-index: 1;
    padding: 0.5rem 0rem;
    margin-top: 1rem;
    font-family: Tajawal;
    font-size: 2rem;
    font-weight: 700;
    line-height: 61px;
    letter-spacing: -0.04em;

}

.statistics .stats-container .stat-name {
    width: 100%;
    text-align: center !important;
    color: #000;
    z-index: 1;
    width: 100%;
    text-align: center;
    color: var(--main-color);
    z-index: 1;
    font-family: Tajawal;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 42px;
    letter-spacing: -0.04em;

}

.stat-name {
    margin-bottom: 10px;
}

.stat-count {
    font-size: 32px;
}

.zigzah-container {
    position: absolute;
    top: 0;
    left: 0;
}

.zigzah-container .zigzag1 {
    background: var(--main-color);
    width: 10rem;
    height: 4rem;
    border-bottom-right-radius: 10rem;
    opacity: 0.25;
}

.zigzah-container .zigzag2 {
    border-radius: 80% 5% 60% 40% / 30% 30% 70% 70%;
    width: 10rem;
    height: 4rem;
    position: relative;
    background: var(--main-color);
    opacity: 0.25;
    top: -1rem;
    left: -1rem;
}

#news .container {
    position: relative;
}

.news-card {
    transition: box-shadow 0.3s ease-in-out;
    border-radius: 10px !important;
    margin: 1rem;
}

.news-card:hover {
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
}

.news-card .img-container {
    height: 240px !important;
    overflow: hidden;
    border-radius: 1rem 1rem 0rem 0rem;
}

.news-card__image img {
    width: 100%;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.news-card__content {
    box-shadow: 1px 1px 10px 0px rgba(0, 0, 0, 0.1);
    border-radius: 0rem 0rem 1rem 1rem;
    margin-top: -6px;
}

.news-card__content h4 {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
    min-height: 4rem;
}

.news-card__content p {
    font-size: 14px;
    line-height: 1.6;
}

.news-card__content span {
    margin-right: 10px;
    transition: all 0.3s ease-in-out;
}

.sub-btn:hover span {
    margin-right: 15px;
}



/* Styles for the news slider */
/* Styles for the news slider */
.news-slider {
    position: relative;
    overflow: hidden;
}

.slider_news {
    display: flex;
    transition: transform 0.5s ease-in-out;
    justify-content: flex-start;
    /* Align items to the left */
}

/* Default for 3 or more news items */
.slide_news {
    min-width: calc(100% / 3);
    /* Show 3 slides at a time */
    box-sizing: border-box;
    flex: 1;
    /* Allow flexible growth */
}

/* Handle the case when there are exactly 2 news items */
.slider_news .slide_news:nth-child(2) {
    min-width: calc(100% / 3);
    /* Keep the width consistent for both */
}

.slider_news .slide_news:nth-child(1),
.slider_news .slide_news:nth-child(2) {
    flex: 0 0 calc(100% / 3);
    /* Force each to take 33.334% */
}

/* Handle the case when there is exactly 1 news item */
.slider_news:only-child .slide_news {
    flex: 0 0 calc(100% / 3);
    /* Show one item with 33.334% width */
}

@media (max-width: 767px) {
    .slider_news:only-child .slide_news {
        flex: 0 0 calc(100% / 1);
    }
}


.prev_news,
.next_news {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0);
    color: var(--main-color);
    border: 1px solid var(--main-color);
    padding: 28px;
    cursor: pointer;
    z-index: 1000;
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    font-weight: bold;
    transition: all 0.3s ease-in-out;
}

.prev_news:hover,
.next_news:hover {
    color: #fff;
    background: var(--main-color);
}

.prev_news {
    left: 6rem;
    top: 2rem;
}

.next_news {
    left: 1rem;
    top: 2rem;
}

.img-container .label {
    position: absolute;
    bottom: 0;
    right: 0;
    color: #fff;
    border-radius: 0;
    width: 9rem;
    background: var(--main-color);
    border: none;
    border-top-left-radius: 0.7rem;
    font-size: 0.8rem;
    padding: 0.7rem 0.7rem 0.7rem 0.3rem;
}

.img-container .label i {
    font-size: 1.5rem;
    margin-left: 5px;
}

.news-card__content a {
    color: var(--main-color);
    background: none;
    font-family: Tajawal;
    font-size: 24px;
    font-weight: 500;
    line-height: 35px;
    letter-spacing: -0.04em;
    text-align: right;

}

.news-card__content a:hover {
    color: var(--main-color);
    background: none;
}

.news-card__content a i {
    font-size: 15px;
}

#news .container img {
    height: 300px !important;
}

#about-tenant {
    background: var(--main-color);
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    color: #fff;
    padding: 5rem 0px !important;
}

#about-tenant .home-about-text p {
    line-height: 2rem;
    width: 80%;
    text-align: center;
    margin: auto;
}

footer {
    border-top: 1px solid #ddd;
}

.footer__form__btn {
    background-color: var(--main-color);
    color: #fff;
    min-width: 33%;
    height: 46px;
    border-radius: 10px;
    min-height: 0.7rem;
}

.footer__form__input {
    border: 1px solid #00000029 !important;
    padding: 0.7rem;
    width: 100%;
    border-radius: 10px;
}

.footer__form__logo__img {
    width: 50px;
    height: 50px
}

.footer__form form button {
    margin-top: 1rem;
    width: 100%;
}

.footer__list {
    display: block;
    width: 100%;
}

.footer__list li {
    position: relative;
    width: 100%;
}

.footer__list li span {
    position: absolute;
    left: 0px;
    right: auto;
}

.footer__list li:hover .footer__list__icon {
    right: auto;
    left: 0px;
}

.footer__list__icon {
    color: #333;
    -webkit-transition: color .3s linear;
    transition: color .3s linear;
    position: relative;
    right: 0;
    -webkit-transition: color .3s linear, right .3s linear;
    transition: color .3s linear, right .3s linear
}

.footer__list__link {
    width: 95%;
    color: #333;
    -webkit-transition: color .3s linear;
    transition: color .3s linear
}


li:hover .footer__list__link {
    color: var(--main-color)
}

li:hover .footer__list__icon {
    color: var(--main-color);
    right: 2px
}

.footer__logo img {
    margin: auto;
}

.footer-img-container {
    width: 100%;
}

.footer-img-container .solo-img-container {
    display: inline-block;
    width: 4rem;
}


.footer-img-container .solo-img-container:first-child {
    border-left: 1px solid #0000003b;
    padding-left: 0.7rem;
}

.footer-img-container .upper-navbar__logo__img {
    display: inline-block;
    width: 100%;
}

.footer__list li i,
.footer__list li svg {
    display: none !important;
}

footer p {
    font-size: 0.8rem;
    color: #000000a3;
    margin-top: 1rem;
    font-weight: bold;
    line-height: 1.8rem;
}

.copy-right {
    background: var(--main-color);
    ;
}

.copy-right .text-muted {
    color: #fff !important;
    text-align: center;
}

.logo-keyframe {
    width: 130px
}


/* Tenant Page */
.navbar .nav-item .dropdown-menu.show {
    border-radius: 1rem;
    box-shadow: 0px 2px 12px 0px #14142B14;
    padding-bottom: 0.5rem;
}

.navbar .nav-item .dropdown-menu.show li a {
    padding: 0.5rem 1rem 0.5rem 5rem;
    position: relative;
}


.navbar .nav-item .dropdown-menu.show li a:hover,
.navbar .nav-item .dropdown-menu.show li a:active,
.navbar .nav-item .dropdown-menu.show li a:focus {
    color: var(--main-color);
    background: none;
}

.navbar .nav-item .dropdown-menu .dropdown-item p {
    font-size: 1rem;
}

.header__silder__form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    top: 11rem;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 999;
    width: 85%;
    margin: auto;
    min-height: 20rem;
    max-width: none;
}

.header__silder__form .bg-white {
    border-radius: 15px
}

@media(max-width: 991px) {
    .header__silder__form {
        position: relative;
        z-index: 2;
        left: 0rem;
        -webkit-transform: translateX(-50%);
        transform: translateX(0%);
        width: 95%;
        top: 1rem;
        margin-bottom: 2rem;
    }
}

.header__silder__form__content__img {
    width: 55px;
    height: 40px
}

.header__silder__form__content h1 {
    margin: 1rem 0rem;
    font-size: 1.3rem;
    font-weight: bold !important;
}

.header__silder__form__content span {
    margin-bottom: 1rem;
}

.header__silder__form__item {
    position: relative
}

.header__silder__form__item::before {
    content: url("../assets/images/header/target.svg");
    position: absolute;
    z-index: 1;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    top: 50%;
    right: 5px;
    height: 20px;
    width: 20px;
    line-height: 20px;
    display: block
}

.services {
    position: relative;
}

.services .container {
    position: relative;
}

.services .services_more_btn {
    position: absolute;
    left: 4rem;
    top: 2rem;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    border: navajowhite;
    padding: 0.7rem;
    min-height: 1rem;
}

.services__item__head a {
    color: #000;
}

.services__item a i {
    margin-right: 1rem;
    transition: 0.3s ease-in-out;
}

.services__item__head a:hover {
    color: #000;
}

.services__item a:hover i {
    margin-right: 1.5rem;
    transition: 0.3s ease-in-out;
}

.services__item__head__text {
    -webkit-transition: color .3s linear;
    transition: color .3s linear;
    min-height: 2.5rem;
}

.services__item:hover .services__item__head__text {
    color: #000;
}

.services {
    background: #f9f9f9;
}

.services .main-title {
    margin: 0;
}

.services .services__item__body {
    height: 7rem;
    font-size: 18px;
}


.catgory {
    background: #fff;
    margin-top: 0rem !important;
}

.catgory .catgory__item {
    height: 20rem;
    padding: 1rem !important;
    box-shadow: 0px 2px 12px 0px #14142B14;
}

.catgory .catgory__item img {
    width: 100%;
}

.catgory .catgory__item a p {
    color: #000;
    font-weight: bold;
    font-size: 1.1rem;
    text-align: center;
    margin-top: 1rem;
}


.program-new {
    border-bottom: 1px solid #f1f1f1;
}

.container-program {
    padding: 3rem 5rem;
}

.program-new .img-container {
    width: 100%;
    overflow: hidden;
    position: relative;
    border-radius: 1rem;
}

/*.program-new .img-container::after {
    position: absolute;
    content: '';
    background: var(--main-color);
    opacity: 0.1;
    top: 0;
    right: 0;
    left: auto;
    width: 90%;
    height: 90%;
    z-index: -1;
    border-radius: 1rem !important;
}*/

.program-new .img-container img {
    width: 94%;
    margin-right: 6%;
    border-radius: 1rem;
    margin-top: 6%;

}

.program-new .program__content {
    padding: 0px 1rem 0rem 5rem;
}

.program-new .program__content h4 {
    font-size: 2.5rem;
    margin-bottom: 2rem;
}

.program-new .program__content p {
    font-size: 1.1rem;
    color: #000000ad;
    margin-bottom: 1rem;
}

.program-new .program__content a {
    background: var(--main-color);
    opacity: 0.8;
    padding: 0.6rem 1.5rem;
    border-radius: 1rem;
    color: #fff;
    transition: 0.3s ease-in-out;
}

.program-new .program__content a:hover {
    opacity: 1;
}

.news__silder__item {
    overflow: hidden;
    border-radius: 15px;
    height: 100%
}

.services .vision-card {
    background: var(--main-color);
    color: #fff;
    padding: 2rem;
    border-radius: 1rem;
    text-align: right;
    margin: 1rem 0rem;
    transition: 0.3s ease-in-out;
    height: 100%;
}

/*.services .vision-card:hover {
    background: #fff;
    color: var(--main-color);
    padding: 1.5rem;
    border-radius: 1rem;
    margin: 1rem 0rem;
    transition: 0.3s ease-in-out;
    box-shadow: 0px 2px 12px 0px #14142B14;
}*/

.services .vision-card i {
    font-size: 3rem;
    margin-bottom: 2rem;
}

@media (max-width: 767px) {
    .slide_news {
        min-width: 100%;
        /* Show 1 slide at a time */
    }

    .prev_news,
    .next_news {
        padding: 1rem;
        top: 5px;
    }

    .prev_news {
        left: 4rem;
    }

    .header {
        margin-bottom: 0rem;
    }

    .container-program {
        padding: 0rem 2rem;
    }

    .program-new .program__content {
        padding: 0px 0rem 0rem 1rem;
        text-align: center;
    }

    .program-new .program__content a {
        display: inline-block;
        margin-bottom: 1rem;
    }

    .services button.main-btn {
        top: -1rem;
        left: 5rem;
    }

}

@media (min-width: 992px) and (max-width: 1399px) {
    .upper-navbar__logo {
        padding-left: 0px !important;
    }

    .upper-navbar__logo a span,
    .upper-navbar__logo div {
        font-size: 1rem;
    }

    #modalNavbar .modal-content {
        margin-top: 11rem;
    }

    .services__item {
        height: 360px;
    }

    .services__item__head {
        height: 110px;
    }

    .services .services__item__body {
        height: 10rem;
    }

    .services__item.stores_download .services__item__body {
        padding: 0.5rem;
        margin-top: 3rem;
    }


}

/* Style for the page header */
.page-header {
    background-color: #f4f4f4;
    padding: 20px;
    text-align: center;
    border-bottom: 1px solid #ddd;
}

.page-header h1 {
    margin: 0;
    font-size: 36px;
    color: #333;
    font-weight: bold;
    position: relative;
    margin-bottom: 3rem;
}

.page-header h1::after {
    content: '';
    position: absolute;
    bottom: -2rem;
    left: 50%;
    transform: translateX(-50%);
    width: 30rem;
    height: 1px;
    background-color: #dadada;
}

.breadcrumb {
    margin-top: 10px;
    font-size: 16px;
    color: #666;
    display: inline-block;
    text-align: center;
}

.breadcrumb a {
    color: #007bff;
    text-decoration: none;
}

.breadcrumb a:hover {
    text-decoration: underline;
}

.breadcrumb span {
    margin: 0 5px;
}

@media (max-width: 767px) {
    .page-header h1::after {
        content: '';
        position: absolute;
        bottom: -2rem;
        left: 50%;
        transform: translateX(-50%);
        width: 5rem;
        height: 1px;
        background-color: #dadada;
    }
}

.news-details__aside .news-details__head p {
    padding: 0rem 1rem !important;
}

.news-details__aside .news-details__body {
    padding: 0rem 1rem 1rem !important;
}

.category_description {
    word-wrap: break-word;
    word-break: break-word;
}

.survey-link .overlay {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
}

.survey-link h2 {
    font-family: Tajawal;
    font-size: 40px;
    font-weight: 700;
    line-height: 51px;
    letter-spacing: -0.04em;
    text-align: right;
    color: #fff;
}

.survey-link p {
    font-family: Tajawal;
    font-size: 20px;
    font-weight: 500;
    line-height: 31px;
    text-align: right;
    color: #fff;

}

.survey-link a {
    border: navajowhite;
    padding: 0.8rem 2rem;
    min-height: 1rem;
    background: #fff;
    margin-top: 3rem;
    color: var(--main-color);
    font-family: Cairo;
    font-size: 16px;
    font-weight: 700;
    line-height: 27px;
    text-align: center;
    transition: 0.3s ease-in-out;
}

.survey-link a:hover {
    color: #fff;
    background-color: var(--main-color);

}

@media (max-width: 768px) {
    .survey-link .result-link {
        margin-top: 5rem;
    }
}

.news .card {
    margin-bottom: 1rem;
    border: none;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 1px 1px 10px 0px rgba(0, 0, 0, 0.1);
    transition: 0.3s ease-in-out;
}

.news .card:hover {
    box-shadow: 1px 1px 10px 0px rgba(0, 0, 0, 0.05);
}

.news .card .card-img-top {
    height: 20rem;
    overflow: hidden;
}

.news .card .card-body {
    min-height: 11rem;
}

.news .card .card-body h5 {
    min-height: 6rem;
}

.news .card .card-body a {
    font-size: 1.2rem;
    transition: 0.3s ease-in-out;
    opacity: 0.8;
    color: var(--main-color);
}

.news .card .card-body a:hover {
    opacity: 1;
}

/*** Tenants in mobile ***/
/* Tenant-specific slider container */
/*#tenants .container {
    position: relative;
}

.tenant-slider-container {
    position: relative;
    display: none;
    overflow: hidden;
    align-items: center;
}

@media (max-width: 767.98px) {
    .tenant-slider-container {
        display: flex;
    }
}

.tenant-slider-wrapper {
    overflow: hidden;
    width: 100%;
}

.tenant-slider {
    display: flex;
    transition: transform 0.3s ease;
}

.tenant-slide {
    flex: 0 0 100%; 
    max-width: 100%;
}

.tenant-prev, .tenant-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0);
    color: var(--main-color);
    border: 1px solid var(--main-color);
    padding: 28px;
    cursor: pointer;
    z-index: 1000;
    font-size: 18px;
    display: none;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    font-weight: bold;
    transition: all 0.3s ease-in-out;
}

.tenant-prev:hover, .tenant-next:hover {
    color: #fff;
    background: var(--main-color);
}

.tenant-prev {
    left: 6rem;
    top: 2rem;
}

.tenant-next {
    left: 1rem;
    top: 2rem;
}


@media (max-width: 767px) {
    .tenant-slide {
        min-width: 100%; 
    }

    .tenant-prev, .tenant-next {
        padding: 1rem;
        top: 5px;
        display: flex;
    }

    .tenant-prev {
        left: 4rem;
    }

    .tenant-next {
        left: 1rem;
    }
}
*/

/*** Service Mobile ***/
/* Previous and Next buttons for service slider */

/* Adjust for mobile screens */
@media (max-width: 767px) {
    .services .services__item__body {
        height: 9rem;
    }

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

    .services-slider__container {
        gap: 15px;
    }

    .slider-prev-btn,
    .slider-next-btn {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        background: rgba(0, 0, 0, 0);
        /* Transparent background */
        color: var(--main-color);
        border: 1px solid var(--main-color);
        padding: 28px;
        cursor: pointer;
        z-index: 1000;
        font-size: 18px;
        display: none;
        /* Hidden on larger screens */
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        font-weight: bold;
        transition: all 0.3s ease-in-out;
    }

    .slider-prev-btn:hover,
    .slider-next-btn:hover {
        color: #fff;
        background: var(--main-color);
    }

    /* Positioning for service slider arrows */
    .slider-prev-btn {
        left: 6rem;
        /* Adjust the position to match tenant style */
        top: 2rem;
    }

    .slider-next-btn {
        left: 1rem;
        top: 2rem;
    }

    .slider-prev-btn,
    .slider-next-btn {
        padding: 1rem;
        top: 2rem;
        display: flex;
        /* Show on mobile */
    }

    .slider-prev-btn {
        left: 4rem;
    }

    .slider-next-btn {
        left: 1rem;
    }

    .services .services_more_btn {
        display: none;
    }
}

/*** Category Mobile ***/
/* Adjust for mobile */
.category .container {
    position: relative;
}

.category-slider__container {
    display: flex;
    /* Use flexbox for layout */
    flex-wrap: wrap;
    /* Allow items to wrap into multiple rows */
}

.category-slider__item {
    flex: 0 0 25%;
    /* Set width to 25% for each item */
    box-sizing: border-box;
    /* Ensure padding and borders are included in width */
}

@media (max-width: 768px) {
    .category-slider__container {
        flex-wrap: nowrap;
        padding-top: 1rem;
        padding-bottom: 1rem;
    }

    .category-slider {
        overflow: hidden;
        /* Prevent overflow */
        position: relative;
        /* For positioning elements if needed */
    }

    .category-slider__item {
        flex: 0 0 auto;
        /* Prevent flex items from shrinking */
        width: 25%;
        /* Set width for large screens */
    }

    .category-slider__item {
        width: 100%;
        /* Adjust item width for mobile */
    }

    .category-slider-prev-btn,
    .category-slider-next-btn {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        background: rgba(0, 0, 0, 0);
        /* Transparent background */
        color: var(--main-color);
        border: 1px solid var(--main-color);
        padding: 28px;
        cursor: pointer;
        z-index: 1000;
        font-size: 18px;
        display: none;
        /* Hidden on larger screens */
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        font-weight: bold;
        transition: all 0.3s ease-in-out;
    }

    .category-slider-prev-btn:hover,
    .slider-next-btn:hover {
        color: #fff;
        background: var(--main-color);
    }

    /* Positioning for service slider arrows */
    .category-slider-prev-btn {
        left: 6rem;
        /* Adjust the position to match tenant style */
        top: 2rem;
    }

    .category-slider-next-btn {
        left: 1rem;
        top: 2rem;
    }

    .category-slider-prev-btn,
    .category-slider-next-btn {
        padding: 1rem;
        top: 2rem;
        display: flex;
        /* Show on mobile */
    }

    .category-slider-prev-btn {
        left: 4rem;
    }

    .category-slider-next-btn {
        left: 1rem;
    }

    .category__item img {
        margin: auto;
    }
}

/*** pdf download section ***/
#pdf-download-section {
    background: #f5f5f5;
    padding: 40px 0;
    padding-bottom: 0rem !important;
}

/*#pdf-download-section .part {
    background-color: var(--main-color);
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    position: relative;
    height: 100%;
    width: 100%
}*/

/**#pdf-download-section .part-container {
    position: relative;
    margin-bottom: 3rem;
    border-radius: 10px;
    overflow: hidden;
}
#pdf-download-section .part-container .overlay {
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5)
}
#pdf-download-section .part-container .description {
    margin-bottom: 20px;
    color: #ffffff;
    font-size: 1.2rem;
    text-align: center;
    background: var(--main-color);
    padding: 1rem;
}

#pdf-download-section .part {
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    position: relative;
    height: 100%;
    width: 100%;
    background-color: #fff;
    position: relative;
    height: 12rem;
    width: 100%;
    margin-bottom: 9rem;
}**/

/*#pdf-download-section .container .row .col-md-3:nth-child(4) .part{
    background-color: #fff;
    position: relative;
    height: 12rem;
    width: 80%;
}*/

/*#pdf-download-section .part h4 {
    margin-bottom: 20px;
    color: #fff;
    font-size: 1.2rem;
    text-align: center;
}*/

/**#pdf-download-section .part h4 {
    margin-bottom: 20px;
    color: #fff;
    font-size: 1.2rem;
    text-align: center;
    color: var(--main-color);
    min-height: 4rem;
}**/

/*#pdf-download-section .container .row .col-md-3:nth-child(4) .part h4 {
    color: var(--main-color);
    min-height: 4rem;
}*/

/*#pdf-download-section .part .img-container {
    overflow: hidden;
    background: #fff;
    width: 80%;
    height: auto !important;
    background: #ffff;
    padding: 1rem;
    margin: auto;
    margin-top: 3rem;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    margin-bottom: 2rem;
    position: relative;
}*/

/**#pdf-download-section .part .img-container {
    overflow: hidden;
    width: 80%;
    height: auto !important;
    padding: 1rem;
    margin: auto;
    margin-top: 3rem;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    margin-bottom: 2rem;
    position: relative;
    background-color: #2f9b68;
    padding: 4rem 3rem;
    box-shadow: 0px 0px 2px 0px #00000020;
    position: absolute;
    left: -3rem;
    margin: 0;
    margin-top: 0rem;
}**/

/*#pdf-download-section .container .row .col-md-3:nth-child(4) .part .img-container {
    background-color: #2f9b68;
    padding: 4rem 3rem;
    box-shadow: 0px 0px 2px 0px #00000020;
    position: absolute;
    left: -3rem;
    margin: 0;
    margin-top: 0rem;
}*/

/**#pdf-download-section .part .img-container img {
    width: 100%;
    object-fit: contain;
    position: relative;
}

#pdf-download-section .part a {
    width: 100%;
    margin: auto;
    display: block;
    padding: 1rem 0rem;
    background-color: #fff;
    color: var(--main-color) !important;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}**/

#pdf-download-section .part-container {
    background: #fff;
    border-radius: 5px;
    overflow: hidden;
    margin-bottom: 3rem;
}

#pdf-download-section .part-container .img-container {}

#pdf-download-section .part-container .img-container img {}

#pdf-download-section .part-container .part {
    padding: 1rem 0rem 1rem 1rem;
}

#pdf-download-section .part-container .part h2 {
    font-size: 1.2rem;
}

#pdf-download-section .part-container .part h4 {
    font-size: 1rem;
    line-height: 1.8rem;
    margin-bottom: 1rem;
}

#pdf-download-section .part-container .part .read-more-btn {
    margin-bottom: 1rem;
}

#pdf-download-section .part-container .part .read-more-btn:focus {
    border: none !important;
}

#pdf-download-section .part-container .part small {
    font-size: 0.8rem;
    display: block;
}

#pdf-download-section .part-container .part a {
    width: 100%;
    margin: auto;
    display: block;
    padding: 1rem 0rem;
    background-color: var(--main-color);
    color: #fff !important;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

#pdf-download-section .part-container .part a i {
    color: #fff;
    margin: 0px 5px;
}

@media (max-width: 768px) {
    #pdf-download-section {
        padding-bottom: 0rem !important;
    }

    #pdf-download-section .part {
        padding: 1rem !important;
    }
}


/*** Fonts ***/
h3.title-section__text,
.title-section__text h2,
.home-about-title,
.news-card__content h4,
.home-about-text,
.program-new .program__content h4,
.header__silder__form__content h1,
.services__item__head__text,
.catgory .catgory__item a p,
.program-new .program__content,
.accordion-button p,
#modalNavbar .modal-content h3 {
    font-family: Tajawal;
}

.home-about-text {
    font-weight: 200;
}

.header__silder__form__content h1 {
    font-size: 28px;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4tcnRsLmNzcyIsImRpci9fcnRsLWRpci5zY3NzIiwiYmFzZS9fcmVzZXQuc2NzcyIsImFic3RyYWN0cy9fdmFyaWFibGVzLnNjc3MiLCJhYnN0cmFjdHMvX21peGlucy5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCJjb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19jYXJvdXNlbC5zY3NzIiwiY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsImxheW91dC9fbmF2YmFyLnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyIsInBhZ2VzL19ob21lLnNjc3MiLCJwYWdlcy9fc2VyaXZjZS5zY3NzIiwicGFnZXMvX2NvbnRhY3Quc2NzcyIsInRoZW1lcy9fdGhlbWUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxXQ1FBLG1CQUNJLENBQUEsMERBQ0EsQ0FBQSx3WUFFQSxDQUFBLEtBWUosbUJBQ0ksQ0FBQSxhQUNBLENBQUEscUJBQ0EsQ0FBQSxpREFHSixhQUlJLENBQUEsSUNqQ0osY0FDSSxDQUFBLGFBQ0EsQ0FBQSxNQUdKLG1CQUNJLENBREosZ0JBQ0ksQ0FBQSxVQUNBLENBQUEscURBR0osa0NBSUksQ0FKSiwwQkFJSSxDQUFBLHVCQUNBLENBQUEseUNBQ0EsQ0FBQSxNQUdKLGNBQ0ksQ0FBQSxHQUdKLGVBQ0ksQ0FBQSxTQUNBLENBQUEsb0JBSUosU0FDSSxDQUFBLDBCQUlKLHFCQUNJLENBQUEsMEJBSUosMEJBQ0ksQ0FBQSxpQkFDQSxDQUFBLGdDQU1KLDRCQy9DYSxDQUFBLHlCQ0VULGdCRmtESix1Q0FFUSxDQUFBLENBQUEsZUFJUiw2Q0FDSSxDQUFBLCtDQUdKLDZDQUNJLENBQUEsMkRBR0osVUM5RGMsQ0FBQSw4QkFKRCxDQUFBLGtDQUFBLENBQUEsMEJEd0ViLFVDcEVjLENBQUEsOEJBSkQsQ0FBQSxr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REEseUNBQ0EsQ0FBQSxpQkFHSixhYmxIYSxDQUFBLHFCQUVILENBQUEsUWFzSGQsd0JBQ0ksQ0FBQSxjQUNBLENBQUEsVUFDQSxDQUFBLE1BQ0EsQ0FBQSxPQUNBLENBQUEsS0FDQSxDQUFBLFFBQ0EsQ0FBQSxtQkFDQSxDQURBLG1CQUNBLENBREEsWUFDQSxDQUFBLHVCQUNBLENBREEsb0JBQ0EsQ0FEQSxzQkFDQSxDQUFBLHdCQUNBLENBREEscUJBQ0EsQ0FEQSxrQkFDQSxDQUFBLG9CQUVBLFdBQ0ksQ0FBQSxjQUNBLENBQUEsbUJBSVIsa0NBQ0ksQ0FBQSxZQUdKLHdCQUNJIiwiZmlsZSI6Im1haW4tcnRsLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBmb250LWZhY2V7Zm9udC1mYW1pbHk6XCJDYWlyb1wiO3NyYzp1cmwoXCIuLi9hc3NldHMvZm9udHMvQ2Fpcm8tUmVndWxhci9DYWlyby1SZWd1bGFyLmVvdFwiKTtzcmM6dXJsKFwiLi4vYXNzZXRzL2ZvbnRzL0NhaXJvLVJlZ3VsYXIvQ2Fpcm8tUmVndWxhci5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLHVybChcIi4uL2Fzc2V0cy9mb250cy9DYWlyby1SZWd1bGFyL0NhaXJvLVJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksdXJsKFwiLi4vYXNzZXRzL2ZvbnRzL0NhaXJvLVJlZ3VsYXIvQ2Fpcm8tUmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksdXJsKFwiLi4vYXNzZXRzL2ZvbnRzL0NhaXJvLVJlZ3VsYXIvQ2Fpcm8tUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksdXJsKFwiLi4vYXNzZXRzL2ZvbnRzL0NhaXJvLVJlZ3VsYXIvQ2Fpcm8tUmVndWxhci5zdmcjc3ZnRm9udE5hbWVcIikgZm9ybWF0KFwic3ZnXCIpfWJvZHl7Zm9udC1mYW1pbHk6XCJDYWlyb1wiO2RpcmVjdGlvbjpydGw7YmFja2dyb3VuZC1jb2xvcjojZmZmfVt0eXBlPWVtYWlsXSxbdHlwZT1udW1iZXJdLFt0eXBlPXRlbF0sW3R5cGU9dXJsXXtkaXJlY3Rpb246cnRsfWltZ3ttYXgtd2lkdGg6MTAwJTtkaXNwbGF5OmJsb2NrfXZpZGVve29iamVjdC1maXQ6Y292ZXI7d2lkdGg6MTAwJX1idXR0b246Zm9jdXMsaW5wdXQ6Zm9jdXMsc2VsZWN0OmZvY3VzLHRleHRhcmVhOmZvY3Vze2JveC1zaGFkb3c6bm9uZSAhaW1wb3J0YW50O291dGxpbmU6bm9uZSAhaW1wb3J0YW50O2JvcmRlci1jb2xvcjp2YXIoLS1tYWluLWNvbG9yKSAhaW1wb3J0YW50fWxhYmVse2N1cnNvcjpwb2ludGVyfXVse2xpc3Qtc3R5bGU6bm9uZTtwYWRkaW5nOjB9Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo1cHh9Ojotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjE1KTtib3JkZXItcmFkaXVzOjNweH06Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tbWFpbi1jb2xvcil9QG1lZGlhKG1pbi13aWR0aDogOTkxcHgpey5tb2RhbC1iYWNrZHJvcHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50ICFpbXBvcnRhbnR9fS50b29sdGlwLWlubmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWFpbi1jb2xvcikgIWltcG9ydGFudH0udG9vbHRpcC5icy10b29sdGlwLXRvcCAudG9vbHRpcC1hcnJvdzo6YmVmb3Jle2JvcmRlci10b3AtY29sb3I6dmFyKC0tbWFpbi1jb2xvcikgIWltcG9ydGFudH0uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3Jle2NvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOnZhcigtLW1haW4tY29sb3IpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWFpbi1jb2xvcil9LmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZHtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjp2YXIoLS1tYWluLWNvbG9yKTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1haW4tY29sb3IpfS5uaWNlLXNlbGVjdHt0ZXh0LWFsaWduOnJpZ2h0ICFpbXBvcnRhbnQ7cGFkZGluZy1yaWdodDo1MHB4O3BhZGRpbmctbGVmdDozMHB4O2JvcmRlci1yYWRpdXM6MTJweDtoZWlnaHQ6NjBweDtsaW5lLWhlaWdodDo2MHB4fS5uaWNlLXNlbGVjdCAubGlzdHt3aWR0aDoxMDAlfS5uaWNlLXNlbGVjdCAub3B0aW9ue3RleHQtYWxpZ246cmlnaHQgIWltcG9ydGFudH0ubmljZS1zZWxlY3Q6YWN0aXZlLC5uaWNlLXNlbGVjdC5vcGVuLC5uaWNlLXNlbGVjdDpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tbWFpbi1jb2xvcil9Lm5pY2Utc2VsZWN0OmFmdGVye3JpZ2h0OmF1dG87bGVmdDoyMHB4O2hlaWdodDoxMHB4O3dpZHRoOjEwcHg7bWFyZ2luLXRvcDotOHB4fS5uaWNlLXNlbGVjdCAub3B0aW9uOmhvdmVyLC5uaWNlLXNlbGVjdCAub3B0aW9uLmZvY3VzLC5uaWNlLXNlbGVjdCAub3B0aW9uLnNlbGVjdGVkLmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2ZmZn1oMSxoMixoMyxoNCxoNSxoNntmb250LXdlaWdodDpib2xkO2ZvbnQtc3RyZXRjaDpub3JtYWw7Zm9udC1zdHlsZTpub3JtYWw7bGluZS1oZWlnaHQ6MS4xODttYXJnaW4tYm90dG9tOjB9cHtsaW5lLWhlaWdodDoxLjY3O21hcmdpbi1ib3R0b206MH1he3RleHQtZGVjb3JhdGlvbjpub25lfS5hY2NvcmRpb24taXRlbXttYXJnaW4tYm90dG9tOjIwcHg7Ym9yZGVyLXJhZGl1czoxNXB4O2JvcmRlcjpub25lO292ZXJmbG93OmhpZGRlbn0uYWNjb3JkaW9uLWJ1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOiNmOWY5ZjkgIWltcG9ydGFudDtjb2xvcjojMzMzICFpbXBvcnRhbnR9LmFjY29yZGlvbi1idXR0b246OmFmdGVye2ZpbHRlcjpicmlnaHRuZXNzKDAlKX0ubWFpbi1idG57Y29sb3I6I2ZmZiAhaW1wb3J0YW50O3RleHQtYWxpZ246Y2VudGVyO2JvcmRlci1yYWRpdXM6MTVweDt6LWluZGV4OjI7bWluLXdpZHRoOjEyMHB4O3BhZGRpbmc6NXB4IDEwcHg7bWluLWhlaWdodDo2MXB4O3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmlubGluZS1ibG9ja30ubWFpbi1idG46OmFmdGVye2NvbnRlbnQ6XCJcIjtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3otaW5kZXg6LTE7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tYWluLWNvbG9yKTtvcGFjaXR5OjYwJTt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGxpbmVhcn0ubWFpbi1idG46aG92ZXI6OmFmdGVye29wYWNpdHk6MTAwJX0ub3dsLXN0YWdle2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcH0ub3dsLWl0ZW17ZGlzcGxheTpmbGV4O2hlaWdodDphdXRvICFpbXBvcnRhbnR9Lm93bC1pdGVtIC5pdGVte3dpZHRoOjEwMCUgIWltcG9ydGFudH0ub3dsLXRoZW1lIC5vd2wtbmF2LmRpc2FibGVkKy5vd2wtZG90c3ttYXJnaW4tdG9wOjQwcHh9Lm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3QuYWN0aXZlIHNwYW4sLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3Q6aG92ZXIgc3BhbntiYWNrZ3JvdW5kOnZhcigtLW1haW4tY29sb3IpfS5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1uZXh0LC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1wcmV2e2JhY2tncm91bmQtY29sb3I6I2ZjZmNmYztib3JkZXItcmFkaXVzOjI1cHg7cGFkZGluZzo1cHggMTVweCAhaW1wb3J0YW50O3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3M7Y29sb3I6dmFyKC0tc3ViLWNvbG9yKTttaW4td2lkdGg6ODBweDtmb250LXNpemU6MTRweH0ub3dsLWNhcm91c2VsIC5vd2wtbmF2IGJ1dHRvbi5vd2wtbmV4dDpob3Zlciwub3dsLWNhcm91c2VsIC5vd2wtbmF2IGJ1dHRvbi5vd2wtcHJldjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXN1Yi1jb2xvcik7Y29sb3I6I2ZmZn0ubmF2YmFyIC5uYXYtaXRlbSAuZHJvcGRvd24tbWVudXt3aWR0aDptYXgtY29udGVudDtwYWRkaW5nOjA7bWF4LWhlaWdodDo0MDBweDtvdmVyZmxvdy14OmhpZGRlbjtvdmVyZmxvdy15OmF1dG87ZGlyZWN0aW9uOmx0cjtkaXNwbGF5OmJsb2NrO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGxpbmVhcjt2aXNpYmlsaXR5OmhpZGRlbjttYXJnaW46MDtib3JkZXI6MH1AbWVkaWEobWF4LXdpZHRoOiA5OTFweCl7Lm5hdmJhciAubmF2LWl0ZW0gLmRyb3Bkb3duLW1lbnV7cG9zaXRpb246YWJzb2x1dGUgIWltcG9ydGFudDttYXgtd2lkdGg6MTAwJX19Lm5hdmJhciAubmF2LWl0ZW0gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW17cGFkZGluZzoxMXB4IDM1cHg7d2hpdGUtc3BhY2U6dW5zZXR9Lm5hdmJhciAubmF2LWl0ZW0gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0gcHtmb250LXNpemU6MThweH1AbWVkaWEobWF4LXdpZHRoOiA5OTFweCl7Lm5hdmJhciAubmF2LWl0ZW0gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0gcHtmb250LXNpemU6MTZweH19Lm5hdmJhciAubmF2LWl0ZW0gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tYWluLWNvbG9yKSAhaW1wb3J0YW50O2NvbG9yOiNmZmZ9Lm5hdmJhciAubmF2LWl0ZW0gLmRyb3Bkb3duLW1lbnUuc2hvd3tvcGFjaXR5OjE7dmlzaWJpbGl0eTp2aXNpYmxlfS5uYXZiYXIgLm5hdi1pdGVtIC5kcm9wZG93bi10b2dnbGV7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5uYXZiYXIgLm5hdi1pdGVtIC5kcm9wZG93bi10b2dnbGU6OmFmdGVye2NvbnRlbnQ6XCLvgbhcIjtmb250LWZhbWlseTpcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtib3JkZXI6bm9uZTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuM3MgbGluZWFyO2ZvbnQtd2VpZ2h0OjkwMH0ubmF2YmFyIC5uYXYtaXRlbSAuZHJvcGRvd24tdG9nZ2xlLnNob3c6OmFmdGVye3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0udXBwZXItbmF2YmFyX19sb2dve3Bvc2l0aW9uOnJlbGF0aXZlfS51cHBlci1uYXZiYXJfX2xvZ29fX2ltZ3t3aWR0aDo1MnB4O2hlaWdodDo1MnB4fS51cHBlci1uYXZiYXJfX2xvZ29fX2ltZy5tYWluLWxvZ297aGVpZ2h0OjUwcHg7d2lkdGg6NjVweH0udXBwZXItbmF2YmFyX19sb2dvX19kcm9wLWljb257YWxsOnVuc2V0O3dpZHRoOjI2cHg7ZGlzcGxheTpibG9jaztoZWlnaHQ6MjZweDtsaW5lLWhlaWdodDoyNnB4O3RleHQtYWxpZ246Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTM1cHg7Ym90dG9tOi0ycHg7Y29sb3I6dmFyKC0tbWFpbi1jb2xvcik7Ym9yZGVyLXJhZGl1czo1cHg7b3ZlcmZsb3c6aGlkZGVuO2N1cnNvcjpwb2ludGVyO3otaW5kZXg6Mn0udXBwZXItbmF2YmFyX19sb2dvX19kcm9wLWljb24gLmZhLWNoZXZyb24tZG93bnt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuM3MgbGluZWFyfS51cHBlci1uYXZiYXJfX2xvZ29fX2Ryb3AtaWNvbi5zaG93IC5mYS1jaGV2cm9uLWRvd257dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfUBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KXsudXBwZXItbmF2YmFyX19sb2dvX19kcm9wLWljb257bGVmdDowcHh9fS51cHBlci1uYXZiYXJfX2xvZ29fX2Ryb3AtaWNvbjo6YWZ0ZXJ7YWxsOnVuc2V0O2NvbnRlbnQ6XCJcIjtpbnNldDowO3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWFpbi1jb2xvcik7ei1pbmRleDotMTtvcGFjaXR5OjEwJX0udXBwZXItbmF2YmFyX19jb250Y2F0X19pbWd7d2lkdGg6NTFweH0jbW9kYWxOYXZiYXIgLm1vZGFsLWJvZHl7cGFkZGluZzowfUBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KXsjbW9kYWxOYXZiYXIgLm1vZGFsLWRpYWxvZ3ttYXJnaW46MCAhaW1wb3J0YW50fX0jbW9kYWxOYXZiYXIgLm1vZGFsLWNvbnRlbnR7Ym9yZGVyLXJhZGl1czoxOHB4O3BhZGRpbmc6MTBweCAwfUBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KXsjbW9kYWxOYXZiYXIgLm1vZGFsLWNvbnRlbnR7Ym9yZGVyLXJhZGl1czowfX0jbW9kYWxOYXZiYXIgLm1vZGFsLWNvbnRlbnQgLm1lbnVfX2l0ZW17YmFja2dyb3VuZDojZmZmO3BhZGRpbmc6MjVweCAyMHB4O2JvcmRlci1yYWRpdXM6MTJweDtkaXNwbGF5OmJsb2NrO21hcmdpbi1ib3R0b206NXB4fUBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KXsjbW9kYWxOYXZiYXIgLm1vZGFsLWNvbnRlbnQgLm1lbnVfX2l0ZW17cGFkZGluZzoxMHB4O2JvcmRlci1yYWRpdXM6OHB4fX0jbW9kYWxOYXZiYXIgLm1vZGFsLWNvbnRlbnQgLm1lbnVfX2l0ZW06aG92ZXJ7Ym94LXNoYWRvdzowIDAgMTBweCAwIHJnYmEoNTEsNTEsNTEsLjEpfSNtb2RhbE5hdmJhciAubW9kYWwtY29udGVudCAubWVudV9faXRlbS5hY3RpdmV7Ym9yZGVyOjNweCBzb2xpZCByZ2JhKDAsMCwwLC4wOCl9I21vZGFsTmF2YmFyIC5tb2RhbC1jb250ZW50IC5tZW51X19pdGVtX19pbWd7d2lkdGg6NjBweDtoZWlnaHQ6NjBweDttYXJnaW4tbGVmdDoxNnB4fSNtb2RhbE5hdmJhciAubW9kYWwtY29udGVudCAubWVudV9faXRlbV9fdGV4dHtjb2xvcjojMzMzfS5uYXZiYXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tYWluLWNvbG9yKX1AbWVkaWEobWF4LXdpZHRoOiA5OTFweCl7Lm5hdmJhcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7cGFkZGluZy1ib3R0b206MjBweCAhaW1wb3J0YW50fX0ubmF2YmFyIC5uYXZiYXItYnJhbmR7Y29sb3I6I2ZmZjtmb250LXdlaWdodDpib2xkfS5uYXZiYXIgLm5hdmJhci10b2dnbGVye2NvbG9yOiMzMzM7cG9zaXRpb246YWJzb2x1dGU7dG9wOjEwcHg7bGVmdDoxMHB4O2JvcmRlcjpub25lICFpbXBvcnRhbnR9Lm5hdmJhciAubmF2LWxpbmt7Y29sb3I6I2ZmZjtwYWRkaW5nOjE4cHggMjBweH1AbWVkaWEobWF4LXdpZHRoOiA5OTFweCl7Lm5hdmJhciAubmF2LWxpbmt7Y29sb3I6IzMzMzt0ZXh0LWFsaWduOmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW4tYm90dG9tOjEwcHg7Zm9udC13ZWlnaHQ6Ym9sZH19Lm5hdmJhciAubmF2LWxpbmsuYWN0aXZlLC5uYXZiYXIgLm5hdi1saW5rLnNob3csLm5hdmJhciAubmF2LWxpbms6aG92ZXJ7Y29sb3I6dmFyKC0tbWFpbi1jb2xvcik7YmFja2dyb3VuZC1jb2xvcjojZmZmfUBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KXsubmF2YmFyIC5uYXYtbGluay5hY3RpdmU6OmJlZm9yZSwubmF2YmFyIC5uYXYtbGluay5zaG93OjpiZWZvcmUsLm5hdmJhciAubmF2LWxpbms6aG92ZXI6OmJlZm9yZXtjb250ZW50OlwiXCI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1haW4tY29sb3IpO29wYWNpdHk6MTUlfX0ubmF2YmFyX19zb2NoaWFsX19saW5re2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuNSk7Y29sb3I6I2ZmZjt3aWR0aDo0OHB4O2hlaWdodDo0OHB4O2xpbmUtaGVpZ2h0OjQ4cHg7dGV4dC1hbGlnbjpjZW50ZXI7ZGlzcGxheTpibG9jaztib3JkZXItcmFkaXVzOjUwJTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjNzIGxpbmVhcn0ubmF2YmFyX19zb2NoaWFsX19saW5rOmhvdmVye2NvbG9yOnZhcigtLW1haW4tY29sb3IpO2JhY2tncm91bmQtY29sb3I6I2ZmZn1AbWVkaWEobWF4LXdpZHRoOiA5OTFweCl7Lm5hdmJhci1jb2xsYXBzZXttYXgtd2lkdGg6MTAwJTttYXJnaW4tdG9wOjIwcHh9fS5oZWFkZXJ7bWluLWhlaWdodDo0ODRweDt6LWluZGV4OjE7cG9zaXRpb246cmVsYXRpdmV9QG1lZGlhKG1heC13aWR0aDogOTkxcHgpey5oZWFkZXJ7bWFyZ2luLWJvdHRvbTo0MCV9fS5oZWFkZXJfX3NpbGRlcl9fZm9ybXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7ei1pbmRleDo5OTk7d2lkdGg6OTAlO21heC13aWR0aDo2NTBweDtsZWZ0OjE4JX0uaGVhZGVyX19zaWxkZXJfX2Zvcm0gLmJnLXdoaXRle2JvcmRlci1yYWRpdXM6MTVweH1AbWVkaWEobWF4LXdpZHRoOiA5OTFweCl7LmhlYWRlcl9fc2lsZGVyX19mb3Jte3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MjtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt3aWR0aDo5NSU7dG9wOjUwJX19LmhlYWRlcl9fc2lsZGVyX19mb3JtX19jb250ZW50X19pbWd7d2lkdGg6NTVweDtoZWlnaHQ6NDBweH0uaGVhZGVyX19zaWxkZXJfX2Zvcm1fX2l0ZW17cG9zaXRpb246cmVsYXRpdmV9LmhlYWRlcl9fc2lsZGVyX19mb3JtX19pdGVtOjpiZWZvcmV7Y29udGVudDp1cmwoXCIuLi9hc3NldHMvaW1hZ2VzL2hlYWRlci90YXJnZXQuc3ZnXCIpO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt0b3A6NTAlO3JpZ2h0OjIwcHg7aGVpZ2h0OjIwcHg7d2lkdGg6MjBweDtsaW5lLWhlaWdodDoyMHB4O2Rpc3BsYXk6YmxvY2t9LmhlYWRlciAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2V7ZGlzcGxheTpmbGV4ICFpbXBvcnRhbnR9LmhlYWRlciAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWd7d2lkdGg6MTAwJSAhaW1wb3J0YW50O21pbi1oZWlnaHQ6NDg0cHggIWltcG9ydGFudH1AbWVkaWEobWluLXdpZHRoOiA5OTFweCl7LmhlYWRlciAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWd7b2JqZWN0LWZpdDpjb3ZlcjtvYmplY3QtcG9zaXRpb246Y2VudGVyfX0uZm9vdGVyX19mb3JtX19idG57YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tYWluLWNvbG9yKTtjb2xvcjojZmZmO21pbi13aWR0aDo1NHB4O2hlaWdodDo0NnB4O2JvcmRlci1yYWRpdXM6NHB4fS5mb290ZXJfX2Zvcm1fX2xvZ29fX2ltZ3t3aWR0aDo1MHB4O2hlaWdodDo1MHB4fS5mb290ZXJfX2xpc3RfX2ljb257Y29sb3I6IzMzMzt0cmFuc2l0aW9uOmNvbG9yIC4zcyBsaW5lYXI7cG9zaXRpb246cmVsYXRpdmU7cmlnaHQ6MDt0cmFuc2l0aW9uOmNvbG9yIC4zcyBsaW5lYXIscmlnaHQgLjNzIGxpbmVhcn0uZm9vdGVyX19saXN0X19saW5re2NvbG9yOiMzMzM7dHJhbnNpdGlvbjpjb2xvciAuM3MgbGluZWFyfWxpOmhvdmVyIC5mb290ZXJfX2xpc3RfX2xpbmt7Y29sb3I6dmFyKC0tbWFpbi1jb2xvcil9bGk6aG92ZXIgLmZvb3Rlcl9fbGlzdF9faWNvbntjb2xvcjp2YXIoLS1tYWluLWNvbG9yKTtyaWdodDoycHh9LmZvb3Rlcl9fbG9nbyBpbWd7d2lkdGg6MTc2cHh9LmxvZ28ta2V5ZnJhbWV7d2lkdGg6MTMwcHh9LmJhbm5lcntwb3NpdGlvbjpyZWxhdGl2ZX0uYmFubmVyOjpiZWZvcmV7Y29udGVudDpcIlwiO2hlaWdodDo1MCU7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtwb3NpdGlvbjphYnNvbHV0ZTtiYWNrZ3JvdW5kLWNvbG9yOiNmY2ZjZmM7bGVmdDowO3JpZ2h0OjA7ei1pbmRleDotMX0uYmFubmVyX19jb250ZW50e2JveC1zaGFkb3c6MHB4IDIwcHggOTBweCByZ2JhKDAsMCwwLC4wNSk7Ym9yZGVyLXJhZGl1czoxNXB4O292ZXJmbG93OmhpZGRlbn0uc2VydmljZXNfX2l0ZW17Ym9yZGVyLXJhZGl1czoxNXB4O2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7dHJhbnNpdGlvbjpib3JkZXIgLjNzIGxpbmVhcn0uc2VydmljZXNfX2l0ZW06aG92ZXJ7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDUxLDUxLDUxLC4yKX0uc2VydmljZXNfX2l0ZW1fX2hlYWRfX3RleHR7dHJhbnNpdGlvbjpjb2xvciAuM3MgbGluZWFyfS5zZXJ2aWNlc19faXRlbTpob3ZlciAuc2VydmljZXNfX2l0ZW1fX2hlYWRfX3RleHR7Y29sb3I6dmFyKC0tbWFpbi1jb2xvcil9LnByb2dyYW17YmFja2dyb3VuZC1pbWFnZTp1cmwoXCIuLi9hc3NldHMvaW1hZ2VzL3Byb2dyYW0vY292ZXIucG5nXCIpO2JhY2tncm91bmQtc2l6ZTpjb3Zlcjtwb3NpdGlvbjpyZWxhdGl2ZTttaW4taGVpZ2h0OjM1MHB4O3otaW5kZXg6MTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpjZW50ZXI7Y29sb3I6I2ZmZjtvdmVyZmxvdzpoaWRkZW59LnByb2dyYW06OmJlZm9yZXtjb250ZW50OlwiXCI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1haW4tY29sb3IpO29wYWNpdHk6NTAlO3otaW5kZXg6LTJ9LnByb2dyYW06OmFmdGVye2NvbnRlbnQ6XCJcIjtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xMiU7d2lkdGg6NTAlO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWFpbi1jb2xvcik7b3BhY2l0eToxNSU7ei1pbmRleDotMTt0b3A6MDtib3R0b206MDt0cmFuc2Zvcm06c2tld1goMzBkZWcpfS5uZXdzX19zaWxkZXJfX2l0ZW17b3ZlcmZsb3c6aGlkZGVuO2JvcmRlci1yYWRpdXM6MTVweDtoZWlnaHQ6MTAwJX0ubmV3c19fc2lsZGVyX19pdGVtIC5uZXdzX19zaWxkZXJfX2l0ZW1fX2JvZHlfX3RleHR7dHJhbnNpdGlvbjpjb2xvciAuM3MgbGluZWFyfS5uZXdzX19zaWxkZXJfX2l0ZW06aG92ZXIgLm5ld3NfX3NpbGRlcl9faXRlbV9fYm9keV9fdGV4dHtjb2xvcjp2YXIoLS1tYWluLWNvbG9yKX0ubmV3c19fc2lsZGVyX19pdGVtX19oZWFke3Bvc2l0aW9uOnJlbGF0aXZlfS5uZXdzX19zaWxkZXJfX2l0ZW1fX2hlYWRfX2ltZ3tvdmVyZmxvdzpoaWRkZW59Lm5ld3NfX3NpbGRlcl9faXRlbV9faGVhZF9faW1nIGltZ3toZWlnaHQ6MjIwcHg7b2JqZWN0LWZpdDpjb3Zlcjt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuM3MgbGluZWFyLG9wYWNpdHkgLjNzIGxpbmVhciAhaW1wb3J0YW50O3RyYW5zZm9ybTpzY2FsZSgxKX0ubmV3c19fc2lsZGVyX19pdGVtX19oZWFkX190ZXh0e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO3BhZGRpbmctYm90dG9tOjE1cHg7cGFkZGluZy10b3A6MTVweDt3aWR0aDoxMDAlO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHJnYmEoNTEsIDUxLCA1MSwgMC4zKSwgIzMzMzMzMyl9Lm5ld3NfX3NpbGRlcl9faXRlbTpob3ZlciAubmV3c19fc2lsZGVyX19pdGVtX19oZWFkIGltZ3t0cmFuc2Zvcm06c2NhbGUoMS4zKX0uY2F0Z29yeXtwb3NpdGlvbjpyZWxhdGl2ZTtiYWNrZ3JvdW5kLWNvbG9yOiNmY2ZjZmM7ei1pbmRleDoyO292ZXJmbG93OmhpZGRlbn0uY2F0Z29yeV9faW1ne2JvcmRlci1yYWRpdXM6MTVweDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9LmNhdGdvcnlfX2ltZ19faWNvbntwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmJsb2NrO3dpZHRoOjExNHB4O2hlaWdodDoxMTRweDtsaW5lLWhlaWdodDoxMTRweDt0ZXh0LWFsaWduOmNlbnRlcjt6LWluZGV4OjI7Y29sb3I6I2ZmZjt0b3A6NTAlO2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwgLTUwJSk7Ym9yZGVyLXJhZGl1czo1MCU7b3ZlcmZsb3c6aGlkZGVuO2N1cnNvcjpwb2ludGVyfS5jYXRnb3J5X19pbWdfX2ljb246OmJlZm9yZXtjb250ZW50OlwiXCI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtiYWNrZ3JvdW5kOnZhcigtLW1haW4tY29sb3IpO29wYWNpdHk6LjM1O2Rpc3BsYXk6YmxvY2s7ei1pbmRleDotMX0uY2F0Z29yeTo6YmVmb3Jle2NvbnRlbnQ6XCJcIjtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDotMjUlO3dpZHRoOjUwJTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1haW4tY29sb3IpO3otaW5kZXg6LTE7dG9wOjA7Ym90dG9tOjA7dHJhbnNmb3JtOnNrZXdYKDMwZGVnKX1AbWVkaWEobWF4LXdpZHRoOiA5OTFweCl7LmNhdGdvcnk6OmJlZm9yZXtyaWdodDowO2xlZnQ6MDtib3R0b206YXV0bztoZWlnaHQ6NTAlO3dpZHRoOjEwMCU7dHJhbnNmb3JtOnNrZXdYKDApIHJvdGF0ZSg2NmRlZykgdHJhbnNsYXRlWSgxMzZweCkgc2NhbGVZKDEuNSk7dG9wOi0yNSV9fS5jYXRnb3J5X19pdGVte2JvcmRlci1yYWRpdXM6MjlweDtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW46MCAxMHB4fS5jYXRnb3J5X19pdGVtOjpiZWZvcmV7Y29udGVudDpcIlwiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tYWluLWNvbG9yKTtvcGFjaXR5Oi4yNTtib3JkZXItcmFkaXVzOjI5cHg7ei1pbmRleDotMTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuM3MgbGluZWFyO3RyYW5zZm9ybTpzY2FsZSgwLjkpIHJvdGF0ZSgtMTBkZWcpIHRyYW5zbGF0ZVgoLTIwcHgpIHRyYW5zbGF0ZVkoLTIwcHgpfS5jYXRnb3J5X19pdGVtX19pY29ue2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQtY29sb3I6I2Y5ZjlmOTtoZWlnaHQ6MjlweDt3aWR0aDoyOXB4O2xpbmUtaGVpZ2h0OjI5cHg7dGV4dC1hbGlnbjpjZW50ZXI7ZGlzcGxheTpibG9ja30uY2F0Z29yeV9faXRlbV9fdGV4dHt0cmFuc2l0aW9uOmNvbG9yIC4zcyBsaW5lYXJ9LmNhdGdvcnlfX2l0ZW06aG92ZXIgLmNhdGdvcnlfX2l0ZW1fX3RleHR7Y29sb3I6dmFyKC0tbWFpbi1jb2xvcil9LmNhdGdvcnlfX2l0ZW06aG92ZXI6OmJlZm9yZXt0cmFuc2Zvcm06c2NhbGUoMC45KSByb3RhdGUoMCkgdHJhbnNsYXRlWCgwcHgpIHRyYW5zbGF0ZVkoMHB4KX0jY2F0Z29yeU1vZGFsIGlmcmFtZXtoZWlnaHQ6NDAwcHh9Lm1haW5fX2hlYWRlcntoZWlnaHQ6MzgwcHg7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoNTAlIDUwJSBhdCA4OS40OCUgNTAlLCAjRkZGRkZGIDAlLCAjRjlGOUY5IDEwMCUpO3Bvc2l0aW9uOnJlbGF0aXZlfS5tYWluX19oZWFkZXJfX2ltZ3twb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7bWF4LXdpZHRoOjM4MHB4fS5zZXJ2aWNle2JhY2tncm91bmQtY29sb3I6I2ZiZmJmYjtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjI7b3ZlcmZsb3c6aGlkZGVufS5zZXJ2aWNlOjphZnRlciwuc2VydmljZTo6YmVmb3Jle2NvbnRlbnQ6XCJcIjtwb3NpdGlvbjphYnNvbHV0ZTtiYWNrZ3JvdW5kLWltYWdlOnVybChcIi4uL2Fzc2V0cy9pbWFnZXMvc2VydmljZS9kb3RzLnN2Z1wiKTt3aWR0aDoyMDBweDtoZWlnaHQ6MjAwcHg7ei1pbmRleDotMX0uc2VydmljZTo6YWZ0ZXJ7bGVmdDowO2JvdHRvbTowfS5zZXJ2aWNlOjpiZWZvcmV7cmlnaHQ6MDt0b3A6NDBweH0uc2VydmljZV9fdGFic3ttYXgtaGVpZ2h0OjcwMHB4O292ZXJmbG93LXk6YXV0bztvdmVyZmxvdy14OmhpZGRlbjtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7ZmxleC13cmFwOm5vd3JhcCAhaW1wb3J0YW50O2RpcmVjdGlvbjpsdHI7dGV4dC1hbGlnbjpyaWdodH0uc2VydmljZV9fdGFic19fbGlua3twYWRkaW5nOjMwcHggMjBweDtjb2xvcjojMzMzO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTtqdXN0aWZ5LWNvbnRlbnQ6ZW5kfS5zZXJ2aWNlX190YWJzX19saW5rOmhvdmVye2NvbG9yOiMzMzN9LnNlcnZpY2VfX3RhYnNfX2xpbmsuYWN0aXZle2NvbG9yOiMzMzMgIWltcG9ydGFudDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmYgIWltcG9ydGFudH0uc2VydmljZV9fdGFic19fbGluay5hY3RpdmU6OmJlZm9yZXtjb250ZW50OlwiXCI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDt6LWluZGV4Oi0xO2JveC1zaGFkb3c6aW5zZXQgLTFweCAtMXB4IDEwcHggdmFyKC0tbWFpbi1jb2xvcik7b3BhY2l0eTouM30uc2VydmljZV9fdGFic19fbGlua19faW1ne3dpZHRoOjYwcHh9LmNvbnRhY3RfX2Zvcm1fX2xhYmVsX19zcGFue2ZvbnQtc2l6ZToxOHB4O2NvbG9yOiM3Nzd9LmNvbnRhY3RfX2Zvcm1fX2xhYmVsX19saW5re2NvbG9yOiMwMDAgIWltcG9ydGFudH0uY29udGFjdCB0ZXh0YXJlYXttaW4taGVpZ2h0OjIwMHB4O2ZvbnQtc2l6ZToyNHB4O2JhY2tncm91bmQtY29sb3I6I2ZjZmNmYztib3JkZXI6bm9uZSAhaW1wb3J0YW50fS5jb250YWN0IHRleHRhcmVhOjpwbGFjZWhvbGRlcntjb2xvcjojOWI5YjlifS5jb250YWN0IGxhYmVse2ZvbnQtc2l6ZToyNHB4fS5jb250YWN0IGlucHV0e2hlaWdodDo3NnB4O2ZvbnQtc2l6ZToyNHB4O2JhY2tncm91bmQtY29sb3I6I2ZjZmNmYztib3JkZXI6bm9uZSAhaW1wb3J0YW50fS5jb250YWN0IGlucHV0OjpwbGFjZWhvbGRlcntjb2xvcjojOWI5YjlifS5jb250YWN0IC5uaWNlLXNlbGVjdHtoZWlnaHQ6NzZweDtsaW5lLWhlaWdodDo3NnB4O3BhZGRpbmctcmlnaHQ6MjBweDtmb250LXNpemU6MjRweDtiYWNrZ3JvdW5kLWNvbG9yOiNmY2ZjZmM7Ym9yZGVyOm5vbmUgIWltcG9ydGFudH0uY29udGFjdCBsYWJlbC5lcnJvcntjb2xvcjpyZWQ7bWFyZ2luLWJvdHRvbToxMHB4fS5tYWluLWNvbG9ye2NvbG9yOnZhcigtLW1haW4tY29sb3IpICFpbXBvcnRhbnR9LnN1Yi1jb2xvcntjb2xvcjp2YXIoLS1zdWItY29sb3IpfS5jb2xvci1tMXtjb2xvcjojZmYwMDdhfS5jb2xvci1tMntjb2xvcjojMTViNTVmfS5jb2xvci1tM3tjb2xvcjojNzQ2MmFifS5jb2xvci1tNHtjb2xvcjojNjM4YWE3fS5jb2xvci1tNXtjb2xvcjojZjc3ZTIxfS5jb2xvci1tNntjb2xvcjojYzZhMjVmfS5jb2xvci1tN3tjb2xvcjojYzI0MTRjfS5jb2xvci1tOHtjb2xvcjojZWUwNTA3fS5jb2xvci1tOXtjb2xvcjojNTY2NTllfS5jb2xvci1tMTB7Y29sb3I6IzM3OTg4ZX0uY29sb3ItbTExe2NvbG9yOiMzMmE4OGF9LmNvbG9yLW0xMntjb2xvcjojZjIyZjE3fS5tYWluLWJne2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWFpbi1jb2xvcil9Lm1haW4tdGl0bGV7d2lkdGg6Zml0LWNvbnRlbnQ7bWFyZ2luOmF1dG99Lm1haW4tdGl0bGVfX3RleHR7Y29sb3I6IzMzMzttYXJnaW4tYm90dG9tOjIwcHh9Lm1haW4tdGl0bGVfX2RvdHN7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4fS5tYWluLXRpdGxlX19kb3RzIHNwYW57YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tYWluLWNvbG9yKTtoZWlnaHQ6NXB4O2Rpc3BsYXk6YmxvY2s7d2lkdGg6NXB4O2JvcmRlci1yYWRpdXM6NTBweH0ubWFpbi10aXRsZV9fZG90cyBzcGFuOm50aC1jaGlsZCgxKXt3aWR0aDoyMnB4fS5tYWluLXRpdGxlX19kb3RzIHNwYW46bnRoLWNoaWxkKDIpe3dpZHRoOjEwcHh9Lm1haW4tdGl0bGUtLXN0YXJ0e21hcmdpbjp1bnNldDttYXJnaW4tbGVmdDphdXRvfS5idG4tdG9we3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjB9LmJ0bi10b3AgYXtib3JkZXItcmFkaXVzOjRweDtib3JkZXI6MXB4IHNvbGlkICNmN2ZhZmM7YmFja2dyb3VuZC1jb2xvcjojZjdmYWZjO2NvbG9yOiNmZmY7d2lkdGg6MzBweDtoZWlnaHQ6MzBweDtsaW5lLWhlaWdodDozMHB4O3RleHQtYWxpZ246Y2VudGVyO2Rpc3BsYXk6YmxvY2s7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC40cyxjb2xvciwuNHN9LmJ0bi10b3A6aG92ZXIgYXtjb2xvcjojZjdmYWZjO2JhY2tncm91bmQtY29sb3I6I2ZmZn0jbG9hZGVye2JhY2tncm91bmQtY29sb3I6IzAxMDMzODtwb3NpdGlvbjpmaXhlZDt6LWluZGV4Ojk5O2xlZnQ6MDtyaWdodDowO3RvcDowO2JvdHRvbTowO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0jbG9hZGVyIC5sb2FkZXItaW1ne3dpZHRoOjUwMHB4O21heC13aWR0aDoxMDAlfS5icmVhZGNydW1iLWl0ZW0gYXtjb2xvcjp2YXIoLS1tYWluLWNvbG9yKSAhaW1wb3J0YW50fS5iZy1zZWN0aW9ue2JhY2tncm91bmQtY29sb3I6I2Y5ZjlmOX0iLCIvLyBTZXR0aW5nXHJcbiRzOiByaWdodDtcclxuJGU6IGxlZnQ7XHJcblxyXG4kcDogLTE7XHJcbiRuOiAxO1xyXG5cclxuLy8gVGV4dCBTdHlsZVxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIkNhaXJvXCI7XHJcbiAgICBzcmM6IHVybChcIi4uL2Fzc2V0cy9mb250cy9DYWlyby1SZWd1bGFyL0NhaXJvLVJlZ3VsYXIuZW90XCIpO1xyXG4gICAgLyogSUU5IENvbXBhdCBNb2RlcyAqL1xyXG4gICAgc3JjOiB1cmwoXCIuLi9hc3NldHMvZm9udHMvQ2Fpcm8tUmVndWxhci9DYWlyby1SZWd1bGFyLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXHJcbiAgICAgICAgLyogSUU2LUlFOCAqL1xyXG4gICAgICAgIHVybChcIi4uL2Fzc2V0cy9mb250cy9DYWlyby1SZWd1bGFyL0NhaXJvLVJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXHJcbiAgICAgICAgLyogU3VwZXIgTW9kZXJuIEJyb3dzZXJzICovXHJcbiAgICAgICAgdXJsKFwiLi4vYXNzZXRzL2ZvbnRzL0NhaXJvLVJlZ3VsYXIvQ2Fpcm8tUmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXHJcbiAgICAgICAgLyogUHJldHR5IE1vZGVybiBCcm93c2VycyAqL1xyXG4gICAgICAgIHVybChcIi4uL2Fzc2V0cy9mb250cy9DYWlyby1SZWd1bGFyL0NhaXJvLVJlZ3VsYXIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLFxyXG4gICAgICAgIC8qIFNhZmFyaSwgQW5kcm9pZCwgaU9TICovXHJcbiAgICAgICAgdXJsKFwiLi4vYXNzZXRzL2ZvbnRzL0NhaXJvLVJlZ3VsYXIvQ2Fpcm8tUmVndWxhci5zdmcjc3ZnRm9udE5hbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xyXG4gICAgLyogTGVnYWN5IGlPUyAqL1xyXG59XHJcblxyXG5ib2R5IHtcclxuICAgIGZvbnQtZmFtaWx5OiAnQ2Fpcm8nO1xyXG4gICAgZGlyZWN0aW9uOiBydGw7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZjtcclxufVxyXG5cclxuW3R5cGU9XCJlbWFpbFwiXSxcclxuW3R5cGU9XCJudW1iZXJcIl0sXHJcblt0eXBlPVwidGVsXCJdLFxyXG5bdHlwZT1cInVybFwiXSB7XHJcbiAgICBkaXJlY3Rpb246IHJ0bDtcclxufSIsIi8vIFJlc2V0IFZhbHVlcyBUYWdzXHJcbmltZyB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxudmlkZW8ge1xyXG4gICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuYnV0dG9uOmZvY3VzLFxyXG5pbnB1dDpmb2N1cyxcclxuc2VsZWN0OmZvY3VzLFxyXG50ZXh0YXJlYTpmb2N1cyB7XHJcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6ICRtYWluLWNvbG9yICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmxhYmVsIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxudWwge1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8qIHdpZHRoICovXHJcbjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgd2lkdGg6IDVweDtcclxufVxyXG5cclxuLyogVHJhY2sgKi9cclxuOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xyXG59XHJcblxyXG4vKiBIYW5kbGUgKi9cclxuOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2IoMCAwIDAgLyAxNSUpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgLy8gYmFja2dyb3VuZDogJG1haW4tY29sb3I7XHJcblxyXG59XHJcblxyXG4vKiBIYW5kbGUgb24gaG92ZXIgKi9cclxuOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkbWFpbi1jb2xvcjtcclxufVxyXG5cclxuLy8gUmVzZXQgVmFsdWVzIGJvb3RzdHJhcFxyXG4ubW9kYWwtYmFja2Ryb3Age1xyXG4gICAgQGluY2x1ZGUgbWVkaWEobWluLCAkdGFiLXdpZHRoKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLnRvb2x0aXAtaW5uZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3IgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRvb2x0aXAuYnMtdG9vbHRpcC10b3AgLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSB7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkbWFpbi1jb2xvciAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6YmVmb3JlIHtcclxuICAgIGNvbG9yOiAkd2hpdGUtY29sb3I7XHJcbiAgICBib3JkZXItY29sb3I6ICRtYWluLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbn1cclxuXHJcbi5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWQge1xyXG4gICAgY29sb3I6ICR3aGl0ZS1jb2xvcjtcclxuICAgIGJvcmRlci1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcclxufVxyXG5cclxuLm5pY2Utc2VsZWN0IHtcclxuICAgIHRleHQtYWxpZ246ICN7JHN9ICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nLSN7JHN9OiA1MHB4O1xyXG4gICAgcGFkZGluZy0jeyRlfTogMzBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XHJcbiAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogNjBweDtcclxuXHJcbiAgICAubGlzdCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5uaWNlLXNlbGVjdCAub3B0aW9uIHtcclxuICAgIHRleHQtYWxpZ246ICN7JHN9ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5uaWNlLXNlbGVjdDphY3RpdmUsXHJcbi5uaWNlLXNlbGVjdC5vcGVuLFxyXG4ubmljZS1zZWxlY3Q6Zm9jdXMge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkbWFpbi1jb2xvcjtcclxufVxyXG5cclxuLm5pY2Utc2VsZWN0OmFmdGVyIHtcclxuICAgICN7JHN9OiBhdXRvO1xyXG4gICAgI3skZX06IDIwcHg7XHJcbiAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICB3aWR0aDogMTBweDtcclxuICAgIG1hcmdpbi10b3A6IC04cHg7XHJcbn1cclxuXHJcbi5uaWNlLXNlbGVjdCAub3B0aW9uOmhvdmVyLFxyXG4ubmljZS1zZWxlY3QgLm9wdGlvbi5mb2N1cyxcclxuLm5pY2Utc2VsZWN0IC5vcHRpb24uc2VsZWN0ZWQuZm9jdXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLWNvbG9yO1xyXG59IiwiLy8gLy8gQ29sb3JzXHJcbiRtYWluLWNvbG9yOiB2YXIoLS1tYWluLWNvbG9yKTtcclxuJHN1Yi1jb2xvcjogdmFyKC0tc3ViLWNvbG9yKTtcclxuJHNhY25kZXJ5LWNvbG9yOiAjZjdmYWZjO1xyXG4kYmxhY2stY29sb3I6ICMzMzM7XHJcbiR3aGl0ZS1jb2xvcjogI2ZmZjtcclxuJGdyYXktZGFyazogIzVjNWM1YztcclxuJGdyYXktY29sb3I6ICNGQ0ZDRkM7XHJcbiRiZy13aGl0ZTogI2Y3ZmFmYztcclxuJGJnLWJsYWNrOiAjMWExYTFhO1xyXG5cclxuLy8gTWVkaWFcclxuJG1vYmFpbC13aWR0aDogNzY3cHg7XHJcbiR0YWItd2lkdGg6IDk5MXB4O1xyXG5cclxuJGZvbnQtc2l6ZTogMTZweDsiLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIE1lZGlhXHJcbkBtaXhpbiBtZWRpYSgkbWlubWF4LCAkd2lkdGg6IFwiKCN7JG1pbm1heH0td2lkdGg6ICN7JHdpZHRofSlcIikge1xyXG4gICAgQG1lZGlhICgjeyRtaW5tYXh9LXdpZHRoOiAkd2lkdGgpIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gRXhhbXBsZVxyXG4vLyBAaW5jbHVkZSBtZWRpYShtYXgsIDc2N3B4KSB7XHJcbi8vICAgICBlbGVtZW50e1Byb3B9XHJcbi8vIH1cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gUHJlZmlleGVyXHJcbkBtaXhpbiBwcmVmaWV4ZXIoJHByb3AsICR2YWwsICRwcmVmaWV4ZXM6ICgpKSB7XHJcbiAgICBAZWFjaCAkcHJlZmlleCBpbiAkcHJlZmlleGVzIHtcclxuICAgICAgICAje1wiLVwiICsgJHByZWZpZXggKyBcIi1cIisgJnByb3B9OiAkdmFsO1xyXG4gICAgfVxyXG5cclxuICAgICN7JHByb3B9OiAkdmFsO1xyXG59XHJcblxyXG4vLyBFeGFtcGxlXHJcbi8vIEBpbmNsdWRlIHByZWZpZXhlcihkaXNwbGF5LCBmbGV4LCB3aWJraXQgbyBtb3ogbXMpXHJcblxyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IiwiaDEsXHJcbmgyLFxyXG5oMyxcclxuaDQsXHJcbmg1LFxyXG5oNiB7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMTg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG5wIHtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjY3O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuYSB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuIiwiLmFjY29yZGlvbi1pdGVtIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmFjY29yZGlvbi1idXR0b24ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y5RjlGOSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICRibGFjay1jb2xvciAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYWNjb3JkaW9uLWJ1dHRvbjo6YWZ0ZXIge1xyXG4gICAgZmlsdGVyOiBicmlnaHRuZXNzKDAlKTtcclxuXHJcblxyXG59IiwiLm1haW4tYnRuIHtcclxuICAgIGNvbG9yOiAkd2hpdGUtY29sb3IgIWltcG9ydGFudDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgbWluLXdpZHRoOiAxMjBweDtcclxuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgbWluLWhlaWdodDogNjFweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGluc2V0OiAwO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xyXG4gICAgICAgIG9wYWNpdHk6IDYwJTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBsaW5lYXI7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDEwMCU7XHJcblxyXG4gICAgfVxyXG59IiwiLm93bC1zdGFnZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG59XHJcblxyXG4ub3dsLWl0ZW0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG5cclxuICAgIC5pdGVtIHtcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuXHJcbi5vd2wtdGhlbWUgLm93bC1uYXYuZGlzYWJsZWQrLm93bC1kb3RzIHtcclxuICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbn1cclxuXHJcbi5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90LmFjdGl2ZSBzcGFuLFxyXG4ub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdDpob3ZlciBzcGFuIHtcclxuICAgIGJhY2tncm91bmQ6ICRtYWluLWNvbG9yO1xyXG59XHJcblxyXG4ub3dsLWNhcm91c2VsIC5vd2wtbmF2IGJ1dHRvbi5vd2wtbmV4dCxcclxuLm93bC1jYXJvdXNlbCAub3dsLW5hdiBidXR0b24ub3dsLXByZXYge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktY29sb3I7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xyXG4gICAgcGFkZGluZzogNXB4IDE1cHggIWltcG9ydGFudDtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzO1xyXG4gICAgY29sb3I6ICRzdWItY29sb3I7XHJcbiAgICBtaW4td2lkdGg6IDgwcHg7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN1Yi1jb2xvcjtcclxuICAgICAgICBjb2xvcjogJHdoaXRlLWNvbG9yO1xyXG4gICAgfVxyXG59IiwiLm5hdmJhciB7XHJcbiAgICAubmF2LWl0ZW0ge1xyXG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgd2lkdGg6IG1heC1jb250ZW50O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA0MDBweDtcclxuICAgICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgICAgICAgICBkaXJlY3Rpb246IGx0cjtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGxpbmVhcjtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKG1heCwgJHRhYi13aWR0aCkge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgICAgICAuZHJvcGRvd24taXRlbSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMXB4IDM1cHg7XHJcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogdW5zZXQ7XHJcblxyXG4gICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShtYXgsICR0YWItd2lkdGgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGUtY29sb3I7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuc2hvdyB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA3OFwiO1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBsaW5lYXI7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgICYuc2hvdyB7XHJcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn0iLCIudXBwZXItbmF2YmFyIHtcclxuICAgICZfX2xvZ28ge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJl9faW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDUycHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNTJweDtcclxuXHJcbiAgICAgICAgICAgICYubWFpbi1sb2dvIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA2NXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX19kcm9wLWljb24ge1xyXG4gICAgICAgICAgICBhbGw6IHVuc2V0O1xyXG4gICAgICAgICAgICB3aWR0aDogMjZweDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjZweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAjeyRlfTogLTM1cHg7XHJcbiAgICAgICAgICAgIGJvdHRvbTogLTJweDtcclxuICAgICAgICAgICAgY29sb3I6ICRtYWluLWNvbG9yO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuXHJcbiAgICAgICAgICAgICYgLmZhLWNoZXZyb24tZG93biB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGxpbmVhcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5zaG93IHtcclxuICAgICAgICAgICAgICAgICYgLmZhLWNoZXZyb24tZG93biB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEobWF4LCAkdGFiLXdpZHRoKSB7XHJcbiAgICAgICAgICAgICAgICAjeyRlfTogMHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBhbGw6IHVuc2V0O1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgIGluc2V0OiAwO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDEwJTtcclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY29udGNhdCB7XHJcbiAgICAgICAgJl9faW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDUxcHg7XHJcbiAgICAgICAgICAgIC8vIGhlaWdodDogNjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbiNtb2RhbE5hdmJhciB7XHJcbiAgICAubW9kYWwtYm9keSB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuXHJcbiAgICAubW9kYWwtZGlhbG9nIHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYShtYXgsICR0YWItd2lkdGgpIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAubW9kYWwtY29udGVudCB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMThweDtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKG1heCwgJHRhYi13aWR0aCkge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgIC5tZW51X19pdGVtIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlLWNvbG9yO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDIwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShtYXgsICR0YWItd2lkdGgpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcblxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgcmdiYSgkYmxhY2stY29sb3IsIC4xKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA4KTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJl9faW1nIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLSN7JGV9OiAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmX190ZXh0IHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2stY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5uYXZiYXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEobWF4LCAkdGFiLXdpZHRoKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLWNvbG9yO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLm5hdmJhci1icmFuZCB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZS1jb2xvcjtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIH1cclxuXHJcbiAgICAubmF2YmFyLXRvZ2dsZXIge1xyXG4gICAgICAgIGNvbG9yOiAkYmxhY2stY29sb3I7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMTBweDtcclxuICAgICAgICAjeyRlfTogMTBweDtcclxuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAubmF2LWxpbmsge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUtY29sb3I7XHJcbiAgICAgICAgcGFkZGluZzogMThweCAyMHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYShtYXgsICR0YWItd2lkdGgpIHtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjay1jb2xvcjtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5hY3RpdmUsXHJcbiAgICAgICAgJi5zaG93LFxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS1jb2xvciA7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShtYXgsICR0YWItd2lkdGgpIHtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgaW5zZXQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTUlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3NvY2hpYWwge1xyXG4gICAgICAgICZfX2xpbmsge1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCR3aGl0ZS1jb2xvciwgLjUpO1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlLWNvbG9yO1xyXG4gICAgICAgICAgICB3aWR0aDogNDhweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0OHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDhweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBsaW5lYXI7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm5hdmJhci1jb2xsYXBzZSB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYShtYXgsICR0YWItd2lkdGgpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIH1cclxuXHJcbn0iLCIvLyAuaGVhZGVyIHtcclxuLy8gICAgIG1pbi1oZWlnaHQ6IDQ4NHB4O1xyXG4vLyAgICAgei1pbmRleDogMTtcclxuLy8gICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbi8vICAgICBAaW5jbHVkZSBtZWRpYShtYXgsICR0YWItd2lkdGgpIHtcclxuLy8gICAgICAgICBtYXJnaW4tYm90dG9tOiAyMCU7XHJcbi8vICAgICB9XHJcblxyXG4vLyAgICAgJl9faW1nIHtcclxuLy8gICAgICAgICBoZWlnaHQ6IDQ4NHB4O1xyXG4vLyAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbi8vICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4vLyAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuLy8gICAgICAgICBpbnNldDogMDtcclxuLy8gICAgICAgICB6LWluZGV4OiAtMTtcclxuXHJcbi8vICAgICAgICAgaW1nIHtcclxuLy8gICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4vLyAgICAgICAgIH1cclxuXHJcbi8vICAgICB9XHJcblxyXG4vLyAgICAgJl9fZm9ybSB7XHJcbi8vICAgICAgICAgbWluLWhlaWdodDogNDg0cHg7XHJcbi8vICAgICAgICAgZGlzcGxheTogZmxleDtcclxuLy8gICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuLy8gICAgICAgICAuYmctd2hpdGUge1xyXG4vLyAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xyXG4vLyAgICAgICAgIH1cclxuXHJcbi8vICAgICAgICAgQGluY2x1ZGUgbWVkaWEobWluLCAkdGFiLXdpZHRoKSB7XHJcbi8vICAgICAgICAgICAgIHdpZHRoOiA5MCU7XHJcbi8vICAgICAgICAgfVxyXG5cclxuLy8gICAgICAgICBAaW5jbHVkZSBtZWRpYShtYXgsICR0YWItd2lkdGgpIHtcclxuLy8gICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4vLyAgICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4vLyAgICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbi8vICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuLy8gICAgICAgICAgICAgd2lkdGg6IDk1JTtcclxuLy8gICAgICAgICAgICAgYm90dG9tOiAtMzUlO1xyXG4vLyAgICAgICAgIH1cclxuXHJcbi8vICAgICAgICAgJl9fY29udGVudCB7XHJcbi8vICAgICAgICAgICAgICZfX2ltZyB7XHJcbi8vICAgICAgICAgICAgICAgICB3aWR0aDogNTVweDtcclxuLy8gICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuLy8gICAgICAgICAgICAgfVxyXG4vLyAgICAgICAgIH1cclxuXHJcbi8vICAgICAgICAgJl9faXRlbSB7XHJcbi8vICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbi8vICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbi8vICAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoXCIuLi9hc3NldHMvaW1hZ2VzL2hlYWRlci90YXJnZXQuc3ZnXCIpO1xyXG4vLyAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4vLyAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcclxuLy8gICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuLy8gICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4vLyAgICAgICAgICAgICAgICAgI3skc306IDIwcHg7XHJcbi8vICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbi8vICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcclxuLy8gICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4vLyAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbi8vICAgICAgICAgICAgIH1cclxuLy8gICAgICAgICB9XHJcbi8vICAgICB9XHJcblxyXG4vLyB9XHJcblxyXG4uaGVhZGVyIHtcclxuXHJcbiAgICBtaW4taGVpZ2h0OiA0ODRweDtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEobWF4LCAkdGFiLXdpZHRoKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDAlO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3NpbGRlciB7XHJcblxyXG5cclxuICAgICAgICAmX19mb3JtIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICB6LWluZGV4OiA5OTk7XHJcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNjUwcHg7XHJcbiAgICAgICAgICAgICN7JGV9OiAxOCU7XHJcblxyXG4gICAgICAgICAgICAuYmctd2hpdGUge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKG1heCwgJHRhYi13aWR0aCkge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA5NSU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJl9fY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICAmX19pbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1NXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJl9faXRlbSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoXCIuLi9hc3NldHMvaW1hZ2VzL2hlYWRlci90YXJnZXQuc3ZnXCIpO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICAjeyRzfTogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nIHtcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ4NHB4ICFpbXBvcnRhbnQ7XHJcblxyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYShtaW4sICR0YWItd2lkdGgpIHtcclxuXHJcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIuZm9vdGVyIHtcclxuICAgICZfX2Zvcm0ge1xyXG4gICAgICAgICZfX2J0biB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluLWNvbG9yO1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlLWNvbG9yO1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDU0cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDZweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fbG9nbyB7XHJcbiAgICAgICAgICAgICZfX2ltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19saXN0IHtcclxuICAgICAgICAmX19pY29uIHtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjay1jb2xvcjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjNzIGxpbmVhcjtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAjeyRzfTogMDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjNzIGxpbmVhcixcclxuICAgICAgICAgICAgI3skc30gLjNzIGxpbmVhcjtcclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX19saW5rIHtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjay1jb2xvcjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjNzIGxpbmVhcjtcclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsaTpob3ZlciAmX19saW5rIHtcclxuICAgICAgICAgICAgY29sb3I6ICRtYWluLWNvbG9yO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGk6aG92ZXIgJl9faWNvbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcclxuICAgICAgICAgICAgI3skc306IDJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbG9nbyB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDE3NnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmxvZ28ta2V5ZnJhbWUge1xyXG4gICAgd2lkdGg6IDEzMHB4O1xyXG59IiwiLmJhbm5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGhlaWdodDogNTAlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktY29sb3I7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgICBib3gtc2hhZG93OiAwcHggMjBweCA5MHB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuLnNlcnZpY2VzIHtcclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyIC4zcyBsaW5lYXI7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjay1jb2xvciwgLjIpO1xyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX2hlYWRfX3RleHQge1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuM3MgbGluZWFyO1xyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIgJl9faGVhZF9fdGV4dCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG4ucHJvZ3JhbSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2Fzc2V0cy9pbWFnZXMvcHJvZ3JhbS9jb3Zlci5wbmcnKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtaW4taGVpZ2h0OiAzNTBweDtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgY29sb3I6ICR3aGl0ZS1jb2xvcjtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgaW5zZXQ6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgb3BhY2l0eTogNTAlO1xyXG4gICAgICAgIHotaW5kZXg6IC0yO1xyXG4gICAgfVxyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgI3skZX06IC0xMiU7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbi1jb2xvcjtcclxuICAgICAgICBvcGFjaXR5OiAxNSU7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDMwZGVnKTtcclxuICAgIH1cclxufVxyXG5cclxuLm5ld3Mge1xyXG4gICAgJl9fc2lsZGVyIHtcclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgLm5ld3NfX3NpbGRlcl9faXRlbV9fYm9keV9fdGV4dCB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuM3MgbGluZWFyO1xyXG5cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciAubmV3c19fc2lsZGVyX19pdGVtX19ib2R5X190ZXh0IHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJl9faGVhZCB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAgICAgJl9faW1nIHtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBsaW5lYXIsIG9wYWNpdHkgLjNzIGxpbmVhciAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgJl9fdGV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kOiAjMzMzO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChyZ2JhKCRibGFjay1jb2xvciwgLjMpLCByZ2JhKCRibGFjay1jb2xvciwgMSkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyICZfX2hlYWQge1xyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4uY2F0Z29yeSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1jb2xvcjtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICZfX2ltZyB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJl9faWNvbiB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMTRweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMTRweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDExNHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGUtY29sb3I7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgaW5zZXQ6IDA7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbWFpbi1jb2xvcjtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMzU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG5cclxuICAgICAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICN7JHN9OiAtMjUlO1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDMwZGVnKTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEobWF4LCAkdGFiLXdpZHRoKSB7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICBib3R0b206IGF1dG87XHJcbiAgICAgICAgICAgIGhlaWdodDogNTAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgwKSByb3RhdGUoNjZkZWcpIHRyYW5zbGF0ZVkoMTM2cHgpIHNjYWxlWSgxLjUpO1xyXG4gICAgICAgICAgICB0b3A6IC0yNSU7XHJcblxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19pdGVtIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyOXB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXJnaW46IDAgMTBweDtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBpbnNldDogMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMjU7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI5cHg7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGxpbmVhcjtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguOSkgcm90YXRlKC0xMGRlZykgdHJhbnNsYXRlWCgtMjBweCkgdHJhbnNsYXRlWSgtMjBweCk7XHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9faWNvbiB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y5RjlGOTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyOXB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMjlweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI5cHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX190ZXh0IHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjNzIGxpbmVhcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIgJl9fdGV4dCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkbWFpbi1jb2xvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXI6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjkpIHJvdGF0ZSgwKSB0cmFuc2xhdGVYKDBweCkgdHJhbnNsYXRlWSgwcHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbiNjYXRnb3J5TW9kYWwge1xyXG4gICAgaWZyYW1lIHtcclxuICAgICAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gICAgfVxyXG59IiwiLm1haW5fX2hlYWRlciB7XHJcbiAgICBoZWlnaHQ6IDM4MHB4O1xyXG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KDUwJSA1MCUgYXQgODkuNDglIDUwJSwgI0ZGRkZGRiAwJSwgI0Y5RjlGOSAxMDAlKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmX19pbWcge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAjeyRzfTogMDtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzODBweDtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi5zZXJ2aWNlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmZiZmI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAmOjphZnRlcixcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vYXNzZXRzL2ltYWdlcy9zZXJ2aWNlL2RvdHMuc3ZnJyk7XHJcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgIGhlaWdodDogMjAwcHg7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHRvcDogNDBweDtcclxuICAgIH1cclxuXHJcbiAgICAmX190YWJzIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA3MDBweDtcclxuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtY29sb3I7XHJcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcclxuICAgICAgICBkaXJlY3Rpb246IGx0cjtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuXHJcbiAgICAgICAgJl9fbGluayB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjay1jb2xvcjtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjay1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjay1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLWNvbG9yICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuYWN0aXZlOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBpbnNldDogMDtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgLTFweCAtMXB4IDEwcHggJG1haW4tY29sb3I7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuMztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJl9faW1nIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxufSIsIi5jb250YWN0IHtcclxuICAgICZfX2Zvcm1fX2xhYmVsX19zcGFuIHtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgY29sb3I6ICM3Nzc3Nzc7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZm9ybV9fbGFiZWxfX2xpbmsge1xyXG4gICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgdGV4dGFyZWEge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNGQ0ZDO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjOUI5QjlCO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgbGFiZWwge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dCB7XHJcbiAgICAgICAgaGVpZ2h0OiA3NnB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNGQ0ZDO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjOUI5QjlCO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubmljZS1zZWxlY3Qge1xyXG4gICAgICAgIGhlaWdodDogNzZweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogNzZweDtcclxuICAgICAgICBwYWRkaW5nLSN7JHN9OiAyMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNGQ0ZDO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBsYWJlbC5lcnJvciB7XHJcbiAgICAgICAgY29sb3I6IHJlZDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG59IiwiLy8gTWFpbiBTdHlsZSB0aGVtZVxyXG4ubWFpbi1jb2xvciB7XHJcbiAgICBjb2xvcjogJG1haW4tY29sb3IgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnN1Yi1jb2xvciB7XHJcbiAgICBjb2xvcjogJHN1Yi1jb2xvcjtcclxufVxyXG5cclxuLmNvbG9yLW0xIHtcclxuICAgIGNvbG9yOiAjRkYwMDdBO1xyXG59XHJcblxyXG4uY29sb3ItbTIge1xyXG4gICAgY29sb3I6ICMxNUI1NUY7XHJcbn1cclxuXHJcbi5jb2xvci1tMyB7XHJcbiAgICBjb2xvcjogIzc0NjJBQlxyXG59XHJcblxyXG4uY29sb3ItbTQge1xyXG4gICAgY29sb3I6ICM2MzhBQTdcclxufVxyXG5cclxuLmNvbG9yLW01IHtcclxuICAgIGNvbG9yOiAjRjc3RTIxXHJcbn1cclxuXHJcbi5jb2xvci1tNiB7XHJcbiAgICBjb2xvcjogI0M2QTI1RlxyXG59XHJcblxyXG4uY29sb3ItbTcge1xyXG4gICAgY29sb3I6ICNDMjQxNENcclxufVxyXG5cclxuLmNvbG9yLW04IHtcclxuICAgIGNvbG9yOiAjRUUwNTA3XHJcbn1cclxuXHJcbi5jb2xvci1tOSB7XHJcbiAgICBjb2xvcjogIzU2NjU5RVxyXG59XHJcblxyXG4uY29sb3ItbTEwIHtcclxuICAgIGNvbG9yOiAjMzc5ODhFXHJcbn1cclxuXHJcbi5jb2xvci1tMTEge1xyXG4gICAgY29sb3I6ICMzMkE4OEFcclxufVxyXG5cclxuLmNvbG9yLW0xMiB7XHJcbiAgICBjb2xvcjogI0YyMkYxN1xyXG59XHJcblxyXG5cclxuLm1haW4tYmcge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbn1cclxuXHJcbi5tYWluLXRpdGxlIHtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgIG1hcmdpbjogYXV0bztcclxuXHJcbiAgICAmX190ZXh0IHtcclxuICAgICAgICBjb2xvcjogJGJsYWNrLWNvbG9yO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZG90cyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogNXB4O1xyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW4tY29sb3I7XHJcbiAgICAgICAgICAgIGhlaWdodDogNXB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDVweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuXHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyMnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLS1zdGFydCB7XHJcbiAgICAgICAgbWFyZ2luOiB1bnNldDtcclxuICAgICAgICBtYXJnaW4tI3skZX06IGF1dG87XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4uYnRuLXRvcCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuXHJcbiAgICBhIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNhY25kZXJ5LWNvbG9yO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzYWNuZGVyeS1jb2xvcjtcclxuICAgICAgICBjb2xvcjogJHdoaXRlLWNvbG9yO1xyXG4gICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjRzLCBjb2xvciwgMC40cztcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIGEge1xyXG4gICAgICAgIGNvbG9yOiAkc2FjbmRlcnktY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLWNvbG9yO1xyXG4gICAgfVxyXG59XHJcblxyXG4jbG9hZGVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMTAzMzg7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB6LWluZGV4OiA5OTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgLmxvYWRlci1pbWcge1xyXG4gICAgICAgIHdpZHRoOiA1MDBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5icmVhZGNydW1iLWl0ZW0gYSB7XHJcbiAgICBjb2xvcjogJG1haW4tY29sb3IgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJnLXNlY3Rpb24ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y5RjlGOTtcclxufSJdfQ== */